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