Tutti-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
November 2013
- 5 participants
- 100 discussions
r1415 - in trunk: src/conception/specifications tutti-ui-swing/src/main/help/fr
by lkaufmann@users.forge.codelutin.com 29 Nov '13
by lkaufmann@users.forge.codelutin.com 29 Nov '13
29 Nov '13
Author: lkaufmann
Date: 2013-11-29 17:47:13 +0100 (Fri, 29 Nov 2013)
New Revision: 1415
Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1415
Log:
Specifications v0.3 update
Modified:
trunk/src/conception/specifications/AllegroCampagne-Specifications.odt
trunk/src/conception/specifications/AllegroCampagne-Specifications.pdf
trunk/tutti-ui-swing/src/main/help/fr/editFishingOperation.html
Modified: trunk/src/conception/specifications/AllegroCampagne-Specifications.odt
===================================================================
(Binary files differ)
Modified: trunk/src/conception/specifications/AllegroCampagne-Specifications.pdf
===================================================================
(Binary files differ)
Modified: trunk/tutti-ui-swing/src/main/help/fr/editFishingOperation.html
===================================================================
--- trunk/tutti-ui-swing/src/main/help/fr/editFishingOperation.html 2013-11-29 16:36:43 UTC (rev 1414)
+++ trunk/tutti-ui-swing/src/main/help/fr/editFishingOperation.html 2013-11-29 16:47:13 UTC (rev 1415)
@@ -920,7 +920,7 @@
</dd>
<dt>Importer des lots de déchets</dt>
<dd> En mode "saisie multi-postes",
- permet d'importer une saisie des macro-déchetss réalisée sur un autre
+ permet d'importer une saisie des macro-déchets réalisée sur un autre
poste.
Le fichier à importer est celui généré par l'option "Exporter les lots
de déchets".
1
0
Author: tchemit
Date: 2013-11-29 17:36:43 +0100 (Fri, 29 Nov 2013)
New Revision: 1414
Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1414
Log:
refs #3893: Int?\195?\169grer adagio 3.4.1
Modified:
trunk/pom.xml
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2013-11-29 16:35:33 UTC (rev 1413)
+++ trunk/pom.xml 2013-11-29 16:36:43 UTC (rev 1414)
@@ -138,7 +138,7 @@
<slf4jVersion>1.7.5</slf4jVersion>
- <adagioVersion>3.4.0-1</adagioVersion>
+ <adagioVersion>3.4.1-SNAPSHOT</adagioVersion>
<birtVersion>4.2.1a</birtVersion>
<bluecoveVersion>2.1.0</bluecoveVersion>
1
0
r1413 - in trunk: tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/test tutti-service/src/test/java/fr/ifremer/tutti/service
by tchemit@users.forge.codelutin.com 29 Nov '13
by tchemit@users.forge.codelutin.com 29 Nov '13
29 Nov '13
Author: tchemit
Date: 2013-11-29 17:35:33 +0100 (Fri, 29 Nov 2013)
New Revision: 1413
Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1413
Log:
fix some tests
Modified:
trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/test/DatabaseFixtures.java
trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/test/DatabaseResource.java
trunk/tutti-service/src/test/java/fr/ifremer/tutti/service/UpdateSchemaTest.java
Modified: trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/test/DatabaseFixtures.java
===================================================================
--- trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/test/DatabaseFixtures.java 2013-11-29 09:19:25 UTC (rev 1412)
+++ trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/test/DatabaseFixtures.java 2013-11-29 16:35:33 UTC (rev 1413)
@@ -73,7 +73,7 @@
public class DatabaseFixtures {
public Version lastAdagioSchemaVersion() {
- return VersionUtil.valueOf("3.2.3");
+ return VersionUtil.valueOf("3.4.1");
}
public Version currentAdagioSchemaVersion() {
Modified: trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/test/DatabaseResource.java
===================================================================
--- trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/test/DatabaseResource.java 2013-11-29 09:19:25 UTC (rev 1412)
+++ trunk/tutti-persistence/src/main/java/fr/ifremer/tutti/persistence/test/DatabaseResource.java 2013-11-29 16:35:33 UTC (rev 1413)
@@ -259,7 +259,7 @@
applicationConfig.parse();
config = new TuttiConfiguration(applicationConfig);
-
+ TuttiConfiguration.setInstance(config);
File db;
if (writeDb) {
@@ -382,6 +382,7 @@
}
closeSpring();
+ TuttiConfiguration.setInstance(null);
Set<Failure> failures = TuttiRunListener.getFailuresForClass(
description.getClassName());
Modified: trunk/tutti-service/src/test/java/fr/ifremer/tutti/service/UpdateSchemaTest.java
===================================================================
--- trunk/tutti-service/src/test/java/fr/ifremer/tutti/service/UpdateSchemaTest.java 2013-11-29 09:19:25 UTC (rev 1412)
+++ trunk/tutti-service/src/test/java/fr/ifremer/tutti/service/UpdateSchemaTest.java 2013-11-29 16:35:33 UTC (rev 1413)
@@ -40,7 +40,6 @@
* @author tchemit <chemit(a)codelutin.com>
* @since 2.4
*/
-@Ignore
public class UpdateSchemaTest {
@ClassRule
1
0
r1412 - in trunk/tutti-ui-swing/src/main: java/fr/ifremer/tutti/ui/swing java/fr/ifremer/tutti/ui/swing/action java/fr/ifremer/tutti/ui/swing/content java/fr/ifremer/tutti/ui/swing/content/db resources/i18n
by tchemit@users.forge.codelutin.com 29 Nov '13
by tchemit@users.forge.codelutin.com 29 Nov '13
29 Nov '13
Author: tchemit
Date: 2013-11-29 10:19:25 +0100 (Fri, 29 Nov 2013)
New Revision: 1412
Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1412
Log:
fixes #3894: [TECH] Impossible d'exporter en mode d?\195?\169connect?\195?\169
Modified:
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowAboutAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateApplicationAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateReportAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUIHandler.java
trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties
trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -97,7 +97,7 @@
}
// check application url is reachable
- boolean canUpdateApplication = context.checkUpdateApplicationReachable();
+ boolean canUpdateApplication = context.checkUpdateApplicationReachable(true);
if (canUpdateApplication) {
// try to update jre - i18n - application - help and exit if so
@@ -107,15 +107,14 @@
public TuttiUIContext getContext() {
return context;
}
- },
- UpdateApplicationAction.class);
+ }, UpdateApplicationAction.class);
context.getActionEngine().runActionAndWait(logicAction);
reload = logicAction.isReload();
}
// check data url is reachable
- boolean canUpdateData = context.checkUpdateDataReachable();
+ boolean canUpdateData = context.checkUpdateDataReachable(true);
if (canUpdateData) {
// try to update report and exit if so
@@ -125,8 +124,7 @@
public TuttiUIContext getContext() {
return context;
}
- },
- UpdateReportAction.class);
+ }, UpdateReportAction.class);
context.getActionEngine().runActionAndWait(logicAction);
reload |= logicAction.isReload();
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -31,12 +31,12 @@
import fr.ifremer.shared.application.ApplicationConfiguration;
import fr.ifremer.shared.application.ApplicationIOUtil;
import fr.ifremer.shared.application.ApplicationTechnicalException;
+import fr.ifremer.shared.application.listener.PropagatePropertyChangeListener;
import fr.ifremer.shared.application.swing.ApplicationUIContext;
import fr.ifremer.shared.application.swing.action.ApplicationActionEngine;
import fr.ifremer.shared.application.swing.action.ApplicationActionFactory;
import fr.ifremer.shared.application.swing.action.ApplicationActionUI;
import fr.ifremer.shared.application.swing.util.ApplicationErrorHelper;
-import fr.ifremer.shared.application.listener.PropagatePropertyChangeListener;
import fr.ifremer.tutti.TuttiConfiguration;
import fr.ifremer.tutti.persistence.RessourceClassLoader;
import fr.ifremer.tutti.service.ClosedPersistenceService;
@@ -80,6 +80,7 @@
import org.nuiton.i18n.init.UserI18nInitializer;
import org.nuiton.util.converter.ConverterUtil;
+import javax.swing.JOptionPane;
import java.awt.Color;
import java.awt.Component;
import java.beans.PropertyChangeEvent;
@@ -299,7 +300,22 @@
additionalStates.put(BeanDoubleList.class, new BeanDoubleListState());
this.swingSession = new SwingSession(getConfig().getUIConfigFile(), false, additionalStates);
- this.errorHelper = new ApplicationErrorHelper(this);
+ //FIXME Push this to ifremer-shared
+ this.errorHelper = new ApplicationErrorHelper(this) {
+
+ @Override
+ public void showWarningDialog(String message) {
+
+ JOptionPane.showMessageDialog(context.getActionUI(), "<html><body>" + message + "</body></html>",
+ _("application.error.ui.business.warning"),
+ JOptionPane.WARNING_MESSAGE);
+ }
+
+ @Override
+ public void showErrorDialog(String message, Throwable cause) {
+ super.showErrorDialog(message, cause);
+ }
+ };
this.dataContext = serviceContext.getDataContext();
PropagatePropertyChangeListener.listenAndPropagateAll(dataContext, this);
UIMessageNotifier logMessageNotifier = new UIMessageNotifier() {
@@ -939,7 +955,7 @@
}
}
- public boolean checkUpdateApplicationReachable() {
+ public boolean checkUpdateApplicationReachable(boolean showErrorInPopup) {
boolean result = true;
TuttiConfiguration config = getConfig();
@@ -953,13 +969,18 @@
n_("tutti.error.update.could.not.found.url")
);
} catch (ApplicationBusinessException e) {
- getErrorHelper().showWarningDialog(e.getMessage());
+ if (showErrorInPopup) {
+
+ getErrorHelper().showWarningDialog(e.getMessage());
+ } else {
+ showInformationMessage(e.getMessage());
+ }
result = false;
}
return result;
}
- public boolean checkUpdateDataReachable() {
+ public boolean checkUpdateDataReachable(boolean showErrorInPopup) {
boolean result = true;
TuttiConfiguration config = getConfig();
@@ -973,7 +994,12 @@
n_("tutti.error.update.could.not.found.url")
);
} catch (ApplicationBusinessException e) {
- getErrorHelper().showWarningDialog(e.getMessage());
+ if (showErrorInPopup) {
+
+ getErrorHelper().showWarningDialog(e.getMessage());
+ } else {
+ showInformationMessage(e.getMessage());
+ }
result = false;
}
return result;
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallDbAction.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/InstallDbAction.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -67,7 +67,7 @@
if (doAction) {
// check db url is reachable
- doAction = getContext().checkUpdateDataReachable();
+ doAction = getContext().checkUpdateDataReachable(true);
}
if (doAction) {
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -93,7 +93,7 @@
closeDb = updateSchema = false;
updateDbVersion = null;
- updateReferentiel &= getContext().checkUpdateDataReachable();
+ updateReferentiel &= getContext().checkUpdateDataReachable(false);
if (updateReferentiel) {
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -63,7 +63,7 @@
// check db url is reachable
TuttiUIContext context = getContext();
- doAction = context.checkUpdateDataReachable();
+ doAction = context.checkUpdateDataReachable(true);
}
if (doAction) {
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowAboutAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowAboutAction.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ShowAboutAction.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -80,8 +80,8 @@
if (doAction) {
// check db url is reachable
TuttiUIContext context = getContext();
- canUpdateApplication = context.checkUpdateApplicationReachable();
- canUpdateData = context.checkUpdateDataReachable();
+ canUpdateApplication = context.checkUpdateApplicationReachable(false);
+ canUpdateData = context.checkUpdateDataReachable(false);
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateApplicationAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateApplicationAction.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateApplicationAction.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -68,7 +68,7 @@
if (doAction) {
// check application url is reachable
TuttiUIContext context = getContext();
- doAction = context.checkUpdateApplicationReachable();
+ doAction = context.checkUpdateApplicationReachable(true);
}
return doAction;
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateDbAction.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateDbAction.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -67,7 +67,7 @@
if (doAction) {
// check db url is reachable
- doAction = getContext().checkUpdateDataReachable();
+ doAction = getContext().checkUpdateDataReachable(true);
}
if (doAction) {
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateReportAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateReportAction.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/UpdateReportAction.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -65,7 +65,7 @@
if (doAction) {
// check data url is reachable
TuttiUIContext context = getContext();
- doAction = context.checkUpdateDataReachable();
+ doAction = context.checkUpdateDataReachable(true);
}
return doAction;
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -103,6 +103,7 @@
public void beforeInit(MainUI ui) {
super.beforeInit(ui);
TuttiUIContext context = getContext();
+ ui.setContextValue(context);
context.setMainUI(ui);
context.setActionUI(new ApplicationActionUI(ui, context));
context.addPropertyChangeListener(new RemoveablePropertyChangeListener() {
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUIHandler.java 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUIHandler.java 2013-11-29 09:19:25 UTC (rev 1412)
@@ -97,7 +97,7 @@
// get referential version
- if (getContext().checkUpdateDataReachable()) {
+ if (getContext().checkUpdateDataReachable(false)) {
String urlDb = config.getUpdateDataUrl();
ApplicationUpdater up = new ApplicationUpdater();
@@ -136,9 +136,15 @@
}
@Override
+ public void beforeInit(DbManagerUI ui) {
+ super.beforeInit(ui);
+ ui.setContextValue(getContext());
+ }
+
+ @Override
public void afterInit(DbManagerUI ui) {
- initUI(this.ui);
+ initUI(ui);
getModel().addPropertyChangeListener(TuttiUIContext.PROPERTY_DB_EXIST, new PropertyChangeListener() {
@Override
Modified: trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties
===================================================================
--- trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_en_GB.properties 2013-11-29 09:19:25 UTC (rev 1412)
@@ -5,6 +5,7 @@
application.error.desktop.browse.not.supported=
application.error.desktop.mail.not.supported=
application.error.desktop.not.supported=
+application.error.ui.business.warning=
coordinate.action.reset.tip=
observe.common.quadrant1=
observe.common.quadrant2=
Modified: trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties
===================================================================
--- trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties 2013-11-28 18:54:12 UTC (rev 1411)
+++ trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties 2013-11-29 09:19:25 UTC (rev 1412)
@@ -4,6 +4,7 @@
application.error.desktop.browse.not.supported=
application.error.desktop.mail.not.supported=
application.error.desktop.not.supported=
+application.error.ui.business.warning=
swing.error.cannot.mail=Erreur lors de l'ouverture du client mail
swing.error.cannot.open.file=Aucun programme n'est défini pour ouvrir ce type de fichier. Enregistrez le fichier et ouvrez le en dehors de l'application
swing.error.cannot.open.link=Impossible d'ouvrir le fichier %s
1
0
r1411 - in trunk: src/conception/specifications src/conception/specifications/Concepts-metiers src/conception/specifications/Fonctionnalites-metiers src/conception/specifications/Fonctionnalites-transversales src/conception/specifications/Presentation src/site/rst tutti-ui-swing/src/main/help/fr
by lkaufmann@users.forge.codelutin.com 28 Nov '13
by lkaufmann@users.forge.codelutin.com 28 Nov '13
28 Nov '13
Author: lkaufmann
Date: 2013-11-28 19:54:12 +0100 (Thu, 28 Nov 2013)
New Revision: 1411
Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1411
Log:
Specifications v0.3 upgrade
Added:
trunk/src/conception/specifications/Concepts-metiers/Materiels.txt
trunk/src/conception/specifications/Fonctionnalites-transversales/Configuration.txt
trunk/src/conception/specifications/Fonctionnalites-transversales/Taxonomie.txt
Removed:
trunk/src/conception/specifications/Concepts-metiers/Engin.txt
trunk/src/conception/specifications/Fonctionnalites-transversales/ConfigurationApplication.txt
trunk/src/conception/specifications/Fonctionnalites-transversales/ConfigurationCategorisation.txt
Modified:
trunk/src/conception/specifications/AllegroCampagne-Specifications.odt
trunk/src/conception/specifications/AllegroCampagne-Specifications.pdf
trunk/src/conception/specifications/Concepts-metiers/Campagne.txt
trunk/src/conception/specifications/Concepts-metiers/Capture.txt
trunk/src/conception/specifications/Concepts-metiers/OperationPecheTrait.txt
trunk/src/conception/specifications/Concepts-metiers/ProtocoleSaisie.txt
trunk/src/conception/specifications/Concepts-metiers/VracHorsVrac.txt
trunk/src/conception/specifications/Fonctionnalites-metiers/GestionCampagnes.txt
trunk/src/conception/specifications/Fonctionnalites-metiers/GestionCaptures.txt
trunk/src/conception/specifications/Fonctionnalites-metiers/GestionProtocoles.txt
trunk/src/conception/specifications/Fonctionnalites-metiers/GestionRef?\195?\169rentielsTemporaires.txt
trunk/src/conception/specifications/Fonctionnalites-transversales/ControleSaisie.txt
trunk/src/conception/specifications/Fonctionnalites-transversales/GestionMisesAJour.txt
trunk/src/conception/specifications/Presentation/PresentationGenerale.txt
trunk/src/site/rst/mapping.rst
trunk/tutti-ui-swing/src/main/help/fr/config.html
/opt/redmine-tools/commit-email.pl: `/usr/bin/svnlook diff /var/lib/svn/svn-forge.codelutin.com/tutti -r 1411' failed with this output:
Modified: trunk/src/conception/specifications/AllegroCampagne-Specifications.odt
===================================================================
(Binary files differ)
Modified: trunk/src/conception/specifications/AllegroCampagne-Specifications.pdf
===================================================================
(Binary files differ)
Modified: trunk/src/conception/specifications/Concepts-metiers/Campagne.txt
===================================================================
--- trunk/src/conception/specifications/Concepts-metiers/Campagne.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Concepts-metiers/Campagne.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -1,11 +1,11 @@
-Les campagnes de pêche scientifique standardisées ont deux principaux objectifs : Observer les ressources halieutiques et produire des indices biologiques pour connaître l'état et l'évolution des espèces exploitées.
+Les campagnes de pêche scientifique standardisées ont deux principaux objectifs : Observer les ressources halieutiques et produire des indices biologiques pour connaître l'état et l'évolution des espèces exploitées.
* Observations et méthodes
Les campagnes suivent toujours les mêmes méthodes d'échantillonnage. Elles sont toujours réalisées dans la même zone, à la même saison, avec des engins de pêche standardisés, afin que les données soient comparables d'année en année.
Chaque campagne est généralement accomplie une fois par an. Mais certains cas spécifiques imposent sa réalisation plusieurs fois par an, on parle alors de leg ou de série partielle.
-Chaque zone étudiée est découpée en strates en fonction de la profondeur, de la latitude ou d'autres critères. L'échantillonnage prévoit un nombre de traits de chalut ou de mouillages de casiers par strate.
+Chaque zone étudiée est découpée en strates en fonction de la profondeur, de la latitude ou d'autres critères.
Dans une campagne de chalutage scientifique, les positions des traits de chalut sont choisies selon un plan d'échantillonnage statistique. L'objectif n'est pas d'obtenir les meilleures captures possibles comme le recherchent les pêcheurs, mais de récolter des données comparables d'une année sur l'autre afin de relever des évolutions.
@@ -14,4 +14,6 @@
D'autres informations sont également relevées (température, salinité, macrofaune, observation des mammifères marins, oiseaux, macro déchets etc.).
* Analyses et indices d'évolution
-Les campagnes scientifiques à vocation halieutique ont pour objectif de produire des indices biologiques pour connaître l'état et l'évolution des espèces exploitées : abondance et distribution des espèces commerciales, stades clés du cycle de vie des espèces, description des populations. Elles ont aussi pour but d'élaborer des indicateurs sur les écosystèmes exploités.
\ No newline at end of file
+Les campagnes scientifiques à vocation halieutique ont pour objectif de produire des indices biologiques pour connaître l'état et l'évolution des espèces exploitées : abondance et distribution des espèces commerciales, stades clés du cycle de vie des espèces, description des populations. Elles ont aussi pour but d'élaborer des indicateurs sur les écosystèmes exploités.
+
+
Modified: trunk/src/conception/specifications/Concepts-metiers/Capture.txt
===================================================================
--- trunk/src/conception/specifications/Concepts-metiers/Capture.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Concepts-metiers/Capture.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -1,14 +1,16 @@
-Les captures peuvent aussi bien être réalisés dans un cadre scientifique que lors d'une pêche professionnelle classique.
-Toutes les prises réalisées lors des captures, de tout type, sont catégorisées. Les constations et les mesures à effectuer varient en fonction de la sorte des éléments capturés.
+Les captures sont réalisées dans un cadre scientifique ou lors d'une pêche professionnelle classique.
+Toutes les prises réalisées lors des captures sont catégorisées en fonction de leur type (Espèces, Benthos, Macro déchets et Captures accidentelles). Pour les espèces une catégorie supplémentaire (Observations individuelles) permet de renseigner des observations sur un seul individu, plutôt que sur un lot.
+Les constations et les mesures à effectuer varient en fonction de la sorte des éléments capturés (et du protocole de saisie).
+
* Espèces
Les observations parmi les prises se font généralement par lots d'espèce. Une quantité significative d'une même nature fournit des observations plus représentatives.
+
Les espèces étudiées sont des poissons, des mollusques et des crustacés.
* Benthos
-Le benthos regroupe l'ensemble des organismes vivant en relation étroite avec les fonds subaquatiques : benthos végétal ou phytobenthos (algues et phanérogames) et benthos animal ou
-zoobenthos (vers, mollusques, crustacés...)
+Le benthos regroupe l'ensemble des organismes vivant en relation étroite avec les fonds subaquatiques : benthos végétal ou phytobenthos (algues et phanérogames) et benthos animal ou zoobenthos (vers, mollusques, crustacés...)
* Macro déchets
Malheureusement, l'environnement maritime a été affecté par les activités humaines, intentionnellement ou par accident. La problématique ne se pose pas uniquement pour les littoraux mais également les grandes profondeurs. Les déchets sont en effet transportés par les courants océaniques et terminent leurs parcours dans des zones où ils s'accumulent et constituent de véritables décharges sous-marines.
@@ -21,16 +23,16 @@
- Baril
* Observations individuelles
+Les analyses portant sur des espèces sont réalisées par lot principalement, mais elles peuvent également être effectuées séparément, par individu. Dans l'application, ces résultats unitaires sont regroupés dans la section des observations individuelles.
-Les analyses se portent sur des espèces, principalement par lots, mais elles peuvent également être effectuées séparément, par individu.
Les mesures peuvent alors êtres plus détaillées, apportant des observations d'une précision accrue.
-
-* Captures accidentelles
-
+* Captures accidentelles
Toute capture réalisée en mer peut inclure des espèces non ciblées par les campagnes d'observations, et captées fortuitement dans les chaluts.
Exemples de captures accidentelles :
- Dauphin
- Baleine
- Tortue
+
+Ces captures ne sont pas examinées mais sont tout de même recensées car ce dénombrement sert à alimenter d'autres études et fournir des informations supplémentaires sur la faune maritime.
\ No newline at end of file
Deleted: trunk/src/conception/specifications/Concepts-metiers/Engin.txt
===================================================================
--- trunk/src/conception/specifications/Concepts-metiers/Engin.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Concepts-metiers/Engin.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -1,8 +0,0 @@
-Différents engins d'échantillonnage sont utilisés :
-- Un chalut de fond à grande ouverture verticale pour l'observation des ressources démersales, sur les plateaux continentaux et le haut des pentes continentales (accores) en mer du Nord, Manche orientale, mer Celtique, golfe de Gascogne, golfe du Lion et Est de la Corse,
-- Un chalut à perche pour les zones très côtières et les estuaires lors des campagnes visant les juvéniles de poissons plats : baies de Somme et de Vilaine,
-- Un échantillonnage au casier pour les campagnes d'évaluation des grands crustacés, en particulier le homard, aux abords du cap de Flamanville.
-
-- Chalut de fond à grande ouverture verticale pour l'observation des ressources démersales,
-- Chalut à perche pour les zones très côtières et les estuaires lors des campagnes visant les juvéniles de poissons plats
-- Echantillonnage au casier pour les campagnes d'évaluation des grands crustacés.
Copied: trunk/src/conception/specifications/Concepts-metiers/Materiels.txt (from rev 1402, trunk/src/conception/specifications/Concepts-metiers/Engin.txt)
===================================================================
--- trunk/src/conception/specifications/Concepts-metiers/Materiels.txt (rev 0)
+++ trunk/src/conception/specifications/Concepts-metiers/Materiels.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -0,0 +1,12 @@
+1. Navires
+Les navires utilisés sont des bateaux de pêches professionnels ou des bateaux à vocation scientifique.
+
+2. Engins
+Différents engins d'échantillonnage sont utilisés :
+- Un chalut de fond à grande ouverture verticale pour l'observation des ressources démersales, sur les plateaux continentaux et le haut des pentes continentales (accores) en mer du Nord, Manche orientale, mer Celtique, golfe de Gascogne, golfe du Lion et Est de la Corse,
+- Un chalut à perche pour les zones très côtières et les estuaires lors des campagnes visant les juvéniles de poissons plats : baies de Somme et de Vilaine,
+- Un échantillonnage au casier pour les campagnes d'évaluation des grands crustacés, en particulier le homard, aux abords du cap de Flamanville.
+
+- Chalut de fond à grande ouverture verticale pour l'observation des ressources démersales,
+- Chalut à perche pour les zones très côtières et les estuaires lors des campagnes visant les juvéniles de poissons plats
+- Echantillonnage au casier pour les campagnes d'évaluation des grands crustacés.
Modified: trunk/src/conception/specifications/Concepts-metiers/OperationPecheTrait.txt
===================================================================
--- trunk/src/conception/specifications/Concepts-metiers/OperationPecheTrait.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Concepts-metiers/OperationPecheTrait.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -1,3 +1,3 @@
-Une campagne de pêche scientifique est composé d'une ou plusieurs sortie(s) en mer. Lors de ces sorties un certain nombre de captures est effectué à la traîne grâce au chalut. Chaque session de traîne représente un trait.
+Une campagne de pêche scientifique est composée d'une ou plusieurs sortie(s) en mer. Lors de ces sorties un certain nombre de captures est effectué à la traîne grâce au chalut. Chaque session de traîne représente un trait.
Lors de ces opérations, un trait dure généralement entre une demi-heure et trois heures.
\ No newline at end of file
Modified: trunk/src/conception/specifications/Concepts-metiers/ProtocoleSaisie.txt
===================================================================
--- trunk/src/conception/specifications/Concepts-metiers/ProtocoleSaisie.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Concepts-metiers/ProtocoleSaisie.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -1 +1,10 @@
-Chaque observations d'une campagne doit être réalisée selon un plan d'échantillonnage prédéfini et standardisé. Les protocoles de saisies permettent d'établir les observations à effectuer, ainsi que les informations à relevées et les règles à respecter pour ces observations.
+Chaque observation d'une campagne doit être réalisée selon un plan d'échantillonnage prédéfini et standardisé, i.e. un protocole de saisie. Afin de garantir l'exhaustivité et la qualité des variables collectées lors des observations le protocole permet définir des pré-requis et des convenances pour la saisie des informations.
+
+Ainsi un protocole comporte des espèces et des benthos couramment observées, qui seront proposés en priorité lors de la saisie.
+
+Parmi les caractéristiques principales proposées lors de chaque observation, le protocole permet de préciser, par espèces, celles qui sont obligatoires lors de l'enregistrement d'une capture.
+
+Un protocole de saisie peut également être spécifié par des caractéristiques supplémentaires que le saisisseur aura la possibilité de renseigner pour apporter des précisions aux mesures ajoutées.
+
+
+Ainsi le paramétrage d'un protocole de saisie permet de définir le périmètre et les contraintes à respecter au moment de la collecte des données. Cette configuration, effectuée en amont, apporte un encadrement uniforme à différentes saisies et différentes campagnes et assure l'homogénéité des mesures collectées.
\ No newline at end of file
Modified: trunk/src/conception/specifications/Concepts-metiers/VracHorsVrac.txt
===================================================================
--- trunk/src/conception/specifications/Concepts-metiers/VracHorsVrac.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Concepts-metiers/VracHorsVrac.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -1,15 +1,25 @@
-Le plus souvent se sont des individus rares et/ou de grande taille qui sont extraits directement de la capture pour être observés. Dans le cas où seul un échantillon de la capture est trié, ceci permet de ne pas appliquer le coefficient d'élévation à ces individus et/ou de bien les observer.
+Les notions de Vrac et Hors Vrac déterminent le procédé de recueil et d'évaluation des mesures pratiquées sur les captures.
-* Vrac
-Tout est trié car quantité supportable à trier
+Cela dépend essentiellement de la quantité d'individus captés pour chaque espèce.
+Si il est possible de trier cette quantité et de réaliser des observations sur l'intégralité du lot ou sur un échantillon conséquent, il s'agit de Vrac.
+En revanche, si la quantité est trop importante des extractions seront effectuées pour séparer des individus cibles dans le cadre du Hors Vrac.
+* Vrac
+Si la quantité totale d'une capture n'est excessive, celle ci constitue le lot de sujets étudiés. Le lot peut également être un échantillon issu d'une capture considérable.
+
+Les observations sont alors réalisées sur l'ensemble des individus du lot.
+
+Si le lot observé est un échantillon et ne représente en réalité qu'une partie de la capture initiale, les poids sont élevés pour estimer le total (Cf 3.3.5 Élévation des poids).
+
* Hors Vrac
-Échantillonnage de la capture car trop grande quantité à trier. Pour ne pas passer à côté des individus importants ils sont conservés en Hors Vrac. Puis observations sur l’échantillon gardés (Vrac). Si vrac échantillonné, on multiplie la quantité pour estimer le total.
+Lorsque la quantité d'individus récoltés est trop conséquente, un échantillonnage est alors pratiqué pour extraire des lots qui serviront pour les mesures. Mais les individus non retenus sont porteurs d'informations qu'il ne faut pas négliger. Certains individus importants sont alors extraits pour observation.
+Le plus souvent ce sont des individus rares et/ou de grande taille qui sont extraits directement de la capture pour être observés. Dans le cas où seul un échantillon de la capture est trié, ceci permet de ne pas appliquer le coefficient d'élévation à ces individus et/ou de bien les observer.
+
Catégorie associée à un lot ou un individu qui a été prélevé directement sur la capture sans passer par le pesage automatique ni le tri.
-Cas 1
+- Cas 1
Cette notion est utile dans les cas de capture abondante où seule une fraction de la capture va être observée. Dans cette configuration, les lots (catégorisés à VRAC) observés dans l'échantillon seront élevés (facteur d'élévation) pour obtenir les poids et nombre totaux dans la capture.
-Cas 2
+- Cas 2
Les individus rares ou atypiques qui auront été extraits de la capture avant échantillonnage ne devront pas être élevés car leur facteur d'élévation = 1.
-Cas 3
-par convention, lorsque la totalité de la capture est observée (pesée et triée), on catégorise tous les lots à VRAC.
\ No newline at end of file
+- Cas 3
+par convention, lorsque la totalité de la capture est observée (pesée et triée), on catégorise tous les lots à VRAC.
Modified: trunk/src/conception/specifications/Fonctionnalites-metiers/GestionCampagnes.txt
===================================================================
--- trunk/src/conception/specifications/Fonctionnalites-metiers/GestionCampagnes.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Fonctionnalites-metiers/GestionCampagnes.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -1,20 +1,92 @@
-a. Données caractéristiques
+1. Création/Édition d'une série de campagnes
+L'écran permettant d'ajouter une série de campagne est accessible depuis l'écran d'accueil. (Bouton Nouveau).
+* Données caractéristiques
+Une série de campagne est caractérisée par les données suivantes :
+Libellé, Description, Type
+Nom, Nom de la série de campagne (exemple EVHOE), Texte libre
+Zone, Nom de la zone d'étude, Choix parmi une liste finie. Provenant d'un référentiel des zones d'études des campagnes halieutiques.
+Description, Description de la série de campagne, Texte libre
+
+Toutes les informations sont à saisir obligatoirement.
+
+Le nom de la série de campagne est une valeur unique dans la base. Cette donnée sert d'identifiant pour la série de campagne et il ne peux y avoir de séries ayant le même nom.
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Fermer.
+L'écran est quitté sans sauvegarde des données saisies. Une fenêtre de confirmation permet de s'assurer que les modifications peuvent être abandonnées.
+
+
+* Édition
+La fonctionnalité d'édition d'une série de campagne est identique à la création.
+
+2. Création/Édition d'une campagne
+L'écran permettant d'ajouter une campagne est accessible depuis l'écran d'accueil. (Bouton Nouveau).
+
+Une campagne appartenant nécessairement à une série de campagne, il est imposé d'en sélectionner une pour accéder à l'écran d'ajout d'une campagne.
+
+* Données caractéristiques
Une campagne est caractérisée par les données suivantes :
+Libellé, Description, Type
+Série, La série de campagne dont fait partie la campagne, Choix parmi les séries de campagne existantes dans la base
+Série partielle, Numéro d'ordre de la campagne, Texte libre
+Port de départ, Port de départ de la campagne, Choix parmi une liste finie. Provenant d'un référentiel d'Harmonie.
+Port d'arrivée, Port d'arrivée de la campagne, Choix parmi une liste finie. Provenant d'un référentiel d'Harmonie.
+Nom, Nom de la campagne, Texte libre
+Date de début, Date de début de la campagne, Date (JJ/MM/AAAA)
+Date de fin, Date de fin de la campagne, Date (JJ/MM/AAAA)
+Nombre de poches, Nombre de poches de l'engin de pêche utilisé, Numérique
+Navire, Navire de la campagne, Liste. Choix parmi les navires existants en base
+Engin(s), Le ou les engin(s) qui sont mis en œuvre au cours de la campagne pour capturer des espèces, Liste. Fonctionnement via le principe de la double liste. Les éléments sont à sélectionner parmi la première liste, et sont ajoutés dans la seconde liste à leur sélection.
+Chef(s) de mission, Le ou les chef(s) de mission de la campagne, Liste. Fonctionnement via le principe de la double liste. Les éléments sont à sélectionner parmi la première liste, et sont ajoutés dans la seconde liste à leur sélection.
+Responsable(s) de salle de tri, Le ou les responsable(s) de la salle de tri de la campagne, Liste. Fonctionnement via le principe de la double liste. Les éléments sont à sélectionner parmi la première liste, et sont ajoutés dans la seconde liste à leur sélection.
+Commentaire, Commentaire sur la campagne, Texte libre
-Une série de campagne est caractérisée par les données suivantes :
-b. Création d'une campagne
+Tous les champs ne sont pas obligatoires pour la création d'une campagne.
-L'écran de création d'une campagne est accessible depuis la page d'accueil de l'application, en cliquant sur Nouveau. Lorsqu'une campagne est sélectionnée, elle peut être éditée à partir de ce menu.
+Le nom de la campagne est une valeur unique dans la base. Cette donnée sert d'identifiant pour la campagne et il ne peux y en avoir plusieurs avec le même nom.
-b. Création d'une série de campagne
+Série partielle
+Une campagne peut être réalisée plusieurs fois par an. Le champs Série Partielle permet de faire la différence entre différentes campagnes.
+Navires
+Les navires du référentiel peuvent être de type scientifiques ou professionnels. Il est donc primordial de pouvoir trier la liste des navires pour n'afficher qu'une seule de ces catégories ou les deux.
+Dans le cas où le navire n'est pas listé, il est possible via le menu « Administration/Référentiels temporaires » d'ajouter un navire. Cf 3.4.2 Référentiel temporaire des navires.
-c. Export de campagnes
-* Export d'une campagne
+Engins
+Les engins du référentiel peuvent être de type scientifiques ou professionnels. Il est donc primordial de pouvoir trier la liste des engins pour n'afficher qu'une seule de ces catégories ou les deux.
+Chef(s) de mission et responsable(s) de tri
+Dans le cas où des personnes ne seraient pas listées, il est possible via le menu « Administration/Référentiels temporaires » d'ajouter des personnes. Cf 3.4.4 Référentiel temporaire des personnes.
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Générer le nom.
+Le nom de la campagne peut être généré automatiquement par le système. Il sera alors généré de la façon suivante : Nom de la série_Année de début_Série partielle.
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Fermer.
+L'écran est quitté sans sauvegarde des données saisies. Une fenêtre de confirmation permet de s'assurer que les modifications peuvent être abandonnées.
+
+
+* Édition
+La fonctionnalité d'édition d'une campagne est identique à la création.
+
+
+3. Export de campagnes
+
+* Export d'une série de campagne
La fonctionnalité d'export d'une série de campagne est accessible directement depuis la page d'accueil de l'application.
+
L'utilisateur est invité à choisir l'emplacement de l'archive d'export. Cette archive est au format .zip et respecte l'architecture suivante:
Nom de l'archive/
accidentalCatch.csv
@@ -27,11 +99,9 @@
species.csv
survey.csv
-* Export Sumatra d'une campagne
+* Export d'une campagne
+La fonctionnalité d'export d'une série de campagne est accessible directement depuis la page d'accueil de l'application.
-* Export d'une série de campagne
-
-La fonctionnalité d'export d'une série de campagne est accessible directement depuis la page d'accueil de l'application.
L'utilisateur est invité à choisir l'emplacement de l'archive d'export. Cette archive est au format .zip et respecte l'architecture suivante:
Nom de l'archive/
accidentalCatch.csv
@@ -44,5 +114,27 @@
species.csv
survey.csv
+* Export Sumatra d'une campagne
+
+La fonctionnalité d'export d'une campagne est accessible directement depuis la page d'accueil de l'application.
+
+Lorsqu'une une campagne est sélectionnée un bouton Sumatra propose de choisir l'emplacement du fichier à générer et déclenche le processus d'extraction des informations.
+
+L'utilisateur est invité à choisir l'emplacement du fichier d'export. Le fichier généré au format csv est destiné à une utilisation avec le logiciel SUMATRA afin d'y importer les données saisies dans l'application Allegro Campagne.
+
+Le logiciel SUMATRA a été développé dans le cadre de la mise en service du navire océanographique Pourquoi pas? pour fournir à la communauté scientifique un outil de suivi temps-réel des missions à la mer.
+
+Format du fichier csv généré
+Station;Espèce;Total;NbIndividus
+G101;Merluccius merluccius;0.7619177;17;
+G101;Mullus barbatus;8.484752;351;
+
+
+
d. Envoi d'une campagne
+Le système permet de générer un rapport comportant les informations relatives à une campagne.
+
+Cette fonctionnalité est accessible depuis la page d’accueil de l'application, Lorsqu'une campagne est sélectionnée, le bouton Envoyer déclenche la génération d'un fichier de rapport. Ce document est attaché à un nouvel e-mail si un client mail est détecté par le système. Sinon l'utilisateur retrouvera ce fichier dans le dossier choisi au préalable.
+
+Le rapport présente la composition des traits de la campagne par espèces.
\ No newline at end of file
Modified: trunk/src/conception/specifications/Fonctionnalites-metiers/GestionCaptures.txt
===================================================================
--- trunk/src/conception/specifications/Fonctionnalites-metiers/GestionCaptures.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Fonctionnalites-metiers/GestionCaptures.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -1,62 +1,418 @@
-a. Opérations de pêche / traits
-Caractéristiques du trait
+La fonctionnalité principale du système est la collecte des mesures et des observations réalisées sur les individus capturés lors des campagnes.
-Mise en œuvre de l'engin
+L'accumulation des informations doit respecter un formalisme défini dans le but d'une harmonisation des résultats et d'un traitement ultérieur facilité.
-Autres paramètres
+Chaque session de capture réalisé est spécifié par la configuration technique et organisationnel de l'opération de pêche, et des prises obtenues lors de cette opération.
+1. Saisie des opérations de pêche
-b. Saisie des captures
+Une opération de pêche est caractérisée par :
+- des caractéristiques du trait
+- des caractéristiques de mise en œuvre de l'engin
+- des paramètres spécifiques à l'opération
-Résumé
-Espèces
-- Création d'un lot pour une espèce
+** Caractéristiques du trait
+* Données caractéristiques
+Libellé, Description, Type
+Code Station,contient le code station où a eu lieu l'opération de pêche (Station = un lieu en mer),Texte libre
+Numéro de Trait,contient le n° de l'opération de pêche.,Numérique
+Numéro de poche,contient le n° de la poche qui sera observée. Si le nombre de poche = 1 dans les informations liées à la campagne, alors ce champ est non saisissable et a pour valeur 1. Dans une campagne mettant en œuvre des casiers, nasses, le nombre de poches sera le nombre d'engins de la filière. Pour les filets, ce sera le nombre de tésures de la filière,Numérique
+Strate,contient la strate à laquelle est affecté l'opération de pêche.,Liste. Les valeurs de ce champ sont issues d'un référentiel.
+Sous strate,contient la sous strate à laquelle est affecté l'opération de pêche.,Liste. Les valeurs de ce champ sont issues d'un référentiel.
+Localité,contient la localité à laquelle est affecté l'opération de pêche.,Liste. Les valeurs de ce champ sont issues d'un référentiel.
+Latitude de début de traîne,contient la latitude de début de l'opération de pêche. ,Cordonnées. Le format de saisie peut être modifié dans la configuration.
+Longitude de début de traîne,contient la longitude de début de l'opération de pêche.,Cordonnées. Le format de saisie peut être modifié dans la configuration.
+Latitude de fin de traîne,contient la latitude de fin de l'opération de pêche. ,Cordonnées. Le format de saisie peut être modifié dans la configuration.
+Longitude de fin de traîne,contient la longitude de fin de l'opération de pêche.,Cordonnées. Le format de saisie peut être modifié dans la configuration.
+Date de début de traîne,Date de début de l'opération de pêche. Pour les engins dormants, le début de l'opération de pêche correspond au début de mise à l'eau des engins.,Date (JJ/MM/AAAA)
+Heure de début de traîne,Heure de début de l'opération de pêche.,Heure (HH:MM)
+Date de fin de traîne,Date de fin de l'opération de pêche.
+Pour les engins dormants, la fin de l'opération de pêche correspond au début du virage,,Date (JJ/MM/AAAA)
+Heure de fin de traîne,Heure de fin de l'opération de pêche,,Heure (HH:MM)
+Trait rectiligne,Détermine si le trait est rectiligne,,Booléen (Case à cocher)
+Distance chalutée,Distance chalutée du trait, calculée automatiquement à partir des positions si le trait est rectiligne, sasie manuellement sinon.Ce champ est inutile pour les engins dormants.,Numérique
+Durée,Durée du trait, calculée automatiquement à partir des dates et heures de début et de fin d'opération.,Numérique
+Trait valide/invalide,Détermine la validité de l'opération de pêche.,Booléen (Case à cocher)
+Saisisseur(s),La ou les personne(s) qui a(ont) saisi les données de l'opération de pêche,Liste. Fonctionnement via le principe de la double liste. Les éléments sont à sélectionner parmi la première liste, et sont ajoutés dans la seconde liste à leur sélection.
+Autres caractéristiques du Navire,Rappel du navire de la campagne,Lecture seule
+Autres caractéristiques Engin,Précision de l'engin utilisé pour le trait (si plusieurs engins sont renseignés au niveau de la campagne),Liste. Choix parmi les engins de la campagne
+Navire(s) associé(s),Navire(s) associé(s) à l'opération,Liste. Choix parmi les navires existants en base
-- Élever les poids
+* Actions
+Les actions possibles sur cet écran sont
-- Import Pupitri
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
-- Import de lots d'espèces
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
-- Export de lots d'espèces
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
-Benthos
-- Création d'un lot pour une espèce
-- Élever les poids
+** Mise en œuvre de l'engin
+* Données caractéristiques
+Libellé, Description, Type
+Caractéristique, Description de la caractéristique à renseigner, Liste. Choix parmi les caractéristiques existantes en base
+Valeur, Valeur de la caractéristique de la ligne. ,
-- Import Pupitri
+* Actions
+Les actions possibles sur cet écran sont
-- Import de lots de benthos
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
-- Export de lots de benthos
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
-Macro déchets
-- Création d'un lot de déchets
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
-- Élever les poids
+* Configuration
+Les caractéristiques de mise en œuvre de l'engin proposées par défaut sont paramétrées par le protocole, à la classification Mise en œuvre de l'engin.
-- Import de lots de déchets
+** Autres paramètres
+* Données caractéristiques
+Libellé, Description, Type
+Caractéristique, Description de la caractéristique à renseigner, Liste. Choix parmi les caractéristiques existantes en base
+Valeur, Valeur de la caractéristique de la ligne. ,
-- Export de lots de déchets
+* Actions
+Les actions possibles sur cet écran sont
-Observations individuelles
-- Création d'une observation
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
-- Import d'observations
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
-- Export d'observations
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
+* Configuration
+Les caractéristiques proposées par défaut sont paramétrées par le protocole, à la classification Autres caractéristiques.
-Captures accidentelles
-- Création d'une capture accidentelle
+2. Saisie des captures
+Les captures sont réalisées lors d'une opération de pêche.
-- Import de captures accidentelles
+Les informations d'une capture d'une opération de pêche sont composées :
+- d'un résumé des captures effectuées
+- d'espèces capturées
+- de benthos capturés
+- de macro déchets capturés
+- d'observations individuelles
+- de captures accidentelles
-- Export de captures accidentelles
+** Résumé des captures
+* Données caractéristiques
+Libellé,Description,Type
+Poids total des captures,Poids total VRAC + Poids total HORS VRAC + Poids total NON TRIE,Numérique
+Poids total Vrac des captures,Poids total VRAC des Espèces + Poids total VRAC du Benthos,Numérique
+Poids total Hors Vrac des captures,poids total des lots hors vrac Espèces et Benthos,Numérique
+Poids total Non trié des captures,poids de la capture qui n'a pas triée,Numérique
+Poids total des espèces, Poids total VRAC Espèces + Poids total HORS VRAC Espèces,Numérique
+Poids total Vrac des espèces,le plus souvent, ce poids sera similaire au poids VRAC trié Espèces et sera donc calculé,Numérique
+Poids total Vrac trié des espèces,somme des poids vrac observés.,Numérique
+Poids total Hors Vrac des espèces,somme des poids hors vrac observés.,Numérique
+Poids total des benthos, Poids total VRAC Benthos + Poids total HORS VRAC Benthos.,Numérique
+Poids total Vrac des benthos,le plus souvent, ce poids sera similaire au poids VRAC trié Benthos et sera donc calculé,Numérique
+Poids total Vrac trié des benthos,somme des poids vrac observés,Numérique
+Poids total Hors Vrac des benthos,somme des poids hors vrac observés,Numérique
+Poids total des macro déchets,poids total de la fraction macro déchets dans la capture,Numérique
+* Actions
+Les actions possibles sur cet écran sont
-b. Validation des captures
\ No newline at end of file
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
+
+Supprimer les poids.
+
+Élever les poids.
+Déclenche le processus d’élévation des poids et complète tous les champs calculés (Cf 3.3.5 Élévation des poids).
+
+Résumé PDF.
+Résumé Sumatra.
+
+Pièces jointes
+
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
+
+
+
+** Espèces
+* Données caractéristiques d'une espèce
+Libellé,Description,Type
+Poids total,Égal à la somme du poids total Vac et du poids total Hors Vrac, en kg.,Numérique, en lecture seule
+Poids total Vrac,Poids total Vrac en kg.,Numérique.
+Le plus souvent, ce poids sera similaire au poids VRAC trié Espèces et sera donc calculé. Cependant, si seule une fraction des espèces est observée, renseigner ici le poids d'élévation.
+Poids Vrac trié,Somme des poids Vrac observés, en kg.,Numérique, en lecture seule
+Poids total Hors Vrac,Somme des poids Hors Vrac observés, en kg.,Numérique, en lecture seule
+Poids inerte trié,Correspond au poids de la vase, des cailloux, débris coquillers, etc. Exprimé en kg.,Numérique
+Poids vivant non détaillé trié,Correspond au poids des espèces vivantes autres que celles détaillées dans le tableau. Exprimé en kg. ,Numérique
+
+* Données caractéristiques d'un lot d'une espèce
+Libellé,Description,Type
+Espèce,« Code campagne ou Code Rubin – nom scientifique » du lot,Lecture seule
+V/HV,Précise le type de lot : Vrac ou Hors Vrac.
+Le poids du lot indiqué en kg est modifiable,Numérique
+Poids sous-échantillon,Poids de l'échantillon qui a été dénombré ou mesuré dans le cas où seule une fraction des individus du lot père (a)ont été observée(s),Numérique
+Tailles/Poids ou nombre,Affichage du nombre d'individus observés,Lecture seule
+Commentaire,Commentaire associé à chaque ligne,Texte libre
+Pièces jointes,Pièces jointes associées à chaque ligne,Fichier
+A confirmer,Détermine si il y a un doute sur la détermination de l'espèce et que cela doit être confirmé,Booléen (Case à cocher)
+
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
+
+Créer un lot pour une espèce.
+Ajoute un lot pour une espèce, le nombre d'individus dans le lot et les mensurations/pods (Cf 3.3.3 Saisie des lots pour une espèce).
+
+Mensurations/poids ou nombre.
+Renseigne le nombre d'individus d'un lot ou les mensurations/pods(Cf 3.3.4 Saisie du nombre et des mensurations/poids des individus ).
+
+Ajout d'un commentaire à un lot.
+Précise un commentaire pour une ligne du tableau. Un champ commentaire non vide se traduit par un arrière plan vert dans le tableau.
+
+Ajout de pièces jointes.
+Attache un fichier pour une ligne du tableau.
+Filtres. Permet de filtrer le contenu du tableau, pour afficher uniquement les lot feuilles (lignes avec des mensurations ou des nombres), uniquement les lots pères (Entre parenthèses, l'applicatif propose le nombre de lignes « parents » dans le tableau) ou l'intégralité des lots.
+
+Supprimer les poids.
+Déclenche un processus de suppression des poids superflus saisis dans les fractions espèces et benthos.
+
+Élever les poids.
+Déclenche le processus d’élévation des poids et complète tous les champs calculés (Cf 3.3.5 Élévation des poids).
+
+Import Pupitri.
+Il est possible d'importer les fichiers (.car et .tnk) générés par Pupitri.
+
+Importer des lots d'espèces.
+Il est possible d'importer des lots d'espèces à partir d'un fichier au format .tuttiSpecies.
+
+Exporter les lots d'espèces.
+Déclenche l'export des lots d'espèces vers un fichier au format .tuttiSpecies.
+
+
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
+
+
+** Benthos
+* Données caractéristiques des benthos
+Libellé,Description,Type
+Poids total,Égal à la somme du poids total Vac et du poids total Hors Vrac, en kg.,Numérique, en lecture seule
+Poids total Vrac,Poids total Vrac en kg.,Numérique.
+Le plus souvent, ce poids sera similaire au poids VRAC trié Espèces et sera donc calculé. Cependant, si seule une fraction des espèces est observée, renseigner ici le poids d'élévation.
+Poids Vrac trié,Somme des poids Vrac observés, en kg.,Numérique, en lecture seule
+Poids total Hors Vrac,Somme des poids Hors Vrac observés, en kg.,Numérique, en lecture seule
+Poids inerte trié,Correspond au poids de la vase, des cailloux, débris coquillers, etc. Exprimé en kg.,Numérique
+Poids vivant non détaillé trié,Correspond au poids des espèces vivantes autres que celles détaillées dans le tableau. Exprimé en kg. ,Numérique
+
+* Données caractéristiques d'un lot d'une espèce de benthos
+Libellé,Description,Type
+Espèce,« Code campagne ou Code Rubin – nom scientifique » du lot,Lecture seule
+V/HV,Précise le type de lot : Vrac ou Hors Vrac.
+Le poids du lot indiqué en kg est modifiable,Numérique
+Poids sous-échantillon,Poids de l'échantillon qui a été dénombré ou mesuré dans le cas où seule une fraction des individus du lot père (a)ont été observée(s),Numérique
+Tailles/Poids ou nombre,Affichage du nombre d'individus observés,Lecture seule
+Commentaire,Commentaire associé à chaque ligne,Texte libre
+Pièces jointes,Pièces jointes associées à chaque ligne,Fichier
+A confirmer,Détermine si il y a un doute sur la détermination de l'espèce et que cela doit être confirmé,Booléen (Case à cocher)
+
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
+
+
+Créer un lot pour une espèce.
+Ajoute un lot pour une espèce, le nombre d'individus dans le lot et les mensurations/pods (Cf 3.3.3 Saisie des lots pour une espèce).
+
+Filtres.
+Permet de filtrer le contenu du tableau, pour afficher uniquement les lot feuilles (lignes avec des mensurations ou des nombres), uniquement les lots pères (Entre parenthèses, l'applicatif propose le nombre de lignes « parents » dans le tableau) ou l'intégralité des lots.
+
+Supprimer les poids.
+Déclenche un processus de suppression des poids superflus saisis dans les fractions espèces et benthos.
+
+Élever les poids.
+Déclenche le processus d’élévation des poids et complète tous les champs calculés (Cf 3.3.3 Élévation des poids).
+
+Importer des lots de benthos.
+Il est possible d'importer des lots de benthos à partir d'un fichier au format .tuttiSpecies.
+
+Exporter les lots de benthos.
+Déclenche l'export des lots de benthos vers un fichier au format .tuttiSpecies.
+
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
+
+** Macro déchets
+* Données caractéristiques des macro déchets
+Libellé,Description,Type
+Poids total, poids total des macro déchets dans la capture,Numérique
+
+* Données caractéristiques d'un lot de macro déchets
+Libellé,Description,Type
+Catégorie, type de macro déchets observés,Choix parmi les valeurs issues d'un référentiel
+Catégorie de taille,classe de tailles de la catégorie observée,Choix parmi les valeurs issues d'un référentiel
+Nombre,nombre d'objets observés pour le couple catégorie/Catégorie de tailles,Numérique
+Poids,poids des objets observés,Numérique
+Commentaire,commentaire associé à chaque ligne,Texte libre
+Pièces jointes,Fichier(s) associé(s) à chaque ligne,
+
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
+
+Créer un lot de déchet
+
+Élever les poids.
+Déclenche le processus d’élévation des poids et complète tous les champs calculés (écriture en bleu italique. Couleur bleue définie dans la configuration). Si l'application ne peut calculer tous les poids cela déclenche un message d'erreur.
+
+Importer des lots de déchets
+
+Exporter les lots de déchets
+
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
+
+** Observations individuelles
+* Données caractéristiques
+Libellé,Description,Type
+Espèce, « Code campagne ou Code Rubin – nom scientifique » de l'individu,Choix parmi les valeurs issues d'un référentiel
+Poids, poids en grammes de l'individu,Numérique
+Taille,valeur de la taille de l'individu,Numérique
+Classe de taille,méthode de mensuration de l'individu et unité de mesure associée,
+Commentaire,commentaire associé à chaque ligne,Texte libre
+Pièces jointes,Fichier(s) associé(s) à chaque ligne,
+
+* Autres caractéristiques d'une observation
+Libellé,Description,Type
+Caractéristique,,
+Valeur,,
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
+
+Créer une observation
+
+Ajouter des caractéristiques à une observation.
+
+Importer des observations
+
+Exporter les observations
+
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
+
+
+** Capture accidentelle
+* Données caractéristiques
+Libellé,Description,Type
+Espèce,« Code campagne ou Code Rubin – nom scientifique » de l'individu,
+Sexe,Sexe de l'individu,
+Poids observé,Poids de l'individu,
+Taille,Valeur de la taille de l'individu,
+Classe taille,méthode de mensuration de l'individu et unité de mesure associée,
+Mort ou vivant,précise dans quel état l'individu a été remis à la mer,
+Commentaire,commentaire associé à chaque ligne,Texte libre
+Pièces jointes,Fichier(s) associé(s) à chaque ligne,
+
+* Autres caractéristiques d'une capture accidentelle
+Libellé,Description,Type
+Caractéristique,,
+Valeur,,
+
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
+
+Créer une capture accidentelle
+
+Ajouter des caractéristiques à une capture accidentelle
+
+Importer des captures accidentelles
+
+Exporter les captures accidentelles
+
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
+
+
+3. Saisie des lots pour une espèce
+
+
+4. Saisie du nombre et des mensurations/poids des individus
+
+
+5. Élévation des poids
+
+écriture en bleu italique. Couleur bleue définie dans la configuration). Si l'application ne peut calculer tous les poids cela déclenche un message d'erreur.
+
+
+6. Validation des captures
+Déclenche le processus de validation des données sur la dernière campagne sélectionnée. Le processus peut prendre plusieurs secondes s'il y a de nombreux traits dans la campagne.
+
+À la fin du processus de validation, les résultats sont présentés à l'écran qui est divisé en deux parties : La liste des erreurs et des avertissements d'un côté, et l'édition des opérations de pêche de l'autre.
+
+* Erreurs et warnings
+Les messages d'erreurs et les messages d’avertissement sont listés dans la moitié gauche de la fenêtre. Les messages sont groupés par opération de pêche.
+
+La liste des erreurs (rond rouge avec un point d'exclamation) et des warning (triangle jaune avec un point d'exclamation) est listée pour chaque trait.
+
+Le résultat peut être exporté (icône en haut à droite de l'écran) dans un fichier pour être sauvegardé. Un clic sur un message ouvre dans la partie droite de l'écran le trait contenant le champ en anomalie.
+
+* Édition des traits
+En cliquant sur l'un des messages, le trait concerné par le message est ouvert. Le formulaire d'édition du trait apparaît sur la moitié droite de l'écran pour permettre de corriger les valeurs en erreurs ou suspectes.
+
+Le formulaire est identique à celui proposé lors de la saisie des captures.
+
+* Corrections et sauvegarde
+Les actions possibles sur cet écran sont
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Réinitialiser.
+Réinitialise les champs modifiés aux valeurs initiales.
+
+La sauvegarde par synchronisation des données vers la base de données centralisée Harmonie de l'Ifremer ne sera possible que si plus aucune erreur bloquante (rond rouge avec un point d'exclamation) n'est listée à l'issue du processus de validation.
Modified: trunk/src/conception/specifications/Fonctionnalites-metiers/GestionProtocoles.txt
===================================================================
--- trunk/src/conception/specifications/Fonctionnalites-metiers/GestionProtocoles.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Fonctionnalites-metiers/GestionProtocoles.txt 2013-11-28 18:54:12 UTC (rev 1411)
@@ -1,17 +1,244 @@
-a. Données caractéristiques
+Le protocole associé à une campagne permet d'initialiser les écrans de saisie afin, de faciliter la collecte des données, d’accélérer la saisie et de limiter les risques d'erreur à la saisie.
-Un protocole de saisie est caractérisé par :
-- Informations générales
-- Caractéristiques
-- Espèces
-- Benthos
+Associer un protocole de saisie à une campagne est une étape indispensable avant toute saisie. Le protocole permet de configurer les écrans de saisie, ce qui permet de limiter les risques d'erreurs et de faciliter la saisie (ce qui se traduit par un gain de temps).
-b. Création d'un protocole de saisie
+Cette étape doit être réalisée en mode connecté car cela permet de configurer le protocole avec des références à jour. Le protocole pourra être ajusté en cours de saisie.
-c. Suppression d'un protocole de saisie
+Il y a trois manière de préparer un protocole :
+- Créer un nouveau protocole et compléter les différents onglets directement sur les écrans.
+- Importer un protocole dans sont intégralité ou un sous-ensemble des données et modifier les données importées.
+- Créer un nouveau protocole à partir d'un protocole existant (Clonage).
-d. Import d'un protocole de saisie
+1. Création/Édition d'un protocole de saisie
+L'écran permettant d'ajouter un protocole de saisie est accessible depuis l'écran d'accueil (Bouton Nouveau).
-e. Configuration d'un protocole de saisie
+Le protocole associé à une campagne permet d'initialiser les écrans de saisie afin, de faciliter la saisie des données, d’accélérer la saisie et de limiter les risques d'erreur à la saisie.
-f. Clonage d'un protocole de saisie
\ No newline at end of file
+Un protocole de saisie est caractérisé par :
+- des informations générales
+- une liste de caractéristiques
+- une liste d'espèces et le type d'observations à réaliser sur les lots de ces espèces
+- une liste de benthos et le type d'observations à réaliser sur les lots de ces espèces de benthos
+
+** Informations générales
+
+* Données caractéristiques
+
+Libellé, Description, Type
+Nom, Nom du protocole, Texte libre
+Commentaire, Commentaire sur le protocole, Texte libre
+
+Tous les champs ne sont pas obligatoires pour la création d'un protocole.
+Le nom du protocole de saisie est une valeur unique dans la base. Cette donnée sert d'identifiant pour le protocole et il ne peux y en avoir plusieurs avec un même nom.
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Fermer.
+L'écran est quitté sans sauvegarde des données saisies. Une fenêtre de confirmation permet de s'assurer que les modifications peuvent être abandonnées.
+
+* Édition
+L'édition des informations générales d'un protocole de saisie est identique à la création.
+
+** Caractéristiques
+
+Les caractéristiques d'un protocole de saisie sont réparties en quatre classification :
+- Classes de taille
+- Mise en œuvre de l'engin
+- Observations individuelles
+- Autres caractéristiques
+
+* Données caractéristiques
+Libellé, Description, Type
+Caractéristiques de classes de taille, Méthodes de mensuration qui pourront être utilisées à la saisie. Seules les méthodes listées dans ce champ seront disponibles dans l'onglet « Espèces » et « Benthos » du protocole ainsi que dans la phase de saisie des mensurations des lots et des individus. Il est donc important d'être exhaustif dans la constitution de cette liste. Cependant, si en cours de saisie il apparaît qu'il manque une référence, il est possible de revenir sur cet onglet pour enrichir la liste., Liste. Fonctionnement via le principe de la double liste. Les éléments sont à sélectionner parmi la première liste, et sont ajoutés dans la seconde liste à leur sélection.
+Caractéristiques de mise en œuvre de l'engin, Caractéristiques qui décriront la mise en œuvre de l'engin. Dans le cas où des engins ne seraient pas listées, il est possible via le menu « Administration/Référentiels temporaires » d'ajouter des engins., Liste. Fonctionnement via le principe de la double liste. Les éléments sont à sélectionner parmi la première liste, et sont ajoutés dans la seconde liste à leur sélection.
+Caractéristiques de observations individuelles, , Liste. Fonctionnement via le principe de la double liste. Les éléments sont à sélectionner parmi la première liste, et sont ajoutés dans la seconde liste à leur sélection.
+Caractéristiques de autres caractéristiques, , Liste. Fonctionnement via le principe de la double liste. Les éléments sont à sélectionner parmi la première liste, et sont ajoutés dans la seconde liste à leur sélection.
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Rechercher une caractéristique.
+Un champ permet de faire une recherche textuelle parmi les caractéristique.
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Fermer.
+L'écran est quitté sans sauvegarde des données saisies. Une fenêtre de confirmation permet de s'assurer que les modifications peuvent être abandonnées.
+
+Exporter les caractéristiques.
+Permet d'exporter un fichier .csv (encodage UTF8, séparateur « ; ») contenant les caractéristiques sélectionnées (en fonction de la classification de caractéristiques sélectionnée).
+
+Exporter toutes les caractéristiques du référentiel.
+Permet d'exporter un fichier .csv (encodage UTF8, séparateur « ; ») contenant les caractéristiques sélectionnées pour toutes les classification.
+
+Importer les caractéristiques
+Format du fichier d'import CSV
+
+Colonne, Description, Format, Requise
+pmfmId, Identifiant du psfm, Entier, Oui
+pmfmType, Écran où intervient la caractéristique, LENGTH_STEP,GEAR_USE_FEATURE,VESSEL_USE_FEATURE), Oui
+pmfmParameterName, Paramètre de la caractéristique, Chaîne de caractères,
+pmfmMatrixName, Support de la caractéristique, Chaîne de caractères,
+pmfmFractionName, Fraction de la caractéristique, Chaîne de caractères,
+pmfmMethodName, Méthode de la caractéristique, Chaîne de caractères,
+
+A noter que seules les colonnes requises sont prises en compte lors de l'import, les autres colonnes sont là à titre informatif pour faciliter l'élaboration du fichier d'import par les thématiciens.
+
+* Édition
+L'édition des caractéristiques d'un protocole de saisie est identique à la création.
+
+** Espèces
+* Données caractéristiques
+Libellé, Description, Type
+Espèce, CODE RUBIN - Nom scientifique de l'espèce observée, Choix parmi une liste finie
+Code campagne, Code campagne de l'espèce utilisée au cours de la campagne, Texte libre
+Mode de mensuration, Méthode de mensuration de l'espèce, Choix parmi une liste finie
+Pesée, Détermine si l'espèce doit être pesée, Booléen (Case à cocher)
+Dénombrement, Détermine si le nombre d'individus pour l'espèce en question doit être observé, Booléen (Case à cocher)
+Class Tri., Détermine si le tri des lots en fonction de la classe de taille doit être fait, Booléen (Case à cocher)
+Sexe, Détermine si le tri des lots en fonction du sexe doit être fait, Booléen (Case à cocher)
+Maturité, Détermine si le tri des lots en fonction de la maturité doit être fait, Booléen (Case à cocher)
+Age, Détermine si le tri des lots par âge doit être fait, Booléen (Case à cocher)
+Prélèvement de pièces calcaires, Détermine si, pour les observations individuelles, un prélèvement de pièces calcifiées est prévu au protocole, Booléen (Case à cocher)
+
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Choisir une espèce.
+Cette liste permet de choisir une espèce parmi une liste de celles qui sont couramment observées (hors benthos). Il est possible de retrouver l'espèce à partir de son taxon référent ou de son synonyme (Cf 4.3 Taxonomie des espèces).
+Ajouter une espèce. L'ajout dans le tableau d'une espèce sélectionnée permet de définir le type d'observations à réaliser sur les lots pour respecter le protocole de saisie. Cette fonctionnalité est accessible depuis un bouton dont le libellé est « + ».
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Fermer.
+L'écran est quitté sans sauvegarde des données saisies. Une fenêtre de confirmation permet de s'assurer que les modifications peuvent être abandonnées.
+
+Exporter les espèces.
+Permet d'exporter un fichier (au format .csv, encodage UTF8, séparateur « ; ») qui contient toutes les informations du tableau
+
+Export Pupitri.
+Génère un fichier qui contient la liste des espèces du protocole afin de mettre à jour le référentiel des espèces de Pupitri
+
+Importer les espèces.
+Permet d'importer un fichier (au format .csv, encodage UTF8, séparateur « ; ») qui complète (et écrase) toutes les informations du tableau
+
+Format du fichier d'import .csv
+Colonne, Description, Format, Requise
+speciesReferenceTaxonId, Identifiant du taxon référent, Entier, Oui
+speciesRefTaxCode, Identifiant du refTax, Chaîne de caractères,
+speciesName, Nom de l'espèce, Chaîne de caractères,
+speciesSurveyCode, Code campagne de l'espèce, Chaîne de caractères, Oui
+lengthStepPmfmId, Identifiant de la caractéristique de mesure des individus, Chaîne de caractères, Oui
+lengthStepPmfmParameterName, Nom du paramètre de la caractéristique de mesure des individus, Chaîne de caractères,
+lengthStepPmfmMatrixName, Nom du support de la caractéristique de mesure des individus, Chaîne de caractères,
+lengthStepPmfmFractionName, Nom de la fraction de la caractéristique de mesure des individus, Chaîne de caractères,
+lengthStepPmfmMethodName, Nom de la méthode de la caractéristique de mesure des individus, Chaîne de caractères,
+sizeEnabled, Catégorisation sur la classe de Tri pour cette espèces ?, Booléen (Y/N), Oui
+sexEnabled, Catégorisation sur la classe deTri pour cette espèces ?, Booléen (Y/N), Oui
+maturityEnabled, Catégorisation sur la maturité pour cette espèces ?, Booléen (Y/N), Oui
+ageEnabled, Catégorisation sur l'age pour cette espèces ?, Booléen (Y/N), Oui
+weightEnabled, Pesée pour cette espèces ?, Booléen (Y/N), Oui
+countIfNoFrequencyEnabled, Dénombrement pour cette espèce ?, Booléen (Y/N), Oui
+calcifySampleEnabled, Prélèvement de pièces calcifiées pour cette espèce ?, Booléen (Y/N), Oui
+
+A noter que seules les colonnes requises sont prises en compte lors de l'import, les autres colonnes sont là à titre informatif pour faciliter l'élaboration du fichier d'import par les thématiciens.
+
+
+** Benthos
+* Données caractéristiques
+Libellé, Description, Type
+Espèce, CODE RUBIN - Nom scientifique de l'espèce observée, Choix parmi une liste finie
+Code campagne, Code campagne de l'espèce utilisée au cours de la campagne, Texte libre
+Mode de mensuration, Méthode de mensuration de l'espèce, Choix parmi une liste finie
+Pesée, Détermine si l'espèce doit être pesée, Booléen (Case à cocher)
+Dénombrement, Détermine si le nombre d'individus pour l'espèce en question doit être observé, Booléen (Case à cocher)
+Class Tri., Détermine si le tri des lots en fonction de la classe de taille doit être fait, Booléen (Case à cocher)
+Sexe, Détermine si le tri des lots en fonction du sexe doit être fait, Booléen (Case à cocher)
+Maturité, Détermine si le tri des lots en fonction de la maturité doit être fait, Booléen (Case à cocher)
+Age, Détermine si le tri des lots par âge doit être fait, Booléen (Case à cocher)
+Prélèvement de pièces calcaires, Détermine si, pour les observations individuelles, un prélèvement de pièces calcifiées est prévu au protocole, Booléen (Case à cocher)
+
+* Actions
+Les actions possibles sur cet écran sont
+
+Choisir une espèce du benthos.
+Cette liste permet de choisir une espèce parmi une liste de celles du benthos qui sont couramment observées. Il est possible de retrouver l'espèce à partir de son taxon référent ou de son synonyme (Cf 4.3 Taxonomie des espèces).
+
+Ajouter une espèce du benthos.
+L'ajout dans le tableau d'une espèce sélectionnée permet de définir le type d'observations à réaliser sur les lots pour respecter le protocole de saisie. Cette fonctionnalité est accessible depuis un bouton dont le libellé est « + ».
+
+Enregistrer.
+Sauvegarde en base de donnée les données saisies.
+
+Fermer.
+L'écran est quitté sans sauvegarde des données saisies. Une fenêtre de confirmation permet de s'assurer que les modifications peuvent être abandonnées.
+
+Exporter les benthos.
+Permet d'exporter un fichier (au format .csv, encodage UTF8, séparateur « ; ») qui contient toutes les informations du tableau
+
+Importer les benthos.
+Permet d'importer un fichier (au format .csv, encodage UTF8, séparateur « ; ») qui complète (et écrase) toutes les informations du tableau
+
+Format du fichier d'import .csv
+Colonne, Description, Format, Requise
+speciesReferenceTaxonId, Identifiant du taxon référent, Entier, Oui
+speciesRefTaxCode, Identifiant du refTax, Chaîne de caractères,
+speciesName, Nom de l'espèce, Chaîne de caractères,
+speciesSurveyCode, Code campagne de l'espèce, Chaîne de caractères, Oui
+lengthStepPmfmId, Identifiant de la caractéristique de mesure des individus, Chaîne de caractères, Oui
+lengthStepPmfmParameterName, Nom du paramètre de la caractéristique de mesure des individus, Chaîne de caractères,
+lengthStepPmfmMatrixName, Nom du support de la caractéristique de mesure des individus, Chaîne de caractères,
+lengthStepPmfmFractionName, Nom de la fraction de la caractéristique de mesure des individus, Chaîne de caractères,
+lengthStepPmfmMethodName, Nom de la méthode de la caractéristique de mesure des individus, Chaîne de caractères,
+sizeEnabled, Catégorisation sur la classe de Tri pour cette espèces ?, Booléen (Y/N), Oui
+sexEnabled, Catégorisation sur la classe deTri pour cette espèces ?, Booléen (Y/N), Oui
+maturityEnabled, Catégorisation sur la maturité pour cette espèces ?, Booléen (Y/N), Oui
+ageEnabled, Catégorisation sur l'age pour cette espèces ?, Booléen (Y/N), Oui
+weightEnabled, Pesée pour cette espèces ?, Booléen (Y/N), Oui
+countIfNoFrequencyEnabled, Dénombrement pour cette espèce ?, Booléen (Y/N), Oui
+calcifySampleEnabled, Prélèvement de pièces calcifiées pour cette espèce ?, Booléen (Y/N), Oui
+
+A noter que seules les colonnes requises sont prises en compte lors de l'import, les autres colonnes sont là à titre informatif pour faciliter l'élaboration du fichier d'import par les thématiciens.
+
+
+2. Import d'un protocole de saisie
+Il est possible dans le formulaire de création - mise à jour d'un protocole d'importer à partir de fichier au format .tuttiProtocol.
+En survolant le bouton Nouveau, et en cliquant sur le bouton Importer.
+Une fois votre fichier sélectionné, vous arriverez sur l'écran de création - modification d'un protocole.
+Il faut faudra alors l'enregistrer pour finaliser l'import dans Tutti.
+
+
+3. Export d'un protocole de saisie
+Une fois le protocole saisie dans Tutti, il est possible de l'exporter afin de pouvoir le réimporter ensuite sur une autre machine.
+
+Pour ce faire, retourner sur l'écran de Sélection d'une campagne, survoler le bouton Editer puis cliquer sur le bouton Exporter. Il vous sera alors demander de spécifier l'emplacement de sauvegarde du protocole.
+
+A noter que l'extension .tuttiProtocol sera ajouté au nom du fichier saisie.
+
+Remarque: Le format de ce fichier bien qu'humainement compréhensible ne doit pas être modifié à la main.
+
+
+4. Clonage d'un protocole de saisie
+Pour faciliter des traitements consécutifs sur les protocoles de saisie, la fonctionnalité de clonage permet d'accélérer la création de protocole.
+
+En sélectionnant un protocole existant, il est possible de le dupliquer. L'écran d'édition du nouveau protocole de saisie apparaît, les champs étant pré-remplis avec les valeurs du protocole d'origine. Le nouveau protocole ne sera sauvegardé qu'après sauvegarde.
+
+Une fois un protocole saisie dans Tutti, il est possible de le cloner.
+
+Pour ce faire, retourner sur l'écran de Sélection d'une campagne, survoler le bouton Editer puis cliquer sur le bouton Cloner.
+
+Le protocole sera alors dupliquer, vous arriverez sur l'écran de création - modification d'un protocole.
+
+Il faut faudra alors l'enregistrer pour finaliser la duplication du protocole.
+
+5. Suppression d'un protocole de saisie
+Une fois un protocole saisie dans Tutti, il est possible de le supprimer.
+
+Pour ce faire, retourner sur l'écran de Sélection d'une campagne, survoler le bouton Editer puis cliquer sur le bouton Supprimer. Il vous sera alors demander de confirmer la suppression du protocole.
\ No newline at end of file
Modified: trunk/src/conception/specifications/Fonctionnalites-metiers/GestionRef?\195?\169rentielsTemporaires.txt
===================================================================
svnlook: Can't convert string from 'UTF-8' to native encoding:
svnlook: --- trunk/src/conception/specifications/Fonctionnalites-metiers/GestionRef?\195?\169rentielsTemporaires.txt 2013-11-28 17:55:19 UTC (rev 1410)
+++ trunk/src/conception/specifications/Fonctionnalites-metiers/GestionRef?\195?\169rentielsTemporaires.txt 2013-11-28 18:54:12 UTC (rev 1411)
1
0
28 Nov '13
Author: tchemit
Date: 2013-11-28 18:55:19 +0100 (Thu, 28 Nov 2013)
New Revision: 1410
Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1410
Log:
use jaxx 2.6 and ifremer-shared 1.0
Modified:
trunk/pom.xml
trunk/tutti-ui-swing/pom.xml
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditCatchBatchAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateBenthosMelagAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateSpeciesMelagAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseFishingOperationAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAndCleanDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReimportDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/ValidateCruiseUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/ValidateCruiseUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/AbstractTuttiBatchTableUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyCellComponent.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyCellComponent.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/AbstractCaracteristicTabUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiTabContainerUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.jaxx
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUIHandler.java
trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/AbstractTuttiTableUIHandler.java
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/pom.xml 2013-11-28 17:55:19 UTC (rev 1410)
@@ -120,7 +120,7 @@
<!-- libraries version -->
- <ifremerApplicationVersion>1.0-SNAPSHOT</ifremerApplicationVersion>
+ <ifremerApplicationVersion>1.0</ifremerApplicationVersion>
<nuitonI18nVersion>2.5.2</nuitonI18nVersion>
<nuitonConfigVersion>3.0-alpha-1</nuitonConfigVersion>
<nuitonCsvVersion>3.0-alpha-1</nuitonCsvVersion>
@@ -132,7 +132,7 @@
<eugenePluginVersion>2.7.2</eugenePluginVersion>
<hibernateVersion>3.6.10.Final</hibernateVersion>
- <jaxxVersion>2.6-SNAPSHOT</jaxxVersion>
+ <jaxxVersion>2.6</jaxxVersion>
<swingXVersion>1.6.4</swingXVersion>
<xworkVersion>2.3.15.1</xworkVersion>
Modified: trunk/tutti-ui-swing/pom.xml
===================================================================
--- trunk/tutti-ui-swing/pom.xml 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/pom.xml 2013-11-28 17:55:19 UTC (rev 1410)
@@ -48,6 +48,7 @@
<jaxx.generateSearch>false</jaxx.generateSearch>
<jaxx.autoImportCss>true</jaxx.autoImportCss>
<jaxx.autoRecurseInCss>false</jaxx.autoRecurseInCss>
+ <jaxx.addAutoHandlerUI>true</jaxx.addAutoHandlerUI>
<!-- jaxx help configuration -->
<jaxx.helpsetName>tutti</jaxx.helpsetName>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/RunTutti.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -68,7 +68,7 @@
TuttiConfiguration config = new TuttiConfiguration("tutti.config", args);
// Create application context
- TuttiUIContext context = TuttiUIContext.newContext(config);
+ final TuttiUIContext context = TuttiUIContext.newContext(config);
// override default exception management (after config init)
Thread.setDefaultUncaughtExceptionHandler(new TuttiExceptionHandler(context.getErrorHelper()));
@@ -101,7 +101,13 @@
if (canUpdateApplication) {
// try to update jre - i18n - application - help and exit if so
- UpdateApplicationAction logicAction = context.getActionFactory().createLogicAction(new MainUIHandler(context),
+ UpdateApplicationAction logicAction = context.getActionFactory().createLogicAction(new MainUIHandler() {
+
+ @Override
+ public TuttiUIContext getContext() {
+ return context;
+ }
+ },
UpdateApplicationAction.class);
context.getActionEngine().runActionAndWait(logicAction);
@@ -113,7 +119,13 @@
if (canUpdateData) {
// try to update report and exit if so
- UpdateReportAction logicAction = context.getActionFactory().createLogicAction(new MainUIHandler(context),
+ UpdateReportAction logicAction = context.getActionFactory().createLogicAction(new MainUIHandler() {
+
+ @Override
+ public TuttiUIContext getContext() {
+ return context;
+ }
+ },
UpdateReportAction.class);
context.getActionEngine().runActionAndWait(logicAction);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditCatchBatchAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditCatchBatchAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CancelEditCatchBatchAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -27,6 +27,7 @@
import com.google.common.base.Preconditions;
import fr.ifremer.tutti.persistence.entities.data.CatchBatch;
import fr.ifremer.tutti.persistence.entities.data.FishingOperation;
+import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel;
@@ -60,7 +61,8 @@
public EditFishingOperationAction getEditAction() {
if (editAction == null) {
- editAction = getContext().getActionFactory().createLogicAction(getHandler().getParentHandler(),
+ FishingOperationsUI parentContainer = handler.getParentContainer(FishingOperationsUI.class);
+ editAction = getContext().getActionFactory().createLogicAction(parentContainer.getHandler(),
EditFishingOperationAction.class);
}
return editAction;
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseDbAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CloseDbAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -62,7 +62,7 @@
getContext().setDbLoaded(false);
// close services + repon a fake persistence service
- getHandler().reloadPersistenceService();
+ getContext().reloadPersistenceService();
// clean db context
getContext().clearDbContext();
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateBenthosMelagAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateBenthosMelagAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateBenthosMelagAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -138,7 +138,7 @@
}
protected Float openMelagWeightDialog() {
- Frame frame = SwingUtil.getParentContainer(getUI(), Frame.class);
+ Frame frame = handler.getParentContainer(Frame.class);
EnterMelagWeightDialog dialog = new EnterMelagWeightDialog(
frame, getConfig().getShortcutClosePopup());
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateSpeciesMelagAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateSpeciesMelagAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/CreateSpeciesMelagAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -138,7 +138,7 @@
}
protected Float openMelagWeightDialog() {
- Frame frame = SwingUtil.getParentContainer(getUI(), Frame.class);
+ Frame frame = handler.getParentContainer(Frame.class);
EnterMelagWeightDialog dialog = new EnterMelagWeightDialog(
frame, getConfig().getShortcutClosePopup());
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseFishingOperationAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseFishingOperationAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/EditCruiseFishingOperationAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -51,7 +51,7 @@
public class EditCruiseFishingOperationAction extends AbstractTuttiAction<ValidateCruiseUIModel, ValidateCruiseUI, ValidateCruiseUIHandler> {
/** Validation service. */
- private final ValidateCruiseOperationsService validationService = getContext().getValidateCruiseOperationsService();
+ private final ValidateCruiseOperationsService validationService;
/**
* The incoming fishing operation to edit.
@@ -138,6 +138,7 @@
public EditCruiseFishingOperationAction(ValidateCruiseUIHandler handler) {
super(handler, true);
setActionDescription(_("tutti.editFishingOperation.action.editFishingOperation.tip"));
+ validationService = getContext().getValidateCruiseOperationsService();
}
public void setFishingOperation(FishingOperation fishingOperation) {
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAndCleanDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAndCleanDbAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportAndCleanDbAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -102,7 +102,7 @@
getContext().setDbLoaded(false);
// close services + repon a fake persistence service
- getHandler().reloadPersistenceService();
+ getContext().reloadPersistenceService();
// clean db context
getContext().clearDbContext();
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportDbAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ExportDbAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -103,7 +103,7 @@
progressionModel.setMessage(_("tutti.exportDb.step.closeDb"));
getContext().setDbLoaded(false);
- getHandler().reloadPersistenceService();
+ getContext().reloadPersistenceService();
// export
@@ -116,7 +116,7 @@
progressionModel.increments(_("tutti.exportDb.step.openDb"));
getContext().setDbLoaded(true);
- getHandler().reloadPersistenceService();
+ getContext().reloadPersistenceService();
}
@Override
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportDbAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportDbAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -153,7 +153,7 @@
try {
getContext().setDbExist(true);
getContext().setDbLoaded(true);
- handler.reloadPersistenceService();
+ getContext().reloadPersistenceService();
} catch (Exception e) {
if (log.isErrorEnabled()) {
@@ -161,7 +161,7 @@
}
// no more db
getContext().setDbLoaded(false);
- handler.reloadPersistenceService();
+ getContext().reloadPersistenceService();
// could not load db
throw new ApplicationBusinessException(_("tutti.dbManager.action.importdb.couldNotOpen"), e);
@@ -174,7 +174,7 @@
progressionModel.increments(_("tutti.importDb.step.checkSchemaVersion"));
TuttiPersistence persistenceService =
- handler.getPersistenceService();
+ getContext().getPersistenceService();
dbVersion = persistenceService.getDbVersion();
@@ -280,7 +280,7 @@
progressionModel.increments(message);
sendMessage(message);
- handler.getPersistenceService().updateSchema();
+ getContext().getPersistenceService().updateSchema();
sendMessage(_("tutti.flash.info.db.schema.updated", dbVersion, applicationVersion));
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ImportPupitriAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -32,6 +32,8 @@
import fr.ifremer.tutti.persistence.service.TuttiEnumerationFile;
import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.service.pupitri.PupitriImportExportService;
+import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI;
+import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel;
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.ImportPupitriPopupUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI;
@@ -72,7 +74,9 @@
public EditFishingOperationAction getEditAction() {
if (editAction == null) {
- editAction = getContext().getActionFactory().createLogicAction(getHandler().getParentUi().getHandler().getParentHandler(),
+ //editAction = getContext().getActionFactory().createLogicAction(getHandler().getParentUi().getHandler().getParentHandler(),
+ FishingOperationsUI parentContainer = handler.getParentContainer(FishingOperationsUI.class);
+ editAction = getContext().getActionFactory().createLogicAction(parentContainer.getHandler(),
EditFishingOperationAction.class);
}
return editAction;
@@ -141,7 +145,9 @@
PupitriImportExportService pupitriImportExportService =
getContext().getTuttiPupitriImportExportService();
- EditCatchesUIModel model = getUI().getHandler().getParentUi().getModel();
+// EditCatchesUIModel model = getUI().getHandler().getParentUi().getModel();
+ EditCatchesUI parentContainer = handler.getParentContainer(EditCatchesUI.class);
+ EditCatchesUIModel model = parentContainer.getModel();
FishingOperation operation = model.getFishingOperation();
CatchBatch catchBatch = model.toEntity();
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/OpenDbAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -150,7 +150,7 @@
progressionModel.increments(_("tutti.openDb.step.open", jdbcUrl));
try {
getContext().setDbLoaded(true);
- getHandler().reloadPersistenceService();
+ getContext().reloadPersistenceService();
} catch (Exception e) {
if (log.isErrorEnabled()) {
@@ -158,7 +158,7 @@
}
// no more db
getContext().setDbLoaded(false);
- getHandler().reloadPersistenceService();
+ getContext().reloadPersistenceService();
// could not load db
throw new ApplicationBusinessException(_("tutti.dbManager.action.openDb.couldNotOpen"));
@@ -171,7 +171,7 @@
progressionModel.increments(_("tutti.openDb.step.checkSchemaVersion"));
TuttiPersistence persistenceService =
- getHandler().getPersistenceService();
+ getContext().getPersistenceService();
dbVersion = persistenceService.getDbVersion();
@@ -291,7 +291,7 @@
progressionModel.increments(message);
sendMessage(message);
- getHandler().getPersistenceService().updateSchema();
+ getContext().getPersistenceService().updateSchema();
}
if (updateReferentiel) {
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReimportDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReimportDbAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReimportDbAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -142,7 +142,7 @@
// close db
progressionModel.increments(_("tutti.reimport.step.closeDb", jdbcUrl));
getContext().setDbLoaded(false);
- getHandler().reloadPersistenceService();
+ getContext().reloadPersistenceService();
// backup db
progressionModel.increments(_("tutti.reimport.step.backupDb", backupFile));
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/action/ReinstallDbAction.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -122,7 +122,7 @@
progressionModel.increments(_("tutti.reinstallDb.step.closeDb", jdbcUrl));
getContext().setDbLoaded(false);
- getHandler().reloadPersistenceService();
+ getContext().reloadPersistenceService();
// backup db
progressionModel.increments(_("tutti.reinstallDb.step.backupDb", backupFile));
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -31,6 +31,7 @@
fr.ifremer.tutti.ui.swing.TuttiScreen
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.action.*
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.BlockingLayerUI
jaxx.runtime.validator.swing.SwingValidatorMessageWidget
@@ -43,8 +44,8 @@
<TuttiUIContext id='model'
initializer='getContextValue(TuttiUIContext.class)'/>
- <MainUIHandler id='handler'
- initializer='getContextValue(MainUIHandler.class)'/>
+ <!--<MainUIHandler id='handler'-->
+ <!--initializer='getContextValue(MainUIHandler.class)'/>-->
<TuttiHelpBroker id='broker'
constructorParams='"tutti.main.help"'/>
@@ -52,15 +53,16 @@
<script><![CDATA[
public MainUI(TuttiUIContext context) {
- setContextValue(context);
- MainUIHandler handler = new MainUIHandler(context, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setApplicationContext(this, context);
+ //setContextValue(context);
+ //MainUIHandler handler = new MainUIHandler(context, this);
+ //setContextValue(handler);
+ //handler.beforeInitUI();
}
- protected void $afterCompleteSetup() {
+ /*protected void $afterCompleteSetup() {
handler.afterInitUI();
- }
+ }*/
]]></script>
<!-- menu -->
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/MainUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -31,7 +31,6 @@
import fr.ifremer.tutti.persistence.entities.data.Cruise;
import fr.ifremer.tutti.persistence.entities.data.Program;
import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol;
-import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.ui.swing.RunTutti;
import fr.ifremer.tutti.ui.swing.TuttiScreen;
import fr.ifremer.tutti.ui.swing.TuttiUIContext;
@@ -86,20 +85,6 @@
protected JComponent currentBody;
- protected PersistenceService persistenceService;
-
- protected MainUIHandler(TuttiUIContext context, MainUI ui) {
- super(context, ui);
- this.persistenceService = getContext().getPersistenceService();
- getContext().setMainUI(ui);
- getContext().setActionUI(new ApplicationActionUI(ui, context));
- }
-
- public MainUIHandler(TuttiUIContext context) {
- super(context, null);
- this.persistenceService = null;
- }
-
public void reloadDbManagerText() {
TuttiUI<?, ?> body = (TuttiUI<?, ?>) currentBody;
@@ -115,8 +100,11 @@
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(MainUI ui) {
+ super.beforeInit(ui);
TuttiUIContext context = getContext();
+ context.setMainUI(ui);
+ context.setActionUI(new ApplicationActionUI(ui, context));
context.addPropertyChangeListener(new RemoveablePropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent evt) {
@@ -183,7 +171,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(MainUI ui) {
initUI(ui);
@@ -346,25 +334,6 @@
return canClose;
}
- /**
- * Reload the persistence service and set the new ne into the handler.
- *
- * @since 1.0
- */
- public void reloadPersistenceService() {
- this.persistenceService = getContext().reloadPersistenceService();
- }
-
- /**
- * Get the persistence service instance used by the handler.
- *
- * @return the persistence service instance used by the handler
- * @since 1.0
- */
- public PersistenceService getPersistenceService() {
- return persistenceService;
- }
-
//------------------------------------------------------------------------//
//-- Internal methods --//
//------------------------------------------------------------------------//
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -31,6 +31,7 @@
fr.ifremer.tutti.ui.swing.TuttiUIContext
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
@@ -44,23 +45,14 @@
<script><![CDATA[
public EditSampleCategoryModelUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- TuttiUIContext context = parentUI.getHandler().getContext();
- EditSampleCategoryModelUIHandler handler = new EditSampleCategoryModelUIHandler(context, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
<!-- bean property -->
<EditSampleCategoryModelUIModel id='model'
initializer='getContextValue(EditSampleCategoryModelUIModel.class)'/>
- <EditSampleCategoryModelUIHandler id='handler'
- initializer='getContextValue(EditSampleCategoryModelUIHandler.class)'/>
-
<TuttiHelpBroker id='broker'
constructorParams='"tutti.editSampleCategoryModel.help"'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/category/EditSampleCategoryModelUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,12 +26,10 @@
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
-import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel;
-import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
-import fr.ifremer.tutti.service.PersistenceService;
-import fr.ifremer.tutti.ui.swing.TuttiUIContext;
import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.shared.application.swing.util.CloseableUI;
+import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel;
+import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
import jaxx.runtime.SwingUtil;
@@ -63,13 +61,9 @@
private static final Log log =
LogFactory.getLog(EditSampleCategoryModelUIHandler.class);
- protected PersistenceService persistenceService;
-
- public EditSampleCategoryModelUIHandler(TuttiUIContext context, EditSampleCategoryModelUI ui) {
- super(context, ui,
- EditSampleCategoryModelRowModel.PROPERTY_CARACTERISTIC,
+ public EditSampleCategoryModelUIHandler() {
+ super(EditSampleCategoryModelRowModel.PROPERTY_CARACTERISTIC,
EditSampleCategoryModelRowModel.PROPERTY_LABEL);
- this.persistenceService = context.getPersistenceService();
}
//------------------------------------------------------------------------//
@@ -219,20 +213,22 @@
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(EditSampleCategoryModelUI ui) {
+ super.beforeInit(ui);
+
if (log.isDebugEnabled()) {
log.debug("for " + ui);
}
List<Caracteristic> caracteristics = Lists.newArrayList(
- persistenceService.getAllCaracteristicForSampleCategory());
+ getPersistenceService().getAllCaracteristicForSampleCategory());
SampleCategoryModel sampleCategoryModel =
getDataContext().getSampleCategoryModel();
EditSampleCategoryModelUIModel model = new EditSampleCategoryModelUIModel(
- persistenceService.getEnumerationFile(),
+ getPersistenceService().getEnumerationFile(),
sampleCategoryModel.getCategory(),
caracteristics);
@@ -240,7 +236,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(EditSampleCategoryModelUI ui) {
initUI(ui);
EditSampleCategoryModelUIModel model = getModel();
@@ -255,9 +251,9 @@
if (log.isDebugEnabled()) {
log.debug("propertyChange " + EditSampleCategoryModelUIModel.PROPERTY_CARACTERISTIC_LIST);
}
- ui.getAvailableCaracteristicsComboBox().setData(null);
- ui.getAvailableCaracteristicsComboBox().setData((List<Caracteristic>) evt.getNewValue());
- ui.getAvailableCaracteristicsComboBox().setSelectedItem(null);
+ EditSampleCategoryModelUIHandler.this.ui.getAvailableCaracteristicsComboBox().setData(null);
+ EditSampleCategoryModelUIHandler.this.ui.getAvailableCaracteristicsComboBox().setData((List<Caracteristic>) evt.getNewValue());
+ EditSampleCategoryModelUIHandler.this.ui.getAvailableCaracteristicsComboBox().setSelectedItem(null);
}
});
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,29 +28,16 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.TuttiUIContext
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
</import>
<script><![CDATA[
- protected TuttiUIContext uiContext;
-
public TuttiConfigUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- uiContext = parentUI.getHandler().getContext();
- TuttiConfigUIHandler handler =
- new TuttiConfigUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
]]></script>
- <TuttiConfigUIHandler id='handler'
- initializer='getContextValue(TuttiConfigUIHandler.class)'/>
-
<TuttiUIContext id='model'
initializer='getContextValue(TuttiUIContext.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/config/TuttiConfigUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -30,7 +30,6 @@
import fr.ifremer.tutti.ui.swing.action.GoToPreviousScreenAction;
import fr.ifremer.tutti.ui.swing.action.ReloadTuttiAction;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.editor.TuttiLocationTableCell;
import fr.ifremer.tutti.ui.swing.util.editor.VesselTableCell;
import jaxx.runtime.SwingUtil;
@@ -64,23 +63,14 @@
public static final String CALLBACK_SHORTCUT = "shortcut";
- public TuttiConfigUIHandler(TuttiUI<?, ?> parentUI, TuttiConfigUI ui) {
- super(parentUI.getHandler().getContext(), ui);
- }
-
@Override
public SwingValidator<TuttiUIContext> getValidator() {
return null;
}
@Override
- public void beforeInitUI() {
+ public void afterInit(TuttiConfigUI ui) {
- }
-
- @Override
- public void afterInitUI() {
-
initUI(ui);
TuttiConfiguration config = getConfig();
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -33,6 +33,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
fr.ifremer.tutti.ui.swing.util.attachment.ButtonAttachment
jaxx.runtime.swing.editor.NumberEditor
@@ -52,20 +53,10 @@
<script><![CDATA[
public EditCruiseUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- EditCruiseUIHandler handler = new EditCruiseUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
]]></script>
- <EditCruiseUIHandler id='handler'
- initializer='getContextValue(EditCruiseUIHandler.class)'/>
-
<EditCruiseUIModel id='model'
initializer='getContextValue(EditCruiseUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/EditCruiseUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -39,7 +39,6 @@
import fr.ifremer.tutti.service.DecoratorService;
import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import jaxx.runtime.JAXXUtil;
import jaxx.runtime.context.JAXXContextEntryDef;
import jaxx.runtime.swing.editor.bean.BeanDoubleListModel;
@@ -92,28 +91,17 @@
}
/**
- * Persistence service.
- *
- * @since 0.1
- */
- private final PersistenceService persistenceService;
-
- /**
* The gear selected popup grab from the double list.
*
* @since 2.6
*/
protected JPopupMenu gearPopupMenu;
- public EditCruiseUIHandler(TuttiUI<?, ?> parentUi, EditCruiseUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- persistenceService = getContext().getPersistenceService();
- }
-
-
@Override
- public void beforeInitUI() {
+ public void beforeInit(EditCruiseUI ui) {
+ super.beforeInit(ui);
+
getDataContext().resetValidationDataContext();
EditCruiseUIModel model = new EditCruiseUIModel();
@@ -136,7 +124,7 @@
}
// load attachments
- List<Attachment> attachments = persistenceService.getAllAttachments(
+ List<Attachment> attachments = getPersistenceService().getAllAttachments(
model.getObjectType(), model.getObjectId());
model.addAllAttachment(attachments);
@@ -156,14 +144,16 @@
}
}
listModelIsModify(model);
- ui.setContextValue(model);
+ this.ui.setContextValue(model);
}
@Override
- public void afterInitUI() {
+ public void afterInit(EditCruiseUI ui) {
- initUI(ui);
+ initUI(this.ui);
+ PersistenceService persistenceService = getPersistenceService();
+
List<Person> users = persistenceService.getAllPerson();
EditCruiseUIModel model = getModel();
@@ -209,35 +199,35 @@
}
}
- ui.getGearList().getHandler().clearFilters();
- ui.getVesselComboBox().setData(null);
- ui.getVesselComboBox().setData(allVesselList);
+ EditCruiseUIHandler.this.ui.getGearList().getHandler().clearFilters();
+ EditCruiseUIHandler.this.ui.getVesselComboBox().setData(null);
+ EditCruiseUIHandler.this.ui.getVesselComboBox().setData(allVesselList);
if (gearPredicate != null) {
- ui.getGearList().getHandler().addFilter(gearPredicate);
+ EditCruiseUIHandler.this.ui.getGearList().getHandler().addFilter(gearPredicate);
}
}
});
- initBeanFilterableComboBox(ui.getProgramComboBox(),
+ initBeanFilterableComboBox(this.ui.getProgramComboBox(),
Lists.newArrayList(persistenceService.getAllProgram()),
model.getProgram(),
DecoratorService.ONLY_NAME);
- initBeanFilterableComboBox(ui.getDepartureLocationComboBox(),
+ initBeanFilterableComboBox(this.ui.getDepartureLocationComboBox(),
Lists.newArrayList(persistenceService.getAllHarbour()),
model.getDepartureLocation());
- initBeanFilterableComboBox(ui.getReturnLocationComboBox(),
+ initBeanFilterableComboBox(this.ui.getReturnLocationComboBox(),
Lists.newArrayList(persistenceService.getAllHarbour()),
model.getReturnLocation());
- initBeanFilterableComboBox(ui.getVesselComboBox(),
+ initBeanFilterableComboBox(this.ui.getVesselComboBox(),
allVesselList,
model.getVessel());
- ui.getGearList().setModel(new BeanDoubleListModel<Gear>() {
+ this.ui.getGearList().setModel(new BeanDoubleListModel<Gear>() {
private static final long serialVersionUID = 1L;
@@ -329,28 +319,28 @@
selectedModel.refresh();
}
});
- initBeanList(ui.getGearList(),
+ initBeanList(this.ui.getGearList(),
allGearList,
(List) model.getGear(),
getDecorator(Gear.class, DecoratorService.GEAR_WITH_RANK_ORDER));
// add more actions on selected gear popup
- gearPopupMenu = ui.getGearList().getSelectedList().getComponentPopupMenu();
- ui.getGearList().getSelectedList().setComponentPopupMenu(null);
+ gearPopupMenu = this.ui.getGearList().getSelectedList().getComponentPopupMenu();
+ this.ui.getGearList().getSelectedList().setComponentPopupMenu(null);
gearPopupMenu.add(new JSeparator(), 0);
- gearPopupMenu.add(ui.getViewGearCaracteristicsItem(), 0);
- gearPopupMenu.add(ui.getEditGearCaracteristicsItem(), 0);
+ gearPopupMenu.add(this.ui.getViewGearCaracteristicsItem(), 0);
+ gearPopupMenu.add(this.ui.getEditGearCaracteristicsItem(), 0);
- initBeanList(ui.getHeadOfMissionList(),
+ initBeanList(this.ui.getHeadOfMissionList(),
users,
model.getHeadOfMission());
- initBeanList(ui.getHeadOfSortRoomList(),
+ initBeanList(this.ui.getHeadOfSortRoomList(),
users,
model.getHeadOfSortRoom());
- ui.getGearList().getSelectedList().addMouseListener(new MouseAdapter() {
+ this.ui.getGearList().getSelectedList().addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
@@ -372,7 +362,7 @@
}
});
- ui.getGearList().getSelectedList().addKeyListener(new KeyAdapter() {
+ this.ui.getGearList().getSelectedList().addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_CONTEXT_MENU) {
@@ -397,7 +387,7 @@
}
});
- SwingValidator validator = ui.getValidator();
+ SwingValidator validator = this.ui.getValidator();
listenValidatorValid(validator, model);
model.setVesselType(VesselTypeEnum.SCIENTIFIC);
@@ -472,7 +462,8 @@
if (gear != null) {
editMenuEnabled = !getModel().isCreate() &&
!getModel().isModify() &&
- (!gear.isScientificGear() || persistenceService.isTemporary(gear));
+ (!gear.isScientificGear() ||
+ getPersistenceService().isTemporary(gear));
viewMenuEnabled = true;
GEAR_EDIT_CONTEXT.setContextValue(ui, gear);
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -25,6 +25,7 @@
<import>
fr.ifremer.tutti.persistence.entities.referential.Caracteristic
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
org.jdesktop.swingx.JXTable
@@ -32,12 +33,17 @@
java.awt.Color
</import>
- <GearCaracteristicsEditorUIHandler id='handler'
- initializer='getContextValue(GearCaracteristicsEditorUIHandler.class)'/>
-
<GearCaracteristicsEditorUIModel id='model'
initializer='getContextValue(GearCaracteristicsEditorUIModel.class)'/>
+ <script><![CDATA[
+
+public GearCaracteristicsEditorUI(TuttiUI parentUI) {
+ TuttiUIUtil.setParentUI(this, parentUI);
+}
+
+ ]]></script>
+
<JPopupMenu id='tablePopup'>
<JMenuItem id='removeCaracteristicMenu'
onActionPerformed='handler.removeCaracteristic()'/>
@@ -71,19 +77,6 @@
</JPanel>
</cell>
</row>
- <script><![CDATA[
-public GearCaracteristicsEditorUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- GearCaracteristicsEditorUIHandler handler = new GearCaracteristicsEditorUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
-}
-protected void $afterCompleteSetup() {
- handler.afterInitUI();
-}
-
- ]]></script>
-
</Table>
\ No newline at end of file
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/GearCaracteristicsEditorUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -24,14 +24,12 @@
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
+import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.persistence.entities.CaracteristicMap;
import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
import fr.ifremer.tutti.persistence.entities.referential.Gear;
import fr.ifremer.tutti.service.DecoratorService;
-import fr.ifremer.tutti.service.PersistenceService;
-import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicValueEditor;
import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicValueRenderer;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
@@ -58,11 +56,8 @@
private final static Log log =
LogFactory.getLog(GearCaracteristicsEditorUIHandler.class);
- protected final PersistenceService persistenceService = getContext().getPersistenceService();
-
- public GearCaracteristicsEditorUIHandler(TuttiUI<?,?> parentUi,
- GearCaracteristicsEditorUI ui) {
- super(parentUi.getHandler().getContext(), ui, GearCaracteristicsEditorRowModel.PROPERTY_VALUE);
+ public GearCaracteristicsEditorUIHandler() {
+ super(GearCaracteristicsEditorRowModel.PROPERTY_VALUE);
}
@Override
@@ -124,10 +119,11 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(GearCaracteristicsEditorUI ui) {
+ super.beforeInit(ui);
GearCaracteristicsEditorUIModel model =
new GearCaracteristicsEditorUIModel();
- getUI().setContextValue(model);
+ ui.setContextValue(model);
model.addPropertyChangeListener(GearCaracteristicsEditorUIModel.PROPERTY_GEAR, new PropertyChangeListener() {
@Override
@@ -139,8 +135,8 @@
}
@Override
- public void afterInitUI() {
- initUI(getUI());
+ public void afterInit(GearCaracteristicsEditorUI ui) {
+ initUI(ui);
initBeanFilterableComboBox(getKeyCombo(), Lists.<Caracteristic>newArrayList(), null);
getModel().setAvailableCaracteristics(getDataContext().getCaracteristics());
@@ -288,7 +284,7 @@
Gear gear = getModel().getGear();
gear.setCaracteristics((CaracteristicMap) getModel().getCaracteristicMap().clone());
- persistenceService.saveGearCaracteristics(gear, getDataContext().getCruise());
+ getPersistenceService().saveGearCaracteristics(gear, getDataContext().getCruise());
closeUI(ui);
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/ValidateCruiseUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/ValidateCruiseUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/ValidateCruiseUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -29,6 +29,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
org.jdesktop.swingx.JXTitledPanel
@@ -36,20 +37,10 @@
<script><![CDATA[
public ValidateCruiseUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- ValidateCruiseUIHandler handler = new ValidateCruiseUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
]]></script>
- <ValidateCruiseUIHandler id='handler'
- initializer='getContextValue(ValidateCruiseUIHandler.class)'/>
-
<ValidateCruiseUIModel id='model'
initializer='getContextValue(ValidateCruiseUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/ValidateCruiseUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/ValidateCruiseUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/cruise/ValidateCruiseUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -31,12 +31,10 @@
import fr.ifremer.shared.application.swing.util.CloseableUI;
import fr.ifremer.tutti.persistence.ProgressionModel;
import fr.ifremer.tutti.persistence.entities.data.FishingOperation;
-import fr.ifremer.tutti.service.catches.ValidateCruiseOperationsService;
import fr.ifremer.tutti.ui.swing.action.EditCruiseFishingOperationAction;
import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
import fr.ifremer.tutti.ui.swing.util.RemoveablePropertyChangeListener;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
@@ -74,25 +72,19 @@
private final static Log log = LogFactory.getLog(ValidateCruiseUIHandler.class);
- /** Validation service. */
- private final ValidateCruiseOperationsService validationService;
-
protected EditCruiseFishingOperationAction editFishingOperationAction;
- public ValidateCruiseUIHandler(TuttiUI<?, ?> parentUi, ValidateCruiseUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- validationService = getContext().getValidateCruiseOperationsService();
- }
-
@Override
- public void beforeInitUI() {
+ public void beforeInit(ValidateCruiseUI ui) {
+ super.beforeInit(ui);
+
ValidateCruiseUIModel model = new ValidateCruiseUIModel();
ProgressionModel progressionModel = new ProgressionModel();
ApplicationActionUIModel actionUIModel = getContext().getActionUI().getModel();
actionUIModel.setProgressionModel(progressionModel);
- model.setValidator(validationService.validateCruiseOperations(progressionModel));
+ model.setValidator(getValidateCruiseOperationsService().validateCruiseOperations(progressionModel));
actionUIModel.setProgressionModel(null);
model.addPropertyChangeListener(ValidateCruiseUIModel.PROPERTY_SELECTED_FISHING_OPERATION,
@@ -105,16 +97,16 @@
}
});
- ui.setContextValue(model);
+ this.ui.setContextValue(model);
}
@Override
- public void afterInitUI() {
- initUI(ui);
+ public void afterInit(ValidateCruiseUI ui) {
+ initUI(this.ui);
editFishingOperationAction = getContext().getActionFactory().createLogicAction(this, EditCruiseFishingOperationAction.class);
- ui.getOperationPanel().getModel().setSelectedFishingOperation(null);
+ this.ui.getOperationPanel().getModel().setSelectedFishingOperation(null);
DefaultMutableTreeNode root = new DefaultMutableTreeNode();
Map<FishingOperation, NuitonValidatorResult> validator = getModel().getValidator();
@@ -126,13 +118,13 @@
}
TreeModel model = new DefaultTreeModel(root);
- JTree navigation = ui.getNavigation();
+ JTree navigation = this.ui.getNavigation();
navigation.setModel(model);
navigation.setCellRenderer(new ValidationTreeCellRenderer());
SwingUtil.expandTree(navigation);
SwingUtil.addExpandOnClickListener(navigation);
- FishingOperationsUI operationPanel = ui.getOperationPanel();
+ FishingOperationsUI operationPanel = this.ui.getOperationPanel();
operationPanel.getTopPanel().setVisible(false);
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,6 +28,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.TuttiUIContext
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
javax.swing.border.EmptyBorder
@@ -37,20 +38,11 @@
<script><![CDATA[
public DbManagerUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- DbManagerUIHandler handler = new DbManagerUIHandler(parentUI.getHandler().getContext(), this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
]]></script>
- <DbManagerUIHandler id='handler'
- initializer='getContextValue(DbManagerUIHandler.class)'/>
-
<TuttiUIContext id='model'
initializer='getContextValue(TuttiUIContext.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/db/DbManagerUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -55,14 +55,6 @@
/** Logger. */
private static final Log log = LogFactory.getLog(DbManagerUIHandler.class);
- public DbManagerUIHandler(TuttiUIContext context, DbManagerUI ui) {
- super(context, ui);
- }
-
- @Override
- public void beforeInitUI() {
- }
-
public void updateMessage() {
boolean dbExist = getContext().isDbExist();
@@ -144,9 +136,9 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(DbManagerUI ui) {
- initUI(ui);
+ initUI(this.ui);
getModel().addPropertyChangeListener(TuttiUIContext.PROPERTY_DB_EXIST, new PropertyChangeListener() {
@Override
@@ -160,7 +152,7 @@
mnemonic = _("tutti.dbManager.action.installDb.mnemonic");
}
if (StringUtils.isNotBlank(mnemonic)) {
- ui.getInstallOrReinstallDbButton().setMnemonic(mnemonic.charAt(0));
+ DbManagerUIHandler.this.ui.getInstallOrReinstallDbButton().setMnemonic(mnemonic.charAt(0));
}
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -32,6 +32,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.TuttiUIContext
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
fr.ifremer.shared.application.swing.util.ActionListCellRenderer
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
@@ -44,22 +45,11 @@
protected TuttiUIContext uiContext;
public SelectCruiseUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- uiContext = parentUI.getHandler().getContext();
- SelectCruiseUIHandler handler =
- new SelectCruiseUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
+ uiContext = TuttiUIUtil.getApplicationContext(parentUI);
}
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
]]></script>
- <SelectCruiseUIHandler id='handler'
- initializer='getContextValue(SelectCruiseUIHandler.class)'/>
-
<SelectCruiseUIModel id='model'
initializer='getContextValue(SelectCruiseUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -30,7 +30,6 @@
import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol;
import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.collections.CollectionUtils;
@@ -61,8 +60,6 @@
private static final Log log =
LogFactory.getLog(SelectCruiseUIHandler.class);
- protected final PersistenceService persistenceService;
-
public static final MouseListener GRAB_FOCUS_ON_ENTER_LISTENER = new MouseAdapter() {
@Override
public void mouseEntered(MouseEvent e) {
@@ -71,18 +68,17 @@
}
};
- public SelectCruiseUIHandler(TuttiUI<?, ?> parentUI, SelectCruiseUI ui) {
- super(parentUI.getHandler().getContext(), ui);
- persistenceService = getContext().getPersistenceService();
- }
-
@Override
public SwingValidator<SelectCruiseUIModel> getValidator() {
return ui.getValidator();
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(SelectCruiseUI ui) {
+ super.beforeInit(ui);
+
+ PersistenceService persistenceService = getContext().getPersistenceService();
+
SelectCruiseUIModel model = new SelectCruiseUIModel();
List<Program> programs = persistenceService.getAllProgram();
@@ -143,7 +139,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(SelectCruiseUI ui) {
initUI(ui);
@@ -182,13 +178,13 @@
@Override
public void propertyChange(PropertyChangeEvent evt) {
// reload combo box
- BeanFilterableComboBox<TuttiProtocol> combobox = ui.getProtocolCombobox();
+ BeanFilterableComboBox<TuttiProtocol> combobox = SelectCruiseUIHandler.this.ui.getProtocolCombobox();
List<TuttiProtocol> protocols = (List<TuttiProtocol>) evt.getNewValue();
combobox.setData(null);
combobox.setData(protocols);
- ui.applyDataBinding(SelectCruiseUI.BINDING_PROTOCOL_COMBOBOX_ENABLED);
+ SelectCruiseUIHandler.this.ui.applyDataBinding(SelectCruiseUI.BINDING_PROTOCOL_COMBOBOX_ENABLED);
}
});
@@ -205,7 +201,7 @@
if (noProgram) {
cruises = Lists.newArrayList();
} else {
- cruises = persistenceService.getAllCruise(newValue.getId());
+ cruises = getPersistenceService().getAllCruise(newValue.getId());
}
SelectCruiseUIModel source = (SelectCruiseUIModel) evt.getSource();
source.setCruises(cruises);
@@ -217,7 +213,7 @@
@Override
public void propertyChange(PropertyChangeEvent evt) {
// reload combo box
- BeanFilterableComboBox<Cruise> combobox = ui.getCruiseCombobox();
+ BeanFilterableComboBox<Cruise> combobox = SelectCruiseUIHandler.this.ui.getCruiseCombobox();
List<Cruise> campaigns = (List<Cruise>) evt.getNewValue();
combobox.setData(null);
combobox.setData(campaigns);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -34,9 +34,11 @@
fr.ifremer.tutti.ui.swing.content.operation.fishing.GearUseFeatureTabUI
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
- fr.ifremer.shared.application.type.CoordinateEditorType
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
fr.ifremer.tutti.ui.swing.util.attachment.ButtonAttachment
+ fr.ifremer.shared.application.type.CoordinateEditorType
+
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
jaxx.runtime.swing.editor.bean.BeanDoubleList
jaxx.runtime.swing.editor.NumberEditor
@@ -55,18 +57,9 @@
<script><![CDATA[
public EditFishingOperationUI(FishingOperationsUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- EditFishingOperationUIHandler handler = new EditFishingOperationUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
-}
+ TuttiUIUtil.setParentUI(this, parentUI);
+} ]]></script>
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
- ]]></script>
-
- <EditFishingOperationUIHandler id='handler'
- initializer='getContextValue(EditFishingOperationUIHandler.class)'/>
-
<EditFishingOperationUIModel id='model'
initializer='getContextValue(EditFishingOperationUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,6 +28,7 @@
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import fr.ifremer.shared.application.ApplicationDataUtil;
+import fr.ifremer.shared.application.swing.tab.TabHandler;
import fr.ifremer.shared.application.type.CoordinateEditorType;
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.Cruise;
@@ -44,7 +45,6 @@
import fr.ifremer.tutti.ui.swing.content.operation.fishing.AbstractCaracteristicTabUIModel;
import fr.ifremer.tutti.ui.swing.content.operation.fishing.GearUseFeatureTabUIModel;
import fr.ifremer.tutti.ui.swing.content.operation.fishing.VesselUseFeatureTabUIModel;
-import fr.ifremer.shared.application.swing.tab.TabHandler;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiTabContainerUIHandler;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.caracteristics.GearCaracteristicListCellRenderer;
@@ -89,10 +89,6 @@
private static final Log log =
LogFactory.getLog(EditFishingOperationUIHandler.class);
- private final FishingOperationsUI parentUi;
-
- private final PersistenceService persistenceService;
-
/**
* listener to set the same end date as the start date
* when the user changes it only (remove this listener before selecting the
@@ -191,13 +187,16 @@
*
* @since 0.3
*/
- private final TuttiBeanMonitor<EditFishingOperationUIModel> fishingOperationMonitor;
+ private TuttiBeanMonitor<EditFishingOperationUIModel> fishingOperationMonitor;
- public EditFishingOperationUIHandler(FishingOperationsUI parentUi,
- EditFishingOperationUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- this.parentUi = parentUi;
- this.persistenceService = getContext().getPersistenceService();
+ //------------------------------------------------------------------------//
+ //-- AbstractTuttiUIHandler methods --//
+ //------------------------------------------------------------------------//
+
+ @Override
+ public void beforeInit(EditFishingOperationUI ui) {
+ super.beforeInit(ui);
+
this.fishingOperationMonitor = new TuttiBeanMonitor<EditFishingOperationUIModel>(
EditFishingOperationUIModel.PROPERTY_STATION_NUMBER,
EditFishingOperationUIModel.PROPERTY_FISHING_OPERATION_NUMBER,
@@ -257,15 +256,7 @@
EditFishingOperationUIModel.PROPERTY_GEAR,
EditFishingOperationUIModel.PROPERTY_MULTIRIG_AGGREGATION,
EditFishingOperationUIModel.PROPERTY_COMMENT);
- }
- //------------------------------------------------------------------------//
- //-- AbstractTuttiUIHandler methods --//
- //------------------------------------------------------------------------//
-
- @Override
- public void beforeInitUI() {
-
EditFishingOperationUIModel model = new EditFishingOperationUIModel();
model.setCoordinateEditorType(getConfig().getCoordinateEditorType());
model.setValidationContext(getContext().getValidationContext());
@@ -322,9 +313,8 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(EditFishingOperationUI ui) {
-
ui.getSecondaryVesselList().getBeforeFilterPanel().add(ui.getSecondaryVesselFilterPane(), BorderLayout.CENTER);
ui.getFishingOperationValidPanel().remove(
@@ -399,6 +389,7 @@
TuttiLocation location = model.getLocation();
+ PersistenceService persistenceService = getPersistenceService();
String zoneId = zone.getId();
List<TuttiLocation> stratas =
Lists.newArrayList(persistenceService.getAllFishingOperationStrata(zoneId));
@@ -465,16 +456,16 @@
}
// clean vessel filter
- ui.getSecondaryVesselList().getHandler().clearFilters();
+ EditFishingOperationUIHandler.this.ui.getSecondaryVesselList().getHandler().clearFilters();
// get selected vessel
- List<Vessel> selected = Lists.newArrayList(ui.getSecondaryVesselList().getModel().getSelected());
+ List<Vessel> selected = Lists.newArrayList(EditFishingOperationUIHandler.this.ui.getSecondaryVesselList().getModel().getSelected());
// set new universe of vessel
- ui.getSecondaryVesselList().getModel().setUniverse(vessels);
+ EditFishingOperationUIHandler.this.ui.getSecondaryVesselList().getModel().setUniverse(vessels);
// push back selected vessel
- ui.getSecondaryVesselList().getModel().setSelected(selected);
+ EditFishingOperationUIHandler.this.ui.getSecondaryVesselList().getModel().setSelected(selected);
// push back modify state
model.setModify(modify);
@@ -510,7 +501,7 @@
new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
- JButton button = ui.getCancelButton();
+ JButton button = EditFishingOperationUIHandler.this.ui.getCancelButton();
CancelEditFishingOperationAction action =
getContext().getActionFactory().getLogicAction(button);
if (evt.getNewValue() == null) {
@@ -694,7 +685,7 @@
}
public FishingOperationsUI getParentUi() {
- return parentUi;
+ return getParentContainer(FishingOperationsUI.class);
}
public TuttiBeanMonitor<EditFishingOperationUIModel> getFishingOperationMonitor() {
@@ -750,10 +741,10 @@
String strataId = newStrata == null ? null : newStrata.getId();
List<TuttiLocation> subStrata =
- persistenceService.getAllFishingOperationSubStrata(zoneId, strataId);
+ getPersistenceService().getAllFishingOperationSubStrata(zoneId, strataId);
List<TuttiLocation> location =
- persistenceService.getAllFishingOperationLocation(zoneId, strataId, null);
+ getPersistenceService().getAllFishingOperationLocation(zoneId, strataId, null);
ui.getSubStrataComboBox().setData(subStrata);
@@ -794,7 +785,7 @@
String strataId = strata == null ? null : strata.getId();
List<TuttiLocation> location =
- persistenceService.getAllFishingOperationLocation(zoneId, strataId, subStrataId);
+ getPersistenceService().getAllFishingOperationLocation(zoneId, strataId, subStrataId);
ui.getLocationComboBox().setData(location);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,6 +26,8 @@
import com.google.common.collect.Lists;
import fr.ifremer.shared.application.ApplicationDataUtil;
+import fr.ifremer.shared.application.swing.tab.TabContentModel;
+import fr.ifremer.shared.application.type.CoordinateEditorType;
import fr.ifremer.tutti.persistence.entities.CaracteristicMap;
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.AttachementObjectTypeEnum;
@@ -37,16 +39,12 @@
import fr.ifremer.tutti.persistence.entities.referential.Person;
import fr.ifremer.tutti.persistence.entities.referential.TuttiLocation;
import fr.ifremer.tutti.persistence.entities.referential.Vessel;
-import fr.ifremer.shared.application.type.CoordinateEditorType;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiBeanUIModel;
-import fr.ifremer.shared.application.swing.tab.TabContentModel;
import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentModelAware;
import jaxx.runtime.swing.editor.gis.DmdCoordinate;
import jaxx.runtime.swing.editor.gis.DmsCoordinate;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
import org.nuiton.util.DateUtil;
import org.nuiton.util.beans.Binder;
import org.nuiton.util.beans.BinderFactory;
@@ -867,10 +865,6 @@
return CoordinateEditorType.DMD.equals(getCoordinateEditorType());
}
- /** Logger. */
- private static final Log log =
- LogFactory.getLog(EditFishingOperationUIModel.class);
-
public void convertGearShootingCoordinatesFromDD() {
switch (coordinateEditorType) {
@@ -879,10 +873,6 @@
setGearShootingStartLongitudeDms(getGearShootingStartLongitude());
setGearShootingEndLatitudeDms(getGearShootingEndLatitude());
setGearShootingEndLongitudeDms(getGearShootingEndLongitude());
-
- if (log.isInfoEnabled()) {
- log.info("startLongitude dms: "+gearShootingStartLongitudeDms);
- }
break;
case DMD:
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -32,6 +32,7 @@
fr.ifremer.tutti.ui.swing.TuttiUIContext
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
@@ -42,20 +43,10 @@
<script><![CDATA[
public FishingOperationsUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- FishingOperationsUIHandler handler = new FishingOperationsUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() {
- handler.afterInitUI();
-}
]]></script>
- <FishingOperationsUIHandler id='handler'
- initializer='getContextValue(FishingOperationsUIHandler.class)'/>
-
<FishingOperationsUIModel id='model'
initializer='getContextValue(FishingOperationsUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/FishingOperationsUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -36,7 +36,6 @@
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIModel;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiTabContainerUIHandler;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -62,25 +61,19 @@
private static final Log log =
LogFactory.getLog(FishingOperationsUIHandler.class);
- private final PersistenceService persistenceService;
-
protected EditFishingOperationAction editFishingOperationAction;
- public FishingOperationsUIHandler(TuttiUI<?, ?> parentUI,
- FishingOperationsUI ui) {
- super(parentUI.getHandler().getContext(), ui);
- persistenceService = getContext().getPersistenceService();
- }
-
//------------------------------------------------------------------------//
//-- AbstractTuttiUIHandler methods --//
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(FishingOperationsUI ui) {
+ super.beforeInit(ui);
+
if (log.isDebugEnabled()) {
- log.debug("for " + ui);
+ log.debug("for " + this.ui);
}
FishingOperationsUIModel model = new FishingOperationsUIModel();
@@ -93,6 +86,8 @@
// load existing cruise
Cruise cruise = getDataContext().getCruise();
+ PersistenceService persistenceService = getPersistenceService();
+
TuttiProtocol protocol;
if (getContext().isProtocolFilled()) {
@@ -119,14 +114,14 @@
" fishingOperation(s).");
}
- ui.setContextValue(model);
- ui.setContextValue(catchesUIModel);
+ this.ui.setContextValue(model);
+ this.ui.setContextValue(catchesUIModel);
}
@Override
- public void afterInitUI() {
+ public void afterInit(FishingOperationsUI ui) {
- initUI(ui);
+ initUI(this.ui);
editFishingOperationAction =
getContext().getActionFactory().createLogicAction(this, EditFishingOperationAction.class);
@@ -135,7 +130,7 @@
List<FishingOperation> fishingOperations = model.getFishingOperation();
- initBeanFilterableComboBox(ui.getFishingOperationComboBox(),
+ initBeanFilterableComboBox(this.ui.getFishingOperationComboBox(),
fishingOperations,
model.getSelectedFishingOperation());
@@ -155,7 +150,7 @@
if (newValue == null) {
operation = null;
} else {
- operation = persistenceService.getFishingOperation(newValue.getId());
+ operation = getPersistenceService().getFishingOperation(newValue.getId());
Cruise cruise = getDataContext().getCruise();
operation.setCruise(cruise);
}
@@ -196,8 +191,8 @@
if (log.isDebugEnabled()) {
log.debug("propertyChange " + FishingOperationsUIModel.PROPERTY_FISHING_OPERATION);
}
- ui.getFishingOperationComboBox().setData(null);
- ui.getFishingOperationComboBox().setData((List<FishingOperation>) evt.getNewValue());
+ FishingOperationsUIHandler.this.ui.getFishingOperationComboBox().setData(null);
+ FishingOperationsUIHandler.this.ui.getFishingOperationComboBox().setData((List<FishingOperation>) evt.getNewValue());
}
});
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/AbstractTuttiBatchTableUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/AbstractTuttiBatchTableUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/AbstractTuttiBatchTableUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -59,10 +59,8 @@
public abstract void selectFishingOperation(FishingOperation bean);
- protected AbstractTuttiBatchTableUIHandler(TuttiUI<?, ?> parentUi,
- UI ui,
- String... properties) {
- super(parentUi.getHandler().getContext(), ui, properties);
+ protected AbstractTuttiBatchTableUIHandler(String... properties) {
+ super(properties);
}
/**
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -45,6 +45,7 @@
fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchUI
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
fr.ifremer.tutti.ui.swing.util.attachment.ButtonAttachment
fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUI
fr.ifremer.shared.application.swing.computable.ComputableDataEditor
@@ -60,18 +61,10 @@
<script><![CDATA[
public EditCatchesUI(FishingOperationsUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- EditCatchesUIHandler handler = new EditCatchesUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <EditCatchesUIHandler id='handler'
- initializer='getContextValue(EditCatchesUIHandler.class)'/>
-
<EditCatchesUIModel id='model'
initializer='getContextValue(EditCatchesUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/EditCatchesUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -25,6 +25,7 @@
*/
import com.google.common.collect.Sets;
+import fr.ifremer.shared.application.swing.tab.TabHandler;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUI;
import fr.ifremer.tutti.ui.swing.content.operation.FishingOperationsUIHandler;
@@ -36,10 +37,10 @@
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency.SpeciesFrequencyCellComponent;
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency.SpeciesFrequencyUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.split.SplitSpeciesBatchUI;
-import fr.ifremer.shared.application.swing.tab.TabHandler;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiTabContainerUIHandler;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.TuttiUI;
+import jaxx.runtime.SwingUtil;
import jaxx.runtime.swing.CardLayout2Ext;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
@@ -50,6 +51,7 @@
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
+import java.awt.Container;
import java.util.Set;
import static org.nuiton.i18n.I18n._;
@@ -87,13 +89,16 @@
*
* @since 0.3
*/
- private final TuttiBeanMonitor<EditCatchesUIModel> catchBatchMonitor;
+ private TuttiBeanMonitor<EditCatchesUIModel> catchBatchMonitor;
- protected final FishingOperationsUI parentUi;
+ //------------------------------------------------------------------------//
+ //-- AbstractTuttiUIHandler methods --//
+ //------------------------------------------------------------------------//
- public EditCatchesUIHandler(FishingOperationsUI parentUi, EditCatchesUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- this.parentUi = parentUi;
+ @Override
+ public void beforeInit(EditCatchesUI ui) {
+ super.beforeInit(ui);
+
this.catchBatchMonitor = new TuttiBeanMonitor<EditCatchesUIModel>(
EditCatchesUIModel.PROPERTY_MARINE_LITTER_TOTAL_WEIGHT,
EditCatchesUIModel.PROPERTY_SPECIES_TOTAL_SORTED_WEIGHT,
@@ -102,15 +107,7 @@
EditCatchesUIModel.PROPERTY_BENTHOS_TOTAL_SORTED_WEIGHT,
EditCatchesUIModel.PROPERTY_BENTHOS_TOTAL_INERT_WEIGHT,
EditCatchesUIModel.PROPERTY_BENTHOS_TOTAL_LIVING_NOT_ITEMIZED_WEIGHT);
- }
- //------------------------------------------------------------------------//
- //-- AbstractTuttiUIHandler methods --//
- //------------------------------------------------------------------------//
-
- @Override
- public void beforeInitUI() {
-
EditCatchesUIModel model = ui.getContextValue(EditCatchesUIModel.class);
listModelIsModify(model);
@@ -119,7 +116,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(EditCatchesUI ui) {
ui.getBenthosTabSplitBatch().getModel().setSplitMode(true);
ui.getBenthosTabAddSampleCategoryBatch().getModel().setSplitMode(false);
@@ -280,14 +277,6 @@
return catchBatchMonitor;
}
- public FishingOperationsUI getParentUi() {
- return parentUi;
- }
-
- public FishingOperationsUIHandler getParentHandler() {
- return getParentUi().getHandler();
- }
-
protected void registerValidators() {
registerValidators(getValidator(),
ui.getSpeciesTabContent().getHandler().getValidator(),
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -27,15 +27,14 @@
<import>
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
- fr.ifremer.tutti.ui.swing.TuttiUIContext
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
org.jdesktop.swingx.JXTable
javax.swing.ListSelectionModel
java.awt.Color
- java.awt.Dimension
static org.nuiton.i18n.I18n._
</import>
@@ -43,22 +42,13 @@
<script><![CDATA[
public AccidentalBatchUI(TuttiUI<?,?> parentUI) {
- JAXXUtil.initContext(this, parentUI);
- AccidentalBatchUIHandler handler = new AccidentalBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <AccidentalBatchUIHandler id='handler'
- initializer='getContextValue(AccidentalBatchUIHandler.class)'/>
-
<AccidentalBatchUIModel id='model'
initializer='getContextValue(AccidentalBatchUIModel.class)'/>
-
<BeanValidator id='validator' bean='model'
uiClass='jaxx.runtime.validator.swing.ui.ImageValidationUI'>
</BeanValidator>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/AccidentalBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,6 +26,8 @@
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
+import fr.ifremer.shared.application.swing.table.ColumnIdentifier;
+import fr.ifremer.shared.application.type.WeightUnit;
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.AccidentalBatch;
import fr.ifremer.tutti.persistence.entities.data.Attachment;
@@ -34,8 +36,6 @@
import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.service.DecoratorService;
-import fr.ifremer.tutti.service.ValidationService;
-import fr.ifremer.shared.application.type.WeightUnit;
import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTableUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
@@ -53,8 +53,6 @@
import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicMapEditorUI;
import fr.ifremer.tutti.ui.swing.util.comment.CommentCellEditor;
import fr.ifremer.tutti.ui.swing.util.comment.CommentCellRenderer;
-import fr.ifremer.shared.application.swing.table.ColumnIdentifier;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -78,29 +76,24 @@
private static final Log log =
LogFactory.getLog(AccidentalBatchUIHandler.class);
- protected ValidationService validationService = getContext().getValidationService();
-
/**
* Weight unit.
*
* @since 2.5
*/
- protected final WeightUnit weightUnit;
+ protected WeightUnit weightUnit;
- public AccidentalBatchUIHandler(TuttiUI<?, ?> parentUi,
- AccidentalBatchUI ui) {
- super(parentUi, ui,
- AccidentalBatchRowModel.PROPERTY_SPECIES,
- AccidentalBatchRowModel.PROPERTY_GENDER,
- AccidentalBatchRowModel.PROPERTY_WEIGHT,
- AccidentalBatchRowModel.PROPERTY_SIZE,
- AccidentalBatchRowModel.PROPERTY_LENGTH_STEP_CARACTERISTIC,
- AccidentalBatchRowModel.PROPERTY_DEAD_OR_ALIVE,
- AccidentalBatchRowModel.PROPERTY_CARACTERISTICS,
- AccidentalBatchRowModel.PROPERTY_COMMENT,
- AccidentalBatchRowModel.PROPERTY_ATTACHMENT);
-
- weightUnit = getConfig().getAccidentalCatchWeightUnit();
+ public AccidentalBatchUIHandler() {
+ super(
+ AccidentalBatchRowModel.PROPERTY_SPECIES,
+ AccidentalBatchRowModel.PROPERTY_GENDER,
+ AccidentalBatchRowModel.PROPERTY_WEIGHT,
+ AccidentalBatchRowModel.PROPERTY_SIZE,
+ AccidentalBatchRowModel.PROPERTY_LENGTH_STEP_CARACTERISTIC,
+ AccidentalBatchRowModel.PROPERTY_DEAD_OR_ALIVE,
+ AccidentalBatchRowModel.PROPERTY_CARACTERISTICS,
+ AccidentalBatchRowModel.PROPERTY_COMMENT,
+ AccidentalBatchRowModel.PROPERTY_ATTACHMENT);
}
//------------------------------------------------------------------------//
@@ -140,7 +133,7 @@
// get all marine litter root
List<AccidentalBatch> batches =
- persistenceService.getAllAccidentalBatch(bean.getId());
+ getPersistenceService().getAllAccidentalBatch(bean.getId());
for (AccidentalBatch aBatch : batches) {
AccidentalBatchRowModel entry = loadBatch(aBatch);
@@ -183,7 +176,8 @@
@Override
protected boolean isRowValid(AccidentalBatchRowModel row) {
AccidentalBatch batch = row.toBean();
- NuitonValidatorResult validator = validationService.validateAccidentalBatch(batch);
+ NuitonValidatorResult validator =
+ getValidationService().validateAccidentalBatch(batch);
boolean result = !validator.hasErrorMessagess();
return result;
}
@@ -225,8 +219,11 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(AccidentalBatchUI ui) {
+ super.beforeInit(ui);
+ weightUnit = getConfig().getAccidentalCatchWeightUnit();
+
if (log.isDebugEnabled()) {
log.debug("beforeInit: " + ui);
}
@@ -239,7 +236,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(AccidentalBatchUI ui) {
if (log.isDebugEnabled()) {
log.debug("afterInit: " + ui);
@@ -362,19 +359,19 @@
@Override
public CaracteristicMapEditorUI getCaracteristicMapEditor() {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
return parent.getAccidentalCaracteristicMapEditor();
}
@Override
public void showCaracteristicMapEditor(Species species) {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setAccidentalSelectedCard(EditCatchesUIHandler.EDIT_CARACTERISTICS_CARD, species);
}
@Override
public void hideCaracteristicMapEditor() {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setAccidentalSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -384,7 +381,7 @@
public void createBatch() {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
CreateAccidentalBatchUI createBatchEditor = parent.getAccidentalTabCreateBatch();
createBatchEditor.getHandler().openUI();
@@ -423,8 +420,8 @@
new AccidentalBatchRowModel(weightUnit, aBatch);
List<Attachment> attachments =
- persistenceService.getAllAttachments(newRow.getObjectType(),
- newRow.getObjectId());
+ getPersistenceService().getAllAttachments(newRow.getObjectType(),
+ newRow.getObjectId());
newRow.addAllAttachment(attachments);
@@ -443,10 +440,10 @@
if (TuttiEntities.isNew(entityToSave)) {
- persistenceService.createAccidentalBatch(entityToSave);
+ getPersistenceService().createAccidentalBatch(entityToSave);
row.setId(entityToSave.getId());
} else {
- persistenceService.saveAccidentalBatch(entityToSave);
+ getPersistenceService().saveAccidentalBatch(entityToSave);
}
getModel().fireBatchUpdated(row);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -31,6 +31,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
jaxx.runtime.swing.editor.NumberEditor
@@ -41,18 +42,10 @@
<script><![CDATA[
public CreateAccidentalBatchUI(EditCatchesUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- CreateAccidentalBatchUIHandler handler = new CreateAccidentalBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <CreateAccidentalBatchUIHandler id='handler'
- initializer='getContextValue(CreateAccidentalBatchUIHandler.class)'/>
-
<CreateAccidentalBatchUIModel id='model'
initializer='getContextValue(CreateAccidentalBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/accidental/create/CreateAccidentalBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -23,16 +23,14 @@
*/
import com.google.common.collect.Lists;
+import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.accidental.AccidentalBatchUI;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.shared.application.swing.util.Cancelable;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -51,24 +49,20 @@
private static final Log log =
LogFactory.getLog(CreateAccidentalBatchUIHandler.class);
- public CreateAccidentalBatchUIHandler(TuttiUI<?,?> parentUi,
- CreateAccidentalBatchUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- }
-
//------------------------------------------------------------------------//
//-- AbstractTuttiUIHandler methods --//
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(CreateAccidentalBatchUI ui) {
+ super.beforeInit(ui);
CreateAccidentalBatchUIModel model = new CreateAccidentalBatchUIModel();
ui.setContextValue(model);
listModelIsModify(model);
}
@Override
- public void afterInitUI() {
+ public void afterInit(CreateAccidentalBatchUI ui) {
initUI(ui);
@@ -109,7 +103,7 @@
// when canceling always invalid model
getModel().setValid(false);
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setAccidentalSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -151,7 +145,7 @@
log.debug("Save And Continue UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
AccidentalBatchUI accidentalTabContent = parent.getAccidentalTabContent();
accidentalTabContent.getHandler().addBatch(getModel());
@@ -165,7 +159,7 @@
log.debug("Save And Close UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getAccidentalTabContent().getHandler().addBatch(getModel());
// close dialog
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -30,6 +30,7 @@
fr.ifremer.tutti.ui.swing.content.operation.catches.TableViewMode
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
fr.ifremer.shared.application.swing.computable.ComputableDataEditor
org.jdesktop.swingx.JXTable
@@ -45,18 +46,10 @@
<script><![CDATA[
public BenthosBatchUI(TuttiUI<?,?> parentUI) {
- JAXXUtil.initContext(this, parentUI);
- BenthosBatchUIHandler handler = new BenthosBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <BenthosBatchUIHandler id='handler'
- initializer='getContextValue(BenthosBatchUIHandler.class)'/>
-
<BenthosBatchUIModel id='model'
initializer='getContextValue(BenthosBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/BenthosBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -45,7 +45,6 @@
import fr.ifremer.tutti.service.DecoratorService;
import fr.ifremer.tutti.service.TuttiDecorator;
import fr.ifremer.tutti.service.ValidationService;
-import fr.ifremer.tutti.service.catches.ValidateCruiseOperationsService;
import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTableUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
@@ -119,90 +118,85 @@
private static final Log log =
LogFactory.getLog(BenthosBatchUIHandler.class);
- private final EnumMap<TableViewMode, RowFilter<BenthosBatchTableModel, Integer>> tableFilters;
+ private EnumMap<TableViewMode, RowFilter<BenthosBatchTableModel, Integer>> tableFilters;
- protected ValidationService validationService;
-
- protected ValidateCruiseOperationsService validationCruiseService;
-
/**
* Sample categories model.
*
* @since 2.4
*/
- protected final SampleCategoryModel sampleCategoryModel;
+ protected SampleCategoryModel sampleCategoryModel;
/**
* Weight unit.
*
* @since 2.5
*/
- protected final WeightUnit weightUnit;
+ protected WeightUnit weightUnit;
/**
* id of the unsorted qualitative value to remove of V/HV universe.
*
* @since 2.6
*/
- protected final Integer qualitative_unsorted_id;
+ protected Integer qualitative_unsorted_id;
- public BenthosBatchUIHandler(TuttiUI<?, ?> parentUi,
- BenthosBatchUI ui) {
- super(parentUi, ui,
- SpeciesBatchRowModel.PROPERTY_SPECIES,
- SpeciesBatchRowModel.PROPERTY_WEIGHT,
- SpeciesBatchRowModel.PROPERTY_NUMBER,
- SpeciesBatchRowModel.PROPERTY_SAMPLE_CATEGORY_WEIGHT,
- SpeciesBatchRowModel.PROPERTY_COMMENT,
- SpeciesBatchRowModel.PROPERTY_ATTACHMENT,
- SpeciesBatchRowModel.PROPERTY_FREQUENCY,
- SpeciesBatchRowModel.PROPERTY_SPECIES_TO_CONFIRM);
+ public BenthosBatchUIHandler() {
+ super(
+ SpeciesBatchRowModel.PROPERTY_SPECIES,
+ SpeciesBatchRowModel.PROPERTY_WEIGHT,
+ SpeciesBatchRowModel.PROPERTY_NUMBER,
+ SpeciesBatchRowModel.PROPERTY_SAMPLE_CATEGORY_WEIGHT,
+ SpeciesBatchRowModel.PROPERTY_COMMENT,
+ SpeciesBatchRowModel.PROPERTY_ATTACHMENT,
+ SpeciesBatchRowModel.PROPERTY_FREQUENCY,
+ SpeciesBatchRowModel.PROPERTY_SPECIES_TO_CONFIRM);
- qualitative_unsorted_id =
- getContext().getPersistenceService().getEnumerationFile().QUALITATIVE_UNSORTED_ID;
-
- weightUnit = getConfig().getBenthosWeightUnit();
-
- sampleCategoryModel = getDataContext().getSampleCategoryModel();
-
- tableFilters = new EnumMap<TableViewMode, RowFilter<BenthosBatchTableModel, Integer>>(TableViewMode.class);
-
- tableFilters.put(TableViewMode.ALL, new RowFilter<BenthosBatchTableModel, Integer>() {
- @Override
- public boolean include(Entry<? extends BenthosBatchTableModel, ? extends Integer> entry) {
- return true;
- }
- });
-
- tableFilters.put(TableViewMode.ROOT, new RowFilter<BenthosBatchTableModel, Integer>() {
- @Override
- public boolean include(Entry<? extends BenthosBatchTableModel, ? extends Integer> entry) {
- boolean result = false;
- Integer rowIndex = entry.getIdentifier();
- if (rowIndex != null) {
- BenthosBatchTableModel model = entry.getModel();
- BenthosBatchRowModel row = model.getEntry(rowIndex);
- result = row != null && row.isBatchRoot();
- }
- return result;
- }
- });
-
- tableFilters.put(TableViewMode.LEAF, new RowFilter<BenthosBatchTableModel, Integer>() {
- @Override
- public boolean include(Entry<? extends BenthosBatchTableModel, ? extends Integer> entry) {
- boolean result = false;
- Integer rowIndex = entry.getIdentifier();
- if (rowIndex != null) {
- BenthosBatchTableModel model = entry.getModel();
- BenthosBatchRowModel row = model.getEntry(rowIndex);
- result = row != null && row.isBatchLeaf();
- }
- return result;
- }
- });
- validationService = getContext().getValidationService();
- validationCruiseService = getContext().getValidateCruiseOperationsService();
+// qualitative_unsorted_id =
+// getContext().getPersistenceService().getEnumerationFile().QUALITATIVE_UNSORTED_ID;
+//
+// weightUnit = getConfig().getBenthosWeightUnit();
+//
+// sampleCategoryModel = getDataContext().getSampleCategoryModel();
+//
+// tableFilters = new EnumMap<TableViewMode, RowFilter<BenthosBatchTableModel, Integer>>(TableViewMode.class);
+//
+// tableFilters.put(TableViewMode.ALL, new RowFilter<BenthosBatchTableModel, Integer>() {
+// @Override
+// public boolean include(Entry<? extends BenthosBatchTableModel, ? extends Integer> entry) {
+// return true;
+// }
+// });
+//
+// tableFilters.put(TableViewMode.ROOT, new RowFilter<BenthosBatchTableModel, Integer>() {
+// @Override
+// public boolean include(Entry<? extends BenthosBatchTableModel, ? extends Integer> entry) {
+// boolean result = false;
+// Integer rowIndex = entry.getIdentifier();
+// if (rowIndex != null) {
+// BenthosBatchTableModel model = entry.getModel();
+// BenthosBatchRowModel row = model.getEntry(rowIndex);
+// result = row != null && row.isBatchRoot();
+// }
+// return result;
+// }
+// });
+//
+// tableFilters.put(TableViewMode.LEAF, new RowFilter<BenthosBatchTableModel, Integer>() {
+// @Override
+// public boolean include(Entry<? extends BenthosBatchTableModel, ? extends Integer> entry) {
+// boolean result = false;
+// Integer rowIndex = entry.getIdentifier();
+// if (rowIndex != null) {
+// BenthosBatchTableModel model = entry.getModel();
+// BenthosBatchRowModel row = model.getEntry(rowIndex);
+// result = row != null && row.isBatchLeaf();
+// }
+// return result;
+// }
+// });
+// validationService = getContext().getValidationService();
+// validationCruiseService = getContext().getValidateCruiseOperationsService();
}
//------------------------------------------------------------------------//
@@ -242,7 +236,7 @@
// get all batch species root (says the one with only a species sample category)
BatchContainer<BenthosBatch> rootBenthosBatch =
- persistenceService.getRootBenthosBatch(
+ getPersistenceService().getRootBenthosBatch(
bean.getId(), sampleCategoryModel);
List<BenthosBatch> catches = rootBenthosBatch.getChildren();
@@ -290,7 +284,7 @@
@Override
protected boolean isRowValid(BenthosBatchRowModel row) {
BenthosBatch batch = convertRowToEntity(row, true);
- NuitonValidatorResult validator = validationService.validateBenthosBatch(batch);
+ NuitonValidatorResult validator = getValidationService().validateBenthosBatch(batch);
boolean result = !validator.hasErrorMessagess();
if (result
@@ -301,7 +295,7 @@
BenthosFrequencyRowModel.toEntity(
row.getFrequency(),
batch);
- result = validationCruiseService.isBenthosBatchValid(
+ result = getValidateCruiseOperationsService().isBenthosBatchValid(
batch,
frequencies);
}
@@ -670,8 +664,53 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(BenthosBatchUI ui) {
+ super.beforeInit(ui);
+
+ qualitative_unsorted_id =
+ getContext().getPersistenceService().getEnumerationFile().QUALITATIVE_UNSORTED_ID;
+
+ weightUnit = getConfig().getBenthosWeightUnit();
+
+ sampleCategoryModel = getDataContext().getSampleCategoryModel();
+
+ tableFilters = new EnumMap<TableViewMode, RowFilter<BenthosBatchTableModel, Integer>>(TableViewMode.class);
+
+ tableFilters.put(TableViewMode.ALL, new RowFilter<BenthosBatchTableModel, Integer>() {
+ @Override
+ public boolean include(Entry<? extends BenthosBatchTableModel, ? extends Integer> entry) {
+ return true;
+ }
+ });
+
+ tableFilters.put(TableViewMode.ROOT, new RowFilter<BenthosBatchTableModel, Integer>() {
+ @Override
+ public boolean include(Entry<? extends BenthosBatchTableModel, ? extends Integer> entry) {
+ boolean result = false;
+ Integer rowIndex = entry.getIdentifier();
+ if (rowIndex != null) {
+ BenthosBatchTableModel model = entry.getModel();
+ BenthosBatchRowModel row = model.getEntry(rowIndex);
+ result = row != null && row.isBatchRoot();
+ }
+ return result;
+ }
+ });
+
+ tableFilters.put(TableViewMode.LEAF, new RowFilter<BenthosBatchTableModel, Integer>() {
+ @Override
+ public boolean include(Entry<? extends BenthosBatchTableModel, ? extends Integer> entry) {
+ boolean result = false;
+ Integer rowIndex = entry.getIdentifier();
+ if (rowIndex != null) {
+ BenthosBatchTableModel model = entry.getModel();
+ BenthosBatchRowModel row = model.getEntry(rowIndex);
+ result = row != null && row.isBatchLeaf();
+ }
+ return result;
+ }
+ });
if (log.isDebugEnabled()) {
log.debug("beforeInit: " + ui);
}
@@ -685,7 +724,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(BenthosBatchUI ui) {
if (log.isDebugEnabled()) {
log.debug("afterInit: " + ui);
@@ -900,7 +939,7 @@
public void createBatch() {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
CreateBenthosBatchUI createBatchEditor = parent.getBenthosTabCreateBatch();
createBatchEditor.getHandler().openUI(getModel());
@@ -1002,7 +1041,7 @@
log.debug("Open split batch ui for row [" + rowIndex + ']');
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
SplitBenthosBatchUI splitBatchEditor = parent.getBenthosTabSplitBatch();
parent.getHandler().splitBenthosBatch(parentBatch, splitBatchEditor);
@@ -1041,8 +1080,7 @@
log.debug("Open addChangeCategory batch ui for row [" + rowIndex + "] and category " + sampleCategoryId);
}
- EditCatchesUI parent =
- SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
SplitBenthosBatchUI splitBatchEditor =
parent.getBenthosTabAddSampleCategoryBatch();
@@ -1329,7 +1367,7 @@
String id = aBatch.getId();
List<BenthosBatchFrequency> frequencies =
- persistenceService.getAllBenthosBatchFrequency(id);
+ getPersistenceService().getAllBenthosBatchFrequency(id);
BenthosBatchRowModel newRow =
new BenthosBatchRowModel(weightUnit,
@@ -1338,8 +1376,8 @@
frequencies);
List<Attachment> attachments =
- persistenceService.getAllAttachments(newRow.getObjectType(),
- newRow.getObjectId());
+ getPersistenceService().getAllAttachments(newRow.getObjectType(),
+ newRow.getObjectId());
newRow.addAllAttachment(attachments);
@@ -1468,14 +1506,14 @@
log.debug("Persist new species batch with parentId: " +
parentBatchId);
}
- entityToSave = persistenceService.createBenthosBatch(entityToSave,
- parentBatchId);
+ entityToSave = getPersistenceService().createBenthosBatch(entityToSave,
+ parentBatchId);
row.setId(entityToSave.getId());
} else {
if (log.isDebugEnabled()) {
log.debug("Persist existing species batch: " + entityToSave.getId() + " (parent : " + entityToSave.getParentBatch() + ")");
}
- persistenceService.saveBenthosBatch(entityToSave);
+ getPersistenceService().saveBenthosBatch(entityToSave);
}
List<BenthosFrequencyRowModel> frequencyRows = row.getFrequency();
@@ -1488,7 +1526,7 @@
if (log.isDebugEnabled()) {
log.debug("Will save " + frequency.size() + " frequencies.");
}
- frequency = persistenceService.saveBenthosBatchFrequency(
+ frequency = getPersistenceService().saveBenthosBatchFrequency(
entityToSave.getId(), frequency);
// push it back to row model
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -33,6 +33,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
org.jdesktop.swingx.JXTable
@@ -49,18 +50,10 @@
<script><![CDATA[
public CreateBenthosBatchUI(EditCatchesUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- CreateBenthosBatchUIHandler handler = new CreateBenthosBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <CreateBenthosBatchUIHandler id='handler'
- initializer='getContextValue(CreateBenthosBatchUIHandler.class)'/>
-
<CreateBenthosBatchUIModel id='model'
initializer='getContextValue(CreateBenthosBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/create/CreateBenthosBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -27,6 +27,8 @@
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
import com.google.common.collect.Multimap;
+import fr.ifremer.shared.application.swing.util.Cancelable;
+import fr.ifremer.shared.application.type.WeightUnit;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry;
import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol;
@@ -34,21 +36,17 @@
import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.service.DecoratorService;
-import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUIModel;
import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchRowModel;
import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.split.SplitBenthosBatchTableModel;
-import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.TuttiUI;
-import fr.ifremer.shared.application.type.WeightUnit;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -73,53 +71,31 @@
private static final Log log =
LogFactory.getLog(CreateBenthosBatchUIHandler.class);
- private final PersistenceService persistenceService;
-
/**
* Qualitative value for the Vrac.
*
* @since 2.5
*/
- protected final CaracteristicQualitativeValue sortedValue;
+ protected CaracteristicQualitativeValue sortedValue;
/**
* Sample categories model.
*
* @since 2.4
*/
- protected final SampleCategoryModel sampleCategoryModel;
+ protected SampleCategoryModel sampleCategoryModel;
/**
* Weight unit.
*
* @since 2.6
*/
- protected final WeightUnit weightUnit;
+ protected WeightUnit weightUnit;
- public CreateBenthosBatchUIHandler(TuttiUI<?,?> parentUi,
- CreateBenthosBatchUI ui) {
- super(parentUi.getHandler().getContext(), ui,
- SplitBenthosBatchRowModel.PROPERTY_SELECTED,
+ public CreateBenthosBatchUIHandler() {
+ super(SplitBenthosBatchRowModel.PROPERTY_SELECTED,
SplitBenthosBatchRowModel.PROPERTY_CATEGORY_VALUE,
SplitBenthosBatchRowModel.PROPERTY_WEIGHT);
- this.persistenceService = getContext().getPersistenceService();
- this.weightUnit = getConfig().getBenthosWeightUnit();
- this.sampleCategoryModel = getDataContext().getSampleCategoryModel();
-
- SampleCategoryModelEntry caracteristic = sampleCategoryModel.getCategoryById(sampleCategoryModel.getFirstCategoryId());
-
- Integer vracId = this.persistenceService.getEnumerationFile().QUALITATIVE_VRAC_ID;
-
- CaracteristicQualitativeValue vracValue = null;
- for (CaracteristicQualitativeValue caracteristicQualitativeValue : caracteristic.getCaracteristic().getQualitativeValue()) {
-
- if (vracId.equals(caracteristicQualitativeValue.getIdAsInt())) {
- vracValue = caracteristicQualitativeValue;
- break;
- }
- }
- Preconditions.checkNotNull(vracValue, "Could not found vrac qualitative value");
- sortedValue = vracValue;
}
//------------------------------------------------------------------------//
@@ -191,20 +167,39 @@
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(CreateBenthosBatchUI ui) {
+ super.beforeInit(ui);
+ this.weightUnit = getConfig().getBenthosWeightUnit();
+ this.sampleCategoryModel = getDataContext().getSampleCategoryModel();
+
+ SampleCategoryModelEntry caracteristic = sampleCategoryModel.getCategoryById(sampleCategoryModel.getFirstCategoryId());
+
+ Integer vracId = getPersistenceService().getEnumerationFile().QUALITATIVE_VRAC_ID;
+
+ CaracteristicQualitativeValue vracValue = null;
+ for (CaracteristicQualitativeValue caracteristicQualitativeValue : caracteristic.getCaracteristic().getQualitativeValue()) {
+
+ if (vracId.equals(caracteristicQualitativeValue.getIdAsInt())) {
+ vracValue = caracteristicQualitativeValue;
+ break;
+ }
+ }
+ Preconditions.checkNotNull(vracValue, "Could not found vrac qualitative value");
+ this.sortedValue = vracValue;
+
CreateBenthosBatchUIModel model =
new CreateBenthosBatchUIModel(sampleCategoryModel);
- ui.setContextValue(model);
+ this.ui.setContextValue(model);
listModelIsModify(model);
}
@Override
- public void afterInitUI() {
+ public void afterInit(CreateBenthosBatchUI ui) {
- initUI(ui);
+ initUI(this.ui);
- initBeanFilterableComboBox(ui.getSpeciesComboBox(),
+ initBeanFilterableComboBox(this.ui.getSpeciesComboBox(),
Lists.<Species>newArrayList(),
null,
DecoratorService.FROM_PROTOCOL);
@@ -217,14 +212,14 @@
// remove the first one (V/HV)
categories.remove(0);
- initBeanFilterableComboBox(ui.getCategoryComboBox(),
+ initBeanFilterableComboBox(this.ui.getCategoryComboBox(),
Lists.<SampleCategoryModelEntry>newArrayList(categories),
null);
Caracteristic caracteristic =
- persistenceService.getSortedUnsortedCaracteristic();
+ getPersistenceService().getSortedUnsortedCaracteristic();
- initBeanFilterableComboBox(ui.getSampleCategoryComboBox(),
+ initBeanFilterableComboBox(this.ui.getSampleCategoryComboBox(),
Lists.newArrayList(caracteristic.getQualitativeValue()),
null);
@@ -252,7 +247,7 @@
// look for best value for V/HV category : if sorted is available then use it
List<CaracteristicQualitativeValue> qualitativeValues =
- ui.getSampleCategoryComboBox().getData();
+ CreateBenthosBatchUIHandler.this.ui.getSampleCategoryComboBox().getData();
CaracteristicQualitativeValue newCategory = null;
@@ -281,7 +276,7 @@
// try to find the first category from protocol
// TuttiProtocol protocol = getDataContext().getProtocol();
- SpeciesProtocol speciesProtocol = persistenceService.getBenthosProtocol(newValue);
+ SpeciesProtocol speciesProtocol = getPersistenceService().getBenthosProtocol(newValue);
if (speciesProtocol != null) {
// species defined in protocol
@@ -345,7 +340,7 @@
initTable(getTable());
- listenValidatorValid(ui.getValidator(), model);
+ listenValidatorValid(this.ui.getValidator(), model);
}
@Override
@@ -366,7 +361,7 @@
// when canceling always invalid model
getModel().setValid(false);
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setBenthosSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -430,7 +425,7 @@
log.debug("Save and Continue UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
BenthosBatchUI benthosTabContent = parent.getBenthosTabContent();
benthosTabContent.getHandler().addBatch(getModel());
@@ -444,7 +439,7 @@
log.debug("Save and Close UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getBenthosTabContent().getHandler().addBatch(getModel());
// close dialog
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyCellComponent.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyCellComponent.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyCellComponent.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,13 +26,13 @@
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
+import fr.ifremer.shared.application.swing.computable.ComputableData;
+import fr.ifremer.shared.application.swing.table.ColumnIdentifier;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchRowModel;
import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchTableModel;
import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchUI;
-import fr.ifremer.shared.application.swing.computable.ComputableData;
import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil;
-import fr.ifremer.shared.application.swing.table.ColumnIdentifier;
import jaxx.runtime.SwingUtil;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -213,7 +213,7 @@
}
EditCatchesUI parent =
- SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ ui.getHandler().getParentContainer(EditCatchesUI.class);
parent.getHandler().editBenthosFrequencies(this);
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -54,21 +54,11 @@
<script><![CDATA[
- public BenthosFrequencyUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- BenthosFrequencyUIHandler handler = new BenthosFrequencyUIHandler(parentUI.getHandler().getContext(), this);
- setContextValue(handler);
- handler.beforeInitUI();
- }
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
+public BenthosFrequencyUI(TuttiUI parentUI) {
+ TuttiUIUtil.setParentUI(this, parentUI);
+}
]]></script>
- <BenthosFrequencyUIHandler id='handler'
- initializer='getContextValue(BenthosFrequencyUIHandler.class)'/>
-
<BenthosFrequencyUIModel id='model'
initializer='getContextValue(BenthosFrequencyUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/frequency/BenthosFrequencyUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,22 +28,20 @@
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import fr.ifremer.shared.application.ApplicationDataUtil;
+import fr.ifremer.shared.application.swing.util.Cancelable;
+import fr.ifremer.shared.application.type.WeightUnit;
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel;
import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol;
import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
import fr.ifremer.tutti.persistence.entities.referential.Species;
-import fr.ifremer.shared.application.type.WeightUnit;
-import fr.ifremer.tutti.ui.swing.TuttiUIContext;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchRowModel;
-import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.collections.CollectionUtils;
@@ -89,16 +87,12 @@
*
* @since 2.5
*/
- protected final WeightUnit weightUnit;
+ protected WeightUnit weightUnit;
- public BenthosFrequencyUIHandler(TuttiUIContext context,
- BenthosFrequencyUI ui) {
- super(context, ui,
- BenthosFrequencyRowModel.PROPERTY_LENGTH_STEP,
+ public BenthosFrequencyUIHandler() {
+ super(BenthosFrequencyRowModel.PROPERTY_LENGTH_STEP,
BenthosFrequencyRowModel.PROPERTY_NUMBER,
BenthosFrequencyRowModel.PROPERTY_WEIGHT);
-
- this.weightUnit = context.getConfig().getBenthosWeightUnit();
}
//------------------------------------------------------------------------//
@@ -197,19 +191,22 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(BenthosFrequencyUI ui) {
+ super.beforeInit(ui);
+
+ this.weightUnit = getConfig().getBenthosWeightUnit();
SampleCategoryModel sampleCategoryModel =
getDataContext().getSampleCategoryModel();
BenthosFrequencyUIModel model =
new BenthosFrequencyUIModel(weightUnit, sampleCategoryModel);
- ui.setContextValue(model);
+ this.ui.setContextValue(model);
}
@Override
- public void afterInitUI() {
+ public void afterInit(BenthosFrequencyUI ui) {
initUI(ui);
@@ -254,7 +251,7 @@
public void keyReleased(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ENTER) {
e.consume();
- Float step = (Float) ui.getRafaleStepField().getModel();
+ Float step = (Float) BenthosFrequencyUIHandler.this.ui.getRafaleStepField().getModel();
applyRafaleStep(step);
@@ -283,7 +280,7 @@
getModel().setStep(precision);
recomputeRowValidState(rowModel);
}
- ui.getValidator().doValidate();
+ BenthosFrequencyUIHandler.this.ui.getValidator().doValidate();
}
});
@@ -324,7 +321,6 @@
model);
-
table.setModel(tableModel);
table.setColumnModel(columnModel);
@@ -356,7 +352,7 @@
getModel().setSimpleCount(null);
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setBenthosSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -382,7 +378,7 @@
public void addLengthStepCaracteristic() {
// compute list of possible caracteristics (all but the one in the select box)
- List<Caracteristic> allNumericCaracteristic = persistenceService.getAllNumericCaracteristic();
+ List<Caracteristic> allNumericCaracteristic = getPersistenceService().getAllNumericCaracteristic();
List<Caracteristic> toSelect = Lists.newArrayList(allNumericCaracteristic);
List<Caracteristic> knownCaracteristics = getUI().getLengthStepCaracteristicComboBox().getData();
toSelect.removeAll(knownCaracteristics);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -29,6 +29,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
org.jdesktop.swingx.JXTable
@@ -45,18 +46,10 @@
<script><![CDATA[
public SplitBenthosBatchUI(EditCatchesUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- SplitBenthosBatchUIHandler handler = new SplitBenthosBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <SplitBenthosBatchUIHandler id='handler'
- initializer='getContextValue(SplitBenthosBatchUIHandler.class)'/>
-
<SplitBenthosBatchUIModel id='model'
initializer='getContextValue(SplitBenthosBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/benthos/split/SplitBenthosBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,6 +28,7 @@
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
+import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.persistence.entities.data.SampleCategory;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry;
@@ -36,11 +37,9 @@
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.benthos.BenthosBatchRowModel;
-import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.logging.Log;
@@ -72,10 +71,8 @@
private static final Log log =
LogFactory.getLog(SplitBenthosBatchUIHandler.class);
- public SplitBenthosBatchUIHandler(EditCatchesUI parentUi,
- SplitBenthosBatchUI ui) {
- super(parentUi.getHandler().getContext(), ui,
- SplitBenthosBatchRowModel.PROPERTY_SELECTED,
+ public SplitBenthosBatchUIHandler() {
+ super(SplitBenthosBatchRowModel.PROPERTY_SELECTED,
SplitBenthosBatchRowModel.PROPERTY_CATEGORY_VALUE,
SplitBenthosBatchRowModel.PROPERTY_WEIGHT);
}
@@ -152,8 +149,9 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(SplitBenthosBatchUI ui) {
+ super.beforeInit(ui);
SampleCategoryModel sampleCategoryModel =
getDataContext().getSampleCategoryModel();
@@ -164,7 +162,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(SplitBenthosBatchUI ui) {
initUI(ui);
@@ -183,7 +181,7 @@
// fill comboBox with new list
List<SampleCategoryModelEntry> data = (List<SampleCategoryModelEntry>) evt.getNewValue();
- ui.getCategoryComboBox().setModel(new DefaultComboBoxModel(data.toArray()));
+ SplitBenthosBatchUIHandler.this.ui.getCategoryComboBox().setModel(new DefaultComboBoxModel(data.toArray()));
}
});
@@ -240,7 +238,7 @@
getModel().setValid(false);
getModel().setSelectedCategory(null);
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setBenthosSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -371,7 +369,7 @@
log.debug("Save UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
SplitBenthosBatchUIModel model = getModel();
if (model.isValid()) {
if (model.isSplitMode()) {
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -29,6 +29,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.TuttiUIContext
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.NumberEditor
@@ -45,18 +46,10 @@
<script><![CDATA[
public IndividualObservationBatchUI(TuttiUI<?,?> parentUI) {
- JAXXUtil.initContext(this, parentUI);
- IndividualObservationBatchUIHandler handler = new IndividualObservationBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <IndividualObservationBatchUIHandler id='handler'
- initializer='getContextValue(IndividualObservationBatchUIHandler.class)'/>
-
<IndividualObservationBatchUIModel id='model'
initializer='getContextValue(IndividualObservationBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/IndividualObservationBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -36,7 +36,7 @@
import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.service.DecoratorService;
-import fr.ifremer.tutti.service.ValidationService;
+import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTableUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
@@ -57,7 +57,6 @@
import fr.ifremer.tutti.ui.swing.util.comment.CommentCellEditor;
import fr.ifremer.tutti.ui.swing.util.comment.CommentCellRenderer;
import fr.ifremer.tutti.ui.swing.util.table.CaracteristicColumnIdentifier;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.logging.Log;
@@ -88,22 +87,19 @@
private static final Log log =
LogFactory.getLog(IndividualObservationBatchUIHandler.class);
- protected ValidationService validationService = getContext().getValidationService();
-
/**
* Weight unit.
*
* @since 2.5
*/
- protected final WeightUnit weightUnit;
+ protected WeightUnit weightUnit;
- protected final WeightUnit speciesWeightUnit;
+ protected WeightUnit speciesWeightUnit;
- public final Integer PMFM_ID_SORTED_UNSORTED;
+ public Integer PMFM_ID_SORTED_UNSORTED;
- public IndividualObservationBatchUIHandler(TuttiUI<?, ?> parentUi, IndividualObservationBatchUI ui) {
- super(parentUi, ui,
- IndividualObservationBatchRowModel.PROPERTY_SPECIES,
+ public IndividualObservationBatchUIHandler() {
+ super(IndividualObservationBatchRowModel.PROPERTY_SPECIES,
IndividualObservationBatchRowModel.PROPERTY_WEIGHT,
IndividualObservationBatchRowModel.PROPERTY_SIZE,
IndividualObservationBatchRowModel.PROPERTY_LENGTH_STEP_CARACTERISTIC,
@@ -111,12 +107,6 @@
IndividualObservationBatchRowModel.PROPERTY_DEFAULT_CARACTERISTICS,
IndividualObservationBatchRowModel.PROPERTY_COMMENT,
IndividualObservationBatchRowModel.PROPERTY_ATTACHMENT);
-
- weightUnit = getConfig().getIndividualObservationWeightUnit();
- speciesWeightUnit = getConfig().getSpeciesWeightUnit();
-
- PMFM_ID_SORTED_UNSORTED =
- persistenceService.getSortedUnsortedCaracteristic().getIdAsInt();
}
//------------------------------------------------------------------------//
@@ -153,6 +143,7 @@
rows = Lists.newArrayList();
if (!TuttiEntities.isNew(bean)) {
+ PersistenceService persistenceService = getPersistenceService();
List<IndividualObservationBatch> batches =
persistenceService.getAllIndividualObservationBatch(bean.getId());
@@ -203,7 +194,7 @@
@Override
protected boolean isRowValid(IndividualObservationBatchRowModel row) {
IndividualObservationBatch batch = row.toBean();
- NuitonValidatorResult validator = validationService.validateIndividualObservationBatch(batch);
+ NuitonValidatorResult validator = getValidationService().validateIndividualObservationBatch(batch);
boolean result = !validator.hasErrorMessagess();
return result;
}
@@ -245,12 +236,19 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(IndividualObservationBatchUI ui) {
+ super.beforeInit(ui);
if (log.isDebugEnabled()) {
log.debug("beforeInit: " + ui);
}
+ weightUnit = getConfig().getIndividualObservationWeightUnit();
+ speciesWeightUnit = getConfig().getSpeciesWeightUnit();
+
+ PMFM_ID_SORTED_UNSORTED =
+ getPersistenceService().getSortedUnsortedCaracteristic().getIdAsInt();
+
// get the default caracteristics
List<Caracteristic> defaultCaracteristic =
getDataContext().getDefaultIndividualObservationCaracteristics();
@@ -265,7 +263,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(IndividualObservationBatchUI ui) {
if (log.isDebugEnabled()) {
log.debug("afterInit: " + ui);
@@ -433,19 +431,19 @@
@Override
public CaracteristicMapEditorUI getCaracteristicMapEditor() {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
return parent.getIndividualObservationCaracteristicMapEditor();
}
@Override
public void showCaracteristicMapEditor(Species species) {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setIndividualObservationSelectedCard(EditCatchesUIHandler.EDIT_CARACTERISTICS_CARD, species);
}
@Override
public void hideCaracteristicMapEditor() {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setIndividualObservationSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -455,7 +453,7 @@
public void createBatch() {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
CreateIndividualObservationBatchUI createBatchEditor = parent.getIndividualObservationTabCreateBatch();
createBatchEditor.getHandler().openUI(getModel());
@@ -509,7 +507,7 @@
return;
}
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
SpeciesBatchUIModel speciesBatchUIModel = parent.getSpeciesTabContent().getModel();
@@ -751,10 +749,10 @@
if (TuttiEntities.isNew(entityToSave)) {
- entityToSave = persistenceService.createIndividualObservationBatch(entityToSave);
+ entityToSave = getPersistenceService().createIndividualObservationBatch(entityToSave);
row.setId(entityToSave.getId());
} else {
- persistenceService.saveIndividualObservationBatch(entityToSave);
+ getPersistenceService().saveIndividualObservationBatch(entityToSave);
}
getModel().fireBatchUpdated(row);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -31,6 +31,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
jaxx.runtime.swing.editor.NumberEditor
@@ -41,18 +42,10 @@
<script><![CDATA[
public CreateIndividualObservationBatchUI(EditCatchesUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- CreateIndividualObservationBatchUIHandler handler = new CreateIndividualObservationBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <CreateIndividualObservationBatchUIHandler id='handler'
- initializer='getContextValue(CreateIndividualObservationBatchUIHandler.class)'/>
-
<CreateIndividualObservationBatchUIModel id='model'
initializer='getContextValue(CreateIndividualObservationBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/individualobservation/create/CreateIndividualObservationBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,6 +26,7 @@
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import fr.ifremer.shared.application.ApplicationDataUtil;
+import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.IndividualObservationBatch;
import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol;
@@ -40,7 +41,6 @@
import fr.ifremer.tutti.ui.swing.content.operation.catches.individualobservation.IndividualObservationBatchUIModel;
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUIModel;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel;
@@ -78,18 +78,15 @@
private static final Log log =
LogFactory.getLog(CreateIndividualObservationBatchUIHandler.class);
- public CreateIndividualObservationBatchUIHandler(TuttiUI<?,?> parentUi,
- CreateIndividualObservationBatchUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- }
-
//------------------------------------------------------------------------//
//-- AbstractTuttiUIHandler methods --//
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(CreateIndividualObservationBatchUI ui) {
+ super.beforeInit(ui);
+
// get the default caracteristics
List<Caracteristic> defaultCaracteristic =
getDataContext().getDefaultIndividualObservationCaracteristics();
@@ -102,7 +99,7 @@
@Override
- public void afterInitUI() {
+ public void afterInit(CreateIndividualObservationBatchUI ui) {
initUI(ui);
@@ -343,7 +340,7 @@
// when canceling always invalid model
getModel().setValid(false);
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setIndividualObservationSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -386,8 +383,7 @@
List<Species> speciesList;
- EditCatchesUI parent =
- SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
SpeciesBatchUIModel speciesBatchUIModel = parent.getSpeciesTabContent().getModel();
boolean withSpeciesBatch =
@@ -463,7 +459,7 @@
log.debug("Save And Continue UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
IndividualObservationBatchUI individualObservationTabContent = parent.getIndividualObservationTabContent();
individualObservationTabContent.getHandler().addBatch(getModel());
@@ -480,7 +476,7 @@
log.debug("Save And Close UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getIndividualObservationTabContent().getHandler().addBatch(getModel());
// close dialog
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -29,6 +29,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.TuttiUIContext
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
fr.ifremer.shared.application.swing.computable.ComputableDataEditor
org.jdesktop.swingx.JXTable
@@ -44,18 +45,10 @@
<script><![CDATA[
public MarineLitterBatchUI(TuttiUI<?,?> parentUI) {
- JAXXUtil.initContext(this, parentUI);
- MarineLitterBatchUIHandler handler = new MarineLitterBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <MarineLitterBatchUIHandler id='handler'
- initializer='getContextValue(MarineLitterBatchUIHandler.class)'/>
-
<MarineLitterBatchUIModel id='model'
initializer='getContextValue(MarineLitterBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/MarineLitterBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -27,14 +27,14 @@
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
import fr.ifremer.shared.application.listener.PropagatePropertyChangeListener;
+import fr.ifremer.shared.application.swing.table.ColumnIdentifier;
+import fr.ifremer.shared.application.type.WeightUnit;
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.Attachment;
import fr.ifremer.tutti.persistence.entities.data.BatchContainer;
import fr.ifremer.tutti.persistence.entities.data.FishingOperation;
import fr.ifremer.tutti.persistence.entities.data.MarineLitterBatch;
import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue;
-import fr.ifremer.tutti.service.ValidationService;
-import fr.ifremer.shared.application.type.WeightUnit;
import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTableUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
@@ -48,8 +48,6 @@
import fr.ifremer.tutti.ui.swing.util.attachment.AttachmentCellRenderer;
import fr.ifremer.tutti.ui.swing.util.comment.CommentCellEditor;
import fr.ifremer.tutti.ui.swing.util.comment.CommentCellRenderer;
-import fr.ifremer.shared.application.swing.table.ColumnIdentifier;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -69,24 +67,20 @@
private static final Log log =
LogFactory.getLog(MarineLitterBatchUIHandler.class);
- protected ValidationService validationService = getContext().getValidationService();
-
/**
* Weight unit.
*
* @since 2.5
*/
- protected final WeightUnit weightUnit;
+ protected WeightUnit weightUnit;
- public MarineLitterBatchUIHandler(TuttiUI<?, ?> parentUi, MarineLitterBatchUI ui) {
- super(parentUi, ui,
- MarineLitterBatchRowModel.PROPERTY_MARINE_LITTER_CATEGORY,
- MarineLitterBatchRowModel.PROPERTY_MARINE_LITTER_SIZE_CATEGORY,
- MarineLitterBatchRowModel.PROPERTY_WEIGHT,
- MarineLitterBatchRowModel.PROPERTY_NUMBER,
- MarineLitterBatchRowModel.PROPERTY_COMMENT);
-
- weightUnit = getConfig().getMarineLitterWeightUnit();
+ public MarineLitterBatchUIHandler() {
+ super(
+ MarineLitterBatchRowModel.PROPERTY_MARINE_LITTER_CATEGORY,
+ MarineLitterBatchRowModel.PROPERTY_MARINE_LITTER_SIZE_CATEGORY,
+ MarineLitterBatchRowModel.PROPERTY_WEIGHT,
+ MarineLitterBatchRowModel.PROPERTY_NUMBER,
+ MarineLitterBatchRowModel.PROPERTY_COMMENT);
}
//------------------------------------------------------------------------//
@@ -126,7 +120,7 @@
// get all marine litter root
BatchContainer<MarineLitterBatch> batchContainer =
- persistenceService.getRootMarineLitterBatch(bean.getId());
+ getPersistenceService().getRootMarineLitterBatch(bean.getId());
for (MarineLitterBatch aBatch : batchContainer.getChildren()) {
MarineLitterBatchRowModel entry = loadBatch(aBatch);
@@ -154,7 +148,7 @@
@Override
protected boolean isRowValid(MarineLitterBatchRowModel row) {
MarineLitterBatch batch = row.toBean();
- NuitonValidatorResult validator = validationService.validateMarineLitterBatch(batch);
+ NuitonValidatorResult validator = getValidationService().validateMarineLitterBatch(batch);
boolean result = !validator.hasErrorMessagess();
return result;
}
@@ -206,12 +200,15 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(MarineLitterBatchUI ui) {
+ super.beforeInit(ui);
if (log.isDebugEnabled()) {
log.debug("beforeInit: " + ui);
}
+ weightUnit = getConfig().getMarineLitterWeightUnit();
+
EditCatchesUIModel catchesUIModel =
ui.getContextValue(EditCatchesUIModel.class);
@@ -227,7 +224,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(MarineLitterBatchUI ui) {
if (log.isDebugEnabled()) {
log.debug("afterInit: " + ui);
@@ -334,7 +331,7 @@
public void createBatch() {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
CreateMarineLitterBatchUI createBatchEditor = parent.getMarineLitterTabCreateBatch();
createBatchEditor.getHandler().openUI(getModel());
@@ -374,8 +371,8 @@
new MarineLitterBatchRowModel(weightUnit, aBatch);
List<Attachment> attachments =
- persistenceService.getAllAttachments(newRow.getObjectType(),
- newRow.getObjectId());
+ getPersistenceService().getAllAttachments(newRow.getObjectType(),
+ newRow.getObjectId());
newRow.addAllAttachment(attachments);
return newRow;
@@ -393,10 +390,10 @@
if (TuttiEntities.isNew(entityToSave)) {
- entityToSave = persistenceService.createMarineLitterBatch(entityToSave);
+ entityToSave = getPersistenceService().createMarineLitterBatch(entityToSave);
row.setId(entityToSave.getId());
} else {
- persistenceService.saveMarineLitterBatch(entityToSave);
+ getPersistenceService().saveMarineLitterBatch(entityToSave);
}
getModel().fireBatchUpdated(row);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -30,6 +30,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
jaxx.runtime.swing.editor.NumberEditor
@@ -40,18 +41,10 @@
<script><![CDATA[
public CreateMarineLitterBatchUI(EditCatchesUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- CreateMarineLitterBatchUIHandler handler = new CreateMarineLitterBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <CreateMarineLitterBatchUIHandler id='handler'
- initializer='getContextValue(CreateMarineLitterBatchUIHandler.class)'/>
-
<CreateMarineLitterBatchUIModel id='model'
initializer='getContextValue(CreateMarineLitterBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/marinelitter/create/CreateMarineLitterBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,7 +26,7 @@
import com.google.common.collect.Lists;
import com.google.common.collect.Multimap;
-import fr.ifremer.tutti.persistence.TuttiPersistence;
+import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue;
import fr.ifremer.tutti.persistence.entities.referential.Species;
@@ -35,11 +35,8 @@
import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.marinelitter.MarineLitterBatchUIModel;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.shared.application.swing.util.Cancelable;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -58,38 +55,31 @@
private static final Log log =
LogFactory.getLog(CreateMarineLitterBatchUIHandler.class);
- private final TuttiPersistence persistenceService;
-
- public CreateMarineLitterBatchUIHandler(TuttiUI<?,?> parentUi,
- CreateMarineLitterBatchUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- this.persistenceService = getContext().getPersistenceService();
- }
-
//------------------------------------------------------------------------//
//-- AbstractTuttiUIHandler methods --//
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(CreateMarineLitterBatchUI ui) {
+ super.beforeInit(ui);
CreateMarineLitterBatchUIModel model = new CreateMarineLitterBatchUIModel();
ui.setContextValue(model);
listModelIsModify(model);
}
@Override
- public void afterInitUI() {
+ public void afterInit(CreateMarineLitterBatchUI ui) {
initUI(ui);
Caracteristic marineLitterCategoryCaracteristic =
- persistenceService.getMarineLitterCategoryCaracteristic();
+ getPersistenceService().getMarineLitterCategoryCaracteristic();
initBeanFilterableComboBox(ui.getMarineLitterCategoryComboBox(),
Lists.newArrayList(marineLitterCategoryCaracteristic.getQualitativeValue()),
null);
Caracteristic marineLitterSizeCategoryCaracteristic =
- persistenceService.getMarineLitterSizeCategoryCaracteristic();
+ getPersistenceService().getMarineLitterSizeCategoryCaracteristic();
initBeanFilterableComboBox(ui.getMarineLitterSizeCategoryComboBox(),
Lists.newArrayList(marineLitterSizeCategoryCaracteristic.getQualitativeValue()),
@@ -116,7 +106,7 @@
// when canceling always invalid model
getModel().setValid(false);
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setMarineLitterSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -166,7 +156,7 @@
log.debug("Save And Continue UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
MarineLitterBatchUI marineLitterTabContent = parent.getMarineLitterTabContent();
marineLitterTabContent.getHandler().addBatch(getModel());
@@ -180,7 +170,7 @@
log.debug("Save And Close UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getMarineLitterTabContent().getHandler().addBatch(getModel());
// close dialog
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -25,6 +25,7 @@
<import>
fr.ifremer.tutti.ui.swing.TuttiUIContext
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.FileEditor
org.jdesktop.swingx.JXTitledPanel
@@ -35,16 +36,9 @@
public ImportPupitriPopupUI(TuttiUIContext context) {
super(context.getMainUI());
- setContextValue(context);
- ImportPupitriPopupUIHandler handler = new ImportPupitriPopupUIHandler(context, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setApplicationContext(this, context);
}
-protected void $afterCompleteSetup() {
- getHandler().afterInitUI();
-}
-
public void open() {
handler.open();
}
@@ -54,12 +48,6 @@
and the button to remove existing attachments -->
<Boolean id='editable' javaBean='true'/>
- <!-- bean property -->
- <!--<AttachmentModelAware id='bean' javaBean='null'/>-->
-
- <ImportPupitriPopupUIHandler id='handler'
- initializer='getContextValue(ImportPupitriPopupUIHandler.class)'/>
-
<Table id='mainPanel' fill='both'>
<row>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/ImportPupitriPopupUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -24,8 +24,9 @@
* #L%
*/
-import fr.ifremer.tutti.ui.swing.TuttiUIContext;
+import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil;
import jaxx.runtime.SwingUtil;
+import jaxx.runtime.spi.UIHandler;
import javax.swing.JOptionPane;
@@ -36,22 +37,17 @@
* @author tchemit <chemit(a)codelutin.com>
* @since 0.2
*/
-public class ImportPupitriPopupUIHandler {
+public class ImportPupitriPopupUIHandler implements UIHandler<ImportPupitriPopupUI> {
- protected final ImportPupitriPopupUI ui;
+ protected ImportPupitriPopupUI ui;
- protected final TuttiUIContext context;
-
- public ImportPupitriPopupUIHandler(TuttiUIContext context,
- ImportPupitriPopupUI ui) {
- this.context = context;
+ @Override
+ public void beforeInit(ImportPupitriPopupUI ui) {
this.ui = ui;
}
- protected void beforeInitUI() {
- }
-
- protected void afterInitUI() {
+ @Override
+ public void afterInit(ImportPupitriPopupUI ui) {
ui.getTrunkFile().setDialogOwner(ui);
ui.getCarrouselFile().setDialogOwner(ui);
ui.pack();
@@ -64,7 +60,7 @@
public void open() {
resetFields();
- SwingUtil.center(context.getMainUI(), ui);
+ SwingUtil.center(TuttiUIUtil.getApplicationContext(ui).getMainUI(), ui);
ui.setVisible(true);
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -30,6 +30,7 @@
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
fr.ifremer.tutti.ui.swing.content.operation.catches.TableViewMode
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
fr.ifremer.shared.application.swing.computable.ComputableDataEditor
org.jdesktop.swingx.JXTable
@@ -45,18 +46,10 @@
<script><![CDATA[
public SpeciesBatchUI(EditCatchesUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- SpeciesBatchUIHandler handler = new SpeciesBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <SpeciesBatchUIHandler id='handler'
- initializer='getContextValue(SpeciesBatchUIHandler.class)'/>
-
<SpeciesBatchUIModel id='model'
initializer='getContextValue(SpeciesBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/SpeciesBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,6 +28,8 @@
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import fr.ifremer.shared.application.swing.computable.ComputableDataTableCell;
+import fr.ifremer.shared.application.swing.table.ColumnIdentifier;
+import fr.ifremer.shared.application.type.WeightUnit;
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.Attachment;
import fr.ifremer.tutti.persistence.entities.data.BatchContainer;
@@ -43,8 +45,6 @@
import fr.ifremer.tutti.service.DecoratorService;
import fr.ifremer.tutti.service.TuttiDecorator;
import fr.ifremer.tutti.service.ValidationService;
-import fr.ifremer.shared.application.type.WeightUnit;
-import fr.ifremer.tutti.service.catches.ValidateCruiseOperationsService;
import fr.ifremer.tutti.ui.swing.content.operation.catches.AbstractTuttiBatchTableUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
@@ -68,7 +68,6 @@
import fr.ifremer.tutti.ui.swing.util.comment.CommentCellRenderer;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel;
-import fr.ifremer.shared.application.swing.table.ColumnIdentifier;
import jaxx.runtime.SwingUtil;
import jaxx.runtime.swing.editor.NumberEditor;
import jaxx.runtime.swing.renderer.DecoratorListCellRenderer;
@@ -118,39 +117,31 @@
private static final Log log =
LogFactory.getLog(SpeciesBatchUIHandler.class);
- private final EnumMap<TableViewMode, RowFilter<SpeciesBatchTableModel, Integer>> tableFilters;
+ private EnumMap<TableViewMode, RowFilter<SpeciesBatchTableModel, Integer>> tableFilters;
- protected ValidationService validationService;
-
- protected ValidateCruiseOperationsService validationCruiseService;
-
- protected final EditCatchesUI parentUi;
-
/**
* Sample categories model.
*
* @since 2.4
*/
- protected final SampleCategoryModel sampleCategoryModel;
+ protected SampleCategoryModel sampleCategoryModel;
/**
* Weight unit.
*
* @since 2.5
*/
- protected final WeightUnit weightUnit;
+ protected WeightUnit weightUnit;
/**
* id of the unsorted qualitative value to remove of V/HV universe.
*
* @since 2.6
*/
- protected final Integer qualitative_unsorted_id;
+ protected Integer qualitative_unsorted_id;
- public SpeciesBatchUIHandler(EditCatchesUI parentUi,
- SpeciesBatchUI ui) {
- super(parentUi, ui,
- SpeciesBatchRowModel.PROPERTY_SPECIES,
+ public SpeciesBatchUIHandler() {
+ super(SpeciesBatchRowModel.PROPERTY_SPECIES,
SpeciesBatchRowModel.PROPERTY_WEIGHT,
SpeciesBatchRowModel.PROPERTY_NUMBER,
SpeciesBatchRowModel.PROPERTY_COMMENT,
@@ -158,59 +149,8 @@
SpeciesBatchRowModel.PROPERTY_SAMPLE_CATEGORY_WEIGHT,
SpeciesBatchRowModel.PROPERTY_FREQUENCY,
SpeciesBatchRowModel.PROPERTY_SPECIES_TO_CONFIRM);
-
- qualitative_unsorted_id =
- getContext().getPersistenceService().getEnumerationFile().QUALITATIVE_UNSORTED_ID;
-
- weightUnit = getConfig().getSpeciesWeightUnit();
-
- sampleCategoryModel = getDataContext().getSampleCategoryModel();
-
- this.parentUi = parentUi;
- tableFilters = new EnumMap<TableViewMode, RowFilter<SpeciesBatchTableModel, Integer>>(TableViewMode.class);
-
- tableFilters.put(TableViewMode.ALL, new RowFilter<SpeciesBatchTableModel, Integer>() {
- @Override
- public boolean include(Entry<? extends SpeciesBatchTableModel, ? extends Integer> entry) {
- return true;
- }
- });
-
- tableFilters.put(TableViewMode.ROOT, new RowFilter<SpeciesBatchTableModel, Integer>() {
- @Override
- public boolean include(Entry<? extends SpeciesBatchTableModel, ? extends Integer> entry) {
- boolean result = false;
- Integer rowIndex = entry.getIdentifier();
- if (rowIndex != null) {
- SpeciesBatchTableModel model = entry.getModel();
- SpeciesBatchRowModel row = model.getEntry(rowIndex);
- result = row != null && row.isBatchRoot();
- }
- return result;
- }
- });
-
- tableFilters.put(TableViewMode.LEAF, new RowFilter<SpeciesBatchTableModel, Integer>() {
- @Override
- public boolean include(Entry<? extends SpeciesBatchTableModel, ? extends Integer> entry) {
- boolean result = false;
- Integer rowIndex = entry.getIdentifier();
- if (rowIndex != null) {
- SpeciesBatchTableModel model = entry.getModel();
- SpeciesBatchRowModel row = model.getEntry(rowIndex);
- result = row != null && row.isBatchLeaf();
- }
- return result;
- }
- });
- validationCruiseService = getContext().getValidateCruiseOperationsService();
- validationService = getContext().getValidationService();
}
- public EditCatchesUI getParentUi() {
- return parentUi;
- }
-
//------------------------------------------------------------------------//
//-- AbstractTuttiBatchTableUIHandler methods --//
//------------------------------------------------------------------------//
@@ -248,7 +188,7 @@
// get all batch species root (says the one with only a species sample category)
BatchContainer<SpeciesBatch> rootSpeciesBatch =
- persistenceService.getRootSpeciesBatch(
+ getPersistenceService().getRootSpeciesBatch(
bean.getId(), sampleCategoryModel);
List<SpeciesBatch> catches = rootSpeciesBatch.getChildren();
@@ -297,7 +237,8 @@
@Override
protected boolean isRowValid(SpeciesBatchRowModel row) {
SpeciesBatch batch = convertRowToEntity(row, true);
- NuitonValidatorResult validator = validationService.validateSpeciesBatch(batch);
+ NuitonValidatorResult validator =
+ getValidationService().validateSpeciesBatch(batch);
boolean result = !validator.hasErrorMessagess();
if (result
@@ -309,7 +250,7 @@
SpeciesFrequencyRowModel.toEntity(
row.getFrequency(),
batch);
- result = validationCruiseService.isSpeciesBatchValid(
+ result = getValidateCruiseOperationsService().isSpeciesBatchValid(
batch,
frequencies);
}
@@ -678,12 +619,57 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(SpeciesBatchUI ui) {
+ super.beforeInit(ui);
if (log.isDebugEnabled()) {
log.debug("beforeInit: " + ui);
}
+ qualitative_unsorted_id =
+ getContext().getPersistenceService().getEnumerationFile().QUALITATIVE_UNSORTED_ID;
+
+ weightUnit = getConfig().getSpeciesWeightUnit();
+
+ sampleCategoryModel = getDataContext().getSampleCategoryModel();
+
+ tableFilters = new EnumMap<TableViewMode, RowFilter<SpeciesBatchTableModel, Integer>>(TableViewMode.class);
+
+ tableFilters.put(TableViewMode.ALL, new RowFilter<SpeciesBatchTableModel, Integer>() {
+ @Override
+ public boolean include(Entry<? extends SpeciesBatchTableModel, ? extends Integer> entry) {
+ return true;
+ }
+ });
+
+ tableFilters.put(TableViewMode.ROOT, new RowFilter<SpeciesBatchTableModel, Integer>() {
+ @Override
+ public boolean include(Entry<? extends SpeciesBatchTableModel, ? extends Integer> entry) {
+ boolean result = false;
+ Integer rowIndex = entry.getIdentifier();
+ if (rowIndex != null) {
+ SpeciesBatchTableModel model = entry.getModel();
+ SpeciesBatchRowModel row = model.getEntry(rowIndex);
+ result = row != null && row.isBatchRoot();
+ }
+ return result;
+ }
+ });
+
+ tableFilters.put(TableViewMode.LEAF, new RowFilter<SpeciesBatchTableModel, Integer>() {
+ @Override
+ public boolean include(Entry<? extends SpeciesBatchTableModel, ? extends Integer> entry) {
+ boolean result = false;
+ Integer rowIndex = entry.getIdentifier();
+ if (rowIndex != null) {
+ SpeciesBatchTableModel model = entry.getModel();
+ SpeciesBatchRowModel row = model.getEntry(rowIndex);
+ result = row != null && row.isBatchLeaf();
+ }
+ return result;
+ }
+ });
+
EditCatchesUIModel catchesUIModel =
ui.getContextValue(EditCatchesUIModel.class);
@@ -693,7 +679,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(SpeciesBatchUI ui) {
if (log.isDebugEnabled()) {
log.debug("afterInit: " + ui);
@@ -909,7 +895,7 @@
public void createBatch() {
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
CreateSpeciesBatchUI createBatchEditor = parent.getSpeciesTabCreateBatch();
createBatchEditor.getHandler().openUI(getModel());
@@ -1010,7 +996,7 @@
log.debug("Open split batch ui for row [" + rowIndex + ']');
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
SplitSpeciesBatchUI splitBatchEditor = parent.getSpeciesTabSplitBatch();
parent.getHandler().splitSpeciesBatch(parentBatch, splitBatchEditor);
@@ -1049,8 +1035,7 @@
log.debug("Open addChangeCategory batch ui for row [" + rowIndex + "] and category " + sampleCategoryId);
}
- EditCatchesUI parent =
- SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
SplitSpeciesBatchUI splitBatchEditor =
parent.getSpeciesTabAddSampleCategoryBatch();
@@ -1337,7 +1322,7 @@
String id = aBatch.getId();
List<SpeciesBatchFrequency> frequencies =
- persistenceService.getAllSpeciesBatchFrequency(id);
+ getPersistenceService().getAllSpeciesBatchFrequency(id);
SpeciesBatchRowModel newRow =
new SpeciesBatchRowModel(weightUnit,
@@ -1346,8 +1331,8 @@
frequencies);
List<Attachment> attachments =
- persistenceService.getAllAttachments(newRow.getObjectType(),
- newRow.getObjectId());
+ getPersistenceService().getAllAttachments(newRow.getObjectType(),
+ newRow.getObjectId());
newRow.addAllAttachment(attachments);
@@ -1488,14 +1473,14 @@
log.debug("Persist new species batch with parentId: " +
parentBatchId);
}
- catchBean = persistenceService.createSpeciesBatch(catchBean,
- parentBatchId);
+ catchBean = getPersistenceService().createSpeciesBatch(catchBean,
+ parentBatchId);
row.setId(catchBean.getId());
} else {
if (log.isDebugEnabled()) {
log.debug("Persist existing species batch: " + catchBean.getId() + " (parent : " + catchBean.getParentBatch() + ")");
}
- persistenceService.saveSpeciesBatch(catchBean);
+ getPersistenceService().saveSpeciesBatch(catchBean);
}
List<SpeciesFrequencyRowModel> frequencyRows = row.getFrequency();
@@ -1508,7 +1493,7 @@
if (log.isDebugEnabled()) {
log.debug("Will save " + frequency.size() + " frequencies.");
}
- frequency = persistenceService.saveSpeciesBatchFrequency(
+ frequency = getPersistenceService().saveSpeciesBatchFrequency(
catchBean.getId(), frequency);
// push it back to row model
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -33,6 +33,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
org.jdesktop.swingx.JXTable
@@ -49,18 +50,10 @@
<script><![CDATA[
public CreateSpeciesBatchUI(EditCatchesUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- CreateSpeciesBatchUIHandler handler = new CreateSpeciesBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <CreateSpeciesBatchUIHandler id='handler'
- initializer='getContextValue(CreateSpeciesBatchUIHandler.class)'/>
-
<CreateSpeciesBatchUIModel id='model'
initializer='getContextValue(CreateSpeciesBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/create/CreateSpeciesBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -36,7 +36,6 @@
import fr.ifremer.tutti.persistence.entities.referential.CaracteristicQualitativeValue;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.service.DecoratorService;
-import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchUI;
@@ -48,7 +47,6 @@
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -74,53 +72,31 @@
private static final Log log =
LogFactory.getLog(CreateSpeciesBatchUIHandler.class);
- private final PersistenceService persistenceService;
-
/**
* Qualitative value for the Vrac.
*
* @since 2.5
*/
- protected final CaracteristicQualitativeValue sortedValue;
+ protected CaracteristicQualitativeValue sortedValue;
/**
* Sample categories model.
*
* @since 2.4
*/
- protected final SampleCategoryModel sampleCategoryModel;
+ protected SampleCategoryModel sampleCategoryModel;
/**
* Weight unit.
*
* @since 2.6
*/
- protected final WeightUnit weightUnit;
+ protected WeightUnit weightUnit;
- public CreateSpeciesBatchUIHandler(TuttiUI<?, ?> parentUi,
- CreateSpeciesBatchUI ui) {
- super(parentUi.getHandler().getContext(), ui,
- SplitSpeciesBatchRowModel.PROPERTY_SELECTED,
+ public CreateSpeciesBatchUIHandler() {
+ super(SplitSpeciesBatchRowModel.PROPERTY_SELECTED,
SplitSpeciesBatchRowModel.PROPERTY_CATEGORY_VALUE,
SplitSpeciesBatchRowModel.PROPERTY_WEIGHT);
- this.persistenceService = getContext().getPersistenceService();
- this.weightUnit = getConfig().getSpeciesWeightUnit();
- this.sampleCategoryModel = getDataContext().getSampleCategoryModel();
-
- SampleCategoryModelEntry caracteristic = sampleCategoryModel.getCategoryById(sampleCategoryModel.getFirstCategoryId());
-
- Integer vracId = this.persistenceService.getEnumerationFile().QUALITATIVE_VRAC_ID;
-
- CaracteristicQualitativeValue vracValue = null;
- for (CaracteristicQualitativeValue caracteristicQualitativeValue : caracteristic.getCaracteristic().getQualitativeValue()) {
-
- if (vracId.equals(caracteristicQualitativeValue.getIdAsInt())) {
- vracValue = caracteristicQualitativeValue;
- break;
- }
- }
- Preconditions.checkNotNull(vracValue, "Could not found vrac qualitative value");
- sortedValue = vracValue;
}
//------------------------------------------------------------------------//
@@ -192,20 +168,39 @@
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(CreateSpeciesBatchUI ui) {
+ super.beforeInit(ui);
+ this.weightUnit = getConfig().getSpeciesWeightUnit();
+ this.sampleCategoryModel = getDataContext().getSampleCategoryModel();
+
+ SampleCategoryModelEntry caracteristic = sampleCategoryModel.getCategoryById(sampleCategoryModel.getFirstCategoryId());
+
+ Integer vracId = getPersistenceService().getEnumerationFile().QUALITATIVE_VRAC_ID;
+
+ CaracteristicQualitativeValue vracValue = null;
+ for (CaracteristicQualitativeValue caracteristicQualitativeValue : caracteristic.getCaracteristic().getQualitativeValue()) {
+
+ if (vracId.equals(caracteristicQualitativeValue.getIdAsInt())) {
+ vracValue = caracteristicQualitativeValue;
+ break;
+ }
+ }
+ Preconditions.checkNotNull(vracValue, "Could not found vrac qualitative value");
+ sortedValue = vracValue;
+
CreateSpeciesBatchUIModel model =
new CreateSpeciesBatchUIModel(sampleCategoryModel);
- ui.setContextValue(model);
+ this.ui.setContextValue(model);
listModelIsModify(model);
}
@Override
- public void afterInitUI() {
+ public void afterInit(CreateSpeciesBatchUI ui) {
- initUI(ui);
+ initUI(this.ui);
- initBeanFilterableComboBox(ui.getSpeciesComboBox(),
+ initBeanFilterableComboBox(this.ui.getSpeciesComboBox(),
Lists.<Species>newArrayList(),
null,
DecoratorService.FROM_PROTOCOL);
@@ -218,14 +213,14 @@
// remove the first one (V/HV)
categories.remove(0);
- initBeanFilterableComboBox(ui.getCategoryComboBox(),
+ initBeanFilterableComboBox(this.ui.getCategoryComboBox(),
Lists.<SampleCategoryModelEntry>newArrayList(categories),
null);
Caracteristic caracteristic =
- persistenceService.getSortedUnsortedCaracteristic();
+ getPersistenceService().getSortedUnsortedCaracteristic();
- initBeanFilterableComboBox(ui.getSampleCategoryComboBox(),
+ initBeanFilterableComboBox(this.ui.getSampleCategoryComboBox(),
caracteristic.getQualitativeValue(),
null);
@@ -253,7 +248,7 @@
// look for best value for V/HV category : if sorted is available then use it
List<CaracteristicQualitativeValue> qualitativeValues =
- ui.getSampleCategoryComboBox().getData();
+ CreateSpeciesBatchUIHandler.this.ui.getSampleCategoryComboBox().getData();
CaracteristicQualitativeValue newCategory = null;
@@ -285,7 +280,7 @@
}
// try to find the first category from protocol
// TuttiProtocol protocol = getDataContext().getProtocol();
- SpeciesProtocol speciesProtocol = persistenceService.getSpeciesProtocol(newValue);
+ SpeciesProtocol speciesProtocol = getPersistenceService().getSpeciesProtocol(newValue);
if (speciesProtocol != null) {
if (log.isInfoEnabled()) {
@@ -355,7 +350,7 @@
initTable(getTable());
- listenValidatorValid(ui.getValidator(), model);
+ listenValidatorValid(this.ui.getValidator(), model);
}
@Override
@@ -376,7 +371,7 @@
// when canceling always invalid model
getModel().setValid(false);
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setSpeciesSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -439,7 +434,7 @@
log.debug("Save And Continue UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
SpeciesBatchUI speciesTabContent = parent.getSpeciesTabContent();
speciesTabContent.getHandler().addBatch(getModel());
@@ -453,7 +448,7 @@
log.debug("Save and Close UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getSpeciesTabContent().getHandler().addBatch(getModel());
// close dialog
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyCellComponent.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyCellComponent.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyCellComponent.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -213,7 +213,7 @@
}
EditCatchesUI parent =
- SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ ui.getHandler().getParentContainer(EditCatchesUI.class);
parent.getHandler().editSpeciesFrequencies(this);
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -54,21 +54,11 @@
<script><![CDATA[
- public SpeciesFrequencyUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- SpeciesFrequencyUIHandler handler = new SpeciesFrequencyUIHandler(parentUI.getHandler().getContext(), this);
- setContextValue(handler);
- handler.beforeInitUI();
- }
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
+public SpeciesFrequencyUI(TuttiUI parentUI) {
+ TuttiUIUtil.setParentUI(this, parentUI);
+}
]]></script>
- <SpeciesFrequencyUIHandler id='handler'
- initializer='getContextValue(SpeciesFrequencyUIHandler.class)'/>
-
<SpeciesFrequencyUIModel id='model'
initializer='getContextValue(SpeciesFrequencyUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/frequency/SpeciesFrequencyUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,23 +28,21 @@
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import fr.ifremer.shared.application.ApplicationDataUtil;
+import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.shared.application.type.WeightUnit;
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel;
import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol;
import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
import fr.ifremer.tutti.persistence.entities.referential.Species;
-import fr.ifremer.tutti.ui.swing.TuttiUIContext;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel;
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.frequency.SpeciesFrequencyCellComponent.FrequencyCellEditor;
-import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.collections.CollectionUtils;
@@ -79,8 +77,6 @@
private FrequencyCellEditor frequencyEditor;
-// private TuttiProtocol protocol;
-
private Map<Integer, SpeciesProtocol> speciesProtocol;
private Map<String, Caracteristic> lengthStepCaracteristics;
@@ -92,15 +88,13 @@
*
* @since 2.5
*/
- protected final WeightUnit weightUnit;
+ protected WeightUnit weightUnit;
- public SpeciesFrequencyUIHandler(TuttiUIContext context,
- SpeciesFrequencyUI ui) {
- super(context, ui,
- SpeciesFrequencyRowModel.PROPERTY_LENGTH_STEP,
+ public SpeciesFrequencyUIHandler() {
+ super(SpeciesFrequencyRowModel.PROPERTY_LENGTH_STEP,
SpeciesFrequencyRowModel.PROPERTY_NUMBER,
SpeciesFrequencyRowModel.PROPERTY_WEIGHT);
- this.weightUnit = context.getConfig().getSpeciesWeightUnit();
+
}
//------------------------------------------------------------------------//
@@ -198,20 +192,23 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(SpeciesFrequencyUI ui) {
+ super.beforeInit(ui);
+ this.weightUnit = getConfig().getSpeciesWeightUnit();
+
SampleCategoryModel sampleCategoryModel =
getDataContext().getSampleCategoryModel();
SpeciesFrequencyUIModel model = new SpeciesFrequencyUIModel(
weightUnit, sampleCategoryModel);
- ui.setContextValue(model);
+ this.ui.setContextValue(model);
}
@Override
- public void afterInitUI() {
+ public void afterInit(SpeciesFrequencyUI ui) {
- initUI(ui);
+ initUI(this.ui);
List<Caracteristic> lengthStepCaracterics =
Lists.newArrayList(getDataContext().getLengthStepCaracteristics());
@@ -223,14 +220,14 @@
if (getContext().isProtocolFilled()) {
// FIXME 20130128 kmorin: the species have no technical id
- speciesProtocol = persistenceService.toSpeciesProtocolMap();
+ speciesProtocol = getPersistenceService().toSpeciesProtocolMap();
} else {
speciesProtocol = Maps.newHashMap();
}
Caracteristic modelCaracteristic = model.getLengthStepCaracteristic();
- initBeanFilterableComboBox(ui.getLengthStepCaracteristicComboBox(),
+ initBeanFilterableComboBox(this.ui.getLengthStepCaracteristicComboBox(),
lengthStepCaracterics,
modelCaracteristic);
@@ -247,13 +244,13 @@
model.setMinStep(null);
model.setMaxStep(null);
- ui.getRafaleStepField().getTextField().addKeyListener(new KeyAdapter() {
+ this.ui.getRafaleStepField().getTextField().addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_ENTER) {
e.consume();
- Float step = (Float) ui.getRafaleStepField().getModel();
+ Float step = (Float) SpeciesFrequencyUIHandler.this.ui.getRafaleStepField().getModel();
applyRafaleStep(step);
@@ -282,7 +279,7 @@
getModel().setStep(precision);
recomputeRowValidState(rowModel);
}
- ui.getValidator().doValidate();
+ SpeciesFrequencyUIHandler.this.ui.getValidator().doValidate();
}
});
@@ -329,7 +326,7 @@
installTableKeyListener(columnModel, table);
- listenValidatorValid(ui.getValidator(), model);
+ listenValidatorValid(this.ui.getValidator(), model);
}
@Override
@@ -353,7 +350,7 @@
getModel().setSimpleCount(null);
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setSpeciesSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -379,7 +376,7 @@
public void addLengthStepCaracteristic() {
// compute list of possible caracteristics (all but the one in the select box)
- List<Caracteristic> allNumericCaracteristic = persistenceService.getAllNumericCaracteristic();
+ List<Caracteristic> allNumericCaracteristic = getPersistenceService().getAllNumericCaracteristic();
List<Caracteristic> toSelect = Lists.newArrayList(allNumericCaracteristic);
List<Caracteristic> knownCaracteristics = getUI().getLengthStepCaracteristicComboBox().getData();
toSelect.removeAll(knownCaracteristics);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -29,6 +29,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
org.jdesktop.swingx.JXTable
@@ -45,18 +46,10 @@
<script><![CDATA[
public SplitSpeciesBatchUI(EditCatchesUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- SplitSpeciesBatchUIHandler handler = new SplitSpeciesBatchUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <SplitSpeciesBatchUIHandler id='handler'
- initializer='getContextValue(SplitSpeciesBatchUIHandler.class)'/>
-
<SplitSpeciesBatchUIModel id='model'
initializer='getContextValue(SplitSpeciesBatchUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/catches/species/split/SplitSpeciesBatchUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,6 +28,7 @@
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
+import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.persistence.entities.data.SampleCategory;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry;
@@ -36,11 +37,9 @@
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUI;
import fr.ifremer.tutti.ui.swing.content.operation.catches.EditCatchesUIHandler;
import fr.ifremer.tutti.ui.swing.content.operation.catches.species.SpeciesBatchRowModel;
-import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
-import jaxx.runtime.SwingUtil;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.logging.Log;
@@ -72,10 +71,8 @@
private static final Log log =
LogFactory.getLog(SplitSpeciesBatchUIHandler.class);
- public SplitSpeciesBatchUIHandler(EditCatchesUI parentUi,
- SplitSpeciesBatchUI ui) {
- super(parentUi.getHandler().getContext(), ui,
- SplitSpeciesBatchRowModel.PROPERTY_SELECTED,
+ public SplitSpeciesBatchUIHandler() {
+ super(SplitSpeciesBatchRowModel.PROPERTY_SELECTED,
SplitSpeciesBatchRowModel.PROPERTY_CATEGORY_VALUE,
SplitSpeciesBatchRowModel.PROPERTY_WEIGHT);
}
@@ -154,8 +151,8 @@
}
@Override
- public void beforeInitUI() {
-
+ public void beforeInit(SplitSpeciesBatchUI ui) {
+ super.beforeInit(ui);
SampleCategoryModel sampleCategoryModel =
getDataContext().getSampleCategoryModel();
@@ -166,7 +163,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(SplitSpeciesBatchUI ui) {
initUI(ui);
@@ -185,7 +182,7 @@
// fill comboBox with new list
List<SampleCategoryModelEntry> data = (List<SampleCategoryModelEntry>) evt.getNewValue();
- ui.getCategoryComboBox().setModel(new DefaultComboBoxModel(data.toArray()));
+ SplitSpeciesBatchUIHandler.this.ui.getCategoryComboBox().setModel(new DefaultComboBoxModel(data.toArray()));
}
});
@@ -241,7 +238,7 @@
getModel().setValid(false);
getModel().setSelectedCategory(null);
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
parent.getHandler().setSpeciesSelectedCard(EditCatchesUIHandler.MAIN_CARD);
}
@@ -372,7 +369,7 @@
log.debug("Save UI " + ui);
}
- EditCatchesUI parent = SwingUtil.getParentContainer(ui, EditCatchesUI.class);
+ EditCatchesUI parent = getParentContainer(EditCatchesUI.class);
SplitSpeciesBatchUIModel model = getModel();
if (model.isValid()) {
if (model.isSplitMode()) {
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/AbstractCaracteristicTabUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/AbstractCaracteristicTabUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/AbstractCaracteristicTabUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -32,7 +32,6 @@
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.FishingOperation;
import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
-import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
@@ -55,10 +54,11 @@
UI extends TuttiUI<M, ?>>
extends AbstractTuttiTableUIHandler<RM, M, UI> {
- private static final Log log = LogFactory.getLog(AbstractCaracteristicTabUIHandler.class);
+ private static final Log log =
+ LogFactory.getLog(AbstractCaracteristicTabUIHandler.class);
- public AbstractCaracteristicTabUIHandler(EditFishingOperationUI parentUi, UI ui, String... properties) {
- super(parentUi.getHandler().getContext(), ui, properties);
+ public AbstractCaracteristicTabUIHandler(String... properties) {
+ super(properties);
}
//------------------------------------------------------------------------//
@@ -120,14 +120,15 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(UI ui) {
+ super.beforeInit(ui);
M model = createModel();
- getUI().setContextValue(model);
+ ui.setContextValue(model);
}
@Override
- public void afterInitUI() {
- initUI(getUI());
+ public void afterInit(UI ui) {
+ initUI(ui);
initBeanFilterableComboBox(getKeyCombo(), Lists.<Caracteristic>newArrayList(), null);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -27,6 +27,7 @@
<import>
fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI
fr.ifremer.tutti.persistence.entities.referential.Caracteristic
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
org.jdesktop.swingx.JXTable
@@ -34,12 +35,16 @@
java.awt.Color
</import>
- <GearUseFeatureTabUIHandler id='handler'
- initializer='getContextValue(GearUseFeatureTabUIHandler.class)'/>
-
<GearUseFeatureTabUIModel id='model'
initializer='getContextValue(GearUseFeatureTabUIModel.class)'/>
+ <script><![CDATA[
+
+public GearUseFeatureTabUI(EditFishingOperationUI parentUI) {
+ TuttiUIUtil.setParentUI(this, parentUI);
+}
+ ]]></script>
+
<JPopupMenu id='tablePopup'>
<JMenuItem id='removeCaracteristicMenu'
onActionPerformed='handler.removeCaracteristic()'/>
@@ -63,19 +68,4 @@
</JScrollPane>
</cell>
</row>
- <script><![CDATA[
-
-public GearUseFeatureTabUI(EditFishingOperationUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- GearUseFeatureTabUIHandler handler = new GearUseFeatureTabUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
-}
-
-protected void $afterCompleteSetup() {
- handler.afterInitUI();
-}
-
- ]]></script>
-
</Table>
\ No newline at end of file
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/GearUseFeatureTabUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,7 +28,6 @@
import fr.ifremer.tutti.persistence.entities.data.FishingOperation;
import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
import fr.ifremer.tutti.service.DecoratorService;
-import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI;
import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicValueEditor;
import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicValueRenderer;
import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox;
@@ -43,9 +42,8 @@
*/
public class GearUseFeatureTabUIHandler extends AbstractCaracteristicTabUIHandler<GearUseFeatureRowModel, GearUseFeatureTabUIModel, GearUseFeatureTableModel, GearUseFeatureTabUI> {
- public GearUseFeatureTabUIHandler(EditFishingOperationUI parentUi,
- GearUseFeatureTabUI ui) {
- super(parentUi, ui, GearUseFeatureRowModel.PROPERTY_VALUE);
+ public GearUseFeatureTabUIHandler() {
+ super(GearUseFeatureRowModel.PROPERTY_VALUE);
}
//------------------------------------------------------------------------//
@@ -86,8 +84,8 @@
//------------------------------------------------------------------------//
@Override
- public void afterInitUI() {
- super.afterInitUI();
+ public void afterInit(GearUseFeatureTabUI ui) {
+ super.afterInit(ui);
JXTable table = getTable();
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -27,6 +27,7 @@
<import>
fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI
fr.ifremer.tutti.persistence.entities.referential.Caracteristic
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
@@ -36,12 +37,15 @@
java.awt.Color
</import>
- <VesselUseFeatureTabUIHandler id='handler'
- initializer='getContextValue(VesselUseFeatureTabUIHandler.class)'/>
-
<VesselUseFeatureTabUIModel id='model'
initializer='getContextValue(VesselUseFeatureTabUIModel.class)'/>
+ <script><![CDATA[
+public VesselUseFeatureTabUI(EditFishingOperationUI parentUI) {
+ TuttiUIUtil.setParentUI(this, parentUI);
+}
+ ]]></script>
+
<JPopupMenu id='tablePopup'>
<JMenuItem id='removeCaracteristicMenu'
onActionPerformed='handler.removeCaracteristic()'/>
@@ -65,18 +69,4 @@
</JScrollPane>
</cell>
</row>
- <script><![CDATA[
-
-public VesselUseFeatureTabUI(EditFishingOperationUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- VesselUseFeatureTabUIHandler handler = new VesselUseFeatureTabUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
-}
-
-protected void $afterCompleteSetup() {
- handler.afterInitUI();
-}
-
- ]]></script>
</Table>
\ No newline at end of file
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/fishing/VesselUseFeatureTabUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,7 +28,6 @@
import fr.ifremer.tutti.persistence.entities.data.FishingOperation;
import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
import fr.ifremer.tutti.service.DecoratorService;
-import fr.ifremer.tutti.ui.swing.content.operation.EditFishingOperationUI;
import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicValueEditor;
import fr.ifremer.tutti.ui.swing.util.caracteristics.CaracteristicValueRenderer;
import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox;
@@ -43,9 +42,8 @@
*/
public class VesselUseFeatureTabUIHandler extends AbstractCaracteristicTabUIHandler<VesselUseFeatureRowModel, VesselUseFeatureTabUIModel, VesselUseFeatureTableModel, VesselUseFeatureTabUI> {
- public VesselUseFeatureTabUIHandler(EditFishingOperationUI parentUi,
- VesselUseFeatureTabUI ui) {
- super(parentUi, ui, VesselUseFeatureRowModel.PROPERTY_VALUE);
+ public VesselUseFeatureTabUIHandler() {
+ super(VesselUseFeatureRowModel.PROPERTY_VALUE);
}
//------------------------------------------------------------------------//
@@ -86,8 +84,8 @@
//------------------------------------------------------------------------//
@Override
- public void afterInitUI() {
- super.afterInitUI();
+ public void afterInit(VesselUseFeatureTabUI ui) {
+ super.afterInit(ui);
JXTable table = getTable();
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -29,6 +29,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
@@ -39,20 +40,10 @@
<script><![CDATA[
public EditProgramUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- EditProgramUIHandler handler = new EditProgramUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
]]></script>
- <EditProgramUIHandler id='handler'
- initializer='getContextValue(EditProgramUIHandler.class)'/>
-
<EditProgramUIModel id='model'
initializer='getContextValue(EditProgramUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/program/EditProgramUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -25,11 +25,9 @@
*/
import com.google.common.collect.Lists;
+import fr.ifremer.shared.application.swing.util.CloseableUI;
import fr.ifremer.tutti.persistence.entities.data.Program;
-import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.shared.application.swing.util.CloseableUI;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -61,21 +59,10 @@
return result;
}
- /**
- * Persistence service.
- *
- * @since 0.1
- */
- private final PersistenceService persistenceService;
-
- public EditProgramUIHandler(TuttiUI<?,?> parentUi, EditProgramUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- this.persistenceService = getContext().getPersistenceService();
- }
-
@Override
- public void beforeInitUI() {
+ public void beforeInit(EditProgramUI ui) {
+ super.beforeInit(ui);
getDataContext().resetValidationDataContext();
EditProgramUIModel model = new EditProgramUIModel();
@@ -92,7 +79,7 @@
log.info("Edit existing program " + programId);
}
// load existing program
- Program program = persistenceService.getProgram(programId);
+ Program program = getPersistenceService().getProgram(programId);
model.fromBean(program);
}
@@ -103,13 +90,13 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(EditProgramUI ui) {
initUI(ui);
EditProgramUIModel model = getModel();
initBeanFilterableComboBox(ui.getZoneComboBox(),
- Lists.newArrayList(persistenceService.getAllProgramZone()),
+ Lists.newArrayList(getPersistenceService().getAllProgramZone()),
model.getZone());
SwingValidator validator = ui.getValidator();
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -30,6 +30,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
jaxx.runtime.swing.editor.bean.BeanDoubleList
@@ -48,21 +49,11 @@
<script><![CDATA[
public EditProtocolUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- EditProtocolUIHandler handler = new EditProtocolUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
]]>
</script>
- <EditProtocolUIHandler id='handler'
- initializer='getContextValue(EditProtocolUIHandler.class)'/>
-
<EditProtocolUIModel id='model'
initializer='getContextValue(EditProtocolUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/EditProtocolUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -29,6 +29,7 @@
import com.google.common.collect.Lists;
import com.google.common.collect.Multimap;
import com.google.common.collect.Sets;
+import fr.ifremer.shared.application.swing.util.CloseableUI;
import fr.ifremer.tutti.persistence.entities.TuttiEntities;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModel;
import fr.ifremer.tutti.persistence.entities.data.SampleCategoryModelEntry;
@@ -37,14 +38,11 @@
import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.service.DecoratorService;
-import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.service.TuttiDecorator;
import fr.ifremer.tutti.ui.swing.action.CloneProtocolAction;
import fr.ifremer.tutti.ui.swing.action.EditProtocolAction;
import fr.ifremer.tutti.ui.swing.action.ImportProtocolAction;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.shared.application.swing.util.CloseableUI;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUI;
import fr.ifremer.tutti.ui.swing.util.species.SelectSpeciesUIModel;
@@ -97,8 +95,6 @@
private static final Log log =
LogFactory.getLog(EditProtocolUIHandler.class);
-// public static final String SPECIES_DECORATOR_INDEX = "decoratorIndex";
-
public static String getTitle(boolean exist) {
String result;
@@ -112,23 +108,10 @@
protected SelectSpeciesUI dialog;
- /**
- * Persistence service.
- *
- * @since 0.2
- */
- protected final PersistenceService persistenceService;
+ protected SampleCategoryModel sampleCategoryModel;
- protected final SampleCategoryModel sampleCategoryModel;
-
protected List<BeanDoubleList<Caracteristic>> allDoubleLists;
- public EditProtocolUIHandler(TuttiUI<?,?> parentUi, EditProtocolUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- this.persistenceService = getContext().getPersistenceService();
- this.sampleCategoryModel = getContext().getDataContext().getSampleCategoryModel();
- }
-
public JXTable getSpeciesTable() {
return ui.getSpeciesTable();
}
@@ -155,8 +138,11 @@
}
@Override
- public void beforeInitUI() {
+ public void beforeInit(EditProtocolUI ui) {
+ super.beforeInit(ui);
+ this.sampleCategoryModel = getContext().getDataContext().getSampleCategoryModel();
+
incrementsMessage("Chargement des réferentiels");
getDataContext().resetValidationDataContext();
@@ -188,13 +174,13 @@
// afterUI method to fill model
listModelIsModify(model);
- ui.setContextValue(model);
+ this.ui.setContextValue(model);
}
@Override
- public void afterInitUI() {
+ public void afterInit(EditProtocolUI ui) {
- initUI(ui);
+ initUI(this.ui);
EditProtocolUIModel model = getModel();
@@ -208,41 +194,41 @@
protocol = getDataContext().getProtocol();
- if (EditProtocolAction.CLEAN_PROTOCOL_ENTRY.getContextValue(ui) != null) {
+ if (EditProtocolAction.CLEAN_PROTOCOL_ENTRY.getContextValue(this.ui) != null) {
// clean protocol
- protocol = EditProtocolAction.CLEAN_PROTOCOL_ENTRY.getContextValue(ui);
+ protocol = EditProtocolAction.CLEAN_PROTOCOL_ENTRY.getContextValue(this.ui);
- EditProtocolAction.CLEAN_PROTOCOL_ENTRY.removeContextValue(ui);
+ EditProtocolAction.CLEAN_PROTOCOL_ENTRY.removeContextValue(this.ui);
model.setCleaned(true);
- ui.getSaveWarning().setText(_("tutti.editProtocol.warn.clean"));
+ this.ui.getSaveWarning().setText(_("tutti.editProtocol.warn.clean"));
}
model.fromBean(protocol);
- } else if ((protocol = ImportProtocolAction.IMPORT_PROTOCOL_ENTRY.getContextValue(ui)) != null) {
+ } else if ((protocol = ImportProtocolAction.IMPORT_PROTOCOL_ENTRY.getContextValue(this.ui)) != null) {
incrementsMessage("Import du protocole");
// import protocol
- ImportProtocolAction.IMPORT_PROTOCOL_ENTRY.removeContextValue(ui);
+ ImportProtocolAction.IMPORT_PROTOCOL_ENTRY.removeContextValue(this.ui);
model.fromBean(protocol);
model.setImported(true);
- ui.getSaveWarning().setText(_("tutti.editProtocol.warn.import"));
+ this.ui.getSaveWarning().setText(_("tutti.editProtocol.warn.import"));
- } else if ((protocol = CloneProtocolAction.CLONE_PROTOCOL_ENTRY.getContextValue(ui)) != null) {
+ } else if ((protocol = CloneProtocolAction.CLONE_PROTOCOL_ENTRY.getContextValue(this.ui)) != null) {
incrementsMessage("Clone du protocole");
// clone protocol
- CloneProtocolAction.CLONE_PROTOCOL_ENTRY.removeContextValue(ui);
+ CloneProtocolAction.CLONE_PROTOCOL_ENTRY.removeContextValue(this.ui);
model.fromBean(protocol);
model.setCloned(true);
- ui.getSaveWarning().setText(_("tutti.editProtocol.warn.clone"));
+ this.ui.getSaveWarning().setText(_("tutti.editProtocol.warn.clone"));
} else {
@@ -259,7 +245,7 @@
model.setLengthClassesPmfmId(Lists.<String>newArrayList());
}
- SwingValidator validator = ui.getValidator();
+ SwingValidator validator = this.ui.getValidator();
listenValidatorValid(validator, model);
registerValidators(validator);
@@ -267,9 +253,9 @@
Collection<Species> referents =
model.getAllReferentSpeciesByTaxonId().values();
- initBeanFilterableComboBox(ui.getSpeciesComboBox(),
+ initBeanFilterableComboBox(this.ui.getSpeciesComboBox(),
Lists.newArrayList(referents), null);
- initBeanFilterableComboBox(ui.getBenthosComboBox(),
+ initBeanFilterableComboBox(this.ui.getBenthosComboBox(),
Lists.newArrayList(referents), null);
List<EditProtocolSpeciesRowModel> speciesRows;
@@ -297,8 +283,8 @@
model.setSpeciesRow(speciesRows);
model.setBenthosRow(benthosRows);
- ui.getSpeciesComboBox().reset();
- ui.getBenthosComboBox().reset();
+ this.ui.getSpeciesComboBox().reset();
+ this.ui.getBenthosComboBox().reset();
{
// create species table model
@@ -419,36 +405,36 @@
}
allDoubleLists = Lists.newArrayList(
- ui.getLengthClassesList(),
- ui.getGearUseFeatureList(),
- ui.getIndividualObservationList(),
- ui.getVesselUseFeatureList()
+ this.ui.getLengthClassesList(),
+ this.ui.getGearUseFeatureList(),
+ this.ui.getIndividualObservationList(),
+ this.ui.getVesselUseFeatureList()
);
initDoubleList(EditProtocolUIModel.PROPERTY_LENGTH_CLASSES_PMFM_ID,
- ui.getLengthClassesList(),
+ this.ui.getLengthClassesList(),
Lists.newArrayList(model.getCaracteristics()),
model.getLengthClassesPmfmId());
initDoubleList(EditProtocolUIModel.PROPERTY_GEAR_USE_FEATURE_PMFM_ID,
- ui.getGearUseFeatureList(),
+ this.ui.getGearUseFeatureList(),
Lists.newArrayList(model.getCaracteristics()),
model.getGearUseFeaturePmfmId());
initDoubleList(EditProtocolUIModel.PROPERTY_VESSEL_USE_FEATURE_PMFM_ID,
- ui.getVesselUseFeatureList(),
+ this.ui.getVesselUseFeatureList(),
Lists.newArrayList(model.getCaracteristics()),
model.getVesselUseFeaturePmfmId());
initDoubleList(EditProtocolUIModel.PROPERTY_INDIVIDUAL_OBSERVATION_PMFM_ID,
- ui.getIndividualObservationList(),
+ this.ui.getIndividualObservationList(),
Lists.newArrayList(model.getCaracteristics()),
model.getIndividualObservationPmfmId());
// if new protocol can already cancel his creation
model.setModify(model.isCreate() || model.isCleaned());
- ui.getCaracteristicPane().addChangeListener(new ChangeListener() {
+ this.ui.getCaracteristicPane().addChangeListener(new ChangeListener() {
public void stateChanged(ChangeEvent e) {
JTabbedPane tabPanel = (JTabbedPane) e.getSource();
@@ -457,19 +443,19 @@
log.debug("selected " + selectedIndex);
switch (selectedIndex) {
case 0:
- selectedDoubleList = ui.getLengthClassesList();
+ selectedDoubleList = EditProtocolUIHandler.this.ui.getLengthClassesList();
break;
case 1:
- selectedDoubleList = ui.getGearUseFeatureList();
+ selectedDoubleList = EditProtocolUIHandler.this.ui.getGearUseFeatureList();
break;
case 2:
- selectedDoubleList = ui.getIndividualObservationList();
+ selectedDoubleList = EditProtocolUIHandler.this.ui.getIndividualObservationList();
break;
case 3:
- selectedDoubleList = ui.getVesselUseFeatureList();
+ selectedDoubleList = EditProtocolUIHandler.this.ui.getVesselUseFeatureList();
break;
default:
@@ -481,7 +467,7 @@
}
});
- dialog = new SelectSpeciesUI(ui);
+ dialog = new SelectSpeciesUI(this.ui);
}
@Override
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -30,6 +30,7 @@
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.TuttiUIContext
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
static org.nuiton.i18n.I18n._
</import>
@@ -37,21 +38,10 @@
<script><![CDATA[
public ManageTemporaryReferentialUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- ManageTemporaryReferentialUIHandler handler =
- new ManageTemporaryReferentialUIHandler(parentUI.getHandler().getContext(), this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
]]></script>
- <ManageTemporaryReferentialUIHandler id='handler'
- initializer='getContextValue(ManageTemporaryReferentialUIHandler.class)'/>
-
<TuttiUIContext id='model'
initializer='getContextValue(TuttiUIContext.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/referential/ManageTemporaryReferentialUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -24,7 +24,6 @@
* #L%
*/
-import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.ui.swing.TuttiUIContext;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
import jaxx.runtime.validator.swing.SwingValidator;
@@ -45,24 +44,17 @@
protected JComponent currentBody;
- protected final PersistenceService persistenceService;
-
- protected ManageTemporaryReferentialUIHandler(TuttiUIContext context,
- ManageTemporaryReferentialUI ui) {
- super(context, ui);
- this.persistenceService = context.getPersistenceService();
- }
-
//------------------------------------------------------------------------//
//-- AbstractTuttiUIHandler methods --//
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(ManageTemporaryReferentialUI ui) {
+ super.beforeInit(ui);
}
@Override
- public void afterInitUI() {
+ public void afterInit(ManageTemporaryReferentialUI ui) {
initUI(ui);
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -27,6 +27,7 @@
<import>
fr.ifremer.tutti.ui.swing.TuttiHelpBroker
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.FileEditor
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
@@ -40,20 +41,10 @@
<script><![CDATA[
public ReportUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- ReportUIHandler handler = new ReportUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
- protected void $afterCompleteSetup() {
- handler.afterInitUI();
- }
]]></script>
- <ReportUIHandler id='handler'
- initializer='getContextValue(ReportUIHandler.class)'/>
-
<ReportUIModel id='model'
initializer='getContextValue(ReportUIModel.class)'/>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/report/ReportUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -29,7 +29,6 @@
import fr.ifremer.shared.application.swing.util.CloseableUI;
import fr.ifremer.tutti.service.report.ReportService;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil;
import jaxx.runtime.swing.editor.FileEditor;
import jaxx.runtime.validator.swing.SwingValidator;
@@ -55,20 +54,12 @@
/** Logger. */
private static final Log log = LogFactory.getLog(ReportUIHandler.class);
- /**
- * Persistence service.
- *
- * @since 0.1
- */
- private final ReportService reportService;
+ @Override
+ public void beforeInit(ReportUI ui) {
- public ReportUIHandler(TuttiUI<?, ?> parentUi, ReportUI ui) {
- super(parentUi.getHandler().getContext(), ui);
- this.reportService = getContext().getReportService();
- }
+ super.beforeInit(ui);
- @Override
- public void beforeInitUI() {
+ ReportService reportService = getContext().getReportService();
getDataContext().resetValidationDataContext();
@@ -88,7 +79,7 @@
}
@Override
- public void afterInitUI() {
+ public void afterInit(ReportUI ui) {
initUI(ui);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiTabContainerUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiTabContainerUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiTabContainerUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -42,10 +42,6 @@
DelegateTabContainerHandler delegateTabHandler;
- protected AbstractTuttiTabContainerUIHandler(TuttiUIContext context, UI ui) {
- super(context, ui);
- }
-
/**
* Returns the tab handler of the tab i.
*
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/AbstractTuttiUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -34,7 +34,10 @@
import fr.ifremer.tutti.persistence.entities.data.SampleCategory;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.service.DecoratorService;
+import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.service.TuttiDataContext;
+import fr.ifremer.tutti.service.ValidationService;
+import fr.ifremer.tutti.service.catches.ValidateCruiseOperationsService;
import fr.ifremer.tutti.ui.swing.TuttiUIContext;
import fr.ifremer.tutti.ui.swing.content.MainUI;
import fr.ifremer.tutti.ui.swing.content.MainUIHandler;
@@ -71,10 +74,6 @@
private static final Log log =
LogFactory.getLog(AbstractTuttiUIHandler.class);
- protected AbstractTuttiUIHandler(TuttiUIContext context, UI ui) {
- super(context, ui);
- }
-
//------------------------------------------------------------------------//
//-- Public methods --//
//------------------------------------------------------------------------//
@@ -97,6 +96,18 @@
return getContext().getConfig();
}
+ public PersistenceService getPersistenceService() {
+ return getContext().getPersistenceService();
+ }
+
+ public ValidationService getValidationService() {
+ return getContext().getValidationService();
+ }
+
+ public ValidateCruiseOperationsService getValidateCruiseOperationsService() {
+ return getContext().getValidateCruiseOperationsService();
+ }
+
@Override
public Component getTopestUI() {
Component result;
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/TuttiUIUtil.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -31,6 +31,9 @@
import fr.ifremer.shared.application.swing.util.ApplicationUIUtil;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.service.TuttiDecorator;
+import fr.ifremer.tutti.ui.swing.TuttiUIContext;
+import jaxx.runtime.JAXXObject;
+import jaxx.runtime.JAXXUtil;
import jaxx.runtime.SwingUtil;
import org.apache.commons.io.IOUtils;
import org.apache.commons.logging.Log;
@@ -78,6 +81,15 @@
// never instanciate util class
}
+ public static TuttiUIContext getApplicationContext(JAXXObject ui) {
+ return (TuttiUIContext) ApplicationUIUtil.getApplicationContext(ui);
+ }
+
+ public static void setParentUI(JAXXObject ui, TuttiUI<?, ?> parentUI) {
+ JAXXUtil.initContext(ui, parentUI);
+ setApplicationContext(ui, parentUI.getHandler().getContext());
+ }
+
public static void tryToConnectToUpdateUrl(String urlAsString,
String badUrlFormatI18nKey,
String notReachI18nKey,
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,6 +26,7 @@
<import>
fr.ifremer.tutti.ui.swing.TuttiUIContext
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.FileEditor
org.jdesktop.swingx.JXTitledPanel
@@ -42,23 +43,13 @@
<TuttiUIContext id='model'
initializer='getContextValue(TuttiUIContext.class)'/>
- <AttachmentEditorUIHandler id='handler'
- initializer='getContextValue(AttachmentEditorUIHandler.class)'/>
-
<script><![CDATA[
public AttachmentEditorUI(TuttiUIContext context) {
super(context.getMainUI());
- setContextValue(context);
- AttachmentEditorUIHandler handler = new AttachmentEditorUIHandler(context, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setApplicationContext(this, context);
}
-protected void $afterCompleteSetup() {
- getHandler().afterInitUI();
-}
-
public void openEditor(JComponent component) {
handler.openEditor(component);
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/attachment/AttachmentEditorUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -27,7 +27,6 @@
import fr.ifremer.shared.application.ApplicationTechnicalException;
import fr.ifremer.tutti.persistence.entities.data.Attachment;
import fr.ifremer.tutti.persistence.entities.data.Attachments;
-import fr.ifremer.tutti.service.PersistenceService;
import fr.ifremer.tutti.ui.swing.TuttiUIContext;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil;
@@ -67,27 +66,9 @@
public static final String SHOW_DIALOG_ACTION = "showDialog";
- protected final AttachmentEditorUI ui;
-
- protected final PersistenceService persistenceService;
-
- protected final TuttiUIContext context;
-
- public AttachmentEditorUIHandler(TuttiUIContext context,
- AttachmentEditorUI ui) {
- super(context, ui);
- this.context = context;
- this.ui = ui;
- this.persistenceService = context.getPersistenceService();
- }
-
@Override
- public void beforeInitUI() {
- }
+ public void afterInit(AttachmentEditorUI ui) {
- @Override
- public void afterInitUI() {
-
ui.getFile().setDialogOwner(ui);
ui.pack();
ui.setResizable(true);
@@ -111,8 +92,8 @@
@Override
public void actionPerformed(ActionEvent e) {
- ui.dispose();
- ui.setVisible(false);
+ AttachmentEditorUIHandler.this.ui.dispose();
+ AttachmentEditorUIHandler.this.ui.setVisible(false);
}
};
@@ -122,7 +103,7 @@
@Override
public void actionPerformed(ActionEvent e) {
- ui.setVisible(true);
+ AttachmentEditorUIHandler.this.ui.setVisible(true);
}
};
@@ -230,7 +211,7 @@
attachment.setName(name);
attachment.setComment(ui.getFileComment().getText());
- attachment = persistenceService.createAttachment(attachment, file);
+ attachment = getPersistenceService().createAttachment(attachment, file);
bean.addAttachment(attachment);
resetFields();
@@ -254,7 +235,7 @@
}
public void openAttachment(Attachment attachment) {
- File file = persistenceService.getAttachmentFile(attachment.getId());
+ File file = getPersistenceService().getAttachmentFile(attachment.getId());
if (!file.exists()) {
throw new ApplicationTechnicalException(_("tutti.attachmentEditor.fileNotFound", file.getAbsolutePath()));
@@ -275,34 +256,6 @@
this, SaveAttachmentAction.class);
action.setAttachment(attachment);
getContext().getActionEngine().runAction(action);
-
-// boolean hackDialog = ui.isAlwaysOnTop();
-// if (hackDialog) {
-// ui.setAlwaysOnTop(false);
-// }
-// try {
-// File attachmentFile = persistenceService.getAttachmentFile(attachment.getId());
-// File file = TuttiUIUtil.saveFile(
-// attachment.getName(),
-// ui,
-// _("tutti.attachmentEditor.saveAttachment.title"),
-// _("tutti.attachmentEditor.saveAttachment.button"));
-//
-// if (file != null) {
-// boolean checkOverwrite = askOverwriteFile(file);
-// if (checkOverwrite) {
-// TuttiIOUtil.copyFile(attachmentFile, file,
-// _("tutti.attachmentEditor.saveAttachment.error.message", attachmentFile, file.getName()));
-// context.showInformationMessage(
-// _("tutti.attachmentEditor.saveAttachment.success.message", file.getName()));
-// }
-// }
-//
-// } finally {
-// if (hackDialog) {
-// ui.setAlwaysOnTop(true);
-// }
-// }
}
public void removeAttachment(AttachmentItem attachmentItem) {
@@ -322,7 +275,7 @@
if (answer == JOptionPane.YES_OPTION) {
AttachmentModelAware bean = ui.getBean();
- persistenceService.deleteAttachment(attachment.getId());
+ getPersistenceService().deleteAttachment(attachment.getId());
bean.removeAttachment(attachment);
ui.getAttachments().remove(attachmentItem);
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -25,6 +25,7 @@
<import>
fr.ifremer.tutti.persistence.entities.referential.Caracteristic
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
org.jdesktop.swingx.JXTable
@@ -32,9 +33,13 @@
java.awt.Color
</import>
- <CaracteristicMapEditorUIHandler id='handler'
- initializer='getContextValue(CaracteristicMapEditorUIHandler.class)'/>
+ <script><![CDATA[
+public CaracteristicMapEditorUI(TuttiUI parentUI) {
+ TuttiUIUtil.setParentUI(this, parentUI);
+}
+ ]]></script>
+
<CaracteristicMapEditorUIModel id='model'
initializer='getContextValue(CaracteristicMapEditorUIModel.class)'/>
@@ -71,19 +76,4 @@
</JPanel>
</cell>
</row>
- <script><![CDATA[
-
-public CaracteristicMapEditorUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- CaracteristicMapEditorUIHandler handler = new CaracteristicMapEditorUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
-}
-
-protected void $afterCompleteSetup() {
- handler.afterInitUI();
-}
-
- ]]></script>
-
</Table>
\ No newline at end of file
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/caracteristics/CaracteristicMapEditorUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,12 +26,11 @@
import com.google.common.base.Preconditions;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
+import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.persistence.entities.CaracteristicMap;
import fr.ifremer.tutti.persistence.entities.referential.Caracteristic;
import fr.ifremer.tutti.service.DecoratorService;
-import fr.ifremer.shared.application.swing.util.Cancelable;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import fr.ifremer.tutti.ui.swing.util.table.AbstractTuttiTableUIHandler;
import jaxx.runtime.swing.editor.bean.BeanFilterableComboBox;
import jaxx.runtime.validator.swing.SwingValidator;
@@ -61,9 +60,8 @@
protected CaracteristicMapCellEditor caracteristicMapCellEditor;
- public CaracteristicMapEditorUIHandler(TuttiUI parentUi,
- CaracteristicMapEditorUI ui) {
- super(parentUi.getHandler().getContext(), ui, CaracteristicMapEditorRowModel.PROPERTY_VALUE);
+ public CaracteristicMapEditorUIHandler() {
+ super(CaracteristicMapEditorRowModel.PROPERTY_VALUE);
}
//------------------------------------------------------------------------//
@@ -124,14 +122,15 @@
//------------------------------------------------------------------------//
@Override
- public void beforeInitUI() {
+ public void beforeInit(CaracteristicMapEditorUI ui) {
+ super.beforeInit(ui);
CaracteristicMapEditorUIModel model = new CaracteristicMapEditorUIModel();
- getUI().setContextValue(model);
+ ui.setContextValue(model);
}
@Override
- public void afterInitUI() {
- initUI(getUI());
+ public void afterInit(CaracteristicMapEditorUI ui) {
+ initUI(ui);
initBeanFilterableComboBox(getKeyCombo(), Lists.<Caracteristic>newArrayList(), null);
getModel().setAvailableCaracteristics(Lists.newArrayList(getDataContext().getCaracteristicWithProtected()));
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,6 +26,7 @@
<import>
fr.ifremer.tutti.persistence.entities.CommentAware
fr.ifremer.tutti.ui.swing.TuttiUIContext
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
org.jdesktop.swingx.JXTitledPanel
javax.swing.JComponent
@@ -35,16 +36,9 @@
public CommentEditorUI(TuttiUIContext context) {
super(context.getMainUI());
- setContextValue(context);
- CommentEditorUIHandler handler = new CommentEditorUIHandler(context, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setApplicationContext(this, context);
}
-protected void $afterCompleteSetup() {
- getHandler().afterInitUI();
-}
-
public void openEditor(JComponent component) {
handler.openEditor(component);
}
@@ -57,9 +51,6 @@
<!-- bean property -->
<CommentAware id='bean' javaBean='null'/>
- <CommentEditorUIHandler id='handler'
- initializer='getContextValue(CommentEditorUIHandler.class)'/>
-
<JXTitledPanel id='commentEditorTopPanel' constraints='BorderLayout.CENTER'>
<JScrollPane>
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/comment/CommentEditorUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,7 +26,9 @@
import fr.ifremer.tutti.persistence.entities.CommentAware;
import fr.ifremer.tutti.ui.swing.TuttiUIContext;
+import fr.ifremer.tutti.ui.swing.util.TuttiUIUtil;
import jaxx.runtime.SwingUtil;
+import jaxx.runtime.spi.UIHandler;
import jaxx.runtime.swing.ComponentMover;
import jaxx.runtime.swing.ComponentResizer;
@@ -48,7 +50,7 @@
* @author tchemit <chemit(a)codelutin.com>
* @since 1.1
*/
-public class CommentEditorUIHandler {
+public class CommentEditorUIHandler implements UIHandler<CommentEditorUI> {
private static final int DEFAULT_EDITOR_WIDTH = 400;
@@ -58,20 +60,19 @@
public static final String SHOW_DIALOG_ACTION = "showDialog";
- protected final TuttiUIContext context;
+ protected TuttiUIContext context;
- private final CommentEditorUI ui;
+ private CommentEditorUI ui;
- public CommentEditorUIHandler(TuttiUIContext context, CommentEditorUI ui) {
- this.context = context;
+ @Override
+ public void beforeInit(CommentEditorUI ui) {
this.ui = ui;
+ this.context = TuttiUIUtil.getApplicationContext(ui);
}
- protected void beforeInitUI() {
- }
+ @Override
+ public void afterInit(CommentEditorUI ui) {
- protected void afterInitUI() {
-
ui.pack();
ui.setResizable(true);
// ui.setSize(800, 300);
@@ -97,8 +98,8 @@
@Override
public void actionPerformed(ActionEvent e) {
- ui.dispose();
- ui.setVisible(false);
+ CommentEditorUIHandler.this.ui.dispose();
+ CommentEditorUIHandler.this.ui.setVisible(false);
}
};
@@ -108,7 +109,7 @@
@Override
public void actionPerformed(ActionEvent e) {
- ui.setVisible(true);
+ CommentEditorUIHandler.this.ui.setVisible(true);
}
};
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.jaxx
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.jaxx 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUI.jaxx 2013-11-28 17:55:19 UTC (rev 1410)
@@ -27,24 +27,17 @@
<import>
fr.ifremer.tutti.persistence.entities.referential.Species
fr.ifremer.tutti.ui.swing.util.TuttiUI
+ fr.ifremer.tutti.ui.swing.util.TuttiUIUtil
jaxx.runtime.swing.editor.bean.BeanFilterableComboBox
</import>
<script><![CDATA[
public SelectSpeciesUI(TuttiUI parentUI) {
- JAXXUtil.initContext(this, parentUI);
- SelectSpeciesUIHandler handler = new SelectSpeciesUIHandler(parentUI, this);
- setContextValue(handler);
- handler.beforeInitUI();
+ TuttiUIUtil.setParentUI(this, parentUI);
}
-
-protected void $afterCompleteSetup() { handler.afterInitUI(); }
]]></script>
- <SelectSpeciesUIHandler id='handler'
- initializer='getContextValue(SelectSpeciesUIHandler.class)'/>
-
<SelectSpeciesUIModel id='model'
initializer='getContextValue(SelectSpeciesUIModel.class)'/>
@@ -52,10 +45,8 @@
constructorParams='this' genericType='Species'/>
<JPanel layout='{new GridLayout(1, 0)}' constraints='BorderLayout.SOUTH'>
- <JButton id='cancelButton'
- onActionPerformed='handler.cancel()'/>
- <JButton id='validateButton'
- onActionPerformed='handler.validate()'/>
+ <JButton id='cancelButton' onActionPerformed='handler.cancel()'/>
+ <JButton id='validateButton' onActionPerformed='handler.validate()'/>
</JPanel>
</JPanel>
\ No newline at end of file
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/species/SelectSpeciesUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -28,7 +28,6 @@
import com.google.common.collect.Lists;
import fr.ifremer.tutti.persistence.entities.referential.Species;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
-import fr.ifremer.tutti.ui.swing.util.TuttiUI;
import jaxx.runtime.validator.swing.SwingValidator;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -46,18 +45,15 @@
private static final Log log =
LogFactory.getLog(SelectSpeciesUIHandler.class);
- public SelectSpeciesUIHandler(TuttiUI parentUI, SelectSpeciesUI ui) {
- super(parentUI.getHandler().getContext(), ui);
- }
-
@Override
- public void beforeInitUI() {
+ public void beforeInit(SelectSpeciesUI ui) {
+ super.beforeInit(ui);
SelectSpeciesUIModel model = new SelectSpeciesUIModel();
ui.setContextValue(model);
}
@Override
- public void afterInitUI() {
+ public void afterInit(SelectSpeciesUI ui) {
initUI(ui);
initBeanFilterableComboBox(ui.getSpeciesCombo(),
@@ -69,7 +65,7 @@
new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
- ui.getSpeciesCombo().getHandler().sortData();
+ SelectSpeciesUIHandler.this.ui.getSpeciesCombo().getHandler().sortData();
}
});
}
@@ -92,11 +88,11 @@
}
public void validate() {
- closeDialog(ui);
+ closeDialog();
}
public void cancel() {
getModel().setSelectedSpecies(null);
- closeDialog(ui);
+ closeDialog();
}
}
Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/AbstractTuttiTableUIHandler.java
===================================================================
--- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/AbstractTuttiTableUIHandler.java 2013-11-28 17:46:39 UTC (rev 1409)
+++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/util/table/AbstractTuttiTableUIHandler.java 2013-11-28 17:55:19 UTC (rev 1410)
@@ -26,19 +26,17 @@
import com.google.common.base.Preconditions;
import com.google.common.collect.Sets;
+import fr.ifremer.shared.application.swing.computable.ComputableDataTableCell.TuttiComputedOrNotDataTableCellEditor;
import fr.ifremer.shared.application.swing.table.AbstractApplicationTableModel;
import fr.ifremer.shared.application.swing.table.MoveToNextEditableCellAction;
import fr.ifremer.shared.application.swing.table.MoveToNextEditableRowAction;
import fr.ifremer.shared.application.swing.table.MoveToPreviousEditableCellAction;
import fr.ifremer.shared.application.swing.table.MoveToPreviousEditableRowAction;
-import fr.ifremer.tutti.service.PersistenceService;
-import fr.ifremer.tutti.ui.swing.TuttiUIContext;
import fr.ifremer.tutti.ui.swing.content.operation.catches.SampleCategoryComponent.SampleCategoryEditor;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiBeanUIModel;
import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler;
import fr.ifremer.tutti.ui.swing.util.TuttiBeanMonitor;
import fr.ifremer.tutti.ui.swing.util.TuttiUI;
-import fr.ifremer.shared.application.swing.computable.ComputableDataTableCell.TuttiComputedOrNotDataTableCellEditor;
import jaxx.runtime.SwingUtil;
import jaxx.runtime.swing.editor.cell.NumberCellEditor;
import org.apache.commons.collections.CollectionUtils;
@@ -132,20 +130,8 @@
*/
private final TuttiBeanMonitor<R> rowMonitor;
- /**
- * Persistence service.
- *
- * @since 0.2
- */
- protected final PersistenceService persistenceService;
+ protected AbstractTuttiTableUIHandler(String... properties) {
- protected AbstractTuttiTableUIHandler(TuttiUIContext context,
- UI ui,
- String... properties) {
- super(context, ui);
-
- this.persistenceService = context.getPersistenceService();
-
rowMonitor = new TuttiBeanMonitor<R>(properties);
// listen when bean is changed
1
0
28 Nov '13
The Ifremer shared team is pleased to announce the shared-pom-1.0 release!
Module commun à l'écriture d'applications Ifremer.
Documentation of the project can be found here:
http://forge.codelutin.com/projects/tutti/ifremer-shared-application
Changes
-------
Changes in this version include:
Changes:
o Init import from Tutti Issue: 3861. Thanks to Tony Chemit. Resolved by tchemit.
Downloads
---------
No release file deployed. (all files are deployed in the maven repository)
Maven artifacts
---------------
Artifacts are deployed in nuiton maven repository
http://maven.nuiton.org/other-releases/
Have fun!
-Ifremer shared team
1
0
r1409 - in application/trunk: . application application-swing
by maven-release@users.forge.codelutin.com 28 Nov '13
by maven-release@users.forge.codelutin.com 28 Nov '13
28 Nov '13
Author: maven-release
Date: 2013-11-28 18:46:39 +0100 (Thu, 28 Nov 2013)
New Revision: 1409
Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1409
Log:
[maven-release-plugin] prepare for next development iteration
Modified:
application/trunk/application-swing/pom.xml
application/trunk/application/pom.xml
application/trunk/pom.xml
Modified: application/trunk/application/pom.xml
===================================================================
--- application/trunk/application/pom.xml 2013-11-28 17:46:31 UTC (rev 1408)
+++ application/trunk/application/pom.xml 2013-11-28 17:46:39 UTC (rev 1409)
@@ -27,7 +27,7 @@
<parent>
<groupId>fr.ifremer.shared</groupId>
<artifactId>shared-pom</artifactId>
- <version>1.0</version>
+ <version>1.1-SNAPSHOT</version>
</parent>
<artifactId>application</artifactId>
Modified: application/trunk/application-swing/pom.xml
===================================================================
--- application/trunk/application-swing/pom.xml 2013-11-28 17:46:31 UTC (rev 1408)
+++ application/trunk/application-swing/pom.xml 2013-11-28 17:46:39 UTC (rev 1409)
@@ -27,7 +27,7 @@
<parent>
<groupId>fr.ifremer.shared</groupId>
<artifactId>shared-pom</artifactId>
- <version>1.0</version>
+ <version>1.1-SNAPSHOT</version>
</parent>
<artifactId>application-swing</artifactId>
Modified: application/trunk/pom.xml
===================================================================
--- application/trunk/pom.xml 2013-11-28 17:46:31 UTC (rev 1408)
+++ application/trunk/pom.xml 2013-11-28 17:46:39 UTC (rev 1409)
@@ -33,7 +33,7 @@
<groupId>fr.ifremer.shared</groupId>
<artifactId>shared-pom</artifactId>
- <version>1.0</version>
+ <version>1.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Ifremer shared</name>
@@ -74,12 +74,12 @@
</modules>
<scm>
- <url>http://svn.forge.codelutin.com/svn/tutti/application/tags/ifremer-shared-1.0</url>
+ <url>http://svn.forge.codelutin.com/svn/tutti/application/trunk</url>
<connection>
- scm:svn:http://svn.forge.codelutin.com/svn/tutti/application/tags/ifremer-s…
+ scm:svn:http://svn.forge.codelutin.com/svn/tutti/application/trunk
</connection>
<developerConnection>
- scm:svn:http://svn.forge.codelutin.com/svn/tutti/application/tags/ifremer-s…
+ scm:svn:http://svn.forge.codelutin.com/svn/tutti/application/trunk
</developerConnection>
</scm>
<distributionManagement>
1
0
Author: maven-release
Date: 2013-11-28 18:46:31 +0100 (Thu, 28 Nov 2013)
New Revision: 1408
Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1408
Log:
[maven-release-plugin] copy for tag ifremer-shared-1.0
Added:
application/tags/ifremer-shared-1.0/
1
0
Author: tchemit
Date: 2013-11-28 18:46:20 +0100 (Thu, 28 Nov 2013)
New Revision: 1407
Url: http://forge.codelutin.com/projects/tutti/repository/revisions/1407
Log:
for releases
Added:
application/tags/
1
0