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