View Javadoc
1   package fr.ifremer.dali.ui.swing.content;
2   
3   import fr.ifremer.dali.ui.swing.DaliHelpBroker;
4   import fr.ifremer.dali.ui.swing.DaliScreen;
5   import fr.ifremer.dali.ui.swing.DaliUIContext;
6   import fr.ifremer.quadrige3.ui.swing.ApplicationUIContext;
7   import fr.ifremer.quadrige3.ui.swing.ApplicationUIUtil;
8   import fr.ifremer.quadrige3.ui.swing.content.MainUI;
9   import java.awt.BorderLayout;
10  import java.awt.Component;
11  import java.awt.GraphicsConfiguration;
12  import java.awt.event.ActionEvent;
13  import java.awt.event.ActionListener;
14  import javax.swing.JFrame;
15  import javax.swing.JMenu;
16  import javax.swing.JMenuItem;
17  import javax.swing.JSeparator;
18  import jaxx.runtime.JAXXContext;
19  import jaxx.runtime.JAXXObjectDescriptor;
20  import jaxx.runtime.JAXXUtil;
21  import jaxx.runtime.SwingUtil;
22  import jaxx.runtime.binding.DefaultJAXXBinding;
23  import jaxx.runtime.swing.BlockingLayerUI;
24  import jaxx.runtime.swing.StatusMessagePanel;
25  import jaxx.runtime.swing.help.JAXXHelpUI;
26  import jaxx.runtime.validator.swing.SwingValidatorMessageWidget;
27  import org.apache.commons.logging.Log;
28  import org.apache.commons.logging.LogFactory;
29  import org.jdesktop.swingx.JXTitledPanel;
30  import static org.nuiton.i18n.I18n.t;
31  
32  public class DaliMainUI extends MainUI<DaliMainUIHandler> implements JAXXHelpUI<DaliHelpBroker> {
33  
34      /*-----------------------------------------------------------------------*/
35      /*------------------ Constants for all public bindings ------------------*/
36      /*-----------------------------------------------------------------------*/
37  
38      public static final String BINDING_BUSY_BLOCK_LAYER_UI_BLOCK = "busyBlockLayerUI.block";
39      public static final String BINDING_BUSY_BLOCK_LAYER_UI_BLOCKING_COLOR = "busyBlockLayerUI.blockingColor";
40      public static final String BINDING_MENU_ADMINISTRATION_ENABLED = "menuAdministration.enabled";
41      public static final String BINDING_MENU_ANALYSIS_INSTRUMENT_ENABLED = "menuAnalysisInstrument.enabled";
42      public static final String BINDING_MENU_AUTHENTICATION_ENABLED = "menuAuthentication.enabled";
43      public static final String BINDING_MENU_CAMPAIGN_ENABLED = "menuCampaign.enabled";
44      public static final String BINDING_MENU_CONFIGURATION_ENABLED = "menuConfiguration.enabled";
45      public static final String BINDING_MENU_CONTEXT_ENABLED = "menuContext.enabled";
46      public static final String BINDING_MENU_CONTEXT_FILTER_ENABLED = "menuContextFilter.enabled";
47      public static final String BINDING_MENU_DEPARTMENT_ENABLED = "menuDepartment.enabled";
48      public static final String BINDING_MENU_FILE_EXTRACTION_ENABLED = "menuFileExtraction.enabled";
49      public static final String BINDING_MENU_FILE_HOME_ENABLED = "menuFileHome.enabled";
50      public static final String BINDING_MENU_FILE_OBSERVATION_ENABLED = "menuFileObservation.enabled";
51      public static final String BINDING_MENU_FILTER_ANALYSIS_INSTRUMENT_ENABLED = "menuFilterAnalysisInstrument.enabled";
52      public static final String BINDING_MENU_FILTER_CAMPAIGN_ENABLED = "menuFilterCampaign.enabled";
53      public static final String BINDING_MENU_FILTER_DEPARTMENT_ENABLED = "menuFilterDepartment.enabled";
54      public static final String BINDING_MENU_FILTER_ENABLED = "menuFilter.enabled";
55      public static final String BINDING_MENU_FILTER_LOCATION_ENABLED = "menuFilterLocation.enabled";
56      public static final String BINDING_MENU_FILTER_PMFM_ENABLED = "menuFilterPmfm.enabled";
57      public static final String BINDING_MENU_FILTER_PROGRAM_ENABLED = "menuFilterProgram.enabled";
58      public static final String BINDING_MENU_FILTER_SAMPLING_EQUIPMENT_ENABLED = "menuFilterSamplingEquipment.enabled";
59      public static final String BINDING_MENU_FILTER_TAXON_ENABLED = "menuFilterTaxon.enabled";
60      public static final String BINDING_MENU_FILTER_TAXON_GROUP_ENABLED = "menuFilterTaxonGroup.enabled";
61      public static final String BINDING_MENU_FILTER_USER_ENABLED = "menuFilterUser.enabled";
62      public static final String BINDING_MENU_FRACTION_ENABLED = "menuFraction.enabled";
63      public static final String BINDING_MENU_HELP_ABOUT_ENABLED = "menuHelpAbout.enabled";
64      public static final String BINDING_MENU_HELP_ENABLED = "menuHelp.enabled";
65      public static final String BINDING_MENU_HELP_SITE_ENABLED = "menuHelpSite.enabled";
66      public static final String BINDING_MENU_LOCATION_ENABLED = "menuLocation.enabled";
67      public static final String BINDING_MENU_MANAGE_DB_ENABLED = "menuManageDb.enabled";
68      public static final String BINDING_MENU_MATRIX_ENABLED = "menuMatrix.enabled";
69      public static final String BINDING_MENU_METHOD_ENABLED = "menuMethod.enabled";
70      public static final String BINDING_MENU_PARAMETER_ENABLED = "menuParameter.enabled";
71      public static final String BINDING_MENU_PMFMS_ENABLED = "menuPmfms.enabled";
72      public static final String BINDING_MENU_PMFM_ENABLED = "menuPmfm.enabled";
73      public static final String BINDING_MENU_PROGRAM_ENABLED = "menuProgram.enabled";
74      public static final String BINDING_MENU_REFERENTIAL_ENABLED = "menuReferential.enabled";
75      public static final String BINDING_MENU_RULE_LIST_ENABLED = "menuRuleList.enabled";
76      public static final String BINDING_MENU_SAMPLING_EQUIPMENT_ENABLED = "menuSamplingEquipment.enabled";
77      public static final String BINDING_MENU_SHOW_HELP_ENABLED = "menuShowHelp.enabled";
78      public static final String BINDING_MENU_SYNCHRONIZATION_ENABLED = "menuSynchronization.enabled";
79      public static final String BINDING_MENU_SYNCHRONIZATION_EXPORT_ENABLED = "menuSynchronizationExport.enabled";
80      public static final String BINDING_MENU_SYNCHRONIZATION_EXPORT_TO_FILE_ENABLED = "menuSynchronizationExportToFile.enabled";
81      public static final String BINDING_MENU_SYNCHRONIZATION_IMPORT_ENABLED = "menuSynchronizationImport.enabled";
82      public static final String BINDING_MENU_SYNCHRONIZATION_IMPORT_FROM_FILE_ENABLED = "menuSynchronizationImportFromFile.enabled";
83      public static final String BINDING_MENU_SYNCHRONIZATION_IMPORT_REFERENTIAL_ENABLED = "menuSynchronizationImportReferential.enabled";
84      public static final String BINDING_MENU_SYNCHRONIZATION_LOG_ENABLED = "menuSynchronizationLog.enabled";
85      public static final String BINDING_MENU_TAXONOMIC_ENABLED = "menuTaxonomic.enabled";
86      public static final String BINDING_MENU_TAXON_ENABLED = "menuTaxon.enabled";
87      public static final String BINDING_MENU_TAXON_GROUP_ENABLED = "menuTaxonGroup.enabled";
88      public static final String BINDING_MENU_UNIT_ENABLED = "menuUnit.enabled";
89      public static final String BINDING_MENU_USERS_ENABLED = "menuUsers.enabled";
90      public static final String BINDING_MENU_USER_ENABLED = "menuUser.enabled";
91  
92      /*-----------------------------------------------------------------------*/
93      /*--------------- Constants for all none public bindings  ---------------*/
94      /*-----------------------------------------------------------------------*/
95  
96      private static final String BINDING_$JSEPARATOR2_ENABLED = "$JSeparator2.enabled";
97      private static final String BINDING_$JSEPARATOR3_ENABLED = "$JSeparator3.enabled";
98  
99      /*-----------------------------------------------------------------------*/
100     /*------------------------- Other static fields -------------------------*/
101     /*-----------------------------------------------------------------------*/
102 
103     private static final String $jaxxObjectDescriptor = "H4sIAAAAAAAAAN1cy48cRxlvb/bh9SOJ7dj4iXdt46xJPOtHHnb8nH3Z6+zD8uxChBGbnpnamU56usfdNfEsmyAkJIQ4IXGAAxIErlyQuHFCHDhz4IL4FxDiwBVRVf2s6npOjyMlkbJKpr76+vt+v6+qvnr+/l/WWBhY0x/Z/X4l6HnQ6YDKo+oHH6zXPwINuADCRuB0oR9Y0T97RqyRp9b+Zvp7CK3zT1dw9dm4+uy83+n6HvBytW+tWPtCuOOCsA0AhNYZukYjDGdrafGtfrcXJFpTo3haf/Off4/8rPnDz0csq99F1t1FrkypamWejK5YI04TWofRlz6xZ13bayEzAsdrIXsP4t/mXTsM1+wOeGb9wJpYsca7doCUQeucvstEB6nf70JrsmM73lKAVELrje2g4mwHoAOCStN2nUrPqYTP0ecrDd+DSFtlAf26iipsLne7RMc4tMY6fhO40LoorI1rbS7PYx19mFUcrwf+xyCA1uvSmg+B250jklnVV+u9cGfO9Rsfr9g7INhcRghQOEfViQT6j1goqz/aAV4PWq9hTPux8KNV9NucnfvKXiy15LgImkMFSSxzNBU9kIg+9DGSRwviyxB0sOzxtMqRpMp6PQTBJzZ0fA8XnaHFDidii30Y2A2B1IELj2oABYONmL4CrWPU99MSus401lzb8RrtwPec7xMDllHcBHAp8Dv4k5wPneVUWuzjShu+oEretqv4twscIBiVuOgkDfEFoblPwDbAzcCx3fTzb6T1TgjrcYTztl5LbZUri9xXKLvOUXaMo2zFb3E0kSCoNjuO54QoCgQIRVI92MZYNOiAuplKHcJSqDFuO61eIBIi8bxqe3YLLNQlSnCLRrRDEKT2ZEL7c0KpjmpavC+O7HzlaiHuUem83enaTiuzczGVOpVJ1ZCUi+J98VnP6aKfIUf8dCZe9Wx3J3TCZQ8h2hPIv5bJb9h933sQ+L0uRy5n7IrPIJ9JvZxJbYaR04zEoUziceC3ULcsV/O4s82TyJm9gAMQCtx7hXGPI0I4ZG1h4qTAD1P+pOeCFRS4nHJiAdN+mSg6SlqJkFybbk4SWm3aqgJRWfkkLscUhak9WeHepDCt6NDUcCB3aNWYNp7qaBRhe3mfbjGrALb9Jqf0IFFtk7E8Z51PW06FDKvaRtlGX6SahIjfcRocy19OBegmsks7TkfZLoOp5/DIImU4CeD0eASwWtt/npSTuj+iy3FZzYGAU34wKa/W/R7kCOwNY+VomKLG1LkehL6HcoXAOkVlHih3rGS5Y5bc7XlqjQWoIaAE9fjTYrqJ20iUaB5nEk2skJT+79iRv//pn39cSrLLFfTto1zRXHKMsr5u4HdRmuXgT78SpZY96Lizq3b31lNrMgQuyqxJ5nyaY1gtLkbGoe+RPKiCq1ce2mEbqRib+Mef/3Lsw7+9ZI0sWftc324u2Vh+2ZqE7QCh4LvNfvfefWLRged70d9X0b8vQWuiF4JlnFlaY9u2GyKwxuo4YUPp3S7JKStOOIfyvJlLnyGm6nEuN++7aLS1rsUiLQCpsWzmUvQTEqKyP6Skj8A9zQE39bA++df/Hqn94X4C8B7k8AmheAby2HesccdD3RMgCTwOnQlBwr6/G4Je089ycF5WbnES3G6clv6c/P0FD89Jp4EzGzRkQ+vt3RqO001MVCMANgSkAMM9cw7n2FvXr1W6XuscgYuUEZiPNsG23XPhvOuHYB2FDQEVRcbuIzJJqCysb62tbzxcXnuwtb62Nb+yXltE1cagA3GafJak73hKUSG/VOwu6rajfhaj0Cdp868Jtvi/PrfyMxCVjyOoQTtXb3irHuighKmBzMq+h1tyZRtloJVOWjyKMw/UcjlSPEvSfF9lyF6lIW00DcgZcngrB0S1EWF6azc373nWs5uB0wLXs8lPNAxUHvgbPp5VRNUqDRwoCPJ9UXHUgEbb0bSj+Jn3wQ60ru8KZ1ikKeNpFhJEc000zQorD9dXMakC9KJPjW21Sa94fvccUx6bTRDAMueQqv3Q990Np7tBNH6NBxZEs1RrAnh23QVoDvztrH3XUAAD1LCnpu9MYUuj/ydWTl28OKWSm19fW1p+sPmkurG8vvYZj3dq8qbifqLA/XnGHT+bz6lC4I6YmBz7uQmiNAhA04EpbSfFVpVj7+sSdxkSd5Qkrs/VFp98i1BjzGVWwQlzsx7QJH19kWbehNucbRYwkE7LVWTf1iI7m+bLuB4HZNKZsn1CaFU5ss+IvWW47iu5Xvxg40l1/guhmrNoojGAMkxfZNGi5t/FYYbFipbPYzWrxErdaXGWBMyD+RuMyY18KqWK53ta8UxlZ9KQjj6ewskOqZRtWVS/KYpq2hd+eE9J/Wci/MSuSQgWl1lU9IyrI5Ba21Hx81CRXySLuq7fQh+g142kRKG0MCQDjiDuKU0ZU5dFTDFu8amalmOBuBK3EkrUvCO4Lo2SRn4VrNgrfFO/cvlgy3SZ59JvSg3dFrjHJj+8WjyLc4t/pcbgZOiNlyqN+ix5zp2sfsqawmT03cvNOm8kZmzLWsLropaQuqEcjdkKTF+1pBxhVqtr1QeLWwtzpmMrtTRs3qddlgZMN1ppVNF4U2voiZctZQROxB9M6bugYx7Ly4yWTwxFv9qdSWCP9wAWoyJE1aefTk0L1zdS+WTPYDNEjtdQSouXOS5hPqe5hFZDvObp4rXLGVosVvik53lIlYD4/FKwOe+z8n4wXkIOVcy/p5d0xOpk1O9Nvplyzw63AhNZ9hU9fOrZl51/aq1/2A0fUxL47nDoTzYcpF03Xoy97CIpzbYfW2jW9hO3vhLcJ7CquB8dgHuE5XA6/TgLYqjXZpiImTKMjRckoPk9UHPc7urkZCG7N6YCclkLSMGuKh/YtwcylEX65mDuCqCX7Q2bU3FPxza7sPuo4uKRARfFvU0+Ge8MZirLxnsDeiygQ7r3bs7HuzrWwXRHUsXDnAEP2T4nH/+KmWks7tcMPRPgzT27YI6zVst2fb0lifsGKCf783yMtWariVkswleMfJItLdCmmqP7lo4lmpMivfU46nQJH9s3DIxioZWn+YxDAmSLp2BeUNgmufkww1Yw9TAJ22xiMkDYpj6pw1Y3ly+ie1WL5c62Mmb19kSyw058VOUZWs4cFlEtOogfAjSZs1gvCMleSC29lUYSzwJKIInNGQhJ4ocaSWzeC0oImunZrGEmBNmJrxIJQWbaQAlBzjN1QpAZbI6zfnoynN3vXArDR/eStkEssPJpKeWKAFP2BKU5nPIsO8iORmonWXprJPL0St4t8axisZUPwFy/BBhTpzXN9zXk/ULeENw9hcUtDnnrLSjgn3FKDpSa239L+/MwOaBZ9EHeaLlKeH7Q50DNg/22mRlaMze9gU81Z5Pv8fEtY0NeP9LUszfmQK051DfMjFEuvL+rDzMfYfnMoGgQi64hQ6EI2ewg8ovsS3DSWKovIQqE9pMT5OY72frdesFyeWaYqzr4LjZ7GWDYOSDVVXsOVMb8O1oxj8+tD5L3Fcwxy/uK3ggCPj1cb47ngrYFhVVZJbjzWuBqrj/rD5JFQ1nY5Su9CqcFHPAvsZgTsqhtW3FhVsnIghYjuqvQ+mM9x1SWk/ul/BaQIrgwZM5K1XBY6CaXdIyOiIvPOSTq+EToZwKMdSwJ+oyybgoIoG8sDXt7jDMck6tTKtBvaIEeXcMaZDdMZJfZbpjQOwHWubtj5kDrN7/IlG3NI9F6U9Ul/oHoGGzTnGw7PRhNw60/hDA+yqatS5qnj4cQ2+Tu3pBim+gaUmwTXaVjO/JOGttExBzopUF7Na3Z6fuagOPjdDipf0xpD/kc3CllMsvFwKOXdAJ7hOrbI29e5IJBbJvGnoNeVi/ebdCfiGY2Db5UkPNLlt8PtvsgPynALm0Nabok3HyQL8ey1rCQ6s9tZdsQ6e3uFxmr+rsQeotbqv0H/YgVb0LoR6x6J4IsbunvQRTXMc4yxoTRGbbiqsUxvuCwL+PwnjAxPyHJDoqJVyE53ldxyKMlglUabvQsKaOn8IBK7ITs5OTJ2K7LkUGXqbWfGHd2q1rpChtu7MEINRbMEcveF3HEUuvspNbDNeXP0/IRKj3BjCzVCIuX6bAQnrnk2qk6c8l37st+qlb8NNHQwyG6L1o+HKLHjkzCgbmpqgiHRNooHGLnvorhEOFtHg7skJ8gRl5IcKhXvsov1NKvhpXoK9irFBKr2RBh19plDjOBcmrXjCf1w2nmfLHTasr8KL4XbGhHj6ypGKtqNuNImwZfRxK+sDlsi2aP/khNV51pk/tdkjjV43Uq2saUbz8k5rt+y4gk+VXE2OQVvyUjaX9CEvq48BmInIEsFRJR4ep58fU682S+8HYKcLvFTL7wDAm5STncND59asp88sfeJE/ejco5wrzYQuyPnWNfRMlenUqujB6Jr4w6XhP04+uhwlXH5EUsczdYLkIHAqELuFDIT1SofHuCfEDhTvKAl/lF4cLVdPzMV/mTDhhf8mKYrDmOkY8N71GexZXH2Yz+NZ5jGdwXhFftCQD828XHuWDJtm7Sl9NUzOzJTDucN01M/Gjdb+5oqB1vA6fVRtYfvh09wTVlQxg49R4Edwt69+C/+3SMfe40YRsVv/TLwZWMOlGuc7uJBrCpOmq5iFuBUaeV+rAxv8V/fsfXcLa0hunSGi6W1jBTWkOltIYrpTW8VVrDjdIabpfWcLe0hvulNXy3tIbvldbwYWkNPy6t4SelNfwUafg/669VnF5dAAA=";
104     private static final Log log = LogFactory.getLog(DaliMainUI.class);
105     private static final long serialVersionUID = 1L;
106 
107     /*-----------------------------------------------------------------------*/
108     /*--------------------------- Internal states ---------------------------*/
109     /*-----------------------------------------------------------------------*/
110 
111     private boolean allComponentsCreated;
112 
113     /*-----------------------------------------------------------------------*/
114     /*------------------------ Protected components  ------------------------*/
115     /*-----------------------------------------------------------------------*/
116 
117     protected DaliHelpBroker broker;
118     protected final DaliMainUIHandler handler = createHandler();
119     protected DaliMainUI mainFrame = this;
120     protected JMenu menuAdministration;
121     protected JMenuItem menuAnalysisInstrument;
122     protected JMenuItem menuAuthentication;
123     protected JMenuItem menuCampaign;
124     protected JMenuItem menuConfiguration;
125     protected JMenuItem menuContext;
126     protected JMenu menuContextFilter;
127     protected JMenuItem menuDepartment;
128     protected JMenu menuFile;
129     protected JMenuItem menuFileExtraction;
130     protected JMenuItem menuFileHome;
131     protected JMenuItem menuFileObservation;
132     protected JMenu menuFilter;
133     protected JMenuItem menuFilterAnalysisInstrument;
134     protected JMenuItem menuFilterCampaign;
135     protected JMenuItem menuFilterDepartment;
136     protected JMenuItem menuFilterLocation;
137     protected JMenuItem menuFilterPmfm;
138     protected JMenuItem menuFilterProgram;
139     protected JMenuItem menuFilterSamplingEquipment;
140     protected JMenuItem menuFilterTaxon;
141     protected JMenuItem menuFilterTaxonGroup;
142     protected JMenuItem menuFilterUser;
143     protected JMenuItem menuFraction;
144     protected JMenu menuHelp;
145     protected JMenuItem menuHelpAbout;
146     protected JMenuItem menuHelpSite;
147     protected JMenuItem menuLocation;
148     protected JMenuItem menuManageDb;
149     protected JMenuItem menuMatrix;
150     protected JMenuItem menuMethod;
151     protected JMenuItem menuParameter;
152     protected JMenuItem menuPmfm;
153     protected JMenu menuPmfms;
154     protected JMenuItem menuProgram;
155     protected JMenu menuReferential;
156     protected JMenuItem menuRuleList;
157     protected JMenuItem menuSamplingEquipment;
158     protected JMenuItem menuShowHelp;
159     protected JMenu menuSynchronization;
160     protected JMenuItem menuSynchronizationExport;
161     protected JMenuItem menuSynchronizationExportToFile;
162     protected JMenuItem menuSynchronizationImport;
163     protected JMenuItem menuSynchronizationImportFromFile;
164     protected JMenuItem menuSynchronizationImportReferential;
165     protected JMenuItem menuSynchronizationLog;
166     protected JMenuItem menuTaxon;
167     protected JMenuItem menuTaxonGroup;
168     protected JMenu menuTaxonomic;
169     protected JMenuItem menuUnit;
170     protected JMenuItem menuUser;
171     protected JMenu menuUsers;
172 
173     /*-----------------------------------------------------------------------*/
174     /*------------------------- Private components  -------------------------*/
175     /*-----------------------------------------------------------------------*/
176 
177     private JSeparator $JSeparator0;
178     private JSeparator $JSeparator1;
179     private JSeparator $JSeparator2;
180     private JSeparator $JSeparator3;
181 
182     /*-----------------------------------------------------------------------*/
183     /*---------------------------- Constructors  ----------------------------*/
184     /*-----------------------------------------------------------------------*/
185 
186     public DaliMainUI(DaliUIContext context) {
187         super(context);
188             	  ApplicationUIUtil.setApplicationContext(this, context);
189             $initialize();
190     }
191 
192     public DaliMainUI(JAXXContext param0, String param1) {
193         super(param0 ,param1);
194         $initialize();
195     }
196 
197     public DaliMainUI(GraphicsConfiguration param0) {
198         super(param0);
199         $initialize();
200     }
201 
202     public DaliMainUI(JAXXContext param0, GraphicsConfiguration param1) {
203         super(param0 ,param1);
204         $initialize();
205     }
206 
207     public DaliMainUI() {
208         $initialize();
209     }
210 
211     public DaliMainUI(JAXXContext param0) {
212         super(param0);
213         $initialize();
214     }
215 
216     public DaliMainUI(ApplicationUIContext param0) {
217         super(param0);
218         $initialize();
219     }
220 
221     public DaliMainUI(String param0, GraphicsConfiguration param1) {
222         super(param0 ,param1);
223         $initialize();
224     }
225 
226     public DaliMainUI(JAXXContext param0, String param1, GraphicsConfiguration param2) {
227         super(param0 ,param1 ,param2);
228         $initialize();
229     }
230 
231     public DaliMainUI(String param0) {
232         super(param0);
233         $initialize();
234     }
235 
236     /*-----------------------------------------------------------------------*/
237     /*--------------------------- Statics methods ---------------------------*/
238     /*-----------------------------------------------------------------------*/
239 
240     public static JAXXObjectDescriptor $getJAXXObjectDescriptor() {
241         return JAXXUtil.decodeCompressedJAXXObjectDescriptor($jaxxObjectDescriptor);
242     }
243 
244     /*-----------------------------------------------------------------------*/
245     /*---------------------------- Event methods ----------------------------*/
246     /*-----------------------------------------------------------------------*/
247 
248     public void doActionPerformed__on__menuHelpSite(ActionEvent event) {
249         if (log.isDebugEnabled()) {
250             log.debug(event);
251         }
252         getHandler().gotoSite();
253     }
254 
255     public void doActionPerformed__on__menuShowHelp(ActionEvent event) {
256         if (log.isDebugEnabled()) {
257             log.debug(event);
258         }
259         getHandler().showHelp();
260     }
261 
262     /*-----------------------------------------------------------------------*/
263     /*----------------------- Public acessor methods  -----------------------*/
264     /*-----------------------------------------------------------------------*/
265 
266     public DaliHelpBroker getBroker() {
267         return broker;
268     }
269 
270     public DaliMainUIHandler getHandler() {
271         return handler;
272     }
273 
274     public JMenu getMenuAdministration() {
275         return menuAdministration;
276     }
277 
278     public JMenuItem getMenuAnalysisInstrument() {
279         return menuAnalysisInstrument;
280     }
281 
282     public JMenuItem getMenuAuthentication() {
283         return menuAuthentication;
284     }
285 
286     public JMenuItem getMenuCampaign() {
287         return menuCampaign;
288     }
289 
290     public JMenuItem getMenuConfiguration() {
291         return menuConfiguration;
292     }
293 
294     public JMenuItem getMenuContext() {
295         return menuContext;
296     }
297 
298     public JMenu getMenuContextFilter() {
299         return menuContextFilter;
300     }
301 
302     public JMenuItem getMenuDepartment() {
303         return menuDepartment;
304     }
305 
306     public JMenu getMenuFile() {
307         return menuFile;
308     }
309 
310     public JMenuItem getMenuFileExtraction() {
311         return menuFileExtraction;
312     }
313 
314     public JMenuItem getMenuFileHome() {
315         return menuFileHome;
316     }
317 
318     public JMenuItem getMenuFileObservation() {
319         return menuFileObservation;
320     }
321 
322     public JMenu getMenuFilter() {
323         return menuFilter;
324     }
325 
326     public JMenuItem getMenuFilterAnalysisInstrument() {
327         return menuFilterAnalysisInstrument;
328     }
329 
330     public JMenuItem getMenuFilterCampaign() {
331         return menuFilterCampaign;
332     }
333 
334     public JMenuItem getMenuFilterDepartment() {
335         return menuFilterDepartment;
336     }
337 
338     public JMenuItem getMenuFilterLocation() {
339         return menuFilterLocation;
340     }
341 
342     public JMenuItem getMenuFilterPmfm() {
343         return menuFilterPmfm;
344     }
345 
346     public JMenuItem getMenuFilterProgram() {
347         return menuFilterProgram;
348     }
349 
350     public JMenuItem getMenuFilterSamplingEquipment() {
351         return menuFilterSamplingEquipment;
352     }
353 
354     public JMenuItem getMenuFilterTaxon() {
355         return menuFilterTaxon;
356     }
357 
358     public JMenuItem getMenuFilterTaxonGroup() {
359         return menuFilterTaxonGroup;
360     }
361 
362     public JMenuItem getMenuFilterUser() {
363         return menuFilterUser;
364     }
365 
366     public JMenuItem getMenuFraction() {
367         return menuFraction;
368     }
369 
370     public JMenu getMenuHelp() {
371         return menuHelp;
372     }
373 
374     public JMenuItem getMenuHelpAbout() {
375         return menuHelpAbout;
376     }
377 
378     public JMenuItem getMenuHelpSite() {
379         return menuHelpSite;
380     }
381 
382     public JMenuItem getMenuLocation() {
383         return menuLocation;
384     }
385 
386     public JMenuItem getMenuManageDb() {
387         return menuManageDb;
388     }
389 
390     public JMenuItem getMenuMatrix() {
391         return menuMatrix;
392     }
393 
394     public JMenuItem getMenuMethod() {
395         return menuMethod;
396     }
397 
398     public JMenuItem getMenuParameter() {
399         return menuParameter;
400     }
401 
402     public JMenuItem getMenuPmfm() {
403         return menuPmfm;
404     }
405 
406     public JMenu getMenuPmfms() {
407         return menuPmfms;
408     }
409 
410     public JMenuItem getMenuProgram() {
411         return menuProgram;
412     }
413 
414     public JMenu getMenuReferential() {
415         return menuReferential;
416     }
417 
418     public JMenuItem getMenuRuleList() {
419         return menuRuleList;
420     }
421 
422     public JMenuItem getMenuSamplingEquipment() {
423         return menuSamplingEquipment;
424     }
425 
426     public JMenuItem getMenuShowHelp() {
427         return menuShowHelp;
428     }
429 
430     public JMenu getMenuSynchronization() {
431         return menuSynchronization;
432     }
433 
434     public JMenuItem getMenuSynchronizationExport() {
435         return menuSynchronizationExport;
436     }
437 
438     public JMenuItem getMenuSynchronizationExportToFile() {
439         return menuSynchronizationExportToFile;
440     }
441 
442     public JMenuItem getMenuSynchronizationImport() {
443         return menuSynchronizationImport;
444     }
445 
446     public JMenuItem getMenuSynchronizationImportFromFile() {
447         return menuSynchronizationImportFromFile;
448     }
449 
450     public JMenuItem getMenuSynchronizationImportReferential() {
451         return menuSynchronizationImportReferential;
452     }
453 
454     public JMenuItem getMenuSynchronizationLog() {
455         return menuSynchronizationLog;
456     }
457 
458     public JMenuItem getMenuTaxon() {
459         return menuTaxon;
460     }
461 
462     public JMenuItem getMenuTaxonGroup() {
463         return menuTaxonGroup;
464     }
465 
466     public JMenu getMenuTaxonomic() {
467         return menuTaxonomic;
468     }
469 
470     public JMenuItem getMenuUnit() {
471         return menuUnit;
472     }
473 
474     public JMenuItem getMenuUser() {
475         return menuUser;
476     }
477 
478     public JMenu getMenuUsers() {
479         return menuUsers;
480     }
481 
482     @Override
483     public DaliUIContext getModel() {
484         return (DaliUIContext) super.getModel();
485     }
486 
487     /*-----------------------------------------------------------------------*/
488     /*---------------------------- Other methods ----------------------------*/
489     /*-----------------------------------------------------------------------*/
490 
491     @Override
492     public void registerHelpId(DaliHelpBroker broker, Component component, String helpId) {
493         broker.installUI(component, helpId);
494     }
495 
496     @Override
497     public void showHelp(String helpId) {
498         getBroker().showHelp(this, helpId);
499     }
500 
501     /*-----------------------------------------------------------------------*/
502     /*--------------------- Protected acessors methods  ---------------------*/
503     /*-----------------------------------------------------------------------*/
504 
505     protected JSeparator get$JSeparator0() {
506         return $JSeparator0;
507     }
508 
509     protected JSeparator get$JSeparator1() {
510         return $JSeparator1;
511     }
512 
513     protected JSeparator get$JSeparator2() {
514         return $JSeparator2;
515     }
516 
517     protected JSeparator get$JSeparator3() {
518         return $JSeparator3;
519     }
520 
521     /*-----------------------------------------------------------------------*/
522     /*--------------------- Components creation methods ---------------------*/
523     /*-----------------------------------------------------------------------*/
524 
525     protected void addChildrenToMenu() {
526         if (!allComponentsCreated) {
527             return;
528         }
529         menu.add(menuFile);
530         menu.add(menuSynchronization);
531         menu.add(menuAdministration);
532         menu.add(menuHelp);
533     }
534 
535     protected void addChildrenToMenuAdministration() {
536         if (!allComponentsCreated) {
537             return;
538         }
539         menuAdministration.add(menuAuthentication);
540         menuAdministration.add(menuConfiguration);
541         menuAdministration.add(menuManageDb);
542         menuAdministration.add(menuContextFilter);
543         menuAdministration.add(menuProgram);
544         menuAdministration.add(menuCampaign);
545         menuAdministration.add(menuRuleList);
546         menuAdministration.add(menuReferential);
547     }
548 
549     protected void addChildrenToMenuContextFilter() {
550         if (!allComponentsCreated) {
551             return;
552         }
553         menuContextFilter.add(menuContext);
554         menuContextFilter.add(menuFilter);
555     }
556 
557     protected void addChildrenToMenuFile() {
558         if (!allComponentsCreated) {
559             return;
560         }
561         menuFile.add(menuFileHome);
562         menuFile.add(menuFileObservation);
563         menuFile.add(menuFileExtraction);
564         menuFile.add($JSeparator0);
565         menuFile.add(menuSynchronizationImportFromFile);
566         menuFile.add(menuSynchronizationExportToFile);
567         menuFile.add($JSeparator1);
568     }
569 
570     protected void addChildrenToMenuFilter() {
571         if (!allComponentsCreated) {
572             return;
573         }
574         menuFilter.add(menuFilterCampaign);
575         menuFilter.add(menuFilterSamplingEquipment);
576         menuFilter.add(menuFilterAnalysisInstrument);
577         menuFilter.add(menuFilterTaxonGroup);
578         menuFilter.add(menuFilterLocation);
579         menuFilter.add(menuFilterUser);
580         menuFilter.add(menuFilterProgram);
581         menuFilter.add(menuFilterPmfm);
582         menuFilter.add(menuFilterDepartment);
583         menuFilter.add(menuFilterTaxon);
584     }
585 
586     protected void addChildrenToMenuHelp() {
587         if (!allComponentsCreated) {
588             return;
589         }
590         menuHelp.add(menuShowHelp);
591         menuHelp.add(menuHelpSite);
592         menuHelp.add(menuHelpAbout);
593     }
594 
595     protected void addChildrenToMenuPmfms() {
596         if (!allComponentsCreated) {
597             return;
598         }
599         menuPmfms.add(menuFraction);
600         menuPmfms.add(menuMethod);
601         menuPmfms.add(menuParameter);
602         menuPmfms.add(menuPmfm);
603         menuPmfms.add(menuMatrix);
604     }
605 
606     protected void addChildrenToMenuReferential() {
607         if (!allComponentsCreated) {
608             return;
609         }
610         menuReferential.add(menuSamplingEquipment);
611         menuReferential.add(menuAnalysisInstrument);
612         menuReferential.add(menuLocation);
613         menuReferential.add(menuUsers);
614         menuReferential.add(menuPmfms);
615         menuReferential.add(menuTaxonomic);
616         menuReferential.add(menuUnit);
617     }
618 
619     protected void addChildrenToMenuSynchronization() {
620         if (!allComponentsCreated) {
621             return;
622         }
623         menuSynchronization.add(menuSynchronizationImportReferential);
624         menuSynchronization.add(menuSynchronizationImport);
625         menuSynchronization.add($JSeparator2);
626         menuSynchronization.add(menuSynchronizationExport);
627         menuSynchronization.add($JSeparator3);
628         menuSynchronization.add(menuSynchronizationLog);
629     }
630 
631     protected void addChildrenToMenuTaxonomic() {
632         if (!allComponentsCreated) {
633             return;
634         }
635         menuTaxonomic.add(menuTaxonGroup);
636         menuTaxonomic.add(menuTaxon);
637     }
638 
639     protected void addChildrenToMenuUsers() {
640         if (!allComponentsCreated) {
641             return;
642         }
643         menuUsers.add(menuUser);
644         menuUsers.add(menuDepartment);
645     }
646 
647     protected void createBroker() {
648         $objectMap.put("broker", broker = new DaliHelpBroker("dali.main.help"));
649     }
650 
651     @Override
652     protected void createBusyBlockLayerUI() {
653         super.createBusyBlockLayerUI();
654         busyBlockLayerUI.setUseIcon(false);
655     }
656 
657     protected DaliMainUIHandler createHandler() {
658         return new DaliMainUIHandler();
659     }
660 
661     @Override
662     protected void createMenu() {
663         super.createMenu();
664         menu.setName("menu");
665     }
666 
667     protected void createMenuAdministration() {
668         $objectMap.put("menuAdministration", menuAdministration = new JMenu());
669         
670         menuAdministration.setName("menuAdministration");
671         menuAdministration.setText(t("dali.main.menu.administration"));
672     }
673 
674     protected void createMenuAnalysisInstrument() {
675         $objectMap.put("menuAnalysisInstrument", menuAnalysisInstrument = new JMenuItem());
676         
677         menuAnalysisInstrument.setName("menuAnalysisInstrument");
678         menuAnalysisInstrument.setText(t("dali.main.menu.configuration.referential.analysisInstruments"));
679         menuAnalysisInstrument.setToolTipText(t("dali.main.menu.configuration.referential.analysisInstruments.tip"));
680         menuAnalysisInstrument.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToAnalysisInstrumentAction.class);
681     }
682 
683     protected void createMenuAuthentication() {
684         $objectMap.put("menuAuthentication", menuAuthentication = new JMenuItem());
685         
686         menuAuthentication.setName("menuAuthentication");
687         menuAuthentication.setText(t("dali.main.menu.authentication"));
688         menuAuthentication.setToolTipText(t("dali.main.menu.authentication.tip"));
689         menuAuthentication.putClientProperty("help", "dali.main.menu.action.authentication.help");
690         menuAuthentication.putClientProperty("applicationAction", fr.ifremer.quadrige3.ui.swing.content.login.AuthenticationAction.class);
691     }
692 
693     protected void createMenuCampaign() {
694         $objectMap.put("menuCampaign", menuCampaign = new JMenuItem());
695         
696         menuCampaign.setName("menuCampaign");
697         menuCampaign.setText(t("dali.main.menu.configuration.campaigns"));
698         menuCampaign.setToolTipText(t("dali.main.menu.configuration.campaigns.tip"));
699         menuCampaign.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToCampaignAction.class);
700     }
701 
702     protected void createMenuConfiguration() {
703         $objectMap.put("menuConfiguration", menuConfiguration = new JMenuItem());
704         
705         menuConfiguration.setName("menuConfiguration");
706         menuConfiguration.setText(t("dali.main.menu.configuration"));
707         menuConfiguration.setToolTipText(t("dali.main.menu.configuration.tip"));
708         menuConfiguration.putClientProperty("help", "dali.main.menu.action.configuration.help");
709         menuConfiguration.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToConfigurationAction.class);
710     }
711 
712     protected void createMenuContext() {
713         $objectMap.put("menuContext", menuContext = new JMenuItem());
714         
715         menuContext.setName("menuContext");
716         menuContext.setText(t("dali.main.menu.configuration.context"));
717         menuContext.setToolTipText(t("dali.main.menu.configuration.context.tip"));
718         menuContext.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToContextAction.class);
719     }
720 
721     protected void createMenuContextFilter() {
722         $objectMap.put("menuContextFilter", menuContextFilter = new JMenu());
723         
724         menuContextFilter.setName("menuContextFilter");
725         menuContextFilter.setText(t("dali.main.menu.configuration.contextFilter"));
726     }
727 
728     protected void createMenuDepartment() {
729         $objectMap.put("menuDepartment", menuDepartment = new JMenuItem());
730         
731         menuDepartment.setName("menuDepartment");
732         menuDepartment.setText(t("dali.main.menu.configuration.referential.department"));
733         menuDepartment.setToolTipText(t("dali.main.menu.configuration.referential.department.tip"));
734         menuDepartment.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToDepartmentAction.class);
735     }
736 
737     protected void createMenuFile() {
738         $objectMap.put("menuFile", menuFile = new JMenu());
739         
740         menuFile.setName("menuFile");
741         menuFile.setText(t("dali.main.menu.file"));
742     }
743 
744     protected void createMenuFileExtraction() {
745         $objectMap.put("menuFileExtraction", menuFileExtraction = new JMenuItem());
746         
747         menuFileExtraction.setName("menuFileExtraction");
748         menuFileExtraction.setText(t("dali.main.menu.extraction"));
749         menuFileExtraction.setToolTipText(t("dali.main.menu.extraction.tip"));
750         menuFileExtraction.putClientProperty("help", "dali.main.menu.action.home.help");
751         menuFileExtraction.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToExtractionAction.class);
752     }
753 
754     protected void createMenuFileHome() {
755         $objectMap.put("menuFileHome", menuFileHome = new JMenuItem());
756         
757         menuFileHome.setName("menuFileHome");
758         menuFileHome.setText(t("dali.main.menu.home"));
759         menuFileHome.setToolTipText(t("dali.main.menu.home.tip"));
760         menuFileHome.putClientProperty("applicationActionKey", fr.ifremer.dali.ui.swing.util.DaliKeyStrokes.HOME);
761         menuFileHome.putClientProperty("help", "dali.main.menu.action.home.help");
762         menuFileHome.putClientProperty("applicationAction", fr.ifremer.quadrige3.ui.swing.action.GoToHomeAction.class);
763     }
764 
765     protected void createMenuFileObservation() {
766         $objectMap.put("menuFileObservation", menuFileObservation = new JMenuItem());
767         
768         menuFileObservation.setName("menuFileObservation");
769         menuFileObservation.setText(t("dali.main.menu.observation"));
770         menuFileObservation.setToolTipText(t("dali.main.menu.observation.tip"));
771         menuFileObservation.putClientProperty("help", "dali.main.menu.action.home.help");
772         menuFileObservation.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToObservationAction.class);
773     }
774 
775     protected void createMenuFilter() {
776         $objectMap.put("menuFilter", menuFilter = new JMenu());
777         
778         menuFilter.setName("menuFilter");
779         menuFilter.setText(t("dali.main.menu.configuration.filter"));
780     }
781 
782     protected void createMenuFilterAnalysisInstrument() {
783         $objectMap.put("menuFilterAnalysisInstrument", menuFilterAnalysisInstrument = new JMenuItem());
784         
785         menuFilterAnalysisInstrument.setName("menuFilterAnalysisInstrument");
786         menuFilterAnalysisInstrument.setText(t("dali.main.menu.configuration.filter.analysisInstrument"));
787         menuFilterAnalysisInstrument.setToolTipText(t("dali.main.menu.configuration.filter.analysisInstrument.tip"));
788         menuFilterAnalysisInstrument.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterAnalysisInstrumentAction.class);
789     }
790 
791     protected void createMenuFilterCampaign() {
792         $objectMap.put("menuFilterCampaign", menuFilterCampaign = new JMenuItem());
793         
794         menuFilterCampaign.setName("menuFilterCampaign");
795         menuFilterCampaign.setText(t("dali.main.menu.configuration.filter.campaign"));
796         menuFilterCampaign.setToolTipText(t("dali.main.menu.configuration.filter.campaign.tip"));
797         menuFilterCampaign.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterCampaignAction.class);
798     }
799 
800     protected void createMenuFilterDepartment() {
801         $objectMap.put("menuFilterDepartment", menuFilterDepartment = new JMenuItem());
802         
803         menuFilterDepartment.setName("menuFilterDepartment");
804         menuFilterDepartment.setText(t("dali.main.menu.configuration.filter.department"));
805         menuFilterDepartment.setToolTipText(t("dali.main.menu.configuration.filter.department.tip"));
806         menuFilterDepartment.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterDepartmentAction.class);
807     }
808 
809     protected void createMenuFilterLocation() {
810         $objectMap.put("menuFilterLocation", menuFilterLocation = new JMenuItem());
811         
812         menuFilterLocation.setName("menuFilterLocation");
813         menuFilterLocation.setText(t("dali.main.menu.configuration.filter.location"));
814         menuFilterLocation.setToolTipText(t("dali.main.menu.configuration.filter.location.tip"));
815         menuFilterLocation.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterLocationAction.class);
816     }
817 
818     protected void createMenuFilterPmfm() {
819         $objectMap.put("menuFilterPmfm", menuFilterPmfm = new JMenuItem());
820         
821         menuFilterPmfm.setName("menuFilterPmfm");
822         menuFilterPmfm.setText(t("dali.main.menu.configuration.filter.pmfm"));
823         menuFilterPmfm.setToolTipText(t("dali.main.menu.configuration.filter.pmfm.tip"));
824         menuFilterPmfm.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterPmfmAction.class);
825     }
826 
827     protected void createMenuFilterProgram() {
828         $objectMap.put("menuFilterProgram", menuFilterProgram = new JMenuItem());
829         
830         menuFilterProgram.setName("menuFilterProgram");
831         menuFilterProgram.setText(t("dali.main.menu.configuration.filter.program"));
832         menuFilterProgram.setToolTipText(t("dali.main.menu.configuration.filter.program.tip"));
833         menuFilterProgram.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterProgramAction.class);
834     }
835 
836     protected void createMenuFilterSamplingEquipment() {
837         $objectMap.put("menuFilterSamplingEquipment", menuFilterSamplingEquipment = new JMenuItem());
838         
839         menuFilterSamplingEquipment.setName("menuFilterSamplingEquipment");
840         menuFilterSamplingEquipment.setText(t("dali.main.menu.configuration.filter.samplingEquipment"));
841         menuFilterSamplingEquipment.setToolTipText(t("dali.main.menu.configuration.filter.samplingEquipment.tip"));
842         menuFilterSamplingEquipment.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterSamplingEquipmentAction.class);
843     }
844 
845     protected void createMenuFilterTaxon() {
846         $objectMap.put("menuFilterTaxon", menuFilterTaxon = new JMenuItem());
847         
848         menuFilterTaxon.setName("menuFilterTaxon");
849         menuFilterTaxon.setText(t("dali.main.menu.configuration.filter.taxon"));
850         menuFilterTaxon.setToolTipText(t("dali.main.menu.configuration.filter.taxon.tip"));
851         menuFilterTaxon.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterTaxonAction.class);
852     }
853 
854     protected void createMenuFilterTaxonGroup() {
855         $objectMap.put("menuFilterTaxonGroup", menuFilterTaxonGroup = new JMenuItem());
856         
857         menuFilterTaxonGroup.setName("menuFilterTaxonGroup");
858         menuFilterTaxonGroup.setText(t("dali.main.menu.configuration.filter.taxonGroup"));
859         menuFilterTaxonGroup.setToolTipText(t("dali.main.menu.configuration.filter.taxonGroup.tip"));
860         menuFilterTaxonGroup.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterTaxonGroupAction.class);
861     }
862 
863     protected void createMenuFilterUser() {
864         $objectMap.put("menuFilterUser", menuFilterUser = new JMenuItem());
865         
866         menuFilterUser.setName("menuFilterUser");
867         menuFilterUser.setText(t("dali.main.menu.configuration.filter.user"));
868         menuFilterUser.setToolTipText(t("dali.main.menu.configuration.filter.user.tip"));
869         menuFilterUser.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFilterUserAction.class);
870     }
871 
872     protected void createMenuFraction() {
873         $objectMap.put("menuFraction", menuFraction = new JMenuItem());
874         
875         menuFraction.setName("menuFraction");
876         menuFraction.setText(t("dali.main.menu.configuration.referential.pmfms.fraction"));
877         menuFraction.setToolTipText(t("dali.main.menu.configuration.referential.pmfms.fraction.tip"));
878         menuFraction.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToFractionAction.class);
879     }
880 
881     protected void createMenuHelp() {
882         $objectMap.put("menuHelp", menuHelp = new JMenu());
883         
884         menuHelp.setName("menuHelp");
885         menuHelp.setText(t("dali.main.menu.help"));
886     }
887 
888     protected void createMenuHelpAbout() {
889         $objectMap.put("menuHelpAbout", menuHelpAbout = new JMenuItem());
890         
891         menuHelpAbout.setName("menuHelpAbout");
892         menuHelpAbout.setText(t("dali.main.menu.about"));
893         menuHelpAbout.setToolTipText(t("dali.main.menu.about.tip"));
894         menuHelpAbout.putClientProperty("applicationActionKey", fr.ifremer.dali.ui.swing.util.DaliKeyStrokes.HELP);
895         menuHelpAbout.putClientProperty("help", "dali.main.menu.action.about.help");
896         menuHelpAbout.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.ShowAboutAction.class);
897     }
898 
899     protected void createMenuHelpSite() {
900         $objectMap.put("menuHelpSite", menuHelpSite = new JMenuItem());
901         
902         menuHelpSite.setName("menuHelpSite");
903         menuHelpSite.setText(t("dali.main.menu.site"));
904         menuHelpSite.addActionListener(JAXXUtil.getEventListener(ActionListener.class, "actionPerformed", this, "doActionPerformed__on__menuHelpSite"));
905         menuHelpSite.putClientProperty("help", "dali.main.menu.action.site.help");
906     }
907 
908     protected void createMenuLocation() {
909         $objectMap.put("menuLocation", menuLocation = new JMenuItem());
910         
911         menuLocation.setName("menuLocation");
912         menuLocation.setText(t("dali.main.menu.configuration.referential.location"));
913         menuLocation.setToolTipText(t("dali.main.menu.configuration.referential.location.tip"));
914         menuLocation.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToLocationAction.class);
915     }
916 
917     protected void createMenuManageDb() {
918         $objectMap.put("menuManageDb", menuManageDb = new JMenuItem());
919         
920         menuManageDb.setName("menuManageDb");
921         menuManageDb.setText(t("dali.main.action.manageDb"));
922         menuManageDb.setToolTipText(t("dali.main.action.manageDb.tip"));
923         menuManageDb.putClientProperty("help", "dali.main.menu.action.manageDb.help");
924         menuManageDb.putClientProperty("applicationAction", fr.ifremer.quadrige3.ui.swing.action.GoToManageDbAction.class);
925     }
926 
927     protected void createMenuMatrix() {
928         $objectMap.put("menuMatrix", menuMatrix = new JMenuItem());
929         
930         menuMatrix.setName("menuMatrix");
931         menuMatrix.setText(t("dali.main.menu.configuration.referential.pmfms.matrix"));
932         menuMatrix.setToolTipText(t("dali.main.menu.configuration.referential.pmfms.matrix.tip"));
933         menuMatrix.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToMatrixAction.class);
934     }
935 
936     protected void createMenuMethod() {
937         $objectMap.put("menuMethod", menuMethod = new JMenuItem());
938         
939         menuMethod.setName("menuMethod");
940         menuMethod.setText(t("dali.main.menu.configuration.referential.pmfms.method"));
941         menuMethod.setToolTipText(t("dali.main.menu.configuration.referential.pmfms.method.tip"));
942         menuMethod.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToMethodAction.class);
943     }
944 
945     protected void createMenuParameter() {
946         $objectMap.put("menuParameter", menuParameter = new JMenuItem());
947         
948         menuParameter.setName("menuParameter");
949         menuParameter.setText(t("dali.main.menu.configuration.referential.pmfms.parameter"));
950         menuParameter.setToolTipText(t("dali.main.menu.configuration.referential.pmfms.parameter.tip"));
951         menuParameter.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToParameterAction.class);
952     }
953 
954     protected void createMenuPmfm() {
955         $objectMap.put("menuPmfm", menuPmfm = new JMenuItem());
956         
957         menuPmfm.setName("menuPmfm");
958         menuPmfm.setText(t("dali.main.menu.configuration.referential.pmfms.pmfm"));
959         menuPmfm.setToolTipText(t("dali.main.menu.configuration.referential.pmfms.pmfm.tip"));
960         menuPmfm.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToPmfmAction.class);
961     }
962 
963     protected void createMenuPmfms() {
964         $objectMap.put("menuPmfms", menuPmfms = new JMenu());
965         
966         menuPmfms.setName("menuPmfms");
967         menuPmfms.setText(t("dali.main.menu.configuration.referential.pmfms"));
968     }
969 
970     protected void createMenuProgram() {
971         $objectMap.put("menuProgram", menuProgram = new JMenuItem());
972         
973         menuProgram.setName("menuProgram");
974         menuProgram.setText(t("dali.main.menu.configuration.program"));
975         menuProgram.setToolTipText(t("dali.main.menu.configuration.program.tip"));
976         menuProgram.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToProgramAction.class);
977     }
978 
979     protected void createMenuReferential() {
980         $objectMap.put("menuReferential", menuReferential = new JMenu());
981         
982         menuReferential.setName("menuReferential");
983         menuReferential.setText(t("dali.main.menu.configuration.referential"));
984     }
985 
986     protected void createMenuRuleList() {
987         $objectMap.put("menuRuleList", menuRuleList = new JMenuItem());
988         
989         menuRuleList.setName("menuRuleList");
990         menuRuleList.setText(t("dali.main.menu.configuration.control"));
991         menuRuleList.setToolTipText(t("dali.main.menu.configuration.control.tip"));
992         menuRuleList.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToRuleListAction.class);
993     }
994 
995     protected void createMenuSamplingEquipment() {
996         $objectMap.put("menuSamplingEquipment", menuSamplingEquipment = new JMenuItem());
997         
998         menuSamplingEquipment.setName("menuSamplingEquipment");
999         menuSamplingEquipment.setText(t("dali.main.menu.configuration.referential.samplingEquipments"));
1000         menuSamplingEquipment.setToolTipText(t("dali.main.menu.configuration.referential.samplingEquipments.tip"));
1001         menuSamplingEquipment.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToSamplingEquipmentAction.class);
1002     }
1003 
1004     protected void createMenuShowHelp() {
1005         $objectMap.put("menuShowHelp", menuShowHelp = new JMenuItem());
1006         
1007         menuShowHelp.setName("menuShowHelp");
1008         menuShowHelp.setText(t("dali.main.menu.showHelp"));
1009         menuShowHelp.addActionListener(JAXXUtil.getEventListener(ActionListener.class, "actionPerformed", this, "doActionPerformed__on__menuShowHelp"));
1010         menuShowHelp.putClientProperty("help", "dali.index.help");
1011     }
1012 
1013     protected void createMenuSynchronization() {
1014         $objectMap.put("menuSynchronization", menuSynchronization = new JMenu());
1015         
1016         menuSynchronization.setName("menuSynchronization");
1017         menuSynchronization.setText(t("dali.main.menu.synchro"));
1018     }
1019 
1020     protected void createMenuSynchronizationExport() {
1021         $objectMap.put("menuSynchronizationExport", menuSynchronizationExport = new JMenuItem());
1022         
1023         menuSynchronizationExport.setName("menuSynchronizationExport");
1024         menuSynchronizationExport.setText(t("dali.main.menu.synchro.server.export"));
1025         menuSynchronizationExport.setToolTipText(t("dali.main.menu.synchro.server.export.tip"));
1026         menuSynchronizationExport.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.ExportSynchroAction.class);
1027     }
1028 
1029     protected void createMenuSynchronizationExportToFile() {
1030         $objectMap.put("menuSynchronizationExportToFile", menuSynchronizationExportToFile = new JMenuItem());
1031         
1032         menuSynchronizationExportToFile.setName("menuSynchronizationExportToFile");
1033         menuSynchronizationExportToFile.setText(t("dali.main.menu.synchro.file.exportDataToFile"));
1034         menuSynchronizationExportToFile.setToolTipText(t("dali.main.menu.synchro.file.exportDataToFile.tip"));
1035         menuSynchronizationExportToFile.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.ExportToFileSynchroAction.class);
1036     }
1037 
1038     protected void createMenuSynchronizationImport() {
1039         $objectMap.put("menuSynchronizationImport", menuSynchronizationImport = new JMenuItem());
1040         
1041         menuSynchronizationImport.setName("menuSynchronizationImport");
1042         menuSynchronizationImport.setText(t("dali.main.menu.synchro.server.import"));
1043         menuSynchronizationImport.setToolTipText(t("dali.main.menu.synchro.server.import.tip"));
1044         menuSynchronizationImport.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.ImportSynchroAction.class);
1045     }
1046 
1047     protected void createMenuSynchronizationImportFromFile() {
1048         $objectMap.put("menuSynchronizationImportFromFile", menuSynchronizationImportFromFile = new JMenuItem());
1049         
1050         menuSynchronizationImportFromFile.setName("menuSynchronizationImportFromFile");
1051         menuSynchronizationImportFromFile.setText(t("dali.main.menu.synchro.file.importFromFile"));
1052         menuSynchronizationImportFromFile.setToolTipText(t("dali.main.menu.synchro.file.importFromFile.tip"));
1053         menuSynchronizationImportFromFile.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.ImportFromFileSynchroAction.class);
1054     }
1055 
1056     protected void createMenuSynchronizationImportReferential() {
1057         $objectMap.put("menuSynchronizationImportReferential", menuSynchronizationImportReferential = new JMenuItem());
1058         
1059         menuSynchronizationImportReferential.setName("menuSynchronizationImportReferential");
1060         menuSynchronizationImportReferential.setText(t("dali.main.menu.synchro.server.import.referential"));
1061         menuSynchronizationImportReferential.setToolTipText(t("dali.main.menu.synchro.server.import.referential.tip"));
1062         menuSynchronizationImportReferential.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.ImportReferentialSynchroAction.class);
1063     }
1064 
1065     protected void createMenuSynchronizationLog() {
1066         $objectMap.put("menuSynchronizationLog", menuSynchronizationLog = new JMenuItem());
1067         
1068         menuSynchronizationLog.setName("menuSynchronizationLog");
1069         menuSynchronizationLog.setText(t("dali.main.menu.synchro.log"));
1070         menuSynchronizationLog.setToolTipText(t("dali.main.menu.synchro.log"));
1071         menuSynchronizationLog.putClientProperty("applicationAction", fr.ifremer.quadrige3.ui.swing.action.GoToSynchroLogAction.class);
1072     }
1073 
1074     protected void createMenuTaxon() {
1075         $objectMap.put("menuTaxon", menuTaxon = new JMenuItem());
1076         
1077         menuTaxon.setName("menuTaxon");
1078         menuTaxon.setText(t("dali.main.menu.configuration.referential.taxons"));
1079         menuTaxon.setToolTipText(t("dali.main.menu.configuration.referential.taxons.tip"));
1080         menuTaxon.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToTaxonAction.class);
1081     }
1082 
1083     protected void createMenuTaxonGroup() {
1084         $objectMap.put("menuTaxonGroup", menuTaxonGroup = new JMenuItem());
1085         
1086         menuTaxonGroup.setName("menuTaxonGroup");
1087         menuTaxonGroup.setText(t("dali.main.menu.configuration.referential.taxonGroup"));
1088         menuTaxonGroup.setToolTipText(t("dali.main.menu.configuration.referential.taxonGroup.tip"));
1089         menuTaxonGroup.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToTaxonGroupAction.class);
1090     }
1091 
1092     protected void createMenuTaxonomic() {
1093         $objectMap.put("menuTaxonomic", menuTaxonomic = new JMenu());
1094         
1095         menuTaxonomic.setName("menuTaxonomic");
1096         menuTaxonomic.setText(t("dali.main.menu.configuration.referential.taxonomic"));
1097     }
1098 
1099     protected void createMenuUnit() {
1100         $objectMap.put("menuUnit", menuUnit = new JMenuItem());
1101         
1102         menuUnit.setName("menuUnit");
1103         menuUnit.setText(t("dali.main.menu.configuration.referential.units"));
1104         menuUnit.setToolTipText(t("dali.main.menu.configuration.referential.units.tip"));
1105         menuUnit.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToUnitAction.class);
1106     }
1107 
1108     protected void createMenuUser() {
1109         $objectMap.put("menuUser", menuUser = new JMenuItem());
1110         
1111         menuUser.setName("menuUser");
1112         menuUser.setText(t("dali.main.menu.configuration.referential.user"));
1113         menuUser.setToolTipText(t("dali.main.menu.configuration.referential.user.tip"));
1114         menuUser.putClientProperty("applicationAction", fr.ifremer.dali.ui.swing.action.GoToUserAction.class);
1115     }
1116 
1117     protected void createMenuUsers() {
1118         $objectMap.put("menuUsers", menuUsers = new JMenu());
1119         
1120         menuUsers.setName("menuUsers");
1121         menuUsers.setText(t("dali.main.menu.configuration.referential.users"));
1122     }
1123 
1124     @Override
1125     protected void createModel() {
1126         $objectMap.put("model", model = getContextValue(DaliUIContext.class));
1127     }
1128 
1129     @Override
1130     protected void createShowHelp() {
1131         super.createShowHelp();
1132         showHelp.setName("showHelp");
1133     }
1134 
1135     /*-----------------------------------------------------------------------*/
1136     /*------------------------ Internal jaxx methods ------------------------*/
1137     /*-----------------------------------------------------------------------*/
1138 
1139     private void $completeSetup() {
1140         allComponentsCreated = true;
1141         if (log.isDebugEnabled()) {
1142             log.debug(this);
1143         }
1144         addChildrenToMenu();
1145         addChildrenToMenuFile();
1146         addChildrenToMenuSynchronization();
1147         addChildrenToMenuAdministration();
1148         addChildrenToMenuContextFilter();
1149         addChildrenToMenuFilter();
1150         addChildrenToMenuReferential();
1151         addChildrenToMenuUsers();
1152         addChildrenToMenuPmfms();
1153         addChildrenToMenuTaxonomic();
1154         addChildrenToMenuHelp();
1155         
1156         // apply 55 data bindings
1157         JAXXUtil.applyDataBinding(this, $bindings.keySet());
1158         
1159         // apply 72 property setters
1160         setIconImage(SwingUtil.createImageIcon("dali_32.png").getImage());
1161         setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
1162         menuFile.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.file.mnemonic"),'Z'));
1163         menuFileHome.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.home.mnemonic"),'Z'));
1164         menuFileHome.setIcon(SwingUtil.createActionIcon("home"));
1165         menuFileObservation.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.observation.mnemonic"),'Z'));
1166         menuFileObservation.setIcon(SwingUtil.createActionIcon("edit"));
1167         menuFileExtraction.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.extraction.mnemonic"),'Z'));
1168         menuFileExtraction.setIcon(SwingUtil.createActionIcon("export"));
1169         menuSynchronizationImportFromFile.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.synchro.file.importFromFile.mnemonic"),'Z'));
1170         menuSynchronizationImportFromFile.setIcon(SwingUtil.createActionIcon("synchro-import"));
1171         menuSynchronizationExportToFile.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.synchro.file.exportDataToFile.mnemonic"),'Z'));
1172         menuSynchronizationExportToFile.setIcon(SwingUtil.createActionIcon("synchro-file-export"));
1173         menuSynchronization.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.synchro.mnemonic"),'Z'));
1174         menuSynchronizationImportReferential.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.synchro.server.import.referential.mnemonic"),'Z'));
1175         menuSynchronizationImportReferential.setIcon(SwingUtil.createActionIcon("synchro-import-referential"));
1176         menuSynchronizationImport.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.synchro.server.import.mnemonic"),'Z'));
1177         menuSynchronizationImport.setIcon(SwingUtil.createActionIcon("synchro-import"));
1178         menuSynchronizationExport.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.synchro.server.export.mnemonic"),'Z'));
1179         menuSynchronizationExport.setIcon(SwingUtil.createActionIcon("synchro-export"));
1180         menuSynchronizationLog.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.synchro.log.mnemonic"),'Z'));
1181         menuSynchronizationLog.setIcon(SwingUtil.createActionIcon("synchro-log"));
1182         menuAdministration.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.administration.mnemonic"),'Z'));
1183         menuAuthentication.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.authentication.mnemonic"),'Z'));
1184         menuAuthentication.setIcon(SwingUtil.createActionIcon("person"));
1185         menuConfiguration.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.mnemonic"),'Z'));
1186         menuConfiguration.setIcon(SwingUtil.createActionIcon("config"));
1187         menuManageDb.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.action.manageDb.mnemonic"),'Z'));
1188         menuManageDb.setIcon(SwingUtil.createActionIcon("manage-db"));
1189         menuContextFilter.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.contextFilter.mnemonic"),'Z'));
1190         menuContext.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.context.mnemonic"),'Z'));
1191         menuFilter.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.mnemonic"),'Z'));
1192         menuFilterCampaign.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.campaign.mnemonic"),'Z'));
1193         menuFilterSamplingEquipment.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.samplingEquipment.mnemonic"),'Z'));
1194         menuFilterAnalysisInstrument.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.analysisInstrument.mnemonic"),'Z'));
1195         menuFilterTaxonGroup.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.taxonGroup.mnemonic"),'Z'));
1196         menuFilterLocation.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.location.mnemonic"),'Z'));
1197         menuFilterUser.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.user.mnemonic"),'Z'));
1198         menuFilterProgram.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.program.mnemonic"),'Z'));
1199         menuFilterPmfm.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.pmfm.mnemonic"),'Z'));
1200         menuFilterDepartment.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.department.mnemonic"),'Z'));
1201         menuFilterTaxon.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.filter.taxon.mnemonic"),'Z'));
1202         menuProgram.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.program.mnemonic"),'Z'));
1203         menuProgram.setIcon(SwingUtil.createActionIcon("program"));
1204         menuCampaign.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.campaigns.mnemonic"),'Z'));
1205         menuCampaign.setIcon(SwingUtil.createActionIcon("campaign"));
1206         menuRuleList.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.control.mnemonic"),'Z'));
1207         menuRuleList.setIcon(SwingUtil.createActionIcon("rule-list"));
1208         menuReferential.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.mnemonic"),'Z'));
1209         menuSamplingEquipment.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.samplingEquipments.mnemonic"),'Z'));
1210         menuAnalysisInstrument.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.analysisInstruments.mnemonic"),'Z'));
1211         menuLocation.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.location.mnemonic"),'Z'));
1212         menuUsers.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.users.mnemonic"),'Z'));
1213         menuUser.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.user.mnemonic"),'Z'));
1214         menuDepartment.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.department.mnemonic"),'Z'));
1215         menuPmfms.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.pmfms.mnemonic"),'Z'));
1216         menuFraction.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.pmfms.fraction.mnemonic"),'Z'));
1217         menuMethod.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.pmfms.method.mnemonic"),'Z'));
1218         menuParameter.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.pmfms.parameter.mnemonic"),'Z'));
1219         menuPmfm.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.pmfms.pmfm.mnemonic"),'Z'));
1220         menuMatrix.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.pmfms.matrix.mnemonic"),'Z'));
1221         menuTaxonomic.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.taxonomic.mnemonic"),'Z'));
1222         menuTaxonGroup.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.taxonGroup.mnemonic"),'Z'));
1223         menuTaxon.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.taxons.mnemonic"),'Z'));
1224         menuUnit.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.configuration.referential.units.mnemonic"),'Z'));
1225         menuHelp.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.help.mnemonic"),'Z'));
1226         menuShowHelp.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.showHelp.mnemonic"),'Z'));
1227         menuShowHelp.setIcon(SwingUtil.createActionIcon("help"));
1228         menuHelpSite.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.site.mnemonic"),'Z'));
1229         menuHelpSite.setIcon(SwingUtil.createActionIcon("site"));
1230         menuHelpAbout.setMnemonic(SwingUtil.getFirstCharAt(t("dali.main.menu.about.mnemonic"),'Z'));
1231         menuHelpAbout.setIcon(SwingUtil.createActionIcon("about"));
1232         // late initializer
1233         // help broker setup
1234         DaliHelpBroker _broker = getBroker();
1235         registerHelpId(_broker, menuFileHome, "dali.main.menu.action.home.help");
1236         registerHelpId(_broker, menuFileObservation, "dali.main.menu.action.home.help");
1237         registerHelpId(_broker, menuFileExtraction, "dali.main.menu.action.home.help");
1238         registerHelpId(_broker, menuAuthentication, "dali.main.menu.action.authentication.help");
1239         registerHelpId(_broker, menuConfiguration, "dali.main.menu.action.configuration.help");
1240         registerHelpId(_broker, menuManageDb, "dali.main.menu.action.manageDb.help");
1241         registerHelpId(_broker, menuShowHelp, "dali.index.help");
1242         registerHelpId(_broker, menuHelpSite, "dali.main.menu.action.site.help");
1243         registerHelpId(_broker, menuHelpAbout, "dali.main.menu.action.about.help");
1244         _broker.prepareUI(this);
1245     }
1246 
1247     private void $initialize() {
1248         if (allComponentsCreated) {
1249             return;
1250         }
1251         if (log.isDebugEnabled()) {
1252             log.debug(this);
1253         }
1254         handler.beforeInit(this);
1255         $objectMap.put("mainFrame", mainFrame);
1256         createBroker();
1257         createMenuFile();
1258         createMenuFileHome();
1259         createMenuFileObservation();
1260         createMenuFileExtraction();
1261         // inline creation of $JSeparator0
1262         $objectMap.put("$JSeparator0", $JSeparator0 = new JSeparator());
1263         
1264         $JSeparator0.setName("$JSeparator0");
1265         createMenuSynchronizationImportFromFile();
1266         createMenuSynchronizationExportToFile();
1267         // inline creation of $JSeparator1
1268         $objectMap.put("$JSeparator1", $JSeparator1 = new JSeparator());
1269         
1270         $JSeparator1.setName("$JSeparator1");
1271         createMenuSynchronization();
1272         createMenuSynchronizationImportReferential();
1273         createMenuSynchronizationImport();
1274         // inline creation of $JSeparator2
1275         $objectMap.put("$JSeparator2", $JSeparator2 = new JSeparator());
1276         
1277         $JSeparator2.setName("$JSeparator2");
1278         createMenuSynchronizationExport();
1279         // inline creation of $JSeparator3
1280         $objectMap.put("$JSeparator3", $JSeparator3 = new JSeparator());
1281         
1282         $JSeparator3.setName("$JSeparator3");
1283         createMenuSynchronizationLog();
1284         createMenuAdministration();
1285         createMenuAuthentication();
1286         createMenuConfiguration();
1287         createMenuManageDb();
1288         createMenuContextFilter();
1289         createMenuContext();
1290         createMenuFilter();
1291         createMenuFilterCampaign();
1292         createMenuFilterSamplingEquipment();
1293         createMenuFilterAnalysisInstrument();
1294         createMenuFilterTaxonGroup();
1295         createMenuFilterLocation();
1296         createMenuFilterUser();
1297         createMenuFilterProgram();
1298         createMenuFilterPmfm();
1299         createMenuFilterDepartment();
1300         createMenuFilterTaxon();
1301         createMenuProgram();
1302         createMenuCampaign();
1303         createMenuRuleList();
1304         createMenuReferential();
1305         createMenuSamplingEquipment();
1306         createMenuAnalysisInstrument();
1307         createMenuLocation();
1308         createMenuUsers();
1309         createMenuUser();
1310         createMenuDepartment();
1311         createMenuPmfms();
1312         createMenuFraction();
1313         createMenuMethod();
1314         createMenuParameter();
1315         createMenuPmfm();
1316         createMenuMatrix();
1317         createMenuTaxonomic();
1318         createMenuTaxonGroup();
1319         createMenuTaxon();
1320         createMenuUnit();
1321         createMenuHelp();
1322         createMenuShowHelp();
1323         createMenuHelpSite();
1324         createMenuHelpAbout();
1325         // inline creation of mainFrame
1326         setName("mainFrame");
1327         SwingUtil.setComponentHeight(mainFrame,1024);
1328         SwingUtil.setComponentWidth(mainFrame,1280);
1329         setTitle(t("dali.main.title.applicationName"));
1330         
1331         // registers 55 data bindings
1332         $registerDefaultBindings();
1333         $completeSetup();
1334         handler.afterInit(this);
1335     }
1336 
1337     private void $registerDefaultBindings() {
1338         // register 55 data bindings
1339         registerDataBinding(new DefaultJAXXBinding(this, BINDING_BUSY_BLOCK_LAYER_UI_BLOCK, true) {
1340         
1341             @Override
1342             public void applyDataBinding() {
1343                 if (model != null) {
1344                     model.addPropertyChangeListener("busy", this);
1345                 }
1346             }
1347         
1348             @Override
1349             public void processDataBinding() {
1350                 if (model != null) {
1351                     busyBlockLayerUI.setBlock(getModel().isBusy());
1352                 }
1353             }
1354         
1355             @Override
1356             public void removeDataBinding() {
1357                 if (model != null) {
1358                     model.removePropertyChangeListener("busy", this);
1359                 }
1360             }
1361         });
1362         registerDataBinding(new DefaultJAXXBinding(this, BINDING_BUSY_BLOCK_LAYER_UI_BLOCKING_COLOR, true) {
1363         
1364             @Override
1365             public void applyDataBinding() {
1366                 if (model != null) {
1367                     model.addPropertyChangeListener("configuration", this);
1368                 }
1369             }
1370         
1371             @Override
1372             public void processDataBinding() {
1373                 if (model != null && getModel().getConfiguration() != null) {
1374                     busyBlockLayerUI.setBlockingColor(getModel().getConfiguration().getColorBlockingLayer());
1375                 }
1376             }
1377         
1378             @Override
1379             public void removeDataBinding() {
1380                 if (model != null) {
1381                     model.removePropertyChangeListener("configuration", this);
1382                 }
1383             }
1384         });
1385         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILE_HOME_ENABLED, true) {
1386         
1387             @Override
1388             public void applyDataBinding() {
1389                 if (model != null) {
1390                     model.addPropertyChangeListener("screen", this);
1391                 }
1392             }
1393         
1394             @Override
1395             public void processDataBinding() {
1396                 if (model != null) {
1397                     menuFileHome.setEnabled(getModel().getScreen() != DaliScreen.HOME && getModel().getScreen() != DaliScreen.CONFIGURATION);
1398                 }
1399             }
1400         
1401             @Override
1402             public void removeDataBinding() {
1403                 if (model != null) {
1404                     model.removePropertyChangeListener("screen", this);
1405                 }
1406             }
1407         });
1408         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILE_OBSERVATION_ENABLED, true, true) {
1409         
1410             @Override
1411             public void applyDataBinding() {
1412                 if (model != null) {
1413                     model.addPropertyChangeListener("screen", this);
1414                 }
1415                 if (model != null) {
1416                     model.addPropertyChangeListener("authenticated", this);
1417                 }
1418             }
1419         
1420             @Override
1421             public void processDataBinding() {
1422                 if (model != null) {
1423                     menuFileObservation.setEnabled(getModel().getScreen() != DaliScreen.OBSERVATION && getModel().getScreen() != DaliScreen.CONFIGURATION && getModel().isAuthenticated());
1424                 }
1425             }
1426         
1427             @Override
1428             public void removeDataBinding() {
1429                 if (model != null) {
1430                     model.removePropertyChangeListener("screen", this);
1431                 }
1432                 if (model != null) {
1433                     model.removePropertyChangeListener("authenticated", this);
1434                 }
1435             }
1436         });
1437         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILE_EXTRACTION_ENABLED, true, true) {
1438         
1439             @Override
1440             public void applyDataBinding() {
1441                 if (model != null) {
1442                     model.addPropertyChangeListener("screen", this);
1443                 }
1444                 if (model != null) {
1445                     model.addPropertyChangeListener("authenticated", this);
1446                 }
1447             }
1448         
1449             @Override
1450             public void processDataBinding() {
1451                 if (model != null) {
1452                     menuFileExtraction.setEnabled(getModel().getScreen() != DaliScreen.EXTRACTION && getModel().getScreen() != DaliScreen.CONFIGURATION && getModel().isAuthenticated());
1453                 }
1454             }
1455         
1456             @Override
1457             public void removeDataBinding() {
1458                 if (model != null) {
1459                     model.removePropertyChangeListener("screen", this);
1460                 }
1461                 if (model != null) {
1462                     model.removePropertyChangeListener("authenticated", this);
1463                 }
1464             }
1465         });
1466         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_IMPORT_FROM_FILE_ENABLED, true) {
1467         
1468             @Override
1469             public void applyDataBinding() {
1470                 if (model != null) {
1471                     model.addPropertyChangeListener("synchroRunning", this);
1472                 }
1473             }
1474         
1475             @Override
1476             public void processDataBinding() {
1477                 if (model != null) {
1478                     menuSynchronizationImportFromFile.setEnabled(!getModel().isSynchroRunning());
1479                 }
1480             }
1481         
1482             @Override
1483             public void removeDataBinding() {
1484                 if (model != null) {
1485                     model.removePropertyChangeListener("synchroRunning", this);
1486                 }
1487             }
1488         });
1489         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_EXPORT_TO_FILE_ENABLED, true) {
1490         
1491             @Override
1492             public void applyDataBinding() {
1493                 if (model != null) {
1494                     model.addPropertyChangeListener("synchroRunning", this);
1495                 }
1496             }
1497         
1498             @Override
1499             public void processDataBinding() {
1500                 if (model != null) {
1501                     menuSynchronizationExportToFile.setEnabled(!getModel().isSynchroRunning());
1502                 }
1503             }
1504         
1505             @Override
1506             public void removeDataBinding() {
1507                 if (model != null) {
1508                     model.removePropertyChangeListener("synchroRunning", this);
1509                 }
1510             }
1511         });
1512         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_ENABLED, true) {
1513         
1514             @Override
1515             public void applyDataBinding() {
1516                 if (model != null) {
1517                     model.addPropertyChangeListener("screen", this);
1518                 }
1519             }
1520         
1521             @Override
1522             public void processDataBinding() {
1523                 if (model != null) {
1524                     menuSynchronization.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
1525                 }
1526             }
1527         
1528             @Override
1529             public void removeDataBinding() {
1530                 if (model != null) {
1531                     model.removePropertyChangeListener("screen", this);
1532                 }
1533             }
1534         });
1535         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_IMPORT_REFERENTIAL_ENABLED, true, true) {
1536         
1537             @Override
1538             public void applyDataBinding() {
1539                 if (model != null) {
1540                     model.addPropertyChangeListener("synchroEnabled", this);
1541                 }
1542                 if (model != null) {
1543                     model.addPropertyChangeListener("configuration", this);
1544                 }
1545                 if (model != null) {
1546                     model.addPropertyChangeListener("synchroRunning", this);
1547                 }
1548             }
1549         
1550             @Override
1551             public void processDataBinding() {
1552                 if (model != null && getModel().getConfiguration() != null) {
1553                     menuSynchronizationImportReferential.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isSynchroRunning());
1554                 }
1555             }
1556         
1557             @Override
1558             public void removeDataBinding() {
1559                 if (model != null) {
1560                     model.removePropertyChangeListener("synchroEnabled", this);
1561                 }
1562                 if (model != null) {
1563                     model.removePropertyChangeListener("configuration", this);
1564                 }
1565                 if (model != null) {
1566                     model.removePropertyChangeListener("synchroRunning", this);
1567                 }
1568             }
1569         });
1570         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_IMPORT_ENABLED, true, true) {
1571         
1572             @Override
1573             public void applyDataBinding() {
1574                 if (model != null) {
1575                     model.addPropertyChangeListener("synchroEnabled", this);
1576                 }
1577                 if (model != null) {
1578                     model.addPropertyChangeListener("configuration", this);
1579                 }
1580                 if (model != null) {
1581                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
1582                 }
1583                 if (model != null) {
1584                     model.addPropertyChangeListener("synchroRunning", this);
1585                 }
1586             }
1587         
1588             @Override
1589             public void processDataBinding() {
1590                 if (model != null && getModel().getConfiguration() != null) {
1591                     menuSynchronizationImport.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
1592                 }
1593             }
1594         
1595             @Override
1596             public void removeDataBinding() {
1597                 if (model != null) {
1598                     model.removePropertyChangeListener("synchroEnabled", this);
1599                 }
1600                 if (model != null) {
1601                     model.removePropertyChangeListener("configuration", this);
1602                 }
1603                 if (model != null) {
1604                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
1605                 }
1606                 if (model != null) {
1607                     model.removePropertyChangeListener("synchroRunning", this);
1608                 }
1609             }
1610         });
1611         registerDataBinding(new DefaultJAXXBinding(this, BINDING_$JSEPARATOR2_ENABLED, true) {
1612         
1613             @Override
1614             public void applyDataBinding() {
1615                 if (model != null) {
1616                     model.addPropertyChangeListener("screen", this);
1617                 }
1618             }
1619         
1620             @Override
1621             public void processDataBinding() {
1622                 if (model != null) {
1623                     $JSeparator2.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
1624                 }
1625             }
1626         
1627             @Override
1628             public void removeDataBinding() {
1629                 if (model != null) {
1630                     model.removePropertyChangeListener("screen", this);
1631                 }
1632             }
1633         });
1634         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_EXPORT_ENABLED, true, true) {
1635         
1636             @Override
1637             public void applyDataBinding() {
1638                 if (model != null) {
1639                     model.addPropertyChangeListener("synchroEnabled", this);
1640                 }
1641                 if (model != null) {
1642                     model.addPropertyChangeListener("configuration", this);
1643                 }
1644                 if (model != null) {
1645                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
1646                 }
1647                 if (model != null) {
1648                     model.addPropertyChangeListener("synchroRunning", this);
1649                 }
1650             }
1651         
1652             @Override
1653             public void processDataBinding() {
1654                 if (model != null && getModel().getConfiguration() != null) {
1655                     menuSynchronizationExport.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
1656                 }
1657             }
1658         
1659             @Override
1660             public void removeDataBinding() {
1661                 if (model != null) {
1662                     model.removePropertyChangeListener("synchroEnabled", this);
1663                 }
1664                 if (model != null) {
1665                     model.removePropertyChangeListener("configuration", this);
1666                 }
1667                 if (model != null) {
1668                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
1669                 }
1670                 if (model != null) {
1671                     model.removePropertyChangeListener("synchroRunning", this);
1672                 }
1673             }
1674         });
1675         registerDataBinding(new DefaultJAXXBinding(this, BINDING_$JSEPARATOR3_ENABLED, true) {
1676         
1677             @Override
1678             public void applyDataBinding() {
1679                 if (model != null) {
1680                     model.addPropertyChangeListener("screen", this);
1681                 }
1682             }
1683         
1684             @Override
1685             public void processDataBinding() {
1686                 if (model != null) {
1687                     $JSeparator3.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
1688                 }
1689             }
1690         
1691             @Override
1692             public void removeDataBinding() {
1693                 if (model != null) {
1694                     model.removePropertyChangeListener("screen", this);
1695                 }
1696             }
1697         });
1698         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_LOG_ENABLED, true) {
1699         
1700             @Override
1701             public void applyDataBinding() {
1702                 if (model != null) {
1703                     model.addPropertyChangeListener("screen", this);
1704                 }
1705             }
1706         
1707             @Override
1708             public void processDataBinding() {
1709                 if (model != null) {
1710                     menuSynchronizationLog.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
1711                 }
1712             }
1713         
1714             @Override
1715             public void removeDataBinding() {
1716                 if (model != null) {
1717                     model.removePropertyChangeListener("screen", this);
1718                 }
1719             }
1720         });
1721         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_ADMINISTRATION_ENABLED, true) {
1722         
1723             @Override
1724             public void applyDataBinding() {
1725                 if (model != null) {
1726                     model.addPropertyChangeListener("screen", this);
1727                 }
1728             }
1729         
1730             @Override
1731             public void processDataBinding() {
1732                 if (model != null) {
1733                     menuAdministration.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
1734                 }
1735             }
1736         
1737             @Override
1738             public void removeDataBinding() {
1739                 if (model != null) {
1740                     model.removePropertyChangeListener("screen", this);
1741                 }
1742             }
1743         });
1744         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_AUTHENTICATION_ENABLED, true) {
1745         
1746             @Override
1747             public void applyDataBinding() {
1748                 if (model != null) {
1749                     model.addPropertyChangeListener("screen", this);
1750                 }
1751             }
1752         
1753             @Override
1754             public void processDataBinding() {
1755                 if (model != null) {
1756                     menuAuthentication.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
1757                 }
1758             }
1759         
1760             @Override
1761             public void removeDataBinding() {
1762                 if (model != null) {
1763                     model.removePropertyChangeListener("screen", this);
1764                 }
1765             }
1766         });
1767         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIGURATION_ENABLED, true) {
1768         
1769             @Override
1770             public void applyDataBinding() {
1771                 if (model != null) {
1772                     model.addPropertyChangeListener("authenticated", this);
1773                 }
1774             }
1775         
1776             @Override
1777             public void processDataBinding() {
1778                 if (model != null) {
1779                     menuConfiguration.setEnabled(getModel().isAuthenticated());
1780                 }
1781             }
1782         
1783             @Override
1784             public void removeDataBinding() {
1785                 if (model != null) {
1786                     model.removePropertyChangeListener("authenticated", this);
1787                 }
1788             }
1789         });
1790         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_MANAGE_DB_ENABLED, true, true) {
1791         
1792             @Override
1793             public void applyDataBinding() {
1794                 if (model != null) {
1795                     model.addPropertyChangeListener("screen", this);
1796                 }
1797                 if (model != null) {
1798                     model.addPropertyChangeListener("authenticated", this);
1799                 }
1800             }
1801         
1802             @Override
1803             public void processDataBinding() {
1804                 if (model != null) {
1805                     menuManageDb.setEnabled(getModel().getScreen() != DaliScreen.MANAGE_DB && getModel().isAuthenticated());
1806                 }
1807             }
1808         
1809             @Override
1810             public void removeDataBinding() {
1811                 if (model != null) {
1812                     model.removePropertyChangeListener("screen", this);
1813                 }
1814                 if (model != null) {
1815                     model.removePropertyChangeListener("authenticated", this);
1816                 }
1817             }
1818         });
1819         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONTEXT_FILTER_ENABLED, true) {
1820         
1821             @Override
1822             public void applyDataBinding() {
1823                 if (model != null) {
1824                     model.addPropertyChangeListener("authenticated", this);
1825                 }
1826             }
1827         
1828             @Override
1829             public void processDataBinding() {
1830                 if (model != null) {
1831                     menuContextFilter.setEnabled(getModel().isAuthenticated());
1832                 }
1833             }
1834         
1835             @Override
1836             public void removeDataBinding() {
1837                 if (model != null) {
1838                     model.removePropertyChangeListener("authenticated", this);
1839                 }
1840             }
1841         });
1842         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONTEXT_ENABLED, true) {
1843         
1844             @Override
1845             public void applyDataBinding() {
1846                 if (model != null) {
1847                     model.addPropertyChangeListener("authenticated", this);
1848                 }
1849             }
1850         
1851             @Override
1852             public void processDataBinding() {
1853                 if (model != null) {
1854                     menuContext.setEnabled(getModel().isAuthenticated());
1855                 }
1856             }
1857         
1858             @Override
1859             public void removeDataBinding() {
1860                 if (model != null) {
1861                     model.removePropertyChangeListener("authenticated", this);
1862                 }
1863             }
1864         });
1865         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_ENABLED, true) {
1866         
1867             @Override
1868             public void applyDataBinding() {
1869                 if (model != null) {
1870                     model.addPropertyChangeListener("authenticated", this);
1871                 }
1872             }
1873         
1874             @Override
1875             public void processDataBinding() {
1876                 if (model != null) {
1877                     menuFilter.setEnabled(getModel().isAuthenticated());
1878                 }
1879             }
1880         
1881             @Override
1882             public void removeDataBinding() {
1883                 if (model != null) {
1884                     model.removePropertyChangeListener("authenticated", this);
1885                 }
1886             }
1887         });
1888         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_CAMPAIGN_ENABLED, true) {
1889         
1890             @Override
1891             public void applyDataBinding() {
1892                 if (model != null) {
1893                     model.addPropertyChangeListener("authenticated", this);
1894                 }
1895             }
1896         
1897             @Override
1898             public void processDataBinding() {
1899                 if (model != null) {
1900                     menuFilterCampaign.setEnabled(getModel().isAuthenticated());
1901                 }
1902             }
1903         
1904             @Override
1905             public void removeDataBinding() {
1906                 if (model != null) {
1907                     model.removePropertyChangeListener("authenticated", this);
1908                 }
1909             }
1910         });
1911         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_SAMPLING_EQUIPMENT_ENABLED, true) {
1912         
1913             @Override
1914             public void applyDataBinding() {
1915                 if (model != null) {
1916                     model.addPropertyChangeListener("authenticated", this);
1917                 }
1918             }
1919         
1920             @Override
1921             public void processDataBinding() {
1922                 if (model != null) {
1923                     menuFilterSamplingEquipment.setEnabled(getModel().isAuthenticated());
1924                 }
1925             }
1926         
1927             @Override
1928             public void removeDataBinding() {
1929                 if (model != null) {
1930                     model.removePropertyChangeListener("authenticated", this);
1931                 }
1932             }
1933         });
1934         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_ANALYSIS_INSTRUMENT_ENABLED, true) {
1935         
1936             @Override
1937             public void applyDataBinding() {
1938                 if (model != null) {
1939                     model.addPropertyChangeListener("authenticated", this);
1940                 }
1941             }
1942         
1943             @Override
1944             public void processDataBinding() {
1945                 if (model != null) {
1946                     menuFilterAnalysisInstrument.setEnabled(getModel().isAuthenticated());
1947                 }
1948             }
1949         
1950             @Override
1951             public void removeDataBinding() {
1952                 if (model != null) {
1953                     model.removePropertyChangeListener("authenticated", this);
1954                 }
1955             }
1956         });
1957         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_TAXON_GROUP_ENABLED, true) {
1958         
1959             @Override
1960             public void applyDataBinding() {
1961                 if (model != null) {
1962                     model.addPropertyChangeListener("authenticated", this);
1963                 }
1964             }
1965         
1966             @Override
1967             public void processDataBinding() {
1968                 if (model != null) {
1969                     menuFilterTaxonGroup.setEnabled(getModel().isAuthenticated());
1970                 }
1971             }
1972         
1973             @Override
1974             public void removeDataBinding() {
1975                 if (model != null) {
1976                     model.removePropertyChangeListener("authenticated", this);
1977                 }
1978             }
1979         });
1980         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_LOCATION_ENABLED, true) {
1981         
1982             @Override
1983             public void applyDataBinding() {
1984                 if (model != null) {
1985                     model.addPropertyChangeListener("authenticated", this);
1986                 }
1987             }
1988         
1989             @Override
1990             public void processDataBinding() {
1991                 if (model != null) {
1992                     menuFilterLocation.setEnabled(getModel().isAuthenticated());
1993                 }
1994             }
1995         
1996             @Override
1997             public void removeDataBinding() {
1998                 if (model != null) {
1999                     model.removePropertyChangeListener("authenticated", this);
2000                 }
2001             }
2002         });
2003         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_USER_ENABLED, true) {
2004         
2005             @Override
2006             public void applyDataBinding() {
2007                 if (model != null) {
2008                     model.addPropertyChangeListener("authenticated", this);
2009                 }
2010             }
2011         
2012             @Override
2013             public void processDataBinding() {
2014                 if (model != null) {
2015                     menuFilterUser.setEnabled(getModel().isAuthenticated());
2016                 }
2017             }
2018         
2019             @Override
2020             public void removeDataBinding() {
2021                 if (model != null) {
2022                     model.removePropertyChangeListener("authenticated", this);
2023                 }
2024             }
2025         });
2026         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_PROGRAM_ENABLED, true) {
2027         
2028             @Override
2029             public void applyDataBinding() {
2030                 if (model != null) {
2031                     model.addPropertyChangeListener("authenticated", this);
2032                 }
2033             }
2034         
2035             @Override
2036             public void processDataBinding() {
2037                 if (model != null) {
2038                     menuFilterProgram.setEnabled(getModel().isAuthenticated());
2039                 }
2040             }
2041         
2042             @Override
2043             public void removeDataBinding() {
2044                 if (model != null) {
2045                     model.removePropertyChangeListener("authenticated", this);
2046                 }
2047             }
2048         });
2049         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_PMFM_ENABLED, true) {
2050         
2051             @Override
2052             public void applyDataBinding() {
2053                 if (model != null) {
2054                     model.addPropertyChangeListener("authenticated", this);
2055                 }
2056             }
2057         
2058             @Override
2059             public void processDataBinding() {
2060                 if (model != null) {
2061                     menuFilterPmfm.setEnabled(getModel().isAuthenticated());
2062                 }
2063             }
2064         
2065             @Override
2066             public void removeDataBinding() {
2067                 if (model != null) {
2068                     model.removePropertyChangeListener("authenticated", this);
2069                 }
2070             }
2071         });
2072         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_DEPARTMENT_ENABLED, true) {
2073         
2074             @Override
2075             public void applyDataBinding() {
2076                 if (model != null) {
2077                     model.addPropertyChangeListener("authenticated", this);
2078                 }
2079             }
2080         
2081             @Override
2082             public void processDataBinding() {
2083                 if (model != null) {
2084                     menuFilterDepartment.setEnabled(getModel().isAuthenticated());
2085                 }
2086             }
2087         
2088             @Override
2089             public void removeDataBinding() {
2090                 if (model != null) {
2091                     model.removePropertyChangeListener("authenticated", this);
2092                 }
2093             }
2094         });
2095         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_TAXON_ENABLED, true) {
2096         
2097             @Override
2098             public void applyDataBinding() {
2099                 if (model != null) {
2100                     model.addPropertyChangeListener("authenticated", this);
2101                 }
2102             }
2103         
2104             @Override
2105             public void processDataBinding() {
2106                 if (model != null) {
2107                     menuFilterTaxon.setEnabled(getModel().isAuthenticated());
2108                 }
2109             }
2110         
2111             @Override
2112             public void removeDataBinding() {
2113                 if (model != null) {
2114                     model.removePropertyChangeListener("authenticated", this);
2115                 }
2116             }
2117         });
2118         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_PROGRAM_ENABLED, true, true) {
2119         
2120             @Override
2121             public void applyDataBinding() {
2122                 if (model != null) {
2123                     model.addPropertyChangeListener("synchroEnabled", this);
2124                 }
2125                 if (model != null) {
2126                     model.addPropertyChangeListener("configuration", this);
2127                 }
2128                 if (model != null) {
2129                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
2130                 }
2131                 if (model != null) {
2132                     model.addPropertyChangeListener("synchroRunning", this);
2133                 }
2134             }
2135         
2136             @Override
2137             public void processDataBinding() {
2138                 if (model != null && getModel().getConfiguration() != null) {
2139                     menuProgram.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
2140                 }
2141             }
2142         
2143             @Override
2144             public void removeDataBinding() {
2145                 if (model != null) {
2146                     model.removePropertyChangeListener("synchroEnabled", this);
2147                 }
2148                 if (model != null) {
2149                     model.removePropertyChangeListener("configuration", this);
2150                 }
2151                 if (model != null) {
2152                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
2153                 }
2154                 if (model != null) {
2155                     model.removePropertyChangeListener("synchroRunning", this);
2156                 }
2157             }
2158         });
2159         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CAMPAIGN_ENABLED, true, true) {
2160         
2161             @Override
2162             public void applyDataBinding() {
2163                 if (model != null) {
2164                     model.addPropertyChangeListener("synchroEnabled", this);
2165                 }
2166                 if (model != null) {
2167                     model.addPropertyChangeListener("configuration", this);
2168                 }
2169                 if (model != null) {
2170                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
2171                 }
2172                 if (model != null) {
2173                     model.addPropertyChangeListener("synchroRunning", this);
2174                 }
2175             }
2176         
2177             @Override
2178             public void processDataBinding() {
2179                 if (model != null && getModel().getConfiguration() != null) {
2180                     menuCampaign.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
2181                 }
2182             }
2183         
2184             @Override
2185             public void removeDataBinding() {
2186                 if (model != null) {
2187                     model.removePropertyChangeListener("synchroEnabled", this);
2188                 }
2189                 if (model != null) {
2190                     model.removePropertyChangeListener("configuration", this);
2191                 }
2192                 if (model != null) {
2193                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
2194                 }
2195                 if (model != null) {
2196                     model.removePropertyChangeListener("synchroRunning", this);
2197                 }
2198             }
2199         });
2200         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_RULE_LIST_ENABLED, true, true) {
2201         
2202             @Override
2203             public void applyDataBinding() {
2204                 if (model != null) {
2205                     model.addPropertyChangeListener("synchroEnabled", this);
2206                 }
2207                 if (model != null) {
2208                     model.addPropertyChangeListener("configuration", this);
2209                 }
2210                 if (model != null) {
2211                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
2212                 }
2213                 if (model != null) {
2214                     model.addPropertyChangeListener("synchroRunning", this);
2215                 }
2216             }
2217         
2218             @Override
2219             public void processDataBinding() {
2220                 if (model != null && getModel().getConfiguration() != null) {
2221                     menuRuleList.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
2222                 }
2223             }
2224         
2225             @Override
2226             public void removeDataBinding() {
2227                 if (model != null) {
2228                     model.removePropertyChangeListener("synchroEnabled", this);
2229                 }
2230                 if (model != null) {
2231                     model.removePropertyChangeListener("configuration", this);
2232                 }
2233                 if (model != null) {
2234                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
2235                 }
2236                 if (model != null) {
2237                     model.removePropertyChangeListener("synchroRunning", this);
2238                 }
2239             }
2240         });
2241         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_REFERENTIAL_ENABLED, true) {
2242         
2243             @Override
2244             public void applyDataBinding() {
2245                 if (model != null) {
2246                     model.addPropertyChangeListener("authenticated", this);
2247                 }
2248             }
2249         
2250             @Override
2251             public void processDataBinding() {
2252                 if (model != null) {
2253                     menuReferential.setEnabled(getModel().isAuthenticated());
2254                 }
2255             }
2256         
2257             @Override
2258             public void removeDataBinding() {
2259                 if (model != null) {
2260                     model.removePropertyChangeListener("authenticated", this);
2261                 }
2262             }
2263         });
2264         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SAMPLING_EQUIPMENT_ENABLED, true) {
2265         
2266             @Override
2267             public void applyDataBinding() {
2268                 if (model != null) {
2269                     model.addPropertyChangeListener("authenticated", this);
2270                 }
2271             }
2272         
2273             @Override
2274             public void processDataBinding() {
2275                 if (model != null) {
2276                     menuSamplingEquipment.setEnabled(getModel().isAuthenticated());
2277                 }
2278             }
2279         
2280             @Override
2281             public void removeDataBinding() {
2282                 if (model != null) {
2283                     model.removePropertyChangeListener("authenticated", this);
2284                 }
2285             }
2286         });
2287         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_ANALYSIS_INSTRUMENT_ENABLED, true) {
2288         
2289             @Override
2290             public void applyDataBinding() {
2291                 if (model != null) {
2292                     model.addPropertyChangeListener("authenticated", this);
2293                 }
2294             }
2295         
2296             @Override
2297             public void processDataBinding() {
2298                 if (model != null) {
2299                     menuAnalysisInstrument.setEnabled(getModel().isAuthenticated());
2300                 }
2301             }
2302         
2303             @Override
2304             public void removeDataBinding() {
2305                 if (model != null) {
2306                     model.removePropertyChangeListener("authenticated", this);
2307                 }
2308             }
2309         });
2310         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_LOCATION_ENABLED, true) {
2311         
2312             @Override
2313             public void applyDataBinding() {
2314                 if (model != null) {
2315                     model.addPropertyChangeListener("authenticated", this);
2316                 }
2317             }
2318         
2319             @Override
2320             public void processDataBinding() {
2321                 if (model != null) {
2322                     menuLocation.setEnabled(getModel().isAuthenticated());
2323                 }
2324             }
2325         
2326             @Override
2327             public void removeDataBinding() {
2328                 if (model != null) {
2329                     model.removePropertyChangeListener("authenticated", this);
2330                 }
2331             }
2332         });
2333         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_USERS_ENABLED, true) {
2334         
2335             @Override
2336             public void applyDataBinding() {
2337                 if (model != null) {
2338                     model.addPropertyChangeListener("authenticated", this);
2339                 }
2340             }
2341         
2342             @Override
2343             public void processDataBinding() {
2344                 if (model != null) {
2345                     menuUsers.setEnabled(getModel().isAuthenticated());
2346                 }
2347             }
2348         
2349             @Override
2350             public void removeDataBinding() {
2351                 if (model != null) {
2352                     model.removePropertyChangeListener("authenticated", this);
2353                 }
2354             }
2355         });
2356         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_USER_ENABLED, true) {
2357         
2358             @Override
2359             public void applyDataBinding() {
2360                 if (model != null) {
2361                     model.addPropertyChangeListener("authenticated", this);
2362                 }
2363             }
2364         
2365             @Override
2366             public void processDataBinding() {
2367                 if (model != null) {
2368                     menuUser.setEnabled(getModel().isAuthenticated());
2369                 }
2370             }
2371         
2372             @Override
2373             public void removeDataBinding() {
2374                 if (model != null) {
2375                     model.removePropertyChangeListener("authenticated", this);
2376                 }
2377             }
2378         });
2379         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_DEPARTMENT_ENABLED, true) {
2380         
2381             @Override
2382             public void applyDataBinding() {
2383                 if (model != null) {
2384                     model.addPropertyChangeListener("authenticated", this);
2385                 }
2386             }
2387         
2388             @Override
2389             public void processDataBinding() {
2390                 if (model != null) {
2391                     menuDepartment.setEnabled(getModel().isAuthenticated());
2392                 }
2393             }
2394         
2395             @Override
2396             public void removeDataBinding() {
2397                 if (model != null) {
2398                     model.removePropertyChangeListener("authenticated", this);
2399                 }
2400             }
2401         });
2402         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_PMFMS_ENABLED, true) {
2403         
2404             @Override
2405             public void applyDataBinding() {
2406                 if (model != null) {
2407                     model.addPropertyChangeListener("authenticated", this);
2408                 }
2409             }
2410         
2411             @Override
2412             public void processDataBinding() {
2413                 if (model != null) {
2414                     menuPmfms.setEnabled(getModel().isAuthenticated());
2415                 }
2416             }
2417         
2418             @Override
2419             public void removeDataBinding() {
2420                 if (model != null) {
2421                     model.removePropertyChangeListener("authenticated", this);
2422                 }
2423             }
2424         });
2425         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FRACTION_ENABLED, true) {
2426         
2427             @Override
2428             public void applyDataBinding() {
2429                 if (model != null) {
2430                     model.addPropertyChangeListener("authenticated", this);
2431                 }
2432             }
2433         
2434             @Override
2435             public void processDataBinding() {
2436                 if (model != null) {
2437                     menuFraction.setEnabled(getModel().isAuthenticated());
2438                 }
2439             }
2440         
2441             @Override
2442             public void removeDataBinding() {
2443                 if (model != null) {
2444                     model.removePropertyChangeListener("authenticated", this);
2445                 }
2446             }
2447         });
2448         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_METHOD_ENABLED, true) {
2449         
2450             @Override
2451             public void applyDataBinding() {
2452                 if (model != null) {
2453                     model.addPropertyChangeListener("authenticated", this);
2454                 }
2455             }
2456         
2457             @Override
2458             public void processDataBinding() {
2459                 if (model != null) {
2460                     menuMethod.setEnabled(getModel().isAuthenticated());
2461                 }
2462             }
2463         
2464             @Override
2465             public void removeDataBinding() {
2466                 if (model != null) {
2467                     model.removePropertyChangeListener("authenticated", this);
2468                 }
2469             }
2470         });
2471         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_PARAMETER_ENABLED, true) {
2472         
2473             @Override
2474             public void applyDataBinding() {
2475                 if (model != null) {
2476                     model.addPropertyChangeListener("authenticated", this);
2477                 }
2478             }
2479         
2480             @Override
2481             public void processDataBinding() {
2482                 if (model != null) {
2483                     menuParameter.setEnabled(getModel().isAuthenticated());
2484                 }
2485             }
2486         
2487             @Override
2488             public void removeDataBinding() {
2489                 if (model != null) {
2490                     model.removePropertyChangeListener("authenticated", this);
2491                 }
2492             }
2493         });
2494         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_PMFM_ENABLED, true) {
2495         
2496             @Override
2497             public void applyDataBinding() {
2498                 if (model != null) {
2499                     model.addPropertyChangeListener("authenticated", this);
2500                 }
2501             }
2502         
2503             @Override
2504             public void processDataBinding() {
2505                 if (model != null) {
2506                     menuPmfm.setEnabled(getModel().isAuthenticated());
2507                 }
2508             }
2509         
2510             @Override
2511             public void removeDataBinding() {
2512                 if (model != null) {
2513                     model.removePropertyChangeListener("authenticated", this);
2514                 }
2515             }
2516         });
2517         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_MATRIX_ENABLED, true) {
2518         
2519             @Override
2520             public void applyDataBinding() {
2521                 if (model != null) {
2522                     model.addPropertyChangeListener("authenticated", this);
2523                 }
2524             }
2525         
2526             @Override
2527             public void processDataBinding() {
2528                 if (model != null) {
2529                     menuMatrix.setEnabled(getModel().isAuthenticated());
2530                 }
2531             }
2532         
2533             @Override
2534             public void removeDataBinding() {
2535                 if (model != null) {
2536                     model.removePropertyChangeListener("authenticated", this);
2537                 }
2538             }
2539         });
2540         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_TAXONOMIC_ENABLED, true) {
2541         
2542             @Override
2543             public void applyDataBinding() {
2544                 if (model != null) {
2545                     model.addPropertyChangeListener("authenticated", this);
2546                 }
2547             }
2548         
2549             @Override
2550             public void processDataBinding() {
2551                 if (model != null) {
2552                     menuTaxonomic.setEnabled(getModel().isAuthenticated());
2553                 }
2554             }
2555         
2556             @Override
2557             public void removeDataBinding() {
2558                 if (model != null) {
2559                     model.removePropertyChangeListener("authenticated", this);
2560                 }
2561             }
2562         });
2563         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_TAXON_GROUP_ENABLED, true) {
2564         
2565             @Override
2566             public void applyDataBinding() {
2567                 if (model != null) {
2568                     model.addPropertyChangeListener("authenticated", this);
2569                 }
2570             }
2571         
2572             @Override
2573             public void processDataBinding() {
2574                 if (model != null) {
2575                     menuTaxonGroup.setEnabled(getModel().isAuthenticated());
2576                 }
2577             }
2578         
2579             @Override
2580             public void removeDataBinding() {
2581                 if (model != null) {
2582                     model.removePropertyChangeListener("authenticated", this);
2583                 }
2584             }
2585         });
2586         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_TAXON_ENABLED, true) {
2587         
2588             @Override
2589             public void applyDataBinding() {
2590                 if (model != null) {
2591                     model.addPropertyChangeListener("authenticated", this);
2592                 }
2593             }
2594         
2595             @Override
2596             public void processDataBinding() {
2597                 if (model != null) {
2598                     menuTaxon.setEnabled(getModel().isAuthenticated());
2599                 }
2600             }
2601         
2602             @Override
2603             public void removeDataBinding() {
2604                 if (model != null) {
2605                     model.removePropertyChangeListener("authenticated", this);
2606                 }
2607             }
2608         });
2609         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_UNIT_ENABLED, true) {
2610         
2611             @Override
2612             public void applyDataBinding() {
2613                 if (model != null) {
2614                     model.addPropertyChangeListener("authenticated", this);
2615                 }
2616             }
2617         
2618             @Override
2619             public void processDataBinding() {
2620                 if (model != null) {
2621                     menuUnit.setEnabled(getModel().isAuthenticated());
2622                 }
2623             }
2624         
2625             @Override
2626             public void removeDataBinding() {
2627                 if (model != null) {
2628                     model.removePropertyChangeListener("authenticated", this);
2629                 }
2630             }
2631         });
2632         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_HELP_ENABLED, true) {
2633         
2634             @Override
2635             public void applyDataBinding() {
2636                 if (model != null) {
2637                     model.addPropertyChangeListener("screen", this);
2638                 }
2639             }
2640         
2641             @Override
2642             public void processDataBinding() {
2643                 if (model != null) {
2644                     menuHelp.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
2645                 }
2646             }
2647         
2648             @Override
2649             public void removeDataBinding() {
2650                 if (model != null) {
2651                     model.removePropertyChangeListener("screen", this);
2652                 }
2653             }
2654         });
2655         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SHOW_HELP_ENABLED, true) {
2656         
2657             @Override
2658             public void applyDataBinding() {
2659                 if (model != null) {
2660                     model.addPropertyChangeListener("screen", this);
2661                 }
2662             }
2663         
2664             @Override
2665             public void processDataBinding() {
2666                 if (model != null) {
2667                     menuShowHelp.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
2668                 }
2669             }
2670         
2671             @Override
2672             public void removeDataBinding() {
2673                 if (model != null) {
2674                     model.removePropertyChangeListener("screen", this);
2675                 }
2676             }
2677         });
2678         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_HELP_SITE_ENABLED, true) {
2679         
2680             @Override
2681             public void applyDataBinding() {
2682                 if (model != null) {
2683                     model.addPropertyChangeListener("screen", this);
2684                 }
2685             }
2686         
2687             @Override
2688             public void processDataBinding() {
2689                 if (model != null) {
2690                     menuHelpSite.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
2691                 }
2692             }
2693         
2694             @Override
2695             public void removeDataBinding() {
2696                 if (model != null) {
2697                     model.removePropertyChangeListener("screen", this);
2698                 }
2699             }
2700         });
2701         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_HELP_ABOUT_ENABLED, true) {
2702         
2703             @Override
2704             public void applyDataBinding() {
2705                 if (model != null) {
2706                     model.addPropertyChangeListener("screen", this);
2707                 }
2708             }
2709         
2710             @Override
2711             public void processDataBinding() {
2712                 if (model != null) {
2713                     menuHelpAbout.setEnabled(getModel().getScreen() != DaliScreen.CONFIGURATION);
2714                 }
2715             }
2716         
2717             @Override
2718             public void removeDataBinding() {
2719                 if (model != null) {
2720                     model.removePropertyChangeListener("screen", this);
2721                 }
2722             }
2723         });
2724     }
2725 
2726 }