View Javadoc
1   package fr.ifremer.dali.ui.swing.content.manage.referential.location.national;
2   
3   import fr.ifremer.dali.ui.swing.DaliHelpBroker;
4   import fr.ifremer.dali.ui.swing.DaliUIContext;
5   import fr.ifremer.dali.ui.swing.content.manage.referential.location.menu.LocationMenuUI;
6   import fr.ifremer.dali.ui.swing.util.DaliUI;
7   import fr.ifremer.quadrige3.ui.swing.ApplicationUI;
8   import fr.ifremer.quadrige3.ui.swing.ApplicationUIUtil;
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.LayoutManager;
14  import java.util.ArrayList;
15  import java.util.HashMap;
16  import java.util.List;
17  import java.util.Map;
18  import java.util.TreeMap;
19  import javax.swing.Box;
20  import javax.swing.BoxLayout;
21  import javax.swing.JPanel;
22  import javax.swing.JScrollPane;
23  import jaxx.runtime.JAXXBinding;
24  import jaxx.runtime.JAXXContext;
25  import jaxx.runtime.JAXXObject;
26  import jaxx.runtime.JAXXObjectDescriptor;
27  import jaxx.runtime.JAXXUtil;
28  import jaxx.runtime.SwingUtil;
29  import jaxx.runtime.context.DefaultJAXXContext;
30  import org.apache.commons.logging.Log;
31  import org.apache.commons.logging.LogFactory;
32  
33  public class LocationNationalUI extends JPanel implements DaliUI<LocationNationalUIModel, LocationNationalUIHandler>, JAXXObject {
34  
35      /*-----------------------------------------------------------------------*/
36      /*------------------------- Other static fields -------------------------*/
37      /*-----------------------------------------------------------------------*/
38  
39      private static final String $jaxxObjectDescriptor = "H4sIAAAAAAAAALVUz08TQRR+rbZQEH8RKkZMUEiIGqcajxhFIQRIQWIlITYmTrtDGZydGWZnZbkY/wT/BL17MfHmyXjw7MGL8V8wxoNX45vtdpdCiSbGHma3773ve9+bfe+9/gaFwMCFLRpFxITScp+RpTvr6/caW6xp51jQNFxbZaD9y+UhX4dBL7UHFibqVQevJPDKrPK1kkzuQU9XYSCwu4IFm4xZC+e7Ec0gqNRS93SkQ9NhTUX1Yn3543v+hff8VR4g0qiuD0sZ/xMqq+RoFfLcs3AaMz2lFUFlC2UYLluod8jZZgUNghXqs214Bn1VKGpqkMzCxb8vOeaI8ZG20D+5tEolE9csrG8YwjcM85khHhWchJwEO5idNJW0SEZ8KmmLEcM2mEvLqSBCNanlShIZP9BSTSwriWFtUes4X9FCwVceExYe/a9Uy44/y1dsGPWEGQtThyacw38LiLkbR2bQsthHvsxkuLZoYfWftPvIkupuU7qEpTRv54Ncxz5wnzxKyNvW7tihyaVa0yghnA+/4JkuQOZy4SMpamR/ZQ9oQzALZE9h2yH1DG+xG1l11kWRmnuPAY5tVGOHn+vqcJwdks1O1ty5OhRMiGYLo/WD43YfXe1BG903aI4w9v4qD39+9/XtfGe68ph7pGfonuWAXa+N0tgD3KU+0R6t0HJRWaZ6ug6lgAncLPHmGOshrJa4URzmO+XgxMHJAg02kaLQ9+X9h/LjT0cgPw8DQlFvnrr4RSjZTYO3oIQX6dszsaJjO/14nnTasDkF3VUhDu/xmx61dLzBpYeXeyvCSxjrcQmpkkbp48/h2puZzkXkUNjZQ8Ozyyg8hCKXgksWL5pkh/RcLIM6YKGnsl3Ra3vk3HNAJzMzEZ9TByt15kvuuByF7nElluzersa+MjL8BtJZD6H4BQAA";
40      private static final Log log = LogFactory.getLog(LocationNationalUI.class);
41      private static final long serialVersionUID = 1L;
42  
43      /*-----------------------------------------------------------------------*/
44      /*--------------------------- Internal states ---------------------------*/
45      /*-----------------------------------------------------------------------*/
46  
47      protected List<Object> $activeBindings = new ArrayList<Object>();
48      protected Map<String, Object> $bindingSources = new HashMap<String, Object>();
49      protected final Map<String, JAXXBinding> $bindings = new TreeMap<String, JAXXBinding>();
50      protected Map<String, Object> $objectMap = new HashMap<String, Object>();
51      protected Map<?, ?> $previousValues = new HashMap<Object, Object>();
52      private boolean allComponentsCreated;
53      protected final JAXXContext delegateContext = new DefaultJAXXContext();
54  
55      /*-----------------------------------------------------------------------*/
56      /*------------------------ Protected components  ------------------------*/
57      /*-----------------------------------------------------------------------*/
58  
59      protected DaliHelpBroker broker;
60      protected final LocationNationalUIHandler handler = createHandler();
61      protected LocationMenuUI locationNationalMenuUI;
62      protected SwingTable locationNationalTable;
63      protected LocationNationalUIModel model;
64  
65      /*-----------------------------------------------------------------------*/
66      /*------------------------- Private components  -------------------------*/
67      /*-----------------------------------------------------------------------*/
68  
69      private LocationNationalUI $JPanel0 = this;
70      private JPanel $JPanel1;
71      private JScrollPane $JScrollPane0;
72  
73      /*-----------------------------------------------------------------------*/
74      /*---------------------------- Constructors  ----------------------------*/
75      /*-----------------------------------------------------------------------*/
76  
77      public LocationNationalUI(ApplicationUI parentUI) {
78          ApplicationUIUtil.setParentUI(this, parentUI);
79              $initialize();
80      }
81  
82      public LocationNationalUI() {
83          $initialize();
84      }
85  
86      public LocationNationalUI(JAXXContext parentContext) {
87          JAXXUtil.initContext(this, parentContext);
88          $initialize();
89      }
90  
91      public LocationNationalUI(boolean param0) {
92          super(param0);
93          $initialize();
94      }
95  
96      public LocationNationalUI(JAXXContext parentContext, boolean param1) {
97          super(param1);
98          JAXXUtil.initContext(this, parentContext);
99          $initialize();
100     }
101 
102     public LocationNationalUI(LayoutManager param0) {
103         super(param0);
104         $initialize();
105     }
106 
107     public LocationNationalUI(JAXXContext parentContext, LayoutManager param1) {
108         super(param1);
109         JAXXUtil.initContext(this, parentContext);
110         $initialize();
111     }
112 
113     public LocationNationalUI(LayoutManager param0, boolean param1) {
114         super(param0 ,param1);
115         $initialize();
116     }
117 
118     public LocationNationalUI(JAXXContext parentContext, LayoutManager param1, boolean param2) {
119         super(param1 ,param2);
120         JAXXUtil.initContext(this, parentContext);
121         $initialize();
122     }
123 
124     /*-----------------------------------------------------------------------*/
125     /*--------------------------- Statics methods ---------------------------*/
126     /*-----------------------------------------------------------------------*/
127 
128     public static JAXXObjectDescriptor $getJAXXObjectDescriptor() {
129         return JAXXUtil.decodeCompressedJAXXObjectDescriptor($jaxxObjectDescriptor);
130     }
131 
132     /*-----------------------------------------------------------------------*/
133     /*---------------------- JAXXObject implementation ----------------------*/
134     /*-----------------------------------------------------------------------*/
135 
136     @Override
137     public void applyDataBinding(String $binding) {
138         if (allComponentsCreated && $bindings.containsKey($binding)) {
139             getDataBinding($binding).applyDataBinding();
140         }
141         processDataBinding($binding);
142     }
143 
144     @Override
145     public void firePropertyChange(String propertyName, Object oldValue, Object newValue) {
146         super.firePropertyChange(propertyName, oldValue, newValue);
147     }
148 
149     @Override
150     public Map<String, Object> get$objectMap() {
151         return $objectMap;
152     }
153 
154     @Override
155     public JAXXBinding getDataBinding(String bindingId) {
156         return $bindings.get(bindingId);
157     }
158 
159     @Override
160     public JAXXBinding[] getDataBindings() {
161         return $bindings.values().toArray(new JAXXBinding[$bindings.size()]);
162     }
163 
164     @Override
165     public Object getObjectById(String id) {
166         return $objectMap.get(id);
167     }
168 
169     @Override
170     public void processDataBinding(String $binding, boolean $force) {
171         if (!$force && $activeBindings.contains($binding)) { 
172             return;
173         }
174         $activeBindings.add($binding);
175         try {
176             if (allComponentsCreated && $bindings.containsKey($binding)) {
177                 getDataBinding($binding).processDataBinding();
178             }
179         } finally {
180             $activeBindings.remove($binding);
181         }
182     }
183 
184     @Override
185     public void processDataBinding(String $binding) {
186         processDataBinding($binding, false);
187     }
188 
189     @Override
190     public void registerDataBinding(JAXXBinding binding) {
191         $bindings.put(binding.getId(), binding);
192     }
193 
194     @Override
195     public void removeDataBinding(String $binding) {
196         if (allComponentsCreated && $bindings.containsKey($binding)) {
197             getDataBinding($binding).removeDataBinding();
198         }
199     }
200 
201     /*-----------------------------------------------------------------------*/
202     /*--------------------- JAXXContext implementation  ---------------------*/
203     /*-----------------------------------------------------------------------*/
204 
205     @Override
206     public <T> T getContextValue(Class<T> clazz) {
207         return delegateContext.getContextValue(clazz, null);
208     }
209 
210     @Override
211     public <T> T getContextValue(Class<T> clazz, String name) {
212         return delegateContext.getContextValue(clazz, name);
213     }
214 
215     @Override
216     public JAXXContext getDelegateContext() {
217         return delegateContext;
218     }
219 
220     @Override
221     public <O extends Container> O getParentContainer(Class<O> clazz) {
222         return SwingUtil.getParentContainer(this, clazz);
223     }
224 
225     @Override
226     public <O extends Container> O getParentContainer(Object source, Class<O> clazz) {
227         return SwingUtil.getParentContainer(source, clazz);
228     }
229 
230     @Override
231     public <T> void removeContextValue(Class<T> clazz) {
232         delegateContext.removeContextValue(clazz, null);
233     }
234 
235     @Override
236     public <T> void removeContextValue(Class<T> clazz, String name) {
237         delegateContext.removeContextValue(clazz, name);
238     }
239 
240     @Override
241     public <T> void setContextValue(T o) {
242         delegateContext.setContextValue(o, null);
243     }
244 
245     @Override
246     public <T> void setContextValue(T o, String name) {
247         delegateContext.setContextValue(o, name);
248     }
249 
250     /*-----------------------------------------------------------------------*/
251     /*----------------------- Public acessor methods  -----------------------*/
252     /*-----------------------------------------------------------------------*/
253 
254     public DaliHelpBroker getBroker() {
255         return broker;
256     }
257 
258     public LocationNationalUIHandler getHandler() {
259         return handler;
260     }
261 
262     public LocationMenuUI getLocationNationalMenuUI() {
263         return locationNationalMenuUI;
264     }
265 
266     public SwingTable getLocationNationalTable() {
267         return locationNationalTable;
268     }
269 
270     public LocationNationalUIModel getModel() {
271         return model;
272     }
273 
274     /*-----------------------------------------------------------------------*/
275     /*--------------------- Protected acessors methods  ---------------------*/
276     /*-----------------------------------------------------------------------*/
277 
278     protected JPanel get$JPanel1() {
279         return $JPanel1;
280     }
281 
282     protected JScrollPane get$JScrollPane0() {
283         return $JScrollPane0;
284     }
285 
286     /*-----------------------------------------------------------------------*/
287     /*--------------------- Components creation methods ---------------------*/
288     /*-----------------------------------------------------------------------*/
289 
290     protected void createBroker() {
291         $objectMap.put("broker", broker = new DaliHelpBroker("dali.home.help"));
292     }
293 
294     protected LocationNationalUIHandler createHandler() {
295         return new LocationNationalUIHandler();
296     }
297 
298     protected void createLocationNationalMenuUI() {
299         $objectMap.put("locationNationalMenuUI", locationNationalMenuUI = new LocationMenuUI(this));
300         
301         locationNationalMenuUI.setName("locationNationalMenuUI");
302     }
303 
304     protected void createLocationNationalTable() {
305         $objectMap.put("locationNationalTable", locationNationalTable = new SwingTable());
306         
307         locationNationalTable.setName("locationNationalTable");
308     }
309 
310     protected void createModel() {
311         $objectMap.put("model", model = getContextValue(LocationNationalUIModel.class));
312     }
313 
314     /*-----------------------------------------------------------------------*/
315     /*------------------------ Internal jaxx methods ------------------------*/
316     /*-----------------------------------------------------------------------*/
317 
318     private void $completeSetup() {
319         allComponentsCreated = true;
320         if (log.isDebugEnabled()) {
321             log.debug(this);
322         }
323         // inline complete setup of $JPanel0
324         add(locationNationalMenuUI, BorderLayout.LINE_START);
325         add($JPanel1, BorderLayout.CENTER);
326         // inline complete setup of $JPanel1
327         $JPanel1.add($JScrollPane0);
328         // inline complete setup of $JScrollPane0
329         $JScrollPane0.getViewport().add(locationNationalTable);
330     }
331 
332     private void $initialize() {
333         if (allComponentsCreated) {
334             return;
335         }
336         if (log.isDebugEnabled()) {
337             log.debug(this);
338         }
339         handler.beforeInit(this);
340         $objectMap.put("$JPanel0", $JPanel0);
341         createModel();
342         createBroker();
343         createLocationNationalMenuUI();
344         // inline creation of $JPanel1
345         $objectMap.put("$JPanel1", $JPanel1 = new JPanel());
346         
347         $JPanel1.setName("$JPanel1");
348         $JPanel1.setLayout(new BorderLayout());
349         // inline creation of $JScrollPane0
350         $objectMap.put("$JScrollPane0", $JScrollPane0 = new JScrollPane());
351         
352         $JScrollPane0.setName("$JScrollPane0");
353         createLocationNationalTable();
354         // inline creation of $JPanel0
355         setName("$JPanel0");
356         setLayout(new BorderLayout());
357         
358         $completeSetup();
359         handler.afterInit(this);
360     }
361 
362 }