1 package fr.ifremer.tutti.ui.swing.content.protocol.maturity;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 import fr.ifremer.tutti.persistence.entities.protocol.MaturityCaracteristic;
28 import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
29 import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue;
30 import fr.ifremer.tutti.ui.swing.TuttiUIContext;
31 import fr.ifremer.tutti.ui.swing.util.TuttiUI;
32 import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil;
33 import java.awt.BorderLayout;
34 import java.awt.Container;
35 import java.awt.Dialog;
36 import java.awt.Dialog.ModalityType;
37 import java.awt.Frame;
38 import java.awt.GraphicsConfiguration;
39 import java.awt.GridBagConstraints;
40 import java.awt.GridLayout;
41 import java.awt.Insets;
42 import java.awt.Window;
43 import java.awt.event.ActionEvent;
44 import java.awt.event.ActionListener;
45 import java.util.ArrayList;
46 import java.util.HashMap;
47 import java.util.List;
48 import java.util.Map;
49 import java.util.TreeMap;
50 import javax.swing.BorderFactory;
51 import javax.swing.JButton;
52 import javax.swing.JDialog;
53 import javax.swing.JLabel;
54 import javax.swing.JList;
55 import javax.swing.JPanel;
56 import jaxx.runtime.JAXXBinding;
57 import jaxx.runtime.JAXXContext;
58 import jaxx.runtime.JAXXObject;
59 import jaxx.runtime.JAXXObjectDescriptor;
60 import jaxx.runtime.JAXXUtil;
61 import jaxx.runtime.JAXXValidator;
62 import jaxx.runtime.SwingUtil;
63 import jaxx.runtime.binding.DefaultJAXXBinding;
64 import jaxx.runtime.context.DefaultJAXXContext;
65 import jaxx.runtime.swing.Table;
66 import jaxx.runtime.validator.swing.SwingValidator;
67 import jaxx.runtime.validator.swing.SwingValidatorUtil;
68 import jaxx.runtime.validator.swing.meta.Validator;
69 import jaxx.runtime.validator.swing.meta.ValidatorField;
70 import jaxx.runtime.validator.swing.ui.ImageValidationUI;
71 import org.apache.commons.logging.Log;
72 import org.apache.commons.logging.LogFactory;
73 import static org.nuiton.i18n.I18n.t;
74
75 public class EditMaturityCaracteristicPopupUI extends JDialog implements TuttiUI<EditMaturityCaracteristicPopupUIModel, EditMaturityCaracteristicPopupUIHandler>, JAXXObject, JAXXValidator {
76
77
78
79
80
81 public static final String PROPERTY_MODEL = "model";
82
83
84
85
86
87 public static final String BINDING_VALIDATE_BUTTON_ENABLED = "validateButton.enabled";
88
89
90
91
92
93 private static final String $jaxxObjectDescriptor = "H4sIAAAAAAAAALVVQW8bRRSemNiJnbZAQ0pRAw2FQxDROEWKhBQEbdNGJHJKRFJa8KGMd6f2lNmZYWa2XSsC8RP4CXDngsSNE+LAmQMXxF9AiANXxJvZ9Tprr+1cyGFizXvve99789633/2JqkajVx+TJME6FpZFFO/ffPDgg85jGtjb1ASaKSs1Sv/mKqjSRkthfm8seq3dcuHNLLy5IyMlBRWnordbqGFsn1PTo9Ra9HIxIjCmeZSbtxMV6wFqTqoM9Zu//6p8HX71bQWhRAG7OpSyNitqWMl8C1VYaNFFyPSENDkRXaChmegC3/PubocTY+6SiH6OvkQLLVRTRAOYRdfOXrLH8PGJsugqDZk9IDbWzPZ3iCaBpZoZy4LbjHDZtej4kcbskaYR1djG1jIcM2yeAiscSGEhCVZaWhlIjqMMCN+ZhHooVazu7SnlKdQsqkYypNyij/+PNAcOe5ir/oRwFhLohkVvFt4lN2Qpj9z50eDyFEJEmDgkwjG+XEBI445Jh/vHqechCxE1hnQpvKt7wiTz3G+RDuXO52Lu+sKgMMgcU+Oqc1SfL8ZBgcWwxdf3PaXN0RT+tuh7LiAioPwWdBi6ipYL/umt87ySB1zIWkOHxrXMQ6MrhRbA2uDh2gzneq6NqjqGa+hZe3zTPgRTumOXR3bMAXrrv5eWf/vxjx92B4vVgNwrpa6ndAEGHiZGUW2ZS/1sulWxZbx5QNR2G9aTchAVLxqrJcSOMjOQg3z+FbALx+8T0wOI6sLvP/186dNfn0GVXdTgkoS7xPnvobrtaeiC5GGi3rvhGZ17ugjnc44bNPUhCcP7lHV79p5gsL8vnvg1wDAmw+v1N75IoCurJV3JqXXqv/yzfPT9jUFn5oDpSxPdh92pfoJqTHAmqBedTE9KRWZJGRqHcqgbZUqClAI1Oc/dUN9ntuf4e9u6PzfKulDr+VItqmxtJrFz2/QVuF9vpYBLHT91fpCnwlVASSyzHOZuK5UPJ2yHo4pREAkceonDWZxTIgJ7PW91TMf5zNZKlenEtJI7UocwkWjj5Jb/lU5MHweawo7diZTtp4b1rY3rmxvucFMwTmYgK7OSVmHn2fW3xYGgkRQsgFFP+xPICC5wqgc4ys0NYMSk2HOqi2qpGR7iofmMqZvelLXI/aMJPN9yCSBEWCn5MVPHE33Kyiro06zaamO1vVJIM5CuSdUtDhym17dSCjpa4SSvBSrcRwG+6ysnw88MM/7rsl7+uCOie5bB4qQvwRldeAfiyFqHiRA0/d0x9Dl3NmYiumsv9rIcYfUMnOZZIKdhXD0Ti2QKwjVA+A+QvkhOMwoAAA==";
94 private static final Log log = LogFactory.getLog(EditMaturityCaracteristicPopupUI.class);
95 private static final long serialVersionUID = 1L;
96
97
98
99
100
101 protected List<Object> $activeBindings = new ArrayList<Object>();
102 protected Map<String, Object> $bindingSources = new HashMap<String, Object>();
103 protected final Map<String, JAXXBinding> $bindings = new TreeMap<String, JAXXBinding>();
104 protected Map<String, Object> $objectMap = new HashMap<String, Object>();
105 protected Map<?, ?> $previousValues = new HashMap<Object, Object>();
106 private boolean allComponentsCreated;
107 protected final JAXXContext delegateContext = new DefaultJAXXContext();
108
109
110
111
112
113 protected JButton cancelButton;
114 protected EditMaturityCaracteristicPopupUI editMaturityCaracteristicDialog = this;
115 protected final EditMaturityCaracteristicPopupUIHandler handler = createHandler();
116 protected Table mainPanel;
117 @ValidatorField( validatorId = "validator", propertyName = "matureStateIds", editorName = "maturityValuesEditor")
118 protected JList<CaracteristicQualitativeValue> maturityValuesEditor;
119 protected JLabel message;
120 protected EditMaturityCaracteristicPopupUIModel model;
121 protected JButton validateButton;
122 @Validator( validatorId = "validator")
123 protected SwingValidator<EditMaturityCaracteristicPopupUIModel> validator;
124 protected List<String> validatorIds = new ArrayList<String>();
125
126
127
128
129
130 private JPanel $JPanel0;
131
132
133
134
135
136
137 public void open(Caracteristic caracteristic, MaturityCaracteristic maturityCaracteristic) {
138 handler.open(caracteristic, maturityCaracteristic);
139 }
140
141
142
143
144
145 public EditMaturityCaracteristicPopupUI(TuttiUI parentUI) {
146 super(parentUI.getHandler().getContext().getMainUI());
147 TuttiUIUtil.setParentUI(this, parentUI);
148 $initialize();
149 }
150
151 public EditMaturityCaracteristicPopupUI(Frame param0, String param1, boolean param2, GraphicsConfiguration param3) {
152 super(param0 ,param1 ,param2 ,param3);
153 $initialize();
154 }
155
156 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Frame param1, String param2, boolean param3, GraphicsConfiguration param4) {
157 super(param1 ,param2 ,param3 ,param4);
158 JAXXUtil.initContext(this, parentContext);
159 $initialize();
160 }
161
162 public EditMaturityCaracteristicPopupUI(Dialog param0) {
163 super(param0);
164 $initialize();
165 }
166
167 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Dialog param1) {
168 super(param1);
169 JAXXUtil.initContext(this, parentContext);
170 $initialize();
171 }
172
173 public EditMaturityCaracteristicPopupUI(Frame param0, String param1, boolean param2) {
174 super(param0 ,param1 ,param2);
175 $initialize();
176 }
177
178 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Frame param1, String param2, boolean param3) {
179 super(param1 ,param2 ,param3);
180 JAXXUtil.initContext(this, parentContext);
181 $initialize();
182 }
183
184 public EditMaturityCaracteristicPopupUI() {
185 $initialize();
186 }
187
188 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext) {
189 JAXXUtil.initContext(this, parentContext);
190 $initialize();
191 }
192
193 public EditMaturityCaracteristicPopupUI(Frame param0) {
194 super(param0);
195 $initialize();
196 }
197
198 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Frame param1) {
199 super(param1);
200 JAXXUtil.initContext(this, parentContext);
201 $initialize();
202 }
203
204 public EditMaturityCaracteristicPopupUI(Frame param0, boolean param1) {
205 super(param0 ,param1);
206 $initialize();
207 }
208
209 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Frame param1, boolean param2) {
210 super(param1 ,param2);
211 JAXXUtil.initContext(this, parentContext);
212 $initialize();
213 }
214
215 public EditMaturityCaracteristicPopupUI(Frame param0, String param1) {
216 super(param0 ,param1);
217 $initialize();
218 }
219
220 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Frame param1, String param2) {
221 super(param1 ,param2);
222 JAXXUtil.initContext(this, parentContext);
223 $initialize();
224 }
225
226 public EditMaturityCaracteristicPopupUI(Window param0) {
227 super(param0);
228 $initialize();
229 }
230
231 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Window param1) {
232 super(param1);
233 JAXXUtil.initContext(this, parentContext);
234 $initialize();
235 }
236
237 public EditMaturityCaracteristicPopupUI(Window param0, ModalityType param1) {
238 super(param0 ,param1);
239 $initialize();
240 }
241
242 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Window param1, ModalityType param2) {
243 super(param1 ,param2);
244 JAXXUtil.initContext(this, parentContext);
245 $initialize();
246 }
247
248 public EditMaturityCaracteristicPopupUI(Window param0, String param1) {
249 super(param0 ,param1);
250 $initialize();
251 }
252
253 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Window param1, String param2) {
254 super(param1 ,param2);
255 JAXXUtil.initContext(this, parentContext);
256 $initialize();
257 }
258
259 public EditMaturityCaracteristicPopupUI(Window param0, String param1, ModalityType param2) {
260 super(param0 ,param1 ,param2);
261 $initialize();
262 }
263
264 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Window param1, String param2, ModalityType param3) {
265 super(param1 ,param2 ,param3);
266 JAXXUtil.initContext(this, parentContext);
267 $initialize();
268 }
269
270 public EditMaturityCaracteristicPopupUI(Window param0, String param1, ModalityType param2, GraphicsConfiguration param3) {
271 super(param0 ,param1 ,param2 ,param3);
272 $initialize();
273 }
274
275 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Window param1, String param2, ModalityType param3, GraphicsConfiguration param4) {
276 super(param1 ,param2 ,param3 ,param4);
277 JAXXUtil.initContext(this, parentContext);
278 $initialize();
279 }
280
281 public EditMaturityCaracteristicPopupUI(Dialog param0, boolean param1) {
282 super(param0 ,param1);
283 $initialize();
284 }
285
286 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Dialog param1, boolean param2) {
287 super(param1 ,param2);
288 JAXXUtil.initContext(this, parentContext);
289 $initialize();
290 }
291
292 public EditMaturityCaracteristicPopupUI(Dialog param0, String param1) {
293 super(param0 ,param1);
294 $initialize();
295 }
296
297 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Dialog param1, String param2) {
298 super(param1 ,param2);
299 JAXXUtil.initContext(this, parentContext);
300 $initialize();
301 }
302
303 public EditMaturityCaracteristicPopupUI(Dialog param0, String param1, boolean param2) {
304 super(param0 ,param1 ,param2);
305 $initialize();
306 }
307
308 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Dialog param1, String param2, boolean param3) {
309 super(param1 ,param2 ,param3);
310 JAXXUtil.initContext(this, parentContext);
311 $initialize();
312 }
313
314 public EditMaturityCaracteristicPopupUI(Dialog param0, String param1, boolean param2, GraphicsConfiguration param3) {
315 super(param0 ,param1 ,param2 ,param3);
316 $initialize();
317 }
318
319 public EditMaturityCaracteristicPopupUI(JAXXContext parentContext, Dialog param1, String param2, boolean param3, GraphicsConfiguration param4) {
320 super(param1 ,param2 ,param3 ,param4);
321 JAXXUtil.initContext(this, parentContext);
322 $initialize();
323 }
324
325
326
327
328
329 public static JAXXObjectDescriptor $getJAXXObjectDescriptor() {
330 return JAXXUtil.decodeCompressedJAXXObjectDescriptor($jaxxObjectDescriptor);
331 }
332
333
334
335
336
337 @Override
338 public void applyDataBinding(String $binding) {
339 if (allComponentsCreated && $bindings.containsKey($binding)) {
340 getDataBinding($binding).applyDataBinding();
341 }
342 processDataBinding($binding);
343 }
344
345 @Override
346 public void firePropertyChange(String propertyName, Object oldValue, Object newValue) {
347 super.firePropertyChange(propertyName, oldValue, newValue);
348 }
349
350 @Override
351 public Map<String, Object> get$objectMap() {
352 return $objectMap;
353 }
354
355 @Override
356 public JAXXBinding getDataBinding(String bindingId) {
357 return $bindings.get(bindingId);
358 }
359
360 @Override
361 public JAXXBinding[] getDataBindings() {
362 return $bindings.values().toArray(new JAXXBinding[$bindings.size()]);
363 }
364
365 @Override
366 public Object getObjectById(String id) {
367 return $objectMap.get(id);
368 }
369
370 @Override
371 public void processDataBinding(String $binding, boolean $force) {
372 if (!$force && $activeBindings.contains($binding)) {
373 return;
374 }
375 $activeBindings.add($binding);
376 try {
377 if (allComponentsCreated && $bindings.containsKey($binding)) {
378 getDataBinding($binding).processDataBinding();
379 }
380 } finally {
381 $activeBindings.remove($binding);
382 }
383 }
384
385 @Override
386 public void processDataBinding(String $binding) {
387 processDataBinding($binding, false);
388 }
389
390 @Override
391 public void registerDataBinding(JAXXBinding binding) {
392 $bindings.put(binding.getId(), binding);
393 }
394
395 @Override
396 public void removeDataBinding(String $binding) {
397 if (allComponentsCreated && $bindings.containsKey($binding)) {
398 getDataBinding($binding).removeDataBinding();
399 }
400 }
401
402
403
404
405
406 @Override
407 public <T> T getContextValue(Class<T> clazz) {
408 return delegateContext.getContextValue(clazz, null);
409 }
410
411 @Override
412 public <T> T getContextValue(Class<T> clazz, String name) {
413 return delegateContext.getContextValue(clazz, name);
414 }
415
416 @Override
417 public JAXXContext getDelegateContext() {
418 return delegateContext;
419 }
420
421 @Override
422 public <O extends Container> O getParentContainer(Class<O> clazz) {
423 return SwingUtil.getParentContainer(this, clazz);
424 }
425
426 @Override
427 public <O extends Container> O getParentContainer(Object source, Class<O> clazz) {
428 return SwingUtil.getParentContainer(source, clazz);
429 }
430
431 @Override
432 public <T> void removeContextValue(Class<T> clazz) {
433 delegateContext.removeContextValue(clazz, null);
434 }
435
436 @Override
437 public <T> void removeContextValue(Class<T> clazz, String name) {
438 delegateContext.removeContextValue(clazz, name);
439 }
440
441 @Override
442 public <T> void setContextValue(T o) {
443 delegateContext.setContextValue(o, null);
444 }
445
446 @Override
447 public <T> void setContextValue(T o, String name) {
448 delegateContext.setContextValue(o, name);
449 }
450
451
452
453
454
455 @Override
456 public SwingValidator<?> getValidator(String validatorId) {
457 return (SwingValidator<?>) (validatorIds.contains(validatorId) ? getObjectById(validatorId) : null);
458 }
459
460 @Override
461 public List<String> getValidatorIds() {
462 return validatorIds;
463 }
464
465 @Override
466 public void registerValidatorFields() {
467 SwingValidatorUtil.detectValidatorFields(this);
468 }
469
470
471
472
473
474 public void doActionPerformed__on__cancelButton(ActionEvent event) {
475 if (log.isDebugEnabled()) {
476 log.debug(event);
477 }
478 handler.cancel();
479 }
480
481 public void doActionPerformed__on__validateButton(ActionEvent event) {
482 if (log.isDebugEnabled()) {
483 log.debug(event);
484 }
485 handler.validate();
486 }
487
488
489
490
491
492 public JButton getCancelButton() {
493 return cancelButton;
494 }
495
496 public EditMaturityCaracteristicPopupUIHandler getHandler() {
497 return handler;
498 }
499
500 public Table getMainPanel() {
501 return mainPanel;
502 }
503
504 public JList<CaracteristicQualitativeValue> getMaturityValuesEditor() {
505 return maturityValuesEditor;
506 }
507
508 public JLabel getMessage() {
509 return message;
510 }
511
512 public EditMaturityCaracteristicPopupUIModel getModel() {
513 return model;
514 }
515
516 public JButton getValidateButton() {
517 return validateButton;
518 }
519
520 public SwingValidator<EditMaturityCaracteristicPopupUIModel> getValidator() {
521 return validator;
522 }
523
524
525
526
527
528 public void setModel(EditMaturityCaracteristicPopupUIModel model) {
529 EditMaturityCaracteristicPopupUIModel oldValue = this.model;
530 this.model = model;
531 firePropertyChange(PROPERTY_MODEL, oldValue, model);
532 }
533
534
535
536
537
538 protected JPanel get$JPanel0() {
539 return $JPanel0;
540 }
541
542
543
544
545
546 protected void addChildrenToEditMaturityCaracteristicDialog() {
547 if (!allComponentsCreated) {
548 return;
549 }
550 add(mainPanel);
551 }
552
553 protected void addChildrenToMainPanel() {
554 if (!allComponentsCreated) {
555 return;
556 }
557 mainPanel.add(message, new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0, 10, 1, new Insets(3, 3, 3, 3), 0, 0));
558 mainPanel.add(SwingUtil.boxComponentWithJxLayer(maturityValuesEditor), new GridBagConstraints(0, 1, 1, 1, 1.0, 1.0, 10, 1, new Insets(3, 3, 3, 3), 0, 0));
559 mainPanel.add($JPanel0, new GridBagConstraints(0, 2, 1, 1, 0.0, 0.0, 10, 1, new Insets(3, 3, 3, 3), 0, 0));
560 }
561
562 protected void addChildrenToValidator() {
563 if (!allComponentsCreated) {
564 return;
565 }
566 validator.setUiClass(ImageValidationUI.class);
567 validator.setBean(model);
568 }
569
570 protected void createCancelButton() {
571 $objectMap.put("cancelButton", cancelButton = new JButton());
572
573 cancelButton.setName("cancelButton");
574 cancelButton.setText(t("tutti.common.cancel"));
575 cancelButton.setToolTipText(t("tutti.common.cancel"));
576 cancelButton.addActionListener(JAXXUtil.getEventListener(ActionListener.class, "actionPerformed", this, "doActionPerformed__on__cancelButton"));
577 cancelButton.putClientProperty("skipAction", true);
578 }
579
580 protected EditMaturityCaracteristicPopupUIHandler createHandler() {
581 return new EditMaturityCaracteristicPopupUIHandler();
582 }
583
584 protected void createMainPanel() {
585 $objectMap.put("mainPanel", mainPanel = new Table());
586
587 mainPanel.setName("mainPanel");
588 }
589
590 protected void createMaturityValuesEditor() {
591 $objectMap.put("maturityValuesEditor", maturityValuesEditor = new JList<CaracteristicQualitativeValue>());
592
593 maturityValuesEditor.setName("maturityValuesEditor");
594 }
595
596 protected void createMessage() {
597 $objectMap.put("message", message = new JLabel());
598
599 message.setName("message");
600 }
601
602 protected void createModel() {
603 $objectMap.put("model", model = new EditMaturityCaracteristicPopupUIModel());
604 }
605
606 protected void createValidateButton() {
607 $objectMap.put("validateButton", validateButton = new JButton());
608
609 validateButton.setName("validateButton");
610 validateButton.setText(t("tutti.common.validate"));
611 validateButton.setToolTipText(t("tutti.common.validate"));
612 validateButton.addActionListener(JAXXUtil.getEventListener(ActionListener.class, "actionPerformed", this, "doActionPerformed__on__validateButton"));
613 validateButton.putClientProperty("skipAction", true);
614 }
615
616 protected void createValidator() {
617 $objectMap.put("validator", validator = SwingValidator.newValidator(EditMaturityCaracteristicPopupUIModel.class, null));
618 }
619
620
621
622
623
624 private void $completeSetup() {
625 allComponentsCreated = true;
626 if (log.isDebugEnabled()) {
627 log.debug(this);
628 }
629 addChildrenToEditMaturityCaracteristicDialog();
630 addChildrenToValidator();
631 addChildrenToMainPanel();
632
633 $JPanel0.add(cancelButton);
634 $JPanel0.add(validateButton);
635
636
637 JAXXUtil.applyDataBinding(this, $bindings.keySet());
638
639
640 message.setBorder(BorderFactory.createEmptyBorder(5,10,5,10));
641 cancelButton.setMnemonic(SwingUtil.getFirstCharAt(t("tutti.common.cancel.mnemonic"),'Z'));
642 cancelButton.setIcon(SwingUtil.createActionIcon("cancel"));
643 validateButton.setMnemonic(SwingUtil.getFirstCharAt(t("tutti.common.validate.mnemonic"),'Z'));
644 validateButton.setIcon(SwingUtil.createActionIcon("validate"));
645
646 editMaturityCaracteristicDialog.pack();
647
648 validatorIds = SwingValidatorUtil.detectValidators(this);
649 SwingValidatorUtil.installUI(this);
650 }
651
652 private void $initialize() {
653 if (allComponentsCreated) {
654 return;
655 }
656 if (log.isDebugEnabled()) {
657 log.debug(this);
658 }
659 handler.beforeInit(this);
660 $objectMap.put("editMaturityCaracteristicDialog", editMaturityCaracteristicDialog);
661 createModel();
662 createValidator();
663 createMainPanel();
664 createMessage();
665 createMaturityValuesEditor();
666
667 $objectMap.put("$JPanel0", $JPanel0 = new JPanel());
668
669 $JPanel0.setName("$JPanel0");
670 $JPanel0.setLayout(new GridLayout(1, 0));
671 createCancelButton();
672 createValidateButton();
673
674 setName("editMaturityCaracteristicDialog");
675 editMaturityCaracteristicDialog.getContentPane().setLayout(new BorderLayout());
676 setTitle(t("tutti.editProtocol.maturityCaracteristic.dialog.title"));
677 setModal(true);
678
679
680 $registerDefaultBindings();
681 $completeSetup();
682 handler.afterInit(this);
683 }
684
685 private void $registerDefaultBindings() {
686
687 registerDataBinding(new DefaultJAXXBinding(this, BINDING_VALIDATE_BUTTON_ENABLED, true) {
688
689 @Override
690 public void applyDataBinding() {
691 if (validator != null) {
692 validator.addPropertyChangeListener("valid", this);
693 }
694 }
695
696 @Override
697 public void processDataBinding() {
698 if (validator != null) {
699 validateButton.setEnabled(validator.isValid());
700 }
701 }
702
703 @Override
704 public void removeDataBinding() {
705 if (validator != null) {
706 validator.removePropertyChangeListener("valid", this);
707 }
708 }
709 });
710 }
711
712 }