View Javadoc
1   package fr.ifremer.reefdb.ui.swing.content;
2   
3   /*-
4    * #%L
5    * Reef DB :: UI
6    * $Id:$
7    * $HeadURL:$
8    * %%
9    * Copyright (C) 2014 - 2022 Ifremer
10   * %%
11   * This program is free software: you can redistribute it and/or modify
12   * it under the terms of the GNU Affero General Public License as published by
13   * the Free Software Foundation, either version 3 of the License, or
14   * (at your option) any later version.
15   * 
16   * This program is distributed in the hope that it will be useful,
17   * but WITHOUT ANY WARRANTY; without even the implied warranty of
18   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19   * GNU General Public License for more details.
20   * 
21   * You should have received a copy of the GNU Affero General Public License
22   * along with this program.  If not, see <http://www.gnu.org/licenses/>.
23   * #L%
24   */
25  
26  
27  import fr.ifremer.quadrige3.ui.swing.ApplicationUIContext;
28  import fr.ifremer.quadrige3.ui.swing.ApplicationUIUtil;
29  import fr.ifremer.quadrige3.ui.swing.content.MainUI;
30  import fr.ifremer.reefdb.ui.swing.ReefDbHelpBroker;
31  import fr.ifremer.reefdb.ui.swing.ReefDbScreen;
32  import fr.ifremer.reefdb.ui.swing.ReefDbUIContext;
33  import java.awt.BorderLayout;
34  import java.awt.Component;
35  import java.awt.GraphicsConfiguration;
36  import java.awt.event.ActionEvent;
37  import java.awt.event.ActionListener;
38  import javax.swing.JFrame;
39  import javax.swing.JMenu;
40  import javax.swing.JMenuItem;
41  import javax.swing.JSeparator;
42  import jaxx.runtime.JAXXContext;
43  import jaxx.runtime.JAXXObjectDescriptor;
44  import jaxx.runtime.JAXXUtil;
45  import jaxx.runtime.SwingUtil;
46  import jaxx.runtime.binding.DefaultJAXXBinding;
47  import jaxx.runtime.swing.BlockingLayerUI;
48  import jaxx.runtime.swing.StatusMessagePanel;
49  import jaxx.runtime.swing.help.JAXXHelpUI;
50  import jaxx.runtime.validator.swing.SwingValidatorMessageWidget;
51  import org.apache.commons.logging.Log;
52  import org.apache.commons.logging.LogFactory;
53  import org.jdesktop.swingx.JXTitledPanel;
54  import static org.nuiton.i18n.I18n.t;
55  
56  public class ReefDbMainUI extends MainUI<ReefDbMainUIHandler> implements JAXXHelpUI<ReefDbHelpBroker> {
57  
58      /*-----------------------------------------------------------------------*/
59      /*------------------ Constants for all public bindings ------------------*/
60      /*-----------------------------------------------------------------------*/
61  
62      public static final String BINDING_BUSY_BLOCK_LAYER_UI_BLOCK = "busyBlockLayerUI.block";
63      public static final String BINDING_BUSY_BLOCK_LAYER_UI_BLOCKING_COLOR = "busyBlockLayerUI.blockingColor";
64      public static final String BINDING_MENU_ADMINISTRATION_ENABLED = "menuAdministration.enabled";
65      public static final String BINDING_MENU_AUTHENTICATION_ENABLED = "menuAuthentication.enabled";
66      public static final String BINDING_MENU_CAMPAIGN_ENABLED = "menuCampaign.enabled";
67      public static final String BINDING_MENU_CONFIG_ANALYSIS_INSTRUMENT_FILTER_ENABLED = "menuConfigAnalysisInstrumentFilter.enabled";
68      public static final String BINDING_MENU_CONFIG_CONTEXTES_LOCAUX_ENABLED = "menuConfigContextesLocaux.enabled";
69      public static final String BINDING_MENU_CONFIG_FILTRES_LIEUX_ENABLED = "menuConfigFiltresLieux.enabled";
70      public static final String BINDING_MENU_CONFIG_FILTRES_PROGRAMMES_ENABLED = "menuConfigFiltresProgrammes.enabled";
71      public static final String BINDING_MENU_CONFIG_GENERALE_ENABLED = "menuConfigGenerale.enabled";
72      public static final String BINDING_MENU_CONFIG_GROUPE_TAXONS_ENABLED = "menuConfigGroupeTaxons.enabled";
73      public static final String BINDING_MENU_CONFIG_LIEUX_ENABLED = "menuConfigLieux.enabled";
74      public static final String BINDING_MENU_CONFIG_PROGRAMMES_STRATEGIES_ENABLED = "menuConfigProgrammesStrategies.enabled";
75      public static final String BINDING_MENU_CONFIG_PSFM_FILTER_ENABLED = "menuConfigPsfmFilter.enabled";
76      public static final String BINDING_MENU_CONFIG_REGLES_CONTROLES_ENABLED = "menuConfigReglesControles.enabled";
77      public static final String BINDING_MENU_CONFIG_SAMPLING_EQUIPMENT_FILTER_ENABLED = "menuConfigSamplingEquipmentFilter.enabled";
78      public static final String BINDING_MENU_CONFIG_SERVICES_FILTER_ENABLED = "menuConfigServicesFilter.enabled";
79      public static final String BINDING_MENU_CONFIG_TAXONS_ENABLED = "menuConfigTaxons.enabled";
80      public static final String BINDING_MENU_CONFIG_TAXON_FILTER_ENABLED = "menuConfigTaxonFilter.enabled";
81      public static final String BINDING_MENU_CONFIG_TAXON_GROUP_FILTER_ENABLED = "menuConfigTaxonGroupFilter.enabled";
82      public static final String BINDING_MENU_CONFIG_USER_FILTER_ENABLED = "menuConfigUserFilter.enabled";
83      public static final String BINDING_MENU_CONTEXT_FILTER_ENABLED = "menuContextFilter.enabled";
84      public static final String BINDING_MENU_DEPARTMENTS_ENABLED = "menuDepartments.enabled";
85      public static final String BINDING_MENU_FILE_EXPORT_ENABLED = "menuFileExport.enabled";
86      public static final String BINDING_MENU_FILE_EXTRACTION_ENABLED = "menuFileExtraction.enabled";
87      public static final String BINDING_MENU_FILE_HOME_ENABLED = "menuFileHome.enabled";
88      public static final String BINDING_MENU_FILE_IMPORT_ENABLED = "menuFileImport.enabled";
89      public static final String BINDING_MENU_FILE_SAISIE_ENABLED = "menuFileSaisie.enabled";
90      public static final String BINDING_MENU_FILTER_CAMPAIGN_ENABLED = "menuFilterCampaign.enabled";
91      public static final String BINDING_MENU_FILTER_ENABLED = "menuFilter.enabled";
92      public static final String BINDING_MENU_FRACTIONS_ENABLED = "menuFractions.enabled";
93      public static final String BINDING_MENU_HELP_ABOUT_ENABLED = "menuHelpAbout.enabled";
94      public static final String BINDING_MENU_HELP_ENABLED = "menuHelp.enabled";
95      public static final String BINDING_MENU_HELP_SITE_ENABLED = "menuHelpSite.enabled";
96      public static final String BINDING_MENU_MANAGE_DB_ENABLED = "menuManageDb.enabled";
97      public static final String BINDING_MENU_MATRICES_ENABLED = "menuMatrices.enabled";
98      public static final String BINDING_MENU_METHODS_ENABLED = "menuMethods.enabled";
99      public static final String BINDING_MENU_PARAMETERS_ENABLED = "menuParameters.enabled";
100     public static final String BINDING_MENU_PSFMS_ENABLED = "menuPsfms.enabled";
101     public static final String BINDING_MENU_QUADRUPLETS_ENABLED = "menuQuadruplets.enabled";
102     public static final String BINDING_MENU_REFERENTIAL_UNITS_ENABLED = "menuReferentialUnits.enabled";
103     public static final String BINDING_MENU_REFERENTIEL_ANALYSIS_INSTRUMENTS_ENABLED = "menuReferentielAnalysisInstruments.enabled";
104     public static final String BINDING_MENU_REFERENTIEL_ENABLED = "menuReferentiel.enabled";
105     public static final String BINDING_MENU_REFERENTIEL_SAMPLING_EQUIPMENTS_ENABLED = "menuReferentielSamplingEquipments.enabled";
106     public static final String BINDING_MENU_REFERENTIEL_TAXINOMIQUE_ENABLED = "menuReferentielTaxinomique.enabled";
107     public static final String BINDING_MENU_SHOW_HELP_ENABLED = "menuShowHelp.enabled";
108     public static final String BINDING_MENU_SYNCHRONIZATION_ENABLED = "menuSynchronization.enabled";
109     public static final String BINDING_MENU_SYNCHRONIZATION_EXPORT_ENABLED = "menuSynchronizationExport.enabled";
110     public static final String BINDING_MENU_SYNCHRONIZATION_EXPORT_TO_FILE_ENABLED = "menuSynchronizationExportToFile.enabled";
111     public static final String BINDING_MENU_SYNCHRONIZATION_IMPORT_ENABLED = "menuSynchronizationImport.enabled";
112     public static final String BINDING_MENU_SYNCHRONIZATION_IMPORT_FROM_FILE_ENABLED = "menuSynchronizationImportFromFile.enabled";
113     public static final String BINDING_MENU_SYNCHRONIZATION_IMPORT_REFERENTIAL_ENABLED = "menuSynchronizationImportReferential.enabled";
114     public static final String BINDING_MENU_SYNCHRONIZATION_IMPORT_REFERENTIAL_FROM_FILE_ENABLED = "menuSynchronizationImportReferentialFromFile.enabled";
115     public static final String BINDING_MENU_SYNCHRONIZATION_LOG_ENABLED = "menuSynchronizationLog.enabled";
116     public static final String BINDING_MENU_USERS_ENABLED = "menuUsers.enabled";
117     public static final String BINDING_MENU_USERS_ORGANISMES_ENABLED = "menuUsersOrganismes.enabled";
118 
119     /*-----------------------------------------------------------------------*/
120     /*--------------- Constants for all none public bindings  ---------------*/
121     /*-----------------------------------------------------------------------*/
122 
123     private static final String BINDING_$JSEPARATOR2_ENABLED = "$JSeparator2.enabled";
124     private static final String BINDING_$JSEPARATOR3_ENABLED = "$JSeparator3.enabled";
125 
126     /*-----------------------------------------------------------------------*/
127     /*------------------------- Other static fields -------------------------*/
128     /*-----------------------------------------------------------------------*/
129 
130     private static final String $jaxxObjectDescriptor = "H4sIAAAAAAAAAN1cS28cxxEeUXyIkizbkqXo5YikZYWSraElObZsyZL4JqWlqGhJwIgOzOxu7+7YszOjeUjL0E5yDRAEvhpIgOQQ5JJLgNxyCnzIKQFyyCXIXwiCHHIN0t3z7sd0985SgG3AhLBTXVP1VXV3VXVN/+5f2pjvadOfGP2+7oV2YPaAfn/+4483G5+AZrAE/KZnuoHjadF/B0a0kSfakVb6ux9obzypoeFz8fC5RafnOjawc6Nv1bTDfrBrAb8LQBBorxdHNH1/rp4+vtV3Qy/hmgrF4vqr//x75IvWT349oml9F0o3D1WZEo3KNBmtaSNmK9COwzc9M+Ysw+5AMTzT7kB5X0K/LVqG7z80euCp9iNtoqaNu4YHmQXajLzKmAce33cDbbJnmPaKB1kG2lzb0822B3rA0z0A2q2GHpq6/xwKoDcdO4D89Mfw96XGBhy0ve66mM94oI31nBawAu1KCYdo5Pb6IuLUD7LB4w3P+RR4gfaWcPQasNwFTJ0Nf6UR+rsLltP8tGbsAm97HaJRwDxigCngP2KibPxoD9hhoL2G8O3HxPc34G8LRu4thxDVimlBmF6lKBHNyZT0aEK65iBUT1Lk6wHoIdrT6ZBjyZC6Yfomtu7rRYrjCcVyP/CMZmA6NoPq6MX7dQB9woAGfyfQThVenT7hvHsd+owXoF/PFineRhT1XbvZ9Rzb/KGBXh4RPwZtgBzQNKwVz+khLqlUb6bjp7njSwYdyxTmiHWBwTYi3nIKTN9i4nMN/XaxyPIEg2X65szCF2UASV9/LR13hjuOQZyX9XoqazmzDKsSZjcYzE4xmNWcDoMTdsT5Vs+0TR96IgehiCoMugiLplFw17tFKrgetM3OKrCBZ+SMdrc4nzYM2+iApQbj+asxF7SqQLsHwEsFultEK3pVTAr8mtM0wn7KcTUlPhz7Xp7VKjUV4dNFo+caZifT7UFKNZO9cN42rF3f9NdtiFgIf8+JSYw6m43aMvqOveo5oculns6o61ASC07z5aeh6Za+4rVs0LYPPC7d6Rxz4D0zm8Dn0p7LaBGNB/xHntOBu0oP+OUiPPLbPS7bUxTbmglyFssoTxK4cVl+O/fqVMQ6cmTQMXPCEu5HGZrpWY9BB8YMyL88x2IyexkRp4sEsBieOkOQ0N6TMe4UXSE3ivIH1iC83CEn8De9jgEndGyus0UyLPQSWj6CIqdeSjKZcuI9RIZmMX8Jz6Z4S8tG+ynBETz9QdB1WqzHeJ94ZOAIJv96vyj+90Kj5YUu3L9ZJPESA2OtJmA9P0ugC33MtJ2e+TQEDJVybovnL8AumfH9cRa7EG7Lonk5oyl6f6c4n3Jbz7ZtMu2NgxgUQzFWbAxBves8T57jsT8tPkfP6mYAGM9fSp7PN5wwYBAc8mPm0O8KcclCGASODUMtTztXCNxgGK5nYXgWJx94oo15IfwZLlJP6Mj9MXwUxeyniZgdMcRP/3fqxN//+M8/rCSB+iP47pNM0lyeAQNo13NcGKma6NUvR1F6GJjW3Ibh3nqiTfrAgkkKTkLOMwSrx4+hcPB9OIzU0XB9zfC7kMXYxD/+9NWpH/ztoDayoh22HKO1YiD6dW0y6MLFr+tYrb579x6W6OjzQ/DvK/D/g4E2EfpgHYXo2ljbsHwI1lgDxbvQw/ZwaK6b/gIMk2cvfw4t1YhD4UXHgtGCdj0m6YAgcrMw2tZnL0c/QaJC8AyZ9CG45xngpho2Jv/83xP1399LAD4AFT7DJc9AHvu+Nm7acOECOBdCrjPByX2OuD4IW06WzrASHI2RH7hxVP8l/vtLFp6TZhNFZjDiCLT39+rIT7eRoZoegBsFfoDgnp2J0pSdG9d11+7MYMDwUwz0yRZoG6EVLFqODzah42BYoW/s3ccZl760ufNwc2tt/eHqzubDncXaZn0ZDhsLzADlGdNxDoQyNB3/phsuXNSjcAoh0ceZx28wvuhfv9XyCZ1IzxE4qc1rN+0NG/Rg0NeEm2P+jWg+620YR+u9lGAUBU5QMSYdS5o0bRIJc0hCmC7Mp3LCHN/JwTHfjLC9tZdLIp+iRd/sgBtZHhntM/qqs+Wg9CwapjeRy0DoD0ePo6k02o3yN/o1D8Au8ouSdBVP6yhnhcQwvoA5q6+vbW4gA3NRjF44ttPFq+SbezMURSw+RgJRzUB2RwLHsbZMdwtzPcOGLTAhxwlgGw0LtAJtK5vzdejUAE72qemPpiKJo1+wtFOXLk2JKRc3H66sr37OcoBCMixyggnKCaYobXycIYvc4G6ZcXI+sNmAMcuz3FCOK4CWGaSG+xZHqKqmO8dTljDesoTxIpNk5jP9XDYGWngNp61F1CHU7XWRUgGk9QqRze5I2iyrgJSZbBzgXDg1Gg1uJllVw10o0/qFGY9RIpLY6ggDztLqF3J9ejOglS+OyCt/RVp5vobF2oNIw3FKw+9Q8jbzUY/ISz+U9NI49S/z0Oi9KZD0hlcQLHNSne+kRVXY3koPLo6CDssFv1isUQef4V6FIpEI/TXB9p6UqS2nA19QLECV2gJGZz5e6blOXeCVGWOObwxCNbY13hAhUmaOooLqs/27Aldo5qtq9NR/W2V4fh04s6eysNEFPvXQVheI2uao+KbUOJbUuSJixX002T7jEqhS7FMeAidV1bKpMRm992qrwd5LCemymXGZPzNSVST2U3IIsZ+uSWwpG/MP51eXd5YWVLfUQulZfbW7JXAe13M6RAFSKb8p2X7i4maZYSfciCY163V1cUnLvTeAxoRBf7E3m5goPpBYjh5Bw3722dQ0t1iR0icHGNs+BAXVrlHN4jKy/TTT+PP4JMBC5cvZIlnM8HFo25AVx0kEJWV1t7kmWlbjYrTQWW7LxioxwzJvOZS8NXUXei/niEk6iXDbSPX7urtG4exA3RHmJPZXz7GG5Qao3lmDkXXpboAKr1ctSJX6wSU5KUkvuCKp3NfdB/jnQyKHGB3IISC4w9pE4piL8AcFs2NCdbMjFThhL/8cVx3Ne3IxoU8epYngfSAJbxQcUid1bLjfH1BYEn9RTMJVmmMQ8Rm0umHm5WQ0qJNRkWVqSpahT17Zprk5qLikbW4PrDfHOBJNCOrW+UBOyiDtXxBZZUnJKllfBNsa76iKR1rhXWX9OOiXNHOooy45/y1HrpCyoIR5zWGWUGLEJXPrRDQSb1HaQWrGQZvTLKKOtCiHieWJsycR0PNKQLPTthjnq0qCkTCLsgpCLQ7KZZ0+++bUSUIwXKfmZD1qTp1lRQM5dapZWZWvKK46yjckLd9rC71Z9owm9mbIkY2uKArMiUQiK2kYrA0HVWb/2b7hGvqFwuIQcEWpSCVckUgD4oq1EeOatRbuW4DRSjvShhtgZJ1ulQKMTLwBA4ycfhy8uS2a6pirBD3DOnzPxXNspN9SEIoEWZQqFxTi4MvuKh2+Q3tZ655uoaBlWBWd8rhN5MiUWKqOTOvFAZrscVQ/31lUECUsdrzShz4fDs6MpR2rzVZdw48UhMJe7fTMJq2bis1SNtzsht0TO/xSTF6qTq6ndlj7qiipFAWqPPlUqy9cPcVJT77VWN0AKi4fSEH/gQr0bNRFKQstFIm36ICboRYHaapVW30Gq2wDKHxlrEwqSzZmwW4RBXE/vnrHgCjmzQtASS+KTnODB+8WID+x2N/tOkSt9qKpcFNyKqC+/epbNRapylYd6VQW45PfGqhjvKIgD1WLFgK+LAm4ZO1dZeulhSVNIapuC1Qvq8OXfgCkbqRVBUnporTQSiuSVpKtw9+pJi5pp4WK2pfV5Mu/71K3lEr4G20tbvLJlMhKH8l2nCQM2cZRCTAICUnDqNiZVJZjFOIrsv0NYOO9HX/SNqx20+gDuerBa162KsFrQUcO6Pkv+9QRV5mekTRtyUZ02ex6hd2GHqOuHu2103b0Iu4q2w+hKQf54keXL8Tb0ceVwrqGtLdjbkPzdsxtCN4e6cjBvPCNqTrka4Mveh2ZQ9gNaehRNySq7KfLJc48fbY17lYUm7RKhY2uU3ZWe6KwAUQaqRtpgJ1J4tBFNn3gH7eopMGZXCT26ita2SEM+Vm2OtqivguyTDe0NI17/CIqOpMSkQirZNdlBzHZ5/j768PyRzCyhTjR4YuKJ/NPYFQ8WXwMQ96PoF5Vmabk8aPWQrqGcppHOsTvrFjX4Ayj+z1RysdNl7qJr77hlIzEn/9wvIi6iCdWpKyr9Wws2dVIpKuFQhS3O16ojrg7XowI0f4avoj2V6m+VqlLkIbR88zGaAhZaySthHscK7pHSQssU1ZxCyxbxW9E5zPTQ/bBLaLPfYfhFtElWipuQXxqLHSLhF7RLWIVv4luEWGuvnHSLXEJZvjmCmqtiC1Ef6bOGJYH+dyemo7H4r4tIOfvyopR3i6nWOJ4Q1BMzmL0RKZLBwzoGfcKimb2o0FCg4T5kEIEuvQgp5u49CCJEbE0qBpX6aJHddPTsTtDLVl7yxzxFC+ZrLDR01+slUhOWpM+uytTu6IJxXdtqttN4NbRorJkBEZ076bIcvek9+CMZ5nRTiRGQ9KQezHd1Vgqu7iNt1z1itYTXWkqst0YZTv6+/VEAcvpKPWul39JHgtdc0qvvDiSmAq+PDXR+TIRSYOUEnM7ZOibTdV3ZMZ9VMBy6S2Yca0T/hx+aNl5eoufem2H/iA/uZQvpwdxCRYWPtaNvlwqu9Qv+ez/ZPrZv2m3QD/+xJ9bEU+uHFRXhjaIbwaAqwh6WGKk6LHEPUD4JQKlknsS1S9+YFw8gu5THEazFUIaX85YNkPH8OuGe+vZcu1RVsA7xVYwg/5SyYUqGAr2nRFnOcCVnYCl11WK7HQgE++1onh8RxhtOK1dCcbjXWB2ulCD47ejmw+njCDwzEYYgDsU3wPo72EZcZ+braALHx/8anAmo2YUFd1uwR1uqgHnM7QyR6jzQn5ImL+gP39lc7hQmcN0ZQ6zlTlcqcxBr8zh3coc3qvM4cPKHO5U5rBQmcNSZQ4rlTkIL54RcmhV5tCuzOFnlTn8vDKHLyCH/wOHYTaZYmQAAA==";
131     private static final Log log = LogFactory.getLog(ReefDbMainUI.class);
132     private static final long serialVersionUID = 1L;
133 
134     /*-----------------------------------------------------------------------*/
135     /*--------------------------- Internal states ---------------------------*/
136     /*-----------------------------------------------------------------------*/
137 
138     private boolean allComponentsCreated;
139 
140     /*-----------------------------------------------------------------------*/
141     /*------------------------ Protected components  ------------------------*/
142     /*-----------------------------------------------------------------------*/
143 
144     protected ReefDbHelpBroker broker;
145     protected final ReefDbMainUIHandler handler = createHandler();
146     protected ReefDbMainUI mainFrame = this;
147     protected JMenu menuAdministration;
148     protected JMenuItem menuAuthentication;
149     protected JMenuItem menuCampaign;
150     protected JMenuItem menuConfigAnalysisInstrumentFilter;
151     protected JMenuItem menuConfigContextesLocaux;
152     protected JMenuItem menuConfigFiltresLieux;
153     protected JMenuItem menuConfigFiltresProgrammes;
154     protected JMenuItem menuConfigGenerale;
155     protected JMenuItem menuConfigGroupeTaxons;
156     protected JMenuItem menuConfigLieux;
157     protected JMenuItem menuConfigProgrammesStrategies;
158     protected JMenuItem menuConfigPsfmFilter;
159     protected JMenuItem menuConfigReglesControles;
160     protected JMenuItem menuConfigSamplingEquipmentFilter;
161     protected JMenuItem menuConfigServicesFilter;
162     protected JMenuItem menuConfigTaxonFilter;
163     protected JMenuItem menuConfigTaxonGroupFilter;
164     protected JMenuItem menuConfigTaxons;
165     protected JMenuItem menuConfigUserFilter;
166     protected JMenu menuContextFilter;
167     protected JMenuItem menuDepartments;
168     protected JMenu menuFile;
169     protected JMenu menuFileExport;
170     protected JMenuItem menuFileExtraction;
171     protected JMenuItem menuFileHome;
172     protected JMenu menuFileImport;
173     protected JMenuItem menuFileSaisie;
174     protected JMenu menuFilter;
175     protected JMenuItem menuFilterCampaign;
176     protected JMenuItem menuFractions;
177     protected JMenu menuHelp;
178     protected JMenuItem menuHelpAbout;
179     protected JMenuItem menuHelpSite;
180     protected JMenuItem menuManageDb;
181     protected JMenuItem menuMatrices;
182     protected JMenuItem menuMethods;
183     protected JMenuItem menuParameters;
184     protected JMenu menuPsfms;
185     protected JMenuItem menuQuadruplets;
186     protected JMenuItem menuReferentialUnits;
187     protected JMenu menuReferentiel;
188     protected JMenuItem menuReferentielAnalysisInstruments;
189     protected JMenuItem menuReferentielSamplingEquipments;
190     protected JMenu menuReferentielTaxinomique;
191     protected JMenuItem menuShowHelp;
192     protected JMenu menuSynchronization;
193     protected JMenuItem menuSynchronizationExport;
194     protected JMenuItem menuSynchronizationExportToFile;
195     protected JMenuItem menuSynchronizationImport;
196     protected JMenuItem menuSynchronizationImportFromFile;
197     protected JMenuItem menuSynchronizationImportReferential;
198     protected JMenuItem menuSynchronizationImportReferentialFromFile;
199     protected JMenuItem menuSynchronizationLog;
200     protected JMenuItem menuUsers;
201     protected JMenu menuUsersOrganismes;
202 
203     /*-----------------------------------------------------------------------*/
204     /*------------------------- Private components  -------------------------*/
205     /*-----------------------------------------------------------------------*/
206 
207     private JSeparator $JSeparator0;
208     private JSeparator $JSeparator1;
209     private JSeparator $JSeparator2;
210     private JSeparator $JSeparator3;
211 
212     /*-----------------------------------------------------------------------*/
213     /*---------------------------- Constructors  ----------------------------*/
214     /*-----------------------------------------------------------------------*/
215 
216     public ReefDbMainUI(ReefDbUIContext context) {
217         super(context);
218               	  ApplicationUIUtil.setApplicationContext(this, context);
219             $initialize();
220     }
221 
222     public ReefDbMainUI(GraphicsConfiguration param0) {
223         super(param0);
224         $initialize();
225     }
226 
227     public ReefDbMainUI(JAXXContext param0, String param1) {
228         super(param0 ,param1);
229         $initialize();
230     }
231 
232     public ReefDbMainUI(String param0) {
233         super(param0);
234         $initialize();
235     }
236 
237     public ReefDbMainUI(JAXXContext param0, String param1, GraphicsConfiguration param2) {
238         super(param0 ,param1 ,param2);
239         $initialize();
240     }
241 
242     public ReefDbMainUI(String param0, GraphicsConfiguration param1) {
243         super(param0 ,param1);
244         $initialize();
245     }
246 
247     public ReefDbMainUI(ApplicationUIContext param0) {
248         super(param0);
249         $initialize();
250     }
251 
252     public ReefDbMainUI(JAXXContext param0) {
253         super(param0);
254         $initialize();
255     }
256 
257     public ReefDbMainUI() {
258         $initialize();
259     }
260 
261     public ReefDbMainUI(JAXXContext param0, GraphicsConfiguration param1) {
262         super(param0 ,param1);
263         $initialize();
264     }
265 
266     /*-----------------------------------------------------------------------*/
267     /*--------------------------- Statics methods ---------------------------*/
268     /*-----------------------------------------------------------------------*/
269 
270     public static JAXXObjectDescriptor $getJAXXObjectDescriptor() {
271         return JAXXUtil.decodeCompressedJAXXObjectDescriptor($jaxxObjectDescriptor);
272     }
273 
274     /*-----------------------------------------------------------------------*/
275     /*---------------------------- Event methods ----------------------------*/
276     /*-----------------------------------------------------------------------*/
277 
278     public void doActionPerformed__on__menuHelpSite(ActionEvent event) {
279         if (log.isDebugEnabled()) {
280             log.debug(event);
281         }
282         handler.gotoSite();
283     }
284 
285     public void doActionPerformed__on__menuShowHelp(ActionEvent event) {
286         if (log.isDebugEnabled()) {
287             log.debug(event);
288         }
289         handler.showHelp();
290     }
291 
292     /*-----------------------------------------------------------------------*/
293     /*----------------------- Public acessor methods  -----------------------*/
294     /*-----------------------------------------------------------------------*/
295 
296     public ReefDbHelpBroker getBroker() {
297         return broker;
298     }
299 
300     public ReefDbMainUIHandler getHandler() {
301         return handler;
302     }
303 
304     public JMenu getMenuAdministration() {
305         return menuAdministration;
306     }
307 
308     public JMenuItem getMenuAuthentication() {
309         return menuAuthentication;
310     }
311 
312     public JMenuItem getMenuCampaign() {
313         return menuCampaign;
314     }
315 
316     public JMenuItem getMenuConfigAnalysisInstrumentFilter() {
317         return menuConfigAnalysisInstrumentFilter;
318     }
319 
320     public JMenuItem getMenuConfigContextesLocaux() {
321         return menuConfigContextesLocaux;
322     }
323 
324     public JMenuItem getMenuConfigFiltresLieux() {
325         return menuConfigFiltresLieux;
326     }
327 
328     public JMenuItem getMenuConfigFiltresProgrammes() {
329         return menuConfigFiltresProgrammes;
330     }
331 
332     public JMenuItem getMenuConfigGenerale() {
333         return menuConfigGenerale;
334     }
335 
336     public JMenuItem getMenuConfigGroupeTaxons() {
337         return menuConfigGroupeTaxons;
338     }
339 
340     public JMenuItem getMenuConfigLieux() {
341         return menuConfigLieux;
342     }
343 
344     public JMenuItem getMenuConfigProgrammesStrategies() {
345         return menuConfigProgrammesStrategies;
346     }
347 
348     public JMenuItem getMenuConfigPsfmFilter() {
349         return menuConfigPsfmFilter;
350     }
351 
352     public JMenuItem getMenuConfigReglesControles() {
353         return menuConfigReglesControles;
354     }
355 
356     public JMenuItem getMenuConfigSamplingEquipmentFilter() {
357         return menuConfigSamplingEquipmentFilter;
358     }
359 
360     public JMenuItem getMenuConfigServicesFilter() {
361         return menuConfigServicesFilter;
362     }
363 
364     public JMenuItem getMenuConfigTaxonFilter() {
365         return menuConfigTaxonFilter;
366     }
367 
368     public JMenuItem getMenuConfigTaxonGroupFilter() {
369         return menuConfigTaxonGroupFilter;
370     }
371 
372     public JMenuItem getMenuConfigTaxons() {
373         return menuConfigTaxons;
374     }
375 
376     public JMenuItem getMenuConfigUserFilter() {
377         return menuConfigUserFilter;
378     }
379 
380     public JMenu getMenuContextFilter() {
381         return menuContextFilter;
382     }
383 
384     public JMenuItem getMenuDepartments() {
385         return menuDepartments;
386     }
387 
388     public JMenu getMenuFile() {
389         return menuFile;
390     }
391 
392     public JMenu getMenuFileExport() {
393         return menuFileExport;
394     }
395 
396     public JMenuItem getMenuFileExtraction() {
397         return menuFileExtraction;
398     }
399 
400     public JMenuItem getMenuFileHome() {
401         return menuFileHome;
402     }
403 
404     public JMenu getMenuFileImport() {
405         return menuFileImport;
406     }
407 
408     public JMenuItem getMenuFileSaisie() {
409         return menuFileSaisie;
410     }
411 
412     public JMenu getMenuFilter() {
413         return menuFilter;
414     }
415 
416     public JMenuItem getMenuFilterCampaign() {
417         return menuFilterCampaign;
418     }
419 
420     public JMenuItem getMenuFractions() {
421         return menuFractions;
422     }
423 
424     public JMenu getMenuHelp() {
425         return menuHelp;
426     }
427 
428     public JMenuItem getMenuHelpAbout() {
429         return menuHelpAbout;
430     }
431 
432     public JMenuItem getMenuHelpSite() {
433         return menuHelpSite;
434     }
435 
436     public JMenuItem getMenuManageDb() {
437         return menuManageDb;
438     }
439 
440     public JMenuItem getMenuMatrices() {
441         return menuMatrices;
442     }
443 
444     public JMenuItem getMenuMethods() {
445         return menuMethods;
446     }
447 
448     public JMenuItem getMenuParameters() {
449         return menuParameters;
450     }
451 
452     public JMenu getMenuPsfms() {
453         return menuPsfms;
454     }
455 
456     public JMenuItem getMenuQuadruplets() {
457         return menuQuadruplets;
458     }
459 
460     public JMenuItem getMenuReferentialUnits() {
461         return menuReferentialUnits;
462     }
463 
464     public JMenu getMenuReferentiel() {
465         return menuReferentiel;
466     }
467 
468     public JMenuItem getMenuReferentielAnalysisInstruments() {
469         return menuReferentielAnalysisInstruments;
470     }
471 
472     public JMenuItem getMenuReferentielSamplingEquipments() {
473         return menuReferentielSamplingEquipments;
474     }
475 
476     public JMenu getMenuReferentielTaxinomique() {
477         return menuReferentielTaxinomique;
478     }
479 
480     public JMenuItem getMenuShowHelp() {
481         return menuShowHelp;
482     }
483 
484     public JMenu getMenuSynchronization() {
485         return menuSynchronization;
486     }
487 
488     public JMenuItem getMenuSynchronizationExport() {
489         return menuSynchronizationExport;
490     }
491 
492     public JMenuItem getMenuSynchronizationExportToFile() {
493         return menuSynchronizationExportToFile;
494     }
495 
496     public JMenuItem getMenuSynchronizationImport() {
497         return menuSynchronizationImport;
498     }
499 
500     public JMenuItem getMenuSynchronizationImportFromFile() {
501         return menuSynchronizationImportFromFile;
502     }
503 
504     public JMenuItem getMenuSynchronizationImportReferential() {
505         return menuSynchronizationImportReferential;
506     }
507 
508     public JMenuItem getMenuSynchronizationImportReferentialFromFile() {
509         return menuSynchronizationImportReferentialFromFile;
510     }
511 
512     public JMenuItem getMenuSynchronizationLog() {
513         return menuSynchronizationLog;
514     }
515 
516     public JMenuItem getMenuUsers() {
517         return menuUsers;
518     }
519 
520     public JMenu getMenuUsersOrganismes() {
521         return menuUsersOrganismes;
522     }
523 
524     @Override
525     public ReefDbUIContext getModel() {
526         return (ReefDbUIContext) super.getModel();
527     }
528 
529     /*-----------------------------------------------------------------------*/
530     /*---------------------------- Other methods ----------------------------*/
531     /*-----------------------------------------------------------------------*/
532 
533     @Override
534     public void registerHelpId(ReefDbHelpBroker broker, Component component, String helpId) {
535         broker.installUI(component, helpId);
536     }
537 
538     @Override
539     public void showHelp(String helpId) {
540         getBroker().showHelp(this, helpId);
541     }
542 
543     /*-----------------------------------------------------------------------*/
544     /*--------------------- Protected acessors methods  ---------------------*/
545     /*-----------------------------------------------------------------------*/
546 
547     protected JSeparator get$JSeparator0() {
548         return $JSeparator0;
549     }
550 
551     protected JSeparator get$JSeparator1() {
552         return $JSeparator1;
553     }
554 
555     protected JSeparator get$JSeparator2() {
556         return $JSeparator2;
557     }
558 
559     protected JSeparator get$JSeparator3() {
560         return $JSeparator3;
561     }
562 
563     /*-----------------------------------------------------------------------*/
564     /*--------------------- Components creation methods ---------------------*/
565     /*-----------------------------------------------------------------------*/
566 
567     protected void addChildrenToMenu() {
568         if (!allComponentsCreated) {
569             return;
570         }
571         menu.add(menuFile);
572         menu.add(menuSynchronization);
573         menu.add(menuAdministration);
574         menu.add(menuHelp);
575     }
576 
577     protected void addChildrenToMenuAdministration() {
578         if (!allComponentsCreated) {
579             return;
580         }
581         menuAdministration.add(menuAuthentication);
582         menuAdministration.add(menuConfigGenerale);
583         menuAdministration.add(menuManageDb);
584         menuAdministration.add(menuContextFilter);
585         menuAdministration.add(menuConfigProgrammesStrategies);
586         menuAdministration.add(menuCampaign);
587         menuAdministration.add(menuConfigReglesControles);
588         menuAdministration.add(menuReferentiel);
589     }
590 
591     protected void addChildrenToMenuContextFilter() {
592         if (!allComponentsCreated) {
593             return;
594         }
595         menuContextFilter.add(menuConfigContextesLocaux);
596         menuContextFilter.add(menuFilter);
597     }
598 
599     protected void addChildrenToMenuFile() {
600         if (!allComponentsCreated) {
601             return;
602         }
603         menuFile.add(menuFileHome);
604         menuFile.add(menuFileSaisie);
605         menuFile.add(menuFileExtraction);
606         menuFile.add($JSeparator0);
607         menuFile.add(menuFileImport);
608         menuFile.add(menuFileExport);
609         menuFile.add($JSeparator1);
610     }
611 
612     protected void addChildrenToMenuFileExport() {
613         if (!allComponentsCreated) {
614             return;
615         }
616         menuFileExport.add(menuSynchronizationExportToFile);
617     }
618 
619     protected void addChildrenToMenuFileImport() {
620         if (!allComponentsCreated) {
621             return;
622         }
623         menuFileImport.add(menuSynchronizationImportReferentialFromFile);
624         menuFileImport.add(menuSynchronizationImportFromFile);
625     }
626 
627     protected void addChildrenToMenuFilter() {
628         if (!allComponentsCreated) {
629             return;
630         }
631         menuFilter.add(menuFilterCampaign);
632         menuFilter.add(menuConfigAnalysisInstrumentFilter);
633         menuFilter.add(menuConfigTaxonGroupFilter);
634         menuFilter.add(menuConfigSamplingEquipmentFilter);
635         menuFilter.add(menuConfigUserFilter);
636         menuFilter.add(menuConfigServicesFilter);
637         menuFilter.add(menuConfigFiltresProgrammes);
638         menuFilter.add(menuConfigPsfmFilter);
639         menuFilter.add(menuConfigFiltresLieux);
640         menuFilter.add(menuConfigTaxonFilter);
641     }
642 
643     protected void addChildrenToMenuHelp() {
644         if (!allComponentsCreated) {
645             return;
646         }
647         menuHelp.add(menuShowHelp);
648         menuHelp.add(menuHelpSite);
649         menuHelp.add(menuHelpAbout);
650     }
651 
652     protected void addChildrenToMenuPsfms() {
653         if (!allComponentsCreated) {
654             return;
655         }
656         menuPsfms.add(menuFractions);
657         menuPsfms.add(menuMethods);
658         menuPsfms.add(menuParameters);
659         menuPsfms.add(menuQuadruplets);
660         menuPsfms.add(menuMatrices);
661     }
662 
663     protected void addChildrenToMenuReferentiel() {
664         if (!allComponentsCreated) {
665             return;
666         }
667         menuReferentiel.add(menuReferentielAnalysisInstruments);
668         menuReferentiel.add(menuReferentielSamplingEquipments);
669         menuReferentiel.add(menuUsersOrganismes);
670         menuReferentiel.add(menuPsfms);
671         menuReferentiel.add(menuReferentielTaxinomique);
672         menuReferentiel.add(menuConfigLieux);
673         menuReferentiel.add(menuReferentialUnits);
674     }
675 
676     protected void addChildrenToMenuReferentielTaxinomique() {
677         if (!allComponentsCreated) {
678             return;
679         }
680         menuReferentielTaxinomique.add(menuConfigGroupeTaxons);
681         menuReferentielTaxinomique.add(menuConfigTaxons);
682     }
683 
684     protected void addChildrenToMenuSynchronization() {
685         if (!allComponentsCreated) {
686             return;
687         }
688         menuSynchronization.add(menuSynchronizationImportReferential);
689         menuSynchronization.add(menuSynchronizationImport);
690         menuSynchronization.add($JSeparator2);
691         menuSynchronization.add(menuSynchronizationExport);
692         menuSynchronization.add($JSeparator3);
693         menuSynchronization.add(menuSynchronizationLog);
694     }
695 
696     protected void addChildrenToMenuUsersOrganismes() {
697         if (!allComponentsCreated) {
698             return;
699         }
700         menuUsersOrganismes.add(menuDepartments);
701         menuUsersOrganismes.add(menuUsers);
702     }
703 
704     protected void createBroker() {
705         $objectMap.put("broker", broker = new ReefDbHelpBroker("reefdb.main.help"));
706     }
707 
708     @Override
709     protected void createBusyBlockLayerUI() {
710         super.createBusyBlockLayerUI();
711         busyBlockLayerUI.setUseIcon(false);
712     }
713 
714     protected ReefDbMainUIHandler createHandler() {
715         return new ReefDbMainUIHandler();
716     }
717 
718     @Override
719     protected void createMenu() {
720         super.createMenu();
721         menu.setName("menu");
722     }
723 
724     protected void createMenuAdministration() {
725         $objectMap.put("menuAdministration", menuAdministration = new JMenu());
726         
727         menuAdministration.setName("menuAdministration");
728         menuAdministration.setText(t("reefdb.main.menu.administration"));
729     }
730 
731     protected void createMenuAuthentication() {
732         $objectMap.put("menuAuthentication", menuAuthentication = new JMenuItem());
733         
734         menuAuthentication.setName("menuAuthentication");
735         menuAuthentication.setText(t("reefdb.main.menu.authentication"));
736         menuAuthentication.setToolTipText(t("reefdb.main.menu.authentication.tip"));
737         menuAuthentication.putClientProperty("help", "reefdb.main.menu.action.authentication.help");
738         menuAuthentication.putClientProperty("applicationAction", fr.ifremer.quadrige3.ui.swing.content.login.AuthenticationAction.class);
739     }
740 
741     protected void createMenuCampaign() {
742         $objectMap.put("menuCampaign", menuCampaign = new JMenuItem());
743         
744         menuCampaign.setName("menuCampaign");
745         menuCampaign.setText(t("reefdb.main.menu.configuration.campaigns"));
746         menuCampaign.setToolTipText(t("reefdb.main.menu.configuration.campaigns.tip"));
747         menuCampaign.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToCampaignAction.class);
748     }
749 
750     protected void createMenuConfigAnalysisInstrumentFilter() {
751         $objectMap.put("menuConfigAnalysisInstrumentFilter", menuConfigAnalysisInstrumentFilter = new JMenuItem());
752         
753         menuConfigAnalysisInstrumentFilter.setName("menuConfigAnalysisInstrumentFilter");
754         menuConfigAnalysisInstrumentFilter.setText(t("reefdb.main.menu.configuration.filter.analysisInstrument"));
755         menuConfigAnalysisInstrumentFilter.setToolTipText(t("reefdb.main.menu.configuration.filter.analysisInstrument.tip"));
756         menuConfigAnalysisInstrumentFilter.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterAnalysisInstrumentAction.class);
757     }
758 
759     protected void createMenuConfigContextesLocaux() {
760         $objectMap.put("menuConfigContextesLocaux", menuConfigContextesLocaux = new JMenuItem());
761         
762         menuConfigContextesLocaux.setName("menuConfigContextesLocaux");
763         menuConfigContextesLocaux.setText(t("reefdb.main.menu.configuration.context"));
764         menuConfigContextesLocaux.setToolTipText(t("reefdb.main.menu.configuration.context.tip"));
765         menuConfigContextesLocaux.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToContextAction.class);
766     }
767 
768     protected void createMenuConfigFiltresLieux() {
769         $objectMap.put("menuConfigFiltresLieux", menuConfigFiltresLieux = new JMenuItem());
770         
771         menuConfigFiltresLieux.setName("menuConfigFiltresLieux");
772         menuConfigFiltresLieux.setText(t("reefdb.main.menu.configuration.filter.location"));
773         menuConfigFiltresLieux.setToolTipText(t("reefdb.main.menu.configuration.filter.location.tip"));
774         menuConfigFiltresLieux.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterLocationAction.class);
775     }
776 
777     protected void createMenuConfigFiltresProgrammes() {
778         $objectMap.put("menuConfigFiltresProgrammes", menuConfigFiltresProgrammes = new JMenuItem());
779         
780         menuConfigFiltresProgrammes.setName("menuConfigFiltresProgrammes");
781         menuConfigFiltresProgrammes.setText(t("reefdb.main.menu.configuration.filter.program"));
782         menuConfigFiltresProgrammes.setToolTipText(t("reefdb.main.menu.configuration.filter.program.tip"));
783         menuConfigFiltresProgrammes.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterProgramAction.class);
784     }
785 
786     protected void createMenuConfigGenerale() {
787         $objectMap.put("menuConfigGenerale", menuConfigGenerale = new JMenuItem());
788         
789         menuConfigGenerale.setName("menuConfigGenerale");
790         menuConfigGenerale.setText(t("reefdb.main.menu.configuration"));
791         menuConfigGenerale.setToolTipText(t("reefdb.main.menu.configuration.tip"));
792         menuConfigGenerale.putClientProperty("help", "reefdb.main.menu.action.configuration.help");
793         menuConfigGenerale.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToConfigAction.class);
794     }
795 
796     protected void createMenuConfigGroupeTaxons() {
797         $objectMap.put("menuConfigGroupeTaxons", menuConfigGroupeTaxons = new JMenuItem());
798         
799         menuConfigGroupeTaxons.setName("menuConfigGroupeTaxons");
800         menuConfigGroupeTaxons.setText(t("reefdb.main.menu.configuration.referential.groupeTaxons"));
801         menuConfigGroupeTaxons.setToolTipText(t("reefdb.main.menu.configuration.referential.groupeTaxons.tip"));
802         menuConfigGroupeTaxons.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToTaxonGroupAction.class);
803     }
804 
805     protected void createMenuConfigLieux() {
806         $objectMap.put("menuConfigLieux", menuConfigLieux = new JMenuItem());
807         
808         menuConfigLieux.setName("menuConfigLieux");
809         menuConfigLieux.setText(t("reefdb.main.menu.configuration.referential.lieux"));
810         menuConfigLieux.setToolTipText(t("reefdb.main.menu.configuration.referential.lieux.tip"));
811         menuConfigLieux.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToLocationAction.class);
812     }
813 
814     protected void createMenuConfigProgrammesStrategies() {
815         $objectMap.put("menuConfigProgrammesStrategies", menuConfigProgrammesStrategies = new JMenuItem());
816         
817         menuConfigProgrammesStrategies.setName("menuConfigProgrammesStrategies");
818         menuConfigProgrammesStrategies.setText(t("reefdb.main.menu.configuration.progammesStrategies"));
819         menuConfigProgrammesStrategies.setToolTipText(t("reefdb.main.menu.configuration.progammesStrategies.tip"));
820         menuConfigProgrammesStrategies.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToProgramAction.class);
821     }
822 
823     protected void createMenuConfigPsfmFilter() {
824         $objectMap.put("menuConfigPsfmFilter", menuConfigPsfmFilter = new JMenuItem());
825         
826         menuConfigPsfmFilter.setName("menuConfigPsfmFilter");
827         menuConfigPsfmFilter.setText(t("reefdb.main.menu.configuration.filter.pmfm"));
828         menuConfigPsfmFilter.setToolTipText(t("reefdb.main.menu.configuration.filter.pmfm.tip"));
829         menuConfigPsfmFilter.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterPmfmAction.class);
830     }
831 
832     protected void createMenuConfigReglesControles() {
833         $objectMap.put("menuConfigReglesControles", menuConfigReglesControles = new JMenuItem());
834         
835         menuConfigReglesControles.setName("menuConfigReglesControles");
836         menuConfigReglesControles.setText(t("reefdb.main.menu.configuration.control"));
837         menuConfigReglesControles.setToolTipText(t("reefdb.main.menu.configuration.control.tip"));
838         menuConfigReglesControles.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToRuleListAction.class);
839     }
840 
841     protected void createMenuConfigSamplingEquipmentFilter() {
842         $objectMap.put("menuConfigSamplingEquipmentFilter", menuConfigSamplingEquipmentFilter = new JMenuItem());
843         
844         menuConfigSamplingEquipmentFilter.setName("menuConfigSamplingEquipmentFilter");
845         menuConfigSamplingEquipmentFilter.setText(t("reefdb.main.menu.configuration.filter.samplingEquipment"));
846         menuConfigSamplingEquipmentFilter.setToolTipText(t("reefdb.main.menu.configuration.filter.samplingEquipment.tip"));
847         menuConfigSamplingEquipmentFilter.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterSamplingEquipmentAction.class);
848     }
849 
850     protected void createMenuConfigServicesFilter() {
851         $objectMap.put("menuConfigServicesFilter", menuConfigServicesFilter = new JMenuItem());
852         
853         menuConfigServicesFilter.setName("menuConfigServicesFilter");
854         menuConfigServicesFilter.setText(t("reefdb.main.menu.configuration.filter.department"));
855         menuConfigServicesFilter.setToolTipText(t("reefdb.main.menu.configuration.filter.department.tip"));
856         menuConfigServicesFilter.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterDepartmentAction.class);
857     }
858 
859     protected void createMenuConfigTaxonFilter() {
860         $objectMap.put("menuConfigTaxonFilter", menuConfigTaxonFilter = new JMenuItem());
861         
862         menuConfigTaxonFilter.setName("menuConfigTaxonFilter");
863         menuConfigTaxonFilter.setText(t("reefdb.main.menu.configuration.filter.taxon"));
864         menuConfigTaxonFilter.setToolTipText(t("reefdb.main.menu.configuration.filter.taxon.tip"));
865         menuConfigTaxonFilter.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterTaxonAction.class);
866     }
867 
868     protected void createMenuConfigTaxonGroupFilter() {
869         $objectMap.put("menuConfigTaxonGroupFilter", menuConfigTaxonGroupFilter = new JMenuItem());
870         
871         menuConfigTaxonGroupFilter.setName("menuConfigTaxonGroupFilter");
872         menuConfigTaxonGroupFilter.setText(t("reefdb.main.menu.configuration.filter.taxonGroup"));
873         menuConfigTaxonGroupFilter.setToolTipText(t("reefdb.main.menu.configuration.filter.taxonGroup.tip"));
874         menuConfigTaxonGroupFilter.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterTaxonGroupAction.class);
875     }
876 
877     protected void createMenuConfigTaxons() {
878         $objectMap.put("menuConfigTaxons", menuConfigTaxons = new JMenuItem());
879         
880         menuConfigTaxons.setName("menuConfigTaxons");
881         menuConfigTaxons.setText(t("reefdb.main.menu.configuration.referential.taxons"));
882         menuConfigTaxons.setToolTipText(t("reefdb.main.menu.configuration.referential.taxons.tip"));
883         menuConfigTaxons.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToTaxonAction.class);
884     }
885 
886     protected void createMenuConfigUserFilter() {
887         $objectMap.put("menuConfigUserFilter", menuConfigUserFilter = new JMenuItem());
888         
889         menuConfigUserFilter.setName("menuConfigUserFilter");
890         menuConfigUserFilter.setText(t("reefdb.main.menu.configuration.filter.user"));
891         menuConfigUserFilter.setToolTipText(t("reefdb.main.menu.configuration.filter.user.tip"));
892         menuConfigUserFilter.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterUserAction.class);
893     }
894 
895     protected void createMenuContextFilter() {
896         $objectMap.put("menuContextFilter", menuContextFilter = new JMenu());
897         
898         menuContextFilter.setName("menuContextFilter");
899         menuContextFilter.setText(t("reefdb.main.menu.configuration.contextFilter"));
900     }
901 
902     protected void createMenuDepartments() {
903         $objectMap.put("menuDepartments", menuDepartments = new JMenuItem());
904         
905         menuDepartments.setName("menuDepartments");
906         menuDepartments.setText(t("reefdb.main.menu.configuration.referential.department"));
907         menuDepartments.setToolTipText(t("reefdb.main.menu.configuration.referential.department.tip"));
908         menuDepartments.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToDepartmentAction.class);
909     }
910 
911     protected void createMenuFile() {
912         $objectMap.put("menuFile", menuFile = new JMenu());
913         
914         menuFile.setName("menuFile");
915         menuFile.setText(t("reefdb.main.menu.file"));
916     }
917 
918     protected void createMenuFileExport() {
919         $objectMap.put("menuFileExport", menuFileExport = new JMenu());
920         
921         menuFileExport.setName("menuFileExport");
922         menuFileExport.setText(t("reefdb.main.menu.synchro.file.export"));
923     }
924 
925     protected void createMenuFileExtraction() {
926         $objectMap.put("menuFileExtraction", menuFileExtraction = new JMenuItem());
927         
928         menuFileExtraction.setName("menuFileExtraction");
929         menuFileExtraction.setText(t("reefdb.main.menu.extraction"));
930         menuFileExtraction.setToolTipText(t("reefdb.main.menu.extraction.tip"));
931         menuFileExtraction.putClientProperty("help", "reefdb.main.menu.action.home.help");
932         menuFileExtraction.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToExtractionAction.class);
933     }
934 
935     protected void createMenuFileHome() {
936         $objectMap.put("menuFileHome", menuFileHome = new JMenuItem());
937         
938         menuFileHome.setName("menuFileHome");
939         menuFileHome.setText(t("reefdb.main.menu.home"));
940         menuFileHome.setToolTipText(t("reefdb.main.menu.home.tip"));
941         menuFileHome.putClientProperty("applicationActionKey", fr.ifremer.reefdb.ui.swing.util.ReefDbKeyStrokes.HOME);
942         menuFileHome.putClientProperty("help", "reefdb.main.menu.action.home.help");
943         menuFileHome.putClientProperty("applicationAction", fr.ifremer.quadrige3.ui.swing.action.GoToHomeAction.class);
944     }
945 
946     protected void createMenuFileImport() {
947         $objectMap.put("menuFileImport", menuFileImport = new JMenu());
948         
949         menuFileImport.setName("menuFileImport");
950         menuFileImport.setText(t("reefdb.main.menu.synchro.file.import"));
951     }
952 
953     protected void createMenuFileSaisie() {
954         $objectMap.put("menuFileSaisie", menuFileSaisie = new JMenuItem());
955         
956         menuFileSaisie.setName("menuFileSaisie");
957         menuFileSaisie.setText(t("reefdb.main.menu.saisie"));
958         menuFileSaisie.setToolTipText(t("reefdb.main.menu.saisie.tip"));
959         menuFileSaisie.putClientProperty("help", "reefdb.main.menu.action.home.help");
960         menuFileSaisie.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToObservationAction.class);
961     }
962 
963     protected void createMenuFilter() {
964         $objectMap.put("menuFilter", menuFilter = new JMenu());
965         
966         menuFilter.setName("menuFilter");
967         menuFilter.setText(t("reefdb.main.menu.configuration.filter"));
968     }
969 
970     protected void createMenuFilterCampaign() {
971         $objectMap.put("menuFilterCampaign", menuFilterCampaign = new JMenuItem());
972         
973         menuFilterCampaign.setName("menuFilterCampaign");
974         menuFilterCampaign.setText(t("reefdb.main.menu.configuration.filter.campaign"));
975         menuFilterCampaign.setToolTipText(t("reefdb.main.menu.configuration.filter.campaign.tip"));
976         menuFilterCampaign.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFilterCampaignAction.class);
977     }
978 
979     protected void createMenuFractions() {
980         $objectMap.put("menuFractions", menuFractions = new JMenuItem());
981         
982         menuFractions.setName("menuFractions");
983         menuFractions.setText(t("reefdb.main.menu.configuration.referential.pmfms.fraction"));
984         menuFractions.setToolTipText(t("reefdb.main.menu.configuration.referential.pmfms.fraction.tip"));
985         menuFractions.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToFractionAction.class);
986     }
987 
988     protected void createMenuHelp() {
989         $objectMap.put("menuHelp", menuHelp = new JMenu());
990         
991         menuHelp.setName("menuHelp");
992         menuHelp.setText(t("reefdb.main.menu.help"));
993     }
994 
995     protected void createMenuHelpAbout() {
996         $objectMap.put("menuHelpAbout", menuHelpAbout = new JMenuItem());
997         
998         menuHelpAbout.setName("menuHelpAbout");
999         menuHelpAbout.setText(t("reefdb.main.menu.about"));
1000         menuHelpAbout.setToolTipText(t("reefdb.main.menu.about.tip"));
1001         menuHelpAbout.putClientProperty("applicationActionKey", fr.ifremer.reefdb.ui.swing.util.ReefDbKeyStrokes.HELP);
1002         menuHelpAbout.putClientProperty("help", "reefdb.main.menu.action.about.help");
1003         menuHelpAbout.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.ShowAboutAction.class);
1004     }
1005 
1006     protected void createMenuHelpSite() {
1007         $objectMap.put("menuHelpSite", menuHelpSite = new JMenuItem());
1008         
1009         menuHelpSite.setName("menuHelpSite");
1010         menuHelpSite.setText(t("reefdb.main.menu.site"));
1011         menuHelpSite.addActionListener(JAXXUtil.getEventListener(ActionListener.class, "actionPerformed", this, "doActionPerformed__on__menuHelpSite"));
1012         menuHelpSite.putClientProperty("help", "reefdb.main.menu.action.site.help");
1013     }
1014 
1015     protected void createMenuManageDb() {
1016         $objectMap.put("menuManageDb", menuManageDb = new JMenuItem());
1017         
1018         menuManageDb.setName("menuManageDb");
1019         menuManageDb.setText(t("reefdb.main.action.manageDb"));
1020         menuManageDb.setToolTipText(t("reefdb.main.action.manageDb.tip"));
1021         menuManageDb.putClientProperty("help", "reefdb.main.menu.action.manageDb.help");
1022         menuManageDb.putClientProperty("applicationAction", fr.ifremer.quadrige3.ui.swing.action.GoToManageDbAction.class);
1023     }
1024 
1025     protected void createMenuMatrices() {
1026         $objectMap.put("menuMatrices", menuMatrices = new JMenuItem());
1027         
1028         menuMatrices.setName("menuMatrices");
1029         menuMatrices.setText(t("reefdb.main.menu.configuration.referential.pmfms.matrix"));
1030         menuMatrices.setToolTipText(t("reefdb.main.menu.configuration.referential.pmfms.matrix.tip"));
1031         menuMatrices.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToMatrixAction.class);
1032     }
1033 
1034     protected void createMenuMethods() {
1035         $objectMap.put("menuMethods", menuMethods = new JMenuItem());
1036         
1037         menuMethods.setName("menuMethods");
1038         menuMethods.setText(t("reefdb.main.menu.configuration.referential.pmfms.method"));
1039         menuMethods.setToolTipText(t("reefdb.main.menu.configuration.referential.pmfms.method.tip"));
1040         menuMethods.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToMethodAction.class);
1041     }
1042 
1043     protected void createMenuParameters() {
1044         $objectMap.put("menuParameters", menuParameters = new JMenuItem());
1045         
1046         menuParameters.setName("menuParameters");
1047         menuParameters.setText(t("reefdb.main.menu.configuration.referential.pmfms.parameter"));
1048         menuParameters.setToolTipText(t("reefdb.main.menu.configuration.referential.pmfms.parameter.tip"));
1049         menuParameters.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToParameterAction.class);
1050     }
1051 
1052     protected void createMenuPsfms() {
1053         $objectMap.put("menuPsfms", menuPsfms = new JMenu());
1054         
1055         menuPsfms.setName("menuPsfms");
1056         menuPsfms.setText(t("reefdb.main.menu.configuration.referential.pmfms"));
1057     }
1058 
1059     protected void createMenuQuadruplets() {
1060         $objectMap.put("menuQuadruplets", menuQuadruplets = new JMenuItem());
1061         
1062         menuQuadruplets.setName("menuQuadruplets");
1063         menuQuadruplets.setText(t("reefdb.main.menu.configuration.referential.pmfms.pmfm"));
1064         menuQuadruplets.setToolTipText(t("reefdb.main.menu.configuration.referential.pmfms.pmfm.tip"));
1065         menuQuadruplets.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToPmfmAction.class);
1066     }
1067 
1068     protected void createMenuReferentialUnits() {
1069         $objectMap.put("menuReferentialUnits", menuReferentialUnits = new JMenuItem());
1070         
1071         menuReferentialUnits.setName("menuReferentialUnits");
1072         menuReferentialUnits.setText(t("reefdb.main.menu.configuration.referential.units"));
1073         menuReferentialUnits.setToolTipText(t("reefdb.main.menu.configuration.referential.units.tip"));
1074         menuReferentialUnits.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToUnitAction.class);
1075     }
1076 
1077     protected void createMenuReferentiel() {
1078         $objectMap.put("menuReferentiel", menuReferentiel = new JMenu());
1079         
1080         menuReferentiel.setName("menuReferentiel");
1081         menuReferentiel.setText(t("reefdb.main.menu.configuration.referential"));
1082     }
1083 
1084     protected void createMenuReferentielAnalysisInstruments() {
1085         $objectMap.put("menuReferentielAnalysisInstruments", menuReferentielAnalysisInstruments = new JMenuItem());
1086         
1087         menuReferentielAnalysisInstruments.setName("menuReferentielAnalysisInstruments");
1088         menuReferentielAnalysisInstruments.setText(t("reefdb.main.menu.configuration.referential.analysisInstruments"));
1089         menuReferentielAnalysisInstruments.setToolTipText(t("reefdb.main.menu.configuration.referential.analysisInstruments.tip"));
1090         menuReferentielAnalysisInstruments.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToAnalysisInstrumentAction.class);
1091     }
1092 
1093     protected void createMenuReferentielSamplingEquipments() {
1094         $objectMap.put("menuReferentielSamplingEquipments", menuReferentielSamplingEquipments = new JMenuItem());
1095         
1096         menuReferentielSamplingEquipments.setName("menuReferentielSamplingEquipments");
1097         menuReferentielSamplingEquipments.setText(t("reefdb.main.menu.configuration.referential.samplingEquipments"));
1098         menuReferentielSamplingEquipments.setToolTipText(t("reefdb.main.menu.configuration.referential.samplingEquipments.tip"));
1099         menuReferentielSamplingEquipments.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToSamplingEquipmentAction.class);
1100     }
1101 
1102     protected void createMenuReferentielTaxinomique() {
1103         $objectMap.put("menuReferentielTaxinomique", menuReferentielTaxinomique = new JMenu());
1104         
1105         menuReferentielTaxinomique.setName("menuReferentielTaxinomique");
1106         menuReferentielTaxinomique.setText(t("reefdb.main.menu.configuration.referential.taxonomic"));
1107     }
1108 
1109     protected void createMenuShowHelp() {
1110         $objectMap.put("menuShowHelp", menuShowHelp = new JMenuItem());
1111         
1112         menuShowHelp.setName("menuShowHelp");
1113         menuShowHelp.setText(t("reefdb.main.menu.showHelp"));
1114         menuShowHelp.addActionListener(JAXXUtil.getEventListener(ActionListener.class, "actionPerformed", this, "doActionPerformed__on__menuShowHelp"));
1115         menuShowHelp.putClientProperty("help", "reefdb.index.help");
1116     }
1117 
1118     protected void createMenuSynchronization() {
1119         $objectMap.put("menuSynchronization", menuSynchronization = new JMenu());
1120         
1121         menuSynchronization.setName("menuSynchronization");
1122         menuSynchronization.setText(t("reefdb.main.menu.synchro"));
1123     }
1124 
1125     protected void createMenuSynchronizationExport() {
1126         $objectMap.put("menuSynchronizationExport", menuSynchronizationExport = new JMenuItem());
1127         
1128         menuSynchronizationExport.setName("menuSynchronizationExport");
1129         menuSynchronizationExport.setText(t("reefdb.main.menu.synchro.server.export"));
1130         menuSynchronizationExport.setToolTipText(t("reefdb.main.menu.synchro.server.export.tip"));
1131         menuSynchronizationExport.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.ExportSynchroAction.class);
1132     }
1133 
1134     protected void createMenuSynchronizationExportToFile() {
1135         $objectMap.put("menuSynchronizationExportToFile", menuSynchronizationExportToFile = new JMenuItem());
1136         
1137         menuSynchronizationExportToFile.setName("menuSynchronizationExportToFile");
1138         menuSynchronizationExportToFile.setText(t("reefdb.main.menu.synchro.file.exportDataToFile"));
1139         menuSynchronizationExportToFile.setToolTipText(t("reefdb.main.menu.synchro.file.exportDataToFile.tip"));
1140         menuSynchronizationExportToFile.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.ExportDataToFileAction.class);
1141     }
1142 
1143     protected void createMenuSynchronizationImport() {
1144         $objectMap.put("menuSynchronizationImport", menuSynchronizationImport = new JMenuItem());
1145         
1146         menuSynchronizationImport.setName("menuSynchronizationImport");
1147         menuSynchronizationImport.setText(t("reefdb.main.menu.synchro.server.import"));
1148         menuSynchronizationImport.setToolTipText(t("reefdb.main.menu.synchro.server.import.tip"));
1149         menuSynchronizationImport.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.ImportSynchroAction.class);
1150     }
1151 
1152     protected void createMenuSynchronizationImportFromFile() {
1153         $objectMap.put("menuSynchronizationImportFromFile", menuSynchronizationImportFromFile = new JMenuItem());
1154         
1155         menuSynchronizationImportFromFile.setName("menuSynchronizationImportFromFile");
1156         menuSynchronizationImportFromFile.setText(t("reefdb.main.menu.synchro.file.importFromFile"));
1157         menuSynchronizationImportFromFile.setToolTipText(t("reefdb.main.menu.synchro.file.importFromFile.tip"));
1158         menuSynchronizationImportFromFile.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.ImportFromFileSynchroAction.class);
1159     }
1160 
1161     protected void createMenuSynchronizationImportReferential() {
1162         $objectMap.put("menuSynchronizationImportReferential", menuSynchronizationImportReferential = new JMenuItem());
1163         
1164         menuSynchronizationImportReferential.setName("menuSynchronizationImportReferential");
1165         menuSynchronizationImportReferential.setText(t("reefdb.main.menu.synchro.server.import.referential"));
1166         menuSynchronizationImportReferential.setToolTipText(t("reefdb.main.menu.synchro.server.import.referential.tip"));
1167         menuSynchronizationImportReferential.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.ImportReferentialSynchroAction.class);
1168     }
1169 
1170     protected void createMenuSynchronizationImportReferentialFromFile() {
1171         $objectMap.put("menuSynchronizationImportReferentialFromFile", menuSynchronizationImportReferentialFromFile = new JMenuItem());
1172         
1173         menuSynchronizationImportReferentialFromFile.setName("menuSynchronizationImportReferentialFromFile");
1174         menuSynchronizationImportReferentialFromFile.setText(t("reefdb.main.menu.synchro.file.importReferentialFromFile"));
1175         menuSynchronizationImportReferentialFromFile.setToolTipText(t("reefdb.main.menu.synchro.file.importReferentialFromFile.tip"));
1176         menuSynchronizationImportReferentialFromFile.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.ImportReferentialFromFileSynchroAction.class);
1177     }
1178 
1179     protected void createMenuSynchronizationLog() {
1180         $objectMap.put("menuSynchronizationLog", menuSynchronizationLog = new JMenuItem());
1181         
1182         menuSynchronizationLog.setName("menuSynchronizationLog");
1183         menuSynchronizationLog.setText(t("reefdb.main.menu.synchro.log"));
1184         menuSynchronizationLog.setToolTipText(t("reefdb.main.menu.synchro.log"));
1185         menuSynchronizationLog.putClientProperty("applicationAction", fr.ifremer.quadrige3.ui.swing.action.GoToSynchroLogAction.class);
1186     }
1187 
1188     protected void createMenuUsers() {
1189         $objectMap.put("menuUsers", menuUsers = new JMenuItem());
1190         
1191         menuUsers.setName("menuUsers");
1192         menuUsers.setText(t("reefdb.main.menu.configuration.referential.user"));
1193         menuUsers.setToolTipText(t("reefdb.main.menu.configuration.referential.user.tip"));
1194         menuUsers.putClientProperty("applicationAction", fr.ifremer.reefdb.ui.swing.action.GoToUserAction.class);
1195     }
1196 
1197     protected void createMenuUsersOrganismes() {
1198         $objectMap.put("menuUsersOrganismes", menuUsersOrganismes = new JMenu());
1199         
1200         menuUsersOrganismes.setName("menuUsersOrganismes");
1201         menuUsersOrganismes.setText(t("reefdb.main.menu.configuration.referential.usersOrganismes"));
1202     }
1203 
1204     @Override
1205     protected void createModel() {
1206         $objectMap.put("model", model = getContextValue(ReefDbUIContext.class));
1207     }
1208 
1209     @Override
1210     protected void createShowHelp() {
1211         super.createShowHelp();
1212         showHelp.setName("showHelp");
1213     }
1214 
1215     /*-----------------------------------------------------------------------*/
1216     /*------------------------ Internal jaxx methods ------------------------*/
1217     /*-----------------------------------------------------------------------*/
1218 
1219     private void $completeSetup() {
1220         allComponentsCreated = true;
1221         if (log.isDebugEnabled()) {
1222             log.debug(this);
1223         }
1224         addChildrenToMenu();
1225         addChildrenToMenuFile();
1226         addChildrenToMenuFileImport();
1227         addChildrenToMenuFileExport();
1228         addChildrenToMenuSynchronization();
1229         addChildrenToMenuAdministration();
1230         addChildrenToMenuContextFilter();
1231         addChildrenToMenuFilter();
1232         addChildrenToMenuReferentiel();
1233         addChildrenToMenuUsersOrganismes();
1234         addChildrenToMenuPsfms();
1235         addChildrenToMenuReferentielTaxinomique();
1236         addChildrenToMenuHelp();
1237         
1238         // apply 58 data bindings
1239         JAXXUtil.applyDataBinding(this, $bindings.keySet());
1240         
1241         // apply 76 property setters
1242         setIconImage(SwingUtil.createImageIcon("reefdb_32.png").getImage());
1243         setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
1244         menuFile.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.file.mnemonic"),'Z'));
1245         menuFileHome.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.home.mnemonic"),'Z'));
1246         menuFileHome.setIcon(SwingUtil.createActionIcon("home"));
1247         menuFileSaisie.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.saisie.mnemonic"),'Z'));
1248         menuFileSaisie.setIcon(SwingUtil.createActionIcon("edit"));
1249         menuFileExtraction.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.extraction.mnemonic"),'Z'));
1250         menuFileExtraction.setIcon(SwingUtil.createActionIcon("export"));
1251         menuFileImport.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.file.import.mnemonic"),'Z'));
1252         menuSynchronizationImportReferentialFromFile.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.file.importReferentialFromFile.mnemonic"),'Z'));
1253         menuSynchronizationImportReferentialFromFile.setIcon(SwingUtil.createActionIcon("synchro-import-referential"));
1254         menuSynchronizationImportFromFile.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.file.importFromFile.mnemonic"),'Z'));
1255         menuSynchronizationImportFromFile.setIcon(SwingUtil.createActionIcon("synchro-import"));
1256         menuFileExport.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.file.export.mnemonic"),'Z'));
1257         menuSynchronizationExportToFile.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.file.exportDataToFile.mnemonic"),'Z'));
1258         menuSynchronizationExportToFile.setIcon(SwingUtil.createActionIcon("synchro-file-export"));
1259         menuSynchronization.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.mnemonic"),'Z'));
1260         menuSynchronizationImportReferential.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.server.import.referential.mnemonic"),'Z'));
1261         menuSynchronizationImportReferential.setIcon(SwingUtil.createActionIcon("synchro-import-referential"));
1262         menuSynchronizationImport.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.server.import.mnemonic"),'Z'));
1263         menuSynchronizationImport.setIcon(SwingUtil.createActionIcon("synchro-import"));
1264         menuSynchronizationExport.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.server.export.mnemonic"),'Z'));
1265         menuSynchronizationExport.setIcon(SwingUtil.createActionIcon("synchro-export"));
1266         menuSynchronizationLog.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.synchro.log.mnemonic"),'Z'));
1267         menuSynchronizationLog.setIcon(SwingUtil.createActionIcon("synchro-log"));
1268         menuAdministration.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.administration.mnemonic"),'Z'));
1269         menuAuthentication.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.authentication.mnemonic"),'Z'));
1270         menuAuthentication.setIcon(SwingUtil.createActionIcon("person"));
1271         menuConfigGenerale.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.mnemonic"),'Z'));
1272         menuConfigGenerale.setIcon(SwingUtil.createActionIcon("config"));
1273         menuManageDb.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.action.manageDb.mnemonic"),'Z'));
1274         menuManageDb.setIcon(SwingUtil.createActionIcon("manage-db"));
1275         menuContextFilter.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.contextFilter.mnemonic"),'Z'));
1276         menuConfigContextesLocaux.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.context.mnemonic"),'Z'));
1277         menuFilter.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.mnemonic"),'Z'));
1278         menuFilterCampaign.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.campaign.mnemonic"),'Z'));
1279         menuConfigAnalysisInstrumentFilter.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.analysisInstrument.mnemonic"),'Z'));
1280         menuConfigTaxonGroupFilter.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.taxonGroup.mnemonic"),'Z'));
1281         menuConfigSamplingEquipmentFilter.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.samplingEquipment.mnemonic"),'Z'));
1282         menuConfigUserFilter.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.user.mnemonic"),'Z'));
1283         menuConfigServicesFilter.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.department.mnemonic"),'Z'));
1284         menuConfigFiltresProgrammes.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.program.mnemonic"),'Z'));
1285         menuConfigPsfmFilter.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.pmfm.mnemonic"),'Z'));
1286         menuConfigFiltresLieux.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.location.mnemonic"),'Z'));
1287         menuConfigTaxonFilter.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.filter.taxon.mnemonic"),'Z'));
1288         menuConfigProgrammesStrategies.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.progammesStrategies.mnemonic"),'Z'));
1289         menuConfigProgrammesStrategies.setIcon(SwingUtil.createActionIcon("program"));
1290         menuCampaign.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.campaigns.mnemonic"),'Z'));
1291         menuCampaign.setIcon(SwingUtil.createActionIcon("campaign"));
1292         menuConfigReglesControles.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.control.mnemonic"),'Z'));
1293         menuConfigReglesControles.setIcon(SwingUtil.createActionIcon("rule-list"));
1294         menuReferentiel.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.mnemonic"),'Z'));
1295         menuReferentielAnalysisInstruments.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.analysisInstruments.mnemonic"),'Z'));
1296         menuReferentielSamplingEquipments.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.samplingEquipments.mnemonic"),'Z'));
1297         menuUsersOrganismes.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.usersOrganismes.mnemonic"),'Z'));
1298         menuDepartments.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.department.mnemonic"),'Z'));
1299         menuUsers.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.user.mnemonic"),'Z'));
1300         menuPsfms.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.pmfms.mnemonic"),'Z'));
1301         menuFractions.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.pmfms.fraction.mnemonic"),'Z'));
1302         menuMethods.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.pmfms.method.mnemonic"),'Z'));
1303         menuParameters.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.pmfms.parameter.mnemonic"),'Z'));
1304         menuQuadruplets.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.pmfms.pmfm.mnemonic"),'Z'));
1305         menuMatrices.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.pmfms.matrix.mnemonic"),'Z'));
1306         menuReferentielTaxinomique.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.taxonomic.mnemonic"),'Z'));
1307         menuConfigGroupeTaxons.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.groupeTaxons.mnemonic"),'Z'));
1308         menuConfigTaxons.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.taxons.mnemonic"),'Z'));
1309         menuConfigLieux.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.lieux.mnemonic"),'Z'));
1310         menuReferentialUnits.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.configuration.referential.units.mnemonic"),'Z'));
1311         menuHelp.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.help.mnemonic"),'Z'));
1312         menuShowHelp.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.showHelp.mnemonic"),'Z'));
1313         menuShowHelp.setIcon(SwingUtil.createActionIcon("help"));
1314         menuHelpSite.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.site.mnemonic"),'Z'));
1315         menuHelpSite.setIcon(SwingUtil.createActionIcon("site"));
1316         menuHelpAbout.setMnemonic(SwingUtil.getFirstCharAt(t("reefdb.main.menu.about.mnemonic"),'Z'));
1317         menuHelpAbout.setIcon(SwingUtil.createActionIcon("about"));
1318         // late initializer
1319         // help broker setup
1320         ReefDbHelpBroker _broker = getBroker();
1321         registerHelpId(_broker, menuFileHome, "reefdb.main.menu.action.home.help");
1322         registerHelpId(_broker, menuFileSaisie, "reefdb.main.menu.action.home.help");
1323         registerHelpId(_broker, menuFileExtraction, "reefdb.main.menu.action.home.help");
1324         registerHelpId(_broker, menuAuthentication, "reefdb.main.menu.action.authentication.help");
1325         registerHelpId(_broker, menuConfigGenerale, "reefdb.main.menu.action.configuration.help");
1326         registerHelpId(_broker, menuManageDb, "reefdb.main.menu.action.manageDb.help");
1327         registerHelpId(_broker, menuShowHelp, "reefdb.index.help");
1328         registerHelpId(_broker, menuHelpSite, "reefdb.main.menu.action.site.help");
1329         registerHelpId(_broker, menuHelpAbout, "reefdb.main.menu.action.about.help");
1330         _broker.prepareUI(this);
1331     }
1332 
1333     private void $initialize() {
1334         if (allComponentsCreated) {
1335             return;
1336         }
1337         if (log.isDebugEnabled()) {
1338             log.debug(this);
1339         }
1340         handler.beforeInit(this);
1341         $objectMap.put("mainFrame", mainFrame);
1342         createBroker();
1343         createMenuFile();
1344         createMenuFileHome();
1345         createMenuFileSaisie();
1346         createMenuFileExtraction();
1347         // inline creation of $JSeparator0
1348         $objectMap.put("$JSeparator0", $JSeparator0 = new JSeparator());
1349         
1350         $JSeparator0.setName("$JSeparator0");
1351         createMenuFileImport();
1352         createMenuSynchronizationImportReferentialFromFile();
1353         createMenuSynchronizationImportFromFile();
1354         createMenuFileExport();
1355         createMenuSynchronizationExportToFile();
1356         // inline creation of $JSeparator1
1357         $objectMap.put("$JSeparator1", $JSeparator1 = new JSeparator());
1358         
1359         $JSeparator1.setName("$JSeparator1");
1360         createMenuSynchronization();
1361         createMenuSynchronizationImportReferential();
1362         createMenuSynchronizationImport();
1363         // inline creation of $JSeparator2
1364         $objectMap.put("$JSeparator2", $JSeparator2 = new JSeparator());
1365         
1366         $JSeparator2.setName("$JSeparator2");
1367         createMenuSynchronizationExport();
1368         // inline creation of $JSeparator3
1369         $objectMap.put("$JSeparator3", $JSeparator3 = new JSeparator());
1370         
1371         $JSeparator3.setName("$JSeparator3");
1372         createMenuSynchronizationLog();
1373         createMenuAdministration();
1374         createMenuAuthentication();
1375         createMenuConfigGenerale();
1376         createMenuManageDb();
1377         createMenuContextFilter();
1378         createMenuConfigContextesLocaux();
1379         createMenuFilter();
1380         createMenuFilterCampaign();
1381         createMenuConfigAnalysisInstrumentFilter();
1382         createMenuConfigTaxonGroupFilter();
1383         createMenuConfigSamplingEquipmentFilter();
1384         createMenuConfigUserFilter();
1385         createMenuConfigServicesFilter();
1386         createMenuConfigFiltresProgrammes();
1387         createMenuConfigPsfmFilter();
1388         createMenuConfigFiltresLieux();
1389         createMenuConfigTaxonFilter();
1390         createMenuConfigProgrammesStrategies();
1391         createMenuCampaign();
1392         createMenuConfigReglesControles();
1393         createMenuReferentiel();
1394         createMenuReferentielAnalysisInstruments();
1395         createMenuReferentielSamplingEquipments();
1396         createMenuUsersOrganismes();
1397         createMenuDepartments();
1398         createMenuUsers();
1399         createMenuPsfms();
1400         createMenuFractions();
1401         createMenuMethods();
1402         createMenuParameters();
1403         createMenuQuadruplets();
1404         createMenuMatrices();
1405         createMenuReferentielTaxinomique();
1406         createMenuConfigGroupeTaxons();
1407         createMenuConfigTaxons();
1408         createMenuConfigLieux();
1409         createMenuReferentialUnits();
1410         createMenuHelp();
1411         createMenuShowHelp();
1412         createMenuHelpSite();
1413         createMenuHelpAbout();
1414         // inline creation of mainFrame
1415         setName("mainFrame");
1416         SwingUtil.setComponentHeight(mainFrame,1024);
1417         SwingUtil.setComponentWidth(mainFrame,1280);
1418         setTitle(t("reefdb.main.title.applicationName"));
1419         
1420         // registers 58 data bindings
1421         $registerDefaultBindings();
1422         $completeSetup();
1423         handler.afterInit(this);
1424     }
1425 
1426     private void $registerDefaultBindings() {
1427         // register 58 data bindings
1428         registerDataBinding(new DefaultJAXXBinding(this, BINDING_BUSY_BLOCK_LAYER_UI_BLOCK, true) {
1429         
1430             @Override
1431             public void applyDataBinding() {
1432                 if (model != null) {
1433                     model.addPropertyChangeListener("busy", this);
1434                 }
1435             }
1436         
1437             @Override
1438             public void processDataBinding() {
1439                 if (model != null) {
1440                     busyBlockLayerUI.setBlock(getModel().isBusy());
1441                 }
1442             }
1443         
1444             @Override
1445             public void removeDataBinding() {
1446                 if (model != null) {
1447                     model.removePropertyChangeListener("busy", this);
1448                 }
1449             }
1450         });
1451         registerDataBinding(new DefaultJAXXBinding(this, BINDING_BUSY_BLOCK_LAYER_UI_BLOCKING_COLOR, true) {
1452         
1453             @Override
1454             public void applyDataBinding() {
1455                 if (model != null) {
1456                     model.addPropertyChangeListener("configuration", this);
1457                 }
1458             }
1459         
1460             @Override
1461             public void processDataBinding() {
1462                 if (model != null && getModel().getConfiguration() != null) {
1463                     busyBlockLayerUI.setBlockingColor(getModel().getConfiguration().getColorBlockingLayer());
1464                 }
1465             }
1466         
1467             @Override
1468             public void removeDataBinding() {
1469                 if (model != null) {
1470                     model.removePropertyChangeListener("configuration", this);
1471                 }
1472             }
1473         });
1474         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILE_HOME_ENABLED, true) {
1475         
1476             @Override
1477             public void applyDataBinding() {
1478                 if (model != null) {
1479                     model.addPropertyChangeListener("screen", this);
1480                 }
1481             }
1482         
1483             @Override
1484             public void processDataBinding() {
1485                 if (model != null) {
1486                     menuFileHome.setEnabled(getModel().getScreen() != ReefDbScreen.HOME && getModel().getScreen() != ReefDbScreen.CONFIG);
1487                 }
1488             }
1489         
1490             @Override
1491             public void removeDataBinding() {
1492                 if (model != null) {
1493                     model.removePropertyChangeListener("screen", this);
1494                 }
1495             }
1496         });
1497         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILE_SAISIE_ENABLED, true, true) {
1498         
1499             @Override
1500             public void applyDataBinding() {
1501                 if (model != null) {
1502                     model.addPropertyChangeListener("screen", this);
1503                 }
1504                 if (model != null) {
1505                     model.addPropertyChangeListener("authenticated", this);
1506                 }
1507             }
1508         
1509             @Override
1510             public void processDataBinding() {
1511                 if (model != null) {
1512                     menuFileSaisie.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG && getModel().isAuthenticated());
1513                 }
1514             }
1515         
1516             @Override
1517             public void removeDataBinding() {
1518                 if (model != null) {
1519                     model.removePropertyChangeListener("screen", this);
1520                 }
1521                 if (model != null) {
1522                     model.removePropertyChangeListener("authenticated", this);
1523                 }
1524             }
1525         });
1526         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILE_EXTRACTION_ENABLED, true, true) {
1527         
1528             @Override
1529             public void applyDataBinding() {
1530                 if (model != null) {
1531                     model.addPropertyChangeListener("screen", this);
1532                 }
1533                 if (model != null) {
1534                     model.addPropertyChangeListener("authenticated", this);
1535                 }
1536             }
1537         
1538             @Override
1539             public void processDataBinding() {
1540                 if (model != null) {
1541                     menuFileExtraction.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG && getModel().isAuthenticated());
1542                 }
1543             }
1544         
1545             @Override
1546             public void removeDataBinding() {
1547                 if (model != null) {
1548                     model.removePropertyChangeListener("screen", this);
1549                 }
1550                 if (model != null) {
1551                     model.removePropertyChangeListener("authenticated", this);
1552                 }
1553             }
1554         });
1555         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILE_IMPORT_ENABLED, true) {
1556         
1557             @Override
1558             public void applyDataBinding() {
1559                 if (model != null) {
1560                     model.addPropertyChangeListener("synchroRunning", this);
1561                 }
1562             }
1563         
1564             @Override
1565             public void processDataBinding() {
1566                 if (model != null) {
1567                     menuFileImport.setEnabled(!getModel().isSynchroRunning());
1568                 }
1569             }
1570         
1571             @Override
1572             public void removeDataBinding() {
1573                 if (model != null) {
1574                     model.removePropertyChangeListener("synchroRunning", this);
1575                 }
1576             }
1577         });
1578         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_IMPORT_REFERENTIAL_FROM_FILE_ENABLED, true) {
1579         
1580             @Override
1581             public void applyDataBinding() {
1582                 if (model != null) {
1583                     model.addPropertyChangeListener("synchroRunning", this);
1584                 }
1585             }
1586         
1587             @Override
1588             public void processDataBinding() {
1589                 if (model != null) {
1590                     menuSynchronizationImportReferentialFromFile.setEnabled(!getModel().isSynchroRunning());
1591                 }
1592             }
1593         
1594             @Override
1595             public void removeDataBinding() {
1596                 if (model != null) {
1597                     model.removePropertyChangeListener("synchroRunning", this);
1598                 }
1599             }
1600         });
1601         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_IMPORT_FROM_FILE_ENABLED, true) {
1602         
1603             @Override
1604             public void applyDataBinding() {
1605                 if (model != null) {
1606                     model.addPropertyChangeListener("synchroRunning", this);
1607                 }
1608             }
1609         
1610             @Override
1611             public void processDataBinding() {
1612                 if (model != null) {
1613                     menuSynchronizationImportFromFile.setEnabled(!getModel().isSynchroRunning());
1614                 }
1615             }
1616         
1617             @Override
1618             public void removeDataBinding() {
1619                 if (model != null) {
1620                     model.removePropertyChangeListener("synchroRunning", this);
1621                 }
1622             }
1623         });
1624         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILE_EXPORT_ENABLED, true) {
1625         
1626             @Override
1627             public void applyDataBinding() {
1628                 if (model != null) {
1629                     model.addPropertyChangeListener("synchroRunning", this);
1630                 }
1631             }
1632         
1633             @Override
1634             public void processDataBinding() {
1635                 if (model != null) {
1636                     menuFileExport.setEnabled(!getModel().isSynchroRunning());
1637                 }
1638             }
1639         
1640             @Override
1641             public void removeDataBinding() {
1642                 if (model != null) {
1643                     model.removePropertyChangeListener("synchroRunning", this);
1644                 }
1645             }
1646         });
1647         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_EXPORT_TO_FILE_ENABLED, true) {
1648         
1649             @Override
1650             public void applyDataBinding() {
1651                 if (model != null) {
1652                     model.addPropertyChangeListener("synchroRunning", this);
1653                 }
1654             }
1655         
1656             @Override
1657             public void processDataBinding() {
1658                 if (model != null) {
1659                     menuSynchronizationExportToFile.setEnabled(!getModel().isSynchroRunning());
1660                 }
1661             }
1662         
1663             @Override
1664             public void removeDataBinding() {
1665                 if (model != null) {
1666                     model.removePropertyChangeListener("synchroRunning", this);
1667                 }
1668             }
1669         });
1670         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_ENABLED, true) {
1671         
1672             @Override
1673             public void applyDataBinding() {
1674                 if (model != null) {
1675                     model.addPropertyChangeListener("screen", this);
1676                 }
1677             }
1678         
1679             @Override
1680             public void processDataBinding() {
1681                 if (model != null) {
1682                     menuSynchronization.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
1683                 }
1684             }
1685         
1686             @Override
1687             public void removeDataBinding() {
1688                 if (model != null) {
1689                     model.removePropertyChangeListener("screen", this);
1690                 }
1691             }
1692         });
1693         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_IMPORT_REFERENTIAL_ENABLED, true, true) {
1694         
1695             @Override
1696             public void applyDataBinding() {
1697                 if (model != null) {
1698                     model.addPropertyChangeListener("synchroEnabled", this);
1699                 }
1700                 if (model != null) {
1701                     model.addPropertyChangeListener("configuration", this);
1702                 }
1703                 if (model != null) {
1704                     model.addPropertyChangeListener("synchroRunning", this);
1705                 }
1706             }
1707         
1708             @Override
1709             public void processDataBinding() {
1710                 if (model != null && getModel().getConfiguration() != null) {
1711                     menuSynchronizationImportReferential.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isSynchroRunning());
1712                 }
1713             }
1714         
1715             @Override
1716             public void removeDataBinding() {
1717                 if (model != null) {
1718                     model.removePropertyChangeListener("synchroEnabled", this);
1719                 }
1720                 if (model != null) {
1721                     model.removePropertyChangeListener("configuration", this);
1722                 }
1723                 if (model != null) {
1724                     model.removePropertyChangeListener("synchroRunning", this);
1725                 }
1726             }
1727         });
1728         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_IMPORT_ENABLED, true, true) {
1729         
1730             @Override
1731             public void applyDataBinding() {
1732                 if (model != null) {
1733                     model.addPropertyChangeListener("synchroEnabled", this);
1734                 }
1735                 if (model != null) {
1736                     model.addPropertyChangeListener("configuration", this);
1737                 }
1738                 if (model != null) {
1739                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
1740                 }
1741                 if (model != null) {
1742                     model.addPropertyChangeListener("synchroRunning", this);
1743                 }
1744             }
1745         
1746             @Override
1747             public void processDataBinding() {
1748                 if (model != null && getModel().getConfiguration() != null) {
1749                     menuSynchronizationImport.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
1750                 }
1751             }
1752         
1753             @Override
1754             public void removeDataBinding() {
1755                 if (model != null) {
1756                     model.removePropertyChangeListener("synchroEnabled", this);
1757                 }
1758                 if (model != null) {
1759                     model.removePropertyChangeListener("configuration", this);
1760                 }
1761                 if (model != null) {
1762                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
1763                 }
1764                 if (model != null) {
1765                     model.removePropertyChangeListener("synchroRunning", this);
1766                 }
1767             }
1768         });
1769         registerDataBinding(new DefaultJAXXBinding(this, BINDING_$JSEPARATOR2_ENABLED, true) {
1770         
1771             @Override
1772             public void applyDataBinding() {
1773                 if (model != null) {
1774                     model.addPropertyChangeListener("screen", this);
1775                 }
1776             }
1777         
1778             @Override
1779             public void processDataBinding() {
1780                 if (model != null) {
1781                     $JSeparator2.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
1782                 }
1783             }
1784         
1785             @Override
1786             public void removeDataBinding() {
1787                 if (model != null) {
1788                     model.removePropertyChangeListener("screen", this);
1789                 }
1790             }
1791         });
1792         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_EXPORT_ENABLED, true, true) {
1793         
1794             @Override
1795             public void applyDataBinding() {
1796                 if (model != null) {
1797                     model.addPropertyChangeListener("synchroEnabled", this);
1798                 }
1799                 if (model != null) {
1800                     model.addPropertyChangeListener("configuration", this);
1801                 }
1802                 if (model != null) {
1803                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
1804                 }
1805                 if (model != null) {
1806                     model.addPropertyChangeListener("synchroRunning", this);
1807                 }
1808             }
1809         
1810             @Override
1811             public void processDataBinding() {
1812                 if (model != null && getModel().getConfiguration() != null) {
1813                     menuSynchronizationExport.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
1814                 }
1815             }
1816         
1817             @Override
1818             public void removeDataBinding() {
1819                 if (model != null) {
1820                     model.removePropertyChangeListener("synchroEnabled", this);
1821                 }
1822                 if (model != null) {
1823                     model.removePropertyChangeListener("configuration", this);
1824                 }
1825                 if (model != null) {
1826                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
1827                 }
1828                 if (model != null) {
1829                     model.removePropertyChangeListener("synchroRunning", this);
1830                 }
1831             }
1832         });
1833         registerDataBinding(new DefaultJAXXBinding(this, BINDING_$JSEPARATOR3_ENABLED, true) {
1834         
1835             @Override
1836             public void applyDataBinding() {
1837                 if (model != null) {
1838                     model.addPropertyChangeListener("screen", this);
1839                 }
1840             }
1841         
1842             @Override
1843             public void processDataBinding() {
1844                 if (model != null) {
1845                     $JSeparator3.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
1846                 }
1847             }
1848         
1849             @Override
1850             public void removeDataBinding() {
1851                 if (model != null) {
1852                     model.removePropertyChangeListener("screen", this);
1853                 }
1854             }
1855         });
1856         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SYNCHRONIZATION_LOG_ENABLED, true) {
1857         
1858             @Override
1859             public void applyDataBinding() {
1860                 if (model != null) {
1861                     model.addPropertyChangeListener("screen", this);
1862                 }
1863             }
1864         
1865             @Override
1866             public void processDataBinding() {
1867                 if (model != null) {
1868                     menuSynchronizationLog.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
1869                 }
1870             }
1871         
1872             @Override
1873             public void removeDataBinding() {
1874                 if (model != null) {
1875                     model.removePropertyChangeListener("screen", this);
1876                 }
1877             }
1878         });
1879         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_ADMINISTRATION_ENABLED, true) {
1880         
1881             @Override
1882             public void applyDataBinding() {
1883                 if (model != null) {
1884                     model.addPropertyChangeListener("screen", this);
1885                 }
1886             }
1887         
1888             @Override
1889             public void processDataBinding() {
1890                 if (model != null) {
1891                     menuAdministration.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
1892                 }
1893             }
1894         
1895             @Override
1896             public void removeDataBinding() {
1897                 if (model != null) {
1898                     model.removePropertyChangeListener("screen", this);
1899                 }
1900             }
1901         });
1902         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_AUTHENTICATION_ENABLED, true) {
1903         
1904             @Override
1905             public void applyDataBinding() {
1906                 if (model != null) {
1907                     model.addPropertyChangeListener("screen", this);
1908                 }
1909             }
1910         
1911             @Override
1912             public void processDataBinding() {
1913                 if (model != null) {
1914                     menuAuthentication.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
1915                 }
1916             }
1917         
1918             @Override
1919             public void removeDataBinding() {
1920                 if (model != null) {
1921                     model.removePropertyChangeListener("screen", this);
1922                 }
1923             }
1924         });
1925         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_GENERALE_ENABLED, true) {
1926         
1927             @Override
1928             public void applyDataBinding() {
1929                 if (model != null) {
1930                     model.addPropertyChangeListener("screen", this);
1931                 }
1932             }
1933         
1934             @Override
1935             public void processDataBinding() {
1936                 if (model != null) {
1937                     menuConfigGenerale.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
1938                 }
1939             }
1940         
1941             @Override
1942             public void removeDataBinding() {
1943                 if (model != null) {
1944                     model.removePropertyChangeListener("screen", this);
1945                 }
1946             }
1947         });
1948         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_MANAGE_DB_ENABLED, true, true) {
1949         
1950             @Override
1951             public void applyDataBinding() {
1952                 if (model != null) {
1953                     model.addPropertyChangeListener("screen", this);
1954                 }
1955                 if (model != null) {
1956                     model.addPropertyChangeListener("authenticated", this);
1957                 }
1958             }
1959         
1960             @Override
1961             public void processDataBinding() {
1962                 if (model != null) {
1963                     menuManageDb.setEnabled(getModel().getScreen() != ReefDbScreen.MANAGE_DB && getModel().isAuthenticated());
1964                 }
1965             }
1966         
1967             @Override
1968             public void removeDataBinding() {
1969                 if (model != null) {
1970                     model.removePropertyChangeListener("screen", this);
1971                 }
1972                 if (model != null) {
1973                     model.removePropertyChangeListener("authenticated", this);
1974                 }
1975             }
1976         });
1977         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONTEXT_FILTER_ENABLED, true) {
1978         
1979             @Override
1980             public void applyDataBinding() {
1981                 if (model != null) {
1982                     model.addPropertyChangeListener("authenticated", this);
1983                 }
1984             }
1985         
1986             @Override
1987             public void processDataBinding() {
1988                 if (model != null) {
1989                     menuContextFilter.setEnabled(getModel().isAuthenticated());
1990                 }
1991             }
1992         
1993             @Override
1994             public void removeDataBinding() {
1995                 if (model != null) {
1996                     model.removePropertyChangeListener("authenticated", this);
1997                 }
1998             }
1999         });
2000         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_CONTEXTES_LOCAUX_ENABLED, true) {
2001         
2002             @Override
2003             public void applyDataBinding() {
2004                 if (model != null) {
2005                     model.addPropertyChangeListener("authenticated", this);
2006                 }
2007             }
2008         
2009             @Override
2010             public void processDataBinding() {
2011                 if (model != null) {
2012                     menuConfigContextesLocaux.setEnabled(getModel().isAuthenticated());
2013                 }
2014             }
2015         
2016             @Override
2017             public void removeDataBinding() {
2018                 if (model != null) {
2019                     model.removePropertyChangeListener("authenticated", this);
2020                 }
2021             }
2022         });
2023         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_ENABLED, true) {
2024         
2025             @Override
2026             public void applyDataBinding() {
2027                 if (model != null) {
2028                     model.addPropertyChangeListener("authenticated", this);
2029                 }
2030             }
2031         
2032             @Override
2033             public void processDataBinding() {
2034                 if (model != null) {
2035                     menuFilter.setEnabled(getModel().isAuthenticated());
2036                 }
2037             }
2038         
2039             @Override
2040             public void removeDataBinding() {
2041                 if (model != null) {
2042                     model.removePropertyChangeListener("authenticated", this);
2043                 }
2044             }
2045         });
2046         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FILTER_CAMPAIGN_ENABLED, true) {
2047         
2048             @Override
2049             public void applyDataBinding() {
2050                 if (model != null) {
2051                     model.addPropertyChangeListener("authenticated", this);
2052                 }
2053             }
2054         
2055             @Override
2056             public void processDataBinding() {
2057                 if (model != null) {
2058                     menuFilterCampaign.setEnabled(getModel().isAuthenticated());
2059                 }
2060             }
2061         
2062             @Override
2063             public void removeDataBinding() {
2064                 if (model != null) {
2065                     model.removePropertyChangeListener("authenticated", this);
2066                 }
2067             }
2068         });
2069         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_ANALYSIS_INSTRUMENT_FILTER_ENABLED, true) {
2070         
2071             @Override
2072             public void applyDataBinding() {
2073                 if (model != null) {
2074                     model.addPropertyChangeListener("authenticated", this);
2075                 }
2076             }
2077         
2078             @Override
2079             public void processDataBinding() {
2080                 if (model != null) {
2081                     menuConfigAnalysisInstrumentFilter.setEnabled(getModel().isAuthenticated());
2082                 }
2083             }
2084         
2085             @Override
2086             public void removeDataBinding() {
2087                 if (model != null) {
2088                     model.removePropertyChangeListener("authenticated", this);
2089                 }
2090             }
2091         });
2092         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_TAXON_GROUP_FILTER_ENABLED, true) {
2093         
2094             @Override
2095             public void applyDataBinding() {
2096                 if (model != null) {
2097                     model.addPropertyChangeListener("authenticated", this);
2098                 }
2099             }
2100         
2101             @Override
2102             public void processDataBinding() {
2103                 if (model != null) {
2104                     menuConfigTaxonGroupFilter.setEnabled(getModel().isAuthenticated());
2105                 }
2106             }
2107         
2108             @Override
2109             public void removeDataBinding() {
2110                 if (model != null) {
2111                     model.removePropertyChangeListener("authenticated", this);
2112                 }
2113             }
2114         });
2115         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_SAMPLING_EQUIPMENT_FILTER_ENABLED, true) {
2116         
2117             @Override
2118             public void applyDataBinding() {
2119                 if (model != null) {
2120                     model.addPropertyChangeListener("authenticated", this);
2121                 }
2122             }
2123         
2124             @Override
2125             public void processDataBinding() {
2126                 if (model != null) {
2127                     menuConfigSamplingEquipmentFilter.setEnabled(getModel().isAuthenticated());
2128                 }
2129             }
2130         
2131             @Override
2132             public void removeDataBinding() {
2133                 if (model != null) {
2134                     model.removePropertyChangeListener("authenticated", this);
2135                 }
2136             }
2137         });
2138         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_USER_FILTER_ENABLED, true) {
2139         
2140             @Override
2141             public void applyDataBinding() {
2142                 if (model != null) {
2143                     model.addPropertyChangeListener("authenticated", this);
2144                 }
2145             }
2146         
2147             @Override
2148             public void processDataBinding() {
2149                 if (model != null) {
2150                     menuConfigUserFilter.setEnabled(getModel().isAuthenticated());
2151                 }
2152             }
2153         
2154             @Override
2155             public void removeDataBinding() {
2156                 if (model != null) {
2157                     model.removePropertyChangeListener("authenticated", this);
2158                 }
2159             }
2160         });
2161         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_SERVICES_FILTER_ENABLED, true) {
2162         
2163             @Override
2164             public void applyDataBinding() {
2165                 if (model != null) {
2166                     model.addPropertyChangeListener("authenticated", this);
2167                 }
2168             }
2169         
2170             @Override
2171             public void processDataBinding() {
2172                 if (model != null) {
2173                     menuConfigServicesFilter.setEnabled(getModel().isAuthenticated());
2174                 }
2175             }
2176         
2177             @Override
2178             public void removeDataBinding() {
2179                 if (model != null) {
2180                     model.removePropertyChangeListener("authenticated", this);
2181                 }
2182             }
2183         });
2184         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_FILTRES_PROGRAMMES_ENABLED, true) {
2185         
2186             @Override
2187             public void applyDataBinding() {
2188                 if (model != null) {
2189                     model.addPropertyChangeListener("authenticated", this);
2190                 }
2191             }
2192         
2193             @Override
2194             public void processDataBinding() {
2195                 if (model != null) {
2196                     menuConfigFiltresProgrammes.setEnabled(getModel().isAuthenticated());
2197                 }
2198             }
2199         
2200             @Override
2201             public void removeDataBinding() {
2202                 if (model != null) {
2203                     model.removePropertyChangeListener("authenticated", this);
2204                 }
2205             }
2206         });
2207         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_PSFM_FILTER_ENABLED, true) {
2208         
2209             @Override
2210             public void applyDataBinding() {
2211                 if (model != null) {
2212                     model.addPropertyChangeListener("authenticated", this);
2213                 }
2214             }
2215         
2216             @Override
2217             public void processDataBinding() {
2218                 if (model != null) {
2219                     menuConfigPsfmFilter.setEnabled(getModel().isAuthenticated());
2220                 }
2221             }
2222         
2223             @Override
2224             public void removeDataBinding() {
2225                 if (model != null) {
2226                     model.removePropertyChangeListener("authenticated", this);
2227                 }
2228             }
2229         });
2230         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_FILTRES_LIEUX_ENABLED, true) {
2231         
2232             @Override
2233             public void applyDataBinding() {
2234                 if (model != null) {
2235                     model.addPropertyChangeListener("authenticated", this);
2236                 }
2237             }
2238         
2239             @Override
2240             public void processDataBinding() {
2241                 if (model != null) {
2242                     menuConfigFiltresLieux.setEnabled(getModel().isAuthenticated());
2243                 }
2244             }
2245         
2246             @Override
2247             public void removeDataBinding() {
2248                 if (model != null) {
2249                     model.removePropertyChangeListener("authenticated", this);
2250                 }
2251             }
2252         });
2253         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_TAXON_FILTER_ENABLED, true) {
2254         
2255             @Override
2256             public void applyDataBinding() {
2257                 if (model != null) {
2258                     model.addPropertyChangeListener("authenticated", this);
2259                 }
2260             }
2261         
2262             @Override
2263             public void processDataBinding() {
2264                 if (model != null) {
2265                     menuConfigTaxonFilter.setEnabled(getModel().isAuthenticated());
2266                 }
2267             }
2268         
2269             @Override
2270             public void removeDataBinding() {
2271                 if (model != null) {
2272                     model.removePropertyChangeListener("authenticated", this);
2273                 }
2274             }
2275         });
2276         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_PROGRAMMES_STRATEGIES_ENABLED, true, true) {
2277         
2278             @Override
2279             public void applyDataBinding() {
2280                 if (model != null) {
2281                     model.addPropertyChangeListener("synchroEnabled", this);
2282                 }
2283                 if (model != null) {
2284                     model.addPropertyChangeListener("configuration", this);
2285                 }
2286                 if (model != null) {
2287                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
2288                 }
2289                 if (model != null) {
2290                     model.addPropertyChangeListener("synchroRunning", this);
2291                 }
2292             }
2293         
2294             @Override
2295             public void processDataBinding() {
2296                 if (model != null && getModel().getConfiguration() != null) {
2297                     menuConfigProgrammesStrategies.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
2298                 }
2299             }
2300         
2301             @Override
2302             public void removeDataBinding() {
2303                 if (model != null) {
2304                     model.removePropertyChangeListener("synchroEnabled", this);
2305                 }
2306                 if (model != null) {
2307                     model.removePropertyChangeListener("configuration", this);
2308                 }
2309                 if (model != null) {
2310                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
2311                 }
2312                 if (model != null) {
2313                     model.removePropertyChangeListener("synchroRunning", this);
2314                 }
2315             }
2316         });
2317         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CAMPAIGN_ENABLED, true, true) {
2318         
2319             @Override
2320             public void applyDataBinding() {
2321                 if (model != null) {
2322                     model.addPropertyChangeListener("synchroEnabled", this);
2323                 }
2324                 if (model != null) {
2325                     model.addPropertyChangeListener("configuration", this);
2326                 }
2327                 if (model != null) {
2328                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
2329                 }
2330                 if (model != null) {
2331                     model.addPropertyChangeListener("synchroRunning", this);
2332                 }
2333             }
2334         
2335             @Override
2336             public void processDataBinding() {
2337                 if (model != null && getModel().getConfiguration() != null) {
2338                     menuCampaign.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
2339                 }
2340             }
2341         
2342             @Override
2343             public void removeDataBinding() {
2344                 if (model != null) {
2345                     model.removePropertyChangeListener("synchroEnabled", this);
2346                 }
2347                 if (model != null) {
2348                     model.removePropertyChangeListener("configuration", this);
2349                 }
2350                 if (model != null) {
2351                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
2352                 }
2353                 if (model != null) {
2354                     model.removePropertyChangeListener("synchroRunning", this);
2355                 }
2356             }
2357         });
2358         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_REGLES_CONTROLES_ENABLED, true, true) {
2359         
2360             @Override
2361             public void applyDataBinding() {
2362                 if (model != null) {
2363                     model.addPropertyChangeListener("synchroEnabled", this);
2364                 }
2365                 if (model != null) {
2366                     model.addPropertyChangeListener("configuration", this);
2367                 }
2368                 if (model != null) {
2369                     model.addPropertyChangeListener("authenticatedAsLocalUser", this);
2370                 }
2371                 if (model != null) {
2372                     model.addPropertyChangeListener("synchroRunning", this);
2373                 }
2374             }
2375         
2376             @Override
2377             public void processDataBinding() {
2378                 if (model != null && getModel().getConfiguration() != null) {
2379                     menuConfigReglesControles.setEnabled((getModel().isSynchroEnabled() || !getModel().getConfiguration().isSynchronizationUsingServer()) && !getModel().isAuthenticatedAsLocalUser() && !getModel().isSynchroRunning());
2380                 }
2381             }
2382         
2383             @Override
2384             public void removeDataBinding() {
2385                 if (model != null) {
2386                     model.removePropertyChangeListener("synchroEnabled", this);
2387                 }
2388                 if (model != null) {
2389                     model.removePropertyChangeListener("configuration", this);
2390                 }
2391                 if (model != null) {
2392                     model.removePropertyChangeListener("authenticatedAsLocalUser", this);
2393                 }
2394                 if (model != null) {
2395                     model.removePropertyChangeListener("synchroRunning", this);
2396                 }
2397             }
2398         });
2399         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_REFERENTIEL_ENABLED, true) {
2400         
2401             @Override
2402             public void applyDataBinding() {
2403                 if (model != null) {
2404                     model.addPropertyChangeListener("authenticated", this);
2405                 }
2406             }
2407         
2408             @Override
2409             public void processDataBinding() {
2410                 if (model != null) {
2411                     menuReferentiel.setEnabled(getModel().isAuthenticated());
2412                 }
2413             }
2414         
2415             @Override
2416             public void removeDataBinding() {
2417                 if (model != null) {
2418                     model.removePropertyChangeListener("authenticated", this);
2419                 }
2420             }
2421         });
2422         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_REFERENTIEL_ANALYSIS_INSTRUMENTS_ENABLED, true) {
2423         
2424             @Override
2425             public void applyDataBinding() {
2426                 if (model != null) {
2427                     model.addPropertyChangeListener("authenticated", this);
2428                 }
2429             }
2430         
2431             @Override
2432             public void processDataBinding() {
2433                 if (model != null) {
2434                     menuReferentielAnalysisInstruments.setEnabled(getModel().isAuthenticated());
2435                 }
2436             }
2437         
2438             @Override
2439             public void removeDataBinding() {
2440                 if (model != null) {
2441                     model.removePropertyChangeListener("authenticated", this);
2442                 }
2443             }
2444         });
2445         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_REFERENTIEL_SAMPLING_EQUIPMENTS_ENABLED, true) {
2446         
2447             @Override
2448             public void applyDataBinding() {
2449                 if (model != null) {
2450                     model.addPropertyChangeListener("authenticated", this);
2451                 }
2452             }
2453         
2454             @Override
2455             public void processDataBinding() {
2456                 if (model != null) {
2457                     menuReferentielSamplingEquipments.setEnabled(getModel().isAuthenticated());
2458                 }
2459             }
2460         
2461             @Override
2462             public void removeDataBinding() {
2463                 if (model != null) {
2464                     model.removePropertyChangeListener("authenticated", this);
2465                 }
2466             }
2467         });
2468         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_USERS_ORGANISMES_ENABLED, true) {
2469         
2470             @Override
2471             public void applyDataBinding() {
2472                 if (model != null) {
2473                     model.addPropertyChangeListener("authenticated", this);
2474                 }
2475             }
2476         
2477             @Override
2478             public void processDataBinding() {
2479                 if (model != null) {
2480                     menuUsersOrganismes.setEnabled(getModel().isAuthenticated());
2481                 }
2482             }
2483         
2484             @Override
2485             public void removeDataBinding() {
2486                 if (model != null) {
2487                     model.removePropertyChangeListener("authenticated", this);
2488                 }
2489             }
2490         });
2491         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_DEPARTMENTS_ENABLED, true) {
2492         
2493             @Override
2494             public void applyDataBinding() {
2495                 if (model != null) {
2496                     model.addPropertyChangeListener("authenticated", this);
2497                 }
2498             }
2499         
2500             @Override
2501             public void processDataBinding() {
2502                 if (model != null) {
2503                     menuDepartments.setEnabled(getModel().isAuthenticated());
2504                 }
2505             }
2506         
2507             @Override
2508             public void removeDataBinding() {
2509                 if (model != null) {
2510                     model.removePropertyChangeListener("authenticated", this);
2511                 }
2512             }
2513         });
2514         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_USERS_ENABLED, true) {
2515         
2516             @Override
2517             public void applyDataBinding() {
2518                 if (model != null) {
2519                     model.addPropertyChangeListener("authenticated", this);
2520                 }
2521             }
2522         
2523             @Override
2524             public void processDataBinding() {
2525                 if (model != null) {
2526                     menuUsers.setEnabled(getModel().isAuthenticated());
2527                 }
2528             }
2529         
2530             @Override
2531             public void removeDataBinding() {
2532                 if (model != null) {
2533                     model.removePropertyChangeListener("authenticated", this);
2534                 }
2535             }
2536         });
2537         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_PSFMS_ENABLED, true) {
2538         
2539             @Override
2540             public void applyDataBinding() {
2541                 if (model != null) {
2542                     model.addPropertyChangeListener("authenticated", this);
2543                 }
2544             }
2545         
2546             @Override
2547             public void processDataBinding() {
2548                 if (model != null) {
2549                     menuPsfms.setEnabled(getModel().isAuthenticated());
2550                 }
2551             }
2552         
2553             @Override
2554             public void removeDataBinding() {
2555                 if (model != null) {
2556                     model.removePropertyChangeListener("authenticated", this);
2557                 }
2558             }
2559         });
2560         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_FRACTIONS_ENABLED, true) {
2561         
2562             @Override
2563             public void applyDataBinding() {
2564                 if (model != null) {
2565                     model.addPropertyChangeListener("authenticated", this);
2566                 }
2567             }
2568         
2569             @Override
2570             public void processDataBinding() {
2571                 if (model != null) {
2572                     menuFractions.setEnabled(getModel().isAuthenticated());
2573                 }
2574             }
2575         
2576             @Override
2577             public void removeDataBinding() {
2578                 if (model != null) {
2579                     model.removePropertyChangeListener("authenticated", this);
2580                 }
2581             }
2582         });
2583         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_METHODS_ENABLED, true) {
2584         
2585             @Override
2586             public void applyDataBinding() {
2587                 if (model != null) {
2588                     model.addPropertyChangeListener("authenticated", this);
2589                 }
2590             }
2591         
2592             @Override
2593             public void processDataBinding() {
2594                 if (model != null) {
2595                     menuMethods.setEnabled(getModel().isAuthenticated());
2596                 }
2597             }
2598         
2599             @Override
2600             public void removeDataBinding() {
2601                 if (model != null) {
2602                     model.removePropertyChangeListener("authenticated", this);
2603                 }
2604             }
2605         });
2606         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_PARAMETERS_ENABLED, true) {
2607         
2608             @Override
2609             public void applyDataBinding() {
2610                 if (model != null) {
2611                     model.addPropertyChangeListener("authenticated", this);
2612                 }
2613             }
2614         
2615             @Override
2616             public void processDataBinding() {
2617                 if (model != null) {
2618                     menuParameters.setEnabled(getModel().isAuthenticated());
2619                 }
2620             }
2621         
2622             @Override
2623             public void removeDataBinding() {
2624                 if (model != null) {
2625                     model.removePropertyChangeListener("authenticated", this);
2626                 }
2627             }
2628         });
2629         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_QUADRUPLETS_ENABLED, true) {
2630         
2631             @Override
2632             public void applyDataBinding() {
2633                 if (model != null) {
2634                     model.addPropertyChangeListener("authenticated", this);
2635                 }
2636             }
2637         
2638             @Override
2639             public void processDataBinding() {
2640                 if (model != null) {
2641                     menuQuadruplets.setEnabled(getModel().isAuthenticated());
2642                 }
2643             }
2644         
2645             @Override
2646             public void removeDataBinding() {
2647                 if (model != null) {
2648                     model.removePropertyChangeListener("authenticated", this);
2649                 }
2650             }
2651         });
2652         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_MATRICES_ENABLED, true) {
2653         
2654             @Override
2655             public void applyDataBinding() {
2656                 if (model != null) {
2657                     model.addPropertyChangeListener("authenticated", this);
2658                 }
2659             }
2660         
2661             @Override
2662             public void processDataBinding() {
2663                 if (model != null) {
2664                     menuMatrices.setEnabled(getModel().isAuthenticated());
2665                 }
2666             }
2667         
2668             @Override
2669             public void removeDataBinding() {
2670                 if (model != null) {
2671                     model.removePropertyChangeListener("authenticated", this);
2672                 }
2673             }
2674         });
2675         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_REFERENTIEL_TAXINOMIQUE_ENABLED, true) {
2676         
2677             @Override
2678             public void applyDataBinding() {
2679                 if (model != null) {
2680                     model.addPropertyChangeListener("authenticated", this);
2681                 }
2682             }
2683         
2684             @Override
2685             public void processDataBinding() {
2686                 if (model != null) {
2687                     menuReferentielTaxinomique.setEnabled(getModel().isAuthenticated());
2688                 }
2689             }
2690         
2691             @Override
2692             public void removeDataBinding() {
2693                 if (model != null) {
2694                     model.removePropertyChangeListener("authenticated", this);
2695                 }
2696             }
2697         });
2698         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_GROUPE_TAXONS_ENABLED, true) {
2699         
2700             @Override
2701             public void applyDataBinding() {
2702                 if (model != null) {
2703                     model.addPropertyChangeListener("authenticated", this);
2704                 }
2705             }
2706         
2707             @Override
2708             public void processDataBinding() {
2709                 if (model != null) {
2710                     menuConfigGroupeTaxons.setEnabled(getModel().isAuthenticated());
2711                 }
2712             }
2713         
2714             @Override
2715             public void removeDataBinding() {
2716                 if (model != null) {
2717                     model.removePropertyChangeListener("authenticated", this);
2718                 }
2719             }
2720         });
2721         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_TAXONS_ENABLED, true) {
2722         
2723             @Override
2724             public void applyDataBinding() {
2725                 if (model != null) {
2726                     model.addPropertyChangeListener("authenticated", this);
2727                 }
2728             }
2729         
2730             @Override
2731             public void processDataBinding() {
2732                 if (model != null) {
2733                     menuConfigTaxons.setEnabled(getModel().isAuthenticated());
2734                 }
2735             }
2736         
2737             @Override
2738             public void removeDataBinding() {
2739                 if (model != null) {
2740                     model.removePropertyChangeListener("authenticated", this);
2741                 }
2742             }
2743         });
2744         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_CONFIG_LIEUX_ENABLED, true) {
2745         
2746             @Override
2747             public void applyDataBinding() {
2748                 if (model != null) {
2749                     model.addPropertyChangeListener("authenticated", this);
2750                 }
2751             }
2752         
2753             @Override
2754             public void processDataBinding() {
2755                 if (model != null) {
2756                     menuConfigLieux.setEnabled(getModel().isAuthenticated());
2757                 }
2758             }
2759         
2760             @Override
2761             public void removeDataBinding() {
2762                 if (model != null) {
2763                     model.removePropertyChangeListener("authenticated", this);
2764                 }
2765             }
2766         });
2767         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_REFERENTIAL_UNITS_ENABLED, true) {
2768         
2769             @Override
2770             public void applyDataBinding() {
2771                 if (model != null) {
2772                     model.addPropertyChangeListener("authenticated", this);
2773                 }
2774             }
2775         
2776             @Override
2777             public void processDataBinding() {
2778                 if (model != null) {
2779                     menuReferentialUnits.setEnabled(getModel().isAuthenticated());
2780                 }
2781             }
2782         
2783             @Override
2784             public void removeDataBinding() {
2785                 if (model != null) {
2786                     model.removePropertyChangeListener("authenticated", this);
2787                 }
2788             }
2789         });
2790         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_HELP_ENABLED, true) {
2791         
2792             @Override
2793             public void applyDataBinding() {
2794                 if (model != null) {
2795                     model.addPropertyChangeListener("screen", this);
2796                 }
2797             }
2798         
2799             @Override
2800             public void processDataBinding() {
2801                 if (model != null) {
2802                     menuHelp.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
2803                 }
2804             }
2805         
2806             @Override
2807             public void removeDataBinding() {
2808                 if (model != null) {
2809                     model.removePropertyChangeListener("screen", this);
2810                 }
2811             }
2812         });
2813         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_SHOW_HELP_ENABLED, true) {
2814         
2815             @Override
2816             public void applyDataBinding() {
2817                 if (model != null) {
2818                     model.addPropertyChangeListener("screen", this);
2819                 }
2820             }
2821         
2822             @Override
2823             public void processDataBinding() {
2824                 if (model != null) {
2825                     menuShowHelp.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
2826                 }
2827             }
2828         
2829             @Override
2830             public void removeDataBinding() {
2831                 if (model != null) {
2832                     model.removePropertyChangeListener("screen", this);
2833                 }
2834             }
2835         });
2836         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_HELP_SITE_ENABLED, true) {
2837         
2838             @Override
2839             public void applyDataBinding() {
2840                 if (model != null) {
2841                     model.addPropertyChangeListener("screen", this);
2842                 }
2843             }
2844         
2845             @Override
2846             public void processDataBinding() {
2847                 if (model != null) {
2848                     menuHelpSite.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
2849                 }
2850             }
2851         
2852             @Override
2853             public void removeDataBinding() {
2854                 if (model != null) {
2855                     model.removePropertyChangeListener("screen", this);
2856                 }
2857             }
2858         });
2859         registerDataBinding(new DefaultJAXXBinding(this, BINDING_MENU_HELP_ABOUT_ENABLED, true) {
2860         
2861             @Override
2862             public void applyDataBinding() {
2863                 if (model != null) {
2864                     model.addPropertyChangeListener("screen", this);
2865                 }
2866             }
2867         
2868             @Override
2869             public void processDataBinding() {
2870                 if (model != null) {
2871                     menuHelpAbout.setEnabled(getModel().getScreen() != ReefDbScreen.CONFIG);
2872                 }
2873             }
2874         
2875             @Override
2876             public void removeDataBinding() {
2877                 if (model != null) {
2878                     model.removePropertyChangeListener("screen", this);
2879                 }
2880             }
2881         });
2882     }
2883 
2884 }