View Javadoc
1   package fr.ifremer.dali.ui.swing.content.manage.referential.pmfm.fraction.associatedMatrices;
2   
3   import fr.ifremer.dali.dto.referential.pmfm.MatrixDTO;
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.table.SwingTable;
9   import java.awt.BorderLayout;
10  import java.awt.Container;
11  import java.awt.Dialog;
12  import java.awt.Dialog.ModalityType;
13  import java.awt.Frame;
14  import java.awt.GraphicsConfiguration;
15  import java.awt.Window;
16  import java.awt.event.ActionEvent;
17  import java.awt.event.ActionListener;
18  import java.util.ArrayList;
19  import java.util.HashMap;
20  import java.util.List;
21  import java.util.Map;
22  import java.util.TreeMap;
23  import javax.swing.JButton;
24  import javax.swing.JDialog;
25  import javax.swing.JScrollPane;
26  import jaxx.runtime.JAXXBinding;
27  import jaxx.runtime.JAXXContext;
28  import jaxx.runtime.JAXXObject;
29  import jaxx.runtime.JAXXObjectDescriptor;
30  import jaxx.runtime.JAXXUtil;
31  import jaxx.runtime.SwingUtil;
32  import jaxx.runtime.context.DefaultJAXXContext;
33  import jaxx.runtime.swing.CardLayout2Ext;
34  import org.apache.commons.logging.Log;
35  import org.apache.commons.logging.LogFactory;
36  import static org.nuiton.i18n.I18n.t;
37  
38  public class AssociatedMatricesUI extends JDialog implements DaliUI<AssociatedMatricesUIModel, AssociatedMatricesUIHandler>, JAXXObject {
39  
40      /*-----------------------------------------------------------------------*/
41      /*------------------------- Other static fields -------------------------*/
42      /*-----------------------------------------------------------------------*/
43  
44      private static final String $jaxxObjectDescriptor = "H4sIAAAAAAAAAL1UQU8TURCelrbYAqKggAESUC/G5FXjxQSjIIYIKWosJsRefOw+4JG37y1vZ2XxYPwJ/gS9ezHx5sl48OzBi/EvGOPBq3HebmmBlsDJJrvdfTPzzTez38y7n1CMLExv8SRhNtYoA8GW5lZXH65tCQ/vicizMkRjIfvl8pBvQJ/fOo8QLjVqLrzaDK/OmyA0Wuh90TM1qES4q0S0KQQiTB6M8KKoWm+ZZ5IwtnuoLVLdUN/8/pV/7b96mwdIQmLnSpk6LqpdSaEGeekjDFGm57yquN4gGlbqDeI74M7mFY+iBzwQ2/ASemtQCrklMISLJy85xUjjkxDhHL0YT3IU/jKnXJ6IniwiyHXL6BKBsMznSrJYsmiHmDDPaCRgFnDNNwSzYl04CpIrFgbrAVu33ENpNOsEZnNdcoVhSqaEUAyMLxSC/m+5l13CNoGBy0t1zxqlHnEtriGMupYnzdz7TM693Ioa7Uy2wteUQGD7CtmOuW/lhrjRrgadF6u75zTA4Q22YPs9rj2h7saIVDUMH+CSnTZ5WBg/oDFSL2urty2vXAOKNqZjhLFGp+AfkymT+tghqTvA1Pp3ZPjbxx8fFvb0XaDc57u67htP0l1oTSgsSpd6MBN3jFJVl3k404ByJBTNdjq7E12I1ZtmIkf5zrpw5sLZfR5tEkSx9/unzyPPvvZAfgEqynB/gTv/RSjjpqUuGOUn4Z3ZlFH/zim6n6GrB6FMVvki+1gFtDH9FVFi+u1S5TWJ7x4rr0y9XDVxEuriRJcutkpZK3/5M1x/P7vXyRxVduFI93Y3i0+hJLWSWqS7orkGuu6GvjASsW/a495tAcARGyBsTsVkep/uaF6BBCqv39TLWgRGSw9hPG2YZwJ6Z5l2WdCyVrLOLboJhlJmdr0SCS2voc5QhD40Rq3IcOUolyR21K6kzXNPV+HQ0BxXQ46YKL5ryBlO3/I58qk1qX0asNsd2Dl3r5wAsSC9bDCPwBghjH8HzgGq5QYAAA==";
45      private static final Log log = LogFactory.getLog(AssociatedMatricesUI.class);
46      private static final long serialVersionUID = 1L;
47  
48      /*-----------------------------------------------------------------------*/
49      /*--------------------------- Internal states ---------------------------*/
50      /*-----------------------------------------------------------------------*/
51  
52      protected List<Object> $activeBindings = new ArrayList<Object>();
53      protected Map<String, Object> $bindingSources = new HashMap<String, Object>();
54      protected final Map<String, JAXXBinding> $bindings = new TreeMap<String, JAXXBinding>();
55      protected Map<String, Object> $objectMap = new HashMap<String, Object>();
56      protected Map<?, ?> $previousValues = new HashMap<Object, Object>();
57      private boolean allComponentsCreated;
58      protected final JAXXContext delegateContext = new DefaultJAXXContext();
59  
60      /*-----------------------------------------------------------------------*/
61      /*------------------------ Protected components  ------------------------*/
62      /*-----------------------------------------------------------------------*/
63  
64      protected SwingTable associatedMatricesTable;
65      protected AssociatedMatricesUI associatedMatricesUI = this;
66      protected JButton cancelButton;
67      protected final AssociatedMatricesUIHandler handler = createHandler();
68      protected AssociatedMatricesUIModel model;
69  
70      /*-----------------------------------------------------------------------*/
71      /*------------------------- Private components  -------------------------*/
72      /*-----------------------------------------------------------------------*/
73  
74      private JScrollPane $JScrollPane0;
75  
76      /*-----------------------------------------------------------------------*/
77      /*---------------------------- Constructors  ----------------------------*/
78      /*-----------------------------------------------------------------------*/
79  
80      public AssociatedMatricesUI(DaliUIContext context) {
81          super(context.getMainUI());
82          			ApplicationUIUtil.setApplicationContext(this, context);
83              $initialize();
84      }
85  
86      public AssociatedMatricesUI(Window param0) {
87          super(param0);
88          $initialize();
89      }
90  
91      public AssociatedMatricesUI(JAXXContext parentContext, Window param1) {
92          super(param1);
93          JAXXUtil.initContext(this, parentContext);
94          $initialize();
95      }
96  
97      public AssociatedMatricesUI(Dialog param0, String param1, boolean param2, GraphicsConfiguration param3) {
98          super(param0 ,param1 ,param2 ,param3);
99          $initialize();
100     }
101 
102     public AssociatedMatricesUI(JAXXContext parentContext, Dialog param1, String param2, boolean param3, GraphicsConfiguration param4) {
103         super(param1 ,param2 ,param3 ,param4);
104         JAXXUtil.initContext(this, parentContext);
105         $initialize();
106     }
107 
108     public AssociatedMatricesUI(Dialog param0, String param1, boolean param2) {
109         super(param0 ,param1 ,param2);
110         $initialize();
111     }
112 
113     public AssociatedMatricesUI(JAXXContext parentContext, Dialog param1, String param2, boolean param3) {
114         super(param1 ,param2 ,param3);
115         JAXXUtil.initContext(this, parentContext);
116         $initialize();
117     }
118 
119     public AssociatedMatricesUI(Dialog param0, String param1) {
120         super(param0 ,param1);
121         $initialize();
122     }
123 
124     public AssociatedMatricesUI(JAXXContext parentContext, Dialog param1, String param2) {
125         super(param1 ,param2);
126         JAXXUtil.initContext(this, parentContext);
127         $initialize();
128     }
129 
130     public AssociatedMatricesUI(Window param0, String param1, ModalityType param2, GraphicsConfiguration param3) {
131         super(param0 ,param1 ,param2 ,param3);
132         $initialize();
133     }
134 
135     public AssociatedMatricesUI(JAXXContext parentContext, Window param1, String param2, ModalityType param3, GraphicsConfiguration param4) {
136         super(param1 ,param2 ,param3 ,param4);
137         JAXXUtil.initContext(this, parentContext);
138         $initialize();
139     }
140 
141     public AssociatedMatricesUI(Window param0, String param1, ModalityType param2) {
142         super(param0 ,param1 ,param2);
143         $initialize();
144     }
145 
146     public AssociatedMatricesUI(JAXXContext parentContext, Window param1, String param2, ModalityType param3) {
147         super(param1 ,param2 ,param3);
148         JAXXUtil.initContext(this, parentContext);
149         $initialize();
150     }
151 
152     public AssociatedMatricesUI(Window param0, String param1) {
153         super(param0 ,param1);
154         $initialize();
155     }
156 
157     public AssociatedMatricesUI(JAXXContext parentContext, Window param1, String param2) {
158         super(param1 ,param2);
159         JAXXUtil.initContext(this, parentContext);
160         $initialize();
161     }
162 
163     public AssociatedMatricesUI(Window param0, ModalityType param1) {
164         super(param0 ,param1);
165         $initialize();
166     }
167 
168     public AssociatedMatricesUI(JAXXContext parentContext, Window param1, ModalityType param2) {
169         super(param1 ,param2);
170         JAXXUtil.initContext(this, parentContext);
171         $initialize();
172     }
173 
174     public AssociatedMatricesUI(Frame param0, String param1) {
175         super(param0 ,param1);
176         $initialize();
177     }
178 
179     public AssociatedMatricesUI(JAXXContext parentContext, Frame param1, String param2) {
180         super(param1 ,param2);
181         JAXXUtil.initContext(this, parentContext);
182         $initialize();
183     }
184 
185     public AssociatedMatricesUI(Frame param0, boolean param1) {
186         super(param0 ,param1);
187         $initialize();
188     }
189 
190     public AssociatedMatricesUI(JAXXContext parentContext, Frame param1, boolean param2) {
191         super(param1 ,param2);
192         JAXXUtil.initContext(this, parentContext);
193         $initialize();
194     }
195 
196     public AssociatedMatricesUI(Frame param0) {
197         super(param0);
198         $initialize();
199     }
200 
201     public AssociatedMatricesUI(JAXXContext parentContext, Frame param1) {
202         super(param1);
203         JAXXUtil.initContext(this, parentContext);
204         $initialize();
205     }
206 
207     public AssociatedMatricesUI() {
208         $initialize();
209     }
210 
211     public AssociatedMatricesUI(JAXXContext parentContext) {
212         JAXXUtil.initContext(this, parentContext);
213         $initialize();
214     }
215 
216     public AssociatedMatricesUI(Dialog param0, boolean param1) {
217         super(param0 ,param1);
218         $initialize();
219     }
220 
221     public AssociatedMatricesUI(JAXXContext parentContext, Dialog param1, boolean param2) {
222         super(param1 ,param2);
223         JAXXUtil.initContext(this, parentContext);
224         $initialize();
225     }
226 
227     public AssociatedMatricesUI(Dialog param0) {
228         super(param0);
229         $initialize();
230     }
231 
232     public AssociatedMatricesUI(JAXXContext parentContext, Dialog param1) {
233         super(param1);
234         JAXXUtil.initContext(this, parentContext);
235         $initialize();
236     }
237 
238     public AssociatedMatricesUI(Frame param0, String param1, boolean param2, GraphicsConfiguration param3) {
239         super(param0 ,param1 ,param2 ,param3);
240         $initialize();
241     }
242 
243     public AssociatedMatricesUI(JAXXContext parentContext, Frame param1, String param2, boolean param3, GraphicsConfiguration param4) {
244         super(param1 ,param2 ,param3 ,param4);
245         JAXXUtil.initContext(this, parentContext);
246         $initialize();
247     }
248 
249     public AssociatedMatricesUI(Frame param0, String param1, boolean param2) {
250         super(param0 ,param1 ,param2);
251         $initialize();
252     }
253 
254     public AssociatedMatricesUI(JAXXContext parentContext, Frame param1, String param2, boolean param3) {
255         super(param1 ,param2 ,param3);
256         JAXXUtil.initContext(this, parentContext);
257         $initialize();
258     }
259 
260     /*-----------------------------------------------------------------------*/
261     /*--------------------------- Statics methods ---------------------------*/
262     /*-----------------------------------------------------------------------*/
263 
264     public static JAXXObjectDescriptor $getJAXXObjectDescriptor() {
265         return JAXXUtil.decodeCompressedJAXXObjectDescriptor($jaxxObjectDescriptor);
266     }
267 
268     /*-----------------------------------------------------------------------*/
269     /*---------------------- JAXXObject implementation ----------------------*/
270     /*-----------------------------------------------------------------------*/
271 
272     @Override
273     public void applyDataBinding(String $binding) {
274         if (allComponentsCreated && $bindings.containsKey($binding)) {
275             getDataBinding($binding).applyDataBinding();
276         }
277         processDataBinding($binding);
278     }
279 
280     @Override
281     public void firePropertyChange(String propertyName, Object oldValue, Object newValue) {
282         super.firePropertyChange(propertyName, oldValue, newValue);
283     }
284 
285     @Override
286     public Map<String, Object> get$objectMap() {
287         return $objectMap;
288     }
289 
290     @Override
291     public JAXXBinding getDataBinding(String bindingId) {
292         return $bindings.get(bindingId);
293     }
294 
295     @Override
296     public JAXXBinding[] getDataBindings() {
297         return $bindings.values().toArray(new JAXXBinding[$bindings.size()]);
298     }
299 
300     @Override
301     public Object getObjectById(String id) {
302         return $objectMap.get(id);
303     }
304 
305     @Override
306     public void processDataBinding(String $binding, boolean $force) {
307         if (!$force && $activeBindings.contains($binding)) { 
308             return;
309         }
310         $activeBindings.add($binding);
311         try {
312             if (allComponentsCreated && $bindings.containsKey($binding)) {
313                 getDataBinding($binding).processDataBinding();
314             }
315         } finally {
316             $activeBindings.remove($binding);
317         }
318     }
319 
320     @Override
321     public void processDataBinding(String $binding) {
322         processDataBinding($binding, false);
323     }
324 
325     @Override
326     public void registerDataBinding(JAXXBinding binding) {
327         $bindings.put(binding.getId(), binding);
328     }
329 
330     @Override
331     public void removeDataBinding(String $binding) {
332         if (allComponentsCreated && $bindings.containsKey($binding)) {
333             getDataBinding($binding).removeDataBinding();
334         }
335     }
336 
337     /*-----------------------------------------------------------------------*/
338     /*--------------------- JAXXContext implementation  ---------------------*/
339     /*-----------------------------------------------------------------------*/
340 
341     @Override
342     public <T> T getContextValue(Class<T> clazz) {
343         return delegateContext.getContextValue(clazz, null);
344     }
345 
346     @Override
347     public <T> T getContextValue(Class<T> clazz, String name) {
348         return delegateContext.getContextValue(clazz, name);
349     }
350 
351     @Override
352     public JAXXContext getDelegateContext() {
353         return delegateContext;
354     }
355 
356     @Override
357     public <O extends Container> O getParentContainer(Class<O> clazz) {
358         return SwingUtil.getParentContainer(this, clazz);
359     }
360 
361     @Override
362     public <O extends Container> O getParentContainer(Object source, Class<O> clazz) {
363         return SwingUtil.getParentContainer(source, clazz);
364     }
365 
366     @Override
367     public <T> void removeContextValue(Class<T> clazz) {
368         delegateContext.removeContextValue(clazz, null);
369     }
370 
371     @Override
372     public <T> void removeContextValue(Class<T> clazz, String name) {
373         delegateContext.removeContextValue(clazz, name);
374     }
375 
376     @Override
377     public <T> void setContextValue(T o) {
378         delegateContext.setContextValue(o, null);
379     }
380 
381     @Override
382     public <T> void setContextValue(T o, String name) {
383         delegateContext.setContextValue(o, name);
384     }
385 
386     /*-----------------------------------------------------------------------*/
387     /*---------------------------- Event methods ----------------------------*/
388     /*-----------------------------------------------------------------------*/
389 
390     public void doActionPerformed__on__cancelButton(ActionEvent event) {
391         if (log.isDebugEnabled()) {
392             log.debug(event);
393         }
394         handler.cancel();
395     }
396 
397     /*-----------------------------------------------------------------------*/
398     /*----------------------- Public acessor methods  -----------------------*/
399     /*-----------------------------------------------------------------------*/
400 
401     public SwingTable getAssociatedMatricesTable() {
402         return associatedMatricesTable;
403     }
404 
405     public JButton getCancelButton() {
406         return cancelButton;
407     }
408 
409     public AssociatedMatricesUIHandler getHandler() {
410         return handler;
411     }
412 
413     public AssociatedMatricesUIModel getModel() {
414         return model;
415     }
416 
417     /*-----------------------------------------------------------------------*/
418     /*--------------------- Protected acessors methods  ---------------------*/
419     /*-----------------------------------------------------------------------*/
420 
421     protected JScrollPane get$JScrollPane0() {
422         return $JScrollPane0;
423     }
424 
425     /*-----------------------------------------------------------------------*/
426     /*--------------------- Components creation methods ---------------------*/
427     /*-----------------------------------------------------------------------*/
428 
429     protected void addChildrenToAssociatedMatricesUI() {
430         if (!allComponentsCreated) {
431             return;
432         }
433         add($JScrollPane0);
434         add(cancelButton, BorderLayout.PAGE_END);
435     }
436 
437     protected void createAssociatedMatricesTable() {
438         $objectMap.put("associatedMatricesTable", associatedMatricesTable = new SwingTable());
439         
440         associatedMatricesTable.setName("associatedMatricesTable");
441     }
442 
443     protected void createCancelButton() {
444         $objectMap.put("cancelButton", cancelButton = new JButton());
445         
446         cancelButton.setName("cancelButton");
447         cancelButton.setText(t("dali.common.cancel"));
448         cancelButton.setToolTipText(t("dali.common.cancel"));
449         cancelButton.addActionListener(JAXXUtil.getEventListener(ActionListener.class, "actionPerformed", this, "doActionPerformed__on__cancelButton"));
450     }
451 
452     protected AssociatedMatricesUIHandler createHandler() {
453         return new AssociatedMatricesUIHandler();
454     }
455 
456     protected void createModel() {
457         $objectMap.put("model", model = getContextValue(AssociatedMatricesUIModel.class));
458     }
459 
460     /*-----------------------------------------------------------------------*/
461     /*------------------------ Internal jaxx methods ------------------------*/
462     /*-----------------------------------------------------------------------*/
463 
464     private void $completeSetup() {
465         allComponentsCreated = true;
466         if (log.isDebugEnabled()) {
467             log.debug(this);
468         }
469         addChildrenToAssociatedMatricesUI();
470         // inline complete setup of $JScrollPane0
471         $JScrollPane0.getViewport().add(associatedMatricesTable);
472         
473         // apply 3 property setters
474         cancelButton.setMnemonic(SwingUtil.getFirstCharAt(t("dali.common.cancel.mnemonic"),'Z'));
475         cancelButton.setIcon(SwingUtil.createActionIcon("cancel"));
476         // late initializer
477         associatedMatricesUI.pack();
478     }
479 
480     private void $initialize() {
481         if (allComponentsCreated) {
482             return;
483         }
484         if (log.isDebugEnabled()) {
485             log.debug(this);
486         }
487         handler.beforeInit(this);
488         $objectMap.put("associatedMatricesUI", associatedMatricesUI);
489         createModel();
490         // inline creation of $JScrollPane0
491         $objectMap.put("$JScrollPane0", $JScrollPane0 = new JScrollPane());
492         
493         $JScrollPane0.setName("$JScrollPane0");
494         createAssociatedMatricesTable();
495         createCancelButton();
496         // inline creation of associatedMatricesUI
497         setName("associatedMatricesUI");
498         associatedMatricesUI.getContentPane().setLayout(new BorderLayout());
499         setResizable(true);
500         setTitle(t("dali.property.pmfm.fraction.associatedMatrices"));
501         setModal(true);
502         
503         $completeSetup();
504         handler.afterInit(this);
505     }
506 
507 }