Isis-fish-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
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
March 2011
- 2 participants
- 76 discussions
r3163 - isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/simulator/launcher
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
16 Mar '11
Author: chatellier
Date: 2011-03-16 17:00:05 +0000 (Wed, 16 Mar 2011)
New Revision: 3163
Log:
Update nuiton-utils (MD5)
Modified:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java 2011-03-16 16:59:34 UTC (rev 3162)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/simulator/launcher/SSHSimulatorLauncher.java 2011-03-16 17:00:05 UTC (rev 3163)
@@ -27,6 +27,7 @@
import static org.nuiton.i18n.I18n._;
+import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
@@ -44,7 +45,9 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.util.FileUtil;
-import org.nuiton.util.MD5;
+import org.nuiton.util.MD5InputStream;
+import org.nuiton.util.MD5OutputStream;
+import org.nuiton.util.StringUtil;
import org.nuiton.util.ZipUtil;
import com.jcraft.jsch.JSch;
@@ -764,7 +767,7 @@
}
if (!StringUtils.isEmpty(md5sum)) {
- String localMd5 = MD5.asHex(MD5.getHash(localFile));
+ String localMd5 = StringUtil.asHex(MD5InputStream.hash(new BufferedInputStream(new FileInputStream(localFile))));
if (!localMd5.equals(md5sum)) {
if (log.isWarnEnabled()) {
log.warn("Warning md5 checksum failed (got " + localMd5 + ", expected : " + md5sum + ")");
1
0
r3162 - isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
16 Mar '11
Author: chatellier
Date: 2011-03-16 16:59:34 +0000 (Wed, 16 Mar 2011)
New Revision: 3162
Log:
Begin simulator and sensitivity simulation launching
Modified:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/SimulationUI.jaxx
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/SimulationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/SimulationUI.jaxx 2011-03-16 16:58:55 UTC (rev 3161)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/SimulationUI.jaxx 2011-03-16 16:59:34 UTC (rev 3162)
@@ -19,13 +19,29 @@
-->
<JPanel layout='{new BorderLayout()}' abstract="true">
+ <fr.ifremer.isisfish.datastore.RegionStorage id="regionStorage" javaBean="null" />
+
<script><![CDATA[
-
import fr.ifremer.isisfish.ui.simulator.SimulAction;
+ import java.beans.PropertyChangeEvent;
+ import java.beans.PropertyChangeListener;
+ protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_REGION_STORAGE, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ regionStorageChanged();
+ }
+ });
+ }
+
/**
* Refresh all simulation launch UI.
*/
+ protected abstract void regionStorageChanged();
+
+ /**
+ * Refresh all simulation launch UI.
+ */
protected abstract void refresh();
/**
1
0
r3161 - isis-fish/branches/3.3.1/src/main/xmi
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
16 Mar '11
Author: chatellier
Date: 2011-03-16 16:58:55 +0000 (Wed, 16 Mar 2011)
New Revision: 3161
Log:
add contexable tag value (to extends TopiaEntityContextable)
Modified:
isis-fish/branches/3.3.1/src/main/xmi/isis-fish.properties
Modified: isis-fish/branches/3.3.1/src/main/xmi/isis-fish.properties
===================================================================
--- isis-fish/branches/3.3.1/src/main/xmi/isis-fish.properties 2011-03-16 16:57:13 UTC (rev 3160)
+++ isis-fish/branches/3.3.1/src/main/xmi/isis-fish.properties 2011-03-16 16:58:55 UTC (rev 3161)
@@ -31,3 +31,26 @@
model.tagvalue.java.lang.String=text
model.tagvalue.hibernateProxyInterface=none
model.tagvalue.constantPrefix=PROPERTY_
+fr.ifremer.isisfish.entities.ActiveRule.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Cell.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.EffortDescription.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Equation.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.FisheryRegion.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Gear.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Metier.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.MetierSeasonInfo.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Population.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.PopulationGroup.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.PopulationSeasonInfo.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Port.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Result.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Selectivity.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Season.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.SetOfVessels.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Species.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Strategy.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.StrategyMonthInfo.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.TargetSpecies.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.TripType.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.VesselType.class.tagvalue.contextable=true
+fr.ifremer.isisfish.entities.Zone.class.tagvalue.contextable=true
\ No newline at end of file
1
0
r3160 - in isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui: sensitivity simulator
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
16 Mar '11
Author: chatellier
Date: 2011-03-16 16:57:13 +0000 (Wed, 16 Mar 2011)
New Revision: 3160
Log:
Begin simulator and sensitivity simulation launching
Added:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityInputHandler.java
Removed:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityNavigationTreeSelectionAdapter.java
Modified:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityAction.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/AdvancedParamsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ExportUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/PreScriptsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ResultChoiceUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooser.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulUI.jaxx
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityAction.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityAction.java 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityAction.java 2011-03-16 16:57:13 UTC (rev 3160)
@@ -27,12 +27,11 @@
import static org.nuiton.i18n.I18n._;
-import fr.ifremer.isisfish.simulator.sensitivity.domain.EquationContinuousDomain;
-import fr.ifremer.isisfish.ui.simulator.SimulAction;
import java.io.Serializable;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
+
import javax.swing.JComponent;
import javax.swing.JOptionPane;
@@ -40,8 +39,17 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.math.matrix.MatrixND;
+import org.nuiton.topia.TopiaContext;
import org.nuiton.topia.persistence.TopiaEntity;
+import org.nuiton.topia.persistence.TopiaEntityAbstract;
+import org.nuiton.topia.persistence.TopiaEntityContextable;
+import fr.ifremer.isisfish.IsisFishDAOHelper;
+import fr.ifremer.isisfish.entities.Equation;
+import fr.ifremer.isisfish.entities.EquationDAO;
+import fr.ifremer.isisfish.simulator.sensitivity.domain.EquationContinuousDomain;
+import fr.ifremer.isisfish.ui.simulator.SimulAction;
+
/**
* Action for sensitivity package.
*
@@ -73,7 +81,7 @@
try {
EquationContinuousPanelUI equationPanel = (EquationContinuousPanelUI) panel;
- TopiaEntity bean = equationPanel.getBean();
+ TopiaEntityContextable bean = (TopiaEntityContextable)equationPanel.getBean();
//String methodSet = equationPanel.getMethodSet();
String property = equationPanel.getBeanProperty();
property = StringUtils.capitalize(property) + "Content";
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityInputHandler.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityInputHandler.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityInputHandler.java 2011-03-16 16:57:13 UTC (rev 3160)
@@ -0,0 +1,149 @@
+/*
+ * #%L
+ *
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui.sensitivity;
+
+import java.awt.BorderLayout;
+
+import javax.swing.event.TreeSelectionEvent;
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.TreeModel;
+import javax.swing.tree.TreePath;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.nuiton.topia.TopiaContext;
+import org.nuiton.topia.persistence.TopiaEntityContextable;
+
+import fr.ifremer.isisfish.IsisFishRuntimeException;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.ui.input.InputContentUI;
+import fr.ifremer.isisfish.ui.input.InputHandler;
+import fr.ifremer.isisfish.ui.input.InputUI;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeHelper;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeRenderer;
+
+/**
+ * Handler for sensitivity tab ui (fishery region factors).
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class SensitivityInputHandler extends InputHandler {
+
+ /** Class logger. */
+ private static Log log = LogFactory.getLog(SensitivityInputHandler.class);
+
+ /**
+ *
+ * @param sensitivityTabUI
+ */
+ public void loadFisheryRegionTree(SensitivityTabUI sensitivityTabUI) {
+ FisheryRegion fisheryRegion = sensitivityTabUI.getFisheryRegion();
+
+ if (fisheryRegion == null) {
+ // show empty region ui
+ sensitivityTabUI.getCardlayoutPrincipal().show(sensitivityTabUI.getInputPanePrincipal(),"none");
+ TreeModel model = new DefaultTreeModel(null);
+ sensitivityTabUI.getFisheryRegionTree().setModel(model);
+ }
+ else {
+ // init tree model loader with fishery region
+ FisheryTreeHelper treeHelper = new FisheryTreeHelper();
+ FisheryDataProvider dataProvider = new FisheryDataProvider(fisheryRegion);
+ treeHelper.setDataProvider(dataProvider);
+ TreeModel model = treeHelper.createTreeModel(fisheryRegion);
+ sensitivityTabUI.getFisheryRegionTree().setModel(model);
+ sensitivityTabUI.getFisheryRegionTree().setCellRenderer(new FisheryTreeRenderer(dataProvider));
+ treeHelper.setUI(sensitivityTabUI.getFisheryRegionTree(), true, false, null);
+
+ // global context value : fisheryRegion, regionStorage, treeHelper
+ sensitivityTabUI.setContextValue(treeHelper);
+ sensitivityTabUI.setContextValue(model);
+
+ sensitivityTabUI.getCardlayoutPrincipal().show(sensitivityTabUI.getInputPanePrincipal(),"normale");
+ }
+ }
+
+ /**
+ * Changement de selection dans l'arbre de la pecherie.
+ *
+ * @param sensitivityTabUI
+ * @param event
+ */
+ public void nodeSelectionChanged(SensitivityTabUI sensitivityTabUI, TreeSelectionEvent event) {
+
+ TreePath newTreePath = event.getNewLeadSelectionPath();
+
+ if (newTreePath != null) {
+ Object lastTreePath = newTreePath.getLastPathComponent();
+ if (lastTreePath instanceof FisheryTreeNode) {
+ FisheryTreeNode isisTreeNode = (FisheryTreeNode)lastTreePath;
+
+ Class<?> internalClass = isisTreeNode.getInternalClass();
+
+ // noeud qui n'en charge pas d'autres (= un bean)
+ TopiaEntityContextable topiaEntity = null;
+ String topiaId = isisTreeNode.getId();
+
+ try {
+ if (isisTreeNode.isStaticNode()) {
+ FisheryRegion fisheryRegion = sensitivityTabUI.getContextValue(FisheryRegion.class);
+ TopiaContext topiaContext = fisheryRegion.getTopiaContext();
+ topiaEntity = (TopiaEntityContextable)topiaContext.findByTopiaId(topiaId);
+ }
+
+ InputContentUI inputContentUI = getUIInstanceForBeanClass(internalClass, sensitivityTabUI);
+
+ // mandatory set
+ inputContentUI.getVerifier().reset(); // before set bean !!!
+ if (topiaEntity != null) {
+ inputContentUI.getVerifier().addCurrentEntity(topiaEntity);
+ inputContentUI.getVerifier().setInputContentUI(inputContentUI);
+ }
+
+ inputContentUI.setBean((TopiaEntityContextable)topiaEntity);
+ inputContentUI.setActive(topiaEntity != null);
+ inputContentUI.setActionButtons();
+ inputContentUI.setLayer(true);
+
+ // add initialized ui to panel
+ sensitivityTabUI.getCardlayoutPrincipal().show(sensitivityTabUI.getInputPanePrincipal(), "normale");
+ sensitivityTabUI.getInputPane().removeAll();
+ sensitivityTabUI.getInputPane().add(inputContentUI, BorderLayout.CENTER);
+ sensitivityTabUI.getInputPane().repaint();
+ sensitivityTabUI.getInputPane().validate();
+ } catch (Exception ex) {
+ throw new IsisFishRuntimeException("Can't display bean " + topiaId, ex);
+ }
+ }
+ }
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityInputHandler.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Deleted: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityNavigationTreeSelectionAdapter.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityNavigationTreeSelectionAdapter.java 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityNavigationTreeSelectionAdapter.java 2011-03-16 16:57:13 UTC (rev 3160)
@@ -1,231 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, CodeLutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.sensitivity;
-
-import static org.nuiton.i18n.I18n._;
-import fr.ifremer.isisfish.entities.Cell;
-import fr.ifremer.isisfish.entities.FisheryRegion;
-import fr.ifremer.isisfish.entities.Gear;
-import fr.ifremer.isisfish.entities.Metier;
-import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.Port;
-import fr.ifremer.isisfish.entities.SetOfVessels;
-import fr.ifremer.isisfish.entities.Species;
-import fr.ifremer.isisfish.entities.TripType;
-import fr.ifremer.isisfish.entities.VesselType;
-import fr.ifremer.isisfish.entities.Zone;
-import fr.ifremer.isisfish.ui.input.*;
-import jaxx.runtime.Decorator;
-import jaxx.runtime.JAXXContextEntryDef;
-import jaxx.runtime.swing.CardLayout2;
-import jaxx.runtime.swing.JAXXTree;
-import jaxx.runtime.swing.navigation.NavigationTreeModel;
-import jaxx.runtime.swing.navigation.NavigationTreeModel.NavigationTreeNode;
-import jaxx.runtime.swing.navigation.NavigationTreeModelBuilder;
-import jaxx.runtime.swing.navigation.NavigationTreeModelBuilder.ChildBuilder;
-import jaxx.runtime.swing.navigation.NavigationTreeSelectionAdapterWithCardLayout;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.nuiton.topia.persistence.TopiaEntity;
-
-import javax.swing.JPanel;
-import javax.swing.event.TreeSelectionEvent;
-import java.awt.Component;
-import jaxx.runtime.PropertyDecorator;
-
-/** @author letellier */
-public class SensitivityNavigationTreeSelectionAdapter extends NavigationTreeSelectionAdapterWithCardLayout {
-
- /** to use log facility, just put in your code: log.info(\"...\"); */
- static private final Log log = LogFactory.getLog(SensitivityNavigationTreeSelectionAdapter.class);
-
- protected NavigationTreeNode currentNode = null;
- protected InputContentUI currentUI = null;
- protected TopiaEntity currentEntity = null;
-
- public SensitivityNavigationTreeSelectionAdapter(SensitivityTabUI context) {
- super(SensitivityTabUI.class, null, context, Strategy.PER_UI_TYPE);
-
- if (context.getNavigation() == null) {
- throw new IllegalArgumentException("could not have a null 'navigation' in ui " + context);
- }
-
- // register in tree this listener
- context.getNavigation().addTreeSelectionListener(this);
- }
-
- @Override
- protected JPanel getContentContainer() {
- return ((SensitivityTabUI) context).getInputPane();
- }
-
- @Override
- protected CardLayout2 getContentLayout() {
- return ((SensitivityTabUI) context).getCardlayout();
- }
-
- @Override
- protected NavigationTreeModel getNavigationTreeModel() {
- return (NavigationTreeModel) ((SensitivityTabUI) context).getNavigation().getModel();
- }
-
- @Override
- protected void goBackToPreviousNode(TreeSelectionEvent event, Exception e) {
- if (e != null) {
- if (log.isErrorEnabled()) {
- log.error("Go bak to previous node", e);
- }
- }
- // go back to previous node
- // returnToPreviousNode(getNavigationTree(), event);
- }
-
-
- protected JAXXTree getNavigationTree() {
- return ((SensitivityTabUI) context).getNavigation();
- }
-
- @Override
- protected void openUI(Component newUI, NavigationTreeNode node) throws Exception {
- super.openUI(newUI, node);
- // apply refresh method (should a contract for all this ui with a method refresh...)
- try {
- currentUI = (InputContentUI) newUI;
- if (currentUI != null){
- currentUI.setSensitivity(true);
- context.getContextValue(InputSaveVerifier.class).addCurrentPanel(currentUI);
- currentUI.setLayer(true);
- // tabbed ui hack
- currentUI.setActionButtons();
- }
- currentNode = node;
- } catch (Exception e) {
- log.debug(e.getMessage(), e);
- }
- }
-
- @Override
- protected boolean closeUI(TreeSelectionEvent event, Component component) throws Exception {
- boolean exit = true;
- return exit;
- }
-
- @Override
- protected void addSelectedBeanInContext(NavigationTreeNode node, Object data) {
- if (log.isDebugEnabled()) {
- log.debug("find data for contextPath <" + node.getContextPath() + "> : " + (data == null ? null : data.getClass()));
- }
- InputSaveVerifier verif = context.getContextValue(InputSaveVerifier.class);
- verif.removeAllEntity();
- if (TopiaEntity.class.isInstance(data)){
- verif.addCurrentEntity((TopiaEntity) data);
- }
- else{
- verif.addCurrentEntity(null);
- }
-// verif.refreshAll();
- verif.setCurrentNode(node);
- }
-
- public static NavigationTreeModel getTreeModel(String regionName, FisheryRegion fisheryRegion) {
-
- NavigationTreeModelBuilder builder = new NavigationTreeModelBuilder("/");
-
- if (regionName == null) {
- return null;
- }
-
- ChildBuilder<TopiaEntity> childBuilder = new ChildBuilder<TopiaEntity>(builder) {
-
- Decorator<? extends TopiaEntity> decorator;
-
- @Override
- public void init(Class<? extends TopiaEntity> klass) {
- decorator = jaxx.runtime.PropertyDecorator.newDecorator(klass, "name");
- }
-
- @Override
- public Decorator<? extends TopiaEntity> getDecorator(TopiaEntity child) {
- return decorator;
- }
-
- @Override
- public String getJXPath(TopiaEntity child) {
- return "..[@topiaId=\"" + child.getTopiaId() + "\"]";
- }
-
- @Override
- public String getNavigationPath(TopiaEntity child) {
- return child.getTopiaId();
- }
- };
-
- try {
-
- NavigationTreeNode root = builder.build(null, regionName, JAXXContextEntryDef.newDef(FisheryRegion.class), "$root", FisheryRegionUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.cells"), "../cell", "$cells", CellUI.class, null),
- true, Cell.class, fisheryRegion.getCell(), CellUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.zones"), "../zone", "$zones", ZoneUI.class, null),
- true, Zone.class, fisheryRegion.getZone(), ZoneUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.ports"), "../port", "$ports", PortUI.class, null),
- true, Port.class, fisheryRegion.getPort(), PortUI.class, null);
-
- NavigationTreeNode species = builder.build(root, _("isisfish.input.tree.species"), "../species", "$species", SpeciesUI.class, null);
-
- for (Species specie : fisheryRegion.getSpecies()) {
- NavigationTreeNode speciesChild = builder.build(species, PropertyDecorator.newDecorator(Species.class, "name"), "..[@topiaId=\"" + specie.getTopiaId() + "\"]", specie.getTopiaId(), SpeciesUI.class, null);
- NavigationTreeNode populations = builder.build(speciesChild, _("isisfish.input.tree.populations"), "../population", "$populations", PopulationUI.class, null);
- childBuilder.build(populations, true, Population.class, specie.getPopulation(), PopulationUI.class, null);
- }
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.gears"), "../gear", "$gears", GearUI.class, null),
- true, Gear.class, fisheryRegion.getGear(), GearUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.metiers"), "../metier", "$metiers", MetierUI.class, null),
- true, Metier.class, fisheryRegion.getMetier(), MetierUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.triptypes"), "../tripType", "$tripTypes", TripTypeUI.class, null),
- true, TripType.class, fisheryRegion.getTripType(), TripTypeUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.vesseltypes"), "../vesselType", "$vesselTypes", VesselTypeUI.class, null),
- true, VesselType.class, fisheryRegion.getVesselType(), VesselTypeUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.setofvessels"), "../setOfVessels", "$setOfVessels", SetOfVesselsUI.class, null),
- true, SetOfVessels.class, fisheryRegion.getSetOfVessels(), SetOfVesselsUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.strategies"), "../strategy", "$strategies", StrategyUI.class, null),
- true, fr.ifremer.isisfish.entities.Strategy.class, fisheryRegion.getStrategy(), StrategyUI.class, null);
-
- } catch (Exception ex) {
- log.error(ex.getMessage(), ex);
- }
- return builder.getModel();
- }
-
-}
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, CodeLutin
+ Copyright (C) 2009 - 2011 Ifremer, CodeLutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,18 +22,12 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<JPanel layout='{new BorderLayout()}'>
+<fr.ifremer.isisfish.ui.NavigationUI>
- <javax.swing.tree.DefaultTreeSelectionModel id='navigationSelectionModel' selectionMode='{javax.swing.tree.TreeSelectionModel.SINGLE_TREE_SELECTION}'/>
+ <SensitivityInputHandler id="handler" />
- <fr.ifremer.isisfish.ui.input.InputNavigationTreeCellRenderer id='navigationTreeCellRenderer' constructorParams='this'/>
+ <fr.ifremer.isisfish.entities.FisheryRegion id='fisheryRegion' javaBean='null'/>
- <jaxx.runtime.swing.CardLayout2 id='cardlayout'/>
-
- <java.awt.CardLayout id='cardlayoutPrincipal'/>
-
- <fr.ifremer.isisfish.entities.FisheryRegionImpl id='region' javaBean='null'/>
-
<script><![CDATA[
import javax.swing.JPopupMenu;
import javax.swing.tree.DefaultTreeModel;
@@ -50,37 +44,12 @@
import fr.ifremer.isisfish.simulator.sensitivity.group.FactorGroup;
import fr.ifremer.isisfish.ui.sensitivity.model.FactorTreeModel;
import fr.ifremer.isisfish.ui.sensitivity.model.FactorTreeCellRenderer;
-import jaxx.runtime.swing.navigation.NavigationTreeModel;
-import jaxx.runtime.swing.navigation.NavigationTreeModel.NavigationTreeNode;
-import jaxx.runtime.swing.navigation.NavigationUtil;
-// end code constructor
-getVerifier().setSensPanel(this);
-new fr.ifremer.isisfish.ui.sensitivity.SensitivityNavigationTreeSelectionAdapter(this);
+protected void $afterCompleteSetup() {
+ // end code constructor
+ getVerifier().setSensPanel(this);
+}
-factorsTree.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseClicked(MouseEvent e) {
- // clic droit
- if (e.getButton() == MouseEvent.BUTTON3) {
- JPopupMenu menu = new JPopupMenu();
- JMenuItem menuItemDelete = new JMenuItem(_("isisfish.common.delete"));
- menuItemDelete.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- deleteSelectedFactors();
- }
- });
- menu.add(menuItemDelete);
- menu.show(e.getComponent(), e.getX(), e.getY());
- }
- else {
- // autre clic
- factorSelected();
- }
- }
-});
-
protected InputAction getInputAction() {
return getContextValue(InputAction.class);
}
@@ -97,6 +66,34 @@
return getContextValue(RegionStorage.class);
}
+/**
+ * Mouse click on factors tree.
+ *
+ * <ul>
+ * <li>normal click : factor edit</li>
+ * <li>right click : popup menu</li>
+ * </ul>
+ */
+public void factorsTreeMouseClicked(MouseEvent e) {
+ // clic droit
+ if (e.getButton() == MouseEvent.BUTTON3) {
+ JPopupMenu menu = new JPopupMenu();
+ JMenuItem menuItemDelete = new JMenuItem(_("isisfish.common.delete"));
+ menuItemDelete.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ deleteSelectedFactors();
+ }
+ });
+ menu.add(menuItemDelete);
+ menu.show(e.getComponent(), e.getX(), e.getY());
+ }
+ else {
+ // autre clic
+ factorSelected();
+ }
+}
+
protected void factorSelected() {
Object selectedObject = factorsTree.getSelectionValue();
if (selectedObject != null) {
@@ -112,7 +109,7 @@
else {
// method 2
- JComponent component2 = EditorHelper.getEditorForFactor(selectedFactor, getRegion().getTopiaContext());
+ JComponent component2 = EditorHelper.getEditorForFactor(selectedFactor, getFisheryRegion().getTopiaContext());
if (component2 != null) {
if (log.isDebugEnabled()) {
log.debug("Component found is " + component2);
@@ -131,48 +128,13 @@
}
}
public void setTreeModel() {
- if (getRegion() != null) {
+ if (getFisheryRegion() != null) {
getCardlayoutPrincipal().show(inputPanePrincipal,"normale");
- String regionName = getRegion().getName();
- setContextValue(getRegion());
- NavigationTreeModel model = SensitivityNavigationTreeSelectionAdapter.getTreeModel(regionName, getRegion());
-
- setContextValue(model);
- navigation.setModel(model);
- setTreeSelection("$root");
-
- /*TC-20090702 Fix bug #1772
- EC-20090706 no working solution found
- model.nodeChanged(model.getRoot());
- java.util.Enumeration<?> e = model.getRoot().children();
- while (e.hasMoreElements()) {
- NavigationTreeNode n = (NavigationTreeNode) e.nextElement();
- String contextPath = n.getContextPath();
- if (contextPath.equals("$root/$cells")) {
- //TC-20090702 : ce noeud est trop long a recharger
- continue;
- }
- log.debug("reload node " + contextPath);
- model.nodeChanged(n);
- java.util.Enumeration<?> e2 = n.children();
- while (e2.hasMoreElements()) {
- NavigationTreeNode n2 = (NavigationTreeNode) e2.nextElement();
- n2.getJAXXContextValue(SensitivityTabUI.this);
- }
- }*/
+ String regionName = getFisheryRegion().getName();
+ setContextValue(getFisheryRegion());
+ getHandler().loadFisheryRegionTree(this);
}
}
-public void repaintNode(String path) {
- NavigationTreeModel model = getContextValue(NavigationTreeModel.class);
- NavigationTreeNode currentNode = model.findNode(path);
- model.nodeChanged(currentNode);
-}
-public void setTreeSelection(String path) {
- NavigationTreeNode node = NavigationUtil.findNode(this, null, path);
- TreePath pathToRoot = new TreePath(getContextValue(NavigationTreeModel.class).getPathToRoot(node));
- navigation.setSelectionPath(pathToRoot);
- navigation.scrollPathToVisible(pathToRoot);
-}
protected void setInfoText(String s) {
WelcomePanelUI root = getParentContainer(WelcomePanelUI.class);
root.setStatusMessage(s);
@@ -180,7 +142,7 @@
protected void regionNull() {
getCardlayoutPrincipal().show(inputPanePrincipal,"none");
DefaultTreeModel model = new DefaultTreeModel(null);
- navigation.setModel(model);
+ fisheryRegionTree.setModel(model);
}
public void setFactorModel() {
FactorGroup factorGroup = getSimulAction().getFactorGroup();
@@ -209,20 +171,16 @@
<JSplitPane oneTouchExpandable="true" dividerLocation="200" orientation="HORIZONTAL" constraints='BorderLayout.CENTER'>
<JPanel layout='{new BorderLayout()}'>
<JSplitPane oneTouchExpandable="true" dividerLocation="400" orientation="VERTICAL" constraints='BorderLayout.CENTER'>
+ <JScrollPane>
+ <javax.swing.tree.DefaultTreeSelectionModel id='fisheryRegionTreeSelectionModel'
+ selectionMode='{javax.swing.tree.TreeSelectionModel.SINGLE_TREE_SELECTION}'/>
+ <JTree id="fisheryRegionTree" rootVisible="true" selectionRow='0'
+ selectionModel='{getFisheryRegionTreeSelectionModel()}'
+ model='{new DefaultTreeModel(null)}'
+ onValueChanged="getHandler().nodeSelectionChanged(this, event)" />
+ </JScrollPane>
<Table>
<row>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <JScrollPane>
- <JTree id="navigation" rootVisible="true" selectionRow='0'
- selectionModel='{getNavigationSelectionModel()}'
- cellRenderer='{getNavigationTreeCellRenderer()}'
- model='{new DefaultTreeModel(null)}'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- <Table>
- <row>
<cell>
<JButton icon="table.png" />
</cell>
@@ -233,17 +191,23 @@
<row>
<cell columns='2' fill="both" weightx='1.0' weighty='1.0'>
<JScrollPane>
- <JTree id="factorsTree" rootVisible="true" selectionRow='0'
- model='{new DefaultTreeModel(null)}' cellRenderer='{new FactorTreeCellRenderer()}'/>
+ <JAXXTree id="factorsTree" rootVisible="true" selectionRow='0'
+ model='{new DefaultTreeModel(null)}'
+ cellRenderer='{new FactorTreeCellRenderer()}'
+ onMouseClicked='factorsTreeMouseClicked(event)'/>
</JScrollPane>
</cell>
</row>
</Table>
</JSplitPane>
</JPanel>
+ <java.awt.CardLayout id='cardlayoutPrincipal'/>
<JPanel id='inputPanePrincipal' layout='{getCardlayoutPrincipal()}'>
- <fr.ifremer.isisfish.ui.input.NoneUI id='noneUI' constraints='"none"'/>
+ <JPanel layout='{new BorderLayout()}' constraints='"none"'>
+ <JLabel id='none' horizontalAlignment="0" text="isisfish.input.selectRegion" constraints='BorderLayout.CENTER'/>
+ </JPanel>
+ <jaxx.runtime.swing.CardLayout2 id='cardlayout'/>
<JPanel id="inputPane" layout='{getCardlayout()}' constraints='"normale"'/>
</JPanel>
</JSplitPane>
-</JPanel>
\ No newline at end of file
+</fr.ifremer.isisfish.ui.NavigationUI>
\ No newline at end of file
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityUI.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, CodeLutin
+ Copyright (C) 2009 - 2011 Ifremer, CodeLutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -23,53 +23,63 @@
#L%
-->
<fr.ifremer.isisfish.ui.SimulationUI>
+
<script><![CDATA[
- import jaxx.runtime.JAXXInitialContext;
- import fr.ifremer.isisfish.ui.input.InputAction;
- import fr.ifremer.isisfish.ui.input.InputSaveVerifier;
+ import fr.ifremer.isisfish.ui.input.InputAction;
+ import fr.ifremer.isisfish.ui.input.InputSaveVerifier;
+ import jaxx.runtime.context.JAXXInitialContext;
- @Override
- public void refresh() {
- paramsUI.refresh();
- }
+ /**
+ * Refresh all simulation launch UI.
+ */
+ @Override
+ protected void regionStorageChanged() {
+ boolean enabled = getRegionStorage() != null;
+ bodyTabbedPane.setEnabledAt(1, enabled);
+ bodyTabbedPane.setEnabledAt(2, enabled);
+ }
- @Override
- public void selectParametersTab() {
- bodyTabbedPane.setSelectedIndex(0);
- }
+ @Override
+ public void refresh() {
+ paramsUI.refresh();
+ }
- @Override
- public void setEnabledPrescriptTab(boolean selected) {
- // no prescript in AS
- }
+ @Override
+ public void selectParametersTab() {
+ bodyTabbedPane.setSelectedIndex(0);
+ }
- @Override
- public void setEnabledAnalysePlanTab(boolean selected) {
- // no analyse plan in AS
- }
- ]]>
- </script>
+ @Override
+ public void setEnabledPrescriptTab(boolean selected) {
+ // no prescript in AS
+ }
+
+ @Override
+ public void setEnabledAnalysePlanTab(boolean selected) {
+ // no analyse plan in AS
+ }
+ ]]></script>
<JTabbedPane id="bodyTabbedPane">
<tab title='isisfish.params.title'>
- <fr.ifremer.isisfish.ui.simulator.ParamsUI id='paramsUI' sensitivity='{true}' constructorParams='this'/>
+ <fr.ifremer.isisfish.ui.simulator.ParamsUI id='paramsUI' sensitivity='{true}' regionStorage="{getRegionStorage()}" constructorParams='this'/>
</tab>
- <tab title='isisfish.sensitivity.title'>
+ <tab title='isisfish.sensitivity.title' enabled="false">
<fr.ifremer.isisfish.ui.sensitivity.SensitivityTabUI id="sensitivityTabUI"
constructorParams='new JAXXInitialContext().add(new InputAction()).add(new SensitivityAction()).add(new InputSaveVerifier()).add(this)'/>
</tab>
- <tab title='isisfish.sensitivityChooser.title'>
+ <tab title='isisfish.sensitivityChooser.title' enabled="false">
<SensitivityChooserUI id="sensitivityChooserUI" constructorParams='this'/>
</tab>
- <tab id="exportUITab" title='isisfish.export.title'>
+ <tab title='isisfish.export.title'>
<fr.ifremer.isisfish.ui.simulator.ExportUI id="exportUI" constructorParams='this'/>
</tab>
- <tab id="resultChoiceUITab" title='isisfish.resultChoice.title'>
+ <tab title='isisfish.resultChoice.title'>
<fr.ifremer.isisfish.ui.simulator.ResultChoiceUI id="resultChoiceUI" constructorParams='this'/>
</tab>
- <tab id="advancedParamsUITab" title='isisfish.advancedParameters.title'>
+ <tab title='isisfish.advancedParameters.title'>
<fr.ifremer.isisfish.ui.simulator.AdvancedParamsUI id="advancedParamsUI" constructorParams='this'/>
</tab>
- <tab id="secondPassUITab" title='isisfish.sensitivity.secondpass.title'>
+ <tab title='isisfish.sensitivity.secondpass.title'>
<SensitivitySecondPassUI id="sensitivitySecondPassUI" constructorParams='this'/>
</tab>
</JTabbedPane>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/AdvancedParamsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/AdvancedParamsUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/AdvancedParamsUI.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, CodeLutin
+ Copyright (C) 2009 - 2011 Ifremer, CodeLutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -31,17 +31,19 @@
import javax.swing.table.DefaultTableModel;
import java.util.Map.Entry;
- /**
- * Listener to enable/disable remove button.
- */
- tableTagValues.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
- @Override
- public void valueChanged(ListSelectionEvent e) {
- setRemove(tableTagValues.getSelectedRow() != -1);
- }
- });
+ protected void $afterCompleteSetup() {
+ /**
+ * Listener to enable/disable remove button.
+ */
+ tableTagValues.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
+ @Override
+ public void valueChanged(ListSelectionEvent e) {
+ setRemove(tableTagValues.getSelectedRow() != -1);
+ }
+ });
- refresh();
+ refresh();
+ }
public void refresh() {
setTableTagValues();
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ExportUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ExportUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ExportUI.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2005 - 2010 Ifremer, CodeLutin
+ Copyright (C) 2005 - 2011 Ifremer, CodeLutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -28,7 +28,9 @@
import fr.ifremer.isisfish.ui.models.export.ExportNameListModel;
import javax.swing.event.ListSelectionEvent;
- refresh();
+ protected void $afterCompleteSetup() {
+ refresh();
+ }
protected SimulAction getSimulAction() {
return getContextValue(SimulAction.class);
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ParamsUI.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -1,32 +1,18 @@
-<!--
- #%L
- IsisFish
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2009 - 2010 Ifremer, CodeLutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as
- published by the Free Software Foundation, either version 2 of the
- License, or (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public
- License along with this program. If not, see
- <http://www.gnu.org/licenses/gpl-2.0.html>.
- #L%
- -->
+<!-- #%L IsisFish $Id$ $HeadURL$ %% Copyright (C) 2009 - 2011 Ifremer, CodeLutin,
+ Chatellier Eric %% This program is free software: you can redistribute it
+ and/or modify it under the terms of the GNU General Public License as published
+ by the Free Software Foundation, either version 2 of the License, or (at
+ your option) any later version. This program is distributed in the hope that
+ it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+ of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
+ Public License for more details. You should have received a copy of the GNU
+ General Public License along with this program. If not, see <http://www.gnu.org/licenses/gpl-2.0.html>.
+ #L% -->
<Table>
- <Boolean id="regionLoaded" javaBean="false" />
+ <fr.ifremer.isisfish.datastore.RegionStorage id="regionStorage" javaBean="null" />
<!-- ui state when editing -->
- <Boolean id='sensitivity' javaBean='false'/>
+ <Boolean id='sensitivity' javaBean='false' />
<script><![CDATA[
import java.util.EventObject;
@@ -38,7 +24,6 @@
import fr.ifremer.isisfish.entities.Population;
import fr.ifremer.isisfish.entities.Strategy;
import fr.ifremer.isisfish.entities.FisheryRegion;
-import fr.ifremer.isisfish.entities.FisheryRegionImpl;
import fr.ifremer.isisfish.ui.SimulationUI;
import fr.ifremer.isisfish.ui.WelcomePanelUI;
import fr.ifremer.isisfish.ui.WelcomeTabUI;
@@ -49,15 +34,18 @@
import fr.ifremer.isisfish.ui.models.rule.RuleParametersTableModel;
import fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellEditor;
import fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellRenderer;
+import fr.ifremer.isisfish.ui.sensitivity.FactorWizardUI;
import fr.ifremer.isisfish.ui.sensitivity.SensitivityUI;
import fr.ifremer.isisfish.rule.Rule;
import fr.ifremer.isisfish.simulator.launcher.SimulatorLauncher;
import fr.ifremer.isisfish.simulator.launcher.SimulationService;
import fr.ifremer.isisfish.simulator.launcher.SimulationJob;
import fr.ifremer.isisfish.simulator.launcher.SimulationServiceListener;
+import fr.ifremer.isisfish.simulator.sensitivity.Factor;
import org.nuiton.topia.TopiaException;
import org.nuiton.topia.TopiaContext;
import org.nuiton.math.matrix.MatrixND;
+import org.nuiton.math.matrix.gui.MatrixPanelEditor;
import org.apache.commons.lang.ArrayUtils;
// instances variables déclaration
@@ -74,10 +62,10 @@
};
RegionStorage.addStorageChangeListener(regionStorageListener);
-// end constructor code
simulationListener = new SimulationServiceListener() {
@Override
public void simulationStart(SimulationService simService, SimulationJob job) {
+
}
@Override
@@ -87,6 +75,7 @@
@Override
public void clearJobDone(SimulationService simService) {
+
}
}
@@ -97,6 +86,8 @@
fieldSimulParamsDesc.setText(simulAction.getSimulationParameter().getDescription());
setListSimulParamsStrategiesItems();
setListSimulParamsPopulationsItems();
+
+ // rule component
ruleChooser.setRegionStorage(simulAction.getRegionStorage());
}
@@ -114,9 +105,7 @@
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
- simulAction.regionChange(selected);
- // not sure that setRegionLoaded is at the better place
- setRegionLoaded(true);
+ simulAction.regionChange(ParamsUI.this, selected);
refresh();
setSensitivityTabRegion();
getParentContainer(WelcomePanelUI.class).setStatusMessage(_("isisfish.message.region.loaded"));
@@ -143,7 +132,7 @@
// FIXME this transation in nerver closed
TopiaContext tx = simulAction.getRegionStorage().getStorage().beginTransaction();
FisheryRegion fisheryRegion = RegionStorage.getFisheryRegion(tx);
- getParentContainer(SensitivityUI.class).getSensitivityTabUI().setRegion((FisheryRegionImpl) fisheryRegion);
+ getParentContainer(SensitivityUI.class).getSensitivityTabUI().setFisheryRegion(fisheryRegion);
getParentContainer(SensitivityUI.class).getSensitivityTabUI().setTreeModel();
} catch (StorageException ex) {
if (log.isErrorEnabled()) {
@@ -189,7 +178,6 @@
fieldSimulParamsNbAnnees.setText(String.valueOf(simulAction.getNumberOfYear()));
setPreScript();
setAnalysePlan();
- //setFactorRegion();
setExportSens();
setSensitivityCalculator();
setFactor();
@@ -286,10 +274,30 @@
for (Object selectedPopulationValue : selectedPopulationsValues) {
Population selectedPopulation = (Population)selectedPopulationValue;
- org.nuiton.math.matrix.gui.MatrixPanelEditor matrixPanel = new org.nuiton.math.matrix.gui.MatrixPanelEditor();
+ // TODO add change listener on matrix panel !!!
+ final MatrixPanelEditor matrixPanel = new MatrixPanelEditor();
MatrixND populationEffectives = simulAction.getSimulationParameter().getNumberOf(selectedPopulation);
matrixPanel.setMatrix(populationEffectives);
- populationEffectivesTabbedPane.add(matrixPanel, _("isisfish.params.populationEffectives", selectedPopulation.getName()));
+
+ JPanel matrixPanelComponent = new JPanel(new BorderLayout());
+ matrixPanelComponent.add(matrixPanel, BorderLayout.CENTER);
+
+ // add addFactorButton with matrixPanel (just in sensitivity cas)
+ if (isSensitivity()) {
+ // TODO choose another name than "id"
+ matrixPanel.putClientProperty("id", selectedPopulation.getName());
+ // TODO add another thing that action
+ JButton addFactorButton = new JButton();
+ addFactorButton.setAction(new AbstractAction() {
+ public void actionPerformed(ActionEvent e) {
+ addFactorWithComponent(matrixPanel);
+ }
+ });
+ addFactorButton.setIcon(SwingUtil.createImageIcon("building_add.png"));
+ matrixPanelComponent.add(addFactorButton, BorderLayout.EAST);
+ }
+
+ populationEffectivesTabbedPane.add(matrixPanelComponent, _("isisfish.params.populationEffectives", selectedPopulation.getName()));
}
layout.show(populationEffectivesPanel, "specific");
@@ -340,6 +348,47 @@
simulAction.resetOldSimulatorNames();
fieldSimulParamsSelect.setModel(getSimulParamsSelectModel(false));
}
+
+/**
+ * Action appelée lors du clic sur les boutons a coté des composants factorisables.
+ *
+ * Contrairement à l'interface 'input', on edite ici des facteurs existants,
+ * (créé à la première demande).
+ *
+ * @param e l'event initial intersepté par le layer
+ */
+protected void addFactorWithComponent(JComponent source) {
+
+ if (log.isDebugEnabled()) {
+ log.debug("Event intercepted on " + source);
+ }
+
+ // redo this, here manage just two case
+ Factor selectedFactor = null;
+ if (source instanceof RuleChooser) {
+ selectedFactor = simulAction.getFactors().get("parameters.rules");
+ if (selectedFactor == null) {
+ selectedFactor = new Factor("parameters.rules");
+ selectedFactor.setPath("parameters.rules");
+ }
+ }
+ else {
+ if (source instanceof MatrixPanelEditor) {
+ // id here is not coherent with all other attributes (bean, beanID, method)
+ String property = (String)source.getClientProperty("id");
+ selectedFactor = simulAction.getFactors().get("parameters.population." + property);
+ selectedFactor.setPath("parameters.population." + property);
+ }
+ }
+
+ if (selectedFactor != null) {
+ FactorWizardUI wizard = new FactorWizardUI(this);
+ wizard.initExisting(source, selectedFactor);
+ wizard.pack();
+ SwingUtil.center(this, wizard);
+ wizard.setVisible(true);
+ }
+}
]]>
</script>
<row>
@@ -347,16 +396,22 @@
<Table>
<row>
<cell fill="horizontal">
- <JLabel text="isisfish.params.loadOldSimulation"/>
+ <JLabel text="isisfish.params.loadOldSimulation" />
</cell>
<cell fill="horizontal" weightx="1.0">
- <JComboBox id="fieldSimulParamsSelect" model='{getSimulParamsSelectModel()}' onActionPerformed='loadOldSimulation()'/>
+ <JComboBox id="fieldSimulParamsSelect"
+ model='{getSimulParamsSelectModel()}'
+ onActionPerformed='loadOldSimulation()' />
</cell>
<cell>
- <JButton text="isisfish.params.filter" id="buttonSimulParamsSelectFilter" onActionPerformed='selectFilter()' enabled="false"/>
+ <JButton text="isisfish.params.filter"
+ id="buttonSimulParamsSelectFilter"
+ onActionPerformed='selectFilter()' enabled="false" />
</cell>
<cell>
- <JButton text="isisfish.params.clearFilter" id="buttonSimulParamsSelectClearFilter" onActionPerformed='resetFilter()' enabled="false"/>
+ <JButton text="isisfish.params.clearFilter"
+ id="buttonSimulParamsSelectClearFilter"
+ onActionPerformed='resetFilter()' enabled="false" />
</cell>
</row>
</Table>
@@ -375,12 +430,15 @@
<Table>
<row>
<cell fill="horizontal">
- <JLabel id='lblName' text='{isSensitivity() ? _("isisfish.params.sensitivityName") : _("isisfish.params.simulationName")}'
- minimumSize='{new Dimension(195,25)}' preferredSize='{new Dimension(195,25)}' />
+ <JLabel id='lblName'
+ text='{isSensitivity() ? _("isisfish.params.sensitivityName") : _("isisfish.params.simulationName")}'
+ minimumSize='{new Dimension(195,25)}'
+ preferredSize='{new Dimension(195,25)}' />
</cell>
- <cell fill="both" weightx="1.0">
- <JTextField id="fieldSimulParamsName"/>
- <javax.swing.text.Document javaBean="fieldSimulParamsName.getDocument()"
+ <cell fill="both" weightx="1.0">
+ <JTextField id="fieldSimulParamsName" />
+ <javax.swing.text.Document
+ javaBean="fieldSimulParamsName.getDocument()"
onInsertUpdate='simulAction.setName(fieldSimulParamsName.getText())'
onRemoveUpdate='simulAction.setName(fieldSimulParamsName.getText())' />
</cell>
@@ -391,11 +449,13 @@
<Table>
<row>
<cell columns="2" fill="horizontal">
- <JLabel text="isisfish.common.region"/>
+ <JLabel text="isisfish.common.region" />
</cell>
- <cell fill="horizontal" weightx="1.0">
- <JComboBox id="fieldSimulParamsRegion" model='{new fr.ifremer.isisfish.ui.models.common.StringListModel(fr.ifremer.isisfish.datastore.RegionStorage.getRegionNames())}'
- selectedItem='{getContextValue(SimulAction.class).getSimulationParameter().getRegionName()}' onActionPerformed='regionChange()'/>
+ <cell fill="horizontal" weightx="1.0">
+ <JComboBox id="fieldSimulParamsRegion"
+ model='{new fr.ifremer.isisfish.ui.models.common.StringListModel(fr.ifremer.isisfish.datastore.RegionStorage.getRegionNames())}'
+ selectedItem='{getContextValue(SimulAction.class).getSimulationParameter().getRegionName()}'
+ onActionPerformed='regionChange()' />
</cell>
</row>
</Table>
@@ -403,16 +463,19 @@
</row>
<row>
<cell columns="4" fill="horizontal" weightx="1.0">
- <JLabel text="isisfish.params.description"/>
+ <JLabel text="isisfish.params.description" />
</cell>
</row>
<row>
- <cell columns="4" fill="both" weightx="1.0" weighty="0.3">
+ <cell columns="4" fill="both" weightx="1.0"
+ weighty="0.3">
<JScrollPane>
- <JTextArea id="fieldSimulParamsDesc" text='{simulAction.getSimulationParameter().getDescription()}'/>
- <javax.swing.text.Document javaBean="fieldSimulParamsDesc.getDocument()"
- onInsertUpdate='simulAction.getSimulationParameter().setDescription(fieldSimulParamsDesc.getText())'
- onRemoveUpdate='simulAction.getSimulationParameter().setDescription(fieldSimulParamsDesc.getText())' />
+ <JTextArea id="fieldSimulParamsDesc"
+ text='{simulAction.getSimulationParameter().getDescription()}' />
+ <javax.swing.text.Document
+ javaBean="fieldSimulParamsDesc.getDocument()"
+ onInsertUpdate='simulAction.getSimulationParameter().setDescription(fieldSimulParamsDesc.getText())'
+ onRemoveUpdate='simulAction.getSimulationParameter().setDescription(fieldSimulParamsDesc.getText())' />
</JScrollPane>
</cell>
</row>
@@ -421,11 +484,16 @@
<Table>
<row>
<cell fill="horizontal">
- <JLabel text="isisfish.params.numberYear" minimumSize='{new Dimension(140,25)}' preferredSize='{new Dimension(140,25)}'/>
+ <JLabel text="isisfish.params.numberYear"
+ minimumSize='{new Dimension(140,25)}'
+ preferredSize='{new Dimension(140,25)}' />
</cell>
<cell fill="both" weightx="1.0">
- <JTextField id="fieldSimulParamsNbAnnees" text='{simulAction.getSimulationParameter().getNumberOfYear()}'/>
- <javax.swing.text.Document javaBean="fieldSimulParamsNbAnnees.getDocument()"
+ <JTextField
+ id="fieldSimulParamsNbAnnees"
+ text='{String.valueOf(simulAction.getSimulationParameter().getNumberOfYear())}' />
+ <javax.swing.text.Document
+ javaBean="fieldSimulParamsNbAnnees.getDocument()"
onInsertUpdate='simulAction.setNumberOfYear(fieldSimulParamsNbAnnees.getText())'
onRemoveUpdate='simulAction.setNumberOfYear(fieldSimulParamsNbAnnees.getText())' />
</cell>
@@ -433,49 +501,81 @@
</Table>
</cell>
<cell columns="2" fill="horizontal" weightx="0.5">
- <JPanel/>
+ <JPanel />
</cell>
</row>
<row>
- <cell columns="4" fill="both" weightx="1.0" weighty="0.6">
- <JTabbedPane id="parametersTabbedPane" enabled="{isRegionLoaded()}">
- <tab title='{_("isisfish.params.stategiesAndPopulations")}'>
+ <cell columns="4" fill="both" weightx="1.0"
+ weighty="0.6">
+ <JTabbedPane id="parametersTabbedPane" enabled="{getRegionStorage() != null}">
+ <tab
+ title='{_("isisfish.params.stategiesAndPopulations")}'>
<Table>
<row>
<cell fill="horizontal">
- <JLabel text="isisfish.common.strategies" enabled="{isRegionLoaded()}"/>
+ <JLabel text="isisfish.common.strategies" enabled="{getRegionStorage() != null}" />
</cell>
<cell fill="horizontal">
- <JLabel text="isisfish.common.populations" enabled="{isRegionLoaded()}"/>
+ <JLabel text="isisfish.common.populations" enabled="{getRegionStorage() != null}" />
</cell>
</row>
<row>
- <cell fill="both" weightx="1" weighty="1">
+ <cell fill="both" weightx="1"
+ weighty="1">
<JScrollPane>
- <JList id="listSimulParamsStrategies" selectionMode="{javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}"
- onValueChanged='strategySelected()' enabled="{isRegionLoaded()}"/>
+ <JList id="listSimulParamsStrategies"
+ selectionMode="{javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}"
+ onValueChanged='strategySelected()'
+ enabled="{getRegionStorage() != null}" />
</JScrollPane>
</cell>
- <cell fill="both" weightx="1" weighty="1">
+ <cell fill="both" weightx="1"
+ weighty="1">
<JScrollPane>
- <JList id="listSimulParamsPopulations" selectionMode="{javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}"
- onValueChanged='populationSelected()' enabled="{isRegionLoaded()}"/>
+ <JList id="listSimulParamsPopulations"
+ selectionMode="{javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}"
+ onValueChanged='populationSelected()'
+ enabled="{getRegionStorage() != null}" />
</JScrollPane>
</cell>
</row>
<row>
- <cell fill="both" weighty="1" columns="2">
- <JPanel id="populationEffectivesPanel" layout="{new CardLayout()}">
- <JLabel text="isisfish.params.nopopulation" horizontalAlignment="center" border="{BorderFactory.createEtchedBorder()}"
- font-style="italic" constraints='"default"' enabled="{isRegionLoaded()}"/>
- <JTabbedPane id="populationEffectivesTabbedPane" constraints='"specific"' enabled="{isRegionLoaded()}"/>
+ <cell fill="both" weighty="1"
+ columns="2">
+ <JPanel
+ id="populationEffectivesPanel"
+ layout="{new CardLayout()}">
+ <JLabel text="isisfish.params.nopopulation"
+ horizontalAlignment="center"
+ border="{BorderFactory.createEtchedBorder()}"
+ font-style="italic"
+ constraints='"default"'
+ enabled="{getRegionStorage() != null}" />
+ <JTabbedPane id="populationEffectivesTabbedPane"
+ constraints='"specific"'
+ enabled="{getRegionStorage() != null}" />
</JPanel>
</cell>
</row>
</Table>
</tab>
<tab title='{_("isisfish.params.rules")}'>
- <RuleChooser id="ruleChooser" active="{isRegionLoaded()}" decorator="boxed"/>
+ <Table>
+ <row>
+ <cell fill="both" weightx="1"
+ weighty="1">
+ <RuleChooser id="ruleChooser"
+ active="{getRegionStorage() != null}" />
+ </cell>
+ <cell>
+ <JButton
+ id="addRuleFactorButton"
+ icon='{SwingUtil.createImageIcon("building_add.png")}'
+ onActionPerformed="addFactorWithComponent(ruleChooser)"
+ visible="{isSensitivity()}" />
+ </cell>
+ </row>
+ </Table>
</tab>
</JTabbedPane>
</cell>
@@ -488,15 +588,20 @@
<Table>
<row>
<cell fill="horizontal" weightx="0.3">
- <JCheckBox text="isisfish.params.usePreSimulationScript" id="fieldUseSimulPreScripts"
- selected='{simulAction.getSimulationParameter().getUsePreScript()}'
- visible='{!isSensitivity()}' onItemStateChanged='enablePreScript()'/>
+ <JCheckBox
+ text="isisfish.params.usePreSimulationScript"
+ id="fieldUseSimulPreScripts"
+ selected='{simulAction.getSimulationParameter().getUsePreScript()}'
+ visible='{!isSensitivity()}'
+ onItemStateChanged='enablePreScript()' />
</cell>
<cell fill="horizontal" weightx="0.3">
- <JCheckBox text="isisfish.params.useAnalysePlan" id="fieldSimulUseAnalysePlan"
- selected='{simulAction.getSimulationParameter().getUseAnalysePlan()}'
- visible='{!isSensitivity()}' onItemStateChanged='enableAnalysePlan()'
- enabled="{isRegionLoaded()}" />
+ <JCheckBox text="isisfish.params.useAnalysePlan"
+ id="fieldSimulUseAnalysePlan"
+ selected='{simulAction.getSimulationParameter().getUseAnalysePlan()}'
+ visible='{!isSensitivity()}'
+ onItemStateChanged='enableAnalysePlan()'
+ enabled="{getRegionStorage() != null}" />
</cell>
</row>
</Table>
@@ -507,19 +612,23 @@
<Table>
<row>
<cell>
- <JLabel text="isisfish.params.simulationLauncher"/>
+ <JLabel text="isisfish.params.simulationLauncher" />
</cell>
<cell fill="horizontal" weightx="0.4">
- <JComboBox id="comboSelLauncher" model='{new DefaultComboBoxModel(simulAction.getSimulationLauncher().toArray())}'/>
+ <JComboBox id="comboSelLauncher"
+ model='{new DefaultComboBoxModel(simulAction.getSimulationLauncher().toArray())}' />
</cell>
<cell fill="horizontal" weightx="0.4">
- <JButton id="buttonSimulParamsSimulate" text="isisfish.common.simulate"
- onActionPerformed='launchSimulation()' enabled="{isRegionLoaded()}"/>
+ <JButton id="buttonSimulParamsSimulate"
+ text="isisfish.common.simulate"
+ onActionPerformed='launchSimulation()'
+ enabled="{getRegionStorage() != null}" />
</cell>
<cell fill="horizontal" weightx="0.2">
- <JButton id="saveSimul" text="isisfish.simulation.menu.save"
+ <JButton id="saveSimul"
+ text="isisfish.simulation.menu.save"
onActionPerformed='getParentContainer(fr.ifremer.isisfish.ui.SimulationUI.class).saveSimulation()'
- enabled="{isRegionLoaded()}"/>
+ enabled="{getRegionStorage() != null}" />
</cell>
</row>
</Table>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/PreScriptsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/PreScriptsUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/PreScriptsUI.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2005 - 2010 Ifremer, CodeLutin
+ Copyright (C) 2005 - 2011 Ifremer, CodeLutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ResultChoiceUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ResultChoiceUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/ResultChoiceUI.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2005 - 2010 Ifremer, CodeLutin
+ Copyright (C) 2005 - 2011 Ifremer, CodeLutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -28,7 +28,9 @@
import fr.ifremer.isisfish.ui.models.result.ResultListModel;
import javax.swing.event.ListSelectionEvent;
- refresh();
+ protected void $afterCompleteSetup() {
+ refresh();
+ }
public void refresh() {
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooser.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooser.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/RuleChooser.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -1,23 +1,27 @@
<!--
-/* *##%
- * Copyright (C) 2010 Ifremer, Code Lutin, Eric Chatellier
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *##%*/
- -->
-
+ #%L
+ IsisFish
+
+ $Id$
+ $HeadURL$
+ %%
+ Copyright (C) 2005 - 2011 Ifremer, CodeLutin, Chatellier Eric
+ %%
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as
+ published by the Free Software Foundation, either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public
+ License along with this program. If not, see
+ <http://www.gnu.org/licenses/gpl-2.0.html>.
+ #L%
+ -->
<Table>
<!-- Rules collection managed by current ui instance. -->
<java.util.List genericType='fr.ifremer.isisfish.rule.Rule' id="rulesList" javaBean='new java.util.ArrayList<fr.ifremer.isisfish.rule.Rule>()'/>
@@ -29,15 +33,18 @@
<fr.ifremer.isisfish.datastore.RegionStorage id="regionStorage" javaBean="null"/>
<script><![CDATA[
- import fr.ifremer.isisfish.IsisFishException;
- import fr.ifremer.isisfish.datastore.RuleStorage;
- import fr.ifremer.isisfish.rule.Rule;
- import fr.ifremer.isisfish.ui.models.rule.RuleListModel;
- import fr.ifremer.isisfish.ui.models.rule.RuleParametersTableModel;
- import fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellEditor;
- import fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellRenderer;
- import fr.ifremer.isisfish.ui.util.ErrorHelper;
+ import fr.ifremer.isisfish.IsisFishException;
+ import fr.ifremer.isisfish.datastore.RuleStorage;
+ import fr.ifremer.isisfish.rule.Rule;
+ import fr.ifremer.isisfish.ui.models.rule.RuleListModel;
+ import fr.ifremer.isisfish.ui.models.rule.RuleParametersTableModel;
+ import fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellEditor;
+ import fr.ifremer.isisfish.ui.models.rule.RuleParametersTableCellRenderer;
+ import fr.ifremer.isisfish.ui.util.ErrorHelper;
+ import java.beans.PropertyChangeEvent;
+ import java.beans.PropertyChangeListener;
+ protected void $afterCompleteSetup() {
// Manage rule list change
addPropertyChangeListener("rulesList", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
@@ -50,69 +57,70 @@
}
}
});
+ }
- /**
- * Get new instance for selected rules names and add it to {@link rulesList} list.
- */
- protected void addSelectedRules() {
- Object[] availableRuleValues = availableRuleList.getSelectedValues();
- for (Object availableRuleValue : availableRuleValues) {
- String availableRuleName = (String)availableRuleValue;
- try {
- RuleStorage ruleStorage = RuleStorage.getRule(availableRuleName);
- Rule ruleTmp = ruleStorage.getNewRuleInstance();
- rulesList.add(ruleTmp);
- } catch (IsisFishException e) {
- if (log.isErrorEnabled()) {
- log.error("Can't add rule", e);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.simulation.addrule"), e);
+ /**
+ * Get new instance for selected rules names and add it to {@link rulesList} list.
+ */
+ protected void addSelectedRules() {
+ Object[] availableRuleValues = availableRuleList.getSelectedValues();
+ for (Object availableRuleValue : availableRuleValues) {
+ String availableRuleName = (String)availableRuleValue;
+ try {
+ RuleStorage ruleStorage = RuleStorage.getRule(availableRuleName);
+ Rule ruleTmp = ruleStorage.getNewRuleInstance();
+ rulesList.add(ruleTmp);
+ } catch (IsisFishException e) {
+ if (log.isErrorEnabled()) {
+ log.error("Can't add rule", e);
}
+ ErrorHelper.showErrorDialog(_("isisfish.error.simulation.addrule"), e);
}
-
- //TODO replace this by a better fire() event
- selectedRulesList.setModel(new RuleListModel(rulesList));
}
- /**
- * Remove selected rules for selected rules list.
- */
- protected void removeSelectedRules() {
- Object[] selectedRuleValues = selectedRulesList.getSelectedValues();
- for (Object selectedRuleValue : selectedRuleValues) {
- rulesList.remove(selectedRuleValue);
- }
- //TODO replace this by a better fire() event
- selectedRulesList.setModel(new RuleListModel(rulesList));
+ //TODO replace this by a better fire() event
+ selectedRulesList.setModel(new RuleListModel(rulesList));
+ }
+
+ /**
+ * Remove selected rules for selected rules list.
+ */
+ protected void removeSelectedRules() {
+ Object[] selectedRuleValues = selectedRulesList.getSelectedValues();
+ for (Object selectedRuleValue : selectedRuleValues) {
+ rulesList.remove(selectedRuleValue);
}
-
- /**
- * Clear selected rule list.
- */
- protected void clearAllRules() {
- rulesList.clear();
- //TODO replace this by a better fire() event
- selectedRulesList.setModel(new RuleListModel(rulesList));
+ //TODO replace this by a better fire() event
+ selectedRulesList.setModel(new RuleListModel(rulesList));
+ }
+
+ /**
+ * Clear selected rule list.
+ */
+ protected void clearAllRules() {
+ rulesList.clear();
+ //TODO replace this by a better fire() event
+ selectedRulesList.setModel(new RuleListModel(rulesList));
+ }
+
+ /**
+ * Display paramters table form single selected list.
+ */
+ protected void displayRuleParameters() {
+ Rule selectedRule = (Rule)selectedRulesList.getSelectedValue();
+ if (selectedRule != null) {
+ RuleParametersTableModel model = new RuleParametersTableModel(selectedRule);
+ selectedRuleParameterTable.setModel(model);
+ RuleParametersTableCellEditor cellEditor = new RuleParametersTableCellEditor(selectedRule);
+ cellEditor.setRegion(getRegionStorage());
+ RuleParametersTableCellRenderer cellRenderer = new RuleParametersTableCellRenderer(selectedRule);
+ selectedRuleParameterTable.getColumnModel().getColumn(0).setCellRenderer(cellRenderer);
+ selectedRuleParameterTable.getColumnModel().getColumn(1).setCellEditor(cellEditor);
}
-
- /**
- * Display paramters table form single selected list.
- */
- protected void displayRuleParameters() {
- Rule selectedRule = (Rule)selectedRulesList.getSelectedValue();
- if (selectedRule != null) {
- RuleParametersTableModel model = new RuleParametersTableModel(selectedRule);
- selectedRuleParameterTable.setModel(model);
- RuleParametersTableCellEditor cellEditor = new RuleParametersTableCellEditor(selectedRule);
- cellEditor.setRegion(getRegionStorage());
- RuleParametersTableCellRenderer cellRenderer = new RuleParametersTableCellRenderer(selectedRule);
- selectedRuleParameterTable.getColumnModel().getColumn(0).setCellRenderer(cellRenderer);
- selectedRuleParameterTable.getColumnModel().getColumn(1).setCellEditor(cellEditor);
- }
- else {
- selectedRuleParameterTable.setModel(new RuleParametersTableModel());
- }
+ else {
+ selectedRuleParameterTable.setModel(new RuleParametersTableModel());
}
+ }
]]></script>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SensUI.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -41,13 +41,16 @@
// to be notified of storage change event
StorageChangeListener analyzePlanStorageListener;
- analyzePlanStorageListener = new StorageChangeListener() {
- @Override
- public void versionDataChanged(StorageChangeEvent e) {
- refresh();
- }
- };
- AnalysePlanStorage.addStorageChangeListener(analyzePlanStorageListener);
+
+ protected void $afterCompleteSetup() {
+ analyzePlanStorageListener = new StorageChangeListener() {
+ @Override
+ public void versionDataChanged(StorageChangeEvent e) {
+ refresh();
+ }
+ };
+ AnalysePlanStorage.addStorageChangeListener(analyzePlanStorageListener);
+ }
public void refresh() {
// analyse plans names list
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulAction.java 2011-03-16 16:57:13 UTC (rev 3160)
@@ -52,6 +52,7 @@
import fr.ifremer.isisfish.IsisFish;
import fr.ifremer.isisfish.IsisFishException;
+import fr.ifremer.isisfish.IsisFishRuntimeException;
import fr.ifremer.isisfish.datastore.AnalysePlanStorage;
import fr.ifremer.isisfish.datastore.ExportStorage;
import fr.ifremer.isisfish.datastore.RegionStorage;
@@ -61,6 +62,7 @@
import fr.ifremer.isisfish.datastore.SensitivityStorage;
import fr.ifremer.isisfish.datastore.SimulationStorage;
import fr.ifremer.isisfish.datastore.SimulatorStorage;
+import fr.ifremer.isisfish.datastore.StorageException;
import fr.ifremer.isisfish.entities.Population;
import fr.ifremer.isisfish.entities.Species;
import fr.ifremer.isisfish.entities.Strategy;
@@ -82,6 +84,7 @@
import fr.ifremer.isisfish.simulator.sensitivity.domain.EquationContinuousDomain;
import fr.ifremer.isisfish.simulator.sensitivity.domain.MatrixContinuousDomain;
import fr.ifremer.isisfish.simulator.sensitivity.group.FactorGroup;
+import fr.ifremer.isisfish.ui.SimulationUI;
import fr.ifremer.isisfish.ui.util.ErrorHelper;
/**
@@ -255,28 +258,14 @@
/**
* Change region in simulation launcher
- *
+ *
+ * @param paramsUI paramsUI
* @param regionName region name
*/
- public void regionChange(String regionName) {
- try {
- regionStorage = RegionStorage.getRegion(regionName);
-
- // chatellier, on ne peut pas le reinitialiser, on
- // perd toutes les info apres un rechergement d'une anciennes simulation
- //init(); // reinitialise param pour le vider
- param.setRegionName(regionName);
-
- // poussin 20090519 quel est l'interet de faire ca ? et encore plus maintenant qu'on reinitialise
- // for (Rule r : param.getRules()) {
- // rules.put(r, RuleStorage.getName(r));
- // }
- } catch (Exception e) {
- if (log.isErrorEnabled()) {
- log.error("Can't change region", e);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.simulation.openregion"), e);
- }
+ public void regionChange(ParamsUI paramsUI, String regionName) {
+ regionStorage = RegionStorage.getRegion(regionName);
+ paramsUI.getParentContainer(SimulationUI.class).setRegionStorage(regionStorage);
+ param.setRegionName(regionName);
}
/**
@@ -309,13 +298,6 @@
param.setAnalysePlanNumber(-1);
regionStorage = param.getRegion();
- // Chargement des exports de sensibilites
- /* not used anymore
- * sensitivityExports.clear();
- for (SensitivityExport ex : param.getSensitivityExport()){
- sensitivityExports.put(ex, ex.getExportFilename());
- }*/
-
// Chargement des facteurs
// clear list even if mexico file doesn't exists
factors.clear();
@@ -339,10 +321,7 @@
}
}
} catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't load old Simulation: " + simulName, eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.simulation.loadoldsimulation"), eee);
+ throw new IsisFishRuntimeException(_("isisfish.error.simulation.loadoldsimulation"), eee);
}
}
@@ -860,6 +839,10 @@
return result;
}
+ public SortedMap<String, Factor> getFactors() {
+ return factors;
+ }
+
public void addFactor(Factor f, JComponent c) {
if (log.isDebugEnabled()) {
log.debug("Add factor (" + f.getName() + ") : " +f.getPath());
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/SimulUI.jaxx 2011-03-16 16:57:13 UTC (rev 3160)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2005 - 2010 Ifremer, CodeLutin
+ Copyright (C) 2005 - 2011 Ifremer, CodeLutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -25,55 +25,62 @@
<fr.ifremer.isisfish.ui.SimulationUI>
<script><![CDATA[
- @Override
- public void refresh() {
- paramsUI.refresh();
- preScriptUI.refresh();
- sensUI.refresh();
- exportUI.refresh();
- resultChoiceUI.refresh();
- advancedParamsUI.refresh();
- }
+ @Override
+ public void refresh() {
+ paramsUI.refresh();
+ preScriptUI.refresh();
+ sensUI.refresh();
+ exportUI.refresh();
+ resultChoiceUI.refresh();
+ advancedParamsUI.refresh();
+ }
+
+ /**
+ * Refresh all simulation launch UI.
+ */
+ @Override
+ protected void regionStorageChanged() {
+
+ }
+
+ @Override
+ public void selectParametersTab() {
+ bodyTabbedPane.setSelectedIndex(0);
+ }
- @Override
- public void selectParametersTab() {
- bodyTabbedPane.setSelectedIndex(0);
+ @Override
+ public void setEnabledPrescriptTab(boolean selected) {
+ bodyTabbedPane.setEnabledAt(1, selected);
+ if (selected) {
+ bodyTabbedPane.setSelectedIndex(1);
}
-
- @Override
- public void setEnabledPrescriptTab(boolean selected) {
- bodyTabbedPane.setEnabledAt(1, selected);
- if (selected) {
- bodyTabbedPane.setSelectedIndex(1);
- }
+ }
+
+ @Override
+ public void setEnabledAnalysePlanTab(boolean selected) {
+ bodyTabbedPane.setEnabledAt(2, selected);
+ if (selected) {
+ bodyTabbedPane.setSelectedIndex(2);
}
-
- @Override
- public void setEnabledAnalysePlanTab(boolean selected) {
- bodyTabbedPane.setEnabledAt(2, selected);
- if (selected) {
- bodyTabbedPane.setSelectedIndex(2);
- }
- }
- ]]>
- </script>
+ }
+ ]]></script>
<JTabbedPane id="bodyTabbedPane">
- <tab id="paramsUITab" title='isisfish.params.title'>
- <ParamsUI id="paramsUI" constructorParams='this' />
+ <tab title='isisfish.params.title'>
+ <ParamsUI id="paramsUI" constructorParams='this' regionStorage="{getRegionStorage()}"/>
</tab>
- <tab id="preScriptUITab" title='isisfish.preScript.title' enabled='false'>
+ <tab title='isisfish.preScript.title' enabled='false'>
<PreScriptsUI id="preScriptUI" constructorParams='this' />
</tab>
- <tab id="sensUITab" title='isisfish.sens.title' enabled='false'>
+ <tab title='isisfish.sens.title' enabled='false'>
<SensUI id="sensUI" constructorParams='this' />
</tab>
- <tab id="exportUITab" title='isisfish.export.title'>
+ <tab title='isisfish.export.title'>
<ExportUI id="exportUI" constructorParams='this' />
</tab>
- <tab id="resultChoiceUITab" title='isisfish.resultChoice.title'>
+ <tab title='isisfish.resultChoice.title'>
<ResultChoiceUI id="resultChoiceUI" constructorParams='this' />
</tab>
- <tab id="advancedParamsUITab" title='isisfish.advancedParameters.title'>
+ <tab title='isisfish.advancedParameters.title'>
<AdvancedParamsUI id="advancedParamsUI" constructorParams='this' />
</tab>
</JTabbedPane>
1
0
r3159 - isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
by chatellier@users.labs.libre-entreprise.org 16 Mar '11
16 Mar '11
Author: chatellier
Date: 2011-03-16 16:55:59 +0000 (Wed, 16 Mar 2011)
New Revision: 3159
Log:
Fix input UI for sensitivity use
Modified:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionParametersUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputHandler.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesEditorUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonSpacializedUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/RangeOfValuesUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityEditorUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsBasicsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -124,12 +124,11 @@
// on ne sais jamais de quel type est le parent
InputUI inputUI = getParentContainer(InputUI.class);
if (inputUI != null) {
- // FIXME echatellier 20110306 : use new tree api
inputUI.getHandler().setTreeSelection(this, c.getTopiaId());
}
else {
SensitivityTabUI sensitivityTabUI = getParentContainer(SensitivityTabUI.class);
- sensitivityTabUI.setTreeSelection("$root/$cells/"+c.getTopiaId());
+ sensitivityTabUI.getHandler().setTreeSelection(this, c.getTopiaId());
}
}
}
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionParametersUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionParametersUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionParametersUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -39,7 +39,7 @@
import java.beans.PropertyChangeListener;
protected void $afterCompleteSetup() {
- addPropertyChangeListener(PROPERTY_EFFORT_DESCRIPTION, new PropertyChangeListener() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
if (evt.getOldValue() != null || evt.getNewValue() == null) {
fieldEffortDescriptionFishingOperation.setText("");
@@ -125,10 +125,10 @@
<!--NumberEditor id='fieldEffortDescriptionFishingOperation' constructorParams='this'
bean='{getEffortDescription()}' property='fishingOperation'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{EffortDescription.class}' _method='"FishingOperation"'/-->
+ _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"FishingOperation"'/-->
<JFormattedTextField id="fieldEffortDescriptionFishingOperation" text='{String.valueOf(getEffortDescription().getFishingOperation())}'
onKeyReleased='getEffortDescription().setFishingOperation(Integer.parseInt(fieldEffortDescriptionFishingOperation.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"FishingOperation"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"FishingOperation"'/>
</cell>
</row>
<row>
@@ -139,7 +139,7 @@
<JTextField id="fieldEffortDescriptionFishingOperationDuration"
text='{String.valueOf(getEffortDescription().getFishingOperationDuration() == null ? "" : getEffortDescription().getFishingOperationDuration().getHour())}'
toolTipText="isisfish.effortDescription.fishingOperationDuration.tooltip" onKeyReleased='getEffortDescription().setFishingOperationDuration(new TimeUnit(3600 * Double.parseDouble(fieldEffortDescriptionFishingOperationDuration.getText())))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"FishingOperationDuration"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"FishingOperationDuration"'/>
</cell>
</row>
<row>
@@ -150,10 +150,10 @@
<!--NumberEditor id='fieldEffortDescriptionGearsNumberPerOperation' constructorParams='this'
bean='{getEffortDescription()}' property='gearsNumberPerOperation'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{EffortDescription.class}' _method='"GearsNumberPerOperation"'/-->
+ _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"GearsNumberPerOperation"'/-->
<JTextField id="fieldEffortDescriptionGearsNumberPerOperation" text='{String.valueOf(getEffortDescription().getGearsNumberPerOperation())}'
onKeyReleased='getEffortDescription().setGearsNumberPerOperation(Integer.parseInt(fieldEffortDescriptionGearsNumberPerOperation.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"GearsNumberPerOperation"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"GearsNumberPerOperation"'/>
</cell>
</row>
</Table>
@@ -170,10 +170,10 @@
<!--NumberEditor id='fieldEffortDescriptionCrewSize' constructorParams='this'
bean='{getEffortDescription()}' property='crewSize'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{EffortDescription.class}' _method='"CrewSize"'/-->
+ _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"CrewSize"'/-->
<JTextField id="fieldEffortDescriptionCrewSize" text='{String.valueOf(getEffortDescription().getCrewSize())}'
onKeyReleased='getEffortDescription().setCrewSize(Integer.parseInt(fieldEffortDescriptionCrewSize.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"CrewSize"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"CrewSize"'/>
</cell>
</row>
<row>
@@ -184,10 +184,10 @@
<!--NumberEditor id='fieldEffortDescriptionUnitCostOfFishing' constructorParams='this'
bean='{getEffortDescription()}' property='unitCostOfFishing'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{EffortDescription.class}' _method='"UnitCostOfFishing"'/-->
+ _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"UnitCostOfFishing"'/-->
<JTextField id="fieldEffortDescriptionUnitCostOfFishing" text='{String.valueOf(getEffortDescription().getUnitCostOfFishing())}'
onKeyReleased='getEffortDescription().setUnitCostOfFishing(Double.parseDouble(fieldEffortDescriptionUnitCostOfFishing.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"UnitCostOfFishing"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"UnitCostOfFishing"'/>
</cell>
</row>
<row>
@@ -198,10 +198,10 @@
<!--NumberEditor id='fieldEffortDescriptionFixedCrewSalary' constructorParams='this'
bean='{getEffortDescription()}' property='fixedCrewSalary'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{EffortDescription.class}' _method='"FixedCrewSalary"'/-->
+ _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"FixedCrewSalary"'/-->
<JTextField id="fieldEffortDescriptionFixedCrewSalary" text='{String.valueOf(getEffortDescription().getFixedCrewSalary())}'
onKeyReleased='getEffortDescription().setFixedCrewSalary(Double.parseDouble(fieldEffortDescriptionFixedCrewSalary.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"FixedCrewSalary"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"FixedCrewSalary"'/>
</cell>
</row>
<row>
@@ -212,10 +212,10 @@
<!--NumberEditor id='fieldEffortDescriptionCrewFoodCost' constructorParams='this'
bean='{getEffortDescription()}' property='crewFoodCost'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{EffortDescription.class}' _method='"CrewFoodCost"'/-->
+ _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"CrewFoodCost"'/-->
<JTextField id="fieldEffortDescriptionCrewFoodCost" text='{String.valueOf(getEffortDescription().getCrewFoodCost())}'
onKeyReleased='getEffortDescription().setCrewFoodCost(Double.parseDouble(fieldEffortDescriptionCrewFoodCost.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"CrewFoodCost"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"CrewFoodCost"'/>
</cell>
</row>
<row>
@@ -226,10 +226,10 @@
<!--NumberEditor id='fieldEffortDescriptionCrewShareRate' constructorParams='this'
bean='{getEffortDescription()}' property='crewShareRate'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{EffortDescription.class}' _method='"CrewShareRate"'/-->
+ _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"CrewShareRate"'/-->
<JTextField id="fieldEffortDescriptionCrewShareRate" text='{String.valueOf(getEffortDescription().getCrewShareRate())}'
onKeyReleased='getEffortDescription().setCrewShareRate(Double.parseDouble(fieldEffortDescriptionCrewShareRate.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"CrewShareRate"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"CrewShareRate"'/>
</cell>
</row>
<row>
@@ -239,11 +239,11 @@
<cell fill='horizontal' weightx='1.0' weighty='0.0'>
<!--NumberEditor id='fieldEffortDescriptionRepairAndMaintenanceGearCost' constructorParams='this'
bean='{getEffortDescription()}' property='repairAndMaintenanceGearCost'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}'
- _method='"RepairAndMaintenanceGearCost"' useSign='true'/-->
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}'
+ _sensitivityMethod='"RepairAndMaintenanceGearCost"' useSign='true'/-->
<JTextField id="fieldEffortDescriptionRepairAndMaintenanceGearCost" text='{String.valueOf(getEffortDescription().getRepairAndMaintenanceGearCost())}'
onKeyReleased='getEffortDescription().setRepairAndMaintenanceGearCost(Double.parseDouble(fieldEffortDescriptionRepairAndMaintenanceGearCost.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"RepairAndMaintenanceGearCost"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"RepairAndMaintenanceGearCost"'/>
</cell>
</row>
<row>
@@ -254,10 +254,10 @@
<!--NumberEditor id='fieldEffortDescriptionLandingCosts' constructorParams='this'
bean='{getEffortDescription()}' property='landingCosts'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{EffortDescription.class}' _method='"LandingCosts"'/-->
+ _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"LandingCosts"'/-->
<JTextField id="fieldEffortDescriptionLandingCosts" text='{String.valueOf(getEffortDescription().getLandingCosts())}'
onKeyReleased='getEffortDescription().setLandingCosts(Double.parseDouble(fieldEffortDescriptionLandingCosts.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"LandingCosts"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"LandingCosts"'/>
</cell>
</row>
<row>
@@ -268,10 +268,10 @@
<!--NumberEditor id='fieldEffortDescriptionOtherRunningCost' constructorParams='this'
bean='{getEffortDescription()}' property='otherRunningCost'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{EffortDescription.class}' _method='"OtherRunningCost"'/-->
+ _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"OtherRunningCost"'/-->
<JTextField id="fieldEffortDescriptionOtherRunningCost" text='{String.valueOf(getEffortDescription().getOtherRunningCost())}'
onKeyReleased='getEffortDescription().setOtherRunningCost(Double.parseDouble(fieldEffortDescriptionOtherRunningCost.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"OtherRunningCost"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{EffortDescription.class}' _sensitivityMethod='"OtherRunningCost"'/>
</cell>
</row>
</Table>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -104,11 +104,11 @@
<cell columns="2" fill='horizontal' weightx='1.0'>
<!--NumberEditor id='fieldGearStandardisationFactor' constructorParams='this'
bean='{getBean()}' property='standardisationFactor'
- enabled='{isActive()}' decorator='boxed' _bean='{Gear.class}'
- _method='"StandardisationFactor"' useSign='true'/-->
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{Gear.class}'
+ _sensitivityMethod='"StandardisationFactor"' useSign='true'/-->
<JTextField id="fieldGearStandardisationFactor" text='{String.valueOf(getBean().getStandardisationFactor())}'
onKeyReleased='getBean().setStandardisationFactor(Double.parseDouble(fieldGearStandardisationFactor.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{Gear.class}' _method='"StandardisationFactor"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{Gear.class}' _sensitivityMethod='"StandardisationFactor"'/>
</cell>
</row>
<row>
@@ -125,8 +125,8 @@
<JLabel text="isisfish.gear.rangeValues" enabled='{isActive()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <RangeOfValuesUI id="rangeOfValues" active='{isActive()}' constructorParams='this'
- decorator='boxed' _bean='{Gear.class}' _method='"PossibleValue"'/>
+ <RangeOfValuesUI id="rangeOfValues" bean="{getBean()}" active='{isActive()}' constructorParams='this'
+ decorator='boxed' _sensitivityBean='{Gear.class}' _sensitivityMethod='"PossibleValue"'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -53,8 +53,6 @@
@Override
public void refresh() {
-
-
//getVerifier().addCurrentPanel(gearTabUI, selectivityUI);
}
@@ -63,6 +61,12 @@
// active les bouton sur l'onglet courant
setCurrentTabActionButtons(gearTab);
}
+
+ at Override
+public void setLayer(boolean active) {
+ gearTabUI.setLayer(active);
+ selectivityUI.setLayer(active);
+}
]]></script>
<JPanel id="body">
<JTabbedPane constraints='BorderLayout.CENTER' id="gearTab">
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java 2011-03-16 16:55:59 UTC (rev 3159)
@@ -52,29 +52,21 @@
import fr.ifremer.isisfish.entities.CellDAO;
import fr.ifremer.isisfish.entities.EffortDescription;
import fr.ifremer.isisfish.entities.EffortDescriptionDAO;
-import fr.ifremer.isisfish.entities.EffortDescriptionImpl;
import fr.ifremer.isisfish.entities.FisheryRegion;
-import fr.ifremer.isisfish.entities.FisheryRegionDAO;
-import fr.ifremer.isisfish.entities.FisheryRegionImpl;
import fr.ifremer.isisfish.entities.Formule;
import fr.ifremer.isisfish.entities.Gear;
-import fr.ifremer.isisfish.entities.GearDAO;
import fr.ifremer.isisfish.entities.Metier;
-import fr.ifremer.isisfish.entities.MetierDAO;
-import fr.ifremer.isisfish.entities.MetierImpl;
import fr.ifremer.isisfish.entities.MetierSeasonInfo;
import fr.ifremer.isisfish.entities.MetierSeasonInfoDAO;
import fr.ifremer.isisfish.entities.Population;
import fr.ifremer.isisfish.entities.PopulationDAO;
import fr.ifremer.isisfish.entities.PopulationGroup;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
import fr.ifremer.isisfish.entities.PopulationSeasonInfoDAO;
import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
import fr.ifremer.isisfish.entities.Selectivity;
import fr.ifremer.isisfish.entities.SelectivityDAO;
import fr.ifremer.isisfish.entities.SetOfVessels;
-import fr.ifremer.isisfish.entities.SetOfVesselsDAO;
import fr.ifremer.isisfish.entities.Species;
import fr.ifremer.isisfish.entities.SpeciesDAO;
import fr.ifremer.isisfish.entities.TargetSpecies;
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -152,14 +152,14 @@
if (this.get$objectMap() != null && active) {
for (JComponent boxed : SwingUtil.getLayeredComponents(this)) {
// Verifie si dans l'entré existe dans le fichier sensitivity.properties
- Class classBean = (Class)boxed.getClientProperty("bean");
- String method = (String)boxed.getClientProperty("method");
+ Class sensitivityBeanClass = (Class)boxed.getClientProperty("sensitivityBean");
+ String method = (String)boxed.getClientProperty("sensitivityMethod");
// test if factor is enabled
boolean isSensitivityFactorEnabled = false;
- if (classBean != null) {
- // classBean is defined in property file without "Impl"
- String className = classBean.getSimpleName().replace("Impl", "");
+ if (sensitivityBeanClass != null) {
+ // sensitivityBeanClass is defined in property file without "Impl"
+ String className = sensitivityBeanClass.getSimpleName().replace("Impl", "");
// ensure that method name is uncapitalized
method = StringUtils.uncapitalize(method);
@@ -202,14 +202,14 @@
}
JComponent source = (JComponent) e.getSource();
- Class<? extends TopiaEntityContextable> classBean = (Class<? extends TopiaEntityContextable>)source.getClientProperty("bean");
- String beanID = (String)source.getClientProperty("beanID");
+ Class<? extends TopiaEntityContextable> sensitivityBeanClass = (Class<? extends TopiaEntityContextable>)source.getClientProperty("sensitivityBean");
+ String sensitivityBeanID = (String)source.getClientProperty("sensitivityBeanID");
/*TopiaEntity bean = null;
- if (beanID == null) {
- bean = getVerifier().getEntity(classBean);
+ if (sensitivityBeanID == null) {
+ bean = getVerifier().getEntity(sensitivityBeanClass);
}
else {
- bean = getVerifier().getEntity(classBean, beanID);
+ bean = getVerifier().getEntity(sensitivityBeanClass, sensitivityBeanID);
}
if (bean != null) {
FactorWizardUI wizard = new FactorWizardUI(this);
@@ -218,28 +218,28 @@
wizard.setVisible(true);
}*/
- String property = (String)source.getClientProperty("method");
- displayFactorWizard(source, classBean, beanID, property);
+ String sensitivityMethod = (String)source.getClientProperty("sensitivityMethod");
+ displayFactorWizard(source, sensitivityBeanClass, sensitivityBeanID, sensitivityMethod);
}
/**
* Display factor wizard for bean/property in registred in verifier.
*/
-public void displayFactorWizard(JComponent source, Class<? extends TopiaEntityContextable> classBean, String beanID, String property) {
+public void displayFactorWizard(JComponent source, Class<? extends TopiaEntityContextable> sensitivityBeanClass, String sensitivityBeanID, String sensitivityMethod) {
if (log.isDebugEnabled()) {
log.debug("Event intercepted " + source);
- log.debug(" client property (bean) : " + classBean);
- log.debug(" client property (beanID) : " + beanID);
- log.debug(" client property (method) : " + property);
+ log.debug(" client property (bean) : " + sensitivityBeanClass);
+ log.debug(" client property (beanID) : " + sensitivityBeanID);
+ log.debug(" client property (method) : " + sensitivityMethod);
}
TopiaEntityContextable bean = null;
- if (beanID == null) {
- bean = getVerifier().getEntity(classBean);
+ if (sensitivityBeanID == null) {
+ bean = getVerifier().getEntity(sensitivityBeanClass);
}
else {
- bean = getVerifier().getEntity(classBean, beanID);
+ bean = getVerifier().getEntity(sensitivityBeanClass, sensitivityBeanID);
}
if (bean != null) {
@@ -251,7 +251,7 @@
// we need to find a better component than
// can display 'property' on 'bean'
if (editor instanceof JTable) {
- editor = EditorHelper.getEditorForValue(bean, property);
+ editor = EditorHelper.getEditorForValue(bean, sensitivityMethod);
}
if (editor != null) {
@@ -261,12 +261,12 @@
wizard.setVisible(true);
}
else if (log.isWarnEnabled()) {
- log.warn("Can't find editor for " + classBean.getSimpleName() + "#" + property);
+ log.warn("Can't find editor for " + sensitivityBeanClass.getSimpleName() + "#" + sensitivityMethod);
}
}
else {
if (log.isErrorEnabled()) {
- log.error("Can't find bean in current verifier (classBean = " + classBean + ", beanID = " + beanID + ")");
+ log.error("Can't find bean in current verifier (sensitivityBeanClass = " + sensitivityBeanClass + ", sensitivityBeanID = " + sensitivityBeanID + ")");
}
}
}
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputHandler.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputHandler.java 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputHandler.java 2011-03-16 16:55:59 UTC (rev 3159)
@@ -32,7 +32,6 @@
import java.io.File;
import java.io.IOException;
import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -54,7 +53,6 @@
import org.apache.commons.logging.LogFactory;
import org.nuiton.topia.TopiaContext;
import org.nuiton.topia.TopiaException;
-import org.nuiton.topia.persistence.TopiaEntity;
import org.nuiton.topia.persistence.TopiaEntityContextable;
import org.nuiton.util.FileUtil;
@@ -65,7 +63,6 @@
import fr.ifremer.isisfish.datastore.update.ImportFromV2;
import fr.ifremer.isisfish.entities.Cell;
import fr.ifremer.isisfish.entities.FisheryRegion;
-import fr.ifremer.isisfish.entities.FisheryRegionImpl;
import fr.ifremer.isisfish.entities.Gear;
import fr.ifremer.isisfish.entities.Metier;
import fr.ifremer.isisfish.entities.Population;
@@ -80,6 +77,7 @@
import fr.ifremer.isisfish.mexico.export.RegionExport;
import fr.ifremer.isisfish.mexico.export.RegionExportFactorXML;
import fr.ifremer.isisfish.ui.CommonHandler;
+import fr.ifremer.isisfish.ui.NavigationUI;
import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
import fr.ifremer.isisfish.ui.input.tree.FisheryTreeHelper;
import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
@@ -157,8 +155,6 @@
inputUI.getFisheryRegionTree().setModel(model);
inputUI.getFisheryRegionTree().setCellRenderer(new FisheryTreeRenderer(dataProvider));
treeHelper.setUI(inputUI.getFisheryRegionTree(), true, false, null);
- //setContextValue(model);
- //setTreeSelection("$root");
// global context value : fisheryRegion, regionStorage, treeHelper
inputUI.setContextValue(fisheryRegion);
@@ -531,7 +527,7 @@
* @return ui for class
* @throws Exception
*/
- protected InputContentUI<?> getUIInstanceForBeanClass(Class<?> internalClass, InputUI inputUI) throws Exception {
+ protected InputContentUI<?> getUIInstanceForBeanClass(Class<?> internalClass, NavigationUI navigationUI) throws Exception {
Class<? extends InputContentUI<?>> uiClass = null;
if (FisheryRegion.class.isAssignableFrom(internalClass)) {
@@ -575,10 +571,10 @@
InputContentUI<?> result = uiInstanceCache.get(uiClass);
if (result == null) {
Constructor<?> constructor = uiClass.getConstructor(JAXXContext.class);
- result = (InputContentUI<?>)constructor.newInstance(inputUI);
+ result = (InputContentUI<?>)constructor.newInstance(navigationUI);
// fix parent container, doesn't work:(
- result.setContextValue(inputUI, JAXXUtil.PARENT);
+ result.setContextValue(navigationUI, JAXXUtil.PARENT);
uiInstanceCache.put(uiClass, result);
}
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -57,7 +57,7 @@
protected void $afterCompleteSetup() {
addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ if (evt.getNewValue() == null) {
formuleComboBox.setModel(new DefaultComboBoxModel());
try {
File nullFile = org.nuiton.util.FileUtil.getTempFile("", ".java");
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2011-03-16 16:55:59 UTC (rev 3159)
@@ -58,16 +58,12 @@
import org.nuiton.topia.TopiaException;
import org.nuiton.topia.persistence.TopiaDAO;
import org.nuiton.topia.persistence.TopiaEntity;
-import org.nuiton.topia.persistence.TopiaEntityAbstract;
import org.nuiton.topia.persistence.TopiaEntityContextable;
import fr.ifremer.isisfish.IsisFishDAOHelper;
import fr.ifremer.isisfish.IsisFishRuntimeException;
-import fr.ifremer.isisfish.ui.NavigationUI;
import fr.ifremer.isisfish.ui.SaveVerifier;
-import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
import fr.ifremer.isisfish.ui.sensitivity.SensitivityTabUI;
-import fr.ifremer.isisfish.ui.util.ErrorHelper;
/**
* InputSaveVerifier.
@@ -510,17 +506,17 @@
}
public void addCurrentPanel(InputContentUI<?>... panels) {
- for (InputContentUI<?> ui : panels) {
+ /*for (InputContentUI<?> ui : panels) {
editable = !currentEntities.isEmpty();
this.currentPanels.add(ui);
- /*if (rootUI == null) {
- ui.setSensitivity(true);
- ui.setLayer(true);
- }*/
+ //if (rootUI == null) {
+ // ui.setSensitivity(true);
+ // ui.setLayer(true);
+ //}
ui.refresh();
// do not call refresh action buttons here
ui.setActive(editable);
- }
+ }*/
}
public void removeAllPanels() {
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -75,7 +75,6 @@
<JTree id="fisheryRegionTree" selectionModel='{fisheryRegionTreeSelectionModel}'
rootVisible="true" selectionRow='0' model='{new javax.swing.tree.DefaultTreeModel(null)}' rowHeight="0"
onValueChanged="getHandler().nodeSelectionChanged(this, event)" />
- <!-- cellRenderer='{new fr.ifremer.isisfish.ui.input.tree.FisheryRegionTreeRenderer()}' -->
</JScrollPane>
</JPanel>
</JPanel>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesEditorUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesEditorUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesEditorUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -184,7 +184,7 @@
text='isisfish.metierSeasonInfoSpecies.targetFactor'
bean='{getBean()}' formuleCategory='TargetFactor'
clazz='{fr.ifremer.isisfish.equation.TargetSpeciesTargetFactorEquation.class}'
- decorator='boxed' _bean='{Metier.class}' _method='""'/>
+ decorator='boxed' _sensitivityBean='{Metier.class}' _sensitivityMethod='""'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -97,6 +97,11 @@
}
metierSeasonInfoSpeciesEditor.refresh();
}
+ at Override
+public void setLayer(boolean active) {
+ super.setLayer(active);
+ metierSeasonInfoSpeciesEditor.setLayer(active);
+}
]]></script>
<JPanel id="body">
<Table>
@@ -117,7 +122,7 @@
<MetierSeasonInfoSpeciesEditorUI id='metierSeasonInfoSpeciesEditor' constructorParams='this'
bean='{getBean()}' metierSeasonInfo='{getMetierSeasonInfo()}' metierSeasonSelected='{isMetierSeasonInfoSelected()}'
active='{isActive()}'
- _bean='{MetierSeasonInfo.class}' _method='"SpeciesTargetSpecies"'/>
+ _sensitivityBean='{MetierSeasonInfo.class}' _sensitivityMethod='"SpeciesTargetSpecies"'/>
</cell>
</row>
</Table>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -92,6 +92,17 @@
setMetierSeasonInfoCombo();
}
});
+
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+
+ }
+ if (evt.getNewValue() != null) {
+ refresh();
+ }
+ }
+ });
}
@Override
@@ -107,7 +118,7 @@
Metier metier = getVerifier().getEntity(Metier.class);
// don't add setBean(null) here : useless
- setBean(metier);
+ //setBean(metier);
if (getBean() != null) {
// Model instanciation
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -111,7 +111,7 @@
<cell fill='horizontal' weightx='1.0'>
<JTextField id="fieldMetierParam" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getGearParameterValue())}'
onKeyReleased='getBean().setGearParameterValue(fieldMetierParam.getText())' enabled='{isActive()}' decorator='boxed'
- _bean='{Metier.class}' _method='"GearParameterValue"' />
+ _sensitivityBean='{Metier.class}' _sensitivityMethod='"GearParameterValue"' />
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -53,6 +53,13 @@
// active les bouton sur l'onglet courant
setCurrentTabActionButtons(metierTab);
}
+
+ at Override
+public void setLayer(boolean active) {
+ metierTabUI.setLayer(active);
+ metierSeasonInfoUI.setLayer(active);
+ metierSeasonSpeciesUI.setLayer(active);
+}
]]></script>
<JPanel id="body">
<JTabbedPane id="metierTab" constraints='BorderLayout.CENTER'>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -205,7 +205,7 @@
<JCheckBox id="fieldPopulationBasicsPlusGroup" text="isisfish.populationBasics.plusGroup"
selected='{getBean().getPlusGroup()}'
onActionPerformed='getBean().setPlusGroup(fieldPopulationBasicsPlusGroup.isSelected())'
- enabled='{isActive()}' decorator='boxed' _bean='{Population.class}' _method='"PlusGroup"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"PlusGroup"'/>
</cell>
</row>
<row>
@@ -219,7 +219,7 @@
text='isisfish.populationBasics.growth' active='{isActive()}'
bean='{getBean()}' beanProperty='growth' formuleCategory='Growth'
clazz='{fr.ifremer.isisfish.equation.PopulationGrowth.class}'
- decorator='boxed' _bean='{Population.class}' _method='"Growth"'/>
+ decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"Growth"'/>
</cell>
</row>
<row>
@@ -228,7 +228,7 @@
text='isisfish.populationBasics.growthReverse' active='{isActive()}'
bean='{getBean()}' formuleCategory='GrowthReverse' beanProperty='GrowthReverse'
clazz='{fr.ifremer.isisfish.equation.PopulationGrowthReverse.class}'
- decorator='boxed' _bean='{Population.class}' _method='"GrowthReverse"'/>
+ decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"GrowthReverse"'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -94,7 +94,7 @@
<cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
<org.nuiton.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationCapturability'
matrix='{getBean().getCapturability() == null ? null : getBean().getCapturability().copy()}'
- enabled='{isActive()}' decorator='boxed' _bean='{Population.class}' _method='"Capturability"'
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"Capturability"'
onMatrixChanged="populationCapturabilityMatrixChanged(event)" />
</cell>
</row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -59,7 +59,7 @@
text='isisfish.populationEquation.naturalDeathRate' active="{isActive()}"
bean='{getBean()}' formuleCategory='NaturalDeathRate' beanProperty='NaturalDeathRate'
clazz='{fr.ifremer.isisfish.equation.PopulationNaturalDeathRate.class}'
- decorator='boxed' _bean='{Population.class}' _method='"NaturalDeathRate"'/>
+ decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"NaturalDeathRate"'/>
</cell>
</row>
<row>
@@ -68,7 +68,7 @@
text='isisfish.populationEquation.meanWeight' active="{isActive()}"
bean='{getBean()}' formuleCategory='MeanWeight' beanProperty='MeanWeight'
clazz='{fr.ifremer.isisfish.equation.PopulationMeanWeight.class}'
- decorator='boxed' _bean='{Population.class}' _method='"MeanWeight"'/>
+ decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"MeanWeight"'/>
</cell>
</row>
<row>
@@ -77,7 +77,7 @@
text='isisfish.populationEquation.price' active="{isActive()}"
bean='{getBean()}' formuleCategory='Price' beanProperty='Price'
clazz='{fr.ifremer.isisfish.equation.PopulationPrice.class}'
- decorator='boxed' _bean='{Population.class}' _method='"Price"'/>
+ decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"Price"'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -177,7 +177,7 @@
</cell>
<cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
<org.nuiton.math.matrix.gui.MatrixPanelEditor id='fieldPopulationGroupNaturalDeathRate'
- enabled='false' decorator='boxed' _bean='{PopulationImpl.class}' _method='"NaturalDeathRateMatrix"' />
+ enabled='false' decorator='boxed' _sensitivityBean='{PopulationImpl.class}' _sensitivityMethod='"NaturalDeathRateMatrix"' />
<!-- this bindings totally break UI
matrix='{getBean() == null || getPopulationGroup() == null ? null : ((AbstractMatrixND)getBean().getNaturalDeathRateMatrix()).getSubMatrixOnSemantic(0, getPopulationGroup())}' -->
</cell>
@@ -190,10 +190,10 @@
<!--NumberEditor id='fieldPopulationGroupReproductionRate' constructorParams='this'
bean='{getPopulationGroup()}' property='reproductionRate'
useSign='true' enabled='{isPopGroupNotNull()}' decorator='boxed'
- _bean='{PopulationGroupImpl.class}' _method='"ReproductionRate"'/-->
+ _sensitivityBean='{PopulationGroupImpl.class}' _sensitivityMethod='"ReproductionRate"'/-->
<JTextField id="fieldPopulationGroupReproductionRate" text='{String.valueOf(getPopulationGroup().getReproductionRate())}'
onKeyReleased='getPopulationGroup().setReproductionRate(Double.parseDouble(fieldPopulationGroupReproductionRate.getText()))'
- enabled='{isPopGroupNotNull()}' decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"ReproductionRate"'/>
+ enabled='{isPopGroupNotNull()}' decorator='boxed' _sensitivityBean='{PopulationGroupImpl.class}' _sensitivityMethod='"ReproductionRate"'/>
</cell>
</row>
<row>
@@ -205,7 +205,7 @@
<JTextField id="fieldPopulationGroupAge" text='{String.valueOf(getPopulationGroup().getAge())}'
onKeyReleased='getPopulationGroup().setAge(Double.parseDouble(fieldPopulationGroupAge.getText()))'
enabled='{getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}'
- decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"Age"'/>
+ decorator='boxed' _sensitivityBean='{PopulationGroupImpl.class}' _sensitivityMethod='"Age"'/>
</cell>
</row>
<row>
@@ -217,14 +217,14 @@
<JTextField id="fieldPopulationGroupMinLength" text='{String.valueOf(getPopulationGroup().getMinLength())}'
toolTipText="isisfish.populationGroup.minimumLength"
onKeyReleased='getPopulationGroup().setMinLength(Double.parseDouble(fieldPopulationGroupMinLength.getText()))'
- enabled='{!getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}' decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"MinLength"'/>
+ enabled='{!getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}' decorator='boxed' _sensitivityBean='{PopulationGroupImpl.class}' _sensitivityMethod='"MinLength"'/>
</cell>
<cell fill='both' weightx='0.5'>
<!-- non editable max length field -->
<JTextField id="fieldPopulationGroupMaxLength" text='{String.valueOf(getPopulationGroup().getMaxLength())}'
toolTipText="isisfish.populationGroup.maximumLength"
onKeyReleased='getPopulationGroup().setMaxLength(Double.parseDouble(fieldPopulationGroupMaxLength.getText()))'
- enabled='{!getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}' decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"MaxLength"'/>
+ enabled='{!getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}' decorator='boxed' _sensitivityBean='{PopulationGroupImpl.class}' _sensitivityMethod='"MaxLength"'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -58,7 +58,7 @@
text='isisfish.common.migration' active='{isActive()}'
bean='{getPopInfo()}' formuleCategory='Migration' beanProperty='MigrationEquation'
clazz='{fr.ifremer.isisfish.equation.MigrationEquation.class}'
- decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"MigrationEquation"'/>
+ decorator='boxed' _sensitivityBean='{PopulationSeasonInfo.class}' _sensitivityMethod='"MigrationEquation"'/>
</cell>
</row>
<row>
@@ -67,7 +67,7 @@
text='isisfish.common.emigration' active='{isActive()}'
bean='{getPopInfo()}' formuleCategory='Emigration' beanProperty='EmigrationEquation'
clazz='{fr.ifremer.isisfish.equation.EmigrationEquation.class}'
- decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"EmigrationEquation"'/>
+ decorator='boxed' _sensitivityBean='{PopulationSeasonInfo.class}' _sensitivityMethod='"EmigrationEquation"'/>
</cell>
</row>
<row>
@@ -76,7 +76,7 @@
text='isisfish.common.immigration' active='{isActive()}'
bean='{getPopInfo()}' formuleCategory='Immigration' beanProperty='ImmigrationEquation'
clazz='{fr.ifremer.isisfish.equation.ImmigrationEquation.class}'
- decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"ImmigrationEquation"'/>
+ decorator='boxed' _sensitivityBean='{PopulationSeasonInfo.class}' _sensitivityMethod='"ImmigrationEquation"'/>
</cell>
</row>
</Table>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -157,15 +157,15 @@
<JTabbedPane id="fieldUseMatrix" constraints='"fieldUseMatrix"' enabled='{isSelectedPopulationSeasonInfo()}'>
<tab title='{_("isisfish.populationMigrationMigration.title")}'>
<PopulationMigrationMigrationUI id="populationMigrationMigrationUI" constructorParams='this' decorator='boxed'
- _bean='{PopulationSeasonInfo.class}' _method='"MigrationMatrix"' active='{isSelectedPopulationSeasonInfo()}' />
+ _sensitivityBean='{PopulationSeasonInfo.class}' _sensitivityMethod='"MigrationMatrix"' active='{isSelectedPopulationSeasonInfo()}' />
</tab>
<tab title='{_("isisfish.populationMigrationImmigration.title")}'>
<PopulationMigrationImmigrationUI id="populationMigrationImmigrationUI" constructorParams='this' decorator='boxed'
- _bean='{PopulationSeasonInfo.class}' _method='"ImmigrationMatrix"' active='{isSelectedPopulationSeasonInfo()}' />
+ _sensitivityBean='{PopulationSeasonInfo.class}' _sensitivityMethod='"ImmigrationMatrix"' active='{isSelectedPopulationSeasonInfo()}' />
</tab>
<tab title='{_("isisfish.populationMigrationEmigration.title")}'>
<PopulationMigrationEmigrationUI id="populationMigrationEmigrationUI" constructorParams='this' decorator='boxed'
- _bean='{PopulationSeasonInfo.class}' _method='"EmigrationMatrix"' active='{isSelectedPopulationSeasonInfo()}' />
+ _sensitivityBean='{PopulationSeasonInfo.class}' _sensitivityMethod='"EmigrationMatrix"' active='{isSelectedPopulationSeasonInfo()}' />
</tab>
</JTabbedPane>
<PopulationMigrationEquationUI id='populationMigrationEquationUI' constraints='"fieldUseEquation"' constructorParams='this'
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -97,7 +97,7 @@
text='isisfish.populationRecruitment.reproductionEquation' active="{isActive()}"
bean='{getBean()}' formuleCategory='Reproduction' beanProperty='ReproductionEquation'
clazz='{fr.ifremer.isisfish.equation.PopulationReproductionEquation.class}'
- decorator='boxed' _bean='{Population.class}' _method='"ReproductionEquation"'/>
+ decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"ReproductionEquation"'/>
</cell>
</row>
<row>
@@ -107,11 +107,11 @@
<cell fill='horizontal' weightx='1.0'>
<!--NumberEditor id='fieldPopulationMonthGapBetweenReproRecrutement' constructorParams='this'
bean='{getBean()}' property='monthGapBetweenReproRecrutement' useSign='true'
- enabled='{isActive()}' decorator='boxed' _bean='{PopulationImpl.class}'
- _method='"MonthGapBetweenReproRecrutement"'/-->
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{PopulationImpl.class}'
+ _sensitivityMethod='"MonthGapBetweenReproRecrutement"'/-->
<JTextField id="fieldPopulationMonthGapBetweenReproRecrutement" text='{String.valueOf(getBean().getMonthGapBetweenReproRecrutement())}'
onKeyReleased='getBean().setMonthGapBetweenReproRecrutement(Integer.parseInt(fieldPopulationMonthGapBetweenReproRecrutement.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{Population.class}' _method='"MonthGapBetweenReproRecrutement"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"MonthGapBetweenReproRecrutement"'/>
</cell>
</row>
<row>
@@ -121,7 +121,7 @@
<cell fill='both' weightx='1.0' weighty='0.5'>
<org.nuiton.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationRecruitmentDistribution'
matrix='{getBean().getRecruitmentDistribution() == null ? null : getBean().getRecruitmentDistribution().copy()}'
- enabled='{isActive()}' decorator='boxed' _bean='{Population.class}' _method='"RecruitmentDistribution"'
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{Population.class}' _sensitivityMethod='"RecruitmentDistribution"'
onMatrixChanged="populationRecruitmentDistributionMatrixChanged(event)" />
</cell>
</row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonSpacializedUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonSpacializedUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonSpacializedUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -162,7 +162,7 @@
<cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
<org.nuiton.math.matrix.gui.MatrixPanelEditor id='matrixPanelPopulationSeasonLengthChange'
enabled='{isPopSeasonInfoNotNull()}'
- _bean='{PopulationSeasonInfo.class}' _method='"LengthChangeMatrix"'
+ _sensitivityBean='{PopulationSeasonInfo.class}' _sensitivityMethod='"LengthChangeMatrix"'
visible='{isAgeGroupType()}' decorator='boxed'
matrix='{getPopulationSeasonInfo() == null ? null : getPopulationSeasonInfo().getLengthChangeMatrix().copy()}'
onMatrixChanged="populationSeasonLengthMatrixChanged(event)" />
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -242,6 +242,12 @@
populationSeasonSpecializedUI.setVisible(result);
return result;
}
+
+ at Override
+public void setLayer(boolean active) {
+ super.setLayer(active);
+ populationSeasonSpecializedUI.setLayer(active);
+}
]]>
</script>
<JPanel id='body'>
@@ -272,13 +278,13 @@
</cell>
<cell fill='both' weightx='1.0'>
<JCheckBox id="fieldPopulationSeasonGroupChange" text="isisfish.populationSeasons.changeGroup" selected='{getPopulationSeasonInfo().getGroupChange()}'
- decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"GroupChange"'
+ decorator='boxed' _sensitivityBean='{PopulationSeasonInfo.class}' _sensitivityMethod='"GroupChange"'
onActionPerformed='seasonGroupChanged()' enabled='{isPopSeasonInfoNotNull()}' visible='{isAgeGroupType(getPopulationSeasonInfo().getPopulation().getSpecies().getAgeGroupType())}'/>
</cell>
</row>
<row>
<cell columns='2' fill='both' weightx='1.0' weighty='0.6'>
- <PopulationSeasonSpacializedUI id='populationSeasonSpecializedUI' bean='{getBean()}'
+ <PopulationSeasonSpacializedUI id='populationSeasonSpecializedUI' constructorParams='this' bean='{getBean()}'
populationSeasonInfo='{getPopulationSeasonInfo()}' popSeasonInfoNotNull='{isPopSeasonInfoNotNull()}'
ageGroupType='{isAgeGroupType(!getPopulationSeasonInfo().getPopulation().getSpecies().getAgeGroupType())}'/>
</cell>
@@ -290,7 +296,7 @@
<cell fill='horizontal' weightx='1.0'>
<JCheckBox id="fieldPopulationSeasonReproduction" selected='{getPopulationSeasonInfo().getReproduction()}'
onActionPerformed='getPopulationSeasonInfo().setReproduction(fieldPopulationSeasonReproduction.isSelected())'
- text="isisfish.populationSeasons.Reproduction" enabled='{isPopSeasonInfoNotNull()}'/>
+ text="isisfish.populationSeasons.Reproduction" enabled='{isPopSeasonInfoNotNull()}' decorator='boxed'/>
</cell>
</row>
<row>
@@ -303,7 +309,7 @@
matrix='{getPopulationSeasonInfo() == null ? null : getPopulationSeasonInfo().getReproductionDistribution().copy()}'
enabled='{isPopSeasonInfoNotNull()}'
visible='{getPopulationSeasonInfo().getReproduction()}'
- decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"ReproductionDistribution"'
+ decorator='boxed' _sensitivityBean='{PopulationSeasonInfo.class}' _sensitivityMethod='"ReproductionDistribution"'
onMatrixChanged="populationSeasonReproductionDistributionMatrixChanged(event)" />
</cell>
</row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -51,6 +51,18 @@
// active les bouton sur l'onglet courant
setCurrentTabActionButtons(populationTab);
}
+
+ at Override
+public void setLayer(boolean active) {
+ populationBasicsUI.setLayer(active);
+ populationZoneUI.setLayer(active);
+ populationSeasonsUI.setLayer(active);
+ populationEquationUI.setLayer(active);
+ populationRecruitementUI.setLayer(active);
+ populationGroupUI.setLayer(active);
+ populationCapturabilityUI.setLayer(active);
+ populationMigrationUI.setLayer(active);
+}
]]>
</script>
<JPanel id='body'>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -56,7 +56,7 @@
<cell columns="2" fill='both' weightx='1.0' weighty='1'>
<PopulationZonesEditorUI id='popZones' constructorParams='this'
bean='{getBean()}' active='{isActive()}' decorator='boxed'
- _bean='{Population.class}' _method='"MappingZoneReproZoneRecru"'/>
+ _sensitivityBean='{Population.class}' _sensitivityMethod='"MappingZoneReproZoneRecru"'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/RangeOfValuesUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/RangeOfValuesUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/RangeOfValuesUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -33,19 +33,28 @@
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
-addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getNewValue() == null) {
- fieldGearParamPossibleValue.setText("");
- }
- if (evt.getNewValue() != null) {
+boolean init = false;
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ fieldGearParamPossibleValue.setText("");
+ }
+ if (evt.getNewValue() != null) {
+ java.util.List<Object> values = new ArrayList<Object>();
+ for (String value : RangeOfValues.getPossibleTypes()) {
+ values.add(value);
+ }
+
+ init = true;
+ jaxx.runtime.SwingUtil.fillComboBox(fieldGearParamType, values, getBean().getPossibleValue() == null ? null : getBean().getPossibleValue().getType(), true);
+ init = false;
+ }
}
- }
-});
+ });
+}
-boolean init = false;
-
@Override
public void refresh() {
Gear gear = getVerifier().getEntity(Gear.class);
@@ -73,10 +82,8 @@
}
protected void gearParamChanged() {
- if (fieldGearParamType.getSelectedItem() != null) {
- if (!init) {
- getBean().setPossibleValue(new RangeOfValues(fieldGearParamType.getSelectedItem().toString().concat("[" + fieldGearParamPossibleValue.getText() + "]")));
- }
+ if (fieldGearParamType.getSelectedItem() != null && !init) {
+ getBean().setPossibleValue(new RangeOfValues(fieldGearParamType.getSelectedItem().toString().concat("[" + fieldGearParamPossibleValue.getText() + "]")));
}
}
]]></script>
@@ -87,9 +94,10 @@
<JAXXComboBox id="fieldGearParamType" onActionPerformed='gearParamChanged()' enabled='{isActive()}'/>
</cell>
<cell fill='horizontal' weightx='0.5'>
- <JTextField id="fieldGearParamPossibleValue" text='{getBean().getPossibleValue() == null ? "" : getBean().getPossibleValue().getValues()}' onKeyReleased='gearParamChanged()' enabled='{isActive()}'/>
+ <JTextField id="fieldGearParamPossibleValue" text='{getBean().getPossibleValue() == null ? "" : getBean().getPossibleValue().getValues()}'
+ onKeyReleased='gearParamChanged()' enabled='{isActive()}'/>
</cell>
</row>
</Table>
</JPanel>
-</fr.ifremer.isisfish.ui.input.InputContentUI>
\ No newline at end of file
+</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityEditorUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityEditorUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityEditorUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -40,8 +40,23 @@
import fr.ifremer.isisfish.ui.input.gear.GearPopulationSelectivityModel;
import fr.ifremer.isisfish.ui.input.gear.PopulationComboModel;
import fr.ifremer.isisfish.ui.widget.editor.EquationTableEditor;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-selectivityTable.addMouseListener(new MouseAdapter() {
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+
+ }
+ if (evt.getNewValue() != null) {
+ refresh();
+ }
+ }
+ });
+}
+
+/*selectivityTable.addMouseListener(new MouseAdapter() {
@Override
public void mouseReleased(MouseEvent e) {
// le bouton ne doit pas s'activer dans l'analyse de sensibilite
@@ -49,7 +64,7 @@
removeSelectivityButton.setEnabled(selectivityTable.getSelectedRow() != -1);
}
}
-});
+});*/
@Override
public void refresh() {
@@ -58,8 +73,8 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
- setBean(null);
- setBean(gear);
+ //setBean(null);
+ //setBean(gear);
if (getBean() != null) {
setSelectivityPopulationSelected(false);
@@ -143,7 +158,7 @@
</cell>
<cell fill='horizontal' weightx='1.0'>
<JComboBox id="fieldSelectivityPopulation" onActionPerformed='selectivityChanged()' enabled='{isActive()}'
- decorator='boxed' />
+ decorator='boxed' />
</cell>
</row>
<row>
@@ -158,20 +173,21 @@
<row>
<cell columns='2' fill='horizontal' weightx='1.0'>
<JButton id="addSelectivityButton" text="isisfish.common.add" onActionPerformed='addSelectivity()'
- enabled='{isSelectivityPopulationSelected()}' decorator='boxed' />
+ enabled='{isSelectivityPopulationSelected()}' decorator='boxed' />
</cell>
</row>
<row>
<cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
<JScrollPane>
- <JTable id="selectivityTable" rowHeight='24' enabled='{isActive()}' decorator='boxed' />
+ <JTable id="selectivityTable" rowHeight='24' enabled='{isActive()}'
+ decorator='boxed' />
</JScrollPane>
</cell>
</row>
<row>
<cell columns='2' fill='horizontal' weightx='1.0'>
<JButton id="removeSelectivityButton" text="isisfish.common.remove" onActionPerformed='removeSelectivity()'
- enabled='false' decorator='boxed' />
+ enabled='{isActive() && selectivityTable.getSelectedRow() != -1}' decorator='boxed' />
</cell>
</row>
</Table>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -39,7 +39,7 @@
}
if (evt.getNewValue() != null) {
- getVerifier().addCurrentPanel(editor);
+ //getVerifier().addCurrentPanel(editor);
}
}
});
@@ -62,13 +62,19 @@
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
}
+
+ at Override
+public void setLayer(boolean active) {
+ super.setLayer(active);
+ editor.setLayer(active);
+}
]]></script>
<JPanel id='body'>
<Table>
<row>
<cell columns="2" fill='both' weightx='1.0' weighty='1.0'>
- <SelectivityEditorUI id='editor' constructorParams='this' bean='{getBean()}'
- _bean='{Gear.class}' _method='"PopulationSelectivity"'/>
+ <SelectivityEditorUI id='editor' constructorParams='this' bean='{getBean()}' active="{isActive()}"
+ _sensitivityBean='{Gear.class}' _sensitivityMethod='"PopulationSelectivity"'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsBasicsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsBasicsUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsBasicsUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -28,17 +28,33 @@
<fr.ifremer.isisfish.entities.SetOfVessels id='bean' javaBean='null'/>
<script><![CDATA[
-
-import org.nuiton.topia.TopiaException;
import fr.ifremer.isisfish.entities.Port;
import fr.ifremer.isisfish.entities.Equation;
import fr.ifremer.isisfish.entities.VesselType;
import fr.ifremer.isisfish.entities.Formule;
import fr.ifremer.isisfish.entities.SetOfVessels;
import jaxx.runtime.swing.editor.NumberEditor;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
boolean init = false;
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+
+ }
+ if (evt.getNewValue() != null) {
+ init = true;
+ jaxx.runtime.SwingUtil.fillComboBox(fieldSetOfVesselsPort,getRegion().getPort(), getBean().getPort(), true);
+ jaxx.runtime.SwingUtil.fillComboBox(fieldSetOfVesselsVesselType,getRegion().getVesselType(), getBean().getVesselType(), true);
+ init=false;
+ }
+ }
+ });
+}
+
@Override
public void refresh() {
SetOfVessels setOfVessels = (SetOfVessels)getVerifier().getEntity(SetOfVessels.class);
@@ -118,10 +134,10 @@
<!--NumberEditor id='fieldSetOfVesselsNumberOfVessels' constructorParams='this'
bean='{getBean()}' property='numberOfVessels'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{SetOfVesselsImpl.class}' _method='"NumberOfVessels"'/-->
+ _sensitivityBean='{SetOfVesselsImpl.class}' _sensitivityMethod='"NumberOfVessels"'/-->
<JTextField id="fieldSetOfVesselsNumberOfVessels" text='{String.valueOf(getBean().getNumberOfVessels())}'
onKeyReleased='getBean().setNumberOfVessels(Integer.parseInt(fieldSetOfVesselsNumberOfVessels.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{SetOfVessels.class}' _method='"NumberOfVessels"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{SetOfVessels.class}' _sensitivityMethod='"NumberOfVessels"'/>
</cell>
</row>
<row>
@@ -132,10 +148,10 @@
<!--NumberEditor id='fieldSetOfVesselsFixedCosts' constructorParams='this'
bean='{getBean()}' property='fixedCosts'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{SetOfVesselsImpl.class}' _method='"FixedCosts"'/-->
+ _sensitivityBean='{SetOfVesselsImpl.class}' _sensitivityMethod='"FixedCosts"'/-->
<JTextField id="fieldSetOfVesselsFixedCosts" text='{String.valueOf(getBean().getFixedCosts())}'
onKeyReleased='getBean().setFixedCosts(Double.parseDouble(fieldSetOfVesselsFixedCosts.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{SetOfVessels.class}' _method='"FixedCosts"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{SetOfVessels.class}' _sensitivityMethod='"FixedCosts"'/>
</cell>
</row>
<row>
@@ -144,7 +160,7 @@
text='isisfish.setOfVessels.technicalEfficiency'
bean='{getBean()}' formuleCategory='TechnicalEfficiency' beanProperty='TechnicalEfficiencyEquation'
clazz='{fr.ifremer.isisfish.equation.SoVTechnicalEfficiencyEquation.class}'
- decorator='boxed' _bean='{SetOfVessels.class}' _method='"TechnicalEfficiencyEquation"'/>
+ decorator='boxed' _sensitivityBean='{SetOfVessels.class}' _sensitivityMethod='"TechnicalEfficiencyEquation"'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -47,17 +47,23 @@
// active les bouton sur l'onglet courant
setCurrentTabActionButtons(setOfVesselsTab);
}
+ at Override
+public void setLayer(boolean active) {
+ setOfVesselsBasicsUI.setLayer(active);
+ effortDescriptionUI.setLayer(active);
+ effortParametersUI.setLayer(active);
+}
]]></script>
<JPanel id="body">
<JTabbedPane id="setOfVesselsTab">
<tab title='{_("isisfish.setOfVessels.title")}'>
- <SetOfVesselsBasicsUI id='setOfVesselsBasicsUI' bean="{getBean()}" constructorParams='this'/>
+ <SetOfVesselsBasicsUI id='setOfVesselsBasicsUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<tab title='{_("isisfish.effortDescription.title")}'>
- <EffortDescriptionUI id='effortDescriptionUI' bean="{getBean()}" constructorParams='this'/>
+ <EffortDescriptionUI id='effortDescriptionUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<tab title='{_("isisfish.effortDescription.parametersTitle")}'>
- <EffortDescriptionParametersUI id='effortParametersUI' bean="{getBean()}" constructorParams='this'/>
+ <EffortDescriptionParametersUI id='effortParametersUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
</JTabbedPane>
</JPanel>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -99,7 +99,7 @@
<cell fill='horizontal' columns='2' weightx='1.0'>
<JTextField id="fieldSpeciesScientificName" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getScientificName())}'
onKeyReleased='getBean().setScientificName(fieldSpeciesScientificName.getText())'
- enabled='{isActive()}' decorator='boxed' _bean='{Species.class}' _method='"ScientificName"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{Species.class}' _sensitivityMethod='"ScientificName"'/>
</cell>
</row>
<row>
@@ -109,7 +109,7 @@
<cell fill='horizontal' columns='2' weightx='1.0'>
<JTextField id="fieldSpeciesCodeRubbin" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getCodeRubbin())}'
onKeyReleased='getBean().setCodeRubbin(fieldSpeciesCodeRubbin.getText())' enabled='{isActive()}'
- decorator='boxed' _bean='{Species.class}' _method='"CodeRubbin"'/>
+ decorator='boxed' _sensitivityBean='{Species.class}' _sensitivityMethod='"CodeRubbin"'/>
</cell>
</row>
<row>
@@ -119,11 +119,11 @@
<cell fill='horizontal' columns='2' weightx='1.0'>
<!--NumberEditor id='fieldSpeciesCEE' constructorParams='this'
bean='{getBean()}' property='codeCEE'
- decorator='boxed' _bean='{SpeciesImpl.class}'
- useSign='true' _method='"CodeCEE"'/-->
+ decorator='boxed' _sensitivityBean='{SpeciesImpl.class}'
+ useSign='true' _sensitivityMethod='"CodeCEE"'/-->
<JTextField id="fieldSpeciesCEE" text='{String.valueOf(getBean().getCodeCEE())}'
onKeyReleased='getBean().setCodeCEE(Integer.parseInt(fieldSpeciesCEE.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{Species.class}' _method='"CodeCEE"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{Species.class}' _sensitivityMethod='"CodeCEE"'/>
</cell>
</row>
<row>
@@ -132,7 +132,7 @@
</cell>
<cell fill='horizontal' weightx='1' columns='2'>
<SpeciesStructuredUI bean='{getBean()}' active='{isActive()}' decorator='boxed'
- _bean='{Species.class}' _method='"AgeGroupType"'/>
+ _sensitivityBean='{Species.class}' _sensitivityMethod='"AgeGroupType"'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -28,25 +28,28 @@
<script><![CDATA[
import org.apache.commons.lang.StringUtils;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+
+ }
+ if (evt.getNewValue() != null) {
+ //refresh();
+ }
+ }
+ });
+}
+
@Override
public void refresh() {
- strategyJanuary.init(0);
- strategyFebuary.init(1);
- strategyMarch.init(2);
- strategyApril.init(3);
- strategyMay.init(4);
- strategyJune.init(5);
- strategyJuly.init(6);
- strategyAugust.init(7);
- strategySeptember.init(8);
- strategyOctober.init(9);
- strategyNovember.init(10);
- strategyDecember.init(11);
- getVerifier().addCurrentPanel(strategyJanuary, strategyFebuary, strategyMarch,
+ /*getVerifier().addCurrentPanel(strategyJanuary, strategyFebuary, strategyMarch,
strategyApril, strategyMay, strategyJune,
strategyJuly, strategyAugust, strategySeptember,
- strategyOctober, strategyNovember, strategyDecember);
+ strategyOctober, strategyNovember, strategyDecember);*/
}
@Override
@@ -54,61 +57,76 @@
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
}
+ at Override
+public void setLayer(boolean active) {
+ strategyJanuary.setLayer(active);
+ strategyFebuary.setLayer(active);
+ strategyMarch.setLayer(active);
+ strategyApril.setLayer(active);
+ strategyMay.setLayer(active);
+ strategyJune.setLayer(active);
+ strategyJuly.setLayer(active);
+ strategyAugust.setLayer(active);
+ strategySeptember.setLayer(active);
+ strategyOctober.setLayer(active);
+ strategyNovember.setLayer(active);
+ strategyDecember.setLayer(active);
+}
]]></script>
<JPanel id='body'>
<Table constraints='BorderLayout.CENTER'>
<row>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyJanuary' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.january"))}' />
+ <StrategyOneMonthInfoUI id='strategyJanuary' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="0" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.january"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyFebuary' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.february"))}' />
+ <StrategyOneMonthInfoUI id='strategyFebuary' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="1" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.february"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyMarch' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.march"))}' />
+ <StrategyOneMonthInfoUI id='strategyMarch' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="2" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.march"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyApril' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.april"))}' />
+ <StrategyOneMonthInfoUI id='strategyApril' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="3" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.april"))}' />
</cell>
</row>
<row>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyMay' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.may"))}' />
+ <StrategyOneMonthInfoUI id='strategyMay' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="4" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.may"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyJune' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.june"))}' />
+ <StrategyOneMonthInfoUI id='strategyJune' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="5" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.june"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyJuly' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.july"))}' />
+ <StrategyOneMonthInfoUI id='strategyJuly' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="6" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.july"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyAugust' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.august"))}' />
+ <StrategyOneMonthInfoUI id='strategyAugust' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="7" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.august"))}' />
</cell>
</row>
<row>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategySeptember' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.september"))}' />
+ <StrategyOneMonthInfoUI id='strategySeptember' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="8" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.september"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyOctober' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.october"))}' />
+ <StrategyOneMonthInfoUI id='strategyOctober' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="9" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.october"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyNovember' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.november"))}' />
+ <StrategyOneMonthInfoUI id='strategyNovember' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="10" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.november"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyDecember' bean="{getBean()}" constructorParams='this'
- strategieMonthText='{StringUtils.capitalize(_("isisfish.month.december"))}' />
+ <StrategyOneMonthInfoUI id='strategyDecember' bean="{getBean()}" active="{isActive()}" constructorParams='this'
+ month="11" strategieMonthText='{StringUtils.capitalize(_("isisfish.month.december"))}' />
</cell>
</row>
</Table>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -24,6 +24,7 @@
-->
<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Strategy'>
+ <Integer id="month" javaBean="null"/>
<String id="strategieMonthText" javaBean='null'/>
<!-- bean property -->
@@ -38,9 +39,22 @@
import jaxx.runtime.swing.editor.NumberEditor;
import fr.ifremer.isisfish.entities.TripType;
import org.nuiton.math.matrix.gui.MatrixPanelListener;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-protected int month = 0;
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ }
+ if (evt.getNewValue() != null) {
+ refresh();
+ }
+ }
+ });
+}
+
protected void strategyMonthInfoProportionMatrixChanged(MatrixPanelEvent event) {
if (getStrategyMonthInfo() != null && fieldStrategyMonthInfoProportion.getMatrix() != null) {
if (log.isDebugEnabled()) {
@@ -55,7 +69,7 @@
Strategy strategy = (Strategy)getVerifier().getEntity(Strategy.class);
// don't use setBean(null) here
- setBean(strategy);
+ //setBean(strategy);
if (getBean() != null) {
Object[] monthInfos = getBean().getStrategyMonthInfo().toArray();
@@ -68,9 +82,9 @@
getVerifier().addCurrentEntity(getStrategyMonthInfo());
if (getStrategyMonthInfo() != null) {
- numberOfTrips.putClientProperty("beanID", getStrategyMonthInfo().getTopiaId());
- fieldStrategyMonthInfoProportion.putClientProperty("beanID", getStrategyMonthInfo().getTopiaId());
- fieldStrategyMonthInfoMinInactivityDays.putClientProperty("beanID", getStrategyMonthInfo().getTopiaId());
+ numberOfTrips.putClientProperty("sensitivityBeanID", getStrategyMonthInfo().getTopiaId());
+ fieldStrategyMonthInfoProportion.putClientProperty("sensitivityBeanID", getStrategyMonthInfo().getTopiaId());
+ fieldStrategyMonthInfoMinInactivityDays.putClientProperty("sensitivityBeanID", getStrategyMonthInfo().getTopiaId());
ActionListener[] listeners = fieldStrategyMonthInfoTripType.getActionListeners();
for (ActionListener listener : listeners) {
fieldStrategyMonthInfoTripType.removeActionListener(listener);
@@ -90,7 +104,6 @@
}
}
}
- //fieldStrategyMonthInfoProportion.addMatrixListener(matrixListener);
}
@Override
@@ -98,10 +111,6 @@
}
-public void init(int m) {
- month = m;
-}
-
protected void setProportionMetierMatrix() {
if (getStrategyMonthInfo().getProportionMetier() != null) {
fieldStrategyMonthInfoProportion.setMatrix(getStrategyMonthInfo().getProportionMetier().copy());
@@ -130,7 +139,7 @@
</cell>
<cell fill='horizontal' weightx='0.5' anchor='west'>
<JLabel id='numberOfTrips' text='{String.valueOf(getStrategyMonthInfo().getNumberOfTrips())}' enabled='{isActive()}'
- decorator='boxed' _bean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _method='"NumberOfTrips"'/>
+ decorator='boxed' _sensitivityBean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _sensitivityMethod='"NumberOfTrips"'/>
</cell>
</row>
<row>
@@ -141,10 +150,10 @@
<!-- NumberEditor id='fieldStrategyMonthInfoMinInactivityDays' constructorParams='this'
bean='{getStrategyMonthInfo()}' property='minInactivityDays'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{StrategyMonthInfoImpl.class}' _method='"MinInactivityDays"'/-->
+ _sensitivityBean='{StrategyMonthInfoImpl.class}' _sensitivityMethod='"MinInactivityDays"'/-->
<JTextField id="fieldStrategyMonthInfoMinInactivityDays" text='{String.valueOf(getStrategyMonthInfo().getMinInactivityDays())}'
onKeyReleased='getStrategyMonthInfo().setMinInactivityDays(Double.parseDouble(fieldStrategyMonthInfoMinInactivityDays.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _method='"MinInactivityDays"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _sensitivityMethod='"MinInactivityDays"'/>
</cell>
</row>
<row>
@@ -152,7 +161,7 @@
<org.nuiton.math.matrix.gui.MatrixPanelEditor id="fieldStrategyMonthInfoProportion" linearModelShowDefault='{true}'
linearModel='{true}' matrix='{getStrategyMonthInfo().getProportionMetier() == null ? null : getStrategyMonthInfo().getProportionMetier().copy()}'
onMatrixChanged="strategyMonthInfoProportionMatrixChanged(event)"
- enabled='{isActive()}' decorator='boxed' _bean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _method='"ProportionMetier"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _sensitivityMethod='"ProportionMetier"'/>
</cell>
</row>
</Table>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -119,10 +119,10 @@
<!-- NumberEditor id='fieldStrategyProportionSetOfVessels' constructorParams='this'
bean='{getBean()}' property='proportionSetOfVessels'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{StrategyImpl.class}' _method='"ProportionSetOfVessels"'/-->
+ _sensitivityBean='{StrategyImpl.class}' _sensitivityMethod='"ProportionSetOfVessels"'/-->
<JTextField id="fieldStrategyProportionSetOfVessels" text='{String.valueOf(getBean().getProportionSetOfVessels())}'
onKeyReleased='getBean().setProportionSetOfVessels(Double.parseDouble(fieldStrategyProportionSetOfVessels.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{Strategy.class}' _method='"ProportionSetOfVessels"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{Strategy.class}' _sensitivityMethod='"ProportionSetOfVessels"'/>
</cell>
</row>
<row>
@@ -141,7 +141,7 @@
text='isisfish.strategy.inactivity'
bean='{getBean()}' formuleCategory='Inactivity' beanProperty='InactivityEquation'
clazz='{fr.ifremer.isisfish.equation.StrategyInactivityEquation.class}'
- decorator='boxed' _bean='{Strategy.class}' _method='"Inactivity"'/> <!-- bindings not work well actif='{getBean().getInactivityEquationUsed()}' -->
+ decorator='boxed' _sensitivityBean='{Strategy.class}' _sensitivityMethod='"Inactivity"'/> <!-- bindings not work well actif='{getBean().getInactivityEquationUsed()}' -->
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -32,6 +32,7 @@
// (depends on sensitivity can't be done on constructor)
installChangeListener(strategyTab);
}
+
@Override
public void refresh() {
@@ -43,6 +44,12 @@
// active les bouton sur l'onglet courant
setCurrentTabActionButtons(strategyTab);
}
+
+ at Override
+public void setLayer(boolean active) {
+ strategyTabUI.setLayer(active);
+ strategyMonthInfoUI.setLayer(active);
+}
]]></script>
<JPanel id="body">
<JTabbedPane id="strategyTab">
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -94,7 +94,7 @@
<cell fill='horizontal' weightx='1.0'>
<JTextField id="fieldTripTypeDuration" text='{String.valueOf(getBean().getTripDuration().getHour())}' toolTipText="isisfish.common.duration.inhours"
onKeyReleased='getBean().setTripDuration(new TimeUnit(Double.parseDouble(fieldTripTypeDuration.getText()) * 3600))'
- enabled='{isActive()}' decorator='boxed' _bean='{TripType.class}' _method='"TripDuration"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{TripType.class}' _sensitivityMethod='"TripDuration"'/>
</cell>
</row>
<row>
@@ -104,7 +104,7 @@
<cell fill='horizontal' weightx='1.0'>
<JTextField id="fieldTripTypeMinTimeBetweenTrip" text='{String.valueOf(getBean().getMinTimeBetweenTrip().getHour())}'
onKeyReleased='getBean().setMinTimeBetweenTrip(new TimeUnit(Double.parseDouble(fieldTripTypeMinTimeBetweenTrip.getText()) * 3600))'
- enabled='{isActive()}' decorator='boxed' _bean='{TripType.class}' _method='"MinTimeBetweenTrip"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{TripType.class}' _sensitivityMethod='"MinTimeBetweenTrip"'/>
</cell>
</row>
<row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2011-03-16 16:55:59 UTC (rev 3159)
@@ -36,25 +36,28 @@
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
-setButtonTitle(_("isisfish.input.continueSetOfVessels"));
-setNextPath("$root/$setOfVessels");
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- fieldVesselTypeName.setText("");
- fieldVesselTypeLength.setText("");
- fieldVesselTypeSpeed.setText("");
- fieldVesselTypeMaxTripDuration.setText("");
- fieldVesselTypeActivityRange.setText("");
- fieldVesselTypeMinCrewSize.setText("");
- fieldVesselTypeSpeed.setText("");
- fieldVesselTypeUnitFuelCostOfTravel.setText("");
- fieldVesselTypeComment.setText("");
+protected void $afterCompleteSetup() {
+ setButtonTitle(_("isisfish.input.continueSetOfVessels"));
+ setNextPath("$root/$setOfVessels");
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ fieldVesselTypeName.setText("");
+ fieldVesselTypeLength.setText("");
+ fieldVesselTypeSpeed.setText("");
+ fieldVesselTypeMaxTripDuration.setText("");
+ fieldVesselTypeActivityRange.setText("");
+ fieldVesselTypeMinCrewSize.setText("");
+ fieldVesselTypeSpeed.setText("");
+ fieldVesselTypeUnitFuelCostOfTravel.setText("");
+ fieldVesselTypeComment.setText("");
+ }
+ if (evt.getNewValue() != null) {
+
+ }
}
- if (evt.getNewValue() != null) {
- }
- }
-});
+ });
+}
@Override
public void refresh() {
@@ -126,10 +129,10 @@
<!--NumberEditor id='fieldVesselTypeLength' constructorParams='this'
bean='{getBean()}' property='length'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{VesselType.class}' _method='"Length"'/-->
+ _sensitivityBean='{VesselType.class}' _sensitivityMethod='"Length"'/-->
<JTextField id="fieldVesselTypeLength" text='{String.valueOf(getBean().getLength())}' enabled='{isActive()}'
onKeyReleased='getBean().setLength(Integer.parseInt(fieldVesselTypeLength.getText()))'
- decorator='boxed' _bean='{VesselType.class}' _method='"Length"'/>
+ decorator='boxed' _sensitivityBean='{VesselType.class}' _sensitivityMethod='"Length"'/>
</cell>
</row>
<row>
@@ -140,10 +143,10 @@
<!--NumberEditor id='fieldVesselTypeSpeed' constructorParams='this'
bean='{getBean()}' property='speed' useSign='true'
enabled='{isActive()}' decorator='boxed'
- _bean='{VesselType.class}' _method='"Speed"'/-->
+ _sensitivityBean='{VesselType.class}' _sensitivityMethod='"Speed"'/-->
<JTextField id="fieldVesselTypeSpeed" text='{String.valueOf(getBean().getSpeed())}' enabled='{isActive()}'
onKeyReleased='getBean().setSpeed(Double.parseDouble(fieldVesselTypeSpeed.getText()))'
- decorator='boxed' _bean='{VesselType.class}' _method='"Speed"'/>
+ decorator='boxed' _sensitivityBean='{VesselType.class}' _sensitivityMethod='"Speed"'/>
</cell>
</row>
<row>
@@ -153,7 +156,7 @@
<cell fill='horizontal' weightx='1.0'>
<JTextField id="fieldVesselTypeMaxTripDuration" text='{String.valueOf(getBean().getMaxTripDuration().getHour())}' toolTipText="isisfish.common.duration.inhours"
enabled='{isActive()}' onKeyReleased='getBean().setMaxTripDuration(new TimeUnit(Double.parseDouble(fieldVesselTypeMaxTripDuration.getText()) * 3600))'
- decorator='boxed' _bean='{VesselType.class}' _method='"MaxTripDuration"'/>
+ decorator='boxed' _sensitivityBean='{VesselType.class}' _sensitivityMethod='"MaxTripDuration"'/>
</cell>
</row>
<row>
@@ -164,10 +167,10 @@
<!--NumberEditor id='fieldVesselTypeActivityRange' constructorParams='this'
bean='{getBean()}' property='activityRange'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{VesselType.class}' _method='"ActivityRange"'/-->
+ _sensitivityBean='{VesselType.class}' _sensitivityMethod='"ActivityRange"'/-->
<JTextField id="fieldVesselTypeActivityRange" text='{String.valueOf(getBean().getActivityRange())}' enabled='{isActive()}'
onKeyReleased='getBean().setActivityRange(Double.parseDouble(fieldVesselTypeActivityRange.getText()))'
- decorator='boxed' _bean='{VesselType.class}' _method='"ActivityRange"'/>
+ decorator='boxed' _sensitivityBean='{VesselType.class}' _sensitivityMethod='"ActivityRange"'/>
</cell>
</row>
<row>
@@ -177,11 +180,11 @@
<cell fill='horizontal' weightx='1.0'>
<!--NumberEditor id='fieldVesselTypeMinCrewSize' constructorParams='this'
bean='{getBean()}' property='minCrewSize' useSign='true'
- enabled='{isActive()}' decorator='boxed' _bean='{VesselType.class}'
- _method='"MinCrewSize"'/-->
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{VesselType.class}'
+ _sensitivityMethod='"MinCrewSize"'/-->
<JTextField id="fieldVesselTypeMinCrewSize" text='{String.valueOf(getBean().getMinCrewSize())}' enabled='{isActive()}'
onKeyReleased='getBean().setMinCrewSize(Integer.parseInt(fieldVesselTypeMinCrewSize.getText()))'
- decorator='boxed' _bean='{VesselType.class}' _method='"MinCrewSize"'/>
+ decorator='boxed' _sensitivityBean='{VesselType.class}' _sensitivityMethod='"MinCrewSize"'/>
</cell>
</row>
<row>
@@ -192,10 +195,10 @@
<!--NumberEditor id='fieldVesselTypeUnitFuelCostOfTravel' constructorParams='this'
bean='{getBean()}' property='unitFuelCostOfTravel'
enabled='{isActive()}' decorator='boxed' useSign='true'
- _bean='{VesselType.class}' _method='"UnitFuelCostOfTravel"'/-->
+ _sensitivityBean='{VesselType.class}' _sensitivityMethod='"UnitFuelCostOfTravel"'/-->
<JTextField id="fieldVesselTypeUnitFuelCostOfTravel" text='{String.valueOf(getBean().getUnitFuelCostOfTravel())}'
onKeyReleased='getBean().setUnitFuelCostOfTravel(Double.parseDouble(fieldVesselTypeUnitFuelCostOfTravel.getText()))'
- enabled='{isActive()}' decorator='boxed' _bean='{VesselType.class}' _method='"UnitFuelCostOfTravel"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{VesselType.class}' _sensitivityMethod='"UnitFuelCostOfTravel"'/>
</cell>
</row>
<row>
@@ -207,7 +210,7 @@
<JAXXList id="vesselTypeTripType" selectedValues='{getBean().getTripType() == null ? null : getBean().getTripType().toArray()}'
onMouseClicked='tripTypeChanged()'
cellRenderer="{new fr.ifremer.isisfish.ui.input.triptype.TripTypeListRenderer()}"
- enabled='{isActive()}' decorator='boxed' _bean='{VesselType.class}' _method='"TripType"'/>
+ enabled='{isActive()}' decorator='boxed' _sensitivityBean='{VesselType.class}' _sensitivityMethod='"TripType"'/>
</JScrollPane>
</cell>
</row>
1
0
r3158 - in isis-fish/branches/3.3.1: . src/main/java/fr/ifremer/isisfish/ui src/main/java/fr/ifremer/isisfish/ui/input src/main/java/fr/ifremer/isisfish/ui/input/tree src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors src/main/java/fr/ifremer/isisfish/ui/util
by chatellier@users.labs.libre-entreprise.org 15 Mar '11
by chatellier@users.labs.libre-entreprise.org 15 Mar '11
15 Mar '11
Author: chatellier
Date: 2011-03-15 15:50:27 +0000 (Tue, 15 Mar 2011)
New Revision: 3158
Log:
Udpate jaxx tree api
Added:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/CommonHandler.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/NavigationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeHandler.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputHandler.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryDataProvider.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeHelper.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeNode.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeRenderer.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/CellsNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/GearsNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/MetiersNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PopulationsNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PortsNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SetOfVesselsNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SpeciesNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/StrategiesNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/TripTypesNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/VesselTypesNodeLoador.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/ZonesNodeLoador.java
Removed:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/Help.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeCellRenderer.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/NoneUI.jaxx
Modified:
isis-fish/branches/3.3.1/changelog.txt
isis-fish/branches/3.3.1/pom.xml
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/SaveVerifier.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeTabUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionParametersUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EquationEditorPaneUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputTabbedPaneListener.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesEditorUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/OpenMapEvents.java
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonSpacializedUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesEditorUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/RangeOfValuesUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityEditorUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsBasicsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesStructuredUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/WizardGroupCreationUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/util/ErrorHelper.java
Modified: isis-fish/branches/3.3.1/changelog.txt
===================================================================
--- isis-fish/branches/3.3.1/changelog.txt 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/changelog.txt 2011-03-15 15:50:27 UTC (rev 3158)
@@ -7,6 +7,12 @@
* Add group screening features
* Modify parameters interface to prepare factorizable values (population/rule)
* Factor, DesignPlan, Scenario and Domain are no longer generics
+ * Use new Jaxx tree api
+ * Update i18n to 2.3.1
+ * Update to topia 2.5.3
+ * Update to Jaxx 2.3
+ * Update to rSyntaxTextArea 1.5.0
+ * Update to svnkit 1.3.5
-- jeu. févr. 4 11:48:12 CET 2010
Modified: isis-fish/branches/3.3.1/pom.xml
===================================================================
--- isis-fish/branches/3.3.1/pom.xml 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/pom.xml 2011-03-15 15:50:27 UTC (rev 3158)
@@ -26,8 +26,8 @@
<dependency>
<groupId>org.nuiton.i18n</groupId>
- <artifactId>nuiton-i18n-api</artifactId>
- <version>1.0.1</version>
+ <artifactId>nuiton-i18n</artifactId>
+ <version>${nuitonI18nVersion}</version>
<scope>compile</scope>
</dependency>
@@ -46,16 +46,16 @@
</dependency>
<dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>3.3.2.GA</version>
+ <groupId>org.nuiton.matrix</groupId>
+ <artifactId>nuiton-matrix</artifactId>
+ <version>2.1</version>
<scope>compile</scope>
</dependency>
-
+
<dependency>
- <groupId>org.nuiton</groupId>
- <artifactId>nuiton-matrix</artifactId>
- <version>2.0.1</version>
+ <groupId>org.nuiton.matrix</groupId>
+ <artifactId>nuiton-matrix-gui</artifactId>
+ <version>2.1</version>
<scope>compile</scope>
</dependency>
@@ -83,21 +83,21 @@
<!-- Jaxx -->
<dependency>
<groupId>org.nuiton.jaxx</groupId>
- <artifactId>jaxx-runtime-swing</artifactId>
+ <artifactId>jaxx-runtime</artifactId>
<version>${jaxxVersion}</version>
<scope>compile</scope>
</dependency>
-
+
<dependency>
<groupId>org.nuiton.jaxx</groupId>
- <artifactId>jaxx-runtime-api</artifactId>
+ <artifactId>jaxx-validator</artifactId>
<version>${jaxxVersion}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.nuiton.jaxx</groupId>
- <artifactId>jaxx-runtime-swing-widget</artifactId>
+ <artifactId>jaxx-widgets</artifactId>
<version>${jaxxVersion}</version>
<scope>compile</scope>
</dependency>
@@ -112,7 +112,7 @@
<dependency>
<groupId>org.nuiton</groupId>
<artifactId>nuiton-j2r</artifactId>
- <version>1.0.1</version>
+ <version>1.0.2</version>
<scope>compile</scope>
</dependency>
@@ -139,11 +139,17 @@
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-math</artifactId>
- <version>2.1</version>
+ <version>2.2</version>
<scope>runtime</scope> <!--script -->
</dependency>
<dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-email</artifactId>
+ <version>1.2</version>
+ </dependency>
+
+ <dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</dependency>
@@ -199,23 +205,23 @@
</dependency>
<dependency>
- <groupId>org.nuiton.thirdparty</groupId>
+ <groupId>com.fifesoft</groupId>
<artifactId>rsyntaxtextarea</artifactId>
- <version>1.4.1</version>
+ <version>1.5.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
- <version>0.1.42</version>
+ <version>0.1.44-1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.swinglabs</groupId>
- <artifactId>swingx</artifactId>
- <version>1.6.1</version>
+ <artifactId>swingx-core</artifactId>
+ <version>1.6.2-2</version>
<scope>compile</scope>
</dependency>
@@ -226,13 +232,6 @@
<scope>compile</scope>
</dependency>
- <dependency>
- <groupId>xml-apis</groupId>
- <artifactId>xml-apis</artifactId>
- <version>1.0.b2</version>
- <scope>compile</scope>
- </dependency>
-
<!-- Utilisé lors de l'import xml v2 (entre autre) -->
<dependency>
<groupId>jaxen</groupId>
@@ -324,7 +323,7 @@
<dependency>
<groupId>org.tmatesoft.svnkit</groupId>
<artifactId>svnkit</artifactId>
- <version>1.3.4</version>
+ <version>1.3.5</version>
<scope>compile</scope>
</dependency>
<!-- fin svnkit pour communication subversion -->
@@ -476,21 +475,19 @@
<!-- Super pom properties -->
<projectId>isis-fish</projectId>
<labs.id>8</labs.id>
- <javadocPluginVersion>2.7</javadocPluginVersion>
<siteLocales>fr,en</siteLocales>
<maven.jar.main.class>fr.ifremer.isisfish.IsisFish</maven.jar.main.class>
<license.licenseName>gpl_v2</license.licenseName>
<!-- Dependencies version -->
- <jaxxVersion>1.7.1</jaxxVersion>
- <eugeneVersion>2.0.2</eugeneVersion>
- <topiaVersion>2.3.4</topiaVersion>
- <nuitonUtilsVersion>1.1.4</nuitonUtilsVersion>
- <nuitonI18nVersion>1.2.2</nuitonI18nVersion>
- <nuitonWidgetsVersion>1.0.1</nuitonWidgetsVersion>
- <jrstPluginVersion>1.1.1</jrstPluginVersion>
+ <jaxxVersion>2.3</jaxxVersion>
+ <eugeneVersion>2.3.2</eugeneVersion>
+ <topiaVersion>2.5.3-SNAPSHOT</topiaVersion>
+ <nuitonUtilsVersion>2.0</nuitonUtilsVersion>
+ <nuitonI18nVersion>2.3.1</nuitonI18nVersion>
+ <nuitonWidgetsVersion>1.1.1</nuitonWidgetsVersion>
+ <jrstPluginVersion>1.2</jrstPluginVersion>
<aspectwerkzVersion>2.0</aspectwerkzVersion>
- <xmlrpcVersion>3.1.2</xmlrpcVersion>
<!-- jnlp (disabled until retested)
<keystorepath>${codelutin.keystorepath}</keystorepath>
@@ -522,13 +519,13 @@
<artifactId>maven-i18n-plugin</artifactId>
<version>${nuitonI18nVersion}</version>
</plugin>
- <!-- <plugin>
+ <plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<showDeprecation>true</showDeprecation>
<showWarnings>true</showWarnings>
</configuration>
- </plugin> -->
+ </plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
@@ -601,7 +598,7 @@
<goal>smart-generate</goal>
</goals>
</execution>
- <execution>
+ <!-- <execution>
<id>copyVersionFiles</id>
<phase>generate-sources</phase>
<configuration>
@@ -613,7 +610,7 @@
<goals>
<goal>copyVersionFiles</goal>
</goals>
- </execution>
+ </execution> -->
</executions>
<dependencies>
<dependency>
@@ -635,9 +632,8 @@
</goals>
<configuration>
<src>${basedir}/src/main/java</src>
- <extraImportList>jaxx.runtime.SwingUtil</extraImportList>
<addSourcesToClassPath>true</addSourcesToClassPath>
- <addProjectClassPath>true</addProjectClassPath>
+ <addProjectClassPath>true</addProjectClassPath>
</configuration>
</execution>
</executions>
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/CommonHandler.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/CommonHandler.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/CommonHandler.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,69 @@
+/*
+ * #%L
+ *
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui;
+
+import jaxx.runtime.JAXXContext;
+import jaxx.runtime.JAXXUtil;
+import fr.ifremer.isisfish.ui.WelcomePanelUI;
+
+/**
+ * Common action for all handler.
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class CommonHandler {
+
+ /**
+ * Set main application status bar context.
+ *
+ * @param context context
+ * @param s string to set
+ */
+ protected void setStatusMessage(JAXXContext context, String s) {
+ WelcomePanelUI root = context.getContextValue(WelcomePanelUI.class, JAXXUtil.PARENT);
+ if (root != null) {
+ root.setStatusMessage(s);
+ }
+ }
+
+ /**
+ * Set main application status bar context.
+ *
+ * @param context context
+ * @param s string to set
+ * @param running enable progress bar running state
+ */
+ protected void setStatusMessage(JAXXContext context, String s, boolean running) {
+ WelcomePanelUI root = context.getContextValue(WelcomePanelUI.class, JAXXUtil.PARENT);
+ if (root != null) {
+ root.setStatusMessage(s, running);
+ }
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/CommonHandler.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Deleted: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/Help.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/Help.java 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/Help.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -1,101 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2006 - 2010 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-/* *##%
- * Copyright (C) 2006 - 2009
- * Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *##%*/
-
-package fr.ifremer.isisfish.ui;
-
-import java.awt.Desktop;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-/**
- * Help.
- *
- * Created: 2 août 2006 10:53:43
- *
- * @author poussin
- * @version $Revision$
- *
- * Last update: $Date$
- * by : $Author$
- */
-public class Help {
-
- /** Class logger. */
- private static Log log = LogFactory.getLog(Help.class);
-
- // URL alias
- public static Map<String, String> URLSALIAS = new HashMap<String, String>();
-
- static {
- URLSALIAS.put("ISISFISH", "http://isis-fish.labs.libre-entreprise.org/");
- URLSALIAS.put("JAVA_API", "http://java.sun.com/javase/6/docs/api/index.html");
- URLSALIAS.put("ISIS_API", "http://isis-fish.labs.libre-entreprise.org/isis-fish/apidocs/index.html");
- URLSALIAS.put("MATRIX_API", "http://maven-site.nuiton.org/nuiton-matrix/apidocs/index.html");
- URLSALIAS.put("TOPIA_API", "http://maven-site.nuiton.org/topia/topia-persistence/apidocs/index.html");
- }
-
- /**
- * Open url using default system browser.
- *
- * @param urlOrAlias url alias, or full url
- */
- public static void showURL(String urlOrAlias) {
- try {
- String url = URLSALIAS.get(urlOrAlias);
-
- if (url == null) {
- url = urlOrAlias;
- }
-
- Desktop.getDesktop().browse(new URL(url).toURI());
- } catch (Exception e) {
- if (log.isErrorEnabled()) {
- log.error("Can't show help", e);
- }
- }
- }
-}
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/NavigationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/NavigationUI.jaxx (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/NavigationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,3 @@
+<JPanel layout='{new BorderLayout()}'>
+
+</JPanel>
\ No newline at end of file
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/SaveVerifier.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/SaveVerifier.java 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/SaveVerifier.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
* $Id$
* $HeadURL$
* %%
- * Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ * Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
* %%
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeHandler.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeHandler.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeHandler.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,314 @@
+/*
+ * #%L
+ *
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui;
+
+import static org.nuiton.i18n.I18n._;
+
+import java.awt.BorderLayout;
+import java.awt.Color;
+import java.awt.Component;
+import java.awt.Desktop;
+import java.awt.Dimension;
+import java.awt.event.WindowAdapter;
+import java.awt.event.WindowEvent;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.Map;
+
+import javax.swing.JDialog;
+import javax.swing.JFrame;
+import javax.swing.ToolTipManager;
+
+import jaxx.runtime.context.JAXXInitialContext;
+import jaxx.runtime.swing.editor.config.ConfigUI;
+import jaxx.runtime.swing.editor.config.ConfigUIHelper;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.nuiton.widget.AboutFrame;
+
+import fr.ifremer.isisfish.IsisConfig;
+import fr.ifremer.isisfish.IsisFish;
+import fr.ifremer.isisfish.ui.config.SSHLauncherConfigUI;
+import fr.ifremer.isisfish.ui.input.InputAction;
+import fr.ifremer.isisfish.ui.input.InputSaveVerifier;
+import fr.ifremer.isisfish.ui.input.InputUI;
+import fr.ifremer.isisfish.ui.queue.QueueUI;
+import fr.ifremer.isisfish.ui.result.ResultView;
+import fr.ifremer.isisfish.ui.script.ScriptUI;
+import fr.ifremer.isisfish.ui.sensitivity.SensitivityUI;
+import fr.ifremer.isisfish.ui.simulator.SimulAction;
+import fr.ifremer.isisfish.ui.simulator.SimulUI;
+import fr.ifremer.isisfish.ui.vcs.VCSConfigUI;
+
+/**
+ * Welcome related ui handler.
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class WelcomeHandler extends CommonHandler {
+
+ /** Class logger. */
+ private static Log log = LogFactory.getLog(WelcomeHandler.class);
+
+ protected Map<JFrame, WelcomePanelUI> allFrameOpened;
+ protected WelcomeSaveVerifier verifier = new WelcomeSaveVerifier();
+
+ // URL alias
+ protected static final Map<String, String> URLSALIAS = new HashMap<String, String>();
+
+ static {
+ URLSALIAS.put("ISISFISH", "http://isis-fish.labs.libre-entreprise.org/");
+ URLSALIAS.put("JAVA_API", "http://java.sun.com/javase/6/docs/api/index.html");
+ URLSALIAS.put("ISIS_API", "http://isis-fish.labs.libre-entreprise.org/isis-fish/apidocs/index.html");
+ URLSALIAS.put("MATRIX_API", "http://maven-site.nuiton.org/nuiton-matrix/apidocs/index.html");
+ URLSALIAS.put("TOPIA_API", "http://maven-site.nuiton.org/topia/topia-persistence/apidocs/index.html");
+ }
+
+ public void postInit(WelcomeUI welcomeUI) {
+ welcomeUI.setContextValue(verifier);
+ allFrameOpened = new java.util.HashMap<JFrame, WelcomePanelUI>();
+ welcomeUI.getWelcomePanelUI().setContent(new WelcomeTabUI(new JAXXInitialContext().add(verifier)));
+
+ // increase tooltip display time
+ ToolTipManager toolTipManager = ToolTipManager.sharedInstance();
+ toolTipManager.setInitialDelay(0);
+ toolTipManager.setDismissDelay(60000);
+ }
+
+ protected void openFrame(WelcomeUI welcomeUI, Component c, String title) {
+
+ JAXXInitialContext childContext = new JAXXInitialContext().add(verifier).add(this);
+ WelcomePanelUI welcome = new WelcomePanelUI(childContext);
+ welcome.setContent(c);
+
+ JFrame frame = new JFrame(title);
+ frame.setLayout(new BorderLayout());
+ frame.add(welcome, BorderLayout.CENTER);
+ frame.setSize(new Dimension(800, 600));
+ frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
+
+ allFrameOpened.put(frame, welcome);
+ frame.addWindowListener(new WindowAdapter() {
+ @Override
+ public void windowClosing(WindowEvent e) {
+ JFrame f = (JFrame) e.getSource();
+ allFrameOpened.get(f).close(f);
+ }
+ });
+ frame.setLocationRelativeTo(welcomeUI);
+ frame.setVisible(true);
+ }
+
+ /**
+ *
+ * @param welcomeUI
+ */
+ public void newSimulationFrame(WelcomeUI welcomeUI) {
+ JAXXInitialContext context = new JAXXInitialContext();
+ context.add(new SimulAction());
+ context.add(this);
+ SimulUI simulUI = new SimulUI(context);
+ openFrame(welcomeUI, simulUI, _("isisfish.simulation.title"));
+ }
+
+ /**
+ *
+ * @param welcomeUI
+ */
+ public void newResultFrame(WelcomeUI welcomeUI) {
+ openFrame(welcomeUI, new ResultView(), _("isisfish.result.title"));
+ }
+
+ /**
+ *
+ * @param welcomeUI
+ */
+ public void newInputFrame(WelcomeUI welcomeUI) {
+ openFrame(welcomeUI, new InputUI(new JAXXInitialContext().add(verifier).add(new InputAction()).add(new InputSaveVerifier()).add(this)), _("isisfish.input.title"));
+ }
+
+ /**
+ *
+ * @param welcomeUI
+ */
+ public void newScriptFrame(WelcomeUI welcomeUI) {
+ openFrame(welcomeUI, new ScriptUI(), _("isisfish.script.title"));
+ }
+
+ /**
+ *
+ * @param welcomeUI
+ */
+ public void newSensitivityFrame(WelcomeUI welcomeUI) {
+ openFrame(welcomeUI, new SensitivityUI(new JAXXInitialContext().add(new InputAction()).add(new InputSaveVerifier()).add(new SimulAction()).add(this)), _("isisfish.sensitivity.title"));
+ }
+
+ /**
+ *
+ * @param welcomeUI
+ */
+ public void newQueueFrame(WelcomeUI welcomeUI) {
+ openFrame(welcomeUI, new QueueUI(), _("isisfish.queue.title"));
+ }
+
+ /**
+ *
+ * @param welcomeUI parent ui
+ */
+ public void close(WelcomeUI welcomeUI) {
+ if (verifier.allIsSaved()) {
+ exit(welcomeUI);
+ }
+ }
+
+ /**
+ *
+ * @param welcomeUI parent ui
+ */
+ public void exit(WelcomeUI welcomeUI) {
+ welcomeUI.dispose();
+ IsisFish.quit();
+ }
+
+ /**
+ *
+ * @param welcomeUI parent ui
+ */
+ public void updateVCS(WelcomeUI welcomeUI) {
+ // FIXME a reimplanter
+ // thread:Welcome.updateVCS()
+ }
+
+ /**
+ * Show config frame (Jaxx based).
+ *
+ * @param welcomeUI parent ui
+ */
+ public void config(WelcomeUI welcomeUI) {
+ ConfigUIHelper modelBuilder = new ConfigUIHelper(IsisFish.config);
+
+ // category main
+ modelBuilder.addCategory(_("isisfish.config.category.main"), _("isisfish.config.category.main.description"));
+ modelBuilder.addOption(IsisConfig.Option.CONFIG_FILE);
+ modelBuilder.addOption(IsisConfig.Option.DATABASE_DIRECTORY);
+ modelBuilder.addOption(IsisConfig.Option.COMPILATION_DIRECTORY);
+ modelBuilder.addOption(IsisConfig.Option.MONITORING_DIRECTORY);
+ modelBuilder.addOption(IsisConfig.Option.JAVADOC_DIRECTORY);
+ modelBuilder.addOption(IsisConfig.Option.BACKUP_DIRECTORY);
+ modelBuilder.addOption(IsisConfig.Option.LOCALE);
+ modelBuilder.addOption(IsisConfig.Option.SIMULATION_SHOW_ONLY_ERROR);
+
+ // category control
+ modelBuilder.addCategory(_("isisfish.config.category.versioning"), _("isisfish.config.category.versioning.description"));
+ modelBuilder.addOption(IsisConfig.Option.VCS_TYPE);
+ modelBuilder.addOption(IsisConfig.Option.VCS_PROTOCOL);
+ modelBuilder.addOption(IsisConfig.Option.VCS_USER_NAME);
+ modelBuilder.addOption(IsisConfig.Option.VCS_USER_PASSWORD);
+ modelBuilder.addOption(IsisConfig.Option.VCS_HOST_NAME);
+ modelBuilder.addOption(IsisConfig.Option.VCS_PATH);
+
+ // category misc
+ modelBuilder.addCategory(_("isisfish.config.category.misc"), _("isisfish.config.category.misc.description"));
+ modelBuilder.addOption(IsisConfig.Option.SSH_KEY_FILE);
+ modelBuilder.addOption(IsisConfig.Option.USER_NAME);
+ modelBuilder.addOption(IsisConfig.Option.SMTP_SERVER);
+ modelBuilder.addOption(IsisConfig.Option.USER_MAIL);
+
+ ConfigUI configUI = modelBuilder.buildUI(welcomeUI, _("coser.config.category.path"));
+ JDialog dialogUI = new JDialog(welcomeUI, _("coser.ui.config.title"));
+ dialogUI.add(configUI);
+ dialogUI.pack();
+ dialogUI.setLocationRelativeTo(welcomeUI);
+ dialogUI.setVisible(true);
+ }
+
+ /**
+ *
+ * @param welcomeUI parent ui
+ */
+ public void configVCS(WelcomeUI welcomeUI) {
+ VCSConfigUI vcsConfig = new VCSConfigUI();
+ vcsConfig.pack();
+ org.nuiton.widget.SwingUtil.center(vcsConfig);
+ vcsConfig.setVisible(true);
+ }
+
+ /**
+ *
+ * @param welcomeUI parent ui
+ */
+ public void configurationSSHLauncher(WelcomeUI welcomeUI) {
+ SSHLauncherConfigUI configUI = new SSHLauncherConfigUI();
+ configUI.pack();
+ configUI.setSize(600, configUI.getHeight());
+ org.nuiton.widget.SwingUtil.center(configUI);
+ configUI.setVisible(true);
+ }
+
+ /**
+ * Open url using default system browser.
+ *
+ * @param welcomeUI parent ui
+ * @param urlOrAlias url alias, or full url
+ */
+ public void help(WelcomeUI welcomeUI, String urlOrAlias) {
+ try {
+ String url = URLSALIAS.get(urlOrAlias);
+
+ if (url == null) {
+ url = urlOrAlias;
+ }
+
+ Desktop.getDesktop().browse(new URL(url).toURI());
+ } catch (Exception e) {
+ if (log.isErrorEnabled()) {
+ log.error("Can't show help", e);
+ }
+ }
+ }
+
+ /**
+ * Show about frame from nuiton-widgets.
+ *
+ * @param welcomeUI parent ui
+ */
+ public void about(WelcomeUI welcomeUI) {
+ AboutFrame about = new AboutFrame();
+ about.setTitle(_("isisfish.about.title"));
+ about.setIconPath("images/strategy.jpg");
+ about.setAboutHtmlText(_("isisfish.about.abouthtmltext", IsisConfig.getVersion()));
+ about.setLicenseText(_("isisfish.about.licensetext"));
+ about.setBackgroundColor(Color.WHITE);
+ about.setSize(640, 520);
+ about.setLocationRelativeTo(welcomeUI);
+ about.setVisible(true);
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeHandler.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeTabUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeTabUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeTabUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -26,7 +26,7 @@
<script><![CDATA[
import fr.ifremer.isisfish.ui.simulator.SimulAction;
import fr.ifremer.isisfish.ui.result.ResultAction;
- import jaxx.runtime.JAXXInitialContext;
+ import jaxx.runtime.context.JAXXInitialContext;
import fr.ifremer.isisfish.ui.input.InputAction;
import fr.ifremer.isisfish.ui.input.InputSaveVerifier;
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/WelcomeUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2006 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2006 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -23,197 +23,45 @@
#L%
-->
<JFrame title="isisfish.welcome.title" width='874' height='736' resizable="true" layout='{new BorderLayout()}'>
- <script><![CDATA[
- import static org.nuiton.i18n.I18n._;
- import javax.swing.JFrame;
- import java.util.Map;
- import fr.ifremer.isisfish.IsisFish;
- import fr.ifremer.isisfish.IsisConfig;
- import fr.ifremer.isisfish.ui.simulator.SimulAction;
- import fr.ifremer.isisfish.ui.input.InputUI;
- import fr.ifremer.isisfish.ui.input.InputAction;
- import fr.ifremer.isisfish.ui.input.InputSaveVerifier;
- import fr.ifremer.isisfish.ui.sensitivity.SensitivityUI;
- import fr.ifremer.isisfish.ui.result.ResultAction;
- import fr.ifremer.isisfish.ui.result.ResultView;
- import fr.ifremer.isisfish.ui.script.ScriptUI;
- import fr.ifremer.isisfish.ui.simulator.SimulUI;
- import fr.ifremer.isisfish.ui.queue.QueueUI;
- import fr.ifremer.isisfish.ui.config.SSHLauncherConfigUI;
- import fr.ifremer.isisfish.ui.vcs.VCSConfigUI;
- import org.nuiton.widget.AboutFrame;
- import jaxx.runtime.DefaultJAXXContext;
- import jaxx.runtime.JAXXInitialContext;
- import jaxx.runtime.swing.editor.config.ConfigUI;
- import jaxx.runtime.swing.editor.config.ConfigUIBuilder;
- import jaxx.runtime.swing.editor.config.model.ConfigUIModel;
+ <WelcomeHandler id="handler" />
- Map<JFrame, WelcomePanelUI> allFrameOpened;
- WelcomeSaveVerifier verifier = new WelcomeSaveVerifier();
-
- setContextValue(verifier);
- allFrameOpened = new java.util.HashMap<JFrame, WelcomePanelUI>();
- welcomePanelUI.setContent(new WelcomeTabUI(new JAXXInitialContext().add(getVerifier())));
-
- // increase tooltip display time
- ToolTipManager toolTipManager = ToolTipManager.sharedInstance();
- toolTipManager.setInitialDelay(0);
- toolTipManager.setDismissDelay(60000);
-
- protected void openFrame(Component c, String title) {
- JFrame f = new JFrame();
- f.setLayout(new BorderLayout());
-
- JAXXInitialContext childContext = new JAXXInitialContext().add(verifier).add(this);
- WelcomePanelUI welcome = new WelcomePanelUI(childContext);
-
- welcome.setContent(c);
- f.add(welcome, BorderLayout.CENTER);
- f.setTitle(title);
- f.setSize(new Dimension(800, 600));
- f.setDefaultCloseOperation(f.DO_NOTHING_ON_CLOSE);
-
- allFrameOpened.put(f, welcome);
- f.addWindowListener(new WindowAdapter() {
- @Override
- public void windowClosing(WindowEvent e) {
- JFrame f = (JFrame) e.getSource();
- allFrameOpened.get(f).close(f);
- }
- });
- org.nuiton.widget.SwingUtil.center(f);
- f.setVisible(true);
+ <script><![CDATA[
+ protected void $afterCompleteSetup() {
+ getHandler().postInit(this);
}
- public void close() {
- if (verifier.allIsSaved()) {
- exit();
- }
- }
- protected void exit() {
- this.dispose();
- IsisFish.quit();
- }
- protected WelcomeSaveVerifier getVerifier() {
- return getContextValue(WelcomeSaveVerifier.class);
- }
- protected void updateVCS() {
-// FIXME a reimplanter
-// thread:Welcome.updateVCS()
- }
-
- /**
- * Show config frame (Jaxx based).
- */
- protected void config() {
- ConfigUIModel model = new ConfigUIModel(IsisFish.config);
-
- // categorie main
- model.addCategory(
- _("isisfish.config.category.main"),
- _("isisfish.config.category.main.description"),
- IsisConfig.Option.CONFIG_FILE,
- IsisConfig.Option.DATABASE_DIRECTORY,
- IsisConfig.Option.COMPILATION_DIRECTORY,
- IsisConfig.Option.MONITORING_DIRECTORY,
- IsisConfig.Option.JAVADOC_DIRECTORY,
- IsisConfig.Option.BACKUP_DIRECTORY,
- IsisConfig.Option.LOCALE,
- IsisConfig.Option.SIMULATION_SHOW_ONLY_ERROR
- );
-
- // categorie versionning
- model.addCategory(
- _("isisfish.config.category.versioning"),
- _("isisfish.config.category.versioning.description"),
- IsisConfig.Option.VCS_TYPE,
- IsisConfig.Option.VCS_PROTOCOL,
- IsisConfig.Option.VCS_USER_NAME,
- IsisConfig.Option.VCS_USER_PASSWORD,
- IsisConfig.Option.VCS_HOST_NAME,
- IsisConfig.Option.VCS_PATH
- );
-
- // categorie misc
- model.addCategory(
- _("isisfish.config.category.misc"),
- _("isisfish.config.category.misc.description"),
- IsisConfig.Option.SSH_KEY_FILE,
- IsisConfig.Option.USER_NAME,
- IsisConfig.Option.SMTP_SERVER,
- IsisConfig.Option.USER_MAIL
- );
-
- ConfigUI configUI = ConfigUIBuilder.newConfigUI(new DefaultJAXXContext(this), model, _("isisfish.config.category.main"));
- ConfigUIBuilder.showConfigUI(configUI, this, false);
- }
-
- protected void configVCS() {
- VCSConfigUI vcsConfig = new VCSConfigUI();
- vcsConfig.pack();
- org.nuiton.widget.SwingUtil.center(vcsConfig);
- vcsConfig.setVisible(true);
- }
-
- protected void configurationSSHLauncher() {
- SSHLauncherConfigUI configUI = new SSHLauncherConfigUI();
- configUI.pack();
- configUI.setSize(600, configUI.getHeight());
- org.nuiton.widget.SwingUtil.center(configUI);
- configUI.setVisible(true);
- }
-
- protected void help(String urlAlias) {
- Help.showURL(urlAlias);
- }
-
- /**
- * Show about frame from nuiton-widgets.
- */
- protected void about() {
- AboutFrame about = new AboutFrame();
- about.setTitle(_("isisfish.about.title"));
- about.setIconPath("images/strategy.jpg");
- about.setAboutHtmlText(_("isisfish.about.abouthtmltext", IsisConfig.getVersion()));
- about.setLicenseText(_("isisfish.about.licensetext"));
- about.setBackgroundColor(Color.WHITE);
- about.setSize(640, 520);
- org.nuiton.widget.SwingUtil.center(about);
- about.setVisible(true);
- }
- ]]>
- </script>
+ ]]></script>
<JMenuBar>
<JMenu text='isisfish.welcome.menu.file'>
- <JMenuItem text="isisfish.welcome.menu.synchro" enabled='false' onActionPerformed='updateVCS()'/>
+ <JMenuItem text="isisfish.welcome.menu.synchro" enabled='false' onActionPerformed='getHandler().updateVCS(this)'/>
<JSeparator/>
- <JMenuItem text="isisfish.welcome.menu.close" onActionPerformed='close()'/>
+ <JMenuItem text="isisfish.welcome.menu.close" onActionPerformed='getHandler().close(this)'/>
</JMenu>
<JMenu text="isisfish.welcome.menu.frame">
- <JMenuItem text="isisfish.welcome.menu.simulation" onActionPerformed='openFrame(new SimulUI(new JAXXInitialContext().add(new SimulAction()).add(this)), _("isisfish.simulation.title"))'/>
- <JMenuItem text="isisfish.welcome.menu.result" onActionPerformed='openFrame(new ResultView(), _("isisfish.result.title"))'/>
- <JMenuItem text="isisfish.welcome.menu.input" onActionPerformed='openFrame(new InputUI(new JAXXInitialContext().add(verifier).add(new InputAction()).add(new InputSaveVerifier()).add(this)), _("isisfish.input.title"))'/>
- <JMenuItem text="isisfish.welcome.menu.script" onActionPerformed='openFrame(new ScriptUI(), _("isisfish.script.title"))'/>
- <JMenuItem text="isisfish.sensitivity.title" onActionPerformed='openFrame(new SensitivityUI(new JAXXInitialContext().add(new InputAction()).add(new InputSaveVerifier()).add(new SimulAction()).add(this)), _("isisfish.sensitivity.title"))'/>
+ <JMenuItem text="isisfish.welcome.menu.simulation" onActionPerformed='getHandler().newSimulationFrame(this)'/>
+ <JMenuItem text="isisfish.welcome.menu.result" onActionPerformed='getHandler().newResultFrame(this)'/>
+ <JMenuItem text="isisfish.welcome.menu.input" onActionPerformed='getHandler().newInputFrame(this)'/>
+ <JMenuItem text="isisfish.welcome.menu.script" onActionPerformed='getHandler().newScriptFrame(this)'/>
+ <JMenuItem text="isisfish.sensitivity.title" onActionPerformed='getHandler().newSensitivityFrame(this)'/>
<JSeparator/>
- <JMenuItem text="isisfish.welcome.menu.queue" onActionPerformed='openFrame(new QueueUI(), _("isisfish.queue.title"))'/>
+ <JMenuItem text="isisfish.welcome.menu.queue" onActionPerformed='getHandler().newQueueFrame(this)'/>
</JMenu>
<JMenu text="isisfish.welcome.menu.configuration">
- <JMenuItem text="isisfish.welcome.menu.configuration" onActionPerformed='config()'/>
- <JMenuItem text="isisfish.welcome.menu.configuration.vcs" onActionPerformed='configVCS()' enabled="false"/>
- <JMenuItem text="isisfish.welcome.menu.configuration.sshlauncher" onActionPerformed='configurationSSHLauncher()'/>
+ <JMenuItem text="isisfish.welcome.menu.configuration" onActionPerformed='getHandler().config(this)'/>
+ <JMenuItem text="isisfish.welcome.menu.configuration.vcs" onActionPerformed='getHandler().configVCS(this)' enabled="false"/>
+ <JMenuItem text="isisfish.welcome.menu.configuration.sshlauncher" onActionPerformed='getHandler().configurationSSHLauncher(this)'/>
</JMenu>
<JMenu text="isisfish.welcome.menu.help">
- <JMenuItem text="isisfish.welcome.menu.help.isisfish" onActionPerformed='help("ISISFISH")'/>
+ <JMenuItem text="isisfish.welcome.menu.help.isisfish" onActionPerformed='getHandler().help(this, "ISISFISH")'/>
<JMenu text="isisfish.welcome.menu.api">
- <JMenuItem text="isisfish.welcome.menu.help.javaapi" onActionPerformed='help("JAVA_API")'/>
- <JMenuItem text="isisfish.welcome.menu.help.isisfishapi" onActionPerformed='help("ISIS_API")'/>
- <JMenuItem text="isisfish.welcome.menu.help.matrixapi" onActionPerformed='help("MATRIX_API")'/>
- <JMenuItem text="isisfish.welcome.menu.help.topiaapi" onActionPerformed='help("TOPIA_API")'/>
+ <JMenuItem text="isisfish.welcome.menu.help.javaapi" onActionPerformed='getHandler().help(this, "JAVA_API")'/>
+ <JMenuItem text="isisfish.welcome.menu.help.isisfishapi" onActionPerformed='getHandler().help(this, "ISIS_API")'/>
+ <JMenuItem text="isisfish.welcome.menu.help.matrixapi" onActionPerformed='getHandler().help(this, "MATRIX_API")'/>
+ <JMenuItem text="isisfish.welcome.menu.help.topiaapi" onActionPerformed='getHandler().help(this, "TOPIA_API")'/>
</JMenu>
<JSeparator/>
- <JMenuItem text="isisfish.welcome.menu.about" onActionPerformed='about()'/>
+ <JMenuItem text="isisfish.welcome.menu.about" onActionPerformed='getHandler().about(this)'/>
</JMenu>
</JMenuBar>
- <WelcomePanelUI id="welcomePanelUI" constructorParams='new DefaultJAXXContext(this)'/>
+ <WelcomePanelUI id="welcomePanelUI" constructorParams='this'/>
</JFrame>
\ No newline at end of file
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/CellUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,64 +22,84 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Cell'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.CellImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Cell id='bean' javaBean='null'/>
<script><![CDATA[
import java.awt.event.MouseEvent;
import fr.ifremer.isisfish.entities.Cell;
-import fr.ifremer.isisfish.entities.CellImpl;
import com.bbn.openmap.gui.Tool;
import com.bbn.openmap.gui.OMToolSet;
import com.bbn.openmap.event.SelectMouseMode;
import fr.ifremer.isisfish.map.CellSelectionLayer;
import fr.ifremer.isisfish.map.CopyMapToClipboardListener;
import fr.ifremer.isisfish.ui.sensitivity.SensitivityTabUI;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
protected OMToolSet toolSet = new OMToolSet();
-protected OpenMapEvents mapListener = null;
+
boolean cellChanged = true;
-setButtonTitle(_("isisfish.input.continueZones"));
-setNextPath("$root/$zones");
-cellMap.addMapMouseListener(getMapListener());
-// add copy to clipboard support
-cellMap.addMapMouseListener(new CopyMapToClipboardListener(cellMap));
-toolSet.setupListeners(cellMap);
-toolMap.add((Tool)toolSet);
-
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- fieldCellName.setText("");
- fieldCellLatitude.setText("");
- fieldCellLongitude.setText("");
- fieldCellComment.setText("");
- fieldCellLand.setSelected(false);
+protected void $afterCompleteSetup() {
+ setButtonTitle(_("isisfish.input.continueZones"));
+ setNextPath("$root/$zones");
+ new OpenMapEvents(cellMap, new SelectMouseMode(false), CellSelectionLayer.SINGLE_SELECTION) {
+ @Override
+ public boolean mouseClicked(MouseEvent e) {
+ boolean result = false;
+ // TODO a fixer, le clic droit du menu contextuel
+ // passe aussi par ici et change la selection
+ //if (e.getButton() == MouseEvent.BUTTON1) {
+ for (Cell c : cellMap.getSelectedCells()) {
+ if (getBean() != null) {
+ if (!c.getTopiaId().equals(getBean().getTopiaId())) {
+ jaxx.runtime.SwingUtil.fillComboBox(fieldCell,getRegion().getCell(), c);
+ result = true;
+ }
+ }
+ }
+ //}
+ return result;
}
- if (evt.getNewValue() != null) {
+ };
+ // add copy to clipboard support
+ cellMap.addMapMouseListener(new CopyMapToClipboardListener(cellMap));
+ toolSet.setupListeners(cellMap);
+ toolMap.add((Tool)toolSet);
+
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ fieldCellName.setText("");
+ fieldCellLatitude.setText("");
+ fieldCellLongitude.setText("");
+ fieldCellComment.setText("");
+ fieldCellLand.setSelected(false);
+ }
+ if (evt.getNewValue() != null) {
+ cellChanged = false;
+ jaxx.runtime.SwingUtil.fillComboBox(fieldCell, getRegion().getCell(), getBean());
+ cellChanged = true;
+ }
}
- }
-});
+ });
+}
@Override
public void refresh() {
Cell cell = getVerifier().getEntity(Cell.class);
-
+
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((CellImpl) cell);
+ setBean(cell);
// reload region in map
refreshRegionInMap(cellMap);
-
- cellChanged = false;
- jaxx.runtime.SwingUtil.fillComboBox(fieldCell, getRegion().getCell(), getBean());
- cellChanged = true;
}
@Override
@@ -88,33 +108,8 @@
getVerifier().setCancelButton(cancel);
}
-protected OpenMapEvents getMapListener() {
- if (mapListener == null){
- mapListener = new OpenMapEvents(cellMap, new SelectMouseMode(false), CellSelectionLayer.SINGLE_SELECTION) {
- @Override
- public boolean mouseClicked(MouseEvent e) {
- boolean result = false;
- // TODO a fixer, le clic droit du menu contextuel
- // passe aussi par ici et change la selection
- //if (e.getButton() == MouseEvent.BUTTON1) {
- for (Cell c : cellMap.getSelectedCells()) {
- if (getBean() != null) {
- if (!c.getTopiaId().equals(getBean().getTopiaId())) {
- jaxx.runtime.SwingUtil.fillComboBox(fieldCell,getRegion().getCell(), c);
- result = true;
- }
- }
- }
- //}
- return result;
- }
- };
- }
- return mapListener;
-}
-
-protected void fieldCellChanged() {
- if (cellChanged) {
+protected void fieldCellChanged(ItemEvent event) {
+ if (cellChanged && event.getStateChange() == ItemEvent.SELECTED) {
Cell c = (Cell)fieldCell.getSelectedItem();
if (c==null) {
return;
@@ -129,7 +124,8 @@
// on ne sais jamais de quel type est le parent
InputUI inputUI = getParentContainer(InputUI.class);
if (inputUI != null) {
- inputUI.setTreeSelection("$root/$cells/" + c.getTopiaId());
+ // FIXME echatellier 20110306 : use new tree api
+ inputUI.getHandler().setTreeSelection(this, c.getTopiaId());
}
else {
SensitivityTabUI sensitivityTabUI = getParentContainer(SensitivityTabUI.class);
@@ -138,57 +134,57 @@
}
}
]]></script>
- <JPanel layout='{new BorderLayout()}'>
- <JSplitPane constraints='BorderLayout.CENTER'
- oneTouchExpandable="true" dividerLocation="200" orientation="horizontal">
+ <JPanel id="body">
+ <JSplitPane constraints='BorderLayout.CENTER' oneTouchExpandable="true" dividerLocation="200" orientation="horizontal">
<Table>
<row>
<cell fill='horizontal' columns='2' weightx='1.0'>
- <JComboBox id="fieldCell" onActionPerformed='fieldCellChanged()' model='{new DefaultComboBoxModel()}'/>
+ <JComboBox id="fieldCell" onItemStateChanged='fieldCellChanged(event)'
+ model='{new DefaultComboBoxModel()}' enabled='{getBean() != null}'/>
</cell>
</row>
<row>
<cell>
- <JLabel text="isisfish.cell.name" enabled='{isActif()}'/>
+ <JLabel text="isisfish.cell.name" enabled='{isActive()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
<JTextField id="fieldCellName" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getName())}' decorator='boxed'
- onKeyReleased='getBean().setName(fieldCellName.getText())' enabled='{isActif()}'/>
+ onKeyReleased='getBean().setName(fieldCellName.getText())' enabled='{isActive()}'/>
</cell>
</row>
<row>
<cell>
- <JLabel text="isisfish.cell.latitude" enabled='{isActif()}'/>
+ <JLabel text="isisfish.cell.latitude" enabled='{isActive()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldCellLatitude" text='{getBean().getLatitude()}' editable="false" enabled='{isActif()}' decorator='boxed'/>
+ <JTextField id="fieldCellLatitude" text='{String.valueOf(getBean().getLatitude())}' editable="false" enabled='{isActive()}' decorator='boxed'/>
</cell>
</row>
<row>
<cell>
- <JLabel text="isisfish.cell.longitude" enabled='{isActif()}'/>
+ <JLabel text="isisfish.cell.longitude" enabled='{isActive()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldCellLongitude" text='{getBean().getLongitude()}' editable="false" enabled='{isActif()}' decorator='boxed'/>
+ <JTextField id="fieldCellLongitude" text='{String.valueOf(getBean().getLongitude())}' editable="false" enabled='{isActive()}' decorator='boxed'/>
</cell>
</row>
<row>
<cell>
- <JLabel text="isisfish.cell.land" enabled='{isActif()}'/>
+ <JLabel text="isisfish.cell.land" enabled='{isActive()}'/>
</cell>
<cell fill='horizontal' weightx='1.0'>
- <JCheckBox id="fieldCellLand" onActionPerformed='getBean().setLand(fieldCellLand.isSelected())' enabled='{isActif()}' selected='{getBean().getLand()}' decorator='boxed'/>
+ <JCheckBox id="fieldCellLand" onActionPerformed='getBean().setLand(fieldCellLand.isSelected())' enabled='{isActive()}' selected='{getBean().getLand()}' decorator='boxed'/>
</cell>
</row>
<row>
<cell columns='2' fill='horizontal'>
- <JLabel text="isisfish.cell.comments" enabled='{isActif()}' horizontalAlignment="center"/>
+ <JLabel text="isisfish.cell.comments" enabled='{isActive()}' horizontalAlignment="center"/>
</cell>
</row>
<row>
<cell columns='2' fill='both' weighty='1.0' weightx='1.0'>
<JScrollPane>
- <JTextArea id="fieldCellComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}' onKeyReleased='getBean().setComment(fieldCellComment.getText())' enabled='{isActif()}' decorator='boxed'/>
+ <JTextArea id="fieldCellComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}' onKeyReleased='getBean().setComment(fieldCellComment.getText())' enabled='{isActive()}' decorator='boxed'/>
</JScrollPane>
</cell>
</row>
@@ -202,8 +198,12 @@
</row>
</Table>
<JPanel id='map' layout='{new BorderLayout()}'>
- <com.bbn.openmap.gui.ToolPanel id='toolMap' javaBean='new com.bbn.openmap.gui.ToolPanel()' constraints='BorderLayout.NORTH' decorator='boxed'/>
- <fr.ifremer.isisfish.map.IsisMapBean id='cellMap' javaBean='new fr.ifremer.isisfish.map.IsisMapBean()' selectionMode="1" selectedCells='{getBean()}' fisheryRegion='{getRegion()}' constraints='BorderLayout.CENTER' decorator='boxed'/>
+ <com.bbn.openmap.gui.ToolPanel id='toolMap' javaBean='new com.bbn.openmap.gui.ToolPanel()'
+ constraints='BorderLayout.NORTH' decorator='boxed' enabled='{getBean() != null}' />
+ <fr.ifremer.isisfish.map.IsisMapBean id='cellMap' javaBean='new fr.ifremer.isisfish.map.IsisMapBean()'
+ selectionMode="{fr.ifremer.isisfish.map.CellSelectionLayer.SINGLE_SELECTION}"
+ fisheryRegion='{getRegion()}' selectedCells='{getBean()}'
+ constraints='BorderLayout.CENTER' decorator='boxed' enabled='{getBean() != null}'/>
</JPanel>
</JSplitPane>
</JPanel>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionParametersUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionParametersUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionParametersUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,58 +22,58 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='SetOfVessels'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.SetOfVesselsImpl id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.EffortDescriptionImpl id='effortDescription' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.SetOfVessels id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.EffortDescription id='effortDescription' javaBean='null'/>
<script><![CDATA[
import java.util.ArrayList;
import fr.ifremer.isisfish.entities.EffortDescription;
-import fr.ifremer.isisfish.entities.EffortDescriptionImpl;
-import fr.ifremer.isisfish.entities.SetOfVesselsImpl;
import fr.ifremer.isisfish.entities.SetOfVessels;
import fr.ifremer.isisfish.types.TimeUnit;
import fr.ifremer.isisfish.ui.input.setofvessels.EffortDescriptionListModel;
import fr.ifremer.isisfish.ui.input.setofvessels.EffortDescriptionListRenderer;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-addPropertyChangeListener("effortDescription", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- fieldEffortDescriptionFishingOperation.setText("");
- fieldEffortDescriptionFishingOperationDuration.setText("");
- fieldEffortDescriptionGearsNumberPerOperation.setText("");
- fieldEffortDescriptionCrewSize.setText("");
- fieldEffortDescriptionUnitCostOfFishing.setText("");
- fieldEffortDescriptionFixedCrewSalary.setText("");
- fieldEffortDescriptionCrewFoodCost.setText("");
- fieldEffortDescriptionCrewShareRate.setText("");
- fieldEffortDescriptionRepairAndMaintenanceGearCost.setText("");
- fieldEffortDescriptionLandingCosts.setText("");
- fieldEffortDescriptionOtherRunningCost.setText("");
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_EFFORT_DESCRIPTION, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ fieldEffortDescriptionFishingOperation.setText("");
+ fieldEffortDescriptionFishingOperationDuration.setText("");
+ fieldEffortDescriptionGearsNumberPerOperation.setText("");
+ fieldEffortDescriptionCrewSize.setText("");
+ fieldEffortDescriptionUnitCostOfFishing.setText("");
+ fieldEffortDescriptionFixedCrewSalary.setText("");
+ fieldEffortDescriptionCrewFoodCost.setText("");
+ fieldEffortDescriptionCrewShareRate.setText("");
+ fieldEffortDescriptionRepairAndMaintenanceGearCost.setText("");
+ fieldEffortDescriptionLandingCosts.setText("");
+ fieldEffortDescriptionOtherRunningCost.setText("");
+ }
+ if (evt.getNewValue() != null) {
+ EffortDescriptionListModel model = new EffortDescriptionListModel();
+ // getBean().getPossibleMetiers() can be null at region creation
+ if (getBean() != null && getBean().getPossibleMetiers() != null) {
+ java.util.List<EffortDescription> effortDescriptions = new ArrayList<EffortDescription>(getBean().getPossibleMetiers());
+ model.setEffortDescriptions(effortDescriptions);
+ }
+ fieldEffortDescriptionEffortDescriptionList.setModel(model);
+ }
}
- if (evt.getNewValue() != null) {
+ });
+}
- }
- }
-});
-
@Override
public void refresh() {
SetOfVessels setOfVessels = getVerifier().getEntity(SetOfVessels.class);
// twice event for jaxx bindings detection
setBean(null);
- setBean((SetOfVesselsImpl) setOfVessels);
-
- EffortDescriptionListModel model = new EffortDescriptionListModel();
- // getBean().getPossibleMetiers() can be null at region creation
- if (getBean() != null && getBean().getPossibleMetiers() != null) {
- java.util.List<EffortDescription> effortDescriptions = new ArrayList<EffortDescription>(getBean().getPossibleMetiers());
- model.setEffortDescriptions(effortDescriptions);
- }
- fieldEffortDescriptionEffortDescriptionList.setModel(model);
+ setBean(setOfVessels);
}
@Override
@@ -83,7 +83,7 @@
}
protected void effortDescriptionSelectionChanged() {
- EffortDescriptionImpl selectedEffort = (EffortDescriptionImpl)fieldEffortDescriptionEffortDescriptionList.getSelectedValue();
+ EffortDescription selectedEffort = (EffortDescription)fieldEffortDescriptionEffortDescriptionList.getSelectedValue();
setEffortDescription(selectedEffort);
if (getEffortDescription() != null) {
@@ -104,185 +104,187 @@
}
]]>
</script>
- <Table>
- <row>
- <cell rows='3' fill='both' weightx='0.4' weighty='1.0'>
- <JScrollPane>
- <JList id="fieldEffortDescriptionEffortDescriptionList" selectionMode="{javax.swing.ListSelectionModel.SINGLE_SELECTION}"
- onValueChanged='effortDescriptionSelectionChanged()'
- cellRenderer='{new EffortDescriptionListRenderer()}'
- enabled='{isActif()}' />
- </JScrollPane>
- </cell>
- <cell columns='2' fill='both' weightx='1.0'>
- <Table border='{BorderFactory.createTitledBorder(_("isisfish.effortDescription.effortTitle"))}'>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.effortDescription.fishingOperation" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldEffortDescriptionFishingOperation' constructorParams='this'
- bean='{getEffortDescription()}' property='fishingOperation'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{EffortDescriptionImpl.class}' _method='"FishingOperation"'/-->
- <JFormattedTextField id="fieldEffortDescriptionFishingOperation" text='{getEffortDescription().getFishingOperation()}'
- onKeyReleased='getEffortDescription().setFishingOperation(Integer.parseInt(fieldEffortDescriptionFishingOperation.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"FishingOperation"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.effortDescription.fishingOperationDuration" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldEffortDescriptionFishingOperationDuration"
- text='{getEffortDescription().getFishingOperationDuration() == null ? "" : getEffortDescription().getFishingOperationDuration().getHour()}'
- toolTipText="isisfish.effortDescription.fishingOperationDuration.tooltip" onKeyReleased='getEffortDescription().setFishingOperationDuration(new TimeUnit(3600 * Double.parseDouble(fieldEffortDescriptionFishingOperationDuration.getText())))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"FishingOperationDuration"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.effortDescription.gearsNumberPerOperation" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldEffortDescriptionGearsNumberPerOperation' constructorParams='this'
- bean='{getEffortDescription()}' property='gearsNumberPerOperation'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{EffortDescriptionImpl.class}' _method='"GearsNumberPerOperation"'/-->
- <JTextField id="fieldEffortDescriptionGearsNumberPerOperation" text='{getEffortDescription().getGearsNumberPerOperation()}'
- onKeyReleased='getEffortDescription().setGearsNumberPerOperation(Integer.parseInt(fieldEffortDescriptionGearsNumberPerOperation.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"GearsNumberPerOperation"'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weighty='1.0'>
- <Table anchor='north' fill='both' weighty='1.0' border='{BorderFactory.createTitledBorder(_("isisfish.effortDescription.economicTitle"))}'>
- <row>
- <cell anchor='east' fill='none' weighty='0.0'>
- <JLabel text="isisfish.effortDescription.crewSize" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0' weighty='0.0'>
- <!--NumberEditor id='fieldEffortDescriptionCrewSize' constructorParams='this'
- bean='{getEffortDescription()}' property='crewSize'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{EffortDescriptionImpl.class}' _method='"CrewSize"'/-->
- <JTextField id="fieldEffortDescriptionCrewSize" text='{getEffortDescription().getCrewSize()}'
- onKeyReleased='getEffortDescription().setCrewSize(Integer.parseInt(fieldEffortDescriptionCrewSize.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"CrewSize"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east' fill='none' weighty='0.0'>
- <JLabel text="isisfish.effortDescription.unitCostOfFishing" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0' weighty='0.0'>
- <!--NumberEditor id='fieldEffortDescriptionUnitCostOfFishing' constructorParams='this'
- bean='{getEffortDescription()}' property='unitCostOfFishing'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{EffortDescriptionImpl.class}' _method='"UnitCostOfFishing"'/-->
- <JTextField id="fieldEffortDescriptionUnitCostOfFishing" text='{getEffortDescription().getUnitCostOfFishing()}'
- onKeyReleased='getEffortDescription().setUnitCostOfFishing(Double.parseDouble(fieldEffortDescriptionUnitCostOfFishing.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"UnitCostOfFishing"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east' fill='none' weighty='0.0'>
- <JLabel text="isisfish.effortDescription.fixedCrewSalary" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0' weighty='0.0'>
- <!--NumberEditor id='fieldEffortDescriptionFixedCrewSalary' constructorParams='this'
- bean='{getEffortDescription()}' property='fixedCrewSalary'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{EffortDescriptionImpl.class}' _method='"FixedCrewSalary"'/-->
- <JTextField id="fieldEffortDescriptionFixedCrewSalary" text='{getEffortDescription().getFixedCrewSalary()}'
- onKeyReleased='getEffortDescription().setFixedCrewSalary(Double.parseDouble(fieldEffortDescriptionFixedCrewSalary.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"FixedCrewSalary"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east' fill='none' weighty='0.0'>
- <JLabel text="isisfish.effortDescription.crewFoodCost" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0' weighty='0.0'>
- <!--NumberEditor id='fieldEffortDescriptionCrewFoodCost' constructorParams='this'
- bean='{getEffortDescription()}' property='crewFoodCost'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{EffortDescriptionImpl.class}' _method='"CrewFoodCost"'/-->
- <JTextField id="fieldEffortDescriptionCrewFoodCost" text='{getEffortDescription().getCrewFoodCost()}'
- onKeyReleased='getEffortDescription().setCrewFoodCost(Double.parseDouble(fieldEffortDescriptionCrewFoodCost.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"CrewFoodCost"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east' fill='none' weighty='0.0'>
- <JLabel text="isisfish.effortDescription.crewShareRate" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0' weighty='0.0'>
- <!--NumberEditor id='fieldEffortDescriptionCrewShareRate' constructorParams='this'
- bean='{getEffortDescription()}' property='crewShareRate'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{EffortDescriptionImpl.class}' _method='"CrewShareRate"'/-->
- <JTextField id="fieldEffortDescriptionCrewShareRate" text='{getEffortDescription().getCrewShareRate()}'
- onKeyReleased='getEffortDescription().setCrewShareRate(Double.parseDouble(fieldEffortDescriptionCrewShareRate.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"CrewShareRate"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east' fill='none' weighty='0.0'>
- <JLabel text="isisfish.effortDescription.repairAndMaintenanceGearCost" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0' weighty='0.0'>
- <!--NumberEditor id='fieldEffortDescriptionRepairAndMaintenanceGearCost' constructorParams='this'
- bean='{getEffortDescription()}' property='repairAndMaintenanceGearCost'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}'
- _method='"RepairAndMaintenanceGearCost"' useSign='true'/-->
- <JTextField id="fieldEffortDescriptionRepairAndMaintenanceGearCost" text='{getEffortDescription().getRepairAndMaintenanceGearCost()}'
- onKeyReleased='getEffortDescription().setRepairAndMaintenanceGearCost(Double.parseDouble(fieldEffortDescriptionRepairAndMaintenanceGearCost.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"RepairAndMaintenanceGearCost"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east' fill='none' weighty='0.0'>
- <JLabel text="isisfish.effortDescription.landingCosts" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0' weighty='0.0'>
- <!--NumberEditor id='fieldEffortDescriptionLandingCosts' constructorParams='this'
- bean='{getEffortDescription()}' property='landingCosts'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{EffortDescriptionImpl.class}' _method='"LandingCosts"'/-->
- <JTextField id="fieldEffortDescriptionLandingCosts" text='{getEffortDescription().getLandingCosts()}'
- onKeyReleased='getEffortDescription().setLandingCosts(Double.parseDouble(fieldEffortDescriptionLandingCosts.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"LandingCosts"'/>
- </cell>
- </row>
- <row>
- <cell anchor='northeast' fill='none' weighty='1.0'>
- <JLabel text="isisfish.effortDescription.otherRunningCost" enabled='{isActif()}'/>
- </cell>
- <cell anchor='north' fill='horizontal' weightx='1.0' weighty='1.0'>
- <!--NumberEditor id='fieldEffortDescriptionOtherRunningCost' constructorParams='this'
- bean='{getEffortDescription()}' property='otherRunningCost'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{EffortDescriptionImpl.class}' _method='"OtherRunningCost"'/-->
- <JTextField id="fieldEffortDescriptionOtherRunningCost" text='{getEffortDescription().getOtherRunningCost()}'
- onKeyReleased='getEffortDescription().setOtherRunningCost(Double.parseDouble(fieldEffortDescriptionOtherRunningCost.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{EffortDescriptionImpl.class}' _method='"OtherRunningCost"'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.3'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.3'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell rows='3' fill='both' weightx='0.4' weighty='1.0'>
+ <JScrollPane>
+ <JList id="fieldEffortDescriptionEffortDescriptionList" selectionMode="{javax.swing.ListSelectionModel.SINGLE_SELECTION}"
+ onValueChanged='effortDescriptionSelectionChanged()'
+ cellRenderer='{new EffortDescriptionListRenderer()}'
+ enabled='{isActive()}' />
+ </JScrollPane>
+ </cell>
+ <cell columns='2' fill='both' weightx='1.0'>
+ <Table border='{BorderFactory.createTitledBorder(_("isisfish.effortDescription.effortTitle"))}'>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.effortDescription.fishingOperation" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldEffortDescriptionFishingOperation' constructorParams='this'
+ bean='{getEffortDescription()}' property='fishingOperation'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{EffortDescription.class}' _method='"FishingOperation"'/-->
+ <JFormattedTextField id="fieldEffortDescriptionFishingOperation" text='{String.valueOf(getEffortDescription().getFishingOperation())}'
+ onKeyReleased='getEffortDescription().setFishingOperation(Integer.parseInt(fieldEffortDescriptionFishingOperation.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"FishingOperation"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.effortDescription.fishingOperationDuration" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldEffortDescriptionFishingOperationDuration"
+ text='{String.valueOf(getEffortDescription().getFishingOperationDuration() == null ? "" : getEffortDescription().getFishingOperationDuration().getHour())}'
+ toolTipText="isisfish.effortDescription.fishingOperationDuration.tooltip" onKeyReleased='getEffortDescription().setFishingOperationDuration(new TimeUnit(3600 * Double.parseDouble(fieldEffortDescriptionFishingOperationDuration.getText())))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"FishingOperationDuration"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.effortDescription.gearsNumberPerOperation" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldEffortDescriptionGearsNumberPerOperation' constructorParams='this'
+ bean='{getEffortDescription()}' property='gearsNumberPerOperation'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{EffortDescription.class}' _method='"GearsNumberPerOperation"'/-->
+ <JTextField id="fieldEffortDescriptionGearsNumberPerOperation" text='{String.valueOf(getEffortDescription().getGearsNumberPerOperation())}'
+ onKeyReleased='getEffortDescription().setGearsNumberPerOperation(Integer.parseInt(fieldEffortDescriptionGearsNumberPerOperation.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"GearsNumberPerOperation"'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weighty='1.0'>
+ <Table anchor='north' fill='both' weighty='1.0' border='{BorderFactory.createTitledBorder(_("isisfish.effortDescription.economicTitle"))}'>
+ <row>
+ <cell anchor='east' fill='none' weighty='0.0'>
+ <JLabel text="isisfish.effortDescription.crewSize" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0' weighty='0.0'>
+ <!--NumberEditor id='fieldEffortDescriptionCrewSize' constructorParams='this'
+ bean='{getEffortDescription()}' property='crewSize'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{EffortDescription.class}' _method='"CrewSize"'/-->
+ <JTextField id="fieldEffortDescriptionCrewSize" text='{String.valueOf(getEffortDescription().getCrewSize())}'
+ onKeyReleased='getEffortDescription().setCrewSize(Integer.parseInt(fieldEffortDescriptionCrewSize.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"CrewSize"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east' fill='none' weighty='0.0'>
+ <JLabel text="isisfish.effortDescription.unitCostOfFishing" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0' weighty='0.0'>
+ <!--NumberEditor id='fieldEffortDescriptionUnitCostOfFishing' constructorParams='this'
+ bean='{getEffortDescription()}' property='unitCostOfFishing'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{EffortDescription.class}' _method='"UnitCostOfFishing"'/-->
+ <JTextField id="fieldEffortDescriptionUnitCostOfFishing" text='{String.valueOf(getEffortDescription().getUnitCostOfFishing())}'
+ onKeyReleased='getEffortDescription().setUnitCostOfFishing(Double.parseDouble(fieldEffortDescriptionUnitCostOfFishing.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"UnitCostOfFishing"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east' fill='none' weighty='0.0'>
+ <JLabel text="isisfish.effortDescription.fixedCrewSalary" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0' weighty='0.0'>
+ <!--NumberEditor id='fieldEffortDescriptionFixedCrewSalary' constructorParams='this'
+ bean='{getEffortDescription()}' property='fixedCrewSalary'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{EffortDescription.class}' _method='"FixedCrewSalary"'/-->
+ <JTextField id="fieldEffortDescriptionFixedCrewSalary" text='{String.valueOf(getEffortDescription().getFixedCrewSalary())}'
+ onKeyReleased='getEffortDescription().setFixedCrewSalary(Double.parseDouble(fieldEffortDescriptionFixedCrewSalary.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"FixedCrewSalary"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east' fill='none' weighty='0.0'>
+ <JLabel text="isisfish.effortDescription.crewFoodCost" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0' weighty='0.0'>
+ <!--NumberEditor id='fieldEffortDescriptionCrewFoodCost' constructorParams='this'
+ bean='{getEffortDescription()}' property='crewFoodCost'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{EffortDescription.class}' _method='"CrewFoodCost"'/-->
+ <JTextField id="fieldEffortDescriptionCrewFoodCost" text='{String.valueOf(getEffortDescription().getCrewFoodCost())}'
+ onKeyReleased='getEffortDescription().setCrewFoodCost(Double.parseDouble(fieldEffortDescriptionCrewFoodCost.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"CrewFoodCost"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east' fill='none' weighty='0.0'>
+ <JLabel text="isisfish.effortDescription.crewShareRate" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0' weighty='0.0'>
+ <!--NumberEditor id='fieldEffortDescriptionCrewShareRate' constructorParams='this'
+ bean='{getEffortDescription()}' property='crewShareRate'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{EffortDescription.class}' _method='"CrewShareRate"'/-->
+ <JTextField id="fieldEffortDescriptionCrewShareRate" text='{String.valueOf(getEffortDescription().getCrewShareRate())}'
+ onKeyReleased='getEffortDescription().setCrewShareRate(Double.parseDouble(fieldEffortDescriptionCrewShareRate.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"CrewShareRate"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east' fill='none' weighty='0.0'>
+ <JLabel text="isisfish.effortDescription.repairAndMaintenanceGearCost" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0' weighty='0.0'>
+ <!--NumberEditor id='fieldEffortDescriptionRepairAndMaintenanceGearCost' constructorParams='this'
+ bean='{getEffortDescription()}' property='repairAndMaintenanceGearCost'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}'
+ _method='"RepairAndMaintenanceGearCost"' useSign='true'/-->
+ <JTextField id="fieldEffortDescriptionRepairAndMaintenanceGearCost" text='{String.valueOf(getEffortDescription().getRepairAndMaintenanceGearCost())}'
+ onKeyReleased='getEffortDescription().setRepairAndMaintenanceGearCost(Double.parseDouble(fieldEffortDescriptionRepairAndMaintenanceGearCost.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"RepairAndMaintenanceGearCost"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east' fill='none' weighty='0.0'>
+ <JLabel text="isisfish.effortDescription.landingCosts" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0' weighty='0.0'>
+ <!--NumberEditor id='fieldEffortDescriptionLandingCosts' constructorParams='this'
+ bean='{getEffortDescription()}' property='landingCosts'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{EffortDescription.class}' _method='"LandingCosts"'/-->
+ <JTextField id="fieldEffortDescriptionLandingCosts" text='{String.valueOf(getEffortDescription().getLandingCosts())}'
+ onKeyReleased='getEffortDescription().setLandingCosts(Double.parseDouble(fieldEffortDescriptionLandingCosts.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"LandingCosts"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='northeast' fill='none' weighty='1.0'>
+ <JLabel text="isisfish.effortDescription.otherRunningCost" enabled='{isActive()}'/>
+ </cell>
+ <cell anchor='north' fill='horizontal' weightx='1.0' weighty='1.0'>
+ <!--NumberEditor id='fieldEffortDescriptionOtherRunningCost' constructorParams='this'
+ bean='{getEffortDescription()}' property='otherRunningCost'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{EffortDescription.class}' _method='"OtherRunningCost"'/-->
+ <JTextField id="fieldEffortDescriptionOtherRunningCost" text='{String.valueOf(getEffortDescription().getOtherRunningCost())}'
+ onKeyReleased='getEffortDescription().setOtherRunningCost(Double.parseDouble(fieldEffortDescriptionOtherRunningCost.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{EffortDescription.class}' _method='"OtherRunningCost"'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.3'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.3'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EffortDescriptionUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,21 +22,22 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='SetOfVessels'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.SetOfVesselsImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.SetOfVessels id='bean' javaBean='null'/>
<script><![CDATA[
import java.util.ArrayList;
import fr.ifremer.isisfish.entities.EffortDescription;
-import fr.ifremer.isisfish.entities.SetOfVesselsImpl;
import fr.ifremer.isisfish.entities.SetOfVessels;
import fr.ifremer.isisfish.entities.Metier;
import fr.ifremer.isisfish.ui.input.setofvessels.MetierListModel;
import fr.ifremer.isisfish.ui.input.setofvessels.MetierListRenderer;
import fr.ifremer.isisfish.ui.input.setofvessels.EffortDescriptionListModel;
import fr.ifremer.isisfish.ui.input.setofvessels.EffortDescriptionListRenderer;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
/**
* Get input action from context.
@@ -45,23 +46,28 @@
return getContextValue(InputAction.class);
}
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ MetierListModel metierModel = (MetierListModel)fieldEffortDescriptionMetierList.getModel();
+ if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ metierModel.setMetiers(null);
+ }
+ if (evt.getNewValue() != null) {
+ metierModel.setMetiers(getRegion().getMetier());
+ setEffortDescriptionEffortDescriptionList();
+ }
+ }
+ });
+}
+
@Override
public void refresh() {
SetOfVessels setOfVessels = getVerifier().getEntity(SetOfVessels.class);
// twice event for jaxx bindings detection
setBean(null);
- setBean((SetOfVesselsImpl) setOfVessels);
-
- // fill available metier list
- MetierListModel metierModel = (MetierListModel)fieldEffortDescriptionMetierList.getModel();
- if (getBean() != null) {
- metierModel.setMetiers(getRegion().getMetier());
- }
- else {
- metierModel.setMetiers(null);
- }
- setEffortDescriptionEffortDescriptionList();
+ setBean(setOfVessels);
}
@Override
@@ -73,7 +79,7 @@
protected void onFieldEffortDescriptionMetierListValueChanged() {
// active le bouton seulement si l'interface est active
// dans le cas de sensitivity par exemple
- if (isActif()) {
+ if (isActive()) {
buttonEffortDescriptionAdd.setEnabled(fieldEffortDescriptionMetierList.getSelectedIndex() != -1);
}
}
@@ -81,7 +87,7 @@
protected void onFieldEffortDescriptionEffortDescriptionListValueChanged() {
// active le bouton seulement si l'interface est active
// dans le cas de sensitivity par exemple
- if (isActif()) {
+ if (isActive()) {
removeEffortDescriptionButton.setEnabled(fieldEffortDescriptionEffortDescriptionList.getSelectedIndex() != -1);
}
}
@@ -113,42 +119,44 @@
}
]]>
</script>
- <Table>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <JScrollPane>
- <JList id="fieldEffortDescriptionMetierList" selectionMode="{javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}"
- model='{new MetierListModel()}' cellRenderer='{new MetierListRenderer()}'
- onValueChanged='onFieldEffortDescriptionMetierListValueChanged()' enabled='{isActif()}' decorator='boxed' />
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id="buttonEffortDescriptionAdd" text="isisfish.common.add" onActionPerformed='addEffortDescriptions()' enabled='false'
- decorator='boxed' />
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='removeEffortDescriptionButton' text="isisfish.common.remove" onActionPerformed='removeEffortDescriptions()'
- enabled='false' decorator='boxed' />
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <JScrollPane>
- <JList id="fieldEffortDescriptionEffortDescriptionList" selectionMode="{javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}"
- cellRenderer='{new EffortDescriptionListRenderer()}'
- onValueChanged='onFieldEffortDescriptionEffortDescriptionListValueChanged()' enabled='{isActif()}' decorator='boxed' />
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
+ <JScrollPane>
+ <JList id="fieldEffortDescriptionMetierList" selectionMode="{javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}"
+ model='{new MetierListModel()}' cellRenderer='{new MetierListRenderer()}'
+ onValueChanged='onFieldEffortDescriptionMetierListValueChanged()' enabled='{isActive()}' decorator='boxed' />
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id="buttonEffortDescriptionAdd" text="isisfish.common.add" onActionPerformed='addEffortDescriptions()' enabled='false'
+ decorator='boxed' />
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='removeEffortDescriptionButton' text="isisfish.common.remove" onActionPerformed='removeEffortDescriptions()'
+ enabled='false' decorator='boxed' />
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
+ <JScrollPane>
+ <JList id="fieldEffortDescriptionEffortDescriptionList" selectionMode="{javax.swing.ListSelectionModel.MULTIPLE_INTERVAL_SELECTION}"
+ cellRenderer='{new EffortDescriptionListRenderer()}'
+ onValueChanged='onFieldEffortDescriptionEffortDescriptionListValueChanged()' enabled='{isActive()}' decorator='boxed' />
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EquationEditorPaneUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EquationEditorPaneUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/EquationEditorPaneUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,9 +22,10 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<JDialog id="EquationEditorPane" modal="true" title="isisfish.equation.editor.title" width="400" height="400">
+<JDialog id="EquationEditorPane" modal="true" title="isisfish.equation.editor.title"
+ width="400" height="400" layout="{new BorderLayout()}">
- <script><![CDATA[
+ <script><![CDATA[
import fr.ifremer.isisfish.util.CompileHelper;
import fr.ifremer.isisfish.util.EvaluatorHelper;
import org.nuiton.util.FileUtil;
@@ -39,16 +40,18 @@
boolean ok = false;
Class javaInterface = null;
-setModalityType(Dialog.ModalityType.APPLICATION_MODAL);
-doc.setEditable(false);
-doc.setEditorKit(new HTMLEditorKit());
-doc.addHyperlinkListener(createHyperLinkListener());
+protected void $afterCompleteSetup() {
+ setModalityType(Dialog.ModalityType.APPLICATION_MODAL);
+ doc.setEditable(false);
+ doc.setEditorKit(new HTMLEditorKit());
+ doc.addHyperlinkListener(createHyperLinkListener());
-editor.setAskIfNotSaved(false);
+ editor.setAskIfNotSaved(false);
-checkWindow.setEditable(false);
+ checkWindow.setEditable(false);
-split.setDividerLocation(0.8)
+ split.setDividerLocation(0.8);
+}
public boolean isOk() {
return ok;
@@ -60,93 +63,89 @@
getEditor().open(FileUtil.getTempFile(content, ".java"));
}
- public HyperlinkListener createHyperLinkListener() {
- return new HyperlinkListener() {
- public void hyperlinkUpdate(HyperlinkEvent e) {
- if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
- if (e instanceof HTMLFrameHyperlinkEvent) {
- ((HTMLDocument)doc.getDocument()).processHTMLFrameHyperlinkEvent(
- (HTMLFrameHyperlinkEvent)e);
- } else {
- try {
- if (Desktop.isDesktopSupported() && Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)) {
- Desktop.getDesktop().browse(e.getURL().toURI());
- } else {
- doc.setPage(e.getURL());
- }
- } catch (Exception ex) {
- if (log.isErrorEnabled()) {
- log.error("Error for : " + e.getURL(), ex);
- }
+public HyperlinkListener createHyperLinkListener() {
+ return new HyperlinkListener() {
+ public void hyperlinkUpdate(HyperlinkEvent e) {
+ if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
+ if (e instanceof HTMLFrameHyperlinkEvent) {
+ ((HTMLDocument)doc.getDocument()).processHTMLFrameHyperlinkEvent(
+ (HTMLFrameHyperlinkEvent)e);
+ } else {
+ try {
+ if (Desktop.isDesktopSupported() && Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)) {
+ Desktop.getDesktop().browse(e.getURL().toURI());
+ } else {
+ doc.setPage(e.getURL());
}
+ } catch (Exception ex) {
+ if (log.isErrorEnabled()) {
+ log.error("Error for : " + e.getURL(), ex);
+ }
}
}
}
- };
- }
+ }
+ };
+}
- public void check() {
+public void check() {
+ try {
+ String content = editor.getText();
+
+ StringWriter result = new StringWriter();
+ PrintWriter out = new PrintWriter(result);
+ int compileResult = 0;
try {
- String content = editor.getText();
-
- StringWriter result = new StringWriter();
- PrintWriter out = new PrintWriter(result);
- int compileResult = 0;
- try {
- compileResult = EvaluatorHelper.check(javaInterface, content, out);
- } catch (Exception eee) {
- compileResult = -1;
- }
-
- out.flush();
- if (compileResult != 0) {
- checkWindow.setText(result.toString());
- checkWindow.setBackground(Color.red);
- } else {
- checkWindow.setText("Compilation Ok");
- checkWindow.setBackground(Color.white);
- }
-
- } catch(Exception e){
- log.error("Can't check script", e);
+ compileResult = EvaluatorHelper.check(javaInterface, content, out);
+ } catch (Exception eee) {
+ compileResult = -1;
}
+
+ out.flush();
+ if (compileResult != 0) {
+ checkWindow.setText(result.toString());
+ checkWindow.setBackground(Color.red);
+ } else {
+ checkWindow.setText("Compilation Ok");
+ checkWindow.setBackground(Color.white);
+ }
+
+ } catch(Exception e){
+ log.error("Can't check script", e);
}
+}
]]></script>
- <Table weightx="1">
- <row>
- <cell columns='4' weighty="1" fill='both'>
- <JScrollPane>
- <JEditorPane id="doc"/>
- </JScrollPane>
- </cell>
- </row>
-
- <row columns='4' weighty="5" fill='both'>
- <cell>
- <JSplitPane id='split' orientation='vertical' oneTouchExpandable='true' resizeWeight='0.8'>
- <org.nuiton.widget.editor.Editor id="editor"/>
- <JScrollPane>
- <JEditorPane id="checkWindow"/>
- </JScrollPane>
- </JSplitPane>
- </cell>
- </row>
-
- <row fill='horizontal'>
- <cell>
- <JButton text='isisfish.common.check' onActionPerformed='check()'/>
- </cell>
- <cell>
- <JButton id='okButton' text='isisfish.common.ok' onActionPerformed='ok=true; setVisible(false)'/>
- </cell>
- <cell>
- <JButton id='cancelButton' text='isisfish.common.cancel' onActionPerformed='setVisible(false)'/>
- </cell>
- <cell>
- </cell>
- </row>
-
- </Table>
+ <Table constraints="BorderLayout.CENTER">
+ <row>
+ <cell columns='4' weighty="1" fill='both'>
+ <JScrollPane>
+ <JEditorPane id="doc" />
+ </JScrollPane>
+ </cell>
+ </row>
+ <row columns='4' weighty="5" fill='both'>
+ <cell>
+ <JSplitPane id='split' orientation='vertical'
+ oneTouchExpandable='true' resizeWeight='0.8'>
+ <org.nuiton.widget.editor.Editor id="editor" />
+ <JScrollPane>
+ <JEditorPane id="checkWindow" />
+ </JScrollPane>
+ </JSplitPane>
+ </cell>
+ </row>
+ <row fill='horizontal'>
+ <cell>
+ <JButton text='isisfish.common.check' onActionPerformed='check()' />
+ </cell>
+ <cell>
+ <JButton id='okButton' text='isisfish.common.ok' onActionPerformed='ok=true; setVisible(false)' />
+ </cell>
+ <cell>
+ <JButton id='cancelButton' text='isisfish.common.cancel' onActionPerformed='setVisible(false)' />
+ </cell>
+ </row>
+ </Table>
</JDialog>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/FisheryRegionUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,40 +22,52 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='FisheryRegion'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.FisheryRegionImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.FisheryRegion id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.FisheryRegion;
-import fr.ifremer.isisfish.entities.FisheryRegionImpl;
import fr.ifremer.isisfish.map.CopyMapToClipboardListener;
import com.bbn.openmap.gui.Tool;
import com.bbn.openmap.gui.OMToolSet;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
protected OMToolSet toolSet = new OMToolSet();
-toolSet.setupListeners(cellMap);
-toolMap.add((Tool)toolSet);
-// add copy to clipboard support
-cellMap.addMapMouseListener(new CopyMapToClipboardListener(cellMap));
-
-setButtonTitle(_("isisfish.input.continueCells"));
-setNextPath("$root/$cells");
-
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- // remove previous binding on getBean()
- jaxx.runtime.SwingUtil.removeDataBinding($InputContentUI0, "cellMap.fisheryRegion");
+protected void $afterCompleteSetup() {
+ toolSet.setupListeners(cellMap);
+ toolMap.add((Tool)toolSet);
+
+ // add copy to clipboard support
+ cellMap.addMapMouseListener(new CopyMapToClipboardListener(cellMap));
+
+ setButtonTitle(_("isisfish.input.continueCells"));
+ setNextPath("$root/$cells");
+
+ addPropertyChangeListener("bean", new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ // remove previous binding on getBean()
+ //jaxx.runtime.SwingUtil.removeDataBinding($InputContentUI0, "cellMap.fisheryRegion");
+ setFieldMapfilesModel(getBean());
+ /* numberEditor is not working
+ fieldLatMin.init();
+ fieldLatMax.init();
+ fieldLongMin.init();
+ fieldLongMax.init();
+ fieldCellLengthLatitude.init();
+ fieldCellLengthLongitude.init();*/
+ }
+ if (evt.getNewValue() != null) {
+ // add binding on getBean()
+ //jaxx.runtime.SwingUtil.applyDataBinding($InputContentUI0, "cellMap.fisheryRegion");
+ }
}
- if (evt.getNewValue() != null) {
- // add binding on getBean()
- jaxx.runtime.SwingUtil.applyDataBinding($InputContentUI0, "cellMap.fisheryRegion");
- }
- }
-});
+ });
+}
@Override
public void refresh() {
@@ -64,18 +76,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((FisheryRegionImpl)region);
-
- if (getBean() != null) {
- setFieldMapfilesModel(getBean());
- /* numberEditor is not working
- fieldLatMin.init();
- fieldLatMax.init();
- fieldLongMin.init();
- fieldLongMax.init();
- fieldCellLengthLatitude.init();
- fieldCellLengthLongitude.init();*/
- }
+ setBean(region);
}
@Override
@@ -129,186 +130,188 @@
getInputAction().saveFisheryRegion(getBean());
getVerifier().setEditable(false);
// TODO remove getParentContainer reference
- getParentContainer(InputUI.class).setTreeModel();
- getParentContainer(InputUI.class).setFieldCurrentRegionModel();
+ // FIXME echatellier 20110306 : use new tree cell api
+ //getParentContainer(InputUI.class).setTreeModel();
+ //getParentContainer(InputUI.class).setFieldCurrentRegionModel();
setInfoText(_("isisfish.message.save.finished"));
refresh();
}
]]></script>
- <JPanel id='body' layout='{new BorderLayout()}'>
- <JSplitPane id="FisheryRegionTab" name="FisheryRegion" constraints='BorderLayout.CENTER'
- oneTouchExpandable="true" dividerLocation="200" orientation="HORIZONTAL">
- <Table>
- <row>
- <cell columns='3'>
- <JLabel text="isisfish.fisheryRegion.name"/>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldRegion" decorator='boxed'
- text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getName())}'
- onKeyReleased='getBean().setName(fieldRegion.getText())'/>
- </cell>
- </row>
- <row>
- <cell columns='3'>
- <JLabel text="isisfish.fisheryRegion.area"/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.fisheryRegion.latitude.min"/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <!-- NumberEditor id='fieldLatMin' constructorParams='this'
- bean='{getBean()}' property='minLatitude'
- decorator='boxed' useSign='true'/-->
- <JTextField id="fieldLatMin" text='{getBean().getMinLatitude()}' decorator='boxed'
- onKeyReleased='getBean().setMinLatitude(Float.parseFloat(fieldLatMin.getText()))'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.fisheryRegion.latitude.max"/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <!-- NumberEditor id='fieldLatMax' constructorParams='this'
- bean='{getBean()}' property='maxLatitude'
- decorator='boxed' useSign='true'/-->
- <JTextField id="fieldLatMax" text='{getBean().getMaxLatitude()}' decorator='boxed'
- onKeyReleased='getBean().setMaxLatitude(Float.parseFloat(fieldLatMax.getText()))'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.fisheryRegion.longitude.min"/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <!-- NumberEditor id='fieldLongMin' constructorParams='this'
- bean='{getBean()}' property='minLongitude'
- decorator='boxed' useSign='true'/-->
- <JTextField id="fieldLongMin" text='{getBean().getMinLongitude()}' decorator='boxed'
- onKeyReleased='getBean().setMinLongitude(Float.parseFloat(fieldLongMin.getText()))'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.fisheryRegion.longitude.max"/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <!-- NumberEditor id='fieldLongMax' constructorParams='this'
- bean='{getBean()}' property='maxLongitude'
- decorator='boxed' useSign='true'/-->
- <JTextField id="fieldLongMax" text='{getBean().getMaxLongitude()}' decorator='boxed'
- onKeyReleased='getBean().setMaxLongitude(Float.parseFloat(fieldLongMax.getText()))'/>
- </cell>
- </row>
- <row>
- <cell columns='3'>
- <JLabel text="isisfish.fisheryRegion.spatial"/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.fisheryRegion.latitude"/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <!-- NumberEditor id='fieldCellLengthLatitude' constructorParams='this'
- bean='{getBean()}' property='cellLengthLatitude'
- decorator='boxed' useSign='true'/-->
- <JTextField id="fieldCellLengthLatitude" text='{getBean().getCellLengthLatitude()}' decorator='boxed'
- onKeyReleased='getBean().setCellLengthLatitude(Float.parseFloat(fieldCellLengthLatitude.getText()))'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.fisheryRegion.longitude"/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <!-- NumberEditor id='fieldCellLengthLongitude' constructorParams='this'
- bean='{getBean()}' property='cellLengthLongitude'
- decorator='boxed' useSign='true'/-->
- <JTextField id="fieldCellLengthLongitude" text='{getBean().getCellLengthLongitude()}' decorator='boxed'
- onKeyReleased='getBean().setCellLengthLongitude(Float.parseFloat(fieldCellLengthLongitude.getText()))'/>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='both' weightx='1.0' weighty='0.6'>
- <JScrollPane>
- <JList id="fieldMapfiles" decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id="buttonAddMap" text="isisfish.fisheryRegion.addMap" onActionPerformed='addMap()' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id="buttonRemoveMap" text="isisfish.fisheryRegion.delMap" onActionPerformed='delMap()' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell columns='3'>
- <JLabel text="isisfish.fisheryRegion.comments"/>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='both' weightx='1.0' weighty='0.4'>
- <JScrollPane>
- <JTextArea id="fieldComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}' decorator='boxed'
- onKeyReleased='getBean().setComment(fieldComment.getText())'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell columns='3'>
- <JLabel text="isisfish.fisheryRegion.selectFile"/>
- </cell>
- </row>
- <row>
- <cell columns='3'>
- <JLabel text="isisfish.fisheryRegion.ofCells"/>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell columns='4' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldCellFile" onKeyReleased='cellFillChanged()' decorator='boxed'/>
- </cell>
- <cell>
- <JButton id="buttonCellFile" text="isisfish.common.ellipsis" onActionPerformed='cellFile()' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.3'>
- <JButton id='save' enabled='false' onActionPerformed='save()' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.3'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.3'>
- <JButton id='check' text="isisfish.common.check" onActionPerformed='check()' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- <JPanel id='map' layout='{new BorderLayout()}'>
- <com.bbn.openmap.gui.ToolPanel id='toolMap' javaBean='new com.bbn.openmap.gui.ToolPanel()'
+ <JPanel id="body">
+ <JSplitPane constraints='BorderLayout.CENTER' oneTouchExpandable="true" dividerLocation="200" orientation="HORIZONTAL">
+ <Table>
+ <row>
+ <cell columns='3'>
+ <JLabel text="isisfish.fisheryRegion.name"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldRegion" decorator='boxed'
+ text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getName())}'
+ onKeyReleased='getBean().setName(fieldRegion.getText())'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3'>
+ <JLabel text="isisfish.fisheryRegion.area"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.fisheryRegion.latitude.min"/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <!-- NumberEditor id='fieldLatMin' constructorParams='this'
+ bean='{getBean()}' property='minLatitude'
+ decorator='boxed' useSign='true'/-->
+ <JTextField id="fieldLatMin" text='{String.valueOf(getBean().getMinLatitude())}' decorator='boxed'
+ onKeyReleased='getBean().setMinLatitude(Float.parseFloat(fieldLatMin.getText()))'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.fisheryRegion.latitude.max"/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <!-- NumberEditor id='fieldLatMax' constructorParams='this'
+ bean='{getBean()}' property='maxLatitude'
+ decorator='boxed' useSign='true'/-->
+ <JTextField id="fieldLatMax" text='{String.valueOf(getBean().getMaxLatitude())}' decorator='boxed'
+ onKeyReleased='getBean().setMaxLatitude(Float.parseFloat(fieldLatMax.getText()))'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.fisheryRegion.longitude.min"/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <!-- NumberEditor id='fieldLongMin' constructorParams='this'
+ bean='{getBean()}' property='minLongitude'
+ decorator='boxed' useSign='true'/-->
+ <JTextField id="fieldLongMin" text='{String.valueOf(getBean().getMinLongitude())}' decorator='boxed'
+ onKeyReleased='getBean().setMinLongitude(Float.parseFloat(fieldLongMin.getText()))'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.fisheryRegion.longitude.max"/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <!-- NumberEditor id='fieldLongMax' constructorParams='this'
+ bean='{getBean()}' property='maxLongitude'
+ decorator='boxed' useSign='true'/-->
+ <JTextField id="fieldLongMax" text='{String.valueOf(getBean().getMaxLongitude())}' decorator='boxed'
+ onKeyReleased='getBean().setMaxLongitude(Float.parseFloat(fieldLongMax.getText()))'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3'>
+ <JLabel text="isisfish.fisheryRegion.spatial"/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.fisheryRegion.latitude"/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <!-- NumberEditor id='fieldCellLengthLatitude' constructorParams='this'
+ bean='{getBean()}' property='cellLengthLatitude'
+ decorator='boxed' useSign='true'/-->
+ <JTextField id="fieldCellLengthLatitude" text='{String.valueOf(getBean().getCellLengthLatitude())}' decorator='boxed'
+ onKeyReleased='getBean().setCellLengthLatitude(Float.parseFloat(fieldCellLengthLatitude.getText()))'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.fisheryRegion.longitude"/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <!-- NumberEditor id='fieldCellLengthLongitude' constructorParams='this'
+ bean='{getBean()}' property='cellLengthLongitude'
+ decorator='boxed' useSign='true'/-->
+ <JTextField id="fieldCellLengthLongitude" text='{String.valueOf(getBean().getCellLengthLongitude())}' decorator='boxed'
+ onKeyReleased='getBean().setCellLengthLongitude(Float.parseFloat(fieldCellLengthLongitude.getText()))'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='both' weightx='1.0' weighty='0.6'>
+ <JScrollPane>
+ <JList id="fieldMapfiles" decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id="buttonAddMap" text="isisfish.fisheryRegion.addMap" onActionPerformed='addMap()' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id="buttonRemoveMap" text="isisfish.fisheryRegion.delMap" onActionPerformed='delMap()' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3'>
+ <JLabel text="isisfish.fisheryRegion.comments"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='both' weightx='1.0' weighty='0.4'>
+ <JScrollPane>
+ <JTextArea id="fieldComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}' decorator='boxed'
+ onKeyReleased='getBean().setComment(fieldComment.getText())'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3'>
+ <JLabel text="isisfish.fisheryRegion.selectFile"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3'>
+ <JLabel text="isisfish.fisheryRegion.ofCells"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell columns='4' fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldCellFile" onKeyReleased='cellFillChanged()' decorator='boxed'/>
+ </cell>
+ <cell>
+ <JButton id="buttonCellFile" text="isisfish.common.ellipsis" onActionPerformed='cellFile()' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.3'>
+ <JButton id='save' enabled='false' onActionPerformed='save()' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.3'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.3'>
+ <JButton id='check' text="isisfish.common.check" onActionPerformed='check()' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ <JPanel id='map' layout='{new BorderLayout()}'>
+ <com.bbn.openmap.gui.ToolPanel id='toolMap' javaBean='new com.bbn.openmap.gui.ToolPanel()'
constraints='BorderLayout.NORTH' decorator='boxed'/>
- <fr.ifremer.isisfish.map.IsisMapBean id='cellMap' selectionMode="0" javaBean='new fr.ifremer.isisfish.map.IsisMapBean()'
+ <fr.ifremer.isisfish.map.IsisMapBean id='cellMap'
+ selectionMode="{fr.ifremer.isisfish.map.CellSelectionLayer.NO_SELECTION}"
+ javaBean='new fr.ifremer.isisfish.map.IsisMapBean()'
fisheryRegion='{getBean()}' constraints='BorderLayout.CENTER' decorator='boxed'/>
- </JPanel>
- </JSplitPane>
- </JPanel>
+ </JPanel>
+ </JSplitPane>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearTabUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,31 +22,34 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Gear'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.GearImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Gear id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Gear;
-import fr.ifremer.isisfish.entities.GearImpl;
import jaxx.runtime.swing.editor.NumberEditor;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- fieldGearName.setText("");
- fieldGearEffortUnit.setText("");
- fieldGearStandardisationFactor.setText("");
- fieldGearParamName.setText("");
- fieldGearComment.setText("");
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ fieldGearName.setText("");
+ fieldGearEffortUnit.setText("");
+ fieldGearStandardisationFactor.setText("");
+ fieldGearParamName.setText("");
+ fieldGearComment.setText("");
+ }
+ if (evt.getNewValue() != null) {
+
+ }
}
- if (evt.getNewValue() != null) {
+ });
+}
- }
- }
-});
-
@Override
public void refresh() {
Gear gear = getVerifier().getEntity(Gear.class);
@@ -54,7 +57,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((GearImpl) gear);
+ setBean(gear);
getVerifier().addCurrentPanel(rangeOfValues);
@@ -68,98 +71,100 @@
public void setActionButtons() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "Gear");
+ getVerifier().setNewButton(create, Gear.class);
getVerifier().setDeleteButton(remove);
}
]]></script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.gear.name" enabled='{isActif()}'/>
- </cell>
- <cell columns="2" fill='horizontal' weightx='1.0'>
- <JTextField id="fieldGearName" text='{getBean().getName()}' onKeyReleased='getBean().setName(fieldGearName.getText())' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.gear.effortUnit" enabled='{isActif()}'/>
- </cell>
- <cell columns="2" fill='horizontal' weightx='1.0'>
- <JTextField id="fieldGearEffortUnit" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getEffortUnit())}'
- onKeyReleased='getBean().setEffortUnit(fieldGearEffortUnit.getText())' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.gear.standardisationFactor" enabled='{isActif()}'/>
- </cell>
- <cell columns="2" fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldGearStandardisationFactor' constructorParams='this'
- bean='{getBean()}' property='standardisationFactor'
- enabled='{isActif()}' decorator='boxed' _bean='{GearImpl.class}'
- _method='"StandardisationFactor"' useSign='true'/-->
- <JTextField id="fieldGearStandardisationFactor" text='{getBean().getStandardisationFactor()}'
- onKeyReleased='getBean().setStandardisationFactor(Double.parseDouble(fieldGearStandardisationFactor.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{GearImpl.class}' _method='"StandardisationFactor"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.gear.technicalParameter" enabled='{isActif()}'/>
- </cell>
- <cell columns="2" fill='horizontal' weightx='1.0'>
- <JTextField id="fieldGearParamName" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getParameterName())}'
- onKeyReleased='getBean().setParameterName(fieldGearParamName.getText())' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.gear.rangeValues" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <RangeOfValuesUI id="rangeOfValues" actif='{isActif()}' constructorParams='this'
- decorator='boxed' _bean='{GearImpl.class}' _method='"PossibleValue"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.gear.comments" enabled='{isActif()}'/>
- </cell>
- <cell columns="2" fill='both' weightx='1.0' weighty='1.0'>
- <JScrollPane>
- <JTextArea id="fieldGearComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
- onKeyReleased='getBean().setComment(fieldGearComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='remove' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.gear.name" enabled='{isActive()}'/>
+ </cell>
+ <cell columns="2" fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldGearName" text='{getBean().getName()}' onKeyReleased='getBean().setName(fieldGearName.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.gear.effortUnit" enabled='{isActive()}'/>
+ </cell>
+ <cell columns="2" fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldGearEffortUnit" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getEffortUnit())}'
+ onKeyReleased='getBean().setEffortUnit(fieldGearEffortUnit.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.gear.standardisationFactor" enabled='{isActive()}'/>
+ </cell>
+ <cell columns="2" fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldGearStandardisationFactor' constructorParams='this'
+ bean='{getBean()}' property='standardisationFactor'
+ enabled='{isActive()}' decorator='boxed' _bean='{Gear.class}'
+ _method='"StandardisationFactor"' useSign='true'/-->
+ <JTextField id="fieldGearStandardisationFactor" text='{String.valueOf(getBean().getStandardisationFactor())}'
+ onKeyReleased='getBean().setStandardisationFactor(Double.parseDouble(fieldGearStandardisationFactor.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{Gear.class}' _method='"StandardisationFactor"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.gear.technicalParameter" enabled='{isActive()}'/>
+ </cell>
+ <cell columns="2" fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldGearParamName" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getParameterName())}'
+ onKeyReleased='getBean().setParameterName(fieldGearParamName.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.gear.rangeValues" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <RangeOfValuesUI id="rangeOfValues" active='{isActive()}' constructorParams='this'
+ decorator='boxed' _bean='{Gear.class}' _method='"PossibleValue"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.gear.comments" enabled='{isActive()}'/>
+ </cell>
+ <cell columns="2" fill='both' weightx='1.0' weighty='1.0'>
+ <JScrollPane>
+ <JTextArea id="fieldGearComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
+ onKeyReleased='getBean().setComment(fieldGearComment.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='remove' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,21 +22,40 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Gear'>
+ <fr.ifremer.isisfish.entities.Gear id='bean' javaBean='null'/>
+
<script><![CDATA[
-// constructor code
-setButtonTitle(_("isisfish.input.continueMetiers"));
-setNextPath("$root/$metiers");
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
- at Override
-public void refresh() {
+protected void $afterCompleteSetup() {
+ setButtonTitle(_("isisfish.input.continueMetiers"));
+ setNextPath("$root/$metiers");
+
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ }
+ if (evt.getNewValue() != null) {
+ //getVerifier().addCurrentPanel(gearTabUI, selectivityUI);
+ }
+ }
+ });
+
// install change listener
// (depends on sensitivity can't be done on constructor)
installChangeListener(gearTab);
+}
- getVerifier().addCurrentPanel(gearTabUI, selectivityUI);
+ at Override
+public void refresh() {
+
+
+
+ //getVerifier().addCurrentPanel(gearTabUI, selectivityUI);
}
@Override
@@ -45,13 +64,13 @@
setCurrentTabActionButtons(gearTab);
}
]]></script>
- <JPanel layout='{new BorderLayout()}'>
+ <JPanel id="body">
<JTabbedPane constraints='BorderLayout.CENTER' id="gearTab">
<tab title='{_("isisfish.gear.title")}'>
- <GearTabUI id="gearTabUI" constructorParams='this'/>
+ <GearTabUI id="gearTabUI" bean="{getBean()}" active="{isActive()}" constructorParams='this' />
</tab>
<tab title='{_("isisfish.selectivity.title")}'>
- <SelectivityUI id="selectivityUI" constructorParams='this'/>
+ <SelectivityUI id="selectivityUI" bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
</JTabbedPane>
</JPanel>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputAction.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -34,10 +34,7 @@
import java.util.List;
import javax.swing.JOptionPane;
-import javax.swing.JScrollPane;
-import javax.swing.JTextArea;
-import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.math.matrix.MatrixFactory;
@@ -51,41 +48,42 @@
import fr.ifremer.isisfish.IsisFishDAOHelper;
import fr.ifremer.isisfish.datastore.FormuleStorage;
import fr.ifremer.isisfish.datastore.RegionStorage;
-import fr.ifremer.isisfish.datastore.SimulationStorage;
-import fr.ifremer.isisfish.datastore.StorageException;
-import fr.ifremer.isisfish.datastore.update.ImportFromV2;
import fr.ifremer.isisfish.entities.Cell;
import fr.ifremer.isisfish.entities.CellDAO;
import fr.ifremer.isisfish.entities.EffortDescription;
import fr.ifremer.isisfish.entities.EffortDescriptionDAO;
+import fr.ifremer.isisfish.entities.EffortDescriptionImpl;
import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.entities.FisheryRegionDAO;
+import fr.ifremer.isisfish.entities.FisheryRegionImpl;
import fr.ifremer.isisfish.entities.Formule;
import fr.ifremer.isisfish.entities.Gear;
+import fr.ifremer.isisfish.entities.GearDAO;
import fr.ifremer.isisfish.entities.Metier;
+import fr.ifremer.isisfish.entities.MetierDAO;
+import fr.ifremer.isisfish.entities.MetierImpl;
import fr.ifremer.isisfish.entities.MetierSeasonInfo;
import fr.ifremer.isisfish.entities.MetierSeasonInfoDAO;
import fr.ifremer.isisfish.entities.Population;
import fr.ifremer.isisfish.entities.PopulationDAO;
import fr.ifremer.isisfish.entities.PopulationGroup;
+import fr.ifremer.isisfish.entities.PopulationImpl;
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
import fr.ifremer.isisfish.entities.PopulationSeasonInfoDAO;
import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
import fr.ifremer.isisfish.entities.Selectivity;
import fr.ifremer.isisfish.entities.SelectivityDAO;
import fr.ifremer.isisfish.entities.SetOfVessels;
+import fr.ifremer.isisfish.entities.SetOfVesselsDAO;
import fr.ifremer.isisfish.entities.Species;
import fr.ifremer.isisfish.entities.SpeciesDAO;
import fr.ifremer.isisfish.entities.TargetSpecies;
import fr.ifremer.isisfish.entities.TargetSpeciesDAO;
import fr.ifremer.isisfish.entities.Zone;
-import fr.ifremer.isisfish.mexico.export.RegionExplorer;
-import fr.ifremer.isisfish.mexico.export.RegionExport;
-import fr.ifremer.isisfish.mexico.export.RegionExportFactorXML;
import fr.ifremer.isisfish.types.Month;
import fr.ifremer.isisfish.ui.input.check.CheckRegion;
import fr.ifremer.isisfish.ui.input.check.CheckResult;
import fr.ifremer.isisfish.ui.input.check.CheckResultFrame;
-import fr.ifremer.isisfish.ui.simulator.filter.SimulationFilterUtil;
import fr.ifremer.isisfish.ui.util.ErrorHelper;
import fr.ifremer.isisfish.util.CellPointcomparator;
@@ -105,320 +103,6 @@
/** Class logger. */
private static Log log = LogFactory.getLog(InputAction.class);
- /**
- * Exporter la region dans un zip.
- *
- * @return le nom du ficher selectionné par l'utilisateur
- */
- public File importRegion() {
- File file = null;
- try {
- file = FileUtil.getFile(".*.zip$",
- _("isisfish.message.import.region.zipped"));
- if (file != null) {
- RegionStorage.importZip(file);
- }
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't import region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.import"), eee);
- }
- return file;
- }
-
- /**
- * Exporter la region dans un zip.
- *
- * @return le nom du ficher selectionné par l'utilisateur
- */
- public File importRegionAndRename() {
- File file = null;
- try {
- file = FileUtil.getFile(".*.zip$",
- _("isisfish.message.import.region.zipped"));
- if (file != null) {
-
- String newName = JOptionPane
- .showInputDialog(_("isisfish.message.name.imported.region"));
- RegionStorage.importAndRenameZip(file, newName);
- }
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't import region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.import"), eee);
- }
- return file;
- }
-
- /**
- * Importer la region depuis un fichier XML de la version 2.
- *
- * @return le nom du ficher selectionné par l'utilisateur
- */
- public File importV2Region() {
- File file = null;
- try {
- file = FileUtil.getFile(".*.xml$",
- _("isisfish.message.import.region.xml"));
- if (file != null) {
- new ImportFromV2(true).importXML(file);
- }
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't import region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.import"), eee);
- }
- return file;
- }
-
- /**
- * Extract from a simulation the region, and rename it with name given
- * by user.
- *
- * @return le nom de la region entré par l'utilsateur
- */
- public String importRegionFromSimulation() {
-
- // first step select a simulation and new region name
- String simulationName;
- try {
- //TODO Should use a shared model ?
- simulationName = SimulationFilterUtil
- .selectSimulation(SimulationStorage.getSimulationNames());
- if (simulationName == null) {
- return null;
- }
-
- } catch (Exception eee) {
- String msg = _("isisfish.error.no.select.simulation");
- if (log.isWarnEnabled()) {
- log.warn(msg, eee);
- }
- ErrorHelper.showErrorDialog(
- _("isisfish.error.no.select.simulation"), eee);
- return null;
- }
-
- if (log.isInfoEnabled()) {
- log.info("simulation used " + simulationName);
- }
-
- // ask new region name
- String regionName = JOptionPane.showInputDialog(
- _("isisfish.message.import.region.name"), "region from "
- + simulationName);
- if (regionName == null || "".equals(regionName)) {
- return null;
- }
- if (RegionStorage.getRegionNames().contains(regionName)) {
- return null;
- }
-
- if (log.isInfoEnabled()) {
- log.info("new region name " + regionName);
- }
-
- try {
- SimulationStorage.getSimulation(simulationName).extractRegion(
- regionName);
- } catch (StorageException eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't extract region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.import"), eee);
- }
- return regionName;
- }
-
- /**
- * Exporter la region dans un zip
- *
- * @param regionStorage storage to export
- * @return file were region were exported
- */
- public File exportRegion(RegionStorage regionStorage) {
- File file = null;
- try {
- file = FileUtil.getFile(".*.zip$",
- _("isisfish.message.import.region.zipped"));
-
- // add .zip extension is not set
- if (!file.getAbsolutePath().endsWith(".zip")) {
- file = new File(file.getAbsolutePath() + ".zip");
- }
-
- if (file != null) {
- int resp = JOptionPane.YES_OPTION;
- if (file.exists()) {
- resp = JOptionPane.showConfirmDialog(null,
- _("isisfish.message.file.overwrite"));
- }
- if (resp == JOptionPane.YES_OPTION) {
- regionStorage.createZip(file);
- }
- }
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't export region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.export"), eee);
- }
- return file;
- }
-
- /**
- * Copy la region avec un autre nom.
- *
- * @param regionStorage region to copy
- * @return le nom de la nouvelle region
- */
- public String copyRegion(RegionStorage regionStorage) {
- String newName = null;
- try {
- newName = JOptionPane
- .showInputDialog(_("isisfish.message.new.region.name"));
-
- if (!StringUtils.isEmpty(newName)) {
- File zip = regionStorage.createZip();
- RegionStorage.importAndRenameZip(zip, newName);
- }
-
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't copy region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.copy"), eee);
- }
- return newName;
- }
-
- /**
- * Remove region.
- *
- * @param regionStorage region storage
- * @param cvsDelete if true delete region in CVS too
- * @return removed region
- */
- public boolean removeRegion(RegionStorage regionStorage, boolean cvsDelete) {
- boolean result = false;
- try {
- int resp = JOptionPane.showConfirmDialog(null, _(
- "isisfish.message.confirm.remove.region", regionStorage
- .getName()));
- if (resp == JOptionPane.YES_OPTION) {
- regionStorage.delete(cvsDelete);
- result = true;
- }
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't remove region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.remove"), eee);
- }
- return result;
- }
-
- /**
- * Commit region.
- *
- * @param regionStorage region storage
- * @return status message
- */
- public String commitRegionInCVS(RegionStorage regionStorage) {
- String result = null;
- try {
- String msg = regionStorage.getCommentForNextCommit();
- JTextArea text = new JTextArea(msg);
- int resp = JOptionPane.showOptionDialog(null,
- new JScrollPane(text), _("isisfish.commit.message"),
- JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE,
- null, // icon
- null, null);
- if (resp == JOptionPane.OK_OPTION) {
- regionStorage.commit(text.getText());
- regionStorage.clearCommentForNextCommit();
- result = _("isisfish.message.region.commited");
- } else {
- result = _("isisfish.message.commit.region.canceled");
- }
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't export region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.commit"), eee);
- }
- return result;
- }
-
- /**
- * Load region.
- * <p/>
- * RegionStorage, TopiaContext, FisheryRegion are put in uiContext data.
- * <p/>
- * tree ans
- *
- * @param ui TODO
- * @param name name of region
- * @return loaded region
- */
- public FisheryRegion loadRegion(InputUI ui, String name) {
- if (log.isDebugEnabled()) {
- log.debug("loadRegion : " + name);
- }
-
- FisheryRegion region = null;
- try {
- RegionStorage regionStorage = null;
- TopiaContext isisContext = null;
- if (name != null && !" ".equals(name)) {
- regionStorage = RegionStorage.getRegion(name);
- isisContext = regionStorage.getStorage().beginTransaction();
- region = RegionStorage.getFisheryRegion(isisContext);
- ui.setContextValue(regionStorage);
- ui.setContextValue(isisContext);
- // FIXME session shoul be closed
- // but make lazy init later
- //isisContext.rollbackTransaction();
- //isisContext.closeContext();
- }
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't load region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.load"), eee);
- }
- return region;
- }
-
- /**
- * Create new region, and select it in combo, and show input pane region in
- * input area.
- *
- * @param name name of the new region
- */
- public void newRegion(String name) {
- if (log.isTraceEnabled()) {
- log.trace("newRegion called");
- }
- try {
- if ("".equals(name)) {
- // showMsgBox("error " + _("isisfish.error.region.name.empty"));
- }
- if (RegionStorage.getRegionNames().contains(name)) {
- // showMsgBox("Error " + _("isisfish.error.region.already.exists"));
- }
- RegionStorage.create(name);
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't create region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.region.create"), eee);
- }
- }
-
/*
* Permet de creer simplement un nouvelle objet portant un nom par defaut.
* Le nouvel element est automatiquement selectionné dans l'arbre
@@ -628,7 +312,7 @@
return null;
}
- public Object openEditor(String category, String name, Class javaInterface,
+ public Object openEditor(InputOneEquationUI ui, String category, String name, Class javaInterface,
String content, Editor editor) {
if (log.isTraceEnabled()) {
log.trace("openEditor");
@@ -636,6 +320,7 @@
try {
EquationEditorPaneUI pane = new EquationEditorPaneUI();
pane.setEquation(category, name, javaInterface, content);
+ pane.setLocationRelativeTo(ui);
pane.setVisible(true);
if (pane.isOk() && editor != null) {
editor.setText(pane.getEditor().getText());
@@ -1316,42 +1001,4 @@
ErrorHelper.showErrorDialog(_("isisfish.error.region.check"), eee);
}
}
-
- /**
- * Explore region and exporte any enabled sensitivity factor name with value.
- *
- * @param parentComponent parent component
- * @param fisheryRegion fishery region to export
- */
- public void exportRegionSensitivityFactors(InputUI parentComponent, FisheryRegion fisheryRegion) {
-
- try {
- File exportFile = FileUtil.getFile(_("isisfish.input.sensitivity.export.title"),
- _("isisfish.common.ok"), parentComponent, ".*\\.xml", "XML Files");
-
- // make sur that filename ends with ".xml"
- if (!exportFile.getAbsolutePath().endsWith(".xml")) {
- exportFile = new File(exportFile.getAbsolutePath() + ".xml");
- }
-
- if (exportFile != null) {
- parentComponent.setStatusMessage(_("isisfish.input.sensitivity.export.running"), true);
- RegionExplorer explorer = new RegionExplorer();
- RegionExport exportXML = new RegionExportFactorXML(exportFile);
- explorer.explore(fisheryRegion, exportXML);
- parentComponent.setStatusMessage(_("isisfish.input.sensitivity.export.complete"));
- }
- else {
- if (log.isDebugEnabled()) {
- log.debug("Export action canceled");
- }
- parentComponent.setStatusMessage(_("isisfish.input.sensitivity.export.cancel"));
- }
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error(_("isisfish.error.sensitivity.export"), eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.sensitivity.export"), eee);
- }
- }
}
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,10 +22,10 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<JPanel layout='{new BorderLayout()}' abstract="true">
+<JPanel layout='{new BorderLayout()}' genericType='B extends TopiaEntityContextable' abstract="true">
- <!-- UI state when editing. If no entity selected, actif = false -->
- <Boolean id='actif' javaBean='false'/>
+ <!-- UI state when editing. If no entity selected, active = false -->
+ <Boolean id='active' javaBean='false'/>
<!-- True only for sensitivity simulation -->
<Boolean id='sensitivity' javaBean='false'/>
@@ -63,19 +63,25 @@
import fr.ifremer.isisfish.ui.sensitivity.EditorHelper;
import fr.ifremer.isisfish.ui.sensitivity.SensitivityTabbedPaneListener;
import fr.ifremer.isisfish.ui.WelcomePanelUI;
-import org.nuiton.topia.persistence.TopiaEntity;
+import org.nuiton.topia.persistence.TopiaEntityContextable;
+import org.nuiton.topia.TopiaContext;
import org.apache.commons.lang.StringUtils;
protected ChangeListener tabbedPaneChangeListener;
/**
+ * Overriden with generic type
+ */
+public abstract void setBean(B entity);
+
+public abstract B getBean();
+
+/**
* This method is UI entry point.
*
* It's called :
* - by input tree to first display UI
* - by input verifier on cancel action
- *
- * 20090602 chatellier : make abstract, must be implemented !
*/
public abstract void refresh();
@@ -91,12 +97,23 @@
public InputAction getAction() {
return getContextValue(InputAction.class);
}
+ at Deprecated
public InputSaveVerifier getVerifier() {
+ return getInputSaveVerifier();
+}
+public InputSaveVerifier getInputSaveVerifier() {
return getContextValue(InputSaveVerifier.class);
}
+ at Deprecated
public FisheryRegion getRegion() {
+ return getFisheryRegion();
+}
+public FisheryRegion getFisheryRegion() {
return getContextValue(FisheryRegion.class);
}
+public TopiaContext getTopiaContext() {
+ return getContextValue(TopiaContext.class);
+}
public void setInfoText(String msg) {
WelcomePanelUI root = getParentContainer(WelcomePanelUI.class);
if (root != null){
@@ -104,7 +121,8 @@
}
}
protected void goTo() {
- getParentContainer(InputUI.class).setTreeSelection(getNextPath());
+ // FIXME echatellier 20110306 use new tree api
+ //getParentContainer(InputUI.class).setTreeSelection(getNextPath());
}
/**
@@ -165,7 +183,7 @@
else {
jaxx.runtime.swing.BlockingLayerUI ui = layerUI.clone();
ui.setBlock(true);
- ui.setUseIcon(isActif());
+ ui.setUseIcon(isActive());
SwingUtil.getLayer(boxed).setUI(ui);
}
}
@@ -184,7 +202,7 @@
}
JComponent source = (JComponent) e.getSource();
- Class<? extends TopiaEntity> classBean = (Class<? extends TopiaEntity>)source.getClientProperty("bean");
+ Class<? extends TopiaEntityContextable> classBean = (Class<? extends TopiaEntityContextable>)source.getClientProperty("bean");
String beanID = (String)source.getClientProperty("beanID");
/*TopiaEntity bean = null;
if (beanID == null) {
@@ -207,7 +225,7 @@
/**
* Display factor wizard for bean/property in registred in verifier.
*/
-public void displayFactorWizard(JComponent source, Class<? extends TopiaEntity> classBean, String beanID, String property) {
+public void displayFactorWizard(JComponent source, Class<? extends TopiaEntityContextable> classBean, String beanID, String property) {
if (log.isDebugEnabled()) {
log.debug("Event intercepted " + source);
@@ -216,7 +234,7 @@
log.debug(" client property (method) : " + property);
}
- TopiaEntity bean = null;
+ TopiaEntityContextable bean = null;
if (beanID == null) {
bean = getVerifier().getEntity(classBean);
}
@@ -286,7 +304,7 @@
}
]]></script>
- <JPanel id='body' constraints='BorderLayout.CENTER'/>
+ <JPanel id='body' constraints='BorderLayout.CENTER' layout='{new BorderLayout()}' />
<JButton id='next' text='{getButtonTitle()}' constraints='BorderLayout.SOUTH'
visible='{getNextPath() != null}' onActionPerformed='goTo()' decorator='boxed'/>
</JPanel>
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputHandler.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputHandler.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputHandler.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,654 @@
+/*
+ * #%L
+ *
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui.input;
+
+import static org.nuiton.i18n.I18n._;
+
+import java.awt.BorderLayout;
+import java.awt.event.ItemEvent;
+import java.io.File;
+import java.io.IOException;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.InvocationTargetException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.swing.JOptionPane;
+import javax.swing.JScrollPane;
+import javax.swing.JTextArea;
+import javax.swing.SwingUtilities;
+import javax.swing.event.TreeSelectionEvent;
+import javax.swing.tree.DefaultTreeModel;
+import javax.swing.tree.TreeModel;
+import javax.swing.tree.TreePath;
+
+import jaxx.runtime.JAXXContext;
+import jaxx.runtime.JAXXUtil;
+
+import org.apache.commons.lang.StringUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.nuiton.topia.TopiaContext;
+import org.nuiton.topia.TopiaException;
+import org.nuiton.topia.persistence.TopiaEntity;
+import org.nuiton.topia.persistence.TopiaEntityContextable;
+import org.nuiton.util.FileUtil;
+
+import fr.ifremer.isisfish.IsisFishRuntimeException;
+import fr.ifremer.isisfish.datastore.RegionStorage;
+import fr.ifremer.isisfish.datastore.SimulationStorage;
+import fr.ifremer.isisfish.datastore.StorageException;
+import fr.ifremer.isisfish.datastore.update.ImportFromV2;
+import fr.ifremer.isisfish.entities.Cell;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.entities.FisheryRegionImpl;
+import fr.ifremer.isisfish.entities.Gear;
+import fr.ifremer.isisfish.entities.Metier;
+import fr.ifremer.isisfish.entities.Population;
+import fr.ifremer.isisfish.entities.Port;
+import fr.ifremer.isisfish.entities.SetOfVessels;
+import fr.ifremer.isisfish.entities.Species;
+import fr.ifremer.isisfish.entities.Strategy;
+import fr.ifremer.isisfish.entities.TripType;
+import fr.ifremer.isisfish.entities.VesselType;
+import fr.ifremer.isisfish.entities.Zone;
+import fr.ifremer.isisfish.mexico.export.RegionExplorer;
+import fr.ifremer.isisfish.mexico.export.RegionExport;
+import fr.ifremer.isisfish.mexico.export.RegionExportFactorXML;
+import fr.ifremer.isisfish.ui.CommonHandler;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeHelper;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeRenderer;
+import fr.ifremer.isisfish.ui.simulator.filter.SimulationFilterUtil;
+import fr.ifremer.isisfish.vcs.VCSException;
+
+/**
+ * Main handler for fishery edition action.
+ * Next, each ui as his own handler.
+ *
+ * In context :
+ * <ul>
+ * <li>FisheryRegion
+ * <li>RegionStorage
+ * </ul>
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class InputHandler extends CommonHandler {
+
+ /** Class logger. */
+ private static Log log = LogFactory.getLog(InputHandler.class);
+
+ /**
+ * Cache pour n'instancier les ui qu'une seule fois
+ * et eviter que l'affichage saute pour l'utilsateur.
+ */
+ protected Map<Class<?>, InputContentUI<?>> uiInstanceCache = new HashMap<Class<?>, InputContentUI<?>>();
+
+ /**
+ * Load region by region name, set it into jaxx context and refresh ui.
+ *
+ * Before loading region, try to close old one.
+ *
+ * @param inputUI input ui
+ * @param name region name to load
+ */
+ protected void loadRegion(InputUI inputUI, String name) {
+ if (log.isDebugEnabled()) {
+ log.debug("Load region " + name);
+ }
+
+ FisheryRegion fisheryRegion = null;
+ RegionStorage regionStorage = null;
+ TopiaContext topiaContext = null;
+
+ // load region
+ try {
+ regionStorage = RegionStorage.getRegion(name);
+ topiaContext = regionStorage.getStorage().beginTransaction();
+ fisheryRegion = RegionStorage.getFisheryRegion(topiaContext);
+ } catch (TopiaException ex) {
+ throw new IsisFishRuntimeException("Can't load region", ex);
+ } catch (StorageException ex) {
+ throw new IsisFishRuntimeException("Can't load region", ex);
+ }
+
+ if (fisheryRegion == null) {
+ // show empty region ui
+ inputUI.getCardlayoutPrincipal().show(inputUI.getInputPanePrincipal(),"none");
+ TreeModel model = new DefaultTreeModel(null);
+ inputUI.getFisheryRegionTree().setModel(model);
+ }
+ else {
+ // init tree model loader with fishery region
+ FisheryTreeHelper treeHelper = new FisheryTreeHelper();
+ FisheryDataProvider dataProvider = new FisheryDataProvider(fisheryRegion);
+ treeHelper.setDataProvider(dataProvider);
+ TreeModel model = treeHelper.createTreeModel(fisheryRegion);
+ inputUI.getFisheryRegionTree().setModel(model);
+ inputUI.getFisheryRegionTree().setCellRenderer(new FisheryTreeRenderer(dataProvider));
+ treeHelper.setUI(inputUI.getFisheryRegionTree(), true, false, null);
+ //setContextValue(model);
+ //setTreeSelection("$root");
+
+ // global context value : fisheryRegion, regionStorage, treeHelper
+ inputUI.setContextValue(fisheryRegion);
+ inputUI.setContextValue(regionStorage);
+ inputUI.setContextValue(treeHelper);
+ inputUI.setContextValue(model);
+ inputUI.setContextValue(topiaContext);
+
+ inputUI.getCardlayoutPrincipal().show(inputUI.getInputPanePrincipal(),"normale");
+ }
+ }
+
+ /**
+ * Main ui fishery region selection changed.
+ *
+ * @param inputUI inputUI
+ * @param e event
+ */
+ public void regionChange(final InputUI inputUI, ItemEvent e) {
+ // event launched twice with itemchange listener
+ if (e.getStateChange() == ItemEvent.SELECTED) {
+ final String name = (String)inputUI.getFieldCurrentRegion().getSelectedItem();
+ if (log.isDebugEnabled()) {
+ log.debug("New region selected " + name);
+ }
+
+ // long operation, run status bar
+ setStatusMessage(inputUI, _("isisfish.message.loading.region", name), true);
+ SwingUtilities.invokeLater(new Runnable() {
+ public void run() {
+ loadRegion(inputUI, name);
+ // FIXME getVerifier().setIsisContext(getContextValue(TopiaContext.class));
+ setStatusMessage(inputUI, _("isisfish.message.load.finished"));
+ // FIXME setTreeModel();
+ }
+ });
+ }
+ }
+
+ /**
+ * Create new region (called if region name is not empty).
+ */
+ public void createNewRegion(InputUI inputUI) {
+ String name = inputUI.getFieldNewRegion().getText();
+ setStatusMessage(inputUI, _("isisfish.message.creating.region", name), true);
+
+ if (RegionStorage.getRegionNames().contains(name)) {
+ JOptionPane.showMessageDialog(inputUI, _("isisfish.error.region.already.exists"));
+ }
+ else {
+ try {
+ RegionStorage.create(name);
+ } catch (StorageException ex) {
+ throw new IsisFishRuntimeException("Can't create region", ex);
+ }
+ inputUI.getFieldNewRegion().setText("");
+ // event is fired by setSelectedItem to call #regionChange
+ inputUI.getFieldCurrentRegion().setSelectedItem(name);
+ }
+
+ setStatusMessage(inputUI, _("isisfish.message.creation.finished"));
+ }
+
+ /**
+ * Exporter la region dans un zip.
+ *
+ * @return le nom du ficher selectionné par l'utilisateur
+ */
+ public void importRegion(InputUI inputUI) {
+ setStatusMessage(inputUI, _("isisfish.message.import.zip"), true);
+
+ try {
+ File file = FileUtil.getFile(".*.zip$",
+ _("isisfish.message.import.region.zipped"));
+ if (file != null) {
+ RegionStorage.importZip(file);
+ }
+ } catch (Exception eee) {
+ throw new IsisFishRuntimeException(_("isisfish.error.region.import"), eee);
+ }
+
+ setStatusMessage(inputUI, _("isisfish.message.import.finished"));
+ }
+
+ /**
+ * Exporter la region dans un zip.
+ *
+ * @return le nom du ficher selectionné par l'utilisateur
+ */
+ public void importRegionAndRename(InputUI inputUI) {
+ setStatusMessage(inputUI, _("isisfish.message.import.zip"), true);
+
+ try {
+ File file = FileUtil.getFile(".*.zip$",
+ _("isisfish.message.import.region.zipped"));
+ if (file != null) {
+
+ String newName = JOptionPane
+ .showInputDialog(_("isisfish.message.name.imported.region"));
+ RegionStorage.importAndRenameZip(file, newName);
+ }
+ } catch (Exception eee) {
+ throw new IsisFishRuntimeException(_("isisfish.error.region.import"), eee);
+ }
+
+ setStatusMessage(inputUI, _("isisfish.message.import.finished"));
+ }
+
+ /**
+ * Importer la region depuis un fichier XML de la version 2.
+ */
+ public void importV2Region(InputUI inputUI) {
+
+ setStatusMessage(inputUI, _("isisfish.message.import.xml.v2.file"), true);
+
+ try {
+ File file = FileUtil.getFile(".*.xml$", _("isisfish.message.import.region.xml"));
+ if (file != null) {
+ new ImportFromV2(true).importXML(file);
+ }
+ } catch (Exception eee) {
+ throw new IsisFishRuntimeException(_("isisfish.error.region.import"), eee);
+ }
+
+ setStatusMessage(inputUI, _("isisfish.message.import.finished"));
+ }
+
+ /**
+ * Extract from a simulation the region, and rename it with name given
+ * by user.
+ *
+ * @return le nom de la region entré par l'utilsateur
+ */
+ public void importRegionFromSimulation(InputUI inputUI) {
+
+ setStatusMessage(inputUI, _("isisfish.message.import"), true);
+
+ // first step select a simulation and new region name
+ try {
+ //TODO Should use a shared model ?
+ List<String> simulationNames = SimulationStorage.getSimulationNames();
+ String simulationName = SimulationFilterUtil.selectSimulation(simulationNames);
+ if (simulationName != null) {
+
+ if (log.isInfoEnabled()) {
+ log.info("simulation used " + simulationName);
+ }
+
+ // ask new region name
+ String regionName = JOptionPane.showInputDialog(
+ _("isisfish.message.import.region.name"), "region from "
+ + simulationName);
+
+ if (StringUtils.isNotBlank(regionName)) {
+ if (RegionStorage.getRegionNames().contains(regionName)) {
+ JOptionPane.showMessageDialog(inputUI, _("isisfish.error.region.already.exists"));
+ }
+ else {
+ SimulationStorage.getSimulation(simulationName).extractRegion(regionName);
+ }
+ }
+ }
+
+ } catch (Exception eee) {
+ throw new IsisFishRuntimeException(_("isisfish.error.no.select.simulation"), eee);
+ }
+
+ setStatusMessage(inputUI, _("isisfish.message.export.done"));
+ }
+
+ /**
+ * Exporter la region dans un zip
+ *
+ * Call only if region is loaded.
+ *
+ * @return file were region were exported
+ */
+ public void exportRegion(InputUI inputUI) {
+ try {
+ File file = FileUtil.getFile(".*.zip$",
+ _("isisfish.message.import.region.zipped"));
+
+ if (file != null) {
+ // add .zip extension is not set
+ if (!file.getAbsolutePath().endsWith(".zip")) {
+ file = new File(file.getAbsolutePath() + ".zip");
+ }
+
+ int resp = JOptionPane.YES_OPTION;
+ if (file.exists()) {
+ resp = JOptionPane.showConfirmDialog(inputUI,
+ _("isisfish.message.file.overwrite"));
+ }
+ if (resp == JOptionPane.YES_OPTION) {
+ RegionStorage regionStorage = inputUI.getContextValue(RegionStorage.class);
+ regionStorage.createZip(file);
+ }
+ }
+ } catch (IOException eee) {
+ throw new IsisFishRuntimeException("Can't export region", eee);
+ }
+ }
+
+ /**
+ * Remove region.
+ *
+ * @param inputUI input ui
+ * @param vcsDelete if true delete region in CVS too
+ */
+ public void removeRegion(InputUI inputUI, boolean vcsDelete) {
+ try {
+ RegionStorage regionStorage = inputUI.getContextValue(RegionStorage.class);
+ int resp = JOptionPane.showConfirmDialog(inputUI,
+ _("isisfish.message.confirm.remove.region", regionStorage.getName()));
+ if (resp == JOptionPane.YES_OPTION) {
+ regionStorage.delete(vcsDelete);
+ }
+ } catch (StorageException eee) {
+ throw new IsisFishRuntimeException("Can't delete region", eee);
+ }
+ }
+
+ /**
+ * Copy la region avec un autre nom.
+ *
+ * @param inputUI input ui
+ */
+ public void copyRegion(InputUI inputUI) {
+ try {
+ String newName = JOptionPane
+ .showInputDialog(_("isisfish.message.new.region.name"));
+
+ if (StringUtils.isNotEmpty(newName)) {
+ RegionStorage regionStorage = inputUI.getContextValue(RegionStorage.class);
+ File zip = regionStorage.createZip();
+ RegionStorage.importAndRenameZip(zip, newName);
+ }
+
+ } catch (IOException eee) {
+ throw new IsisFishRuntimeException("Can't copy region", eee);
+ } catch (StorageException eee) {
+ throw new IsisFishRuntimeException("Can't copy region", eee);
+ }
+ }
+
+ /**
+ * Commit region.
+ *
+ * @param inputUI input ui
+ */
+ public void commitRegionInCVS(InputUI inputUI) {
+ try {
+ RegionStorage regionStorage = inputUI.getContextValue(RegionStorage.class);
+ setStatusMessage(inputUI, _("isisfish.message.commiting.region", regionStorage.getName()), true);
+ String msg = regionStorage.getCommentForNextCommit();
+ JTextArea text = new JTextArea(msg);
+ int resp = JOptionPane.showOptionDialog(null,
+ new JScrollPane(text), _("isisfish.commit.message"),
+ JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE,
+ null, // icon
+ null, null);
+ if (resp == JOptionPane.OK_OPTION) {
+ regionStorage.commit(text.getText());
+ regionStorage.clearCommentForNextCommit();
+ setStatusMessage(inputUI, _("isisfish.message.region.commited"));
+ } else {
+ setStatusMessage(inputUI, _("isisfish.message.commit.region.canceled"));
+ }
+ } catch (VCSException eee) {
+ throw new IsisFishRuntimeException("Can't commit region", eee);
+ } catch (IOException eee) {
+ throw new IsisFishRuntimeException("Can't commit region", eee);
+ }
+ setStatusMessage(inputUI, _("isisfish.message.export.done"));
+ }
+
+ /**
+ * Explore region and export any enabled sensitivity factor name with value.
+ *
+ * @param inputUI input ui
+ */
+ public void exportRegionSensitivityFactors(InputUI inputUI) {
+
+ try {
+ File exportFile = FileUtil.getFile(_("isisfish.input.sensitivity.export.title"),
+ _("isisfish.common.ok"), inputUI, ".*\\.xml", "XML Files");
+
+ if (exportFile != null) {
+ // make sur that filename ends with ".xml"
+ if (!exportFile.getAbsolutePath().endsWith(".xml")) {
+ exportFile = new File(exportFile.getAbsolutePath() + ".xml");
+ }
+
+ FisheryRegion fisheryRegion = inputUI.getContextValue(FisheryRegion.class);
+ setStatusMessage(inputUI, _("isisfish.input.sensitivity.export.running"), true);
+ RegionExplorer explorer = new RegionExplorer();
+ RegionExport exportXML = new RegionExportFactorXML(exportFile);
+ explorer.explore(fisheryRegion, exportXML);
+ setStatusMessage(inputUI, _("isisfish.input.sensitivity.export.complete"), true);
+ }
+ else {
+ setStatusMessage(inputUI, _("isisfish.input.sensitivity.export.cancel"), true);
+ }
+ } catch (TopiaException eee) {
+ throw new IsisFishRuntimeException("Can't export sensitivity factors", eee);
+ }
+ }
+
+ /**
+ * Changement de selection dans l'arbre de la pecherie.
+ *
+ * @param inputUI
+ * @param event
+ */
+ public void nodeSelectionChanged(InputUI inputUI, TreeSelectionEvent event) {
+
+ //TreePath oldTreePath = event.getOldLeadSelectionPath();
+ TreePath newTreePath = event.getNewLeadSelectionPath();
+
+ //FisheryRegionTreeHelper treeHelper = inputUI.getContextValue(FisheryRegionTreeHelper.class);
+ if (newTreePath != null) {
+ Object lastTreePath = newTreePath.getLastPathComponent();
+ if (lastTreePath instanceof FisheryTreeNode) {
+ FisheryTreeNode isisTreeNode = (FisheryTreeNode)lastTreePath;
+
+ Class<?> internalClass = isisTreeNode.getInternalClass();
+
+ // noeud qui n'en charge pas d'autres (= un bean)
+ TopiaEntityContextable topiaEntity = null;
+ String topiaId = isisTreeNode.getId();
+
+ try {
+ if (isisTreeNode.isStaticNode()) {
+ FisheryRegion fisheryRegion = inputUI.getContextValue(FisheryRegion.class);
+ TopiaContext topiaContext = fisheryRegion.getTopiaContext();
+ topiaEntity = (TopiaEntityContextable)topiaContext.findByTopiaId(topiaId);
+ }
+
+ InputContentUI inputContentUI = getUIInstanceForBeanClass(internalClass, inputUI);
+
+ // mandatory set
+ inputContentUI.getVerifier().reset(); // before set bean !!!
+ if (topiaEntity != null) {
+ inputContentUI.getVerifier().addCurrentEntity(topiaEntity);
+ inputContentUI.getVerifier().setInputContentUI(inputContentUI);
+ }
+
+ inputContentUI.setBean((TopiaEntityContextable)topiaEntity);
+ inputContentUI.setActive(topiaEntity != null);
+ inputContentUI.setActionButtons();
+
+ // add initialized ui to panel
+ inputUI.getCardlayoutPrincipal().show(inputUI.getInputPanePrincipal(), "normale");
+ inputUI.getInputPane().removeAll();
+ inputUI.getInputPane().add(inputContentUI, BorderLayout.CENTER);
+ inputUI.getInputPane().repaint();
+ inputUI.getInputPane().validate();
+ } catch (Exception ex) {
+ throw new IsisFishRuntimeException("Can't display bean " + topiaId, ex);
+ }
+ }
+ }
+ }
+
+ /**
+ * Get ui that can display internalClass.
+ *
+ * @param internalClass internal class to get ui
+ * @param topiaEntity topia entity to set into ui
+ * @return ui for class
+ * @throws Exception
+ */
+ protected InputContentUI<?> getUIInstanceForBeanClass(Class<?> internalClass, InputUI inputUI) throws Exception {
+
+ Class<? extends InputContentUI<?>> uiClass = null;
+ if (FisheryRegion.class.isAssignableFrom(internalClass)) {
+ uiClass = FisheryRegionUI.class;
+ }
+ else if (Cell.class.isAssignableFrom(internalClass)) {
+ uiClass = CellUI.class;
+ }
+ else if (Gear.class.isAssignableFrom(internalClass)) {
+ uiClass = GearUI.class;
+ }
+ else if (Metier.class.isAssignableFrom(internalClass)) {
+ uiClass = MetierUI.class;
+ }
+ else if (Population.class.isAssignableFrom(internalClass)) {
+ uiClass = PopulationUI.class;
+ }
+ else if (Port.class.isAssignableFrom(internalClass)) {
+ uiClass = PortUI.class;
+ }
+ else if (SetOfVessels.class.isAssignableFrom(internalClass)) {
+ uiClass = SetOfVesselsUI.class;
+ }
+ else if (Species.class.isAssignableFrom(internalClass)) {
+ uiClass = SpeciesUI.class;
+ }
+ else if (Strategy.class.isAssignableFrom(internalClass)) {
+ uiClass = StrategyUI.class;
+ }
+ else if (TripType.class.isAssignableFrom(internalClass)) {
+ uiClass = TripTypeUI.class;
+ }
+ else if (VesselType.class.isAssignableFrom(internalClass)) {
+ uiClass = VesselTypeUI.class;
+ }
+ else if (Zone.class.isAssignableFrom(internalClass)) {
+ uiClass = ZoneUI.class;
+ }
+
+ // use map to implement UI cache
+ InputContentUI<?> result = uiInstanceCache.get(uiClass);
+ if (result == null) {
+ Constructor<?> constructor = uiClass.getConstructor(JAXXContext.class);
+ result = (InputContentUI<?>)constructor.newInstance(inputUI);
+
+ // fix parent container, doesn't work:(
+ result.setContextValue(inputUI, JAXXUtil.PARENT);
+
+ uiInstanceCache.put(uiClass, result);
+ }
+
+ return result;
+ }
+
+ /**
+ * Change tree selection with new node id.
+ *
+ * Called by specific UI (CellUI to change node).
+ *
+ * @param inputUI context ui (to get context value tree helper...)
+ * @param topiaId node id to select
+ */
+ public void setTreeSelection(InputContentUI<?> inputUI, String topiaId) {
+ FisheryTreeHelper fisheryTreeHelper = inputUI.getContextValue(FisheryTreeHelper.class);
+ TreeModel fisheryTreeModel = inputUI.getContextValue(TreeModel.class);
+ FisheryTreeNode newSelectNode = fisheryTreeHelper.findNode((FisheryTreeNode)fisheryTreeModel.getRoot(), topiaId);
+ fisheryTreeHelper.selectNode(newSelectNode);
+ }
+
+ /**
+ * Delete tree node referenced by parent, and auto select parent node.
+ *
+ * @param inputUI ui containing tree
+ * @param topiaId node id to delete
+ */
+ public void deleteTreeNode(InputUI inputUI, String topiaId) {
+ FisheryTreeHelper fisheryTreeHelper = inputUI.getContextValue(FisheryTreeHelper.class);
+ TreeModel fisheryTreeModel = inputUI.getContextValue(TreeModel.class);
+ FisheryTreeNode newSelectNode = fisheryTreeHelper.findNode((FisheryTreeNode)fisheryTreeModel.getRoot(), topiaId);
+ FisheryTreeNode parentNode = newSelectNode.getParent();
+ fisheryTreeHelper.selectNode(parentNode);
+ fisheryTreeHelper.removeNode(newSelectNode);
+ }
+
+ /**
+ * Insert new tree node and select it.
+ *
+ * @param inputUI ui containing tree
+ * @param nodeClass node type to create
+ * @param topiaId node id to insert
+ */
+ public void insertTreeNode(InputUI inputUI, Class<?> nodeClass, String topiaId) {
+ FisheryTreeHelper fisheryTreeHelper = inputUI.getContextValue(FisheryTreeHelper.class);
+
+ // on par du principe que pour ne pas compliquer les ui est les lier
+ // à l'arbre, on ajoute un nouveau noeud en fils de celui selectionné
+ // (ou son parent si la creation à lieu à partir d'un noeud bean)
+ FisheryTreeNode selectedNode = fisheryTreeHelper.getSelectedNode();
+ if (selectedNode.isStaticNode()) {
+ selectedNode = selectedNode.getParent();
+ }
+
+ FisheryTreeNode newNode = new FisheryTreeNode(nodeClass, topiaId, null, null);
+ fisheryTreeHelper.insertNode(selectedNode, newNode);
+ fisheryTreeHelper.selectNode(newNode);
+ }
+
+ /**
+ * Update tree node for topiaId.
+ *
+ * @param inputUI ui containing tree
+ * @param topiaId node id to update
+ */
+ public void updateTreeNode(InputUI inputUI, String topiaId) {
+ FisheryTreeHelper fisheryTreeHelper = inputUI.getContextValue(FisheryTreeHelper.class);
+ TreeModel fisheryTreeModel = inputUI.getContextValue(TreeModel.class);
+ FisheryTreeNode newSelectNode = fisheryTreeHelper.findNode((FisheryTreeNode)fisheryTreeModel.getRoot(), topiaId);
+ fisheryTreeHelper.refreshNode(newSelectNode, false);
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputHandler.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Deleted: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeCellRenderer.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeCellRenderer.java 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeCellRenderer.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -1,75 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, CodeLutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.input;
-
-import java.awt.Component;
-import java.awt.Dimension;
-
-import javax.swing.JTree;
-
-import jaxx.runtime.JAXXContext;
-import jaxx.runtime.swing.navigation.NavigationTreeCellRenderer;
-
-/**
- * Extention du NavigationTreeCellRenderer qui regle le probleme
- * des noeuds tronqués par des ...
- *
- * @author chatellier
- * @version $Revision$
- *
- * Last update : $Date$
- * By : $Author$
- */
-public class InputNavigationTreeCellRenderer extends NavigationTreeCellRenderer {
-
- /**
- * Constructor with context.
- *
- * @param context jaxx context
- */
- public InputNavigationTreeCellRenderer(JAXXContext context) {
- super(context);
- }
-
- @Override
- public Component getTreeCellRendererComponent(JTree tree, Object value,
- boolean sel, boolean expanded, boolean leaf, int row,
- boolean hasFocus) {
-
- Component c = super.getTreeCellRendererComponent(tree, value, sel,
- expanded, leaf, row, hasFocus);
-
- // bugfix from http://forums.sun.com/thread.jspa?forumID=256&threadID=277338
- // hack from : http://forums.sun.com/thread.jspa?threadID=542069&tstart=824
-
- if (delegate.getPreferredSize().getWidth() < 300) {
- delegate.setPreferredSize(new Dimension(300, (int) delegate
- .getPreferredSize().getHeight()));
- }
-
- return c;
- }
-}
Deleted: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputNavigationTreeSelectionAdapter.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -1,262 +0,0 @@
-/*
- * #%L
- * IsisFish
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2009 - 2010 Ifremer, CodeLutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as
- * published by the Free Software Foundation, either version 2 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/gpl-2.0.html>.
- * #L%
- */
-
-package fr.ifremer.isisfish.ui.input;
-
-import static org.nuiton.i18n.I18n._;
-
-import java.awt.Component;
-
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JTree;
-import javax.swing.event.TreeSelectionEvent;
-
-import jaxx.runtime.Decorator;
-import jaxx.runtime.JAXXContextEntryDef;
-import jaxx.runtime.swing.CardLayout2;
-import jaxx.runtime.swing.JAXXTree;
-import jaxx.runtime.swing.navigation.NavigationTreeModel;
-import jaxx.runtime.swing.navigation.NavigationTreeModelBuilder;
-import jaxx.runtime.swing.navigation.NavigationTreeSelectionAdapterWithCardLayout;
-import jaxx.runtime.swing.navigation.NavigationTreeModel.NavigationTreeNode;
-import jaxx.runtime.swing.navigation.NavigationTreeModelBuilder.ChildBuilder;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.nuiton.topia.persistence.TopiaEntity;
-
-import fr.ifremer.isisfish.entities.Cell;
-import fr.ifremer.isisfish.entities.FisheryRegion;
-import fr.ifremer.isisfish.entities.Gear;
-import fr.ifremer.isisfish.entities.Metier;
-import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.Port;
-import fr.ifremer.isisfish.entities.SetOfVessels;
-import fr.ifremer.isisfish.entities.Species;
-import fr.ifremer.isisfish.entities.TripType;
-import fr.ifremer.isisfish.entities.VesselType;
-import fr.ifremer.isisfish.entities.Zone;
-
-/**
- * InputNavigationTreeSelectionAdapter.
- *
- * @author letellier
- * @version $Revision: 1312 $
- *
- * Last update: $Date: 2008-08-28 10:21:07 +0200 (jeu, 28 aoû 2008) $
- * by : $Author: sletellier $
- */
-public class InputNavigationTreeSelectionAdapter extends NavigationTreeSelectionAdapterWithCardLayout {
-
- /** Class logger. */
- private static final Log log = LogFactory.getLog(InputNavigationTreeSelectionAdapter.class);
-
- protected NavigationTreeNode currentNode = null;
- protected InputContentUI currentUI = null;
-
- public InputNavigationTreeSelectionAdapter(InputUI context) {
- super(InputUI.class, null, context, Strategy.PER_UI_TYPE);
-
- if (context.getNavigation() == null) {
- throw new IllegalArgumentException("could not have a null 'navigation' in ui " + context);
- }
-
- // register in tree this listener
- context.getNavigation().addTreeSelectionListener(this);
- }
-
- @Override
- protected JPanel getContentContainer() {
- return ((InputUI) context).getInputPane();
- }
-
- @Override
- protected CardLayout2 getContentLayout() {
- return ((InputUI) context).getCardlayout();
- }
-
- @Override
- protected NavigationTreeModel getNavigationTreeModel() {
- return (NavigationTreeModel) ((InputUI) context).getNavigation().getModel();
- }
-
- @Override
- protected void goBackToPreviousNode(TreeSelectionEvent event, Exception e) {
- if (e != null) {
- if (log.isErrorEnabled()) {
- log.error("Error happen, go back to previous node" ,e);
- }
- }
- // go back to previous node
- returnToPreviousNode(getNavigationTree(), event);
- if (log.isInfoEnabled()) {
- log.info("goBackToPreviousNode");
- }
- }
-
-
- protected JAXXTree getNavigationTree() {
- return ((InputUI) context).getNavigation();
- }
-
- @Override
- protected void openUI(Component newUI, NavigationTreeNode node) throws Exception {
- super.openUI(newUI, node);
- // apply refresh method (should a contract for all this ui with a method refresh...)
- try {
- currentUI = (InputContentUI) newUI;
- currentUI.setSensitivity(false);
- InputSaveVerifier verifier = context.getContextValue(InputSaveVerifier.class);
- verifier.removeAllPanels();
- verifier.addCurrentPanel(currentUI);
- currentUI.refresh();
- // tabbed ui hack
- currentUI.setActionButtons();
- currentNode = node;
- } catch (Exception e) {
- if (log.isErrorEnabled()) {
- log.error("Can't open ui", e);
- }
- }
- }
-
- @Override
- protected boolean closeUI(TreeSelectionEvent event, Component component) throws Exception {
- boolean exit = true;
- // by default, we says that component was succesfull closed
- InputSaveVerifier verif = context.getContextValue(InputSaveVerifier.class);
- int responce = verif.checkEdit();
- //boolean exit = checkEdit(event, component);
- if (responce == JOptionPane.OK_OPTION) {
- JTree tree = (JTree) event.getSource();
- NavigationTreeModel model = (NavigationTreeModel) tree.getModel();
- if (currentNode != null) {
- model.nodeChanged(currentNode);
- }
- }
- else if (responce == JOptionPane.CANCEL_OPTION) {
- exit = false;
- }
- if (exit) {
- verif.reset();
- }
- return exit;
- }
-
- @Override
- protected void addSelectedBeanInContext(NavigationTreeNode node, Object data) {
- if (log.isDebugEnabled()) {
- log.debug("find data for contextPath <" + node.getContextPath() + "> : " + (data == null ? null : data.getClass()));
- }
- InputSaveVerifier verif = context.getContextValue(InputSaveVerifier.class);
- verif.setRootPanel((InputUI)context);
- verif.removeAllEntity();
- if (TopiaEntity.class.isInstance(data)){
- verif.addCurrentEntity((TopiaEntity) data);
- }
- verif.setCurrentNode(node);
- }
-
- public static NavigationTreeModel getTreeModel(String regionName, FisheryRegion fisheryRegion) {
-
- NavigationTreeModelBuilder builder = new NavigationTreeModelBuilder("/");
-
- if (regionName == null) {
- return null;
- }
-
- ChildBuilder<TopiaEntity> childBuilder = new ChildBuilder<TopiaEntity>(builder) {
-
- Decorator<? extends TopiaEntity> decorator;
-
- @Override
- public void init(Class<? extends TopiaEntity> klass) {
- decorator = jaxx.runtime.PropertyDecorator.newDecorator(klass, "name");
- }
-
- @Override
- public Decorator<? extends TopiaEntity> getDecorator(TopiaEntity child) {
- return decorator;
- }
-
- @Override
- public String getJXPath(TopiaEntity child) {
- return "..[@topiaId=\"" + child.getTopiaId() + "\"]";
- }
-
- @Override
- public String getNavigationPath(TopiaEntity child) {
- return child.getTopiaId();
- }
- };
-
- try {
-
- NavigationTreeNode root = builder.build(null, regionName, JAXXContextEntryDef.newDef(FisheryRegion.class), "$root", FisheryRegionUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.cells"), "../cell", "$cells", CellUI.class, null),
- true, Cell.class, fisheryRegion.getCell(), CellUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.zones"), "../zone", "$zones", ZoneUI.class, null),
- true, Zone.class, fisheryRegion.getZone(), ZoneUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.ports"), "../port", "$ports", PortUI.class, null),
- true, Port.class, fisheryRegion.getPort(), PortUI.class, null);
-
- NavigationTreeNode species = builder.build(root, _("isisfish.input.tree.species"), "../species", "$species", SpeciesUI.class, null);
-
- for (Species specie : fisheryRegion.getSpecies()) {
- NavigationTreeNode speciesChild = builder.build(species,jaxx.runtime.PropertyDecorator.newDecorator(Species.class, "name"), "..[@topiaId=\"" + specie.getTopiaId() + "\"]", specie.getTopiaId(), SpeciesUI.class, null);
- NavigationTreeNode populations = builder.build(speciesChild, _("isisfish.input.tree.populations"), "../population", "$populations", PopulationUI.class, null);
- childBuilder.build(populations, true, Population.class, specie.getPopulation(), PopulationUI.class, null);
- }
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.gears"), "../gear", "$gears", GearUI.class, null),
- true, Gear.class, fisheryRegion.getGear(), GearUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.metiers"), "../metier", "$metiers", MetierUI.class, null),
- true, Metier.class, fisheryRegion.getMetier(), MetierUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.triptypes"), "../tripType", "$tripTypes", TripTypeUI.class, null),
- true, TripType.class, fisheryRegion.getTripType(), TripTypeUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.vesseltypes"), "../vesselType", "$vesselTypes", VesselTypeUI.class, null),
- true, VesselType.class, fisheryRegion.getVesselType(), VesselTypeUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.setofvessels"), "../setOfVessels", "$setOfVessels", SetOfVesselsUI.class, null),
- true, SetOfVessels.class, fisheryRegion.getSetOfVessels(), SetOfVesselsUI.class, null);
-
- childBuilder.build(builder.build(root, _("isisfish.input.tree.strategies"), "../strategy", "$strategies", StrategyUI.class, null),
- true, fr.ifremer.isisfish.entities.Strategy.class, fisheryRegion.getStrategy(), StrategyUI.class, null);
-
- } catch (Exception ex) {
- if (log.isErrorEnabled()) {
- log.error(ex.getMessage(), ex);
- }
- }
- return builder.getModel();
- }
-}
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputOneEquationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,12 +22,12 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='org.nuiton.topia.persistence.TopiaEntityContextable'>
<!-- Equation name (just for display purpose, not mandatory) -->
<String id='text' javaBean='null'/>
<!-- Bean containing equation -->
- <org.nuiton.topia.persistence.TopiaEntity id='bean' javaBean='null'/>
+ <org.nuiton.topia.persistence.TopiaEntityContextable id='bean' javaBean='null'/>
<!-- Bean property used to access equation -->
<String id='beanProperty' javaBean='null'/>
<!-- Used to get documentation in opened editor (not mandatory) -->
@@ -49,49 +49,49 @@
import org.apache.commons.lang.StringUtils;
import org.nuiton.topia.TopiaContext;
import javax.swing.event.DocumentListener;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
protected DocumentListener listener = null;
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- formuleComboBox.setModel(new DefaultComboBoxModel());
- try {
- editor.open(org.nuiton.util.FileUtil.getTempFile("", ".java"));
- } catch (IOException e) {
- if (log.isErrorEnabled()) {
- log.error("Error on property change", e);
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ formuleComboBox.setModel(new DefaultComboBoxModel());
+ try {
+ File nullFile = org.nuiton.util.FileUtil.getTempFile("", ".java");
+ editor.open(nullFile);
+ editor.setEnabled(false); // editor is replaced at each launch
+ } catch (IOException e) {
+ if (log.isErrorEnabled()) {
+ log.error("Error on property change", e);
+ }
}
}
+ if (evt.getNewValue() != null) {
+ // chatellier 20090526 : force refresh in bean change ?
+ refresh();
+ }
}
- if (evt.getNewValue() != null) {
- // chatellier 20090526 : force refresh in bean change ?
- refresh();
- }
- }
-});
-start();
-protected void start() {
- if (listener == null) {
+ });
+
+ if (listener == null) {
listener = new DocumentListener() {
-
@Override
public void insertUpdate(DocumentEvent e) {
setEquation();
}
-
@Override
public void removeUpdate(DocumentEvent e) {
setEquation();
}
-
@Override
public void changedUpdate(DocumentEvent e) {
}
};
}
setComboModel();
- editor.getCurrentEditor().addDocumentListener(listener);
}
/**
@@ -155,6 +155,7 @@
try {
File equationContentFile = org.nuiton.util.FileUtil.getTempFile("", ".java");
editor.open(equationContentFile);
+ editor.setEnabled(isActive());
} catch (IOException ex) {
if (log.isErrorEnabled()) {
log.error("Can't refresh editor", ex);
@@ -177,7 +178,7 @@
protected void setComboModel() {
if (getBean() != null){
- TopiaContext isisContext = getBean().getTopiaContext();
+ TopiaContext isisContext = ((org.nuiton.topia.persistence.TopiaEntityAbstract)getBean()).getTopiaContext();
java.util.List<Formule> formules = null;
if (formuleCategory != null) {
formules = getAction().getFormules(isisContext, formuleCategory);
@@ -200,10 +201,10 @@
protected void openEditor() {
Formule e = (Formule)formuleComboBox.getSelectedItem();
if (e != null) {
- getContextValue(InputAction.class).openEditor(e.getCategory(), e.getName(), clazz, e.getContent(), editor);
+ getContextValue(InputAction.class).openEditor(this, e.getCategory(), e.getName(), clazz, e.getContent(), editor);
}
else {
- getContextValue(InputAction.class).openEditor(formuleCategory, "new", clazz, editor.getText(), editor);
+ getContextValue(InputAction.class).openEditor(this, formuleCategory, "new", clazz, editor.getText(), editor);
}
}
protected void setEditorText() {
@@ -212,7 +213,8 @@
}
else {
try {
- editor.open(org.nuiton.util.FileUtil.getTempFile("", ".java"));
+ File nullFile = org.nuiton.util.FileUtil.getTempFile("", ".java");
+ editor.open(nullFile);
} catch (IOException e) {
if (log.isErrorEnabled()) {
log.error("Open editor", e);
@@ -231,39 +233,41 @@
}
]]>
</script>
- <Table>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text='{getText()}' enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="formuleComboBox" onActionPerformed='formuleChanged()' enabled='{isActif()}'
- renderer="{new fr.ifremer.isisfish.ui.input.formule.FormuleComboRenderer()}" />
- </cell>
- </row>
- <row>
- <cell fill='both' weighty='1.0'>
- <Table>
- <row>
- <cell fill='horizontal'>
- <JButton text="isisfish.common.saveModel" onActionPerformed='saveModel()' enabled='{isActif() && formuleCategory != null}'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal'>
- <JButton text="isisfish.common.openEditor" onActionPerformed='openEditor()' enabled='{isActif() && clazz != null && formuleCategory != null}'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weighty='1.0'>
- <JPanel/>
- </cell>
- </row>
- </Table>
- </cell>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <org.nuiton.widget.editor.Editor id='editor' askIfNotSaved="false" enabled='{isActif()}'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text='{getText()}' enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JComboBox id="formuleComboBox" onActionPerformed='formuleChanged()' enabled='{isActive()}'
+ renderer="{new fr.ifremer.isisfish.ui.input.formule.FormuleComboRenderer()}" />
+ </cell>
+ </row>
+ <row>
+ <cell fill='both' weighty='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal'>
+ <JButton text="isisfish.common.saveModel" onActionPerformed='saveModel()' enabled='{isActive() && formuleCategory != null}'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal'>
+ <JButton text="isisfish.common.openEditor" onActionPerformed='openEditor()' enabled='{isActive() && clazz != null && formuleCategory != null}'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weighty='1.0'>
+ <JPanel/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <org.nuiton.widget.editor.Editor id='editor' askIfNotSaved="false" enabled='{isActive()}'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputSaveVerifier.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -39,8 +39,8 @@
import java.util.HashSet;
import java.util.List;
import java.util.Map;
-import java.util.Set;
import java.util.Map.Entry;
+import java.util.Set;
import javax.swing.JButton;
import javax.swing.JLabel;
@@ -48,7 +48,7 @@
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
-import jaxx.runtime.swing.navigation.NavigationTreeModel.NavigationTreeNode;
+import jaxx.runtime.JAXXUtil;
import org.apache.commons.beanutils.MethodUtils;
import org.apache.commons.lang.ClassUtils;
@@ -58,9 +58,14 @@
import org.nuiton.topia.TopiaException;
import org.nuiton.topia.persistence.TopiaDAO;
import org.nuiton.topia.persistence.TopiaEntity;
+import org.nuiton.topia.persistence.TopiaEntityAbstract;
+import org.nuiton.topia.persistence.TopiaEntityContextable;
import fr.ifremer.isisfish.IsisFishDAOHelper;
+import fr.ifremer.isisfish.IsisFishRuntimeException;
+import fr.ifremer.isisfish.ui.NavigationUI;
import fr.ifremer.isisfish.ui.SaveVerifier;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
import fr.ifremer.isisfish.ui.sensitivity.SensitivityTabUI;
import fr.ifremer.isisfish.ui.util.ErrorHelper;
@@ -87,6 +92,7 @@
/** Cancel button. */
protected JButton currentCancelButton = null;
+ /** Save listener. */
protected ActionListener saveListener = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@@ -94,6 +100,7 @@
}
};
+ /** Cancel listener. */
protected ActionListener cancelListener = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@@ -101,6 +108,7 @@
}
};
+ /** New listener. */
protected ActionListener newListener = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@@ -108,6 +116,7 @@
}
};
+ /** Delete listener. */
protected ActionListener deleteListener = new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
@@ -116,25 +125,47 @@
};
/** Entity type for new creation. */
- protected String type = null;
+ protected Class<?> type;
- protected boolean editable = false;
+ /** Current entity modification state (modifier by PCL). */
protected boolean changed = false;
- protected NavigationTreeNode currentNode = null;
- protected String currentOnglet = null;
+ /** Editable is true when entity can be modified (in sensitity, cannot). */
+ protected boolean editable = false;
- protected TopiaContext isisContext = null;
-
- /**
- * Map entity key to {@link TopiaEntity}.
- */
- protected HashMap<String, TopiaEntity> currentEntities = new HashMap<String, TopiaEntity>();
- protected HashSet<InputContentUI> currentPanels = new HashSet<InputContentUI>();
+ protected InputContentUI<?> inputContentUI;
- protected InputUI rootUI;
- protected SensitivityTabUI sensUI;
+ //protected FisheryTreeNode currentNode = null;
+ //protected String currentOnglet = null;
+ //protected TopiaContext isisContext = null;
+
+ /** Map entity key to {@link TopiaEntity}. */
+ protected HashMap<String, TopiaEntityContextable> currentEntities = new HashMap<String, TopiaEntityContextable>();
+ /** Les panels a rafraichir. */
+ protected HashSet<InputContentUI<?>> currentPanels = new HashSet<InputContentUI<?>>();
+
+ //protected InputUI rootUI;
+ //protected SensitivityTabUI sensUI;
+
+ public InputContentUI<?> getInputContentUI() {
+ return inputContentUI;
+ }
+
+ public void setInputContentUI(InputContentUI<?> inputContentUI) {
+ this.inputContentUI = inputContentUI;
+ }
+
+ /**
+ * Tell verifier to check for unsaved modification.
+ *
+ * Then return user choice ({@link javax.swing.JOptionPane} type).
+ *
+ * @return user JOptionPane response
+ * @see javax.swing.JOptionPane#YES_OPTION
+ * @see javax.swing.JOptionPane#NO_OPTION
+ * @see javax.swing.JOptionPane#CANCEL_OPTION
+ */
@Override
public int checkEdit() {
int response = JOptionPane.NO_OPTION;
@@ -142,7 +173,9 @@
if (changed) {
// ask user to close edition
// still in edit mode, must warn user
- response = askUser(_("isisfish.message.page.modified"));
+ response = JOptionPane.showConfirmDialog(null, _("isisfish.message.page.modified"),
+ _("isisfish.input.menu.commit"), JOptionPane.YES_NO_CANCEL_OPTION,
+ JOptionPane.WARNING_MESSAGE);
if (response == JOptionPane.NO_OPTION) {
topiaCancel();
} else if (response == JOptionPane.YES_OPTION) {
@@ -153,19 +186,7 @@
return response;
}
- /**
- * Ask user option to save non saved datas.
- *
- * @param message message to display
- * @return user option
- */
- protected int askUser(String message) {
- int response = JOptionPane.showConfirmDialog(rootUI, message,
- _("isisfish.input.menu.commit"),
- JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE);
- return response;
- }
-
+ /** Called by entity property change listener on data change. */
protected void topiaChanged() {
changed = true;
setPanelsActifs();
@@ -175,6 +196,10 @@
setEnabled(currentDeleteButton, false);
}
+ /**
+ * Called by this class when entity modification state has been reset.
+ * (cancel, save...)
+ */
protected void noModif() {
changed = false;
setPanelsActifs();
@@ -204,18 +229,13 @@
* package >.*"
*/
protected void topiaRemove() {
- if (log.isTraceEnabled()) {
- log.trace("remove called");
- }
String msg = "";
try {
boolean doDelete;
- TopiaEntity topiaEntity = (TopiaEntity) currentNode
- .getJAXXContextValue(rootUI);
+ TopiaEntityContextable topiaEntity = inputContentUI.getBean();
List<TopiaEntity> allWillBeRemoved = topiaEntity.getComposite();
if (allWillBeRemoved.size() > 0) {
- String label = _("isisfish.message.delete.object", topiaEntity
- .toString());
+ String label = _("isisfish.message.delete.object", topiaEntity.toString());
String text = "";
for (TopiaEntity e : allWillBeRemoved) {
text += ClassUtils.getShortClassName(e.getClass()) + " - "
@@ -226,8 +246,7 @@
JOptionPane.YES_NO_OPTION);
doDelete = resp == JOptionPane.YES_OPTION;
} else {
- String text = _("isisfish.message.confirm.delete.object",
- topiaEntity.toString());
+ String text = _("isisfish.message.confirm.delete.object", topiaEntity.toString());
int resp = JOptionPane.showConfirmDialog(null, text,
_("isisfish.message.delete.entity"),
JOptionPane.YES_NO_OPTION);
@@ -236,50 +255,24 @@
if (doDelete) {
topiaEntity.delete();
- isisContext.commitTransaction();
+ topiaEntity.getTopiaContext().commitTransaction();
+
+ noModif();
+ InputUI inputUI = inputContentUI.getParentContainer(InputUI.class);
+ inputUI.getHandler().deleteTreeNode(inputUI, topiaEntity.getTopiaId());
+
msg = _("isisfish.message.remove.finished");
} else {
msg = _("isisfish.message.remove.canceled");
}
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't remove entity: "
- + currentEntities.get(0), eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.input.removeentity"), eee);
+ } catch (TopiaException eee) {
+ throw new IsisFishRuntimeException("Can't remove entity: " + currentEntities.get(0), eee);
}
- rootUI.setStatusMessage(msg);
- // set noModif BEFORE path changed
- noModif();
- String path = currentNode.getParent().getContextPath();
- rootUI.setTreeModel();
- rootUI.setTreeSelection(path);
}
/**
- * Display a JOptionPane with a JTextArea as main component.
- *
- * @param parent parent
- * @param labelMessage label message
- * @param textMessage text message into area
- * @param title
- * @param option
- * @return user response
+ * Create new {@link type} entity.
*/
- protected int showTextAreaConfirmationMessage(Component parent,
- String labelMessage, String textMessage, String title, int option) {
- JLabel labelForMessage = new JLabel(labelMessage);
- JTextArea areaForMessage = new JTextArea(textMessage);
- areaForMessage.setEditable(false);
- areaForMessage.setAutoscrolls(true);
- JScrollPane spMessage = new JScrollPane(areaForMessage);
- spMessage.setPreferredSize(new Dimension(500, 100)); // don't remove popup is huge
-
- int response = JOptionPane.showConfirmDialog(parent, new Object[] {
- labelForMessage, spMessage }, title, option);
- return response;
- }
-
protected void topiaCreate() {
if (log.isDebugEnabled()) {
@@ -287,34 +280,26 @@
}
try {
- String name = type + "_new";
+ String typeSimpleName = type.getSimpleName();
+ String name = typeSimpleName + "_new";
- Method method = MethodUtils.getAccessibleMethod(
- IsisFishDAOHelper.class, "get" + type + "DAO",
- TopiaContext.class);
- TopiaDAO<TopiaEntity> dao = (TopiaDAO<TopiaEntity>) method.invoke(
- null, isisContext);
+ // use introspection to call IsisFishDAOHelper.getXXXDAO()
+ TopiaContext topiaContext = inputContentUI.getTopiaContext();
+ Method method = MethodUtils.getAccessibleMethod(IsisFishDAOHelper.class,
+ "get" + typeSimpleName + "DAO", TopiaContext.class);
+ TopiaDAO<TopiaEntity> dao = (TopiaDAO<TopiaEntity>) method.invoke(null, topiaContext);
- TopiaEntity entity = dao.create("name", name);
- entity.update();
- isisContext.commitTransaction();
+ // create new entity
+ TopiaEntityContextable topiaEntity = (TopiaEntityContextable)dao.create("name", name);
+ // entity.update(); FIXME mandatory ???
+ topiaContext.commitTransaction();
- String path = currentNode.getParent().getContextPath() + "/"
- + entity.getTopiaId();
- if (!editable) {
- path = currentNode.getContextPath() + "/" + entity.getTopiaId();
- }
+ InputUI inputUI = inputContentUI.getContextValue(InputUI.class, JAXXUtil.PARENT);
+ inputUI.getHandler().insertTreeNode(inputUI, type, topiaEntity.getTopiaId());
- rootUI.setTreeModel();
- rootUI.setTreeSelection(path);
-
- rootUI.setStatusMessage(_("isisfish.message.creation.finished"));
-
+ //rootUI.setStatusMessage(_("isisfish.message.creation.finished"));
} catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't create entity", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.input.createentity"), eee);
+ throw new IsisFishRuntimeException(_("isisfish.error.input.createentity"), eee);
}
}
@@ -325,32 +310,32 @@
* Commit opened topia context.
*/
protected void topiaSave() {
+ TopiaEntityContextable topiaEntity = (TopiaEntityContextable)inputContentUI.getBean();
+ TopiaContext topiaContext = inputContentUI.getTopiaContext();
try {
- noModif();
- for (TopiaEntity t : currentEntities.values()) {
- t.update();
+ for (TopiaEntityContextable entity : currentEntities.values()) {
+ entity.update();
if (log.isDebugEnabled()) {
- log.debug("updating : " + t);
+ log.debug("Updating verifier entity : " + entity);
}
}
- isisContext.commitTransaction();
- rootUI.repaintNode(currentNode.getContextPath());
- rootUI.setStatusMessage(_("isisfish.message.save.finished"));
- } catch (TopiaException eee) {
+ topiaContext.commitTransaction();
+
+ InputUI inputUI = inputContentUI.getParentContainer(InputUI.class);
+ inputUI.getHandler().updateTreeNode(inputUI, topiaEntity.getTopiaId());
+
+ noModif();
+ //rootUI.setStatusMessage(_("isisfish.message.save.finished"));
+ } catch (TopiaException eee) {
// EC-20100401 : ajouté pour avoir un context
// correct apres un erreur, sinon, on ne peut plus rien faire
// rien sauver d'autre...
try {
- isisContext.rollbackTransaction();
- if (log.isErrorEnabled()) {
- log.error("Can't save entity", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.input.saveentity"), eee);
+ topiaContext.rollbackTransaction();
+ throw new IsisFishRuntimeException(_("isisfish.error.input.saveentity"), eee);
} catch (TopiaException eee2) {
- if (log.isErrorEnabled()) {
- log.error("Can't save or rollback entity", eee2);
- }
+ throw new IsisFishRuntimeException(_("isisfish.error.input.saveentity"), eee2);
}
}
}
@@ -359,14 +344,16 @@
* Cancel all modification on entity (rollback), and force reload it.
*/
protected void topiaCancel() {
+ TopiaContext topiaContext = inputContentUI.getTopiaContext();
+ TopiaEntityContextable topiaEntity = (TopiaEntityContextable)inputContentUI.getBean();
try {
+ topiaContext.rollbackTransaction();
noModif();
- isisContext.rollbackTransaction();
- Map<String, TopiaEntity> canceledEntity = (Map<String, TopiaEntity>)currentEntities.clone();
-
+ Map<String, TopiaEntityContextable> canceledEntity = (Map<String, TopiaEntityContextable>)currentEntities.clone();
+
currentEntities.clear();
- for (Entry<String, TopiaEntity> currentEntity : canceledEntity.entrySet()) {
- TopiaEntity t = isisContext.findByTopiaId(currentEntity.getValue().getTopiaId());
+ for (Entry<String, TopiaEntityContextable> currentEntity : canceledEntity.entrySet()) {
+ TopiaEntityContextable t = (TopiaEntityContextable)topiaContext.findByTopiaId(currentEntity.getValue().getTopiaId());
// TODO a quoi ca sert de recharger les entités ?
// desynchronise la précédente
@@ -375,28 +362,53 @@
//((TopiaContextImpl)isisContext).getHibernate().evict(t2);
//t.setTopiaId(null);
- rootUI.repaintNode(currentNode.getContextPath());
- rootUI.setTreeSelection(currentNode.getContextPath());
-
String key = currentEntity.getKey();
addCurrentEntity(t, key);
}
- // refresh all registred panel
+ InputUI inputUI = inputContentUI.getParentContainer(InputUI.class);
+ inputUI.getHandler().updateTreeNode(inputUI, topiaEntity.getTopiaId());
+
+ // refresh all registered panel
// to discard modification in UI
- refreshAll();
- rootUI.setStatusMessage(_("isisfish.message.cancel.finished"));
- } catch (Exception eee) {
- if (log.isErrorEnabled()) {
- log.error("Can't cancel modification in region", eee);
- }
- ErrorHelper.showErrorDialog(_("isisfish.error.input.cancelentity"), eee);
+ //refreshAll();
+ topiaEntity = (TopiaEntityContextable)topiaContext.findByTopiaId(topiaEntity.getTopiaId());
+ InputContentUI inputContentUI2 = inputContentUI;
+ inputContentUI2.setBean(null);
+ inputContentUI2.setBean(topiaEntity);
+ //rootUI.setStatusMessage(_("isisfish.message.cancel.finished"));
+ } catch (TopiaException eee) {
+ throw new IsisFishRuntimeException(_("isisfish.error.input.cancelentity"), eee);
}
}
+ /**
+ * Display a JOptionPane with a JTextArea as main component.
+ *
+ * @param parent parent
+ * @param labelMessage label message
+ * @param textMessage text message into area
+ * @param title
+ * @param option
+ * @return user response
+ */
+ protected int showTextAreaConfirmationMessage(Component parent,
+ String labelMessage, String textMessage, String title, int option) {
+ JLabel labelForMessage = new JLabel(labelMessage);
+ JTextArea areaForMessage = new JTextArea(textMessage);
+ areaForMessage.setEditable(false);
+ areaForMessage.setAutoscrolls(true);
+ JScrollPane spMessage = new JScrollPane(areaForMessage);
+ spMessage.setPreferredSize(new Dimension(500, 100)); // don't remove popup is huge
+
+ int response = JOptionPane.showConfirmDialog(parent, new Object[] {
+ labelForMessage, spMessage }, title, option);
+ return response;
+ }
+
protected void setPanelsActifs() {
for (InputContentUI panel : currentPanels) {
- panel.setActif(editable);
+ panel.setActive(editable);
}
}
@@ -416,7 +428,7 @@
}
panel.refresh();
// do not call refresh action buttons here
- panel.setActif(editable);
+ panel.setActive(editable);
}
}
@@ -431,12 +443,11 @@
* Remove all entity with key
*
* @param currentEntity entity to check
- * @param key specific key (defaut to topiaId)
+ * @param key specific key (defauft to topiaId)
*/
- public void addCurrentEntity(TopiaEntity currentEntity, String key) {
+ public void addCurrentEntity(TopiaEntityContextable currentEntity, String key) {
if (currentEntity != null) {
editable = true;
- isisContext = currentEntity.getTopiaContext();
currentEntity
.addPropertyChangeListener(new PropertyChangeListener() {
@Override
@@ -474,7 +485,7 @@
*
* @param currentEntity entity to check
*/
- public void addCurrentEntity(TopiaEntity currentEntity) {
+ public void addCurrentEntity(TopiaEntityContextable currentEntity) {
if (currentEntity != null) {
addCurrentEntity(currentEntity, currentEntity.getTopiaId());
}
@@ -487,8 +498,8 @@
this.currentDeleteButton = null;
this.currentNewButton = null;
this.currentSaveButton = null;
- this.currentOnglet = null;
- this.currentNode = null;
+ //this.currentOnglet = null;
+ //this.currentNode = null;
}
public void removeAllEntity() {
@@ -498,17 +509,17 @@
setPanelsActifs();
}
- public void addCurrentPanel(InputContentUI... panels) {
- for (InputContentUI ui : panels) {
+ public void addCurrentPanel(InputContentUI<?>... panels) {
+ for (InputContentUI<?> ui : panels) {
editable = !currentEntities.isEmpty();
this.currentPanels.add(ui);
- if (rootUI == null) {
+ /*if (rootUI == null) {
ui.setSensitivity(true);
ui.setLayer(true);
- }
+ }*/
ui.refresh();
// do not call refresh action buttons here
- ui.setActif(editable);
+ ui.setActive(editable);
}
}
@@ -524,7 +535,7 @@
setSaveButton(saveButton, true);
}
- public void setSaveButton(JButton saveButton, Boolean listener) {
+ public void setSaveButton(JButton saveButton, boolean listener) {
if (listener) {
// TODO what is it for (remove/readd) ?
saveButton.removeActionListener(saveListener);
@@ -535,11 +546,11 @@
this.currentSaveButton = saveButton;
}
- public void setNewButton(JButton saveButton, String name) {
- setNewButton(saveButton, name, true);
+ public void setNewButton(JButton saveButton, Class<? extends TopiaEntityContextable> type) {
+ setNewButton(saveButton, type, true);
}
- public void setNewButton(JButton newButton, String t, Boolean listener) {
+ public void setNewButton(JButton newButton, Class<? extends TopiaEntityContextable> type, boolean listener) {
if (listener) {
// TODO what is it for (remove/readd) ?
newButton.removeActionListener(newListener);
@@ -547,7 +558,7 @@
}
newButton.setText(_("isisfish.common.new"));
newButton.setEnabled(!changed);
- this.type = t;
+ this.type = type;
this.currentNewButton = newButton;
}
@@ -573,19 +584,15 @@
this.currentDeleteButton = deleteButton;
}
- public TopiaContext getIsisContext() {
- return isisContext;
- }
-
- public Collection<TopiaEntity> getCurrentEntities() {
+ public Collection<TopiaEntityContextable> getCurrentEntities() {
return currentEntities.values();
}
- public <E extends TopiaEntity> E getEntity(Class<E> clazz, String key) {
+ public <E extends TopiaEntityContextable> E getEntity(Class<E> clazz, String key) {
return (E) currentEntities.get(key);
}
- public <E extends TopiaEntity> E getEntity(Class<E> clazz) {
+ public <E extends TopiaEntityContextable> E getEntity(Class<E> clazz) {
for (TopiaEntity te : currentEntities.values()) {
if (clazz.isInstance(te)) {
return (E) te;
@@ -594,39 +601,23 @@
return null;
}
- public String getCurrentOnglet() {
+ /*public String getCurrentOnglet() {
return currentOnglet;
- }
+ }*/
- public NavigationTreeNode getCurrentNode() {
- return currentNode;
- }
-
- public void setIsisContext(TopiaContext isisContext) {
- this.isisContext = isisContext;
- }
-
public void setEditable(boolean editable) {
this.editable = editable;
}
- public void setCurrentOnglet(String currentOnglet) {
+ /*public void setCurrentOnglet(String currentOnglet) {
this.currentOnglet = currentOnglet;
- }
+ }*/
- public void setCurrentNode(NavigationTreeNode currentNode) {
- this.currentNode = currentNode;
- }
-
- protected void setRootPanel(InputUI inputUI) {
- this.rootUI = inputUI;
- }
-
public SensitivityTabUI getSensPanel() {
- return sensUI;
+ return null; //sensUI;
}
public void setSensPanel(SensitivityTabUI sensUI) {
- this.sensUI = sensUI;
+ //this.sensUI = sensUI;
}
}
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputTabbedPaneListener.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputTabbedPaneListener.java 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputTabbedPaneListener.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -32,11 +32,10 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.nuiton.topia.persistence.TopiaEntityContextable;
/**
* Listener used to control InputUI tab panel switching.
- *
- * Ask for
*
* @author letellier
* @version $Revision: 1312 $
@@ -54,28 +53,31 @@
@Override
public void stateChanged(ChangeEvent e) {
JTabbedPane pane = (JTabbedPane) e.getSource();
+
+ // to not fire additional event during tab index management
pane.removeChangeListener(this);
+
+ // reselect previous tab (and ask user to change)
int selectedIndex = pane.getSelectedIndex();
if (cacheSelectedIndex != -1) {
pane.setSelectedIndex(cacheSelectedIndex);
}
InputContentUI ui = (InputContentUI) pane.getSelectedComponent();
- if (closeUI(ui)) {
+ if (canChangeTab(ui)) {
pane.setSelectedIndex(selectedIndex);
}
ui = (InputContentUI) pane.getSelectedComponent();
- if (log.isDebugEnabled()) {
- log.debug("Final refresh " + ui);
- }
-
+
// refresh can be broken
// especially during new region creation
// don't break refresh cycle
try {
- ui.refresh();
+ TopiaEntityContextable entity = ui.getBean();
+ ui.setBean(null);
+ ui.setBean(entity);
}
catch (Exception eee) {
- if(log.isErrorEnabled()) {
+ if (log.isErrorEnabled()) {
log.error("Error during UI refresh", eee);
}
}
@@ -102,15 +104,14 @@
* @param currentUI current displayed UI
* @return true to change tab
*/
- protected boolean closeUI(InputContentUI currentUI) {
+ protected boolean canChangeTab(InputContentUI<?> currentUI) {
// by default, we says that component was successfully closed
boolean exit = true;
- InputSaveVerifier verif = currentUI
- .getContextValue(InputSaveVerifier.class);
- int responce = verif.checkEdit();
+ InputSaveVerifier verif = currentUI.getContextValue(InputSaveVerifier.class);
+ int response = verif.checkEdit();
- if (responce == JOptionPane.CANCEL_OPTION) {
+ if (response == JOptionPane.CANCEL_OPTION) {
exit = false;
}
return exit;
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/InputUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,224 +22,31 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<JPanel layout='{new BorderLayout()}'>
+<fr.ifremer.isisfish.ui.NavigationUI>
- <javax.swing.tree.DefaultTreeSelectionModel id='navigationSelectionModel' selectionMode='{javax.swing.tree.TreeSelectionModel.SINGLE_TREE_SELECTION}'/>
+ <InputHandler id="handler" />
- <InputNavigationTreeCellRenderer id='navigationTreeCellRenderer' constructorParams='this'/>
+ <Boolean id="regionLoaded" javaBean="false" />
- <jaxx.runtime.swing.CardLayout2 id='cardlayout'/>
-
- <java.awt.CardLayout id='cardlayoutPrincipal'/>
-
- <fr.ifremer.isisfish.entities.FisheryRegionImpl id='region' javaBean='null'/>
-
- <script><![CDATA[
-import fr.ifremer.isisfish.datastore.RegionStorage;
-import fr.ifremer.isisfish.datastore.StorageChangeEvent;
-import fr.ifremer.isisfish.datastore.StorageChangeListener;
-import fr.ifremer.isisfish.entities.FisheryRegionImpl;
-import fr.ifremer.isisfish.ui.WelcomeSaveVerifier;
-import fr.ifremer.isisfish.ui.WelcomePanelUI;
-import fr.ifremer.isisfish.ui.models.common.StringListModel;
-import javax.swing.tree.DefaultTreeModel;
-import javax.swing.tree.TreePath;
-import jaxx.runtime.swing.navigation.NavigationTreeModel.NavigationTreeNode;
-import jaxx.runtime.swing.navigation.NavigationUtil;
-import jaxx.runtime.swing.navigation.NavigationTreeModel;
-import org.nuiton.topia.TopiaContext;
-
-getContextValue(WelcomeSaveVerifier.class).addSaveVerifier(getVerifier());
-
-new fr.ifremer.isisfish.ui.input.InputNavigationTreeSelectionAdapter(this);
-
-StorageChangeListener regionStorageListener;
-regionStorageListener = new StorageChangeListener() {
- @Override
- public void versionDataChanged(StorageChangeEvent e) {
- setFieldCurrentRegionModel();
- }
-};
-RegionStorage.addStorageChangeListener(regionStorageListener);
-
-protected InputAction getAction() {
- return getContextValue(InputAction.class);
-}
-protected InputSaveVerifier getVerifier() {
- return getContextValue(InputSaveVerifier.class);
-}
-protected RegionStorage getRegionStorage() {
- return getContextValue(RegionStorage.class);
-}
-protected void setFieldCurrentRegionModel() {
- StringListModel model = new StringListModel(fr.ifremer.isisfish.datastore.RegionStorage.getRegionNames());
- fieldCurrentRegion.setModel(model);
-}
-protected void regionChange(ItemEvent e) {
- // event launched twice with itemchange listener
- if (e.getStateChange() == ItemEvent.SELECTED) {
- final String name = fieldCurrentRegion.getSelectedItem().toString();
- if (log.isDebugEnabled()) {
- log.debug("Region change, selected : " + name);
- }
-
- // long operation, run status bar
- setStatusMessage(_("isisfish.message.loading.region", name), true);
- SwingUtilities.invokeLater(new Runnable() {
- public void run() {
- loadRegion(name);
- getVerifier().setIsisContext(getContextValue(TopiaContext.class));
- setStatusMessage(_("isisfish.message.load.finished"));
- setTreeModel();
- }
- });
- }
-}
-protected void loadRegion(String name) {
- if (log.isDebugEnabled()) {
- log.debug("Loadregion : " + name);
- }
- setRegion((FisheryRegionImpl)getAction().loadRegion(this, name));
- if (getRegion() == null) {
- regionNull();
- }
- else {
- setTreeModel();
- getCardlayoutPrincipal().show(inputPanePrincipal,"normale");
- }
-}
-protected void setTreeModel() {
- if (getRegion() != null) {
- String regionName = getRegion().getName();
- setContextValue(getRegion());
- NavigationTreeModel model = InputNavigationTreeSelectionAdapter.getTreeModel(regionName, getRegion());
-
- setContextValue(model);
- navigation.setModel(model);
- setTreeSelection("$root");
-
- /*TC-20090702 Fix bug #1772
- EC-20090706 no working solution found
- model.nodeChanged(model.getRoot());
- java.util.Enumeration<?> e = model.getRoot().children();
- while (e.hasMoreElements()) {
- NavigationTreeNode n = (NavigationTreeNode) e.nextElement();
- String contextPath = n.getContextPath();
- if (contextPath.equals("$root/$cells")) {
- //TC-20090702 : ce noeud est trop long a recharger
- continue;
- }
- log.debug("reload node " + contextPath);
- model.nodeChanged(n);
- java.util.Enumeration<?> e2 = n.children();
- while (e2.hasMoreElements()) {
- NavigationTreeNode n2 = (NavigationTreeNode) e2.nextElement();
- n2.getJAXXContextValue(InputUI.this);
- }
- }*/
- }
-}
-
-public void repaintNode(String path) {
- NavigationTreeModel model = getContextValue(NavigationTreeModel.class);
- NavigationTreeNode currentNode = model.findNode(path);
- model.nodeChanged(currentNode);
-}
-public void setTreeSelection(String path) {
- NavigationTreeNode node = NavigationUtil.findNode(this, null, path);
- TreePath pathToRoot = new TreePath(getContextValue(NavigationTreeModel.class).getPathToRoot(node));
- navigation.setSelectionPath(pathToRoot);
- navigation.scrollPathToVisible(pathToRoot);
-}
-protected void setStatusMessage(String s) {
- WelcomePanelUI root = getParentContainer(WelcomePanelUI.class);
- root.setStatusMessage(s);
-}
-protected void setStatusMessage(String s, boolean running) {
- WelcomePanelUI root = getParentContainer(WelcomePanelUI.class);
- root.setStatusMessage(s, running);
-}
-protected void newRegion() {
- String name = fieldNewRegion.getText();
- setStatusMessage(_("isisfish.message.creating.region", name), true);
- getContextValue(InputAction.class).newRegion(name);
- fieldCurrentRegion.setSelectedItem(name);
- JButtonNewRegion.setEnabled(false);
- fieldNewRegion.setText("");
- setStatusMessage(_("isisfish.message.creation.finished"));
-}
-protected void regionNull() {
- getCardlayoutPrincipal().show(inputPanePrincipal,"none");
- DefaultTreeModel model = new DefaultTreeModel(null);
- navigation.setModel(model);
-}
-protected void newChanged() {
- JButtonNewRegion.setEnabled(true);
-}
-protected void importRegion() {
- setStatusMessage(_("isisfish.message.import.zip"), true);
- getContextValue(InputAction.class).importRegion();
- setStatusMessage(_("isisfish.message.import.finished"));
-}
-protected void importRegionAndRename() {
- setStatusMessage(_("isisfish.message.import.zip"), true);
- getContextValue(InputAction.class).importRegionAndRename();
- setStatusMessage(_("isisfish.message.import.finished"));
-}
-protected void importV2Region() {
- setStatusMessage(_("isisfish.message.import.xml.v2.file") + getContextValue(InputAction.class).importV2Region(), true);
- setStatusMessage(_("isisfish.message.import.finished"));
-}
-protected void importRegionFromSimulation() {
- setStatusMessage(_("isisfish.message.import", getContextValue(InputAction.class).importRegionFromSimulation()), true);
- setStatusMessage(_("isisfish.message.export.done"));
-}
-protected void exportRegion() {
- setStatusMessage(_("isisfish.message.export.zip", getContextValue(InputAction.class).exportRegion(getRegionStorage())), true);
- setStatusMessage(_("isisfish.message.export.done"));
-}
-protected void copyRegion() {
- // TODO region name in not knwon before copy
- setStatusMessage(_("isisfish.message.copy.region"), true);
- getContextValue(InputAction.class).copyRegion(getRegionStorage());
- setStatusMessage(_("isisfish.message.copy.finished"));
-}
-protected void removeRegion(boolean deletecvs) {
- setStatusMessage(_("isisfish.message.removing.region", getRegionStorage().getName()), true);
- boolean deleted = getContextValue(InputAction.class).removeRegion(getRegionStorage(), deletecvs);
- if (deleted) {
- setStatusMessage(_("isisfish.message.region.removed"));
- regionNull();
- }
- else {
- setStatusMessage(_("isisfish.message.region.remove.canceled"));
- }
-}
-protected void commitRegionInCVS() {
- setStatusMessage(_("isisfish.message.commiting.region", getRegionStorage().getName()), true);
- setStatusMessage(getContextValue(InputAction.class).commitRegionInCVS(getRegionStorage()));
-}
- ]]>
- </script>
<JMenuBar id="menu" constraints='BorderLayout.NORTH'>
<JMenu text="isisfish.common.region">
- <JMenuItem text="isisfish.input.menu.importRegion" onActionPerformed="importRegion()" />
- <JMenuItem text="isisfish.input.menu.importRenameRegion" onActionPerformed="importRegionAndRename()" />
- <JMenuItem text="isisfish.input.menu.importRegionV2" onActionPerformed="importV2Region()" />
- <JMenuItem text="isisfish.input.menu.importRegionSimulation" onActionPerformed="importRegionFromSimulation()" />
- <JMenuItem text="isisfish.input.menu.exportRegion" enabled='{getRegion() != null}' onActionPerformed="exportRegion()" />
- <JMenuItem text="isisfish.input.menu.copyRegion" enabled='{getRegion() != null}' onActionPerformed="copyRegion()" />
+ <JMenuItem text="isisfish.input.menu.importRegion" onActionPerformed="getHandler().importRegion(this)" />
+ <JMenuItem text="isisfish.input.menu.importRenameRegion" onActionPerformed="getHandler().importRegionAndRename(this)" />
+ <JMenuItem text="isisfish.input.menu.importRegionV2" onActionPerformed="getHandler().importV2Region(this)" />
+ <JMenuItem text="isisfish.input.menu.importRegionSimulation" onActionPerformed="getHandler().importRegionFromSimulation(this)" />
+ <JMenuItem text="isisfish.input.menu.exportRegion" enabled='{isRegionLoaded()}' onActionPerformed="getHandler().exportRegion(this)" />
+ <JMenuItem text="isisfish.input.menu.copyRegion" enabled='{isRegionLoaded()}' onActionPerformed="getHandler().copyRegion(this)" />
<JSeparator/>
- <JMenuItem name="miRemove" text="isisfish.input.menu.removeLocaly" enabled='{getRegion() != null}' onActionPerformed="removeRegion(false)" />
+ <JMenuItem text="isisfish.input.menu.removeLocaly" enabled='{isRegionLoaded()}' onActionPerformed="getHandler().removeRegion(this, false)" />
</JMenu>
<JMenu text="isisfish.input.menu.server">
- <JMenuItem text="isisfish.input.menu.addRegion" enabled='{getRegion() != null}' onActionPerformed="commitRegionInCVS()" />
- <JMenuItem text="isisfish.input.menu.commit" enabled='{getRegion() != null}' onActionPerformed="commitRegionInCVS()" />
+ <JMenuItem text="isisfish.input.menu.addRegion" enabled='{isRegionLoaded()}' onActionPerformed="getHandler().commitRegionInCVS(this)" />
+ <JMenuItem text="isisfish.input.menu.commit" enabled='{isRegionLoaded()}' onActionPerformed="getHandler().commitRegionInCVS(this)" />
<JSeparator/>
- <JMenuItem name="miRemove" text="isisfish.input.menu.removeLocalyRemotely" enabled='{getRegion() != null}' onActionPerformed="removeRegion(true)" />
+ <JMenuItem text="isisfish.input.menu.removeLocalyRemotely" enabled='{isRegionLoaded()}' onActionPerformed="getHandler().removeRegion(this, true)" />
</JMenu>
<JMenu text="isisfish.input.menu.sensitivity">
- <JMenuItem text="isisfish.input.menu.sensitivity.export" enabled='{getRegion() != null}' onActionPerformed="getAction().exportRegionSensitivityFactors(this, getRegion())" />
+ <JMenuItem text="isisfish.input.menu.sensitivity.export" enabled='{isRegionLoaded()}' onActionPerformed="getHandler().exportRegionSensitivityFactors(this)" />
</JMenu>
</JMenuBar>
<JSplitPane oneTouchExpandable="true" dividerLocation="200" orientation="HORIZONTAL" constraints='BorderLayout.CENTER'>
@@ -247,30 +54,37 @@
<Table constraints='BorderLayout.NORTH'>
<row>
<cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldNewRegion" onKeyReleased='newChanged()'/>
+ <JTextField id="fieldNewRegion" />
</cell>
<cell fill='horizontal'>
- <JButton id="JButtonNewRegion" text="isisfish.input.newRegion" onActionPerformed='newRegion()' enabled='false'/>
+ <JButton id="buttonNewRegion" text="isisfish.input.newRegion"
+ onActionPerformed='getHandler().createNewRegion(this)' enabled='{getFieldNewRegion().getText().length() > 0}'/>
</cell>
</row>
<row>
<cell columns='2' fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldCurrentRegion" onItemStateChanged='regionChange(event)'
+ <JComboBox id="fieldCurrentRegion" onItemStateChanged='getHandler().regionChange(this, event)'
model='{new fr.ifremer.isisfish.ui.models.common.StringListModel(fr.ifremer.isisfish.datastore.RegionStorage.getRegionNames())}'/>
</cell>
</row>
</Table>
<JPanel id="treePanel" name="treePanel" layout='{new BorderLayout()}'>
<JScrollPane constraints='BorderLayout.CENTER'>
- <JTree id="navigation" selectionModel='{getNavigationSelectionModel()}' cellRenderer='{getNavigationTreeCellRenderer()}'
- rootVisible="true" selectionRow='0' model='{new DefaultTreeModel(null)}'
- rowHeight="0" />
+ <javax.swing.tree.DefaultTreeSelectionModel id='fisheryRegionTreeSelectionModel'
+ selectionMode='{javax.swing.tree.TreeSelectionModel.SINGLE_TREE_SELECTION}'/>
+ <JTree id="fisheryRegionTree" selectionModel='{fisheryRegionTreeSelectionModel}'
+ rootVisible="true" selectionRow='0' model='{new javax.swing.tree.DefaultTreeModel(null)}' rowHeight="0"
+ onValueChanged="getHandler().nodeSelectionChanged(this, event)" />
+ <!-- cellRenderer='{new fr.ifremer.isisfish.ui.input.tree.FisheryRegionTreeRenderer()}' -->
</JScrollPane>
</JPanel>
</JPanel>
+ <java.awt.CardLayout id='cardlayoutPrincipal'/>
<JPanel id='inputPanePrincipal' layout='{getCardlayoutPrincipal()}' minimumSize="{new java.awt.Dimension(0,0)}">
- <NoneUI id='noneUI' constraints='"none"'/>
- <JPanel id="inputPane" layout='{getCardlayout()}' constraints='"normale"'/>
+ <JPanel layout='{new BorderLayout()}' constraints='"none"'>
+ <JLabel id='none' horizontalAlignment="0" text="isisfish.input.selectRegion" constraints='BorderLayout.CENTER'/>
+ </JPanel>
+ <JPanel id="inputPane" layout='{new BorderLayout()}' constraints='"normale"'/>
</JPanel>
</JSplitPane>
-</JPanel>
+</fr.ifremer.isisfish.ui.NavigationUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesEditorUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesEditorUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesEditorUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,31 +22,56 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Metier'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.MetierImpl id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.MetierSeasonInfoImpl id='metierSeasonInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Metier id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.MetierSeasonInfo id='metierSeasonInfo' javaBean='null'/>
<Boolean id='metierSeasonSelected' javaBean='false'/>
<Boolean id='targetSpeciesSelected' javaBean='false'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Equation;
-import fr.ifremer.isisfish.entities.MetierImpl;
+import fr.ifremer.isisfish.entities.Metier;
import fr.ifremer.isisfish.entities.Species;
import fr.ifremer.isisfish.entities.TargetSpecies;
import fr.ifremer.isisfish.ui.input.metier.MetierSeasonInfoTargetSpeciesTableModel;
import fr.ifremer.isisfish.ui.input.metier.SpeciesComboModel;
import fr.ifremer.isisfish.ui.widget.editor.EquationTableEditor;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-tableTargetSpecies.addMouseListener(new MouseAdapter() {
- @Override
- public void mouseReleased(MouseEvent e) {
- remove.setEnabled(tableTargetSpecies.getSelectedRow() != -1);
- }
-});
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ setTargetSpeciesModel();
+ }
+ if (evt.getNewValue() != null) {
+ setTableTargetSpeciesModel();
+ }
+ }
+ });
+ addPropertyChangeListener(PROPERTY_METIER_SEASON_INFO, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getOldValue() != null || evt.getNewValue() == null) {
+
+ }
+ if (evt.getNewValue() != null) {
+ setTargetSpeciesModel();
+ remove.setEnabled(false);
+ setAddButton();
+
+ // is actif is not working for targetFactor
+ // maybe set to true by addCurrentPanel
+ targetFactor.setActive(targetSpeciesSelected);
+ }
+ }
+ });
+}
+
@Override
public void refresh() {
getVerifier().addCurrentPanel(targetFactor);
@@ -62,7 +87,7 @@
// is actif is not working for targetFactor
// maybe set to true by addCurrentPanel
- targetFactor.setActif(targetSpeciesSelected);
+ targetFactor.setActive(targetSpeciesSelected);
}
@Override
@@ -137,66 +162,69 @@
add.setEnabled(isMetierSeasonSelected() && isTargetSpeciesSelected());
}
]]></script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='0.5'>
- <Table>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metierSeasonInfoSpecies.selectSpecies"
- enabled='{isMetierSeasonSelected()}' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldTargetSpecies" onActionPerformed='targetSpeciesChanged()'
- enabled='{isMetierSeasonSelected()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <InputOneEquationUI id='targetFactor' constructorParams='this'
- actif='{isTargetSpeciesSelected()}'
- text='isisfish.metierSeasonInfoSpecies.targetFactor'
- bean='{getBean()}' formuleCategory='TargetFactor'
- clazz='{fr.ifremer.isisfish.equation.TargetSpeciesTargetFactorEquation.class}'
- decorator='boxed' _bean='{MetierImpl.class}' _method='""'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal'>
- <JPanel/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JCheckBox id="fieldPrimaryCatch" text="isisfish.metierSeasonInfoSpecies.mainSpecies"
- enabled='{isTargetSpeciesSelected()}' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='both' weightx='1.0' weighty='0.5'>
- <Table>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JButton id="add" text="isisfish.common.add" onActionPerformed='add()'
- enabled='{isMetierSeasonSelected()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <JTable id="tableTargetSpecies" rowHeight='24' enabled='{isMetierSeasonSelected()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JButton id="remove" text="isisfish.common.remove"
- onActionPerformed='remove()' enabled='false' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='0.5'>
+ <Table>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.metierSeasonInfoSpecies.selectSpecies"
+ enabled='{isMetierSeasonSelected()}' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JComboBox id="fieldTargetSpecies" onActionPerformed='targetSpeciesChanged()'
+ enabled='{isMetierSeasonSelected()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
+ <InputOneEquationUI id='targetFactor' constructorParams='this'
+ active='{isTargetSpeciesSelected()}'
+ text='isisfish.metierSeasonInfoSpecies.targetFactor'
+ bean='{getBean()}' formuleCategory='TargetFactor'
+ clazz='{fr.ifremer.isisfish.equation.TargetSpeciesTargetFactorEquation.class}'
+ decorator='boxed' _bean='{Metier.class}' _method='""'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal'>
+ <JPanel/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JCheckBox id="fieldPrimaryCatch" text="isisfish.metierSeasonInfoSpecies.mainSpecies"
+ enabled='{isTargetSpeciesSelected()}' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='0.5'>
+ <Table>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JButton id="add" text="isisfish.common.add" onActionPerformed='add()'
+ enabled='{isMetierSeasonSelected()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
+ <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
+ <JTable id="tableTargetSpecies" rowHeight='24' enabled='{isMetierSeasonSelected()}' decorator='boxed'
+ onMouseReleased="remove.setEnabled(tableTargetSpecies.getSelectedRow() != -1)"/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JButton id="remove" text="isisfish.common.remove"
+ onActionPerformed='remove()' enabled='false' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,22 +22,36 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Metier'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.MetierImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Metier id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.MetierSeasonInfoImpl id='metierSeasonInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.MetierSeasonInfo id='metierSeasonInfo' javaBean='null'/>
<Boolean id='metierSeasonInfoSelected' javaBean='false'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Metier;
-import fr.ifremer.isisfish.entities.MetierImpl;
import fr.ifremer.isisfish.entities.MetierSeasonInfo;
-import fr.ifremer.isisfish.entities.MetierSeasonInfoImpl;
import fr.ifremer.isisfish.ui.input.metier.MetierSeasonInfoComboModel;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ DefaultComboBoxModel seasonModel = new DefaultComboBoxModel();
+ fieldMetierSeasonInfo.setModel(seasonModel);
+ }
+ if (evt.getNewValue() != null) {
+ setSeasonModel();
+ }
+ }
+ });
+}
+
@Override
public void refresh() {
Metier metier = getVerifier().getEntity(Metier.class);
@@ -45,7 +59,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((MetierImpl) metier);
+ setBean(metier);
getVerifier().addCurrentPanel(metierSeasonInfoSpeciesEditor);
if (getBean() != null) {
@@ -78,44 +92,45 @@
if (log.isDebugEnabled()) {
log.debug("Metier season changed : " + selectedMSI);
}
- // FIXME really need to fix impl cast !!!
- setMetierSeasonInfo((MetierSeasonInfoImpl)selectedMSI);
+ setMetierSeasonInfo(selectedMSI);
getVerifier().addCurrentEntity(getMetierSeasonInfo());
}
metierSeasonInfoSpeciesEditor.refresh();
}
]]></script>
- <Table>
- <row>
- <cell columns="2" fill='both' weightx='1.0' weighty='0.5'>
- <Table>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metierSeasonInfoSpecies.selectSeason" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldMetierSeasonInfo" onActionPerformed='metierSeasonInfoChanged()'
- renderer="{new fr.ifremer.isisfish.ui.input.metier.MetierSeasonInfoComboRenderer()}" enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <MetierSeasonInfoSpeciesEditorUI id='metierSeasonInfoSpeciesEditor' constructorParams='this'
- bean='{getBean()}' metierSeasonInfo='{getMetierSeasonInfo()}' metierSeasonSelected='{isMetierSeasonInfoSelected()}'
- actif='{isActif()}'
- _bean='{MetierSeasonInfoImpl.class}' _method='"SpeciesTargetSpecies"'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell columns="2" fill='both' weightx='1.0' weighty='0.5'>
+ <Table>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.metierSeasonInfoSpecies.selectSeason" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JComboBox id="fieldMetierSeasonInfo" onActionPerformed='metierSeasonInfoChanged()'
+ renderer="{new fr.ifremer.isisfish.ui.input.metier.MetierSeasonInfoComboRenderer()}" enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
+ <MetierSeasonInfoSpeciesEditorUI id='metierSeasonInfoSpeciesEditor' constructorParams='this'
+ bean='{getBean()}' metierSeasonInfo='{getMetierSeasonInfo()}' metierSeasonSelected='{isMetierSeasonInfoSelected()}'
+ active='{isActive()}'
+ _bean='{MetierSeasonInfo.class}' _method='"SpeciesTargetSpecies"'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,76 +22,78 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Metier'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.MetierImpl id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.MetierSeasonInfoImpl id='metierSeasonInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Metier id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.MetierSeasonInfo id='metierSeasonInfo' javaBean='null'/>
<Boolean id='metierSeasonInfoNotNull' javaBean='false'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Metier;
- import fr.ifremer.isisfish.entities.MetierImpl;
import fr.ifremer.isisfish.entities.MetierSeasonInfo;
- import fr.ifremer.isisfish.entities.MetierSeasonInfoImpl;
import fr.ifremer.isisfish.entities.Season;
import fr.ifremer.isisfish.entities.Zone;
import fr.ifremer.isisfish.types.Month;
import fr.ifremer.isisfish.ui.input.metier.MetierSeasonInfoComboModel;
import fr.ifremer.isisfish.ui.widget.Interval;
import fr.ifremer.isisfish.ui.widget.IntervalPanel;
+ import java.beans.PropertyChangeEvent;
+ import java.beans.PropertyChangeListener;
protected Interval interval = null;
protected boolean init = false;
+
+ protected void $afterCompleteSetup() {
+ /*
+ * Don't add both in same listener.
+ * When first is set, last value from getPopulationSeasonInfo()
+ * is erased by interval.getLast() default value.
+ */
+ ip.addPropertyChangeListener("first", new PropertyChangeListener() {
+ @Override
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (getMetierSeasonInfo() != null) {
+ getMetierSeasonInfo().setFirstMonth(new Month(interval.getFirst()));
+ }
+ }
+ });
+ ip.addPropertyChangeListener("last", new PropertyChangeListener() {
+ @Override
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (getMetierSeasonInfo() != null) {
+ getMetierSeasonInfo().setLastMonth(new Month(interval.getLast()));
+ }
+ }
+ });
- /*
- * Don't add both in same listener.
- * When first is set, last value from getPopulationSeasonInfo()
- * is erased by interval.getLast() default value.
- */
- ip.addPropertyChangeListener("first", new PropertyChangeListener() {
- @Override
- public void propertyChange(PropertyChangeEvent evt) {
- if (getMetierSeasonInfo() != null) {
- getMetierSeasonInfo().setFirstMonth(new Month(interval.getFirst()));
+ save.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ getVerifier().topiaSave();
+ setMetierSeasonInfoCombo();
}
- }
- });
- ip.addPropertyChangeListener("last", new PropertyChangeListener() {
- @Override
- public void propertyChange(PropertyChangeEvent evt) {
- if (getMetierSeasonInfo() != null) {
- getMetierSeasonInfo().setLastMonth(new Month(interval.getLast()));
+ });
+
+ create.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ getContextValue(InputAction.class).createMetierSeasonInfo(getBean());
+ setMetierSeasonInfoCombo();
}
- }
- });
-
- save.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- getVerifier().topiaSave();
- setMetierSeasonInfoCombo();
- }
- });
+
+ });
- create.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- getContextValue(InputAction.class).createMetierSeasonInfo(getBean());
- setMetierSeasonInfoCombo();
- }
-
- });
+ remove.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ getContextValue(InputAction.class).removeMetierSeasonInfo(getBean(), getMetierSeasonInfo());
+ setMetierSeasonInfoCombo();
+ }
+ });
+ }
- remove.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- getContextValue(InputAction.class).removeMetierSeasonInfo(getBean(), getMetierSeasonInfo());
- setMetierSeasonInfoCombo();
- }
- });
-
@Override
public void refresh() {
@@ -99,13 +101,13 @@
log.debug("Refresh called in ui : " + this);
}
- //if (!isActif()) {
+ //if (!isActive()) {
setMetierSeasonInfoNotNull(false);
//}
Metier metier = getVerifier().getEntity(Metier.class);
// don't add setBean(null) here : useless
- setBean((MetierImpl) metier);
+ setBean(metier);
if (getBean() != null) {
// Model instanciation
@@ -128,7 +130,7 @@
public void setActionButtons() {
getVerifier().setSaveButton(save, false);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "MetierSeasonInfo", false);
+ getVerifier().setNewButton(create, MetierSeasonInfo.class, false);
getVerifier().setDeleteButton(remove, false);
}
@@ -193,7 +195,7 @@
}
protected void seasonChanged() {
init = true;
- setMetierSeasonInfo((MetierSeasonInfoImpl)metierSeasonInfoCombo.getSelectedItem());
+ setMetierSeasonInfo((MetierSeasonInfo)metierSeasonInfoCombo.getSelectedItem());
getVerifier().addCurrentEntity(getMetierSeasonInfo());
setMetierSeasonInfoNotNull(getMetierSeasonInfo() != null);
setSeason();
@@ -201,72 +203,74 @@
init = false;
}
]]></script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metierSeasonInfoZone.selectSeason" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="metierSeasonInfoCombo" onActionPerformed='seasonChanged()' enabled='{isActif()}'
- renderer="{new fr.ifremer.isisfish.ui.input.metier.MetierSeasonInfoComboRenderer()}" />
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metierSeasonInfoZone.season" enabled='{isMetierSeasonInfoNotNull()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <IntervalPanel id='ip' enabled='{isMetierSeasonInfoNotNull()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.common.zone" enabled='{isMetierSeasonInfoNotNull()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.7'>
- <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <JList id="metierZones" onValueChanged='metierZonesChanged()' enabled='{isMetierSeasonInfoNotNull()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metierSeasonInfoZone.comments" enabled='{isMetierSeasonInfoNotNull()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.3'>
- <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <!-- jaxx.runtime.SwingUtil.getStringValue for null values -->
- <JTextArea id="fieldMetierSeasonZoneComment" text='{jaxx.runtime.SwingUtil.getStringValue(getMetierSeasonInfo().getSeasonZoneComment())}' onKeyReleased='getMetierSeasonInfo().setSeasonZoneComment(fieldMetierSeasonZoneComment.getText())' enabled='{isMetierSeasonInfoNotNull()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='both' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='remove' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.metierSeasonInfoZone.selectSeason" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JComboBox id="metierSeasonInfoCombo" onActionPerformed='seasonChanged()' enabled='{isActive()}'
+ renderer="{new fr.ifremer.isisfish.ui.input.metier.MetierSeasonInfoComboRenderer()}" />
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.metierSeasonInfoZone.season" enabled='{isMetierSeasonInfoNotNull()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <IntervalPanel id='ip' enabled='{isMetierSeasonInfoNotNull()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.common.zone" enabled='{isMetierSeasonInfoNotNull()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.7'>
+ <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
+ <JAXXList id="metierZones" onValueChanged='metierZonesChanged()' enabled='{isMetierSeasonInfoNotNull()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.metierSeasonInfoZone.comments" enabled='{isMetierSeasonInfoNotNull()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.3'>
+ <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
+ <!-- jaxx.runtime.SwingUtil.getStringValue for null values -->
+ <JTextArea id="fieldMetierSeasonZoneComment" text='{jaxx.runtime.SwingUtil.getStringValue(getMetierSeasonInfo().getSeasonZoneComment())}' onKeyReleased='getMetierSeasonInfo().setSeasonZoneComment(fieldMetierSeasonZoneComment.getText())' enabled='{isMetierSeasonInfoNotNull()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='both' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='remove' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierTabUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,129 +22,135 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Metier'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.MetierImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Metier id='bean' javaBean='null'/>
<script><![CDATA[
- import fr.ifremer.isisfish.entities.Gear;
- import fr.ifremer.isisfish.entities.Metier;
- import fr.ifremer.isisfish.entities.MetierImpl;
-
- protected boolean init = false;
-
- @Override
- public void refresh() {
-
- if (log.isDebugEnabled()) {
- log.debug("Refresh called in ui : " + this);
- }
+import fr.ifremer.isisfish.entities.Gear;
+import fr.ifremer.isisfish.entities.Metier;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
- Metier metier = getVerifier().getEntity(Metier.class);
-
- // add null before, for second to be considered as a changed event
- // otherwize, setBean has no effect
- setBean(null);
- setBean((MetierImpl) metier);
-
- try {
- if (getBean() != null) {
+protected boolean init = false;
+
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+
+ }
+ if (evt.getNewValue() != null) {
init = true;
jaxx.runtime.SwingUtil.fillComboBox(fieldMetierGear, getRegion().getGear(), getBean().getGear(), true);
init = false;
}
- } catch (Exception e) {
- if (log.isErrorEnabled()) {
- log.error("Can't refresh", e);
- }
}
+ });
+}
+
+ at Override
+public void refresh() {
+
+ if (log.isDebugEnabled()) {
+ log.debug("Refresh called in ui : " + this);
}
+
+ Metier metier = getVerifier().getEntity(Metier.class);
- @Override
- public void setActionButtons() {
- getVerifier().setSaveButton(save);
- getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "Metier");
- getVerifier().setDeleteButton(remove);
+ // add null before, for second to be considered as a changed event
+ // otherwize, setBean has no effect
+ setBean(null);
+ setBean(metier);
+}
+
+ at Override
+public void setActionButtons() {
+ getVerifier().setSaveButton(save);
+ getVerifier().setCancelButton(cancel);
+ getVerifier().setNewButton(create, Metier.class);
+ getVerifier().setDeleteButton(remove);
+}
+
+protected void gearChanged() {
+ if (!init) {
+ getBean().setGear((Gear)fieldMetierGear.getSelectedItem());
}
-
- protected void gearChanged() {
- if (!init) {
- getBean().setGear((Gear)fieldMetierGear.getSelectedItem());
- }
- }
+}
]]></script>
- <Table>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metier.name" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldMetierName" text='{getBean().getName()}'
- onKeyReleased='getBean().setName(fieldMetierName.getText())'
- enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.common.gear" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldMetierGear" onActionPerformed='gearChanged()'
- enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metier.rangeValues" enabled='{isActif()}'/>
- </cell>
- <!-- jaxx.runtime.SwingUtil.getStringValue() => when null values -->
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldMetierParam" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getGearParameterValue())}'
- onKeyReleased='getBean().setGearParameterValue(fieldMetierParam.getText())' enabled='{isActif()}' decorator='boxed'
- _bean='{MetierImpl.class}' _method='"GearParameterValue"' />
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.metier.comments" enabled='{isActif()}'/>
- </cell>
- <!-- jaxx.runtime.SwingUtil.getStringValue() => when null values -->
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <JTextArea id="fieldMetierComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
- onKeyReleased='getBean().setComment(fieldMetierComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='both' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='remove' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.metier.name" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldMetierName" text='{getBean().getName()}'
+ onKeyReleased='getBean().setName(fieldMetierName.getText())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.common.gear" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JAXXComboBox id="fieldMetierGear" onActionPerformed='gearChanged()'
+ enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.metier.rangeValues" enabled='{isActive()}'/>
+ </cell>
+ <!-- jaxx.runtime.SwingUtil.getStringValue() => when null values -->
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldMetierParam" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getGearParameterValue())}'
+ onKeyReleased='getBean().setGearParameterValue(fieldMetierParam.getText())' enabled='{isActive()}' decorator='boxed'
+ _bean='{Metier.class}' _method='"GearParameterValue"' />
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.metier.comments" enabled='{isActive()}'/>
+ </cell>
+ <!-- jaxx.runtime.SwingUtil.getStringValue() => when null values -->
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
+ <JTextArea id="fieldMetierComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
+ onKeyReleased='getBean().setComment(fieldMetierComment.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='both' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='remove' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,20 +22,26 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Metier'>
+ <fr.ifremer.isisfish.entities.Metier id='bean' javaBean='null'/>
+
<script><![CDATA[
-// Constructor code
-setButtonTitle(_("isisfish.input.continueTripTypes"));
-setNextPath("$root/$tripTypes");
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
- at Override
-public void refresh() {
-
+protected void $afterCompleteSetup() {
+ setButtonTitle(_("isisfish.input.continueTripTypes"));
+ setNextPath("$root/$tripTypes");
+
// install change listener
// (depends on sensitivity c'ant be done on constructor)
installChangeListener(metierTab);
+}
+ at Override
+public void refresh() {
+
// add tab in reverse order
// metierTabUI at last, for this tab refresh at end, and save/cancel button linked to
// entity change
@@ -48,16 +54,16 @@
setCurrentTabActionButtons(metierTab);
}
]]></script>
- <JPanel layout='{new BorderLayout()}'>
+ <JPanel id="body">
<JTabbedPane id="metierTab" constraints='BorderLayout.CENTER'>
<tab title='{_("isisfish.metier.title")}'>
- <MetierTabUI id="metierTabUI" constructorParams='this'/>
+ <MetierTabUI id="metierTabUI" bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<tab title='{_("isisfish.metierSeasonInfoZone.title")}'>
- <MetierSeasonInfoZoneUI id="metierSeasonInfoUI" constructorParams='this'/>
+ <MetierSeasonInfoZoneUI id="metierSeasonInfoUI" bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<tab title='{_("isisfish.metierSeasonInfoSpecies.title")}'>
- <MetierSeasonInfoSpeciesUI id="metierSeasonSpeciesUI" constructorParams='this'/>
+ <MetierSeasonInfoSpeciesUI id="metierSeasonSpeciesUI" bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
</JTabbedPane>
</JPanel>
Deleted: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/NoneUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/NoneUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/NoneUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -1,27 +0,0 @@
-<!--
- #%L
- IsisFish
-
- $Id$
- $HeadURL$
- %%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
- %%
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as
- published by the Free Software Foundation, either version 2 of the
- License, or (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public
- License along with this program. If not, see
- <http://www.gnu.org/licenses/gpl-2.0.html>.
- #L%
- -->
-<JPanel layout='{new BorderLayout()}'>
- <JLabel id='none' horizontalAlignment="0" text="isisfish.input.selectRegion" constraints='BorderLayout.CENTER'/>
-</JPanel>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/OpenMapEvents.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/OpenMapEvents.java 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/OpenMapEvents.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -59,50 +59,8 @@
protected IsisMapBean map;
protected int selectMode = CellSelectionLayer.SINGLE_SELECTION;
-
+
/**
- * OnMouseDragged property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- protected String onMouseDragged = null;
-
- /**
- * OnMouseEntered property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- protected String onMouseEntered = null;
-
- /**
- * OnMouseExited property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- protected String onMouseExited = null;
-
- /**
- * OnMouseMoved property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- protected String onMouseMoved = null;
-
- /**
- * OnMousePressed property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- protected String onMousePressed = null;
-
- /**
- * OnMouseReleased property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- protected String onMouseReleased = null;
-
- /**
* Constructor.
*
* Register himself to {@code map} mapMouseListener.
@@ -128,138 +86,6 @@
// do nothing, it's not reel layer
}
- /**
- * Get onMouseDragged property.
- *
- * @return OnMouseDragged property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public String getOnMouseDragged() {
- return this.onMouseDragged;
- }
-
- /**
- * Set onMouseDragged property.
- *
- * @param onMouseDragged New onMouseDragged property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public void setOnMouseDragged(String onMouseDragged) {
- this.onMouseDragged = onMouseDragged;
- }
-
- /**
- * Get onMouseEntered property.
- *
- * @return OnMouseEntered property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public String getOnMouseEntered() {
- return this.onMouseEntered;
- }
-
- /**
- * Set onMouseEntered property.
- *
- * @param onMouseEntered New onMouseEntered property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public void setOnMouseEntered(String onMouseEntered) {
- this.onMouseEntered = onMouseEntered;
- }
-
- /**
- * Get onMouseExited property.
- *
- * @return OnMouseExited property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public String getOnMouseExited() {
- return this.onMouseExited;
- }
-
- /**
- * Set onMouseExited property.
- *
- * @param onMouseExited New onMouseExited property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public void setOnMouseExited(String onMouseExited) {
- this.onMouseExited = onMouseExited;
- }
-
- /**
- * Get onMouseMoved property.
- *
- * @return OnMouseMoved property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public String getOnMouseMoved() {
- return this.onMouseMoved;
- }
-
- /**
- * Set onMouseMoved property.
- *
- * @param onMouseMoved New onMouseMoved property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public void setOnMouseMoved(String onMouseMoved) {
- this.onMouseMoved = onMouseMoved;
- }
-
- /**
- * Get onMousePressed property.
- *
- * @return OnMousePressed property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public String getOnMousePressed() {
- return this.onMousePressed;
- }
-
- /**
- * Set onMousePressed property.
- *
- * @param onMousePressed New onMousePressed property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public void setOnMousePressed(String onMousePressed) {
- this.onMousePressed = onMousePressed;
- }
-
- /**
- * Get onMouseReleased property.
- *
- * @return OnMouseReleased property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public String getOnMouseReleased() {
- return this.onMouseReleased;
- }
-
- /**
- * Set onMouseReleased property.
- *
- * @param onMouseReleased New onMouseReleased property.
- *
- * @deprecated as of 3.2.0.5 unused
- */
- public void setOnMouseReleased(String onMouseReleased) {
- this.onMouseReleased = onMouseReleased;
- }
-
@Override
public String[] getMouseModeServiceList() {
return new String[] { SelectMouseMode.modeID };
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationBasicsUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,10 +22,10 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
<script><![CDATA[
@@ -34,28 +34,31 @@
import fr.ifremer.isisfish.entities.Species;
import fr.ifremer.isisfish.entities.PopulationGroup;
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import javax.swing.table.DefaultTableModel;
import org.nuiton.topia.persistence.TopiaEntity;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- // remove previous binding on getBean()
- //jaxx.runtime.SwingUtil.removeDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");fieldPopulationBasicsName.setText("");
- fieldPopulationBasicsName.setText("");
- fieldPopulationBasicsGeographicID.setText("");
- fieldPopulationBasicsNbClasses.setText("");
- fieldPopulationBasicsComment.setText("");
- fieldPopulationBasicsMatureClass.setSelectedItem(null);
- tableAgeLength.setModel(new DefaultTableModel());
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ fieldPopulationBasicsName.setText("");
+ fieldPopulationBasicsGeographicID.setText("");
+ fieldPopulationBasicsNbClasses.setText("");
+ fieldPopulationBasicsComment.setText("");
+ fieldPopulationBasicsMatureClass.setSelectedItem(null);
+ tableAgeLength.setModel(new DefaultTableModel());
+ }
+ if (evt.getNewValue() != null) {
+ if (getBean().getPopulationGroup() != null) {
+ jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationBasicsMatureClass, getBean().getPopulationGroup(), getBean().getMaturityGroup(), true);
+ }
+ setTableAgeLengthModel();
+ }
}
- if (evt.getNewValue() != null) {
- // add binding on getBean()
- //jaxx.runtime.SwingUtil.applyDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text")
- }
- }
-});
+ });
+}
@Override
public void refresh() {
@@ -64,7 +67,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((PopulationImpl) population);
+ setBean(population);
if (getBean() != null) {
if (getBean().getPopulationGroup() != null) {
@@ -79,7 +82,7 @@
public void setActionButtons() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "Population", false);
+ getVerifier().setNewButton(create, Population.class, false);
getVerifier().setDeleteButton(remove);
}
@@ -117,7 +120,7 @@
getBean().setMaturityGroup((PopulationGroup) selected);
}
}
-protected void setTableAgeLengthModel(){
+protected void setTableAgeLengthModel() {
java.util.List<PopulationGroup> popGroup = getBean().getPopulationGroup();
if (popGroup != null){
DefaultTableModel model = new DefaultTableModel(2, popGroup.size() + 1);
@@ -132,130 +135,149 @@
tableAgeLength.setModel(model);
}
}
-protected void create(){
- Species species = getAction().getSpeciesByTopiaId(getVerifier().getIsisContext(), getVerifier().getCurrentNode().getParent().getNavigationPath());
+
+protected void create() {
+ Species species = null; //getAction().getSpeciesByTopiaId(getVerifier().getIsisContext(), getVerifier().getCurrentNode().getParent().getNavigationPath());
if (species == null){
- species = getAction().getSpeciesByTopiaId(getVerifier().getIsisContext(), getVerifier().getCurrentNode().getParent().getParent().getNavigationPath());
+ species = null; //getAction().getSpeciesByTopiaId(getVerifier().getIsisContext(), getVerifier().getCurrentNode().getParent().getParent().getNavigationPath());
}
- TopiaEntity topia = getContextValue(InputAction.class).createPopulation(getVerifier().getIsisContext(), species);
- getParentContainer(InputUI.class).setTreeModel();
- getParentContainer(InputUI.class).setTreeSelection("$root/$species/"+ species.getTopiaId() +"/$populations/"+topia.getTopiaId());
+ TopiaEntity topia = getContextValue(InputAction.class).createPopulation(getTopiaContext(), species);
+ // FIXME echatellier 20110306 use new tree api
+ //getParentContainer(InputUI.class).setTreeModel();
+ //getParentContainer(InputUI.class).setTreeSelection("$root/$species/"+ species.getTopiaId() +"/$populations/"+topia.getTopiaId());
setInfoText(_("isisfish.message.creation.finished"));
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationBasics.name" enabled='{isActif()}'/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldPopulationBasicsName" text='{getBean().getName()}' onKeyReleased='getBean().setName(fieldPopulationBasicsName.getText())' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationBasics.geographicID" enabled='{isActif()}'/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldPopulationBasicsGeographicID" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getGeographicId())}' onKeyReleased='getBean().setGeographicId(fieldPopulationBasicsGeographicID.getText())' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationBasics.numberGroup" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldPopulationBasicsNbClasses" text='{getBean() == null ? "" : getBean().sizePopulationGroup()}' editable="false" enabled='{isActif()}' decorator='boxed'/>
- </cell>
- <cell fill='horizontal'>
- <JButton id="buttonPopulationBasicsCreateClasses" text="isisfish.populationBasics.recreateClasses" onActionPerformed='createGroups()' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationBasics.maturityGroup" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldPopulationBasicsMatureClass" onActionPerformed='matureClassChanged()' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- <cell fill='horizontal'>
- <JCheckBox id="fieldPopulationBasicsPlusGroup" text="isisfish.populationBasics.plusGroup" selected='{getBean().getPlusGroup()}' onActionPerformed='getBean().setPlusGroup(fieldPopulationBasicsPlusGroup.isSelected())' enabled='{isActif()}' decorator='boxed' _bean='{PopulationImpl.class}' _method='"PlusGroup"'/>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='both' weightx='1.0'>
- <JTable id='tableAgeLength' rowHeight='24' enabled='false' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='both' weightx='1.0' weighty='1.0'>
- <InputOneEquationUI id='growthEquation' constructorParams='this'
- text='isisfish.populationBasics.growth' actif='{isActif()}'
- bean='{getBean()}' beanProperty='growth' formuleCategory='Growth'
- clazz='{fr.ifremer.isisfish.equation.PopulationGrowth.class}'
- decorator='boxed' _bean='{PopulationImpl.class}' _method='"Growth"'/>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='both' weightx='1.0' weighty='1.0'>
- <InputOneEquationUI id='growthReverseEquation' constructorParams='this'
- text='isisfish.populationBasics.growthReverse' actif='{isActif()}'
- bean='{getBean()}' formuleCategory='GrowthReverse' beanProperty='GrowthReverse'
- clazz='{fr.ifremer.isisfish.equation.PopulationGrowthReverse.class}'
- decorator='boxed' _bean='{PopulationImpl.class}' _method='"GrowthReverse"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.population.comments" enabled='{isActif()}'/>
- </cell>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <JScrollPane>
- <JTextArea id="fieldPopulationBasicsComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}' onKeyReleased='getBean().setComment(fieldPopulationBasicsComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed' />
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed' />
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' onActionPerformed='create()' decorator='boxed' />
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='remove' decorator='boxed' />
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationBasics.name" enabled='{isActive()}'/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldPopulationBasicsName" text='{getBean().getName()}'
+ onKeyReleased='getBean().setName(fieldPopulationBasicsName.getText())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationBasics.geographicID" enabled='{isActive()}'/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldPopulationBasicsGeographicID"
+ text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getGeographicId())}'
+ onKeyReleased='getBean().setGeographicId(fieldPopulationBasicsGeographicID.getText())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationBasics.numberGroup" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldPopulationBasicsNbClasses"
+ text='{String.valueOf(getBean() == null ? "" : getBean().sizePopulationGroup())}'
+ editable="false" enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal'>
+ <JButton id="buttonPopulationBasicsCreateClasses" text="isisfish.populationBasics.recreateClasses"
+ onActionPerformed='createGroups()' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationBasics.maturityGroup" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JAXXComboBox id="fieldPopulationBasicsMatureClass" onActionPerformed='matureClassChanged()'
+ enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal'>
+ <JCheckBox id="fieldPopulationBasicsPlusGroup" text="isisfish.populationBasics.plusGroup"
+ selected='{getBean().getPlusGroup()}'
+ onActionPerformed='getBean().setPlusGroup(fieldPopulationBasicsPlusGroup.isSelected())'
+ enabled='{isActive()}' decorator='boxed' _bean='{Population.class}' _method='"PlusGroup"'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='both' weightx='1.0'>
+ <JTable id='tableAgeLength' rowHeight='24' enabled='false' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='both' weightx='1.0' weighty='1.0'>
+ <InputOneEquationUI id='growthEquation' constructorParams='this'
+ text='isisfish.populationBasics.growth' active='{isActive()}'
+ bean='{getBean()}' beanProperty='growth' formuleCategory='Growth'
+ clazz='{fr.ifremer.isisfish.equation.PopulationGrowth.class}'
+ decorator='boxed' _bean='{Population.class}' _method='"Growth"'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='both' weightx='1.0' weighty='1.0'>
+ <InputOneEquationUI id='growthReverseEquation' constructorParams='this'
+ text='isisfish.populationBasics.growthReverse' active='{isActive()}'
+ bean='{getBean()}' formuleCategory='GrowthReverse' beanProperty='GrowthReverse'
+ clazz='{fr.ifremer.isisfish.equation.PopulationGrowthReverse.class}'
+ decorator='boxed' _bean='{Population.class}' _method='"GrowthReverse"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.population.comments" enabled='{isActive()}'/>
+ </cell>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
+ <JScrollPane>
+ <JTextArea id="fieldPopulationBasicsComment"
+ text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
+ onKeyReleased='getBean().setComment(fieldPopulationBasicsComment.getText())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed' />
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed' />
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' onActionPerformed='create()' decorator='boxed' />
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='remove' decorator='boxed' />
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationCapturabilityUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,37 +22,40 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import org.nuiton.math.matrix.gui.MatrixPanelEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import org.nuiton.math.matrix.gui.MatrixPanelListener;
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ fieldPopulationCapturabilityComment.setText("");
+ fieldPopulationCapturability.setMatrix(null);
+ }
+ if (evt.getNewValue() != null) {
+ if (getBean().getCapturability() != null) {
+ fieldPopulationCapturability.setMatrix(getBean().getCapturability().copy());
+ }
+ }
+ }
+ });
+}
+
protected void populationCapturabilityMatrixChanged(MatrixPanelEvent event) {
if (getBean() != null && fieldPopulationCapturability.getMatrix() != null) {
getBean().setCapturability(fieldPopulationCapturability.getMatrix().copy());
}
}
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- // remove previous binding on getBean()
- //jaxx.runtime.SwingUtil.removeDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");fieldPopulationBasicsName.setText("");
- fieldPopulationCapturabilityComment.setText("");
- fieldPopulationCapturability.setMatrix(null);
- }
- if (evt.getNewValue() != null) {
- // add binding on getBean()
- //jaxx.runtime.SwingUtil.applyDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");
- }
- }
-});
-
@Override
public void refresh() {
Population population = getVerifier().getEntity(Population.class);
@@ -60,7 +63,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((PopulationImpl) population);
+ setBean(population);
if (getBean() != null){
if (getBean().getCapturability() != null) {
@@ -80,39 +83,44 @@
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0' anchor='east'>
- <JLabel text="isisfish.populationCapturability.selectCoefficient" enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationCapturability'
- matrix='{getBean().getCapturability() == null ? null : getBean().getCapturability().copy()}'
- enabled='{isActif()}' decorator='boxed' _bean='{PopulationImpl.class}' _method='"Capturability"'
- onMatrixChanged="populationCapturabilityMatrixChanged(event)" />
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0' anchor='east'>
- <JLabel text="isisfish.populationCapturability.comments" enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
- <JScrollPane>
- <JTextArea id="fieldPopulationCapturabilityComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getCapturabilityComment())}' onKeyReleased='getBean().setCapturabilityComment(fieldPopulationCapturabilityComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0' anchor='east'>
+ <JLabel text="isisfish.populationCapturability.selectCoefficient" enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationCapturability'
+ matrix='{getBean().getCapturability() == null ? null : getBean().getCapturability().copy()}'
+ enabled='{isActive()}' decorator='boxed' _bean='{Population.class}' _method='"Capturability"'
+ onMatrixChanged="populationCapturabilityMatrixChanged(event)" />
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0' anchor='east'>
+ <JLabel text="isisfish.populationCapturability.comments" enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
+ <JScrollPane>
+ <JTextArea id="fieldPopulationCapturabilityComment"
+ text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getCapturabilityComment())}'
+ onKeyReleased='getBean().setCapturabilityComment(fieldPopulationCapturabilityComment.getText())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationEquationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -22,16 +22,15 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Formule;
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
@Override
public void refresh() {
@@ -40,7 +39,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((PopulationImpl) population);
+ setBean(population);
getVerifier().addCurrentPanel(naturalDeathRate, meanWeight, price);
}
@@ -52,41 +51,43 @@
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell columns='2' fill='both' weightx='0.5' weighty='0.3'>
- <InputOneEquationUI id='naturalDeathRate' constructorParams='this'
- text='isisfish.populationEquation.naturalDeathRate'
- bean='{getBean()}' formuleCategory='NaturalDeathRate' beanProperty='NaturalDeathRate'
- clazz='{fr.ifremer.isisfish.equation.PopulationNaturalDeathRate.class}'
- decorator='boxed' _bean='{PopulationImpl.class}' _method='"NaturalDeathRate"'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.3'>
- <InputOneEquationUI id='meanWeight' constructorParams='this'
- text='isisfish.populationEquation.meanWeight'
- bean='{getBean()}' formuleCategory='MeanWeight' beanProperty='MeanWeight'
- clazz='{fr.ifremer.isisfish.equation.PopulationMeanWeight.class}'
- decorator='boxed' _bean='{PopulationImpl.class}' _method='"MeanWeight"'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.3'>
- <InputOneEquationUI id='price' constructorParams='this'
- text='isisfish.populationEquation.price'
- bean='{getBean()}' formuleCategory='Price' beanProperty='Price'
- clazz='{fr.ifremer.isisfish.equation.PopulationPrice.class}'
- decorator='boxed' _bean='{PopulationImpl.class}' _method='"Price"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell columns='2' fill='both' weightx='0.5' weighty='0.3'>
+ <InputOneEquationUI id='naturalDeathRate' constructorParams='this'
+ text='isisfish.populationEquation.naturalDeathRate' active="{isActive()}"
+ bean='{getBean()}' formuleCategory='NaturalDeathRate' beanProperty='NaturalDeathRate'
+ clazz='{fr.ifremer.isisfish.equation.PopulationNaturalDeathRate.class}'
+ decorator='boxed' _bean='{Population.class}' _method='"NaturalDeathRate"'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.3'>
+ <InputOneEquationUI id='meanWeight' constructorParams='this'
+ text='isisfish.populationEquation.meanWeight' active="{isActive()}"
+ bean='{getBean()}' formuleCategory='MeanWeight' beanProperty='MeanWeight'
+ clazz='{fr.ifremer.isisfish.equation.PopulationMeanWeight.class}'
+ decorator='boxed' _bean='{Population.class}' _method='"MeanWeight"'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.3'>
+ <InputOneEquationUI id='price' constructorParams='this'
+ text='isisfish.populationEquation.price' active="{isActive()}"
+ bean='{getBean()}' formuleCategory='Price' beanProperty='Price'
+ clazz='{fr.ifremer.isisfish.equation.PopulationPrice.class}'
+ decorator='boxed' _bean='{Population.class}' _method='"Price"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationGroupUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -32,11 +32,11 @@
seule, et contiennent les resulats des equations en simple
visualisation.
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.PopulationGroupImpl id='populationGroup' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.PopulationGroup id='populationGroup' javaBean='null'/>
<Boolean id='popGroupNotNull' javaBean='false'/>
@@ -46,44 +46,46 @@
import fr.ifremer.isisfish.entities.Population;
import fr.ifremer.isisfish.entities.PopulationImpl;
import org.nuiton.math.matrix.MatrixND;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-addPropertyChangeListener("populationGroup", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- // remove previous binding on getBean()
- fieldPopulationGroupMeanWeight.setText("");
- fieldPopulationGroupPrice.setText("");
- fieldPopulationGroupReproductionRate.setText("");
- fieldPopulationGroupAge.setText("");
- fieldPopulationGroupMinLength.setText("");
- fieldPopulationGroupMaxLength.setText("");
- fieldPopulationGroupComment.setText("");
- fieldPopulationGroupNaturalDeathRate.setMatrix(null);
- setPopGroupNotNull(false);
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+
+ }
+ if (evt.getNewValue() != null) {
+ if (getBean().getPopulationGroup() != null) {
+ jaxx.runtime.SwingUtil.fillComboBox(populationGroupPopulationGroupComboBox, getBean().getPopulationGroup(), getPopulationGroup(), true);
+ }
+ }
}
- if (evt.getNewValue() != null) {
- // add binding on getBean()
- }
- }
-});
+ });
-/*fieldPopulationGroupNaturalDeathRate.addMatrixListener(new MatrixPanelListener() {
- @Override
- public void matrixChanged(MatrixPanelEvent event) {
- if (getPopulationGroup() != null){
- // not sure of this code
- // fieldPopulationGroupNaturalDeathRate contains of "part of"
- // natural death rate matrix
- // can't overrite matrix ...
- // just enable save ?
- save.setEnabled(true);
+ addPropertyChangeListener(PROPERTY_POPULATION_GROUP, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ fieldPopulationGroupMeanWeight.setText("");
+ fieldPopulationGroupPrice.setText("");
+ fieldPopulationGroupReproductionRate.setText("");
+ fieldPopulationGroupAge.setText("");
+ fieldPopulationGroupMinLength.setText("");
+ fieldPopulationGroupMaxLength.setText("");
+ fieldPopulationGroupComment.setText("");
+ fieldPopulationGroupNaturalDeathRate.setMatrix(null);
+ setPopGroupNotNull(false);
+ }
+ if (evt.getNewValue() != null) {
+
+ }
}
- }
-});*/
+ });
+}
@Override
public void refresh() {
- //if (!isActif()) {
+ //if (!isActive()) {
setPopGroupNotNull(false);
//}
Population population = getVerifier().getEntity(Population.class);
@@ -91,13 +93,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((PopulationImpl) population);
-
- if (getBean() != null) {
- if (getBean().getPopulationGroup() != null) {
- jaxx.runtime.SwingUtil.fillComboBox(populationGroupPopulationGroupComboBox, getBean().getPopulationGroup(), getPopulationGroup(), true);
- }
- }
+ setBean(population);
}
@Override
@@ -147,114 +143,116 @@
}
]]>
</script>
- <Table>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.common.populationGroup" enabled='{isActif()}'/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JComboBox id='populationGroupPopulationGroupComboBox' onActionPerformed='populationGroupChanged()' enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.meanWeigth" enabled='{isPopGroupNotNull()}'/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldPopulationGroupMeanWeight" text='{getPopulationGroup().getMeanWeight()}'
- enabled='false' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.price" enabled='{isPopGroupNotNull()}'/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldPopulationGroupPrice" text='{getPopulationGroup().getPrice()}'
- enabled='false' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.naturalDeathRate" enabled='{isPopGroupNotNull()}'/>
- </cell>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id='fieldPopulationGroupNaturalDeathRate'
- enabled='false' decorator='boxed' _bean='{PopulationImpl.class}' _method='"NaturalDeathRateMatrix"' />
- <!-- this bindings totally break UI
- matrix='{getBean() == null || getPopulationGroup() == null ? null : ((AbstractMatrixND)getBean().getNaturalDeathRateMatrix()).getSubMatrixOnSemantic(0, getPopulationGroup())}' -->
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.reproductionRate" enabled='{isPopGroupNotNull()}'/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldPopulationGroupReproductionRate' constructorParams='this'
- bean='{getPopulationGroup()}' property='reproductionRate'
- useSign='true' enabled='{isPopGroupNotNull()}' decorator='boxed'
- _bean='{PopulationGroupImpl.class}' _method='"ReproductionRate"'/-->
- <JTextField id="fieldPopulationGroupReproductionRate" text='{getPopulationGroup().getReproductionRate()}'
- onKeyReleased='getPopulationGroup().setReproductionRate(Double.parseDouble(fieldPopulationGroupReproductionRate.getText()))'
- enabled='{isPopGroupNotNull()}' decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"ReproductionRate"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.age" enabled='{isPopGroupNotNull()}'/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <!-- non editable age field -->
- <JTextField id="fieldPopulationGroupAge" text='{getPopulationGroup().getAge()}'
- onKeyReleased='getPopulationGroup().setAge(Double.parseDouble(fieldPopulationGroupAge.getText()))'
- enabled='{getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}'
- decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"Age"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.length" enabled='{isPopGroupNotNull()}'/>
- </cell>
- <cell fill='both' weightx='0.5'>
- <!-- non editable min length field -->
- <JTextField id="fieldPopulationGroupMinLength" text='{getPopulationGroup().getMinLength()}'
- toolTipText="isisfish.populationGroup.minimumLength"
- onKeyReleased='getPopulationGroup().setMinLength(Double.parseDouble(fieldPopulationGroupMinLength.getText()))'
- enabled='{!getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}' decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"MinLength"'/>
- </cell>
- <cell fill='both' weightx='0.5'>
- <!-- non editable max length field -->
- <JTextField id="fieldPopulationGroupMaxLength" text='{getPopulationGroup().getMaxLength()}'
- toolTipText="isisfish.populationGroup.maximumLength"
- onKeyReleased='getPopulationGroup().setMaxLength(Double.parseDouble(fieldPopulationGroupMaxLength.getText()))'
- enabled='{!getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}' decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"MaxLength"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.populationGroup.comments" enabled='{isPopGroupNotNull()}'/>
- </cell>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
- <JScrollPane>
- <!-- jaxx.runtime.SwingUtil.getStringValue() for null values -->
- <JTextArea id="fieldPopulationGroupComment" text='{jaxx.runtime.SwingUtil.getStringValue(getPopulationGroup().getComment())}'
- onKeyReleased='getPopulationGroup().setComment(fieldPopulationGroupComment.getText())' enabled='{isPopGroupNotNull()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.common.populationGroup" enabled='{isActive()}'/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JAXXComboBox id='populationGroupPopulationGroupComboBox' onActionPerformed='populationGroupChanged()' enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.populationGroup.meanWeigth" enabled='{isPopGroupNotNull()}'/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldPopulationGroupMeanWeight" text='{String.valueOf(getPopulationGroup().getMeanWeight())}'
+ enabled='false' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.populationGroup.price" enabled='{isPopGroupNotNull()}'/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldPopulationGroupPrice" text='{String.valueOf(getPopulationGroup().getPrice())}'
+ enabled='false' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.populationGroup.naturalDeathRate" enabled='{isPopGroupNotNull()}'/>
+ </cell>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id='fieldPopulationGroupNaturalDeathRate'
+ enabled='false' decorator='boxed' _bean='{PopulationImpl.class}' _method='"NaturalDeathRateMatrix"' />
+ <!-- this bindings totally break UI
+ matrix='{getBean() == null || getPopulationGroup() == null ? null : ((AbstractMatrixND)getBean().getNaturalDeathRateMatrix()).getSubMatrixOnSemantic(0, getPopulationGroup())}' -->
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.populationGroup.reproductionRate" enabled='{isPopGroupNotNull()}'/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldPopulationGroupReproductionRate' constructorParams='this'
+ bean='{getPopulationGroup()}' property='reproductionRate'
+ useSign='true' enabled='{isPopGroupNotNull()}' decorator='boxed'
+ _bean='{PopulationGroupImpl.class}' _method='"ReproductionRate"'/-->
+ <JTextField id="fieldPopulationGroupReproductionRate" text='{String.valueOf(getPopulationGroup().getReproductionRate())}'
+ onKeyReleased='getPopulationGroup().setReproductionRate(Double.parseDouble(fieldPopulationGroupReproductionRate.getText()))'
+ enabled='{isPopGroupNotNull()}' decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"ReproductionRate"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.populationGroup.age" enabled='{isPopGroupNotNull()}'/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <!-- non editable age field -->
+ <JTextField id="fieldPopulationGroupAge" text='{String.valueOf(getPopulationGroup().getAge())}'
+ onKeyReleased='getPopulationGroup().setAge(Double.parseDouble(fieldPopulationGroupAge.getText()))'
+ enabled='{getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}'
+ decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"Age"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.populationGroup.length" enabled='{isPopGroupNotNull()}'/>
+ </cell>
+ <cell fill='both' weightx='0.5'>
+ <!-- non editable min length field -->
+ <JTextField id="fieldPopulationGroupMinLength" text='{String.valueOf(getPopulationGroup().getMinLength())}'
+ toolTipText="isisfish.populationGroup.minimumLength"
+ onKeyReleased='getPopulationGroup().setMinLength(Double.parseDouble(fieldPopulationGroupMinLength.getText()))'
+ enabled='{!getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}' decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"MinLength"'/>
+ </cell>
+ <cell fill='both' weightx='0.5'>
+ <!-- non editable max length field -->
+ <JTextField id="fieldPopulationGroupMaxLength" text='{String.valueOf(getPopulationGroup().getMaxLength())}'
+ toolTipText="isisfish.populationGroup.maximumLength"
+ onKeyReleased='getPopulationGroup().setMaxLength(Double.parseDouble(fieldPopulationGroupMaxLength.getText()))'
+ enabled='{!getPopulationGroup().getPopulation().getSpecies().getAgeGroupType()}' decorator='boxed' _bean='{PopulationGroupImpl.class}' _method='"MaxLength"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.populationGroup.comments" enabled='{isPopGroupNotNull()}'/>
+ </cell>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
+ <JScrollPane>
+ <!-- jaxx.runtime.SwingUtil.getStringValue() for null values -->
+ <JTextArea id="fieldPopulationGroupComment" text='{jaxx.runtime.SwingUtil.getStringValue(getPopulationGroup().getComment())}'
+ onKeyReleased='getPopulationGroup().setComment(fieldPopulationGroupComment.getText())' enabled='{isPopGroupNotNull()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEmigrationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -22,11 +22,11 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl id='popInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.PopulationSeasonInfo id='popInfo' javaBean='null'/>
<Boolean id='gPopSelected' javaBean='false'/>
<Boolean id='zoneDepartSelected' javaBean='false'/>
@@ -34,174 +34,170 @@
<script><![CDATA[
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import fr.ifremer.isisfish.entities.PopulationGroup;
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
-import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
import fr.ifremer.isisfish.entities.Zone;
import org.nuiton.math.matrix.MatrixND;
import org.nuiton.math.matrix.gui.MatrixPanelEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import org.nuiton.math.matrix.gui.MatrixPanelListener;
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- // remove previous binding on getBean()
- //jaxx.runtime.SwingUtil.removeDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");fieldPopulationBasicsName.setText("");
- populationMigrationEmigrationTable.setMatrix(null);
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ populationMigrationEmigrationTable.setMatrix(null);
+ }
+ if (evt.getNewValue() != null) {
+
+ }
}
- if (evt.getNewValue() != null) {
- // add binding on getBean()
- //jaxx.runtime.SwingUtil.applyDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");
- }
- }
-});
-populationMigrationEmigrationTable.getTable().addMouseListener(new MouseAdapter() {
- @Override
- public void mouseReleased(MouseEvent e) {
- remove.setEnabled(populationMigrationEmigrationTable.getTable().getSelectedRow() != -1);
- }
-});
+ });
+}
- public void init(PopulationSeasonInfo pi){
- // add null before, for second to be considered as a changed event
- // otherwize, setBean has no effect
- setPopInfo(null);
- setPopInfo((PopulationSeasonInfoImpl)pi);
- populationMigrationEmigrationTable.setMatrix(getPopInfo().getEmigrationMatrix().copy());
- }
-
- @Override
- public void refresh(){
- Population population = getVerifier().getEntity(Population.class);
+public void init(PopulationSeasonInfo pi){
+ // add null before, for second to be considered as a changed event
+ // otherwize, setBean has no effect
+ setPopInfo(null);
+ setPopInfo(pi);
+ populationMigrationEmigrationTable.setMatrix(getPopInfo().getEmigrationMatrix().copy());
+}
- // setBean(null); useless here
- setBean((PopulationImpl) population);
+ at Override
+public void refresh(){
+ Population population = getVerifier().getEntity(Population.class);
- refreshPanel();
- }
-
- @Override
- public void setActionButtons() {
+ // setBean(null); useless here
+ setBean(population);
- }
-
- public void refreshPanel() {
- setFieldPopulationMigrationMigrationGroupChooserModel();
- setFieldPopulationMigrationMigrationDepartureZoneChooserModel();
- remove.setEnabled(false);
- setAddButton();
+ refreshPanel();
+}
- /*populationMigrationEmigrationTable.addMatrixListener(new MatrixPanelListener() {
- @Override
- public void matrixChanged(MatrixPanelEvent arg0) {
- remove.setEnabled(populationMigrationEmigrationTable.getTable().getSelectedRow() != -1);
- if (popInfo != null){
- popInfo.setMigrationMatrix(populationMigrationEmigrationTable.getMatrix().clone());
- }
- }
- });*/
- }
+ at Override
+public void setActionButtons() {
- protected void populationMigrationEmigrationMatrixChanged(MatrixPanelEvent event) {
- remove.setEnabled(populationMigrationEmigrationTable.getTable().getSelectedRow() != -1);
- if (popInfo != null){
- popInfo.setMigrationMatrix(populationMigrationEmigrationTable.getMatrix().clone());
+}
+
+public void refreshPanel() {
+ setFieldPopulationMigrationMigrationGroupChooserModel();
+ setFieldPopulationMigrationMigrationDepartureZoneChooserModel();
+ remove.setEnabled(false);
+ setAddButton();
+
+ /*populationMigrationEmigrationTable.addMatrixListener(new MatrixPanelListener() {
+ @Override
+ public void matrixChanged(MatrixPanelEvent arg0) {
+ remove.setEnabled(populationMigrationEmigrationTable.getTable().getSelectedRow() != -1);
+ if (popInfo != null){
+ popInfo.setMigrationMatrix(populationMigrationEmigrationTable.getMatrix().clone());
+ }
}
+ });*/
+}
+
+protected void populationMigrationEmigrationMatrixChanged(MatrixPanelEvent event) {
+ remove.setEnabled(populationMigrationEmigrationTable.getTable().getSelectedRow() != -1);
+ if (popInfo != null){
+ popInfo.setMigrationMatrix(populationMigrationEmigrationTable.getMatrix().clone());
}
+}
- protected void setFieldPopulationMigrationMigrationGroupChooserModel(){
- if (getBean() != null && getBean().getPopulationGroup() != null){
- jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationEmigrationGroupChooser,getBean().getPopulationGroup(), null, true);
- }
+protected void setFieldPopulationMigrationMigrationGroupChooserModel(){
+ if (getBean() != null && getBean().getPopulationGroup() != null){
+ jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationEmigrationGroupChooser,getBean().getPopulationGroup(), null, true);
}
- protected void setFieldPopulationMigrationMigrationDepartureZoneChooserModel(){
- if (getBean() != null && getBean().getPopulationZone() != null){
- jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationEmigrationDepartureZoneChooser,getBean().getPopulationZone(), null, true);
- }
+}
+protected void setFieldPopulationMigrationMigrationDepartureZoneChooserModel(){
+ if (getBean() != null && getBean().getPopulationZone() != null){
+ jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationEmigrationDepartureZoneChooser,getBean().getPopulationZone(), null, true);
}
- protected void add(){
- getContextValue(InputAction.class).addEmigration(
- getPopInfo(),
- (PopulationGroup) fieldPopulationMigrationEmigrationGroupChooser.getSelectedItem(),
- (Zone) fieldPopulationMigrationEmigrationDepartureZoneChooser.getSelectedItem(),
- Double.parseDouble(fieldPopulationMigrationEmigrationCoefficient.getText()));
- populationMigrationEmigrationTable.setMatrix(getPopInfo().getEmigrationMatrix().clone());
- }
-
- protected void remove() {
- log.debug("removeEmigration called");
- try {
- int row = populationMigrationEmigrationTable.getTable().getSelectedRow();
- Object group = populationMigrationEmigrationTable.getTable().getValueAt(row, 0);
- Object departure = populationMigrationEmigrationTable.getTable().getValueAt(row, 1);
+}
+protected void add(){
+ getContextValue(InputAction.class).addEmigration(
+ getPopInfo(),
+ (PopulationGroup) fieldPopulationMigrationEmigrationGroupChooser.getSelectedItem(),
+ (Zone) fieldPopulationMigrationEmigrationDepartureZoneChooser.getSelectedItem(),
+ Double.parseDouble(fieldPopulationMigrationEmigrationCoefficient.getText()));
+ populationMigrationEmigrationTable.setMatrix(getPopInfo().getEmigrationMatrix().clone());
+}
- MatrixND mat = popInfo.getEmigrationMatrix().clone();
- mat.setValue(group, departure, 0);
- popInfo.setEmigrationMatrix(mat);
- remove.setEnabled(false);
- } catch(Exception eee) {
- log.error("Can't remove migration", eee);
- }
+protected void remove() {
+ log.debug("removeEmigration called");
+ try {
+ int row = populationMigrationEmigrationTable.getTable().getSelectedRow();
+ Object group = populationMigrationEmigrationTable.getTable().getValueAt(row, 0);
+ Object departure = populationMigrationEmigrationTable.getTable().getValueAt(row, 1);
+
+ MatrixND mat = popInfo.getEmigrationMatrix().clone();
+ mat.setValue(group, departure, 0);
+ popInfo.setEmigrationMatrix(mat);
+ remove.setEnabled(false);
+ } catch(Exception eee) {
+ log.error("Can't remove migration", eee);
}
- protected void groupChanged() {
- setGPopSelected(fieldPopulationMigrationEmigrationGroupChooser.getSelectedItem() != null);
- setAddButton();
- }
- protected void coefChanged() {
- setCoefNonVide(!fieldPopulationMigrationEmigrationCoefficient.getText().equals(""));
- setAddButton();
- }
- protected void zoneChanged() {
- setZoneDepartSelected(fieldPopulationMigrationEmigrationDepartureZoneChooser.getSelectedItem() != null);
- setAddButton();
- }
- protected void setAddButton() {
- add.setEnabled(getGPopSelected() && getZoneDepartSelected() && getCoefNonVide());
- }
- ]]>
- </script>
- <Table id='body'>
- <row>
- <cell>
- <JLabel text="isisfish.common.populationGroup" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JComboBox id="fieldPopulationMigrationEmigrationGroupChooser" enabled='{isActif()}' onActionPerformed='groupChanged()'/>
- </cell>
- <cell>
- <JLabel text="isisfish.populationMigrationEmigration.coefficient" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JTextField id="fieldPopulationMigrationEmigrationCoefficient" enabled='{isActif()}' onKeyReleased='coefChanged()'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.populationMigrationEmigration.departureZone" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JComboBox id="fieldPopulationMigrationEmigrationDepartureZoneChooser" enabled='{isActif()}' onActionPerformed='zoneChanged()'/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='0.5'>
- <JPanel/>
- </cell>
- </row>
- <row columns='4'>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id="add" text="isisfish.common.add" onActionPerformed='add()' enabled='{isActif()}'/>
- </cell>
- </row>
- <row columns='4'>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id='populationMigrationEmigrationTable'
- linearModel="true" enabled='{isActif()}'
- onMatrixChanged="populationMigrationEmigrationMatrixChanged(event)" />
- </cell>
- </row>
- <row>
- <cell columns='4' fill='horizontal' weightx='1.0'>
- <JButton id="remove" text="isisfish.common.remove" onActionPerformed='remove()' enabled='{isActif()}'/>
- </cell>
- </row>
- </Table>
+}
+protected void groupChanged() {
+ setGPopSelected(fieldPopulationMigrationEmigrationGroupChooser.getSelectedItem() != null);
+ setAddButton();
+}
+protected void coefChanged() {
+ setCoefNonVide(!fieldPopulationMigrationEmigrationCoefficient.getText().equals(""));
+ setAddButton();
+}
+protected void zoneChanged() {
+ setZoneDepartSelected(fieldPopulationMigrationEmigrationDepartureZoneChooser.getSelectedItem() != null);
+ setAddButton();
+}
+protected void setAddButton() {
+ add.setEnabled(getGPopSelected() && getZoneDepartSelected() && getCoefNonVide());
+}
+]]></script>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell>
+ <JLabel text="isisfish.common.populationGroup" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JAXXComboBox id="fieldPopulationMigrationEmigrationGroupChooser" enabled='{isActive()}' onActionPerformed='groupChanged()'/>
+ </cell>
+ <cell>
+ <JLabel text="isisfish.populationMigrationEmigration.coefficient" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JTextField id="fieldPopulationMigrationEmigrationCoefficient" enabled='{isActive()}' onKeyReleased='coefChanged()'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.populationMigrationEmigration.departureZone" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JAXXComboBox id="fieldPopulationMigrationEmigrationDepartureZoneChooser" enabled='{isActive()}' onActionPerformed='zoneChanged()'/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='0.5'>
+ <JPanel/>
+ </cell>
+ </row>
+ <row columns='4'>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id="add" text="isisfish.common.add" onActionPerformed='add()' enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row columns='4'>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id='populationMigrationEmigrationTable'
+ linearModel="true" enabled='{isActive()}'
+ onMatrixChanged="populationMigrationEmigrationMatrixChanged(event)"
+ onMouseReleased="remove.setEnabled(populationMigrationEmigrationTable.getTable().getSelectedRow() != -1)"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='4' fill='horizontal' weightx='1.0'>
+ <JButton id="remove" text="isisfish.common.remove" onActionPerformed='remove()' enabled='{isActive()}'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationEquationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,22 +22,21 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl id='popInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.PopulationSeasonInfo id='popInfo' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
-import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
-public void init(PopulationSeasonInfo pi) {
+public void init(PopulationSeasonInfo populationSeasonInfo) {
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setPopInfo(null);
- setPopInfo((PopulationSeasonInfoImpl)pi);
+ setPopInfo(populationSeasonInfo);
}
@Override
@@ -51,33 +50,35 @@
}
]]>
</script>
- <Table>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <InputOneEquationUI id='migrationEquation' constructorParams='this'
- text='isisfish.common.migration' actif='{isActif()}'
- bean='{getPopInfo()}' formuleCategory='Migration' beanProperty='MigrationEquation'
- clazz='{fr.ifremer.isisfish.equation.MigrationEquation.class}'
- decorator='boxed' _bean='{PopulationSeasonInfoImpl.class}' _method='"MigrationEquation"'/>
- </cell>
- </row>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <InputOneEquationUI id='emigrationEquation' constructorParams='this'
- text='isisfish.common.emigration' actif='{isActif()}'
- bean='{getPopInfo()}' formuleCategory='Emigration' beanProperty='EmigrationEquation'
- clazz='{fr.ifremer.isisfish.equation.EmigrationEquation.class}'
- decorator='boxed' _bean='{PopulationSeasonInfoImpl.class}' _method='"EmigrationEquation"'/>
- </cell>
- </row>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <InputOneEquationUI id='immigrationEquation' constructorParams='this'
- text='isisfish.common.immigration' actif='{isActif()}'
- bean='{getPopInfo()}' formuleCategory='Immigration' beanProperty='ImmigrationEquation'
- clazz='{fr.ifremer.isisfish.equation.ImmigrationEquation.class}'
- decorator='boxed' _bean='{PopulationSeasonInfoImpl.class}' _method='"ImmigrationEquation"'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <InputOneEquationUI id='migrationEquation' constructorParams='this'
+ text='isisfish.common.migration' active='{isActive()}'
+ bean='{getPopInfo()}' formuleCategory='Migration' beanProperty='MigrationEquation'
+ clazz='{fr.ifremer.isisfish.equation.MigrationEquation.class}'
+ decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"MigrationEquation"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <InputOneEquationUI id='emigrationEquation' constructorParams='this'
+ text='isisfish.common.emigration' active='{isActive()}'
+ bean='{getPopInfo()}' formuleCategory='Emigration' beanProperty='EmigrationEquation'
+ clazz='{fr.ifremer.isisfish.equation.EmigrationEquation.class}'
+ decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"EmigrationEquation"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <InputOneEquationUI id='immigrationEquation' constructorParams='this'
+ text='isisfish.common.immigration' active='{isActive()}'
+ bean='{getPopInfo()}' formuleCategory='Immigration' beanProperty='ImmigrationEquation'
+ clazz='{fr.ifremer.isisfish.equation.ImmigrationEquation.class}'
+ decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"ImmigrationEquation"'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationImmigrationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -22,68 +22,51 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl id='popInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.PopulationSeasonInfo id='popInfo' javaBean='null'/>
<Boolean id='gPopSelected' javaBean='false'/>
<Boolean id='zoneDepartSelected' javaBean='false'/>
<Boolean id='coefNonVide' javaBean='false'/>
<script><![CDATA[
-
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import fr.ifremer.isisfish.entities.PopulationGroup;
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
-import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
import fr.ifremer.isisfish.entities.Zone;
import org.nuiton.math.matrix.MatrixND;
import org.nuiton.math.matrix.gui.MatrixPanelEvent;
+import org.nuiton.math.matrix.gui.MatrixPanelListener;
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- // remove previous binding on getBean()
- //jaxx.runtime.SwingUtil.removeDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");
- populationMigrationImmigrationTable.setMatrix(null);
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ populationMigrationImmigrationTable.setMatrix(null);
+ }
+ if (evt.getNewValue() != null) {
+
+ }
}
- if (evt.getNewValue() != null) {
- // add binding on getBean()
- //jaxx.runtime.SwingUtil.applyDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");
- }
- }
-});
+ });
+}
-populationMigrationImmigrationTable.getTable().addMouseListener(new MouseAdapter() {
- @Override
- public void mouseReleased(MouseEvent e) {
- remove.setEnabled(populationMigrationImmigrationTable.getTable().getSelectedRow() != -1);
- }
-});
-
-/*populationMigrationImmigrationTable.addMatrixListener(new MatrixPanelListener() {
- @Override
- public void matrixChanged(MatrixPanelEvent arg0) {
- if (getPopInfo() != null) {
- getPopInfo().setImmigrationMatrix(populationMigrationImmigrationTable.getMatrix().clone());
- }
- }
-});*/
-
protected void populationMigrationImmigrationMatrixChanged(MatrixPanelEvent event) {
if (getPopInfo() != null){
getPopInfo().setImmigrationMatrix(populationMigrationImmigrationTable.getMatrix().clone());
}
}
-public void init(PopulationSeasonInfo pi) {
+public void init(PopulationSeasonInfo populationSeasonInfo) {
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setPopInfo(null);
- setPopInfo((PopulationSeasonInfoImpl)pi);
+ setPopInfo(populationSeasonInfo);
populationMigrationImmigrationTable.setMatrix(getPopInfo().getImmigrationMatrix().copy());
}
@@ -91,7 +74,7 @@
@Override
public void refresh(){
Population population = getVerifier().getEntity(Population.class);
- setBean((PopulationImpl) population);
+ setBean(population);
refreshPanel();
}
@@ -153,48 +136,51 @@
}
]]>
</script>
- <Table>
- <row>
- <cell>
- <JLabel text="isisfish.common.populationGroup" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JComboBox id="fieldPopulationMigrationImmigrationGroupChooser" enabled='{isActif()}' onActionPerformed='groupChanged()'/>
- </cell>
- <cell>
- <JLabel text="isisfish.populationMigrationImmigration.coefficient" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JTextField id="fieldPopulationMigrationImmigrationCoefficient" enabled='{isActif()}' onKeyReleased='coefChanged()'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.populationMigrationImmigration.arrivalZone" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JComboBox id="fieldPopulationMigrationImmigrationArrivalZoneChooser" enabled='{isActif()}' onActionPerformed='zoneChanged()'/>
- </cell>
- <cell columns='2' fill='horizontal' weightx='0.5'>
- <JPanel/>
- </cell>
- </row>
- <row columns='4'>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id="add" text="isisfish.common.add" onActionPerformed='add()' enabled='{isActif()}'/>
- </cell>
- </row>
- <row columns='4'>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id='populationMigrationImmigrationTable'
- linearModel="true" enabled='{isActif()}'
- onMatrixChanged="populationMigrationImmigrationMatrixChanged(event)" />
- </cell>
- </row>
- <row>
- <cell columns='4' fill='horizontal' weightx='1.0'>
- <JButton id="remove" text="isisfish.common.remove" onActionPerformed='remove()' enabled='{isActif()}'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell>
+ <JLabel text="isisfish.common.populationGroup" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JAXXComboBox id="fieldPopulationMigrationImmigrationGroupChooser" enabled='{isActive()}' onActionPerformed='groupChanged()'/>
+ </cell>
+ <cell>
+ <JLabel text="isisfish.populationMigrationImmigration.coefficient" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JTextField id="fieldPopulationMigrationImmigrationCoefficient" enabled='{isActive()}' onKeyReleased='coefChanged()'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.populationMigrationImmigration.arrivalZone" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JAXXComboBox id="fieldPopulationMigrationImmigrationArrivalZoneChooser" enabled='{isActive()}' onActionPerformed='zoneChanged()'/>
+ </cell>
+ <cell columns='2' fill='horizontal' weightx='0.5'>
+ <JPanel/>
+ </cell>
+ </row>
+ <row columns='4'>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id="add" text="isisfish.common.add" onActionPerformed='add()' enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row columns='4'>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id='populationMigrationImmigrationTable'
+ linearModel="true" enabled='{isActive()}'
+ onMatrixChanged="populationMigrationImmigrationMatrixChanged(event)"
+ onMouseReleased="remove.setEnabled(populationMigrationImmigrationTable.getTable().getSelectedRow() != -1)"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='4' fill='horizontal' weightx='1.0'>
+ <JButton id="remove" text="isisfish.common.remove" onActionPerformed='remove()' enabled='{isActive()}'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationMigrationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,11 +22,11 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl id='popInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.PopulationSeasonInfo id='popInfo' javaBean='null'/>
<Boolean id='gPopSelected' javaBean='false'/>
<Boolean id='zoneDepartSelected' javaBean='false'/>
@@ -36,36 +36,29 @@
<script><![CDATA[
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
-import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import fr.ifremer.isisfish.entities.PopulationGroup;
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
import fr.ifremer.isisfish.entities.Zone;
import org.nuiton.math.matrix.MatrixND;
import org.nuiton.math.matrix.gui.MatrixPanelEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import org.nuiton.math.matrix.gui.MatrixPanelListener;
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- // remove previous binding on getBean()
- //jaxx.runtime.SwingUtil.removeDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");
- populationMigrationMigrationTable.setMatrix(null);
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ populationMigrationMigrationTable.setMatrix(null);
+ }
+ if (evt.getNewValue() != null) {
+
+ }
}
- if (evt.getNewValue() != null) {
- // add binding on getBean()
- //jaxx.runtime.SwingUtil.applyDataBinding(get$Table0(), "fieldCellName.text", "fieldCellLongitude.text", "fieldCellLatitude.text", "fieldCellLand.selected", "fieldCellComment.text");
- }
- }
-});
+ });
+}
-populationMigrationMigrationTable.getTable().addMouseListener(new MouseAdapter() {
- @Override
- public void mouseReleased(MouseEvent e) {
- remove.setEnabled(populationMigrationMigrationTable.getTable().getSelectedRow() != -1);
- }
-});
-
protected void populationMigrationMigrationMatrixChanged(MatrixPanelEvent event) {
if (getPopInfo() != null) {
getPopInfo().setMigrationMatrix(populationMigrationMigrationTable.getMatrix().clone());
@@ -75,7 +68,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setPopInfo(null);
- setPopInfo((PopulationSeasonInfoImpl)pi);
+ setPopInfo(pi);
if (getPopInfo() != null && getPopInfo().getMigrationMatrix() != null){
populationMigrationMigrationTable.setMatrix(getPopInfo().getMigrationMatrix().copy());
@@ -86,7 +79,7 @@
public void refresh() {
Population population = getVerifier().getEntity(Population.class);
// setBean(null); is useless here
- setBean((PopulationImpl) population);
+ setBean(population);
refreshPanel();
}
@@ -161,51 +154,54 @@
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell>
- <JLabel text="isisfish.common.populationGroup" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JComboBox id="fieldPopulationMigrationMigrationGroupChooser" enabled='{isActif()}' onActionPerformed='groupChanged()'/>
- </cell>
- <cell>
- <JLabel text="isisfish.populationMigrationMigration.coefficient" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JTextField id="fieldPopulationMigrationMigrationCoefficient" enabled='{isActif()}' onKeyReleased='coefChanged()'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.populationMigrationMigration.departureZone" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JComboBox id="fieldPopulationMigrationMigrationDepartureZoneChooser" enabled='{isActif()}' onActionPerformed='zoneDepartueChanged()'/>
- </cell>
- <cell>
- <JLabel text="isisfish.populationMigrationMigration.arrivalZone" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JComboBox id="fieldPopulationMigrationMigrationArrivalZoneChooser" enabled='{isActif()}' onActionPerformed='zoneArrivalChanged()'/>
- </cell>
- </row>
- <row columns='4'>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id="add" text="isisfish.common.add" onActionPerformed='add()' enabled='{isActif()}'/>
- </cell>
- </row>
- <row columns='4'>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id ='populationMigrationMigrationTable'
- linearModel='{true}' enabled='{isActif()}'
- onMatrixChanged="populationMigrationMigrationMatrixChanged(event)" />
- </cell>
- </row>
- <row>
- <cell columns='4' fill='horizontal' weightx='1.0'>
- <JButton id="remove" text="isisfish.common.remove" onActionPerformed='remove()' enabled='{isActif()}'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell>
+ <JLabel text="isisfish.common.populationGroup" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JAXXComboBox id="fieldPopulationMigrationMigrationGroupChooser" enabled='{isActive()}' onActionPerformed='groupChanged()'/>
+ </cell>
+ <cell>
+ <JLabel text="isisfish.populationMigrationMigration.coefficient" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JTextField id="fieldPopulationMigrationMigrationCoefficient" enabled='{isActive()}' onKeyReleased='coefChanged()'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.populationMigrationMigration.departureZone" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JAXXComboBox id="fieldPopulationMigrationMigrationDepartureZoneChooser" enabled='{isActive()}' onActionPerformed='zoneDepartueChanged()'/>
+ </cell>
+ <cell>
+ <JLabel text="isisfish.populationMigrationMigration.arrivalZone" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JAXXComboBox id="fieldPopulationMigrationMigrationArrivalZoneChooser" enabled='{isActive()}' onActionPerformed='zoneArrivalChanged()'/>
+ </cell>
+ </row>
+ <row columns='4'>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id="add" text="isisfish.common.add" onActionPerformed='add()' enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row columns='4'>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id ='populationMigrationMigrationTable'
+ linearModel='{true}' enabled='{isActive()}'
+ onMatrixChanged="populationMigrationMigrationMatrixChanged(event)"
+ onMouseReleased="remove.setEnabled(populationMigrationMigrationTable.getTable().getSelectedRow() != -1)"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='4' fill='horizontal' weightx='1.0'>
+ <JButton id="remove" text="isisfish.common.remove" onActionPerformed='remove()' enabled='{isActive()}'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
\ No newline at end of file
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationMigrationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -22,32 +22,32 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl id='popInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.PopulationSeasonInfo id='popInfo' javaBean='null'/>
<Boolean id="selectedPopulationSeasonInfo" javaBean='false' />
<script><![CDATA[
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
-import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import fr.ifremer.isisfish.ui.input.population.PopulationSeasonInfoComboModel;
import fr.ifremer.isisfish.ui.input.population.PopulationSeasonInfoComboRenderer;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
addPropertyChangeListener("bean", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ if (evt.getNewValue() == null) {
fieldPopulationMigrationComment.setText("");
fieldUseEquationMigration.setSelected(false);
}
- /*if (evt.getNewValue() != null) {
-
- }*/
+ if (evt.getNewValue() != null) {
+ refresh();
+ }
}
});
@@ -57,8 +57,8 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
- setBean(null);
- setBean((PopulationImpl) population);
+ //setBean(null);
+ //setBean(population);
// refresh psi list in combo box
PopulationSeasonInfoComboModel model = (PopulationSeasonInfoComboModel)fieldPopulationMigrationSeasonChooser.getModel();
@@ -82,7 +82,7 @@
}
getVerifier().addCurrentPanel(populationMigrationEquationUI, populationMigrationMigrationUI, populationMigrationImmigrationUI, populationMigrationEmigrationUI);
- // addCurrentPanel set all to isActif()
+ // addCurrentPanel set all to isActive()
// force it to isSelectedPopulationSeasonInfo()
// twice for real change event :(
setSelectedPopulationSeasonInfo(fieldPopulationMigrationSeasonChooser.getModel().getSelectedItem() == null);
@@ -98,7 +98,7 @@
protected void seasonChanged() {
PopulationSeasonInfoComboModel model = (PopulationSeasonInfoComboModel)fieldPopulationMigrationSeasonChooser.getModel();
PopulationSeasonInfo selectedPSI = (PopulationSeasonInfo)model.getSelectedItem();
- setPopInfo((PopulationSeasonInfoImpl)selectedPSI);
+ setPopInfo(selectedPSI);
if (getPopInfo() != null) {
getVerifier().addCurrentEntity(getPopInfo());
populationMigrationEquationUI.init(getPopInfo());
@@ -106,7 +106,7 @@
populationMigrationImmigrationUI.init(getPopInfo());
populationMigrationEmigrationUI.init(getPopInfo());
- setSelectedPopulationSeasonInfo(isActif());
+ setSelectedPopulationSeasonInfo(isActive());
}
else {
setSelectedPopulationSeasonInfo(false);
@@ -131,73 +131,75 @@
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationMigration.selectSeason" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldPopulationMigrationSeasonChooser"
- model='{new PopulationSeasonInfoComboModel()}'
- renderer="{new PopulationSeasonInfoComboRenderer()}"
- onActionPerformed='seasonChanged()'
- enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell columns='2' anchor='west'>
- <JCheckBox id="fieldUseEquationMigration" selected='{getPopInfo().getUseEquationMigration()}'
- text="isisfish.populationMigration.useEquation" onActionPerformed='useEquationChanged()' enabled='{isSelectedPopulationSeasonInfo()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.7'>
- <JPanel id="hidablePanel" layout='{new CardLayout()}'>
- <JTabbedPane id="fieldUseMatrix" constraints='"fieldUseMatrix"' enabled='{isSelectedPopulationSeasonInfo()}'>
- <tab title='{_("isisfish.populationMigrationMigration.title")}'>
- <PopulationMigrationMigrationUI id="populationMigrationMigrationUI" constructorParams='this' decorator='boxed'
- _bean='{PopulationSeasonInfoImpl.class}' _method='"MigrationMatrix"' actif='{isSelectedPopulationSeasonInfo()}' />
- </tab>
- <tab title='{_("isisfish.populationMigrationImmigration.title")}'>
- <PopulationMigrationImmigrationUI id="populationMigrationImmigrationUI" constructorParams='this' decorator='boxed'
- _bean='{PopulationSeasonInfoImpl.class}' _method='"ImmigrationMatrix"' actif='{isSelectedPopulationSeasonInfo()}' />
- </tab>
- <tab title='{_("isisfish.populationMigrationEmigration.title")}'>
- <PopulationMigrationEmigrationUI id="populationMigrationEmigrationUI" constructorParams='this' decorator='boxed'
- _bean='{PopulationSeasonInfoImpl.class}' _method='"EmigrationMatrix"' actif='{isSelectedPopulationSeasonInfo()}' />
- </tab>
- </JTabbedPane>
- <PopulationMigrationEquationUI id='populationMigrationEquationUI' constraints='"fieldUseEquation"' constructorParams='this'
- actif='{isSelectedPopulationSeasonInfo()}' />
- </JPanel>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationMigration.comments" enabled='{isActif()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.3'>
- <JScrollPane>
- <!-- comment can be null jaxx.runtime.SwingUtil.getStringValue() -->
- <JTextArea id="fieldPopulationMigrationComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getMigrationComment())}'
- onKeyReleased='getBean().setMigrationComment(fieldPopulationMigrationComment.getText())'
- enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationMigration.selectSeason" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JComboBox id="fieldPopulationMigrationSeasonChooser"
+ model='{new PopulationSeasonInfoComboModel()}'
+ renderer="{new PopulationSeasonInfoComboRenderer()}"
+ onActionPerformed='seasonChanged()'
+ enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' anchor='west'>
+ <JCheckBox id="fieldUseEquationMigration" selected='{getPopInfo().getUseEquationMigration()}'
+ text="isisfish.populationMigration.useEquation" onActionPerformed='useEquationChanged()' enabled='{isSelectedPopulationSeasonInfo()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.7'>
+ <JPanel id="hidablePanel" layout='{new CardLayout()}'>
+ <JTabbedPane id="fieldUseMatrix" constraints='"fieldUseMatrix"' enabled='{isSelectedPopulationSeasonInfo()}'>
+ <tab title='{_("isisfish.populationMigrationMigration.title")}'>
+ <PopulationMigrationMigrationUI id="populationMigrationMigrationUI" constructorParams='this' decorator='boxed'
+ _bean='{PopulationSeasonInfo.class}' _method='"MigrationMatrix"' active='{isSelectedPopulationSeasonInfo()}' />
+ </tab>
+ <tab title='{_("isisfish.populationMigrationImmigration.title")}'>
+ <PopulationMigrationImmigrationUI id="populationMigrationImmigrationUI" constructorParams='this' decorator='boxed'
+ _bean='{PopulationSeasonInfo.class}' _method='"ImmigrationMatrix"' active='{isSelectedPopulationSeasonInfo()}' />
+ </tab>
+ <tab title='{_("isisfish.populationMigrationEmigration.title")}'>
+ <PopulationMigrationEmigrationUI id="populationMigrationEmigrationUI" constructorParams='this' decorator='boxed'
+ _bean='{PopulationSeasonInfo.class}' _method='"EmigrationMatrix"' active='{isSelectedPopulationSeasonInfo()}' />
+ </tab>
+ </JTabbedPane>
+ <PopulationMigrationEquationUI id='populationMigrationEquationUI' constraints='"fieldUseEquation"' constructorParams='this'
+ active='{isSelectedPopulationSeasonInfo()}' />
+ </JPanel>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationMigration.comments" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.3'>
+ <JScrollPane>
+ <!-- comment can be null jaxx.runtime.SwingUtil.getStringValue() -->
+ <JTextArea id="fieldPopulationMigrationComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getMigrationComment())}'
+ onKeyReleased='getBean().setMigrationComment(fieldPopulationMigrationComment.getText())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationRecruitmentUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,15 +22,17 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import org.nuiton.math.matrix.gui.MatrixPanelEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import org.nuiton.math.matrix.gui.MatrixPanelListener;
addPropertyChangeListener("bean", new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
@@ -62,7 +64,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((PopulationImpl) population);
+ setBean(population);
getVerifier().addCurrentPanel(reproductionEquation);
@@ -84,81 +86,83 @@
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
- <InputOneEquationUI id='reproductionEquation' constructorParams='this'
- text='isisfish.populationRecruitment.reproductionEquation'
- bean='{getBean()}' formuleCategory='Reproduction' beanProperty='ReproductionEquation'
- clazz='{fr.ifremer.isisfish.equation.PopulationReproductionEquation.class}'
- decorator='boxed' _bean='{PopulationImpl.class}' _method='"ReproductionEquation"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationRecruitment.monthgapgetweenreprorecruitment" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldPopulationMonthGapBetweenReproRecrutement' constructorParams='this'
- bean='{getBean()}' property='monthGapBetweenReproRecrutement' useSign='true'
- enabled='{isActif()}' decorator='boxed' _bean='{PopulationImpl.class}'
- _method='"MonthGapBetweenReproRecrutement"'/-->
- <JTextField id="fieldPopulationMonthGapBetweenReproRecrutement" text='{getBean().getMonthGapBetweenReproRecrutement()}'
- onKeyReleased='getBean().setMonthGapBetweenReproRecrutement(Integer.parseInt(fieldPopulationMonthGapBetweenReproRecrutement.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{PopulationImpl.class}' _method='"MonthGapBetweenReproRecrutement"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationRecruitment.recruitmentDistribution" enabled='{isActif()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.5'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationRecruitmentDistribution'
- matrix='{getBean().getRecruitmentDistribution() == null ? null : getBean().getRecruitmentDistribution().copy()}'
- enabled='{isActif()}' decorator='boxed' _bean='{PopulationImpl.class}' _method='"RecruitmentDistribution"'
- onMatrixChanged="populationRecruitmentDistributionMatrixChanged(event)" />
- </cell>
- </row>
- <row>
- <cell>
- <JPanel/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id="create" text="isisfish.common.newMatrix" onActionPerformed='getAction().createRecruitmentDistribution(getBean())' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationRecruitment.comments" enabled='{isActif()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.3'>
- <JScrollPane>
- <!-- jaxx.runtime.SwingUtil.getStringValue() comment can be null -->
- <JTextArea id="fieldPopulationRecruitmentComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getRecruitmentComment())}'
- onKeyReleased='getBean().setRecruitmentComment(fieldPopulationRecruitmentComment.getText())'
- enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
-</Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.5'>
+ <InputOneEquationUI id='reproductionEquation' constructorParams='this'
+ text='isisfish.populationRecruitment.reproductionEquation' active="{isActive()}"
+ bean='{getBean()}' formuleCategory='Reproduction' beanProperty='ReproductionEquation'
+ clazz='{fr.ifremer.isisfish.equation.PopulationReproductionEquation.class}'
+ decorator='boxed' _bean='{Population.class}' _method='"ReproductionEquation"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationRecruitment.monthgapgetweenreprorecruitment" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldPopulationMonthGapBetweenReproRecrutement' constructorParams='this'
+ bean='{getBean()}' property='monthGapBetweenReproRecrutement' useSign='true'
+ enabled='{isActive()}' decorator='boxed' _bean='{PopulationImpl.class}'
+ _method='"MonthGapBetweenReproRecrutement"'/-->
+ <JTextField id="fieldPopulationMonthGapBetweenReproRecrutement" text='{String.valueOf(getBean().getMonthGapBetweenReproRecrutement())}'
+ onKeyReleased='getBean().setMonthGapBetweenReproRecrutement(Integer.parseInt(fieldPopulationMonthGapBetweenReproRecrutement.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{Population.class}' _method='"MonthGapBetweenReproRecrutement"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationRecruitment.recruitmentDistribution" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.5'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id ='fieldPopulationRecruitmentDistribution'
+ matrix='{getBean().getRecruitmentDistribution() == null ? null : getBean().getRecruitmentDistribution().copy()}'
+ enabled='{isActive()}' decorator='boxed' _bean='{Population.class}' _method='"RecruitmentDistribution"'
+ onMatrixChanged="populationRecruitmentDistributionMatrixChanged(event)" />
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JPanel/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id="create" text="isisfish.common.newMatrix" onActionPerformed='getAction().createRecruitmentDistribution(getBean())' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationRecruitment.comments" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.3'>
+ <JScrollPane>
+ <!-- jaxx.runtime.SwingUtil.getStringValue() comment can be null -->
+ <JTextArea id="fieldPopulationRecruitmentComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getRecruitmentComment())}'
+ onKeyReleased='getBean().setRecruitmentComment(fieldPopulationRecruitmentComment.getText())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonSpacializedUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonSpacializedUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonSpacializedUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,23 +22,23 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl id='populationSeasonInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.PopulationSeasonInfo id='populationSeasonInfo' javaBean='null'/>
<Boolean id='popSeasonInfoNotNull' javaBean='false'/>
<Boolean id='ageGroupType' javaBean='false'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
-import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
import fr.ifremer.isisfish.ui.util.ErrorHelper;
import org.nuiton.math.matrix.MatrixND;
import org.nuiton.math.matrix.gui.MatrixPanelEditor;
import org.nuiton.math.matrix.gui.MatrixPanelEvent;
+import org.nuiton.math.matrix.gui.MatrixPanelListener;
protected void populationSeasonLengthMatrixChanged(MatrixPanelEvent event) {
if (getPopulationSeasonInfo() != null && matrixPanelPopulationSeasonLengthChange.getMatrix() != null) {
@@ -117,55 +117,57 @@
}
]]></script>
- <Table>
- <row>
- <cell>
- <Panel/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JRadioButton id="radioPopulationSeasonGroupChangeLengthNoSpacialized"
- buttonGroup="radioPopulationSeasonGroupChangeLengthSpacializedGroup"
- selected='{getPopulationSeasonInfo().getSimpleLengthChangeMatrix()}'
- enabled='{isPopSeasonInfoNotNull()}'
- text="isisfish.populationSeasons.noSpacialized" onActionPerformed='spacializedActionPerformed()'
- visible='{isAgeGroupType()}' decorator='boxed' />
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JRadioButton id="radioPopulationSeasonGroupChangeLengthSpacialized"
- buttonGroup="radioPopulationSeasonGroupChangeLengthSpacializedGroup"
- selected='{!getPopulationSeasonInfo().getSimpleLengthChangeMatrix()}'
- enabled='{isPopSeasonInfoNotNull()}'
- text="isisfish.populationSeasons.spacialized" onActionPerformed='spacializedActionPerformed()'
- visible='{isAgeGroupType()}' decorator='boxed' />
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.populationSeasons.changeGroup" visible='{isAgeGroupType()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton text="isisfish.populationSeasons.computeCoefficient" decorator='boxed' visible='{isAgeGroupType()}'
- enabled='{isPopSeasonInfoNotNull()}' onActionPerformed='computeMatrixChangeOfGroup()'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id="buttonPopulationSeasonGroupChangeLengthButtonShow" text="isisfish.populationSeasons.showSpacialized"
- enabled='{radioPopulationSeasonGroupChangeLengthNoSpacialized.isSelected()}' decorator='boxed'
- onActionPerformed='showSpacializedMatrixChangeOfGroup()'
- visible='{isAgeGroupType()}'/>
- </cell>
- </row>
- <row>
- <cell>
- <Panel/>
- </cell>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id='matrixPanelPopulationSeasonLengthChange'
- enabled='{isPopSeasonInfoNotNull()}'
- _bean='{PopulationSeasonInfoImpl.class}' _method='"LengthChangeMatrix"'
- visible='{isAgeGroupType()}' decorator='boxed'
- matrix='{getPopulationSeasonInfo() == null ? null : getPopulationSeasonInfo().getLengthChangeMatrix().copy()}'
- onMatrixChanged="populationSeasonLengthMatrixChanged(event)" />
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell>
+ <Panel/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JRadioButton id="radioPopulationSeasonGroupChangeLengthNoSpacialized"
+ buttonGroup="radioPopulationSeasonGroupChangeLengthSpacializedGroup"
+ selected='{getPopulationSeasonInfo().getSimpleLengthChangeMatrix()}'
+ enabled='{isPopSeasonInfoNotNull()}'
+ text="isisfish.populationSeasons.noSpacialized" onActionPerformed='spacializedActionPerformed()'
+ visible='{isAgeGroupType()}' decorator='boxed' />
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JRadioButton id="radioPopulationSeasonGroupChangeLengthSpacialized"
+ buttonGroup="radioPopulationSeasonGroupChangeLengthSpacializedGroup"
+ selected='{!getPopulationSeasonInfo().getSimpleLengthChangeMatrix()}'
+ enabled='{isPopSeasonInfoNotNull()}'
+ text="isisfish.populationSeasons.spacialized" onActionPerformed='spacializedActionPerformed()'
+ visible='{isAgeGroupType()}' decorator='boxed' />
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.populationSeasons.changeGroup" visible='{isAgeGroupType()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton text="isisfish.populationSeasons.computeCoefficient" decorator='boxed' visible='{isAgeGroupType()}'
+ enabled='{isPopSeasonInfoNotNull()}' onActionPerformed='computeMatrixChangeOfGroup()'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id="buttonPopulationSeasonGroupChangeLengthButtonShow" text="isisfish.populationSeasons.showSpacialized"
+ enabled='{radioPopulationSeasonGroupChangeLengthNoSpacialized.isSelected()}' decorator='boxed'
+ onActionPerformed='showSpacializedMatrixChangeOfGroup()'
+ visible='{isAgeGroupType()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <Panel/>
+ </cell>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id='matrixPanelPopulationSeasonLengthChange'
+ enabled='{isPopSeasonInfoNotNull()}'
+ _bean='{PopulationSeasonInfo.class}' _method='"LengthChangeMatrix"'
+ visible='{isAgeGroupType()}' decorator='boxed'
+ matrix='{getPopulationSeasonInfo() == null ? null : getPopulationSeasonInfo().getLengthChangeMatrix().copy()}'
+ onMatrixChanged="populationSeasonLengthMatrixChanged(event)" />
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,102 +22,92 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl id='populationSeasonInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.PopulationSeasonInfo id='populationSeasonInfo' javaBean='null'/>
<Boolean id='popSeasonInfoNotNull' javaBean='false'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.PopulationSeasonInfo;
-import fr.ifremer.isisfish.entities.PopulationSeasonInfoImpl;
import fr.ifremer.isisfish.types.Month;
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import fr.ifremer.isisfish.ui.widget.Interval;
import org.nuiton.math.matrix.MatrixND;
import org.nuiton.math.matrix.gui.MatrixPanelEvent;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+import org.nuiton.math.matrix.gui.MatrixPanelListener;
-//protected MatrixPanelListener matrixPanelListener;
protected Interval seasonInterval;
protected boolean init = false;
-/*
- * Don't add both in same listener.
- * When first is set, last value from getPopulationSeasonInfo()
- * is erased by interval.getLast() default value.
- */
-seasonIntervalPanel.addPropertyChangeListener("first", new PropertyChangeListener() {
- @Override
- public void propertyChange(PropertyChangeEvent evt) {
- if (getPopulationSeasonInfo() != null) {
- getPopulationSeasonInfo().setFirstMonth(new Month(seasonInterval.getFirst()));
- setReproductionDistributionMatrix();
- }
- }
-});
-seasonIntervalPanel.addPropertyChangeListener("last", new PropertyChangeListener() {
- @Override
- public void propertyChange(PropertyChangeEvent evt) {
- if (getPopulationSeasonInfo() != null) {
- getPopulationSeasonInfo().setLastMonth(new Month(seasonInterval.getLast()));
- setReproductionDistributionMatrix();
- }
- }
-});
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- fieldPopulationSeasonComment.setText("");
- fieldPopulationSeasonReproductionDistribution.setMatrix(null);
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ fieldPopulationSeasonComment.setText("");
+ fieldPopulationSeasonReproductionDistribution.setMatrix(null);
+ }
+ if (evt.getNewValue() != null) {
+ refresh();
+ }
}
- if (evt.getNewValue() != null) {
-
+ });
+
+ /*
+ * Don't add both in same listener.
+ * When first is set, last value from getPopulationSeasonInfo()
+ * is erased by interval.getLast() default value.
+ */
+ seasonIntervalPanel.addPropertyChangeListener("first", new PropertyChangeListener() {
+ @Override
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (getPopulationSeasonInfo() != null) {
+ getPopulationSeasonInfo().setFirstMonth(new Month(seasonInterval.getFirst()));
+ setReproductionDistributionMatrix();
+ }
}
- }
-});
-
-create.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- PopulationSeasonInfo seasonNew = getContextValue(InputAction.class).createPopulationSeasonInfo(getBean());
- setPopulationSeasonInfo((PopulationSeasonInfoImpl)seasonNew);
- setPopulationSeasonInfoCombo();
- }
-});
-
-remove.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- getContextValue(InputAction.class).removePopulationSeasonInfo(getBean(), getPopulationSeasonInfo());
- setPopulationSeasonInfoCombo();
- }
-});
-
-save.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- getVerifier().topiaSave();
- setPopulationSeasonInfoCombo();
- }
-});
-
-/*matrixPanelListener = new MatrixPanelListener() {
- @Override
- public void matrixChanged(MatrixPanelEvent event) {
- if (getPopulationSeasonInfo() != null && fieldPopulationSeasonReproductionDistribution.getMatrix() != null) {
- MatrixND reproductionDistribution = fieldPopulationSeasonReproductionDistribution.getMatrix().copy();
- if (log.isDebugEnabled()) {
- log.debug("Matrix ReproductionDistribution modified : " + reproductionDistribution);
+ });
+ seasonIntervalPanel.addPropertyChangeListener("last", new PropertyChangeListener() {
+ @Override
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (getPopulationSeasonInfo() != null) {
+ getPopulationSeasonInfo().setLastMonth(new Month(seasonInterval.getLast()));
+ setReproductionDistributionMatrix();
}
- getPopulationSeasonInfo().setReproductionDistribution(reproductionDistribution);
}
- }
-};*/
+ });
+
+ create.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ PopulationSeasonInfo seasonNew = getContextValue(InputAction.class).createPopulationSeasonInfo(getBean());
+ setPopulationSeasonInfo(seasonNew);
+ setPopulationSeasonInfoCombo();
+ }
+ });
+
+ remove.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ getContextValue(InputAction.class).removePopulationSeasonInfo(getBean(), getPopulationSeasonInfo());
+ setPopulationSeasonInfoCombo();
+ }
+ });
+
+ save.addActionListener(new ActionListener() {
+ @Override
+ public void actionPerformed(ActionEvent e) {
+ getVerifier().topiaSave();
+ setPopulationSeasonInfoCombo();
+ }
+ });
+}
protected void populationSeasonReproductionDistributionMatrixChanged(MatrixPanelEvent event) {
if (getPopulationSeasonInfo() != null && fieldPopulationSeasonReproductionDistribution.getMatrix() != null) {
@@ -131,7 +121,7 @@
@Override
public void refresh() {
- if (!isActif()) {
+ if (!isActive()) {
setPopSeasonInfoNotNull(false);
}
@@ -139,8 +129,8 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
- setBean(null);
- setBean((PopulationImpl) population);
+ //setBean(null);
+ //setBean(population);
// Model instanciation
seasonInterval = new Interval();
@@ -158,7 +148,7 @@
//fieldPopulationSeasonReproductionDistribution.addMatrixListener(matrixPanelListener);
if(getPopulationSeasonInfo() != null) {
- PopulationSeasonInfoImpl popInfo = getPopulationSeasonInfo();
+ PopulationSeasonInfo popInfo = getPopulationSeasonInfo();
setPopulationSeasonInfo(null);
setPopulationSeasonInfo(popInfo);
getVerifier().addCurrentEntity(getPopulationSeasonInfo());
@@ -170,7 +160,7 @@
public void setActionButtons() {
getVerifier().setSaveButton(save, false);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "PopulationSeasonInfo", false);
+ getVerifier().setNewButton(create, PopulationSeasonInfo.class, false);
getVerifier().setDeleteButton(remove, false);
}
@@ -228,7 +218,7 @@
if (log.isDebugEnabled()) {
log.debug("Season changed : " + seasonInfoSelected);
}
- setPopulationSeasonInfo((PopulationSeasonInfoImpl)seasonInfoSelected);
+ setPopulationSeasonInfo(seasonInfoSelected);
setPopSeasonInfoNotNull(getPopulationSeasonInfo() != null);
setSeasonInterval();
setReproductionDistributionMatrix();
@@ -254,104 +244,105 @@
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationSeasons.selectSeason" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldPopulationSeasonInfoChooser"
- onActionPerformed='seasonChanged()'
- enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.common.season" enabled='{isPopSeasonInfoNotNull()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <fr.ifremer.isisfish.ui.widget.IntervalPanel id='seasonIntervalPanel' enabled='{isPopSeasonInfoNotNull()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='both'>
- <JPanel/>
- </cell>
- <cell fill='both' weightx='1.0'>
- <JCheckBox id="fieldPopulationSeasonGroupChange" text="isisfish.populationSeasons.changeGroup" selected='{getPopulationSeasonInfo().getGroupChange()}'
- decorator='boxed' _bean='{PopulationSeasonInfoImpl.class}' _method='"GroupChange"'
- onActionPerformed='seasonGroupChanged()' enabled='{isPopSeasonInfoNotNull()}' visible='{isAgeGroupType(getPopulationSeasonInfo().getPopulation().getSpecies().getAgeGroupType())}'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.6'>
- <PopulationSeasonSpacializedUI id='populationSeasonSpecializedUI' bean='{getBean()}'
- populationSeasonInfo='{getPopulationSeasonInfo()}' popSeasonInfoNotNull='{isPopSeasonInfoNotNull()}'
- ageGroupType='{isAgeGroupType(!getPopulationSeasonInfo().getPopulation().getSpecies().getAgeGroupType())}'/>
- </cell>
- </row>
- <row>
- <cell>
- <JPanel/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JCheckBox id="fieldPopulationSeasonReproduction" selected='{getPopulationSeasonInfo().getReproduction()}'
- onActionPerformed='getPopulationSeasonInfo().setReproduction(fieldPopulationSeasonReproduction.isSelected())'
- text="isisfish.populationSeasons.Reproduction" enabled='{isPopSeasonInfoNotNull()}'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationSeasons.distributionSpawning" enabled='{isPopSeasonInfoNotNull()}'
- visible='{getPopulationSeasonInfo().getReproduction()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.2'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id='fieldPopulationSeasonReproductionDistribution'
- matrix='{getPopulationSeasonInfo() == null ? null : getPopulationSeasonInfo().getReproductionDistribution().copy()}'
- enabled='{isPopSeasonInfoNotNull()}'
- visible='{getPopulationSeasonInfo().getReproduction()}'
- decorator='boxed' _bean='{PopulationSeasonInfoImpl.class}' _method='"ReproductionDistribution"'
- onMatrixChanged="populationSeasonReproductionDistributionMatrixChanged(event)" />
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.populationSeasons.comments" enabled='{isPopSeasonInfoNotNull()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.1'>
- <JScrollPane>
- <!-- jaxx.runtime.SwingUtil.getStringValue() comment can be null -->
- <JTextArea id="fieldPopulationSeasonComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getSeasonsComment())}' onKeyReleased='getBean().setSeasonsComment(fieldPopulationSeasonComment.getText())' enabled='{isPopSeasonInfoNotNull()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='remove' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationSeasons.selectSeason" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JAXXComboBox id="fieldPopulationSeasonInfoChooser"
+ onActionPerformed='seasonChanged()' enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.common.season" enabled='{isPopSeasonInfoNotNull()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <fr.ifremer.isisfish.ui.widget.IntervalPanel id='seasonIntervalPanel' enabled='{isPopSeasonInfoNotNull()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='both'>
+ <JPanel/>
+ </cell>
+ <cell fill='both' weightx='1.0'>
+ <JCheckBox id="fieldPopulationSeasonGroupChange" text="isisfish.populationSeasons.changeGroup" selected='{getPopulationSeasonInfo().getGroupChange()}'
+ decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"GroupChange"'
+ onActionPerformed='seasonGroupChanged()' enabled='{isPopSeasonInfoNotNull()}' visible='{isAgeGroupType(getPopulationSeasonInfo().getPopulation().getSpecies().getAgeGroupType())}'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.6'>
+ <PopulationSeasonSpacializedUI id='populationSeasonSpecializedUI' bean='{getBean()}'
+ populationSeasonInfo='{getPopulationSeasonInfo()}' popSeasonInfoNotNull='{isPopSeasonInfoNotNull()}'
+ ageGroupType='{isAgeGroupType(!getPopulationSeasonInfo().getPopulation().getSpecies().getAgeGroupType())}'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JPanel/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JCheckBox id="fieldPopulationSeasonReproduction" selected='{getPopulationSeasonInfo().getReproduction()}'
+ onActionPerformed='getPopulationSeasonInfo().setReproduction(fieldPopulationSeasonReproduction.isSelected())'
+ text="isisfish.populationSeasons.Reproduction" enabled='{isPopSeasonInfoNotNull()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationSeasons.distributionSpawning" enabled='{isPopSeasonInfoNotNull()}'
+ visible='{getPopulationSeasonInfo().getReproduction()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.2'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id='fieldPopulationSeasonReproductionDistribution'
+ matrix='{getPopulationSeasonInfo() == null ? null : getPopulationSeasonInfo().getReproductionDistribution().copy()}'
+ enabled='{isPopSeasonInfoNotNull()}'
+ visible='{getPopulationSeasonInfo().getReproduction()}'
+ decorator='boxed' _bean='{PopulationSeasonInfo.class}' _method='"ReproductionDistribution"'
+ onMatrixChanged="populationSeasonReproductionDistributionMatrixChanged(event)" />
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.populationSeasons.comments" enabled='{isPopSeasonInfoNotNull()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.1'>
+ <JScrollPane>
+ <!-- jaxx.runtime.SwingUtil.getStringValue() comment can be null -->
+ <JTextArea id="fieldPopulationSeasonComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getSeasonsComment())}' onKeyReleased='getBean().setSeasonsComment(fieldPopulationSeasonComment.getText())' enabled='{isPopSeasonInfoNotNull()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='remove' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -22,24 +22,25 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
-
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
+
<script><![CDATA[
import fr.ifremer.isisfish.ui.sensitivity.SensitivityTabbedPaneListener;
-setButtonTitle(_("isisfish.input.continueGears"));
-setNextPath("$root/$gears");
-
- at Override
-public void refresh() {
-
+protected void $afterCompleteSetup() {
+ setButtonTitle(_("isisfish.input.continueGears"));
+ setNextPath("$root/$gears");
+
// install change listener
// (depends on sensitivity can't be done on constructor)
installChangeListener(populationTab);
+}
+ at Override
+public void refresh() {
// reverse ordre is no more needed
getVerifier().addCurrentPanel(populationMigrationUI, populationRecruitementUI, populationCapturabilityUI,
populationSeasonsUI, populationZoneUI, populationEquationUI, populationGroupUI, populationBasicsUI);
@@ -52,39 +53,39 @@
}
]]>
</script>
- <JPanel id='body' layout='{new BorderLayout()}'>
- <JTabbedPane id="populationTab" constraints='BorderLayout.CENTER'>
+ <JPanel id='body'>
+ <JTabbedPane id="populationTab">
<!-- Saisie des populations -->
<tab title='{_("isisfish.populationBasics.title")}'>
- <PopulationBasicsUI id='populationBasicsUI' constructorParams='this'/>
+ <PopulationBasicsUI id='populationBasicsUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<!-- Zones -->
<tab title='{_("isisfish.populationZones.title")}'>
- <PopulationZonesUI id='populationZoneUI' constructorParams='this'/>
+ <PopulationZonesUI id='populationZoneUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<!-- Saisons -->
<tab title='{_("isisfish.populationSeasons.title")}'>
- <PopulationSeasonsUI id='populationSeasonsUI' constructorParams='this'/>
+ <PopulationSeasonsUI id='populationSeasonsUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<!-- Saisie des équations -->
<tab title='{_("isisfish.populationEquation.title")}'>
- <PopulationEquationUI id='populationEquationUI' constructorParams='this'/>
+ <PopulationEquationUI id='populationEquationUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<!-- Saisie des reproductions -->
<tab title='{_("isisfish.populationRecruitment.title")}'>
- <PopulationRecruitmentUI id='populationRecruitementUI' constructorParams='this'/>
+ <PopulationRecruitmentUI id='populationRecruitementUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<!-- Saisie des groupes de population -->
<tab title='{_("isisfish.populationGroup.title")}'>
- <PopulationGroupUI id='populationGroupUI' constructorParams='this'/>
+ <PopulationGroupUI id='populationGroupUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<!--Capturabilité -->
<tab title='{_("isisfish.populationCapturability.title")}'>
- <PopulationCapturabilityUI id='populationCapturabilityUI' constructorParams='this'/>
+ <PopulationCapturabilityUI id='populationCapturabilityUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<!-- Migration -->
<tab title='{_("isisfish.populationMigration.title")}'>
- <PopulationMigrationUI id='populationMigrationUI' constructorParams='this'/>
+ <PopulationMigrationUI id='populationMigrationUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
</JTabbedPane>
</JPanel>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesEditorUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesEditorUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesEditorUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,25 +22,39 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Zone;
import fr.ifremer.isisfish.ui.input.population.ZoneListModel;
import org.nuiton.math.matrix.gui.MatrixPanelEvent;
+import org.nuiton.math.matrix.gui.MatrixPanelListener;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-/*MatrixPanelListener listener = new MatrixPanelListener() {
- @Override
- public void matrixChanged(MatrixPanelEvent event) {
- fieldPopulationMappingZoneReproZoneRecruChanged();
- }
-};*/
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ setPopulationZonesPresenceModel();
+ setFieldPopulationZonesReproductionModel(getSelectedValues(populationZonesPresence));
+ setFieldPopulationZonesRecruitmentModel(getSelectedValues(populationZonesPresence));
+ setFieldPopulationMappingZoneReproZoneRecru();
+ }
+ if (evt.getNewValue() != null) {
+ setPopulationZonesPresenceModel();
+ setFieldPopulationZonesReproductionModel(getSelectedValues(populationZonesPresence));
+ setFieldPopulationZonesRecruitmentModel(getSelectedValues(populationZonesPresence));
+ setFieldPopulationMappingZoneReproZoneRecru();
+ }
+ }
+ });
+}
protected void populationMappingZoneReproZoneRecruMatrixChanged(MatrixPanelEvent event) {
- //fieldPopulationMappingZoneReproZoneRecruChanged();
getBean().setMappingZoneReproZoneRecru(fieldPopulationMappingZoneReproZoneRecru.getMatrix().clone());
}
@@ -59,9 +73,6 @@
}
-/*protected void fieldPopulationMappingZoneReproZoneRecruChanged(){
- getBean().setMappingZoneReproZoneRecru(fieldPopulationMappingZoneReproZoneRecru.getMatrix());
-}*/
protected void setFieldPopulationMappingZoneReproZoneRecru(){
if (getBean() != null){
if (getBean().getMappingZoneReproZoneRecru() != null){
@@ -130,46 +141,48 @@
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell fill='horizontal' weightx='0.3'>
- <JLabel text="isisfish.populationZones.selectPopulationAreas" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.3'>
- <JLabel text="isisfish.populationZones.selectSpawningAreas" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.3'>
- <JLabel text="isisfish.populationZones.selectRecruitmentAreas" enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell fill='both' weightx='0.3' weighty='0.5'>
- <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <JList id="populationZonesPresence" onMouseClicked='presenceChanged()' enabled='{isActif()}'/>
- </JScrollPane>
- </cell>
- <cell fill='both' weightx='0.3' weighty='0.5'>
- <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <JList id="fieldPopulationZonesReproduction" onMouseClicked='reproductionChanged()' enabled='{isActif()}'/>
- </JScrollPane>
- </cell>
- <cell fill='both' weightx='0.3' weighty='0.5'>
- <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
- <JList id="fieldPopulationZonesRecruitment" onMouseClicked='recruitementChanged()' enabled='{isActif()}'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell columns='3' anchor='west'>
- <JLabel text="isisfish.populationZones.betweenSpawningRecruitmentAreas" enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell columns='3' fill='both' weightx='1.0' weighty='0.5'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id='fieldPopulationMappingZoneReproZoneRecru'
- constructorParams='false' enabled='{isActif()}'
- onMatrixChanged="populationMappingZoneReproZoneRecruMatrixChanged(event)" />
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.3'>
+ <JLabel text="isisfish.populationZones.selectPopulationAreas" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.3'>
+ <JLabel text="isisfish.populationZones.selectSpawningAreas" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.3'>
+ <JLabel text="isisfish.populationZones.selectRecruitmentAreas" enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='both' weightx='0.3' weighty='0.5'>
+ <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
+ <JList id="populationZonesPresence" onMouseClicked='presenceChanged()' enabled='{isActive()}'/>
+ </JScrollPane>
+ </cell>
+ <cell fill='both' weightx='0.3' weighty='0.5'>
+ <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
+ <JList id="fieldPopulationZonesReproduction" onMouseClicked='reproductionChanged()' enabled='{isActive()}'/>
+ </JScrollPane>
+ </cell>
+ <cell fill='both' weightx='0.3' weighty='0.5'>
+ <JScrollPane minimumSize='{new Dimension(0,0)}' preferredSize='{new Dimension(0,0)}'>
+ <JList id="fieldPopulationZonesRecruitment" onMouseClicked='recruitementChanged()' enabled='{isActive()}'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' anchor='west'>
+ <JLabel text="isisfish.populationZones.betweenSpawningRecruitmentAreas" enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='3' fill='both' weightx='1.0' weighty='0.5'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id='fieldPopulationMappingZoneReproZoneRecru'
+ constructorParams='false' enabled='{isActive()}'
+ onMatrixChanged="populationMappingZoneReproZoneRecruMatrixChanged(event)" />
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
\ No newline at end of file
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PopulationZonesUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,15 +22,14 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Population'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PopulationImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
@Override
public void refresh() {
@@ -39,7 +38,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((PopulationImpl) population);
+ setBean(population);
getVerifier().addCurrentPanel(popZones);
}
@@ -51,21 +50,23 @@
}
]]>
</script>
- <Table>
- <row>
- <cell columns="2" fill='both' weightx='1.0' weighty='1'>
- <PopulationZonesEditorUI id='popZones' constructorParams='this'
- bean='{getBean()}' actif='{isActif()}' decorator='boxed'
- _bean='{PopulationImpl.class}' _method='"MappingZoneReproZoneRecru"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell columns="2" fill='both' weightx='1.0' weighty='1'>
+ <PopulationZonesEditorUI id='popZones' constructorParams='this'
+ bean='{getBean()}' active='{isActive()}' decorator='boxed'
+ _bean='{Population.class}' _method='"MappingZoneReproZoneRecru"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/PortUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,48 +22,69 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Port'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.PortImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Port id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Port;
-import fr.ifremer.isisfish.entities.PortImpl;
import fr.ifremer.isisfish.entities.Cell;
import com.bbn.openmap.gui.Tool;
import com.bbn.openmap.gui.OMToolSet;
import fr.ifremer.isisfish.map.CellSelectionLayer;
import fr.ifremer.isisfish.map.CopyMapToClipboardListener;
import com.bbn.openmap.event.SelectMouseMode;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
protected OMToolSet toolSet = new OMToolSet();
-protected OpenMapEvents mapListener = null;
boolean portChanged = true;
-toolSet.setupListeners(portMap);
-toolMap.add((Tool)toolSet);
+protected void $afterCompleteSetup() {
+ toolSet.setupListeners(portMap);
+ toolMap.add((Tool)toolSet);
+
+ // add copy to clipboard support
+ portMap.addMapMouseListener(new CopyMapToClipboardListener(portMap));
+ new OpenMapEvents(portMap, new SelectMouseMode(false), CellSelectionLayer.SINGLE_SELECTION) {
+ @Override
+ public boolean mouseClicked(MouseEvent e) {
+ for (Cell c : portMap.getSelectedCells()) {
+ if (getBean() != null) {
+ if (getBean().getCell() != null) {
+ if (!getBean().getCell().getTopiaId().equals(c.getTopiaId())){
+ getBean().setCell(c);
+ return true;
+ }
+ }
+ else {
+ getBean().setCell(c);
+ return true;
+ }
+ }
+ }
+ return true;
+ }
+ };
-// add copy to clipboard support
-portMap.addMapMouseListener(new CopyMapToClipboardListener(portMap));
-
-setMapListener();
-setButtonTitle(_("isisfish.input.continueSpecies"));
-setNextPath("$root/$species");
-
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- fieldPortName.setText("");
- fieldPortComment.setText("");
+ setButtonTitle(_("isisfish.input.continueSpecies"));
+ setNextPath("$root/$species");
+
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ fieldPortName.setText("");
+ fieldPortComment.setText("");
+ }
+ if (evt.getNewValue() != null) {
+ fillList();
+ }
}
- if (evt.getNewValue() != null) {
+ });
+}
- }
- }
-});
-
@Override
public void refresh() {
Port port = getVerifier().getEntity(Port.class);
@@ -71,18 +92,16 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((PortImpl) port);
+ setBean(port);
// reload region in map
refreshRegionInMap(portMap);
-
- fillList();
}
@Override
public void setActionButtons() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "Port");
+ getVerifier().setNewButton(create, Port.class);
getVerifier().setDeleteButton(remove);
}
@@ -94,30 +113,6 @@
portChanged = true;
}
}
-protected void setMapListener() {
- if (mapListener == null) {
- mapListener = new OpenMapEvents(portMap, new SelectMouseMode(false), CellSelectionLayer.SINGLE_SELECTION) {
- @Override
- public boolean mouseClicked(MouseEvent e) {
- for (Cell c : portMap.getSelectedCells()) {
- if (getBean() != null) {
- if (getBean().getCell() != null) {
- if (!getBean().getCell().getTopiaId().equals(c.getTopiaId())){
- getBean().setCell(c);
- return true;
- }
- }
- else {
- getBean().setCell(c);
- return true;
- }
- }
- }
- return true;
- }
- };
- }
-}
protected void portChanged() {
if (portChanged) {
@@ -125,70 +120,68 @@
}
}
]]></script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <JSplitPane id="PortTab" name="Ports"
- oneTouchExpandable="true" dividerLocation="270" orientation="horizontal">
- <Table>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0' >
- <JLabel text="isisfish.port.name" enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0' >
- <JTextField id="fieldPortName" text='{SwingUtil.getStringValue(getBean().getName())}' onKeyReleased='getBean().setName(fieldPortName.getText())' enabled='{isActif()}' decorator='boxed' />
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0' >
- <JLabel text="isisfish.port.cell" enabled='{isActif()}'/>
-
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weighty='0.7' weightx='1.0'>
- <JScrollPane>
- <JList id="portCell" selectedValue='{getBean().getCell()}' selectionMode="0" onMouseClicked='portChanged()' enabled='{isActif()}' decorator='boxed' />
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JLabel text="isisfish.port.comments" enabled='{isActif()}'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weighty='0.3' weightx='1.0' >
- <JScrollPane>
- <JTextArea id="fieldPortComment" text='{SwingUtil.getStringValue(getBean().getComment())}' onKeyReleased='getBean().setComment(fieldPortComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='remove' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- <JPanel id='map' layout='{new BorderLayout()}'>
- <com.bbn.openmap.gui.ToolPanel id='toolMap' javaBean='new com.bbn.openmap.gui.ToolPanel()' constraints='BorderLayout.NORTH' decorator='boxed'/>
- <fr.ifremer.isisfish.map.IsisMapBean id='portMap' selectedCells='{getBean().getCell()}' javaBean='new fr.ifremer.isisfish.map.IsisMapBean()' constraints='BorderLayout.CENTER' selectionMode="1" decorator='boxed' fisheryRegion='{getRegion()}'/>
- </JPanel>
- </JSplitPane>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <JSplitPane oneTouchExpandable="true" dividerLocation="270" orientation="horizontal">
+ <Table>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0' >
+ <JLabel text="isisfish.port.name" enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0' >
+ <JTextField id="fieldPortName" text='{SwingUtil.getStringValue(getBean().getName())}' onKeyReleased='getBean().setName(fieldPortName.getText())' enabled='{isActive()}' decorator='boxed' />
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0' >
+ <JLabel text="isisfish.port.cell" enabled='{isActive()}'/>
+
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weighty='0.7' weightx='1.0'>
+ <JScrollPane>
+ <JAXXList id="portCell" selectedValue='{getBean().getCell()}' selectionMode="0" onMouseClicked='portChanged()' enabled='{isActive()}' decorator='boxed' />
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JLabel text="isisfish.port.comments" enabled='{isActive()}'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weighty='0.3' weightx='1.0' >
+ <JScrollPane>
+ <JTextArea id="fieldPortComment" text='{SwingUtil.getStringValue(getBean().getComment())}' onKeyReleased='getBean().setComment(fieldPortComment.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='remove' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ <JPanel id='map' layout='{new BorderLayout()}'>
+ <com.bbn.openmap.gui.ToolPanel id='toolMap' javaBean='new com.bbn.openmap.gui.ToolPanel()'
+ constraints='BorderLayout.NORTH' decorator='boxed' enabled='{getBean() != null}' />
+ <fr.ifremer.isisfish.map.IsisMapBean id='portMap' javaBean='new fr.ifremer.isisfish.map.IsisMapBean()'
+ constraints='BorderLayout.CENTER' selectionMode="{fr.ifremer.isisfish.map.CellSelectionLayer.SINGLE_SELECTION}"
+ decorator='boxed' enabled='{getBean() != null}' fisheryRegion='{getRegion()}' selectedCells='{getBean().getCell()}' />
+ </JPanel>
+ </JSplitPane>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/RangeOfValuesUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/RangeOfValuesUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/RangeOfValuesUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,19 +22,20 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Gear'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.GearImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Gear id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.types.RangeOfValues;
import fr.ifremer.isisfish.entities.Gear;
-import fr.ifremer.isisfish.entities.GearImpl;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-addPropertyChangeListener("bean", new PropertyChangeListener() {
+addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
+ if (evt.getNewValue() == null) {
fieldGearParamPossibleValue.setText("");
}
if (evt.getNewValue() != null) {
@@ -52,7 +53,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((GearImpl) gear);
+ setBean(gear);
if (getBean() != null) {
java.util.List<Object> values = new ArrayList<Object>();
@@ -79,14 +80,16 @@
}
}
]]></script>
- <Table id='body'>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JComboBox id="fieldGearParamType" onActionPerformed='gearParamChanged()' enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JTextField id="fieldGearParamPossibleValue" text='{getBean().getPossibleValue() == null ? "" : getBean().getPossibleValue().getValues()}' onKeyReleased='gearParamChanged()' enabled='{isActif()}'/>
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JAXXComboBox id="fieldGearParamType" onActionPerformed='gearParamChanged()' enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JTextField id="fieldGearParamPossibleValue" text='{getBean().getPossibleValue() == null ? "" : getBean().getPossibleValue().getValues()}' onKeyReleased='gearParamChanged()' enabled='{isActive()}'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
\ No newline at end of file
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityEditorUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityEditorUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityEditorUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,21 +22,19 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Gear'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.GearImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Gear id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.PopulationImpl id='population' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Population id='population' javaBean='null'/>
<Boolean id='selectivityPopulationSelected' javaBean='false'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Equation;
import fr.ifremer.isisfish.entities.Gear;
-import fr.ifremer.isisfish.entities.GearImpl;
import fr.ifremer.isisfish.entities.Population;
-import fr.ifremer.isisfish.entities.PopulationImpl;
import fr.ifremer.isisfish.entities.Selectivity;
import fr.ifremer.isisfish.entities.Species;
import fr.ifremer.isisfish.ui.input.gear.GearPopulationSelectivityModel;
@@ -47,7 +45,7 @@
@Override
public void mouseReleased(MouseEvent e) {
// le bouton ne doit pas s'activer dans l'analyse de sensibilite
- if (isActif()) {
+ if (isActive()) {
removeSelectivityButton.setEnabled(selectivityTable.getSelectedRow() != -1);
}
}
@@ -61,7 +59,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((GearImpl) gear);
+ setBean(gear);
if (getBean() != null) {
setSelectivityPopulationSelected(false);
@@ -71,7 +69,7 @@
getVerifier().addCurrentPanel(selectivityEquation);
// reset to false after addCurrentPanel refresh
- selectivityEquation.setActif(false);
+ selectivityEquation.setActive(false);
setSelectivityPopulationSelected(false);
removeSelectivityButton.setEnabled(false);
@@ -105,7 +103,7 @@
}
protected void addSelectivity() {
- getAction().addSelectivity((Population)getPopulation(), selectivityEquation.getEditor().getText(), getBean());
+ getAction().addSelectivity(getPopulation(), selectivityEquation.getEditor().getText(), getBean());
setSelectivityTableModel();
}
@@ -133,48 +131,49 @@
protected void selectivityChanged() {
setSelectivityPopulationSelected(fieldSelectivityPopulation.getSelectedItem() != null);
- // FIXME remove Impl reference
- setPopulation((PopulationImpl)fieldSelectivityPopulation.getSelectedItem());
+ setPopulation((Population)fieldSelectivityPopulation.getSelectedItem());
addSelectivityButton.setEnabled(isSelectivityPopulationSelected());
}
]]></script>
- <Table>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.selectivity.selectPopulation" enabled='{isActif()}' decorator='boxed' />
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldSelectivityPopulation" onActionPerformed='selectivityChanged()' enabled='{isActif()}'
- decorator='boxed' />
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0' insets="0">
- <InputOneEquationUI id='selectivityEquation' constructorParams='this'
- text='isisfish.selectivity.equation'
- bean='{getBean()}' formuleCategory='Selectivity' actif='{isSelectivityPopulationSelected()}'
- clazz='{fr.ifremer.isisfish.equation.SelectivityEquation.class}'
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.selectivity.selectPopulation" enabled='{isActive()}' decorator='boxed' />
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JComboBox id="fieldSelectivityPopulation" onActionPerformed='selectivityChanged()' enabled='{isActive()}'
decorator='boxed' />
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JButton id="addSelectivityButton" text="isisfish.common.add" onActionPerformed='addSelectivity()'
- enabled='{isSelectivityPopulationSelected()}' decorator='boxed' />
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <JScrollPane>
- <JTable id="selectivityTable" rowHeight='24' enabled='{isActif()}' decorator='boxed' />
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JButton id="removeSelectivityButton" text="isisfish.common.remove" onActionPerformed='removeSelectivity()'
- enabled='false' decorator='boxed' />
- </cell>
- </row>
- </Table>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0' insets="0">
+ <InputOneEquationUI id='selectivityEquation' constructorParams='this'
+ text='isisfish.selectivity.equation'
+ bean='{getBean()}' formuleCategory='Selectivity' active='{isSelectivityPopulationSelected()}'
+ clazz='{fr.ifremer.isisfish.equation.SelectivityEquation.class}'
+ decorator='boxed' />
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JButton id="addSelectivityButton" text="isisfish.common.add" onActionPerformed='addSelectivity()'
+ enabled='{isSelectivityPopulationSelected()}' decorator='boxed' />
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
+ <JScrollPane>
+ <JTable id="selectivityTable" rowHeight='24' enabled='{isActive()}' decorator='boxed' />
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JButton id="removeSelectivityButton" text="isisfish.common.remove" onActionPerformed='removeSelectivity()'
+ enabled='false' decorator='boxed' />
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SelectivityUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,15 +22,29 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Gear'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.GearImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Gear id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Gear;
-import fr.ifremer.isisfish.entities.GearImpl;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
+protected void $afterCompleteSetup() {
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+
+ }
+ if (evt.getNewValue() != null) {
+ getVerifier().addCurrentPanel(editor);
+ }
+ }
+ });
+}
+
@Override
public void refresh() {
Gear gear = (Gear)getVerifier().getEntity(Gear.class);
@@ -38,7 +52,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((GearImpl) gear);
+ setBean(gear);
getVerifier().addCurrentPanel(editor);
}
@@ -49,20 +63,22 @@
getVerifier().setCancelButton(cancel);
}
]]></script>
- <Table>
- <row>
- <cell columns="2" fill='both' weightx='1.0' weighty='1.0'>
- <SelectivityEditorUI id='editor' constructorParams='this' bean='{getBean()}'
- _bean='{GearImpl.class}' _method='"PopulationSelectivity"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell columns="2" fill='both' weightx='1.0' weighty='1.0'>
+ <SelectivityEditorUI id='editor' constructorParams='this' bean='{getBean()}'
+ _bean='{Gear.class}' _method='"PopulationSelectivity"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsBasicsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsBasicsUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsBasicsUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,10 +22,10 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='SetOfVessels'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.SetOfVesselsImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.SetOfVessels id='bean' javaBean='null'/>
<script><![CDATA[
@@ -36,7 +36,6 @@
import fr.ifremer.isisfish.entities.Formule;
import fr.ifremer.isisfish.entities.SetOfVessels;
import jaxx.runtime.swing.editor.NumberEditor;
-import fr.ifremer.isisfish.entities.SetOfVesselsImpl;
boolean init = false;
@@ -47,7 +46,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((SetOfVesselsImpl) setOfVessels);
+ setBean(setOfVessels);
if (getBean() != null) {
init = true;
@@ -66,7 +65,7 @@
public void setActionButtons() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "SetOfVessels");
+ getVerifier().setNewButton(create, SetOfVessels.class);
getVerifier().setDeleteButton(remove);
}
@@ -82,106 +81,108 @@
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.setOfVessels.name" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldSetOfVesselsName" text='{getBean().getName()}' onKeyReleased='getBean().setName(fieldSetOfVesselsName.getText())' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.common.port" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldSetOfVesselsPort" onActionPerformed='portChanged()' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.setOfVessels.vesselType" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldSetOfVesselsVesselType" onActionPerformed='vesselTypeChanged()' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.setOfVessels.numberOfVessels" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldSetOfVesselsNumberOfVessels' constructorParams='this'
- bean='{getBean()}' property='numberOfVessels'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{SetOfVesselsImpl.class}' _method='"NumberOfVessels"'/-->
- <JTextField id="fieldSetOfVesselsNumberOfVessels" text='{getBean().getNumberOfVessels()}'
- onKeyReleased='getBean().setNumberOfVessels(Integer.parseInt(fieldSetOfVesselsNumberOfVessels.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{SetOfVesselsImpl.class}' _method='"NumberOfVessels"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.setOfVessels.fixedCosts" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldSetOfVesselsFixedCosts' constructorParams='this'
- bean='{getBean()}' property='fixedCosts'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{SetOfVesselsImpl.class}' _method='"FixedCosts"'/-->
- <JTextField id="fieldSetOfVesselsFixedCosts" text='{getBean().getFixedCosts()}'
- onKeyReleased='getBean().setFixedCosts(Double.parseDouble(fieldSetOfVesselsFixedCosts.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{SetOfVesselsImpl.class}' _method='"FixedCosts"'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='0.3'>
- <InputOneEquationUI id='technicalEfficiency' constructorParams='this'
- text='isisfish.setOfVessels.technicalEfficiency'
- bean='{getBean()}' formuleCategory='TechnicalEfficiency' beanProperty='TechnicalEfficiencyEquation'
- clazz='{fr.ifremer.isisfish.equation.SoVTechnicalEfficiencyEquation.class}'
- decorator='boxed' _bean='{SetOfVesselsImpl.class}' _method='"TechnicalEfficiencyEquation"'/>
- </cell>
- </row>
- <row>
- <cell anchor='east'>
- <JLabel text="isisfish.setOfVessels.comments" enabled='{isActif()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.3'>
- <JScrollPane>
- <JTextArea id="fieldSetOfVesselsComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
- onKeyReleased='getBean().setComment(fieldSetOfVesselsComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JButton id='remove' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.setOfVessels.name" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldSetOfVesselsName" text='{getBean().getName()}' onKeyReleased='getBean().setName(fieldSetOfVesselsName.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.common.port" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JAXXComboBox id="fieldSetOfVesselsPort" onActionPerformed='portChanged()' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.setOfVessels.vesselType" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JAXXComboBox id="fieldSetOfVesselsVesselType" onActionPerformed='vesselTypeChanged()' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.setOfVessels.numberOfVessels" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldSetOfVesselsNumberOfVessels' constructorParams='this'
+ bean='{getBean()}' property='numberOfVessels'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{SetOfVesselsImpl.class}' _method='"NumberOfVessels"'/-->
+ <JTextField id="fieldSetOfVesselsNumberOfVessels" text='{String.valueOf(getBean().getNumberOfVessels())}'
+ onKeyReleased='getBean().setNumberOfVessels(Integer.parseInt(fieldSetOfVesselsNumberOfVessels.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{SetOfVessels.class}' _method='"NumberOfVessels"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.setOfVessels.fixedCosts" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldSetOfVesselsFixedCosts' constructorParams='this'
+ bean='{getBean()}' property='fixedCosts'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{SetOfVesselsImpl.class}' _method='"FixedCosts"'/-->
+ <JTextField id="fieldSetOfVesselsFixedCosts" text='{String.valueOf(getBean().getFixedCosts())}'
+ onKeyReleased='getBean().setFixedCosts(Double.parseDouble(fieldSetOfVesselsFixedCosts.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{SetOfVessels.class}' _method='"FixedCosts"'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='0.3'>
+ <InputOneEquationUI id='technicalEfficiency' constructorParams='this'
+ text='isisfish.setOfVessels.technicalEfficiency'
+ bean='{getBean()}' formuleCategory='TechnicalEfficiency' beanProperty='TechnicalEfficiencyEquation'
+ clazz='{fr.ifremer.isisfish.equation.SoVTechnicalEfficiencyEquation.class}'
+ decorator='boxed' _bean='{SetOfVessels.class}' _method='"TechnicalEfficiencyEquation"'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='east'>
+ <JLabel text="isisfish.setOfVessels.comments" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.3'>
+ <JScrollPane>
+ <JTextArea id="fieldSetOfVesselsComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
+ onKeyReleased='getBean().setComment(fieldSetOfVesselsComment.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JButton id='remove' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,19 +22,23 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.SetOfVessels'>
+ <fr.ifremer.isisfish.entities.SetOfVessels id='bean' javaBean='null'/>
+
<script><![CDATA[
-setButtonTitle(_("isisfish.input.continueStrategies"));
-setNextPath("$root/$strategies");
+protected void $afterCompleteSetup() {
+ setButtonTitle(_("isisfish.input.continueStrategies"));
+ setNextPath("$root/$strategies");
- at Override
-public void refresh() {
-
// install change listener
// (depends on sensitivity can't be done on constructor)
installChangeListener(setOfVesselsTab);
+}
+ at Override
+public void refresh() {
+
getVerifier().addCurrentPanel(setOfVesselsBasicsUI, effortDescriptionUI, effortParametersUI);
}
@@ -44,16 +48,16 @@
setCurrentTabActionButtons(setOfVesselsTab);
}
]]></script>
- <JPanel layout='{new BorderLayout()}'>
- <JTabbedPane id="setOfVesselsTab" constraints='BorderLayout.CENTER'>
+ <JPanel id="body">
+ <JTabbedPane id="setOfVesselsTab">
<tab title='{_("isisfish.setOfVessels.title")}'>
- <SetOfVesselsBasicsUI id='setOfVesselsBasicsUI' constructorParams='this'/>
+ <SetOfVesselsBasicsUI id='setOfVesselsBasicsUI' bean="{getBean()}" constructorParams='this'/>
</tab>
<tab title='{_("isisfish.effortDescription.title")}'>
- <EffortDescriptionUI id='effortDescriptionUI' constructorParams='this'/>
+ <EffortDescriptionUI id='effortDescriptionUI' bean="{getBean()}" constructorParams='this'/>
</tab>
<tab title='{_("isisfish.effortDescription.parametersTitle")}'>
- <EffortDescriptionParametersUI id='effortParametersUI' constructorParams='this'/>
+ <EffortDescriptionParametersUI id='effortParametersUI' bean="{getBean()}" constructorParams='this'/>
</tab>
</JTabbedPane>
</JPanel>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesStructuredUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesStructuredUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesStructuredUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,10 +22,11 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
-<Table>
- <fr.ifremer.isisfish.entities.SpeciesImpl id='bean' javaBean='null'/>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Species'>
+
+ <fr.ifremer.isisfish.entities.Species id='bean' javaBean='null'/>
<Boolean id='actif' javaBean='false'/>
+
<script><![CDATA[
@Override
@@ -45,15 +46,18 @@
}
]]>
</script>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JRadioButton id="fieldSpeciesDynamicAge" text="isisfish.species.age" selected='{getBean().getAgeGroupType()}'
- buttonGroup="structuredGroup" onItemStateChanged='dynamicChanged()' enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JRadioButton id="fieldSpeciesDynamicLength" text="isisfish.species.length" selected='{!getBean().getAgeGroupType()}'
- buttonGroup="structuredGroup" enabled='{isActif()}'/>
- </cell>
- </row>
-</Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JRadioButton id="fieldSpeciesDynamicAge" text="isisfish.species.age" selected='{getBean().getAgeGroupType()}'
+ buttonGroup="structuredGroup" onItemStateChanged='dynamicChanged()' enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JRadioButton id="fieldSpeciesDynamicLength" text="isisfish.species.length" selected='{!getBean().getAgeGroupType()}'
+ buttonGroup="structuredGroup" enabled='{isActive()}'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
\ No newline at end of file
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/SpeciesUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,31 +22,35 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Species'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.SpeciesImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Species id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Species;
-import fr.ifremer.isisfish.entities.SpeciesImpl;
import jaxx.runtime.swing.editor.NumberEditor;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-setButtonTitle(_("isisfish.input.continuePopulations"));
+protected void $afterCompleteSetup() {
+ setButtonTitle(_("isisfish.input.continuePopulations"));
+
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ fieldSpeciesName.setText("");
+ fieldSpeciesScientificName.setText("");
+ fieldSpeciesCodeRubbin.setText("");
+ fieldSpeciesCEE.setText("");
+ fieldSpeciesComment.setText("");
+ }
+ if (evt.getNewValue() != null) {
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- fieldSpeciesName.setText("");
- fieldSpeciesScientificName.setText("");
- fieldSpeciesCodeRubbin.setText("");
- fieldSpeciesCEE.setText("");
- fieldSpeciesComment.setText("");
+ }
}
- if (evt.getNewValue() != null) {
- }
- }
-});
+ });
+}
public void refresh() {
Species species = (Species)getVerifier().getEntity(Species.class);
@@ -54,7 +58,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((SpeciesImpl) species);
+ setBean(species);
if (getBean() != null) {
setNextPath("$root/$species/" + getBean().getTopiaId() + "/$populations");
@@ -67,103 +71,106 @@
public void setActionButtons() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "Species");
+ getVerifier().setNewButton(create, Species.class);
getVerifier().setDeleteButton(delete);
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell>
- <JLabel text="isisfish.species.name" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' columns='2' weightx='1.0'>
- <JTextField id="fieldSpeciesName" text='{getBean().getName()}'
- onKeyReleased='getBean().setName(fieldSpeciesName.getText())'
- enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.species.scientificName" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' columns='2' weightx='1.0'>
- <JTextField id="fieldSpeciesScientificName" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getScientificName())}'
- onKeyReleased='getBean().setScientificName(fieldSpeciesScientificName.getText())'
- enabled='{isActif()}' decorator='boxed' _bean='{SpeciesImpl.class}' _method='"ScientificName"'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.species.rubbinCode" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' columns='2' weightx='1.0'>
- <JTextField id="fieldSpeciesCodeRubbin" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getCodeRubbin())}'
- onKeyReleased='getBean().setCodeRubbin(fieldSpeciesCodeRubbin.getText())' enabled='{isActif()}'
- decorator='boxed' _bean='{SpeciesImpl.class}' _method='"CodeRubbin"'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.species.cee" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' columns='2' weightx='1.0'>
- <!--NumberEditor id='fieldSpeciesCEE' constructorParams='this'
- bean='{getBean()}' property='codeCEE'
- decorator='boxed' _bean='{SpeciesImpl.class}'
- useSign='true' _method='"CodeCEE"'/-->
- <JTextField id="fieldSpeciesCEE" text='{getBean().getCodeCEE()}'
- onKeyReleased='getBean().setCodeCEE(Integer.parseInt(fieldSpeciesCEE.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{SpeciesImpl.class}' _method='"CodeCEE"'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.species.structured" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1' columns='2'>
- <SpeciesStructuredUI bean='{getBean()}' actif='{isActif()}' decorator='boxed' _bean='{SpeciesImpl.class}' _method='"AgeGroupType"'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.species.comments" enabled='{isActif()}'/>
- </cell>
- <cell fill='both' columns='2' weightx='1.0' weighty='1.0'>
- <JScrollPane>
- <JTextArea id="fieldSpeciesComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
- onKeyReleased='getBean().setComment(fieldSpeciesComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='delete' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell>
+ <JLabel text="isisfish.species.name" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' columns='2' weightx='1.0'>
+ <JTextField id="fieldSpeciesName" text='{getBean().getName()}'
+ onKeyReleased='getBean().setName(fieldSpeciesName.getText())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.species.scientificName" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' columns='2' weightx='1.0'>
+ <JTextField id="fieldSpeciesScientificName" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getScientificName())}'
+ onKeyReleased='getBean().setScientificName(fieldSpeciesScientificName.getText())'
+ enabled='{isActive()}' decorator='boxed' _bean='{Species.class}' _method='"ScientificName"'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.species.rubbinCode" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' columns='2' weightx='1.0'>
+ <JTextField id="fieldSpeciesCodeRubbin" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getCodeRubbin())}'
+ onKeyReleased='getBean().setCodeRubbin(fieldSpeciesCodeRubbin.getText())' enabled='{isActive()}'
+ decorator='boxed' _bean='{Species.class}' _method='"CodeRubbin"'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.species.cee" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' columns='2' weightx='1.0'>
+ <!--NumberEditor id='fieldSpeciesCEE' constructorParams='this'
+ bean='{getBean()}' property='codeCEE'
+ decorator='boxed' _bean='{SpeciesImpl.class}'
+ useSign='true' _method='"CodeCEE"'/-->
+ <JTextField id="fieldSpeciesCEE" text='{String.valueOf(getBean().getCodeCEE())}'
+ onKeyReleased='getBean().setCodeCEE(Integer.parseInt(fieldSpeciesCEE.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{Species.class}' _method='"CodeCEE"'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.species.structured" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1' columns='2'>
+ <SpeciesStructuredUI bean='{getBean()}' active='{isActive()}' decorator='boxed'
+ _bean='{Species.class}' _method='"AgeGroupType"'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.species.comments" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='both' columns='2' weightx='1.0' weighty='1.0'>
+ <JScrollPane>
+ <JTextArea id="fieldSpeciesComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
+ onKeyReleased='getBean().setComment(fieldSpeciesComment.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='delete' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyMonthInfoUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,8 +22,10 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Strategy'>
+ <fr.ifremer.isisfish.entities.Strategy id='bean' javaBean='null'/>
+
<script><![CDATA[
import org.apache.commons.lang.StringUtils;
@@ -53,59 +55,59 @@
getVerifier().setCancelButton(cancel);
}
]]></script>
- <JPanel id='body' layout='{new BorderLayout()}'>
+ <JPanel id='body'>
<Table constraints='BorderLayout.CENTER'>
<row>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyJanuary' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyJanuary' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.january"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyFebuary' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyFebuary' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.february"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyMarch' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyMarch' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.march"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyApril' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyApril' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.april"))}' />
</cell>
</row>
<row>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyMay' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyMay' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.may"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyJune' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyJune' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.june"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyJuly' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyJuly' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.july"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyAugust' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyAugust' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.august"))}' />
</cell>
</row>
<row>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategySeptember' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategySeptember' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.september"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyOctober' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyOctober' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.october"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyNovember' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyNovember' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.november"))}' />
</cell>
<cell fill='both' weightx='1' weighty='1' insets='0'>
- <StrategyOneMonthInfoUI id='strategyDecember' constructorParams='this'
+ <StrategyOneMonthInfoUI id='strategyDecember' bean="{getBean()}" constructorParams='this'
strategieMonthText='{StringUtils.capitalize(_("isisfish.month.december"))}' />
</cell>
</row>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyOneMonthInfoUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,22 +22,22 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Strategy'>
<String id="strategieMonthText" javaBean='null'/>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.StrategyImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Strategy id='bean' javaBean='null'/>
- <fr.ifremer.isisfish.entities.StrategyMonthInfoImpl id='strategyMonthInfo' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.StrategyMonthInfo id='strategyMonthInfo' javaBean='null'/>
<script><![CDATA[
-import fr.ifremer.isisfish.entities.StrategyMonthInfoImpl;
import fr.ifremer.isisfish.entities.Strategy;
-import fr.ifremer.isisfish.entities.StrategyImpl;
+import fr.ifremer.isisfish.entities.StrategyMonthInfo;
import org.nuiton.math.matrix.gui.MatrixPanelEvent;
import jaxx.runtime.swing.editor.NumberEditor;
import fr.ifremer.isisfish.entities.TripType;
+import org.nuiton.math.matrix.gui.MatrixPanelListener;
protected int month = 0;
@@ -55,7 +55,7 @@
Strategy strategy = (Strategy)getVerifier().getEntity(Strategy.class);
// don't use setBean(null) here
- setBean((StrategyImpl)strategy);
+ setBean(strategy);
if (getBean() != null) {
Object[] monthInfos = getBean().getStrategyMonthInfo().toArray();
@@ -64,7 +64,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setStrategyMonthInfo(null);
- setStrategyMonthInfo((StrategyMonthInfoImpl) monthInfos[month]);
+ setStrategyMonthInfo((StrategyMonthInfo)monthInfos[month]);
getVerifier().addCurrentEntity(getStrategyMonthInfo());
if (getStrategyMonthInfo() != null) {
@@ -111,48 +111,50 @@
}
}
]]></script>
- <Table id='body'>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0' anchor='west'>
- <JLabel enabled='{isActif()}' text="{getStrategieMonthText()}" font-weight="bold"/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldStrategyMonthInfoTripType" onActionPerformed='getStrategyMonthInfo().setTripType((TripType)fieldStrategyMonthInfoTripType.getSelectedItem())'
- enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5' anchor='west'>
- <JLabel text="isisfish.strategyMonthInfo.numberOfTrips" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5' anchor='west'>
- <JLabel id='numberOfTrips' text='{getStrategyMonthInfo().getNumberOfTrips()}' enabled='{isActif()}'
- decorator='boxed' _bean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _method='"NumberOfTrips"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5' anchor='west'>
- <JLabel text="isisfish.strategyMonthInfo.minInactivityDays" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <!-- NumberEditor id='fieldStrategyMonthInfoMinInactivityDays' constructorParams='this'
- bean='{getStrategyMonthInfo()}' property='minInactivityDays'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{StrategyMonthInfoImpl.class}' _method='"MinInactivityDays"'/-->
- <JTextField id="fieldStrategyMonthInfoMinInactivityDays" text='{getStrategyMonthInfo().getMinInactivityDays()}'
- onKeyReleased='getStrategyMonthInfo().setMinInactivityDays(Double.parseDouble(fieldStrategyMonthInfoMinInactivityDays.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _method='"MinInactivityDays"'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
- <org.nuiton.math.matrix.gui.MatrixPanelEditor id="fieldStrategyMonthInfoProportion" linearModelShowDefault='{true}'
- linearModel='{true}' matrix='{getStrategyMonthInfo().getProportionMetier() == null ? null : getStrategyMonthInfo().getProportionMetier().copy()}'
- onMatrixChanged="strategyMonthInfoProportionMatrixChanged(event)"
- enabled='{isActif()}' decorator='boxed' _bean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _method='"ProportionMetier"'/>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0' anchor='west'>
+ <JLabel enabled='{isActive()}' text="{getStrategieMonthText()}" font-weight="bold"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JAXXComboBox id="fieldStrategyMonthInfoTripType" onActionPerformed='getStrategyMonthInfo().setTripType((TripType)fieldStrategyMonthInfoTripType.getSelectedItem())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5' anchor='west'>
+ <JLabel text="isisfish.strategyMonthInfo.numberOfTrips" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5' anchor='west'>
+ <JLabel id='numberOfTrips' text='{String.valueOf(getStrategyMonthInfo().getNumberOfTrips())}' enabled='{isActive()}'
+ decorator='boxed' _bean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _method='"NumberOfTrips"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5' anchor='west'>
+ <JLabel text="isisfish.strategyMonthInfo.minInactivityDays" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <!-- NumberEditor id='fieldStrategyMonthInfoMinInactivityDays' constructorParams='this'
+ bean='{getStrategyMonthInfo()}' property='minInactivityDays'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{StrategyMonthInfoImpl.class}' _method='"MinInactivityDays"'/-->
+ <JTextField id="fieldStrategyMonthInfoMinInactivityDays" text='{String.valueOf(getStrategyMonthInfo().getMinInactivityDays())}'
+ onKeyReleased='getStrategyMonthInfo().setMinInactivityDays(Double.parseDouble(fieldStrategyMonthInfoMinInactivityDays.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _method='"MinInactivityDays"'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weightx='1.0' weighty='1.0'>
+ <org.nuiton.math.matrix.gui.MatrixPanelEditor id="fieldStrategyMonthInfoProportion" linearModelShowDefault='{true}'
+ linearModel='{true}' matrix='{getStrategyMonthInfo().getProportionMetier() == null ? null : getStrategyMonthInfo().getProportionMetier().copy()}'
+ onMatrixChanged="strategyMonthInfoProportionMatrixChanged(event)"
+ enabled='{isActive()}' decorator='boxed' _bean='{fr.ifremer.isisfish.entities.StrategyMonthInfoImpl.class}' _method='"ProportionMetier"'/>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyTabUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,14 +22,13 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Strategy'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.StrategyImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Strategy id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.Equation;
-import fr.ifremer.isisfish.entities.StrategyImpl;
import fr.ifremer.isisfish.entities.Strategy;
import fr.ifremer.isisfish.entities.Formule;
import fr.ifremer.isisfish.entities.SetOfVessels;
@@ -43,14 +42,14 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((StrategyImpl) strategy);
+ setBean(strategy);
if (getBean() != null) {
setSetOfVesselsModel();
//fieldStrategyProportionSetOfVessels.init();
// code to replace bindings :
- strategyInactivity.setActif(isActif() && getBean().getInactivityEquationUsed());
+ strategyInactivity.setActive(isActive() && getBean().getInactivityEquationUsed());
getVerifier().addCurrentPanel(strategyInactivity);
}
@@ -62,7 +61,7 @@
fieldStrategyComment.setText("");
// code to replace bindings :
- strategyInactivity.setActif(isActif());
+ strategyInactivity.setActive(isActive());
}
}
@@ -70,7 +69,7 @@
public void setActionButtons() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "Strategy");
+ getVerifier().setNewButton(create, Strategy.class);
getVerifier().setDeleteButton(remove);
}
@@ -88,96 +87,98 @@
protected void inactivityEquationActionPerformed() {
boolean checked = fieldUseEquationInactivity.isSelected();
getBean().setInactivityEquationUsed(checked);
- strategyInactivity.setActif(checked);
+ strategyInactivity.setActive(checked);
}
]]></script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell anchor='west'>
- <JLabel text="isisfish.strategy.name" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldStrategyName" text='{getBean().getName()}' onKeyReleased='getBean().setName(fieldStrategyName.getText())' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel text="isisfish.common.setOfVessels" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JComboBox id="fieldStrategySetOfVessels" onActionPerformed='getBean().setSetOfVessels((SetOfVessels)fieldStrategySetOfVessels.getSelectedItem())' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel text="isisfish.strategy.proportionSetOfVessels" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!-- NumberEditor id='fieldStrategyProportionSetOfVessels' constructorParams='this'
- bean='{getBean()}' property='proportionSetOfVessels'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{StrategyImpl.class}' _method='"ProportionSetOfVessels"'/-->
- <JTextField id="fieldStrategyProportionSetOfVessels" text='{getBean().getProportionSetOfVessels()}'
- onKeyReleased='getBean().setProportionSetOfVessels(Double.parseDouble(fieldStrategyProportionSetOfVessels.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{StrategyImpl.class}' _method='"ProportionSetOfVessels"'/>
- </cell>
- </row>
- <row>
- <cell>
- <JPanel/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JCheckBox id="fieldUseEquationInactivity" selected='{getBean().getInactivityEquationUsed()}'
- text="isisfish.strategy.inactivityEquationUsed"
- onActionPerformed='inactivityEquationActionPerformed()' enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell columns="2" fill='both' weightx='1.0' weighty='0.5'>
- <InputOneEquationUI id="strategyInactivity" constructorParams='this'
- text='isisfish.strategy.inactivity'
- bean='{getBean()}' formuleCategory='Inactivity' beanProperty='InactivityEquation'
- clazz='{fr.ifremer.isisfish.equation.StrategyInactivityEquation.class}'
- decorator='boxed' _bean='{StrategyImpl.class}' _method='"Inactivity"'/> <!-- bindings not work well actif='{getBean().getInactivityEquationUsed()}' -->
- </cell>
- </row>
- <row>
- <cell anchor='west'>
- <JLabel text="isisfish.strategy.comments" enabled='{isActif()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.5'>
- <JScrollPane>
- <JTextArea id="fieldStrategyComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}' onKeyReleased='getBean().setComment(fieldStrategyComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='remove' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell anchor='west'>
+ <JLabel text="isisfish.strategy.name" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldStrategyName" text='{getBean().getName()}' onKeyReleased='getBean().setName(fieldStrategyName.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel text="isisfish.common.setOfVessels" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JAXXComboBox id="fieldStrategySetOfVessels" onActionPerformed='getBean().setSetOfVessels((SetOfVessels)fieldStrategySetOfVessels.getSelectedItem())' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel text="isisfish.strategy.proportionSetOfVessels" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!-- NumberEditor id='fieldStrategyProportionSetOfVessels' constructorParams='this'
+ bean='{getBean()}' property='proportionSetOfVessels'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{StrategyImpl.class}' _method='"ProportionSetOfVessels"'/-->
+ <JTextField id="fieldStrategyProportionSetOfVessels" text='{String.valueOf(getBean().getProportionSetOfVessels())}'
+ onKeyReleased='getBean().setProportionSetOfVessels(Double.parseDouble(fieldStrategyProportionSetOfVessels.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{Strategy.class}' _method='"ProportionSetOfVessels"'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JPanel/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JCheckBox id="fieldUseEquationInactivity" selected='{getBean().getInactivityEquationUsed()}'
+ text="isisfish.strategy.inactivityEquationUsed"
+ onActionPerformed='inactivityEquationActionPerformed()' enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns="2" fill='both' weightx='1.0' weighty='0.5'>
+ <InputOneEquationUI id="strategyInactivity" constructorParams='this'
+ text='isisfish.strategy.inactivity'
+ bean='{getBean()}' formuleCategory='Inactivity' beanProperty='InactivityEquation'
+ clazz='{fr.ifremer.isisfish.equation.StrategyInactivityEquation.class}'
+ decorator='boxed' _bean='{Strategy.class}' _method='"Inactivity"'/> <!-- bindings not work well actif='{getBean().getInactivityEquationUsed()}' -->
+ </cell>
+ </row>
+ <row>
+ <cell anchor='west'>
+ <JLabel text="isisfish.strategy.comments" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.5'>
+ <JScrollPane>
+ <JTextArea id="fieldStrategyComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}' onKeyReleased='getBean().setComment(fieldStrategyComment.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='remove' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,14 +22,18 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='fr.ifremer.isisfish.entities.Strategy'>
+
+ <fr.ifremer.isisfish.entities.Strategy id='bean' javaBean='null'/>
+
<script><![CDATA[
- at Override
-public void refresh() {
-
+protected void $afterCompleteSetup() {
// install change listener
// (depends on sensitivity can't be done on constructor)
installChangeListener(strategyTab);
+}
+ at Override
+public void refresh() {
getVerifier().addCurrentPanel(strategyMonthInfoUI, strategyTabUI);
}
@@ -40,13 +44,13 @@
setCurrentTabActionButtons(strategyTab);
}
]]></script>
- <JPanel layout='{new BorderLayout()}'>
- <JTabbedPane id="strategyTab" constraints='BorderLayout.CENTER'>
+ <JPanel id="body">
+ <JTabbedPane id="strategyTab">
<tab title='isisfish.strategy.title'>
- <StrategyTabUI id='strategyTabUI' constructorParams='this'/>
+ <StrategyTabUI id='strategyTabUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
<tab title='isisfish.strategyMonthInfo.title'>
- <StrategyMonthInfoUI id='strategyMonthInfoUI' constructorParams='this'/>
+ <StrategyMonthInfoUI id='strategyMonthInfoUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/>
</tab>
</JTabbedPane>
</JPanel>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/TripTypeUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,15 +22,16 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='TripType'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.TripTypeImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.TripType id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.TripType;
-import fr.ifremer.isisfish.entities.TripTypeImpl;
import fr.ifremer.isisfish.types.TimeUnit;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
setButtonTitle(_("isisfish.input.continueVesselTypes"));
setNextPath("$root/$vesselTypes");
@@ -59,88 +60,90 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((TripTypeImpl) tripType);
+ setBean(tripType);
}
@Override
public void setActionButtons() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "TripType");
+ getVerifier().setNewButton(create, TripType.class);
getVerifier().setDeleteButton(delete);
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell>
- <JLabel text="isisfish.tripType.name" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldTripTypeName" text='{getBean().getName()}'
- onKeyReleased='getBean().setName(fieldTripTypeName.getText())'
- enabled='{isActif()}' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.tripType.duration" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldTripTypeDuration" text='{getBean().getTripDuration().getHour()}' toolTipText="isisfish.common.duration.inhours"
- onKeyReleased='getBean().setTripDuration(new TimeUnit(Double.parseDouble(fieldTripTypeDuration.getText()) * 3600))'
- enabled='{isActif()}' decorator='boxed' _bean='{TripTypeImpl.class}' _method='"TripDuration"'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.tripType.minTime" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldTripTypeMinTimeBetweenTrip" text='{getBean().getMinTimeBetweenTrip().getHour()}'
- onKeyReleased='getBean().setMinTimeBetweenTrip(new TimeUnit(Double.parseDouble(fieldTripTypeMinTimeBetweenTrip.getText()) * 3600))'
- enabled='{isActif()}' decorator='boxed' _bean='{TripTypeImpl.class}' _method='"MinTimeBetweenTrip"'/>
- </cell>
- </row>
- <row>
- <cell>
- <JLabel text="isisfish.tripType.comments" enabled='{isActif()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <JScrollPane>
- <JTextArea id="fieldTripTypeComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
- onKeyReleased='getBean().setComment(fieldTripTypeComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='delete' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell>
+ <JLabel text="isisfish.tripType.name" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldTripTypeName" text='{getBean().getName()}'
+ onKeyReleased='getBean().setName(fieldTripTypeName.getText())'
+ enabled='{isActive()}' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.tripType.duration" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldTripTypeDuration" text='{String.valueOf(getBean().getTripDuration().getHour())}' toolTipText="isisfish.common.duration.inhours"
+ onKeyReleased='getBean().setTripDuration(new TimeUnit(Double.parseDouble(fieldTripTypeDuration.getText()) * 3600))'
+ enabled='{isActive()}' decorator='boxed' _bean='{TripType.class}' _method='"TripDuration"'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.tripType.minTime" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldTripTypeMinTimeBetweenTrip" text='{String.valueOf(getBean().getMinTimeBetweenTrip().getHour())}'
+ onKeyReleased='getBean().setMinTimeBetweenTrip(new TimeUnit(Double.parseDouble(fieldTripTypeMinTimeBetweenTrip.getText()) * 3600))'
+ enabled='{isActive()}' decorator='boxed' _bean='{TripType.class}' _method='"MinTimeBetweenTrip"'/>
+ </cell>
+ </row>
+ <row>
+ <cell>
+ <JLabel text="isisfish.tripType.comments" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <JScrollPane>
+ <JTextArea id="fieldTripTypeComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
+ onKeyReleased='getBean().setComment(fieldTripTypeComment.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='delete' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/VesselTypeUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -22,20 +22,20 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='VesselType'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.VesselTypeImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.VesselType id='bean' javaBean='null'/>
<script><![CDATA[
import fr.ifremer.isisfish.entities.VesselType;
-import fr.ifremer.isisfish.entities.VesselTypeImpl;
import fr.ifremer.isisfish.entities.TripType;
import fr.ifremer.isisfish.types.TimeUnit;
import fr.ifremer.isisfish.ui.input.triptype.TripTypeListModel;
import jaxx.runtime.swing.editor.NumberEditor;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
-
setButtonTitle(_("isisfish.input.continueSetOfVessels"));
setNextPath("$root/$setOfVessels");
addPropertyChangeListener("bean", new PropertyChangeListener() {
@@ -63,7 +63,7 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((VesselTypeImpl) vesselType);
+ setBean(vesselType);
if (getBean() != null) {
setListModel();
@@ -83,7 +83,7 @@
public void setActionButtons() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "VesselType");
+ getVerifier().setNewButton(create, VesselType.class);
getVerifier().setDeleteButton(delete);
}
@@ -104,147 +104,149 @@
getBean().setTripType(tripTypes);
}
]]></script>
- <Table id='body' constraints='BorderLayout.CENTER'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.vesselType.name" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldVesselTypeName" text='{getBean().getName()}' enabled='{isActif()}'
- onKeyReleased='getBean().setName(fieldVesselTypeName.getText())' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.vesselType.length" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldVesselTypeLength' constructorParams='this'
- bean='{getBean()}' property='length'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{VesselTypeImpl.class}' _method='"Length"'/-->
- <JTextField id="fieldVesselTypeLength" text='{getBean().getLength()}' enabled='{isActif()}'
- onKeyReleased='getBean().setLength(Integer.parseInt(fieldVesselTypeLength.getText()))'
- decorator='boxed' _bean='{VesselTypeImpl.class}' _method='"Length"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.vesselType.speed" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldVesselTypeSpeed' constructorParams='this'
- bean='{getBean()}' property='speed' useSign='true'
- enabled='{isActif()}' decorator='boxed'
- _bean='{VesselTypeImpl.class}' _method='"Speed"'/-->
- <JTextField id="fieldVesselTypeSpeed" text='{getBean().getSpeed()}' enabled='{isActif()}'
- onKeyReleased='getBean().setSpeed(Double.parseDouble(fieldVesselTypeSpeed.getText()))'
- decorator='boxed' _bean='{VesselTypeImpl.class}' _method='"Speed"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.vesselType.maxDuration" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <JTextField id="fieldVesselTypeMaxTripDuration" text='{getBean().getMaxTripDuration().getHour()}' toolTipText="isisfish.common.duration.inhours"
- enabled='{isActif()}' onKeyReleased='getBean().setMaxTripDuration(new TimeUnit(Double.parseDouble(fieldVesselTypeMaxTripDuration.getText()) * 3600))'
- decorator='boxed' _bean='{VesselTypeImpl.class}' _method='"MaxTripDuration"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.vesselType.activityRange" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldVesselTypeActivityRange' constructorParams='this'
- bean='{getBean()}' property='activityRange'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{VesselTypeImpl.class}' _method='"ActivityRange"'/-->
- <JTextField id="fieldVesselTypeActivityRange" text='{getBean().getActivityRange()}' enabled='{isActif()}'
- onKeyReleased='getBean().setActivityRange(Double.parseDouble(fieldVesselTypeActivityRange.getText()))'
- decorator='boxed' _bean='{VesselTypeImpl.class}' _method='"ActivityRange"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.vesselType.miniCrew" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldVesselTypeMinCrewSize' constructorParams='this'
- bean='{getBean()}' property='minCrewSize' useSign='true'
- enabled='{isActif()}' decorator='boxed' _bean='{VesselTypeImpl.class}'
- _method='"MinCrewSize"'/-->
- <JTextField id="fieldVesselTypeMinCrewSize" text='{getBean().getMinCrewSize()}' enabled='{isActif()}'
- onKeyReleased='getBean().setMinCrewSize(Integer.parseInt(fieldVesselTypeMinCrewSize.getText()))'
- decorator='boxed' _bean='{VesselTypeImpl.class}' _method='"MinCrewSize"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.vesselType.fuelCost" enabled='{isActif()}'/>
- </cell>
- <cell fill='horizontal' weightx='1.0'>
- <!--NumberEditor id='fieldVesselTypeUnitFuelCostOfTravel' constructorParams='this'
- bean='{getBean()}' property='unitFuelCostOfTravel'
- enabled='{isActif()}' decorator='boxed' useSign='true'
- _bean='{VesselTypeImpl.class}' _method='"UnitFuelCostOfTravel"'/-->
- <JTextField id="fieldVesselTypeUnitFuelCostOfTravel" text='{getBean().getUnitFuelCostOfTravel()}'
- onKeyReleased='getBean().setUnitFuelCostOfTravel(Double.parseDouble(fieldVesselTypeUnitFuelCostOfTravel.getText()))'
- enabled='{isActif()}' decorator='boxed' _bean='{VesselTypeImpl.class}' _method='"UnitFuelCostOfTravel"'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.common.tripType" enabled='{isActif()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.7'>
- <JScrollPane>
- <JList id="vesselTypeTripType" selectedValues='{getBean().getTripType() == null ? null : getBean().getTripType().toArray()}'
- onMouseClicked='tripTypeChanged()'
- cellRenderer="{new fr.ifremer.isisfish.ui.input.triptype.TripTypeListRenderer()}"
- enabled='{isActif()}' decorator='boxed' _bean='{VesselTypeImpl.class}' _method='"TripType"'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' anchor='east'>
- <JLabel text="isisfish.vesselType.comments" enabled='{isActif()}'/>
- </cell>
- <cell fill='both' weightx='1.0' weighty='0.3'>
- <JScrollPane>
- <JTextArea id="fieldVesselTypeComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
- onKeyReleased='getBean().setComment(fieldVesselTypeComment.getText())' enabled='{isActif()}' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- <row>
- <cell fill='both' weightx='1.0'>
- <Table>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='delete' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- </cell>
- </row>
- </Table>
+ <JPanel id="body">
+ <Table>
+ <row>
+ <cell fill='both' weightx='1.0' weighty='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.vesselType.name" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldVesselTypeName" text='{getBean().getName()}' enabled='{isActive()}'
+ onKeyReleased='getBean().setName(fieldVesselTypeName.getText())' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.vesselType.length" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldVesselTypeLength' constructorParams='this'
+ bean='{getBean()}' property='length'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{VesselType.class}' _method='"Length"'/-->
+ <JTextField id="fieldVesselTypeLength" text='{String.valueOf(getBean().getLength())}' enabled='{isActive()}'
+ onKeyReleased='getBean().setLength(Integer.parseInt(fieldVesselTypeLength.getText()))'
+ decorator='boxed' _bean='{VesselType.class}' _method='"Length"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.vesselType.speed" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldVesselTypeSpeed' constructorParams='this'
+ bean='{getBean()}' property='speed' useSign='true'
+ enabled='{isActive()}' decorator='boxed'
+ _bean='{VesselType.class}' _method='"Speed"'/-->
+ <JTextField id="fieldVesselTypeSpeed" text='{String.valueOf(getBean().getSpeed())}' enabled='{isActive()}'
+ onKeyReleased='getBean().setSpeed(Double.parseDouble(fieldVesselTypeSpeed.getText()))'
+ decorator='boxed' _bean='{VesselType.class}' _method='"Speed"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.vesselType.maxDuration" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldVesselTypeMaxTripDuration" text='{String.valueOf(getBean().getMaxTripDuration().getHour())}' toolTipText="isisfish.common.duration.inhours"
+ enabled='{isActive()}' onKeyReleased='getBean().setMaxTripDuration(new TimeUnit(Double.parseDouble(fieldVesselTypeMaxTripDuration.getText()) * 3600))'
+ decorator='boxed' _bean='{VesselType.class}' _method='"MaxTripDuration"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.vesselType.activityRange" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldVesselTypeActivityRange' constructorParams='this'
+ bean='{getBean()}' property='activityRange'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{VesselType.class}' _method='"ActivityRange"'/-->
+ <JTextField id="fieldVesselTypeActivityRange" text='{String.valueOf(getBean().getActivityRange())}' enabled='{isActive()}'
+ onKeyReleased='getBean().setActivityRange(Double.parseDouble(fieldVesselTypeActivityRange.getText()))'
+ decorator='boxed' _bean='{VesselType.class}' _method='"ActivityRange"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.vesselType.miniCrew" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldVesselTypeMinCrewSize' constructorParams='this'
+ bean='{getBean()}' property='minCrewSize' useSign='true'
+ enabled='{isActive()}' decorator='boxed' _bean='{VesselType.class}'
+ _method='"MinCrewSize"'/-->
+ <JTextField id="fieldVesselTypeMinCrewSize" text='{String.valueOf(getBean().getMinCrewSize())}' enabled='{isActive()}'
+ onKeyReleased='getBean().setMinCrewSize(Integer.parseInt(fieldVesselTypeMinCrewSize.getText()))'
+ decorator='boxed' _bean='{VesselType.class}' _method='"MinCrewSize"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.vesselType.fuelCost" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='horizontal' weightx='1.0'>
+ <!--NumberEditor id='fieldVesselTypeUnitFuelCostOfTravel' constructorParams='this'
+ bean='{getBean()}' property='unitFuelCostOfTravel'
+ enabled='{isActive()}' decorator='boxed' useSign='true'
+ _bean='{VesselType.class}' _method='"UnitFuelCostOfTravel"'/-->
+ <JTextField id="fieldVesselTypeUnitFuelCostOfTravel" text='{String.valueOf(getBean().getUnitFuelCostOfTravel())}'
+ onKeyReleased='getBean().setUnitFuelCostOfTravel(Double.parseDouble(fieldVesselTypeUnitFuelCostOfTravel.getText()))'
+ enabled='{isActive()}' decorator='boxed' _bean='{VesselType.class}' _method='"UnitFuelCostOfTravel"'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.common.tripType" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.7'>
+ <JScrollPane>
+ <JAXXList id="vesselTypeTripType" selectedValues='{getBean().getTripType() == null ? null : getBean().getTripType().toArray()}'
+ onMouseClicked='tripTypeChanged()'
+ cellRenderer="{new fr.ifremer.isisfish.ui.input.triptype.TripTypeListRenderer()}"
+ enabled='{isActive()}' decorator='boxed' _bean='{VesselType.class}' _method='"TripType"'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' anchor='east'>
+ <JLabel text="isisfish.vesselType.comments" enabled='{isActive()}'/>
+ </cell>
+ <cell fill='both' weightx='1.0' weighty='0.3'>
+ <JScrollPane>
+ <JTextArea id="fieldVesselTypeComment" text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
+ onKeyReleased='getBean().setComment(fieldVesselTypeComment.getText())' enabled='{isActive()}' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ <row>
+ <cell fill='both' weightx='1.0'>
+ <Table>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='delete' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ </cell>
+ </row>
+ </Table>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/WizardGroupCreationUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/WizardGroupCreationUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/WizardGroupCreationUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
$Id$
$HeadURL$
%%
- Copyright (C) 2009 - 2010 Ifremer, Code Lutin
+ Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric
%%
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
@@ -30,8 +30,10 @@
import fr.ifremer.isisfish.IsisFishDAOHelper;
import fr.ifremer.isisfish.entities.Equation;
import fr.ifremer.isisfish.entities.Population;
+ import fr.ifremer.isisfish.entities.PopulationImpl;
import fr.ifremer.isisfish.entities.PopulationGroup;
import fr.ifremer.isisfish.entities.PopulationGroupDAO;
+ import fr.ifremer.isisfish.entities.PopulationDAO;
protected String current = null;
protected boolean ageType = false;
@@ -232,21 +234,21 @@
pop.setMaturityGroup(null);
// remove all old group
- TopiaContext isisContext = pop.getTopiaContext();
+ TopiaContext isisContext = ((PopulationImpl)pop).getTopiaContext();
pop.clearPopulationGroup();
- PopulationGroupDAO dao = IsisFishDAOHelper.getPopulationGroupDAO(isisContext);
+ PopulationGroupDAO populationGroupDAO = IsisFishDAOHelper.getPopulationGroupDAO(isisContext);
if (isAgeType()) {
double ageFirst = getFirst();
double ageLast = getLast();
for (int id=0; id + ageFirst <= ageLast; id++) {
- PopulationGroup group = dao.create();
+ PopulationGroup group = populationGroupDAO.create();
group.setId(id);
group.setPopulation(pop);
group.setAge(ageFirst + id);
pop.addPopulationGroup(group);
- group.update();
+ populationGroupDAO.update(group);
}
} else if (isInputType()) {
double minLength = getFirst();
@@ -254,13 +256,13 @@
for(int i=0; i<values.length; i++){
if (!"".equals(values[i])) {
double length = Double.parseDouble(values[i]);
- PopulationGroup group = dao.create();
+ PopulationGroup group = populationGroupDAO.create();
group.setId(i);
group.setPopulation(pop);
group.setMinLength(minLength);
group.setMaxLength(length);
pop.addPopulationGroup(group);
- group.update();
+ populationGroupDAO.update(group);
minLength = length;
}
}
@@ -279,13 +281,13 @@
double maxLength = minLength;
for(int i=0; i<numberOfGroup; i++){
maxLength = minLength + step;
- PopulationGroup group = dao.create();
+ PopulationGroup group = populationGroupDAO.create();
group.setId(i);
group.setPopulation(pop);
group.setMinLength(minLength);
group.setMaxLength(maxLength);
pop.addPopulationGroup(group);
- group.update();
+ populationGroupDAO.update(group);
minLength = maxLength;
}
} else if (isGrowthCurveType()) {
@@ -301,7 +303,7 @@
double Lmin = minLength;
for(int i=0; i<numberOfGroup; i++){
// on creer la classe avec une valeur Lmax fausses ...
- PopulationGroup group = dao.create();
+ PopulationGroup group = populationGroupDAO.create();
group.setId(i);
group.setPopulation(pop);
group.setMinLength(Lmin);
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/ZoneUI.jaxx 2011-03-15 15:50:27 UTC (rev 3158)
@@ -22,51 +22,60 @@
<http://www.gnu.org/licenses/gpl-2.0.html>.
#L%
-->
-<fr.ifremer.isisfish.ui.input.InputContentUI>
+<fr.ifremer.isisfish.ui.input.InputContentUI superGenericType='Zone'>
<!-- bean property -->
- <fr.ifremer.isisfish.entities.ZoneImpl id='bean' javaBean='null'/>
+ <fr.ifremer.isisfish.entities.Zone id='bean' javaBean='null'/>
<script><![CDATA[
import javax.swing.event.ListSelectionEvent;
import fr.ifremer.isisfish.entities.Cell;
import fr.ifremer.isisfish.entities.Zone;
-import fr.ifremer.isisfish.entities.ZoneImpl;
import fr.ifremer.isisfish.map.CellSelectionLayer;
import fr.ifremer.isisfish.map.CopyMapToClipboardListener;
import com.bbn.openmap.event.SelectMouseMode;
import com.bbn.openmap.gui.Tool;
import com.bbn.openmap.gui.OMToolSet;
+import java.beans.PropertyChangeEvent;
+import java.beans.PropertyChangeListener;
protected OMToolSet toolSet = new OMToolSet();
-protected OpenMapEvents mapListener = null;
-toolSet.setupListeners(zoneMap);
-toolMap.add((Tool)toolSet);
+protected void $afterCompleteSetup() {
+ toolSet.setupListeners(zoneMap);
+ toolMap.add((Tool)toolSet);
-// add copy to clipboard support
-zoneMap.addMapMouseListener(new CopyMapToClipboardListener(zoneMap));
+ // add copy to clipboard support
+ zoneMap.addMapMouseListener(new CopyMapToClipboardListener(zoneMap));
+ new OpenMapEvents(zoneMap, new SelectMouseMode(false), CellSelectionLayer.MULT_SELECTION) {
+ @Override
+ public boolean mouseClicked(MouseEvent e) {
+ getBean().setCell(zoneMap.getSelectedCells());
+ if (getBean().getCell() != null){
+ zoneCells.setSelectedValues(getBean().getCell().toArray());
+ }
+ return true;
+ }
+ };
-zoneMap.addMapMouseListener(getMapListener());
-setButtonTitle(_("isisfish.input.continuePorts"));
-setNextPath("$root/$ports");
+ setButtonTitle(_("isisfish.input.continuePorts"));
+ setNextPath("$root/$ports");
-addPropertyChangeListener("bean", new PropertyChangeListener() {
- public void propertyChange(PropertyChangeEvent evt) {
- if (log.isDebugEnabled()) {
- log.debug("bean changed " + evt.getOldValue() + " : " + evt.getNewValue());
+ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() {
+ public void propertyChange(PropertyChangeEvent evt) {
+ if (evt.getNewValue() == null) {
+ fieldZoneName.setText("");
+ fieldZoneComment.setText("");
+ zoneMap.setSelectedCells((Cell)null);
+ }
+ if (evt.getNewValue() != null) {
+ setZoneCells();
+ zoneMap.setSelectedCells(getBean().getCell());
+ }
}
- if (evt.getOldValue() != null || evt.getNewValue() == null) {
- fieldZoneName.setText("");
- fieldZoneComment.setText("");
- zoneMap.setSelectedCells((Cell)null);
- }
- if (evt.getNewValue() != null) {
+ });
+}
- }
- }
-});
-
@Override
public void refresh() {
Zone zone = getVerifier().getEntity(Zone.class);
@@ -74,22 +83,17 @@
// add null before, for second to be considered as a changed event
// otherwize, setBean has no effect
setBean(null);
- setBean((ZoneImpl) zone);
+ setBean(zone);
// reload region in map
refreshRegionInMap(zoneMap);
-
- if (getBean() != null) {
- setZoneCells();
- zoneMap.setSelectedCells(getBean().getCell());
- }
}
@Override
public void setActionButtons() {
getVerifier().setSaveButton(save);
getVerifier().setCancelButton(cancel);
- getVerifier().setNewButton(create, "Zone");
+ getVerifier().setNewButton(create, Zone.class);
getVerifier().setDeleteButton(remove);
}
@@ -104,27 +108,12 @@
}
}
}
-protected OpenMapEvents getMapListener() {
- if (mapListener == null) {
- mapListener = new OpenMapEvents(zoneMap, new SelectMouseMode(false), CellSelectionLayer.MULT_SELECTION) {
- @Override
- public boolean mouseClicked(MouseEvent e) {
- getBean().setCell(zoneMap.getSelectedCells());
- if (getBean().getCell() != null){
- zoneCells.setSelectedValues(getBean().getCell().toArray());
- }
- return true;
- }
- };
- }
- return mapListener;
-}
protected void zoneCellsChange(ListSelectionEvent event) {
// sans ca, ca boucle (modification depuis la carte)
if (event.getValueIsAdjusting()) {
// pas a faie dans le cas d'une AS
- if (isActif()) {
+ if (isActive()) {
java.util.List<Cell> cells = new ArrayList<Cell>();
for (Object o : zoneCells.getSelectedValues()) {
cells.add((Cell) o);
@@ -140,87 +129,79 @@
}
]]>
</script>
- <Table id='body'>
- <row>
- <cell fill='both' weightx='1.0' weighty='1.0'>
- <JSplitPane id="ZoneTab" name="Zones"
- oneTouchExpandable="true" dividerLocation="200" orientation="horizontal">
- <Table>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JLabel enabled='{isActif()}' text="isisfish.zone.name"/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JTextField id="fieldZoneName"
- text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getName())}'
- enabled='{isActif()}' decorator='boxed'
- onKeyReleased='getBean().setName(fieldZoneName.getText())'/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JLabel enabled='{isActif()}' text="isisfish.zone.cells"/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weighty='0.7' weightx='1.0'>
- <JScrollPane>
- <!-- FIXME le binding genere un tas d'envenement multiples ! -->
- <JList id="zoneCells" enabled='{isActif()}' selectedValues='{getBean().getCell() == null ? null : getBean().getCell().toArray()}'
- onValueChanged='zoneCellsChange(event)' decorator='boxed'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='horizontal' weightx='1.0'>
- <JLabel enabled='{isActif()}' text="isisfish.zone.comments"/>
- </cell>
- </row>
- <row>
- <cell columns='2' fill='both' weighty='0.3' weightx='1.0'>
- <JScrollPane>
- <JTextArea id="fieldZoneComment"
- text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
- enabled='{isActif()}'
- decorator='boxed'
- onKeyReleased='getBean().setComment(fieldZoneComment.getText())'/>
- </JScrollPane>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='save' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='cancel' decorator='boxed'/>
- </cell>
- </row>
- <row>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='create' decorator='boxed'/>
- </cell>
- <cell fill='horizontal' weightx='0.5'>
- <JButton id='remove' decorator='boxed'/>
- </cell>
- </row>
- </Table>
- <JPanel id='map' layout='{new BorderLayout()}'>
- <com.bbn.openmap.gui.ToolPanel id='toolMap'
- javaBean='new com.bbn.openmap.gui.ToolPanel()'
- decorator='boxed'
- constraints='BorderLayout.NORTH'/>
- <fr.ifremer.isisfish.map.IsisMapBean id='zoneMap'
- javaBean='new fr.ifremer.isisfish.map.IsisMapBean()'
- selectionMode="2"
- fisheryRegion='{getRegion()}'
- selectedCells='{getBean().getCell()}'
- decorator='boxed'
- constraints='BorderLayout.CENTER'/>
- </JPanel>
- </JSplitPane>
- </cell>
- </row>
- </Table>
+ <JPanel id='body'>
+ <JSplitPane oneTouchExpandable="true" dividerLocation="200" orientation="horizontal">
+ <Table>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JLabel enabled='{isActive()}' text="isisfish.zone.name"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JTextField id="fieldZoneName"
+ text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getName())}'
+ enabled='{isActive()}' decorator='boxed'
+ onKeyReleased='getBean().setName(fieldZoneName.getText())'/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JLabel enabled='{isActive()}' text="isisfish.zone.cells"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weighty='0.7' weightx='1.0'>
+ <JScrollPane>
+ <!-- FIXME le binding genere un tas d'envenement multiples ! -->
+ <JAXXList id="zoneCells" enabled='{isActive()}' selectedValues='{getBean().getCell() == null ? null : getBean().getCell().toArray()}'
+ onValueChanged='zoneCellsChange(event)' decorator='boxed'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='horizontal' weightx='1.0'>
+ <JLabel enabled='{isActive()}' text="isisfish.zone.comments"/>
+ </cell>
+ </row>
+ <row>
+ <cell columns='2' fill='both' weighty='0.3' weightx='1.0'>
+ <JScrollPane>
+ <JTextArea id="fieldZoneComment"
+ text='{jaxx.runtime.SwingUtil.getStringValue(getBean().getComment())}'
+ enabled='{isActive()}'
+ decorator='boxed'
+ onKeyReleased='getBean().setComment(fieldZoneComment.getText())'/>
+ </JScrollPane>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='save' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='cancel' decorator='boxed'/>
+ </cell>
+ </row>
+ <row>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='create' decorator='boxed'/>
+ </cell>
+ <cell fill='horizontal' weightx='0.5'>
+ <JButton id='remove' decorator='boxed'/>
+ </cell>
+ </row>
+ </Table>
+ <JPanel id='map' layout='{new BorderLayout()}'>
+ <com.bbn.openmap.gui.ToolPanel id='toolMap'
+ javaBean='new com.bbn.openmap.gui.ToolPanel()'
+ decorator='boxed' constraints='BorderLayout.NORTH'/>
+ <fr.ifremer.isisfish.map.IsisMapBean id='zoneMap'
+ javaBean='new fr.ifremer.isisfish.map.IsisMapBean()'
+ selectionMode="{fr.ifremer.isisfish.map.CellSelectionLayer.MULT_SELECTION}"
+ fisheryRegion='{getRegion()}' selectedCells='{getBean().getCell()}'
+ decorator='boxed' constraints='BorderLayout.CENTER'/>
+ </JPanel>
+ </JSplitPane>
+ </JPanel>
</fr.ifremer.isisfish.ui.input.InputContentUI>
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryDataProvider.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryDataProvider.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryDataProvider.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,64 @@
+/*
+ * #%L
+ *
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui.input.tree;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+
+/**
+ * Fishery region data provider.
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class FisheryDataProvider implements NavDataProvider {
+
+ protected FisheryRegion fisheryRegion;
+
+ public FisheryDataProvider(FisheryRegion fisheryRegion) {
+ this.fisheryRegion = fisheryRegion;
+ }
+
+ /**
+ * Get provider fishery region.
+ *
+ * @return provide fichery region
+ */
+ public FisheryRegion getFisheryRegion() {
+ return fisheryRegion;
+ }
+
+ /*
+ * @see jaxx.runtime.swing.nav.NavDataProvider#isEnabled()
+ */
+ @Override
+ public boolean isEnabled() {
+ return true;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryDataProvider.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeHelper.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeHelper.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeHelper.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,108 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree;
+
+import static org.nuiton.i18n.I18n._;
+
+import javax.swing.tree.TreeModel;
+
+import jaxx.runtime.swing.nav.tree.NavTreeHelper;
+import fr.ifremer.isisfish.entities.Cell;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.entities.Gear;
+import fr.ifremer.isisfish.entities.Metier;
+import fr.ifremer.isisfish.entities.Port;
+import fr.ifremer.isisfish.entities.SetOfVessels;
+import fr.ifremer.isisfish.entities.Species;
+import fr.ifremer.isisfish.entities.Strategy;
+import fr.ifremer.isisfish.entities.TripType;
+import fr.ifremer.isisfish.entities.VesselType;
+import fr.ifremer.isisfish.entities.Zone;
+import fr.ifremer.isisfish.ui.input.tree.loadors.CellsNodeLoador;
+import fr.ifremer.isisfish.ui.input.tree.loadors.GearsNodeLoador;
+import fr.ifremer.isisfish.ui.input.tree.loadors.MetiersNodeLoador;
+import fr.ifremer.isisfish.ui.input.tree.loadors.PortsNodeLoador;
+import fr.ifremer.isisfish.ui.input.tree.loadors.SetOfVesselsNodeLoador;
+import fr.ifremer.isisfish.ui.input.tree.loadors.SpeciesNodeLoador;
+import fr.ifremer.isisfish.ui.input.tree.loadors.StrategiesNodeLoador;
+import fr.ifremer.isisfish.ui.input.tree.loadors.TripTypesNodeLoador;
+import fr.ifremer.isisfish.ui.input.tree.loadors.VesselTypesNodeLoador;
+import fr.ifremer.isisfish.ui.input.tree.loadors.ZonesNodeLoador;
+
+/**
+ * Fishery region tree helpers.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class FisheryTreeHelper extends NavTreeHelper<FisheryTreeNode> {
+
+ public TreeModel createTreeModel(FisheryRegion fisheryRegion) {
+
+ FisheryDataProvider provider = new FisheryDataProvider(fisheryRegion);
+ setDataProvider(provider);
+
+ // Create root static node
+ FisheryTreeNode root = new FisheryTreeNode(FisheryRegion.class,
+ fisheryRegion.getTopiaId(), null, null);
+
+ // first level nodes
+ FisheryTreeNode cellsChild = new FisheryTreeNode(Cell.class,
+ _("isisfish.input.tree.cells"), null, new CellsNodeLoador());
+ FisheryTreeNode zonesChild = new FisheryTreeNode(Zone.class,
+ _("isisfish.input.tree.zones"), null, new ZonesNodeLoador());
+ FisheryTreeNode portsChild = new FisheryTreeNode(Port.class,
+ _("isisfish.input.tree.ports"), null, new PortsNodeLoador());
+ FisheryTreeNode speciesChild = new FisheryTreeNode(Species.class,
+ _("isisfish.input.tree.species"), null, new SpeciesNodeLoador());
+ FisheryTreeNode gearsChild = new FisheryTreeNode(Gear.class,
+ _("isisfish.input.tree.gears"), null, new GearsNodeLoador());
+ FisheryTreeNode metiersChild = new FisheryTreeNode(Metier.class,
+ _("isisfish.input.tree.metiers"), null, new MetiersNodeLoador());
+ FisheryTreeNode tripTypesChild = new FisheryTreeNode(TripType.class,
+ _("isisfish.input.tree.triptypes"), null, new TripTypesNodeLoador());
+ FisheryTreeNode vesselTypesChild = new FisheryTreeNode(VesselType.class,
+ _("isisfish.input.tree.vesseltypes"), null, new VesselTypesNodeLoador());
+ FisheryTreeNode setOfVesselsChild = new FisheryTreeNode(SetOfVessels.class,
+ _("isisfish.input.tree.setofvessels"), null, new SetOfVesselsNodeLoador());
+ FisheryTreeNode strategiesChild = new FisheryTreeNode(Strategy.class,
+ _("isisfish.input.tree.strategies"), null, new StrategiesNodeLoador());
+
+ root.add(cellsChild);
+ root.add(zonesChild);
+ root.add(portsChild);
+ root.add(speciesChild);
+ root.add(gearsChild);
+ root.add(metiersChild);
+ root.add(tripTypesChild);
+ root.add(vesselTypesChild);
+ root.add(setOfVesselsChild);
+ root.add(strategiesChild);
+
+ // Create model
+ TreeModel model = createModel(root);
+
+ return model;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeHelper.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeNode.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeNode.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeNode.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,57 @@
+/*
+ * #%L
+ *
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui.input.tree;
+
+import jaxx.runtime.swing.nav.tree.NavTreeNode;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+
+/**
+ * Do nothing, just to type strange template.
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class FisheryTreeNode extends NavTreeNode<FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = -3813351863284748776L;
+
+ /**
+ * Constructor.
+ *
+ * @param internalClass
+ * @param id
+ * @param context
+ * @param childLoador
+ */
+ public FisheryTreeNode(Class<?> internalClass, String id, String context,
+ NavTreeNodeChildLoador<?, ?, FisheryTreeNode> childLoador) {
+ super(internalClass, id, context, childLoador);
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeNode.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeRenderer.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeRenderer.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeRenderer.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,133 @@
+/*
+ * #%L
+ *
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package fr.ifremer.isisfish.ui.input.tree;
+
+import java.awt.Component;
+
+import javax.swing.JTree;
+import javax.swing.tree.DefaultTreeCellRenderer;
+
+import org.nuiton.topia.TopiaContext;
+import org.nuiton.topia.TopiaException;
+import org.nuiton.topia.persistence.TopiaEntity;
+
+import fr.ifremer.isisfish.IsisFishRuntimeException;
+import fr.ifremer.isisfish.entities.Cell;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.entities.FisheryRegionImpl;
+import fr.ifremer.isisfish.entities.Gear;
+import fr.ifremer.isisfish.entities.Metier;
+import fr.ifremer.isisfish.entities.Population;
+import fr.ifremer.isisfish.entities.Port;
+import fr.ifremer.isisfish.entities.SetOfVessels;
+import fr.ifremer.isisfish.entities.Species;
+import fr.ifremer.isisfish.entities.Strategy;
+import fr.ifremer.isisfish.entities.TripType;
+import fr.ifremer.isisfish.entities.VesselType;
+import fr.ifremer.isisfish.entities.Zone;
+
+/**
+ * Renderer pour les noeud {@link FisheryTreeNode} de l'arbre.
+ *
+ * @author chatellier
+ * @version $Revision$
+ *
+ * Last update : $Date$
+ * By : $Author$
+ */
+public class FisheryTreeRenderer extends DefaultTreeCellRenderer {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = -9045080128695551208L;
+
+ protected FisheryDataProvider provider;
+
+ public FisheryTreeRenderer(FisheryDataProvider provider) {
+ this.provider = provider;
+ }
+
+ @Override
+ public Component getTreeCellRendererComponent(JTree tree, Object value,
+ boolean sel, boolean expanded, boolean leaf, int row,
+ boolean hasFocus) {
+
+ String stringValue = null;
+ if (value instanceof FisheryTreeNode) {
+ FisheryTreeNode node = (FisheryTreeNode)value;
+
+ if (!node.isStaticNode() || node.isStringNode()) {
+ stringValue = node.getId();
+ } else {
+ FisheryRegion fisheryRegion = provider.getFisheryRegion();
+ TopiaContext topiaContext = ((FisheryRegionImpl)fisheryRegion).getTopiaContext();
+ try {
+ TopiaEntity entity = topiaContext.findByTopiaId(node.getId());
+
+ if (FisheryRegion.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((FisheryRegion)entity).getName();
+ }
+ else if (Cell.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((Cell)entity).getName();
+ }
+ else if (Gear.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((Gear)entity).getName();
+ }
+ else if (Metier.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((Metier)entity).getName();
+ }
+ else if (Population.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((Population)entity).getName();
+ }
+ else if (Port.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((Port)entity).getName();
+ }
+ else if (SetOfVessels.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((SetOfVessels)entity).getName();
+ }
+ else if (Species.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((Species)entity).getName();
+ }
+ else if (Strategy.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((Strategy)entity).getName();
+ }
+ else if (TripType.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((TripType)entity).getName();
+ }
+ else if (VesselType.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((VesselType)entity).getName();
+ }
+ else if (Zone.class.isAssignableFrom(entity.getClass())) {
+ stringValue = ((Zone)entity).getName();
+ }
+ } catch (TopiaException eee) {
+ throw new IsisFishRuntimeException("Can't get entity for id " + node.getId(), eee);
+ }
+ }
+ }
+ return super.getTreeCellRendererComponent(tree, stringValue, sel, expanded, leaf,
+ row, hasFocus);
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/FisheryTreeRenderer.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/CellsNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/CellsNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/CellsNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,68 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.Cell;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * Cell tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class CellsNodeLoador extends NavTreeNodeChildLoador<Cell, Cell, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public CellsNodeLoador() {
+ super(Cell.class);
+ }
+
+ @Override
+ public List<Cell> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<Cell> cell = fisheryRegion.getCell();
+ return cell;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(Cell cell, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode cellNode = new FisheryTreeNode(
+ Cell.class, cell.getTopiaId(),
+ null, null);
+
+ return cellNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/CellsNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/GearsNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/GearsNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/GearsNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,68 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.entities.Gear;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * Gear tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class GearsNodeLoador extends NavTreeNodeChildLoador<Gear, Gear, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public GearsNodeLoador() {
+ super(Gear.class);
+ }
+
+ @Override
+ public List<Gear> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<Gear> gears = fisheryRegion.getGear();
+ return gears;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(Gear gear, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode gearNode = new FisheryTreeNode(
+ Gear.class, gear.getTopiaId(),
+ null, null);
+
+ return gearNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/GearsNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/MetiersNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/MetiersNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/MetiersNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,68 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.Metier;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * Metier tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class MetiersNodeLoador extends NavTreeNodeChildLoador<Metier, Metier, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public MetiersNodeLoador() {
+ super(Metier.class);
+ }
+
+ @Override
+ public List<Metier> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<Metier> metier = fisheryRegion.getMetier();
+ return metier;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(Metier metier, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode metierNode = new FisheryTreeNode(
+ Metier.class, metier.getTopiaId(),
+ null, null);
+
+ return metierNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/MetiersNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PopulationsNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PopulationsNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PopulationsNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,69 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.Population;
+import fr.ifremer.isisfish.entities.Species;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * SetOfVessels tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class PopulationsNodeLoador extends NavTreeNodeChildLoador<Population, Population, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ protected Species species;
+
+ public PopulationsNodeLoador(Species species) {
+ super(Population.class);
+ this.species = species;
+ }
+
+ @Override
+ public List<Population> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ List<Population> populations = new ArrayList<Population>(species.getPopulation());
+ return populations;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(Population population, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode populationNode = new FisheryTreeNode(
+ Population.class, population.getTopiaId(),
+ null, null);
+
+ return populationNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PopulationsNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PortsNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PortsNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PortsNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,68 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.Port;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * Port tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class PortsNodeLoador extends NavTreeNodeChildLoador<Port, Port, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public PortsNodeLoador() {
+ super(Port.class);
+ }
+
+ @Override
+ public List<Port> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<Port> port = fisheryRegion.getPort();
+ return port;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(Port port, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode portNode = new FisheryTreeNode(
+ Port.class, port.getTopiaId(),
+ null, null);
+
+ return portNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/PortsNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SetOfVesselsNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SetOfVesselsNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SetOfVesselsNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,68 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.entities.SetOfVessels;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * SetOfVessels tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class SetOfVesselsNodeLoador extends NavTreeNodeChildLoador<SetOfVessels, SetOfVessels, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public SetOfVesselsNodeLoador() {
+ super(SetOfVessels.class);
+ }
+
+ @Override
+ public List<SetOfVessels> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<SetOfVessels> setOfVessel = fisheryRegion.getSetOfVessels();
+ return setOfVessel;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(SetOfVessels setOfVessel, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode setOfVesselNode = new FisheryTreeNode(
+ SetOfVessels.class, setOfVessel.getTopiaId(),
+ null, null);
+
+ return setOfVesselNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SetOfVesselsNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SpeciesNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SpeciesNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SpeciesNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,78 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import static org.nuiton.i18n.I18n._;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.entities.Population;
+import fr.ifremer.isisfish.entities.Species;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * Species tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class SpeciesNodeLoador extends NavTreeNodeChildLoador<Species, Species, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public SpeciesNodeLoador() {
+ super(Species.class);
+ }
+
+ @Override
+ public List<Species> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<Species> species = fisheryRegion.getSpecies();
+ return species;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(Species species, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode speciesNode = new FisheryTreeNode(
+ Species.class, species.getTopiaId(),
+ null, null);
+
+ // Create clients static nodes
+ FisheryTreeNode speciesPopulationStaticNode = new FisheryTreeNode(
+ Population.class, _("isisfish.input.tree.populations"),
+ null, new PopulationsNodeLoador(species));
+
+ speciesNode.add(speciesPopulationStaticNode);
+
+ return speciesNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/SpeciesNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/StrategiesNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/StrategiesNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/StrategiesNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,68 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.Strategy;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * Strategy tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class StrategiesNodeLoador extends NavTreeNodeChildLoador<Strategy, Strategy, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public StrategiesNodeLoador() {
+ super(Strategy.class);
+ }
+
+ @Override
+ public List<Strategy> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<Strategy> stategy = fisheryRegion.getStrategy();
+ return stategy;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(Strategy stategy, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode stategyNode = new FisheryTreeNode(
+ Strategy.class, stategy.getTopiaId(),
+ null, null);
+
+ return stategyNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/StrategiesNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/TripTypesNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/TripTypesNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/TripTypesNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,68 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.TripType;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * TripType tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class TripTypesNodeLoador extends NavTreeNodeChildLoador<TripType, TripType, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public TripTypesNodeLoador() {
+ super(TripType.class);
+ }
+
+ @Override
+ public List<TripType> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<TripType> tripType = fisheryRegion.getTripType();
+ return tripType;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(TripType tripType, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode tripTypeNode = new FisheryTreeNode(
+ TripType.class, tripType.getTopiaId(),
+ null, null);
+
+ return tripTypeNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/TripTypesNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/VesselTypesNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/VesselTypesNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/VesselTypesNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,68 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.VesselType;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * VesselType tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class VesselTypesNodeLoador extends NavTreeNodeChildLoador<VesselType, VesselType, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public VesselTypesNodeLoador() {
+ super(VesselType.class);
+ }
+
+ @Override
+ public List<VesselType> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<VesselType> vesselType = fisheryRegion.getVesselType();
+ return vesselType;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(VesselType vesselType, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode vesselTypeNode = new FisheryTreeNode(
+ VesselType.class, vesselType.getTopiaId(),
+ null, null);
+
+ return vesselTypeNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/VesselTypesNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/ZonesNodeLoador.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/ZonesNodeLoador.java (rev 0)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/ZonesNodeLoador.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -0,0 +1,68 @@
+/*
+ * #%L
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2011 Ifremer, Codelutin, Chatellier Eric
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/gpl-3.0.html>.
+ * #L%
+ */
+package fr.ifremer.isisfish.ui.input.tree.loadors;
+
+import java.util.List;
+
+import jaxx.runtime.swing.nav.NavDataProvider;
+import jaxx.runtime.swing.nav.tree.NavTreeNodeChildLoador;
+import fr.ifremer.isisfish.entities.Zone;
+import fr.ifremer.isisfish.entities.FisheryRegion;
+import fr.ifremer.isisfish.ui.input.tree.FisheryDataProvider;
+import fr.ifremer.isisfish.ui.input.tree.FisheryTreeNode;
+
+/**
+ * Zone tree path node loader.
+ *
+ * @author chatellier
+ * @since 3.3.1
+ */
+public class ZonesNodeLoador extends NavTreeNodeChildLoador<Zone, Zone, FisheryTreeNode> {
+
+ /** serialVersionUID. */
+ private static final long serialVersionUID = 6540304326033236054L;
+
+ public ZonesNodeLoador() {
+ super(Zone.class);
+ }
+
+ @Override
+ public List<Zone> getData(Class<?> parentClass, String parentId, NavDataProvider dataProvider) throws Exception {
+ FisheryDataProvider ficheryRegionDataProvider = (FisheryDataProvider)dataProvider;
+ FisheryRegion fisheryRegion = ficheryRegionDataProvider.getFisheryRegion();
+ List<Zone> zone = fisheryRegion.getZone();
+ return zone;
+ }
+
+ @Override
+ public FisheryTreeNode createNode(Zone zone, NavDataProvider dataProvider) {
+
+ // Create clients static nodes
+ FisheryTreeNode zoneNode = new FisheryTreeNode(
+ Zone.class, zone.getTopiaId(),
+ null, null);
+
+ return zoneNode;
+ }
+}
Property changes on: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/input/tree/loadors/ZonesNodeLoador.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/util/ErrorHelper.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/util/ErrorHelper.java 2011-03-12 14:19:01 UTC (rev 3157)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/util/ErrorHelper.java 2011-03-15 15:50:27 UTC (rev 3158)
@@ -5,7 +5,7 @@
* $Id$
* $HeadURL$
* %%
- * Copyright (C) 2009 - 2010 Ifremer, CodeLutin
+ * Copyright (C) 2009 - 2011 Ifremer, CodeLutin, Chatellier Eric
* %%
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
@@ -28,10 +28,25 @@
import static org.nuiton.i18n.I18n._;
import java.awt.Component;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Date;
+import java.util.List;
+import javax.swing.JOptionPane;
+
+import org.apache.commons.lang.StringUtils;
+import org.apache.commons.mail.EmailException;
+import org.apache.commons.mail.MultiPartEmail;
import org.jdesktop.swingx.JXErrorPane;
import org.jdesktop.swingx.error.ErrorInfo;
+import org.jdesktop.swingx.error.ErrorReporter;
+import fr.ifremer.isisfish.IsisConfig;
+import fr.ifremer.isisfish.IsisFish;
+
/**
* Error helper.
*
@@ -41,7 +56,7 @@
* Last update : $Date$
* By : $Author$
*/
-public class ErrorHelper {
+public class ErrorHelper implements ErrorReporter {
/**
* Display a user friendly error frame.
@@ -52,11 +67,13 @@
*/
public static void showErrorDialog(Component parent, String message,
Throwable cause) {
-
+ JXErrorPane pane = new JXErrorPane();
ErrorInfo info = new ErrorInfo(_("isisfish.error.errorpane.title"),
_("isisfish.error.errorpane.htmlmessage", message), null, null,
cause, null, null);
- JXErrorPane.showDialog(parent, info);
+ pane.setErrorInfo(info);
+ pane.setErrorReporter(new ErrorHelper());
+ JXErrorPane.showDialog(parent, pane);
}
/**
@@ -77,4 +94,67 @@
public static void showErrorDialog(String message, Throwable cause) {
showErrorDialog(null, message, cause);
}
+
+ /*
+ * @see org.jdesktop.swingx.error.ErrorReporter#reportError(org.jdesktop.swingx.error.ErrorInfo)
+ */
+ @Override
+ public void reportError(ErrorInfo errorInfo) throws NullPointerException {
+
+ MultiPartEmail email = new MultiPartEmail();
+ try {
+ String emailTo = "support at codelutin.com";
+
+ // smtp
+ email.setHostName("smtp");
+ // to
+ email.addTo(emailTo, "Support");
+ // from
+ email.setFrom("no-reply at isis-fish.org", "Isis-Fish");
+ // subject
+ email.setSubject("Project error notification : Isis-Fish");
+
+ // message description
+ String message = formatMessage("Project", "Isis-Fish " + IsisConfig.getVersion());
+ message += formatMessage("Date", new Date().toString());
+ message += formatMessage("Title", errorInfo.getTitle());
+ message += formatMessage("Description", errorInfo.getBasicErrorMessage().replaceAll("<[^>]+>", ""));
+
+ // message configuration
+ message += formatMessage("Configuration", null);
+ List<String> propertiesNames = new ArrayList<String>(IsisFish.config.getOptions().stringPropertyNames());
+ Collections.sort(propertiesNames);
+ for (String propertyName : propertiesNames) {
+ // security, don't send string containing password :
+ if (!propertyName.contains("pass")) {
+ message += "\t" + propertyName + " : " + IsisFish.config.getOptions().getProperty(propertyName) + "\n";
+ }
+ }
+
+ // message exception
+ StringWriter out = new StringWriter();
+ PrintWriter writer = new PrintWriter(out);
+ errorInfo.getErrorException().printStackTrace(writer);
+ message += formatMessage("Exception", out.toString());
+
+ // TODO i18n files are iso encoded :(
+ email.setContent(message, "text/plain; charset=ISO-8859-9");
+
+ // send mail
+ email.send();
+
+ JOptionPane.showMessageDialog(null, "A report message has been sent to " + emailTo);
+ } catch (EmailException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ protected String formatMessage(String category, String content) {
+ String formatted = category + " :\n";
+ if (StringUtils.isNotEmpty(content)) {
+ formatted += "\t" + content + "\n";
+ }
+ return formatted;
+ }
}
1
0
Author: tchemit
Date: 2011-03-12 14:19:01 +0000 (Sat, 12 Mar 2011)
New Revision: 3157
Log:
Update mavenpom4labs to 2.5.2.
Modified:
isis-fish/trunk/pom.xml
Modified: isis-fish/trunk/pom.xml
===================================================================
--- isis-fish/trunk/pom.xml 2011-03-11 17:33:15 UTC (rev 3156)
+++ isis-fish/trunk/pom.xml 2011-03-12 14:19:01 UTC (rev 3157)
@@ -6,7 +6,7 @@
<parent>
<groupId>org.nuiton</groupId>
<artifactId>mavenpom4labs</artifactId>
- <version>2.5.1</version>
+ <version>2.5.2</version>
</parent>
<groupId>fr.ifremer</groupId>
1
0
r3156 - isis-fish/branches/3.3.1/src/main/resources/i18n
by chatellier@users.labs.libre-entreprise.org 11 Mar '11
by chatellier@users.labs.libre-entreprise.org 11 Mar '11
11 Mar '11
Author: chatellier
Date: 2011-03-11 17:33:15 +0000 (Fri, 11 Mar 2011)
New Revision: 3156
Log:
Update i18n
Added:
isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish_en_GB.properties
isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish_fr_FR.properties
Removed:
isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-en_GB.properties
isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-fr_FR.properties
Deleted: isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-en_GB.properties
===================================================================
--- isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-en_GB.properties 2011-03-04 12:41:46 UTC (rev 3155)
+++ isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-en_GB.properties 2011-03-11 17:33:15 UTC (rev 3156)
@@ -1,1125 +0,0 @@
-Add\ to\ default\ queue=
-Analyse\ plan\ error,\ too\ many\ simulation\ for\ %s\ \:\ %s=
-Can't\ add\ result\ '%1$s'\ at\ date\ %2$s=Can't add result '%1$s' at date %2$s
-Can't\ add\ simulation\:\ %s=
-Can't\ create\ simulation\ logger=Can't create simulation logger
-Can't\ delete\ simulation=
-Can't\ delete\ simulation\ %s\ =
-Can't\ display\ simulation\ log=
-Can't\ do\ post\ action\ %s=
-Can't\ do\ simulation\ %s=
-Can't\ download\ archive\ \:\ %s=
-Can't\ download\ file=
-Can't\ evaluate\ simulation\ prescript=
-Can't\ export\ simulation\ %s=
-Can't\ get\ changlog=
-Can't\ get\ result\:\ %1$s=Can't get result\: %1$s
-Can't\ instanciate\ export\ %1$s=Can't instanciate export %1$s
-Can't\ instantiate\ %s=
-Can't\ open\ log\ for\ %s=
-Can't\ open\ simulation\ internal\ frame=
-Can't\ read\ ssh\ key\ \:\ %s=
-Can't\ simulate\ %s=
-Check\ state\ of\ local\ repository\:\ %s=
-Command\ '%s'\ fail\ to\ execute=
-Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
-Error\ during\ vcs\ initialisation=
-Error\ while\ uploading\ public\ key\ to\ remote\ serveur\ authorized_keys=
-Generate\ next\ simulation=
-Import\ one\ java\ file\ script\ source=
-Import\ simulation\ file\ %s\ in\ directory\ %s\ and\ rename\ from\ %s\ to\ %s=
-Import\ zipped\ file\ containing\ all\ scripts\ directory\ structure=
-Info=Info
-Jobs\ submited\ is\ not\ ItemSimulation\ but\ was\ %s=
-Last\ entry\ was\ %s\ extract\ name\ %s=
-Launcher\ %s\ will\ be\ stopped\ because\ there\ are\ too\ many\ error\ (%s)=
-Local\ repository\ don't\ exist=
-Local\ repository\ exists\ but\ it's\ not\ valide\ for\ current\ vcs\:\ %s=
-Normal\ stop\ thread,\ this\ is\ not\ an\ error=
-Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
-Process\ template\ error=
-Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
-Region\ %s\ already\ inited=
-Remote\ control\ file\ doesn't\ exists\ %s=
-Remote\ information\ file\ doesn't\ exists\ %s=
-Rename\ data\ directory\ to\ %s=
-Show\ help=
-Show\ version=
-SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
-Skip\ data\ migration\ (disabled)=
-Ssh\ key\ found\ '%s'\ will\ be\ used\ to\ connect\ to=
-Stop\ simulation\ plan,\ because\ can't\ call\ afterSimulation\ correctly\ on\ plan\ %s=
-SubProcess\ start\:\ %s\ %s=
-Switch\ repository\ type\ to\ none=
-Try\ to\ log\ on\ %s@%s\:%d=
-Use\ branches,\ switch\ not\ needed=
-User\ restart\ simulation\ %s=
-User\ stop\ simulation\ %s=
-could\ not\ close\ reader\ %1$s=could not close reader %1$s
-could\ not\ create\ simulation\ filter\ model\ for\ reason\ %1$s=could not create simulation filter model for reason %1$s
-could\ not\ filter\ on\ simulations=could not filter on simulations
-could\ not\ found\ %s=
-could\ not\ found\ log\ file\ %1$s=could not found log file %1$s
-could\ not\ found\ region\ %s=
-could\ not\ found\ simulation\ %s=
-could\ not\ read\ at\ offset\ %1$s\ for\ reason\ %2$s=could not read at offset %1$s for reason %2$s
-destination\ already\ exists\ %s\ use\ 'force'\ argument\ to\ force\ overwrite=
-destination\ already\ exists\ %s\ use\ \\'force\\'\ argument\ to\ force\ overwrite=
-directory\ %s\ must\ be\ a\ directory=
-filter\ loaded\ in\ %1$s\ ms\ \:\ found\ %2$s\ lines.=filter loaded in %1$s ms \: found %2$s lines.
-isisfish.about.abouthtmltext=<html><b>Isis-Fish (%s)</b><br /><br />Copyright IFREMER-MAERHA 2000-2010.<br /><br /><a href\="http\://isis-fish.labs.libre-entreprise.org">http\://isis-fish.labs.libre-entreprise.org</a><br /><br />Please, report any bug you can found.<html>
-isisfish.about.licensetext=You can modify and redistribute the program under the conditions of the GNU General Public License (version 2 or later). A copy of the GPL is in the file "LICENSE.txt" provided with Isis-Fish. All rights reserved. No guarantees are provided for use of this program.
-isisfish.about.title=About Isis-Fish...
-isisfish.advancedParameters.title=Advanced parameters
-isisfish.advancedParams.freeParameters=Free parameters
-isisfish.advancedParams.libLevelLogger=Library log level
-isisfish.advancedParams.scriptLevelLogger=Script log level
-isisfish.advancedParams.simulLevelLogger=Simulator log level
-isisfish.advancedParams.simulationCache=Simulation cache
-isisfish.advancedParams.simulationStatistique=Simulation statistics
-isisfish.advancedParams.simulatorUse=Simulator to Use
-isisfish.cell.comments=Comments
-isisfish.cell.land=Land
-isisfish.cell.latitude=Latitude
-isisfish.cell.longitude=Longitude
-isisfish.cell.name=Name
-isisfish.change.equation=Can't change equation
-isisfish.commit.message=Enter commit message
-isisfish.common.add=Add
-isisfish.common.add.short=add
-isisfish.common.alert=alert
-isisfish.common.apply=Apply
-isisfish.common.blank=\
-isisfish.common.cancel=Cancel
-isisfish.common.check=Check
-isisfish.common.clear=Clear
-isisfish.common.confirm=Confirm
-isisfish.common.date=Date
-isisfish.common.debug=debug
-isisfish.common.delete=Delete
-isisfish.common.duration.inhours=in hours
-isisfish.common.ellipsis=...
-isisfish.common.emigration=Emigration
-isisfish.common.equation=Equation
-isisfish.common.error=error
-isisfish.common.file=File
-isisfish.common.finish=Finish
-isisfish.common.gear=Gear
-isisfish.common.immigration=immigration
-isisfish.common.info=info
-isisfish.common.migration=migration
-isisfish.common.module=Module
-isisfish.common.month=month %1$s
-isisfish.common.name=Name
-isisfish.common.new=New
-isisfish.common.newMatrix=New matrix
-isisfish.common.next=Next
-isisfish.common.ok=Ok
-isisfish.common.openEditor=Open editor
-isisfish.common.population=Population
-isisfish.common.populationGroup=Population group
-isisfish.common.populations=Populations
-isisfish.common.port=Port
-isisfish.common.prev=Previous
-isisfish.common.region=Region
-isisfish.common.remove=Remove
-isisfish.common.reset=Reset
-isisfish.common.save=Save
-isisfish.common.saveModel=Save as model
-isisfish.common.saveNextSimulation=Save for next simulation
-isisfish.common.season=Season
-isisfish.common.setOfVessels=Set of vessels
-isisfish.common.simulate=Simulate
-isisfish.common.strategies=Strategies
-isisfish.common.sum=Sum
-isisfish.common.tag=Tag
-isisfish.common.tripType=Trip type
-isisfish.common.valid=Valid
-isisfish.common.value=Value
-isisfish.common.warn=warn
-isisfish.common.year=year
-isisfish.common.zone=Zone
-isisfish.config.category.main=Main
-isisfish.config.category.main.description=Main configuration
-isisfish.config.category.misc=Misc
-isisfish.config.category.misc.description=Miscealenous
-isisfish.config.category.versioning=VCS
-isisfish.config.category.versioning.description=Versioning system
-isisfish.config.database.lockmode.description=Database lock mode
-isisfish.config.main.compileDirectory.description=Script compilation directory
-isisfish.config.main.configFileName.description=Configuration filename
-isisfish.config.main.defaultBackupDirectory.description=Backup directory
-isisfish.config.main.defaultExportNames.description=Exports to do after simulation
-isisfish.config.main.defaultMapFile.description=Default map file to use for map without custom maps
-isisfish.config.main.defaultResultNames.description=Result names to manage during a simulation
-isisfish.config.main.defaultSimulator.description=Default simulator to use to simulate
-isisfish.config.main.defaultTagValue.description=
-isisfish.config.main.encoding.description=encoding used on system
-isisfish.config.main.javadocDirectory.description=Javadoc generation directory
-isisfish.config.main.javadocURL.description=Javadoc url
-isisfish.config.main.launchUI.description=Display user interface
-isisfish.config.main.localSimulator.description=Local simulator launcher name (same process)
-isisfish.config.main.locale.description=user locale
-isisfish.config.main.monitoringDirectory.description=Folder containing all necessary information needed to restart simulation
-isisfish.config.main.performcron.description=Perform all task registered in cron service
-isisfish.config.main.performmigration.description=Perform data migration
-isisfish.config.main.performvcsupdate.description=Perform vcs update
-isisfish.config.main.remoteCaparmor.description=Remote simulator launcher name
-isisfish.config.main.simulation.ssh.control.check.interval=Control check interval (seconds)
-isisfish.config.main.simulation.ssh.control.check.interval.description=Control check interval (seconds)
-isisfish.config.main.simulation.ssh.datapath=Isis-Fish database
-isisfish.config.main.simulation.ssh.datapath.description=Isis-Fish database path
-isisfish.config.main.simulation.ssh.isis.home=Isis-Fish home
-isisfish.config.main.simulation.ssh.isis.home.description=Isis-Fish installation directory
-isisfish.config.main.simulation.ssh.javapath=Java path
-isisfish.config.main.simulation.ssh.javapath.description=Java location on remote server (full path or relative to $PATH, by default value is caparmor configuration)
-isisfish.config.main.simulation.ssh.max.threads=SSH threads count
-isisfish.config.main.simulation.ssh.max.threads.description=Number of simultaneous simulations to do through SSH. Might only be usefull for dependent analysis plans. Otherwise keep value at '1'.
-isisfish.config.main.simulation.ssh.pbsbinpath=PBS executables directory
-isisfish.config.main.simulation.ssh.pbsbinpath.description=PBS executables (qsub, qdel...) directory
-isisfish.config.main.simulation.ssh.pbsqsuboptions=Qsub arguments
-isisfish.config.main.simulation.ssh.pbsqsuboptions.description=Arguments used at qsub job sumbit. Default to '-m n' don't send mail.
-isisfish.config.main.simulation.ssh.server=Simulation server
-isisfish.config.main.simulation.ssh.server.description=Simulation server address
-isisfish.config.main.simulation.ssh.sftpserver.description=Transfer server address (set empty to use scp from simulation server)
-isisfish.config.main.simulation.ssh.tmppath=Server temp directory
-isisfish.config.main.simulation.ssh.tmppath.description=Server temp directory
-isisfish.config.main.simulation.ssh.userhome=User home directory
-isisfish.config.main.simulation.ssh.userhome.description=User home directory
-isisfish.config.main.simulation.ssh.username=SSH identifier
-isisfish.config.main.simulation.ssh.username.description=SSH identifier
-isisfish.config.main.simulationShowOnlyError.description=
-isisfish.config.main.smtpServer.description=Smtp server address
-isisfish.config.main.subSimulator.description=Sub process simulator launcher name
-isisfish.config.main.userMail.description=User email address
-isisfish.config.main.userName.description=User name
-isisfish.config.ssh.key.file=SSH key
-isisfish.config.ssh.key.file.description=Private SSH key path
-isisfish.config.vcs.hostName.description=
-isisfish.config.vcs.localDatabasePath.description=
-isisfish.config.vcs.noPassPhrase.description=
-isisfish.config.vcs.passphrase.description=
-isisfish.config.vcs.remotePath.description=
-isisfish.config.vcs.type.description=
-isisfish.config.vcs.useSshConnexion.description=
-isisfish.config.vcs.userName.description=
-isisfish.config.vcs.userPassword.description=
-isisfish.dataResult.export.csv=Export to CSV
-isisfish.dataResult.label=Value
-isisfish.date.toString=%1$s %2$s
-isisfish.effortDescription.crewFoodCost=Crew food cost
-isisfish.effortDescription.crewShareRate=Crew share rate
-isisfish.effortDescription.crewSize=Crew size
-isisfish.effortDescription.economicTitle=\u00C9conomiques parameters
-isisfish.effortDescription.effortTitle=Fishing effort parameters
-isisfish.effortDescription.fishingOperation=Fishing operation
-isisfish.effortDescription.fishingOperationDuration=Fishing operation duration
-isisfish.effortDescription.fishingOperationDuration.tooltip=In hours
-isisfish.effortDescription.fixedCrewSalary=Fixed crew salary
-isisfish.effortDescription.gearsNumberPerOperation=Gears number per operation
-isisfish.effortDescription.landingCosts=Landing costs
-isisfish.effortDescription.otherRunningCost=Other running cost
-isisfish.effortDescription.parametersTitle=M\u00E9tiers parameters
-isisfish.effortDescription.repairAndMaintenanceGearCost=Repair and maintenance gear cost
-isisfish.effortDescription.title=Practiced metier
-isisfish.effortDescription.toString=EffortDescription for %1$s with %2$s
-isisfish.effortDescription.unitCostOfFishing=Fishing unit cost
-isisfish.equation.editor.title=Equation Editor
-isisfish.error.acceptable.population=New value isn't acceptable value for this population
-isisfish.error.add.card=Error while adding of result to the map.
-isisfish.error.add.logger.simulation=isisfish.error.add.logger.simulation
-isisfish.error.add.result.data=Error while adding result ot data.
-isisfish.error.add.result.graph=Error while adding result to graph
-isisfish.error.add.tray=Can't add system tray icon
-isisfish.error.change.classloader=Can't change classloader because can't create URL from file %1$s
-isisfish.error.change.equation=Can't change equation
-isisfish.error.compile.fileerror=File %s can't be compiled \!
-isisfish.error.compile.script=Can't compile script\: %1$s
-isisfish.error.compiled.parameter=Can't get rule parameter from compiled class
-isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00E9es
-isisfish.error.create.equation=Can't create equation
-isisfish.error.delete.database=Can't delete database
-isisfish.error.delete.file=could not delete file %1$s
-isisfish.error.delete.vcs.files=Can't delete vcs files
-isisfish.error.during.simulation=Error during simulation
-isisfish.error.emigration.negative=emigration negative
-isisfish.error.empty.code.rubbin=rubbin's code is empty
-isisfish.error.empty.emigration=emigration empty
-isisfish.error.empty.id.geographic=goegraphic identifier is empty
-isisfish.error.empty.immigration=immigration empty
-isisfish.error.empty.migration=Migration empty
-isisfish.error.empty.name=The name is empty
-isisfish.error.empty.params.name=Parameter name is empty
-isisfish.error.empty.population=Population is empty
-isisfish.error.empty.scientific.name=scentific name is empty
-isisfish.error.empty.season=info season empty
-isisfish.error.empty.selectivity=selectivity is empty
-isisfish.error.empty.species=specie capturable empty
-isisfish.error.empty.species.name=specie's name is empty
-isisfish.error.empty.unit=measure unit is empty
-isisfish.error.equation.openeditor=Can't open equation editor
-isisfish.error.equation.return.number=EquationImpl must return a number\: %1$s
-isisfish.error.equation.savemodel=Can't save equation as model
-isisfish.error.errorpane.htmlmessage=<html><b>IsisFish has handled \:</b><br />%s</b></html>
-isisfish.error.errorpane.title=Error
-isisfish.error.evaluate.equation=Can't evaluate equation\: %1$s
-isisfish.error.evaluate.preplan.script=
-isisfish.error.evalute.plan.script=Can't evaluate plan script
-isisfish.error.factor.invalid=Factor is not valid
-isisfish.error.file.already.exists=The file %1$s already exist
-isisfish.error.growth.equation.before.create.group.population=Error, You must input growth equation before create the group population
-isisfish.error.immigration.negative=immigration negative
-isisfish.error.import.convertible=Erreur lors de l'import, la version du fichier que vous souhaitez importer n'est pas transformable en une version importable.
-isisfish.error.import.file=Can't import file %1$s
-isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00E9cente que la version souhait\u00E9e.
-isisfish.error.init.map=Can't init map.
-isisfish.error.input.addentity=Can't add entity "%s"
-isisfish.error.input.cancelentity=Can't cancel modification on entity
-isisfish.error.input.createentity=Can't create entity
-isisfish.error.input.removeentity=Can't remove entity "%s"
-isisfish.error.input.save=Can't save modifications
-isisfish.error.input.saveentity=Can't save entity
-isisfish.error.input.spacializematrix=
-isisfish.error.instanciate=Can't instanciate %1$s
-isisfish.error.instanciate.export=Can't instanciate export %1$s
-isisfish.error.invalid.costs.fix=les co\u00FBts fixes sont invalides
-isisfish.error.invalid.distribution.recruitment=distribution de recrutement invalide
-isisfish.error.invalid.equation=Invalid equation
-isisfish.error.invalid.equation.name=Invalid equation name
-isisfish.error.invalid.file.name=The script name %1$s is not valid.
-isisfish.error.invalid.interval.reproduction.recruitment=interval entre la reproduction et le recrutement invalide
-isisfish.error.invalid.mean.weight=Invalid mean weight
-isisfish.error.invalid.natural.death=natural mortality on classes naissantes invalide
-isisfish.error.invalid.nullequation=Equation %s doesn't exist \!
-isisfish.error.invalid.number=The number is invalid
-isisfish.error.invalid.range=La gamme possible n'a pas de valeur acceptable
-isisfish.error.invalid.values.params=Parametre controlable hors valeurs possibles
-isisfish.error.invalidate.natural.death=natural mortality invalid
-isisfish.error.invoke.method=Can't invoke method '%1$s' for class %2$s
-isisfish.error.linkageerror.message=Isis-Fish has detected a script use error.\nCompilation directory has been deleted to force recompilation.\n\nPlease, restart Isis-Fish.
-isisfish.error.linkageerror.title=Init error
-isisfish.error.load.class=Can't load class\: %1$s
-isisfish.error.load.classloader=Can't create ClassLoader for script, bad directory\: %1$s for reason %2$s
-isisfish.error.load.file=could not load file %1$s
-isisfish.error.log.closeAppender=could not close appender %1$s for category %2$s
-isisfish.error.log.console.dispose=Une erreur est survenue pendant la fermeture de la console %1$s de log, raison %2$s
-isisfish.error.log.createAppender=could not create appender [%1$s] \: %2$s for reason %3$s
-isisfish.error.log.foundAppender=\=could not found log appender %1$s for category %2$s
-isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00E9lectionnez moins d'\u00E9l\u00E9ments ou utilisez l'op\u00E9rateur somme.
-isisfish.error.migration.negative=Migration negative
-isisfish.error.no.matrix=No matrix for \: %s
-isisfish.error.no.null.time.step=Error, the time step should not be null
-isisfish.error.no.sector=No sector defined
-isisfish.error.no.select.simulation=Could not select simulation
-isisfish.error.no.target.species=No target species in %1$s for %2$s
-isisfish.error.not.found.code=Could not found codeclass for %1$s
-isisfish.error.not.found.description=Could not found description for %1$s
-isisfish.error.not.found.field=Could not found field %1$s doc for %2$s
-isisfish.error.not.found.field.class=Could not found field %1$s for class %2$s
-isisfish.error.not.null.class.grown=Null value for grown class
-isisfish.error.not.null.mean.weight=Null mean weight
-isisfish.error.not.null.natural.death=Null natural mortality
-isisfish.error.not.possible.metier=Pas de m\u00E9tier possible
-isisfish.error.not.support.class=this class does not support
-isisfish.error.number.classes.upper.zero=Error, the number of classes must be upper than 0
-isisfish.error.out.memory=Out of memory try with more memory (option -mx)
-isisfish.error.overlap.season=Cette saison chevauche une autre saison
-isisfish.error.parse.date=Can't parse date %1$s
-isisfish.error.parse.long=Can't parse long %1$s
-isisfish.error.plan.parameter=Can't get plan parameter from compiled class
-isisfish.error.prepare.data=Can't prepare data
-isisfish.error.prepare.information.simulation=Can't prepare information for simulation
-isisfish.error.read.simulation=Can't read simulation information %1$s
-isisfish.error.read.simulation.parameters=Can't read simulation parameters from file %1$s
-isisfish.error.region.addmap=Can't add map in region
-isisfish.error.region.already.exists=This region already exists
-isisfish.error.region.cancel=
-isisfish.error.region.check=Can't check region
-isisfish.error.region.commit=Can't commit region
-isisfish.error.region.copy=Can't copy region
-isisfish.error.region.create=Can't create new region
-isisfish.error.region.export=Can't export region
-isisfish.error.region.import=Can't import region
-isisfish.error.region.load=Can't load region
-isisfish.error.region.name.empty=Region name is empty
-isisfish.error.region.new=
-isisfish.error.region.remove=Can't remove region
-isisfish.error.region.removemap=Can't remove map in region
-isisfish.error.region.save=Can't save modification on region
-isisfish.error.remove.directory=Can't remove directory %1$s
-isisfish.error.rename.region=Can't rename region to %1$s
-isisfish.error.save.checkSum.compilation=Can't save checkSum to compilation\: %1$s
-isisfish.error.save.script.compilation=Can't save script to compilation\: %1$s
-isisfish.error.save.simulation.parameters=Can't save simulation parameters in file %1$s
-isisfish.error.script.create=isisfish.error.script.create
-isisfish.error.script.delete=Can't delete file %1$s for reason %2$s
-isisfish.error.script.import=Can't import file for reason %1$s
-isisfish.error.script.load=Can't load file %1$s for reason %2$s
-isisfish.error.script.save=Can't save file %1$s for reason %2$s
-isisfish.error.sensitivity.export=Can't do region factors export
-isisfish.error.simulation.addanalyseplan=Can't add analyze plan
-isisfish.error.simulation.addrule=Can't add rule
-isisfish.error.simulation.getparametervalue=Can't get parameter value
-isisfish.error.simulation.getresultname=Can't get result names list
-isisfish.error.simulation.importparameter=Can't import simulation parameters
-isisfish.error.simulation.initsimulaction=Can't init simulation
-isisfish.error.simulation.launchsimulation=Can't launch simulation
-isisfish.error.simulation.listoldsimulation=Can't get old simulation list
-isisfish.error.simulation.listpopulation=Can't get population list
-isisfish.error.simulation.liststrategies=Can't get strategies list
-isisfish.error.simulation.loadoldsimulation=Can't load old simulation
-isisfish.error.simulation.log.openAppender=could not open appender of simulation %1$s for reason %2$s
-isisfish.error.simulation.openregion=Can't open region
-isisfish.error.simulation.remote.global=Can't launch a simulation on remote server
-isisfish.error.simulation.remote.wrongportvalue=Connection port value is incorrect \: %s
-isisfish.error.simulation.resultXml.close=Can't close simulation result XML for reason %1$s
-isisfish.error.simulation.resultXml.open=Can't open simulation result XML for reason %1$s
-isisfish.error.simulation.resultXml.write=Can't write simulation result XML for reason %1$s
-isisfish.error.simulation.savesimulation=Can't save simulation parameters
-isisfish.error.simulation.setparametervalue=Can't set parameter value
-isisfish.error.source.parameter=Can't get parameter from source
-isisfish.error.strategy.order=Strategy %1$s don't have 12 StrategyMonthInfo but %2$s. Recreate them
-isisfish.error.undefined.classes=No classes defined
-isisfish.error.undefined.correspondence.zones.reproduction.recruitment=pas de correspondance entre les zones de reproduction et les zones de recrutement
-isisfish.error.undefined.gear=The engin is not defined
-isisfish.error.undefined.mesh=No mesh defined
-isisfish.error.undefined.mesh.sector=No mesh defined in sector
-isisfish.error.undefined.meta.population=No population defined
-isisfish.error.undefined.natural.death=No natural mortality on classes naissantes
-isisfish.error.undefined.sector=No sector defined
-isisfish.error.undefined.stategy=No strategy defined
-isisfish.error.undefined.stategy.months=The strategy is not defined for some mounths
-isisfish.error.undefined.zone.population=No population's zone defined
-isisfish.error.undefined.zone.recruitment=No recrutment's zone defined
-isisfish.error.undefined.zone.reproduction=No reprodution's zone defined
-isisfish.error.unsupported.equation.langage=Unsupported language '%1$s' for equation\: %2$s
-isisfish.error.wait.simThread=Can't wait SimThread
-isisfish.error.warning.title=Warning
-isisfish.error.write.simulation=Can't write information %1$s
-isisfish.export.saved=Export saved
-isisfish.export.title=Results export
-isisfish.filter=Filter
-isisfish.filter.apply=Apply filter
-isisfish.filter.cancel=Cancel
-isisfish.filter.log.levelDebug=Debug
-isisfish.filter.log.levelError=Error
-isisfish.filter.log.levelFatal=Fatal
-isisfish.filter.log.levelInfo=Info
-isisfish.filter.log.levelTrace=Trace
-isisfish.filter.log.levelWarn=Warn
-isisfish.filter.log.tooltip.levelDebug=Debug
-isisfish.filter.log.tooltip.levelError=Error
-isisfish.filter.log.tooltip.levelFatal=Fatal
-isisfish.filter.log.tooltip.levelInfo=Info
-isisfish.filter.log.tooltip.levelTrace=Trace
-isisfish.filter.log.tooltip.levelWarn=Warn
-isisfish.filter.log.tooltip.message=Enter a term to search and press Enter
-isisfish.filter.reset=Reset
-isisfish.filter.result=Results
-isisfish.filter.result.found=Results (%d/%d)
-isisfish.filter.select=Select
-isisfish.filter.select.simulation=Select a simulation
-isisfish.filter.simulation=Filter simulations
-isisfish.filter.simulation.analysePlanNumber=Analyse plan number
-isisfish.filter.simulation.description=Description
-isisfish.filter.simulation.local=Local
-isisfish.filter.simulation.numberOfYear=Number of year
-isisfish.filter.simulation.regionName=Region name
-isisfish.filter.simulation.simulationEnd=Simulation end date (dd/MM/yyyy)
-isisfish.filter.simulation.simulationName=Simulation name
-isisfish.filter.simulation.simulationStart=Simulation start date (dd/MM/yyyy)
-isisfish.filter.simulation.simulatorName=Simulator name
-isisfish.filter.simulation.tooltip.analysePlanNumber=Filter on analyse number
-isisfish.filter.simulation.tooltip.description=Filter on description (regex)
-isisfish.filter.simulation.tooltip.local=Filter only local simulations
-isisfish.filter.simulation.tooltip.numberOfYear=Filter on number of year (exact sequence)
-isisfish.filter.simulation.tooltip.regionName=Filter on region name (regex)
-isisfish.filter.simulation.tooltip.simulationEnd=Filter on region end date (format dd/MM/yyyy)
-isisfish.filter.simulation.tooltip.simulationName=Filter on simulation name
-isisfish.filter.simulation.tooltip.simulationStart=Filter on simulation start date (format dd/MM/yyyy)
-isisfish.filter.simulation.tooltip.simulatorName=Filter on simulator name
-isisfish.filter.simulation.tooltip.useAnalysePlan=Filter on simulations with analyse plan
-isisfish.filter.simulation.tooltip.useOptimization=Filter on simulations with optimization
-isisfish.filter.simulation.tooltip.usePreScript=Filter on simulations with pre-script
-isisfish.filter.simulation.tooltip.useStatistic=Filter on simulations with statistic
-isisfish.filter.simulation.useAnalysePlan=analyse plan
-isisfish.filter.simulation.useOptimization=optimization
-isisfish.filter.simulation.usePreScript=pre-script
-isisfish.filter.simulation.useStatistic=statistic
-isisfish.fisheryRegion.addMap=Add map
-isisfish.fisheryRegion.area=Fishery area boundaries
-isisfish.fisheryRegion.comments=Comments
-isisfish.fisheryRegion.delMap=Delete map
-isisfish.fisheryRegion.latitude=Lat.
-isisfish.fisheryRegion.latitude.max=Lat. max.
-isisfish.fisheryRegion.latitude.min=Lat. min.
-isisfish.fisheryRegion.longitude=Long.
-isisfish.fisheryRegion.longitude.max=Long. max.
-isisfish.fisheryRegion.longitude.min=Long. min.
-isisfish.fisheryRegion.name=Region name
-isisfish.fisheryRegion.ofCells=of cells (option)
-isisfish.fisheryRegion.selectFile=Select a file
-isisfish.fisheryRegion.spatial=Spatial resolution
-isisfish.gear.comments=Comments
-isisfish.gear.effortUnit=Effort Unit
-isisfish.gear.name=Name
-isisfish.gear.rangeValues=Range of values
-isisfish.gear.standardisationFactor=Standardisation factor
-isisfish.gear.technicalParameter=Technical parameter
-isisfish.gear.title=Gear
-isisfish.graphBean.graph.render=Choose a graph render
-isisfish.graphCombo.render.bar=Verticals bar rendering
-isisfish.graphCombo.render.bar.3d=3D verticals bars rendering
-isisfish.graphCombo.render.bar.stacked=Stacked verticals bars rendering
-isisfish.graphCombo.render.line=Line rendering
-isisfish.graphCombo.render.line.3d=3D line rendering
-isisfish.graphCombo.render.min.max=Min/max rendering
-isisfish.graphCombo.render.surface=Area rendering
-isisfish.graphCombo.render.surface.stacked=Stacked area rendering
-isisfish.infoItem.label=defaultToolTip-fr.ifremer.resultat.InfoItem.label
-isisfish.infoItem.sum=Sum all elements
-isisfish.infoItem.sum.year=Sum elements per year
-isisfish.input.continueCells=Continue to cells
-isisfish.input.continueGears=Continue to gears
-isisfish.input.continueMetiers=Continue to metiers
-isisfish.input.continuePopulations=Continue to populations
-isisfish.input.continuePorts=Continue to ports
-isisfish.input.continueSetOfVessels=Continue to set of vessels
-isisfish.input.continueSpecies=Continue to species
-isisfish.input.continueStrategies=Continue to strategies
-isisfish.input.continueTripTypes=Continue to trip types
-isisfish.input.continueVesselTypes=Continue to vessel types
-isisfish.input.continueZones=Continue to zones
-isisfish.input.map.copytoclicboard=Copy to clipboard
-isisfish.input.menu.addRegion=Add region
-isisfish.input.menu.commit=Commit change
-isisfish.input.menu.copyRegion=Copy region
-isisfish.input.menu.exportRegion=Export region
-isisfish.input.menu.importRegion=Import region
-isisfish.input.menu.importRegionSimulation=Import region from simulation
-isisfish.input.menu.importRegionV2=Import region from v2
-isisfish.input.menu.importRenameRegion=Import region and rename
-isisfish.input.menu.removeLocaly=Remove localy
-isisfish.input.menu.removeLocalyRemotely=Remove localy and remotely
-isisfish.input.menu.sensitivity=Mexico
-isisfish.input.menu.sensitivity.export=Export database factors
-isisfish.input.menu.server=Server
-isisfish.input.newRegion=New region
-isisfish.input.selectRegion=Select region
-isisfish.input.sensitivity.export.cancel=Factor export canceled
-isisfish.input.sensitivity.export.complete=Factor export complete
-isisfish.input.sensitivity.export.running=Exporting factors...
-isisfish.input.sensitivity.export.title=Export factors
-isisfish.input.title=Fishery input
-isisfish.input.tree.cells=Cells
-isisfish.input.tree.gears=Gears
-isisfish.input.tree.metiers=Metiers
-isisfish.input.tree.populations=Populations
-isisfish.input.tree.ports=Ports
-isisfish.input.tree.setofvessels=Set of vessels
-isisfish.input.tree.species=Species
-isisfish.input.tree.strategies=Strategies
-isisfish.input.tree.triptypes=Trip types
-isisfish.input.tree.vesseltypes=Vessel types
-isisfish.input.tree.zones=Zones
-isisfish.launch.anonymous=read only
-isisfish.launch.email=email
-isisfish.launch.firstname=firstname
-isisfish.launch.init.done=init done in %1$s.
-isisfish.launch.lasstname=lasstname
-isisfish.launch.server.authenticationMethod=server access
-isisfish.launch.server.login=server login
-isisfish.launch.server.ssh.confirm.passphrase=confirm passphrase
-isisfish.launch.server.ssh.key.change=Change your ssh key
-isisfish.launch.server.ssh.key.generate=Generate ssh key
-isisfish.launch.server.ssh.no.passphrase=no passphrase
-isisfish.launch.server.ssh.passphrase=passphrase
-isisfish.launch.server.ssh.privateKeyFile=private ssh key
-isisfish.launch.server.ssh.publicKeyFile=public ssh key
-isisfish.launch.ssh=read-write (ssh)
-isisfish.launch.stop=Stopping simulation...
-isisfish.launching=after init done in %1$s.
-isisfish.log.addAppender=add appender [%1$s]
-isisfish.log.body=Message to add
-isisfish.log.closeAppender=closing appender %1$s for category %2$s
-isisfish.log.mail.failed=Can't send report by mail. Is your mail server up ? (I'm trying to contact the < %1$s > smtp server)
-isisfish.log.mail.send=A report has been sent to %1$s
-isisfish.log.mail.send.title=Send simulation %1$s by email
-isisfish.log.mailTo=Destination adress
-isisfish.log.removeAppender=remove appender [%1$s]
-isisfish.log.restoreLogLevel=swap back level for logger %1$s from level %2$s to level %3$s
-isisfish.log.sendAll=Send the complete simulation archive
-isisfish.log.sendMail=Send by email
-isisfish.log.simulation.name=IsisFish simulation %1$s
-isisfish.log.swapLogLevel=swap level for logger %1$s from level %2$s to level%3$s
-isisfish.log.tooltip.body=The message will be join to email
-isisfish.log.tooltip.mailTo=Enter destination adress
-isisfish.log.tooltip.sendAll=Send the complete simulation archive, or just the log file
-isisfish.log.tooltip.sendMail=Click here to send the email with files
-isisfish.message.add.objets.simulation=Add new objets simulation
-isisfish.message.backup.database.finished=backup database finished
-isisfish.message.backup.database.progress=backup database in progress
-isisfish.message.cancel.finished=Cancel finished
-isisfish.message.check.finished=Check finished
-isisfish.message.check.inprogress=Checking in process...
-isisfish.message.checking.cell=
-isisfish.message.choose.archive=choose archive file or directory
-isisfish.message.commit.cancelled=commit cancelled
-isisfish.message.commit.finished=commit finished
-isisfish.message.commit.region.canceled=Commit region canceled
-isisfish.message.commiting.region=Commiting region %1$s ...
-isisfish.message.compilation.time=Compilation time %1$ss
-isisfish.message.confirm.delete.object=Do you really want delete object %1$s
-isisfish.message.confirm.remove.region=Do you really want to remove the region %1$s ?
-isisfish.message.confirm.remove.script=Do you want to remove script '%1$s' ?
-isisfish.message.copy.finished=Copy finished
-isisfish.message.copy.region=Copy region
-isisfish.message.creating.region=Creating region %1$s
-isisfish.message.creation.finished=Creation finished
-isisfish.message.delete.canceled=delete canceled
-isisfish.message.delete.entities=Delete entities
-isisfish.message.delete.entity=Delete entity
-isisfish.message.delete.finished=delete finished
-isisfish.message.delete.object=To delete object %1$s, all next object will be deleted\n\n
-isisfish.message.directory.not.exists=
-isisfish.message.evaluation.finished=evaluation finished
-isisfish.message.export.done=export done
-isisfish.message.export.zip=Export to zip file %1$s
-isisfish.message.file.already.exists=File %s already exists, do you want overwrite it ?
-isisfish.message.file.overwrite=File exists, do you want overwrite it ?
-isisfish.message.import=Import %1$s
-isisfish.message.import.equation.convert=Manual equation convertion
-isisfish.message.import.finished=Import finished
-isisfish.message.import.region.name=Enter name for imported region
-isisfish.message.import.region.xml=XMLed Region
-isisfish.message.import.region.zipped=Zipped Region
-isisfish.message.import.scripts.file=Import scripts from a zipped archive
-isisfish.message.import.scripts.file.cancelled=Import scripts cancelled
-isisfish.message.import.scripts.file.done=Scripts imported
-isisfish.message.import.scripts.zipped=Zipped script (*.zip)
-isisfish.message.import.xml.v2.file=Import xml v2 file
-isisfish.message.import.zip=Import zip file
-isisfish.message.launchui.notlaunch=User interface not started
-isisfish.message.load.finished=Load finished
-isisfish.message.load.map=Try to load map file\: %1$s
-isisfish.message.loading.old.simulation=Loading old simulation...
-isisfish.message.loading.region=Loading region...
-isisfish.message.name.imported.region=Enter name for imported region
-isisfish.message.new.filename=Enter the name of the new file. (use only chars and _ and start with uppercase)
-isisfish.message.new.formule.category=Select the equation model's category
-isisfish.message.new.formule.title=New equation model
-isisfish.message.new.region.name=Enter new region name
-isisfish.message.old.simulation.loaded=Old simulation loaded
-isisfish.message.page.modified=This page has been modified, do you want to save it ?
-isisfish.message.presimulation.script.execution=Presimulation Script execution
-isisfish.message.recruitment.number.month=Input the number of month of recruitment
-isisfish.message.region.commited=Region commited
-isisfish.message.region.loaded=Region loaded
-isisfish.message.region.remove.canceled=Region remove canceled
-isisfish.message.region.removed=Region removed
-isisfish.message.remove.canceled=Remove canceled
-isisfish.message.remove.finished=Remove finished
-isisfish.message.removing.region=Removing region %1$s ...
-isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
-isisfish.message.save.finished=Save finished
-isisfish.message.saveModel.dialog=Input equation model name
-isisfish.message.saveModel.finished=Save model finished
-isisfish.message.script.commit=Enter commit message for modification on %s
-isisfish.message.setting.cache.aspects=Setting Cache aspects
-isisfish.message.setting.trace.aspects=Setting Trace aspects
-isisfish.message.simulation.ended=Simulation ended
-isisfish.message.simulation.execution=Simulation execution
-isisfish.message.simulation.prepare=Preparing simulation
-isisfish.message.tray.disabled=SystemTray disabled
-isisfish.metier.comments=Comments
-isisfish.metier.name=Name
-isisfish.metier.rangeValues=Range of values
-isisfish.metier.title=Metier
-isisfish.metierMonitor.metiers=Metiers
-isisfish.metierMonitor.strategies=Strategies
-isisfish.metierSeasonInfo.toString=%1$s season %2$s-%3$s
-isisfish.metierSeasonInfoSpecies.mainSpecies=Main species for the metier
-isisfish.metierSeasonInfoSpecies.selectSeason=Select a season
-isisfish.metierSeasonInfoSpecies.selectSpecies=Select a species
-isisfish.metierSeasonInfoSpecies.species=Species
-isisfish.metierSeasonInfoSpecies.targetFactor=Target factor
-isisfish.metierSeasonInfoSpecies.title=Catchable species
-isisfish.metierSeasonInfoZone.comments=Comments
-isisfish.metierSeasonInfoZone.season=Season
-isisfish.metierSeasonInfoZone.selectSeason=Select a season
-isisfish.metierSeasonInfoZone.title=Seasons / Zones
-isisfish.misc.databasemigration.question=La base de donn\u00E9e est en version \: %s.\n\nUne migration en version %s est n\u00E9c\u00E9ssaire.\nVoulez vous migrer la base de donn\u00E9es ?
-isisfish.misc.databasemigration.title=Database migration
-isisfish.misc.nuitonmigration=IsisFish has detected some code based on CodeLutin libraries in following user scripts.\nDo you want to migrate those script on new nuiton libraries ?
-isisfish.monitor.title=Application Monitor
-isisfish.month.april=april
-isisfish.month.august=august
-isisfish.month.december=december
-isisfish.month.february=february
-isisfish.month.january=january
-isisfish.month.july=july
-isisfish.month.june=june
-isisfish.month.march=march
-isisfish.month.may=may
-isisfish.month.november=november
-isisfish.month.october=october
-isisfish.month.september=september
-isisfish.params.changeLogLev=Change from level '%1$s' to level '%2$s'
-isisfish.params.clearFilter=Clear filter
-isisfish.params.description=Description
-isisfish.params.filter=Filter
-isisfish.params.loadOldSimulation=Load old simulation
-isisfish.params.nopopulation=No selected population
-isisfish.params.numberYear=Number of year
-isisfish.params.populationEffectives=%s's effectives
-isisfish.params.rules=Rules
-isisfish.params.rules.availables=Available rules
-isisfish.params.rules.selected=Selected rules
-isisfish.params.sensitivityName=Sensitivity name
-isisfish.params.simulationLauncher=Simulation launcher
-isisfish.params.simulationName=Simulation name
-isisfish.params.stategiesAndPopulations=Stategies and populations
-isisfish.params.title=Parameters
-isisfish.params.toString.fishery=P\u00EAcherie\: %1$s\n\n
-isisfish.params.toString.lib.logger.level=Level of libraries' logger \: %1$s
-isisfish.params.toString.number.years=Number of years\: %1$s\n\n
-isisfish.params.toString.plan=Plan\: %1$s
-isisfish.params.toString.plan.number=Analyse plan sequence number\: %1$s\n\n
-isisfish.params.toString.populations=Populations \:
-isisfish.params.toString.rule=Rule\: %1$s
-isisfish.params.toString.script.logger.level=Level of scripts' logger \: %1$s
-isisfish.params.toString.script.presimulation=Script de presimulation
-isisfish.params.toString.simul.logger.level=Level of simulator's logger \: %1$s
-isisfish.params.toString.simulation.done=Simulation done with \: %1$s
-isisfish.params.toString.strategies=Strat\u00E9gies \:
-isisfish.params.useAnalysePlan=Use simulation plan
-isisfish.params.usePreSimulationScript=Use pre simulation script
-isisfish.population.capturability=Capturability
-isisfish.population.comments=Comments
-isisfish.population.group=Group
-isisfish.population.groups=Groups
-isisfish.population.mappingZoneReproZoneRecru=MappingZoneReproZoneRecru
-isisfish.population.matrixAbundance=Abundance matrix
-isisfish.population.matrixAbundance1D=matrixAbundance1D
-isisfish.population.recruitment=Recruitment
-isisfish.population.reproduction=Reproduction
-isisfish.population.season=Season
-isisfish.population.zones=Zones
-isisfish.populationBasics.confirmCreateGroups=Warning, running groups creation wizard will delete all existing groups and objects which depend on it.\nDo you want to re-create groups ?
-isisfish.populationBasics.geographicID=Geographic identifier
-isisfish.populationBasics.growth=Growth
-isisfish.populationBasics.growthReverse=Reverse growth
-isisfish.populationBasics.maturityGroup=Maturity group
-isisfish.populationBasics.name=Name
-isisfish.populationBasics.numberGroup=Number of group
-isisfish.populationBasics.plusGroup=Plus group
-isisfish.populationBasics.recreateClasses=Recreate classes
-isisfish.populationBasics.title=Population input
-isisfish.populationCapturability.comments=Comments
-isisfish.populationCapturability.selectCoefficient=Select a coefficient per season and per class
-isisfish.populationCapturability.title=Capturability input
-isisfish.populationEquation.meanWeight=Mean weight
-isisfish.populationEquation.naturalDeathRate=Natural death rate
-isisfish.populationEquation.price=Price
-isisfish.populationEquation.title=Equations input
-isisfish.populationGroup.age=Age
-isisfish.populationGroup.comments=Comments
-isisfish.populationGroup.length=Length
-isisfish.populationGroup.maximumLength=Maximum length
-isisfish.populationGroup.meanWeigth=Mean Weigth
-isisfish.populationGroup.minimumLength=Minimum length
-isisfish.populationGroup.naturalDeathRate=Natural death rate
-isisfish.populationGroup.price=Price
-isisfish.populationGroup.reproductionRate=Reproduction rate
-isisfish.populationGroup.title=Population group input
-isisfish.populationGroup.toString=%1$s Group %2$s
-isisfish.populationMigration.comments=Comments
-isisfish.populationMigration.selectSeason=Select a season
-isisfish.populationMigration.title=Migration
-isisfish.populationMigration.useEquation=Use equation
-isisfish.populationMigrationEmigration.coefficient=Coefficient
-isisfish.populationMigrationEmigration.departureZone=Departure Zone
-isisfish.populationMigrationEmigration.title=Population emigration
-isisfish.populationMigrationImmigration.arrivalZone=Arrival Zone
-isisfish.populationMigrationImmigration.coefficient=Coefficient
-isisfish.populationMigrationImmigration.title=Population immigration
-isisfish.populationMigrationMigration.arrivalZone=Arrival zone
-isisfish.populationMigrationMigration.coefficient=Coefficient
-isisfish.populationMigrationMigration.departureZone=Departure zone
-isisfish.populationMigrationMigration.title=Population migration
-isisfish.populationRecruitment.comments=Comments
-isisfish.populationRecruitment.monthgapgetweenreprorecruitment=Month gap between repro and recruitment
-isisfish.populationRecruitment.recruitmentDistribution=Recruitment distribution
-isisfish.populationRecruitment.reproductionEquation=Reproduction equation
-isisfish.populationRecruitment.title=Recruitment input
-isisfish.populationSeasonInfo.arrival=Arrival
-isisfish.populationSeasonInfo.departure=Departure
-isisfish.populationSeasonInfo.distributionSpawing=Distribution of spawing
-isisfish.populationSeasonInfo.emigration=Emigration
-isisfish.populationSeasonInfo.group=Group
-isisfish.populationSeasonInfo.immigration=Immigration
-isisfish.populationSeasonInfo.migration=Migration
-isisfish.populationSeasonInfo.months=Months
-isisfish.populationSeasonInfo.toString=%1$s season %2$s-%3$s
-isisfish.populationSeasons.Reproduction=Reproduction
-isisfish.populationSeasons.changeGroup=Change of group
-isisfish.populationSeasons.comments=Comments
-isisfish.populationSeasons.computeCoefficient=Calculate coefficient
-isisfish.populationSeasons.distributionSpawning=Distribution of spawning
-isisfish.populationSeasons.noSpacialized=Not spacialized
-isisfish.populationSeasons.selectSeason=Select a season
-isisfish.populationSeasons.showSpacialized=Show the spacialized
-isisfish.populationSeasons.spacialized=Spacialized
-isisfish.populationSeasons.spacialized.visualisation=Spacialized
-isisfish.populationSeasons.title=Saisons
-isisfish.populationZones.betweenSpawningRecruitmentAreas=Match between spawning and recruitment areas
-isisfish.populationZones.selectPopulationAreas=Select the population areas
-isisfish.populationZones.selectRecruitmentAreas=Select the recruitment areas
-isisfish.populationZones.selectSpawningAreas=Select the spawning areas
-isisfish.populationZones.title=Zones
-isisfish.port.cell=Port cell
-isisfish.port.comments=Comments
-isisfish.port.name=Name
-isisfish.preScript.backParameter=Back to parameter tab
-isisfish.preScript.title=Pre simulation script
-isisfish.queue.clearDone=Clear done jobs
-isisfish.queue.id=Id
-isisfish.queue.launcher=Simulation launcher
-isisfish.queue.masterplan=Master plan
-isisfish.queue.notstarted=Not started
-isisfish.queue.plan=Plan
-isisfish.queue.progression=Progress
-isisfish.queue.restartSimulation=Restart
-isisfish.queue.showLog=Show simulation log
-isisfish.queue.simulationLaunch=Simulation queue launch
-isisfish.queue.status=Status
-isisfish.queue.stopSimulation=Stop simulation
-isisfish.queue.title=Queue
-isisfish.result.abundance=Abondance
-isisfish.result.add=Add a result
-isisfish.result.begin.simulation=Simulation start \:
-isisfish.result.capture=Capture
-isisfish.result.capture.metier=Capture by metier
-isisfish.result.choose.simulation=Choose a Simulation
-isisfish.result.datas=Datas
-isisfish.result.dimension=Dimension
-isisfish.result.end.simulation=Simuation end \:
-isisfish.result.export=Export
-isisfish.result.export.file=Export text file
-isisfish.result.file=File
-isisfish.result.graph=Graph
-isisfish.result.map=Map
-isisfish.result.new.window=Open a new window
-isisfish.result.quit=Quitter
-isisfish.result.reject.metier=Rejet par metier
-isisfish.result.remove.simulation=Remove simulation
-isisfish.result.show.simulation.log=Show logs
-isisfish.result.statusBar=\
-isisfish.result.stress.metier=Effort par metier
-isisfish.result.summary=Summary
-isisfish.result.title=Results
-isisfish.result.unload.metier=Debarquement par metier
-isisfish.resultChoice.save=Results to save
-isisfish.resultChoice.saved=Results saved
-isisfish.resultChoice.title=Result choice
-isisfish.script.check=Check
-isisfish.script.check.tooltip=Check syntax of the current script
-isisfish.script.commit=Commit
-isisfish.script.commit.tooltip=Commit script to SVN server
-isisfish.script.compilation.failed=%s
-isisfish.script.compilation.ok=Compilation complete.\n---------------------\n\n%s
-isisfish.script.compilingfile=Compiling %s...
-isisfish.script.copy=Copy
-isisfish.script.copy.tooltip=Copy current selection (Ctrl-c)
-isisfish.script.cut=Cut
-isisfish.script.cut.tooltip=Cut current selection (Ctrl-x)
-isisfish.script.evaluate=Evaluate
-isisfish.script.evaluate.tooltip=Try to eval current script (must be have main() method)
-isisfish.script.export=Export
-isisfish.script.export.checkAll=(Un)Check all scripts
-isisfish.script.export.chooseDir=...
-isisfish.script.export.tooltip=Export selected script(s) to zip archive
-isisfish.script.export.tooltip.checkAll=(Un)Check all scripts to export
-isisfish.script.export.tooltip.chooseDir=Choose directory to export script to
-isisfish.script.import=Import scripts from archive
-isisfish.script.import.cancel=Cancel
-isisfish.script.import.checkAll=(Un)Check all script to import
-isisfish.script.import.import=Import
-isisfish.script.import.labelAdd=Following files will be added. Confirm adding.
-isisfish.script.import.labelOverwrite=Following files already exists. Confirm overridding.
-isisfish.script.import.tooltip.checkAll=(Un)Check all scripts
-isisfish.script.javadoc.ok=Javadoc generated-----------------\n\n%s
-isisfish.script.menu.checkAllSyntax=Check all scripts
-isisfish.script.menu.checkSyntax=Check syntax
-isisfish.script.menu.code=Code
-isisfish.script.menu.commit=Commit script to server
-isisfish.script.menu.copy=Copy
-isisfish.script.menu.cut=Cut
-isisfish.script.menu.deleteLocaly=Delete localy
-isisfish.script.menu.deleteLocalyServer=Delete localy and on server
-isisfish.script.menu.diff=Display diff with server version
-isisfish.script.menu.edit=Edit
-isisfish.script.menu.evaluate=Evaluate
-isisfish.script.menu.file=File
-isisfish.script.menu.javadocgenerate=Generate script javadoc
-isisfish.script.menu.javadocgenerated=Javadoc generated in %s
-isisfish.script.menu.javadocgenerating=Generating javadoc in %s...
-isisfish.script.menu.javadocshow=Show script javadoc
-isisfish.script.menu.new=New
-isisfish.script.menu.paste=Paste
-isisfish.script.menu.save=Save
-isisfish.script.menu.txtExport=Export
-isisfish.script.menu.txtImport=Import
-isisfish.script.menu.txtNewAnalysePlan=New analyse plan
-isisfish.script.menu.txtNewEquationModel=New equation model
-isisfish.script.menu.txtNewExport=New export
-isisfish.script.menu.txtNewRule=New rule
-isisfish.script.menu.txtNewScript=New script
-isisfish.script.menu.txtNewSensitivity=New sensitivity calculator
-isisfish.script.menu.txtNewSensitivityExport=New sensitivity export
-isisfish.script.menu.txtNewSimulator=New simulator
-isisfish.script.menu.txtVCS=Server
-isisfish.script.menu.update=Update from server
-isisfish.script.new=New
-isisfish.script.new.tooltip=Create new script
-isisfish.script.paste=Paste
-isisfish.script.paste.tooltip=Paste current selection (Ctrl-v)
-isisfish.script.save=Save
-isisfish.script.save.tooltip=Save script
-isisfish.script.title=Script Editor
-isisfish.season.toString=season %1$s-%2$s
-isisfish.selectivity.equation=Equation
-isisfish.selectivity.selectPopulation=Select a population
-isisfish.selectivity.title=Selectivity
-isisfish.sens.backParameter=Back to parameter tab
-isisfish.sens.title=Simulation plan
-isisfish.sensitivity.coefficient=Coefficient (in %)
-isisfish.sensitivity.comment=Comment
-isisfish.sensitivity.continue=Continuous factor
-isisfish.sensitivity.discret=Discret factor
-isisfish.sensitivity.displaysecondpass=Display results
-isisfish.sensitivity.equation.variable.action=Action
-isisfish.sensitivity.equation.variable.coefficient=Coef. (in %)
-isisfish.sensitivity.equation.variable.name=Name
-isisfish.sensitivity.equation.variable.operator=Operator
-isisfish.sensitivity.equation.variable.value=Value
-isisfish.sensitivity.export=Export
-isisfish.sensitivity.factor=Factor
-isisfish.sensitivity.factors=Factors
-isisfish.sensitivity.firstValue=First value
-isisfish.sensitivity.increment=Cardinality
-isisfish.sensitivity.lastValue=Last value
-isisfish.sensitivity.methodfactornotsupported=The selected sensitivity method handles factors cardinalities
-isisfish.sensitivity.name=Factor name
-isisfish.sensitivity.operator=Operator
-isisfish.sensitivity.secondpass=Analyze results
-isisfish.sensitivity.secondpass.title=Analyze results
-isisfish.sensitivity.select=Method
-isisfish.sensitivity.selectDiscretNumber=Number of factors
-isisfish.sensitivity.title=Sensitivity analysis
-isisfish.sensitivity.validDiscretNumber=Ok
-isisfish.sensitivity.value=Value
-isisfish.sensitivityChooser.title=Sensitivity method
-isisfish.server.ssh.generateKey.title=Generate Ssh key
-isisfish.setOfVessels.comments=Comments
-isisfish.setOfVessels.fixedCosts=Fixed costs
-isisfish.setOfVessels.name=Name
-isisfish.setOfVessels.numberOfVessels=Number of vessels
-isisfish.setOfVessels.technicalEfficiency=Technical efficiency
-isisfish.setOfVessels.title=Caracteristics
-isisfish.setOfVessels.vesselType=Vessel type
-isisfish.simpleResult.more.information=Click a cell for more information...
-isisfish.simulation.log.console.title=Log console for simulation '%1$s'
-isisfish.simulation.log.showConsole=Display log console for simulation %1$s
-isisfish.simulation.menu.import=Restore simulation parameters
-isisfish.simulation.menu.save=Save simulation parameters
-isisfish.simulation.menu.simulation=Simulation
-isisfish.simulation.name=Simulation name
-isisfish.simulation.remote.message.connection=Connecting to Caparmor
-isisfish.simulation.remote.message.deletingfiles=Deleting simulation files
-isisfish.simulation.remote.message.downloadresults=Downloading results
-isisfish.simulation.remote.message.upload=Uploading simulation
-isisfish.simulation.remote.message.waitingstart=Waiting for simulation start
-isisfish.simulation.restarting=Restarting...
-isisfish.simulation.title=Simulation launcher
-isisfish.simulator.launcher.inprocess=in current process
-isisfish.simulator.launcher.remote=on Caparmor server
-isisfish.simulator.launcher.subprocess=in subprocess
-isisfish.simulator.simulaction.badid=Can't start simulation, bad id\: %s
-isisfish.simulator.ssh.configuration.connecting=Connection...
-isisfish.simulator.ssh.configuration.connectingpk=Connection with public key...
-isisfish.simulator.ssh.configuration.connection=Connection information
-isisfish.simulator.ssh.configuration.connectionerror=Can't connect
-isisfish.simulator.ssh.configuration.connectionok=Connection successfull
-isisfish.simulator.ssh.configuration.environment=Caparmor configuration
-isisfish.simulator.ssh.configuration.freespace=Used space disk \:
-isisfish.simulator.ssh.configuration.freespace.confirmdelete=Warning, deleting folder '%s' is irreversible.\nDo you confirm the deletion of contents ?
-isisfish.simulator.ssh.configuration.freespace.label=Size of %s \: %s
-isisfish.simulator.ssh.configuration.invalidpassphrase=Invalid passphrase
-isisfish.simulator.ssh.configuration.keygenerate=Generate
-isisfish.simulator.ssh.configuration.status=Status
-isisfish.simulator.ssh.configuration.test=Test configuration
-isisfish.simulator.ssh.configuration.title=Caparmor launcher configuration
-isisfish.simulator.subprocess.readoutput.error=
-isisfish.species.age=Age
-isisfish.species.cee=CEE
-isisfish.species.comments=Comments
-isisfish.species.length=Length
-isisfish.species.name=Species name
-isisfish.species.rubbinCode=Rubbin code
-isisfish.species.scientificName=Scientific name
-isisfish.species.structured=Structured
-isisfish.ssh.askpassphrase.message=Enter passphrase for key '%s' \:
-isisfish.ssh.askpassphrase.title=SSH key unlocking
-isisfish.ssh.askpassphrase.wrongpassphrase=Wrong passphrase, enter a new one for key '%s' \:
-isisfish.strategy.comments=Comments
-isisfish.strategy.inactivity=Inactivity equation
-isisfish.strategy.inactivityEquationUsed=Use inactivity equation
-isisfish.strategy.name=Name
-isisfish.strategy.proportionSetOfVessels=Set of vessels proportion
-isisfish.strategy.title=Caracteristics
-isisfish.strategyMonthInfo.metier=Metier
-isisfish.strategyMonthInfo.minInactivityDays=Min inactivity days
-isisfish.strategyMonthInfo.numberOfTrips=Number of trips
-isisfish.strategyMonthInfo.proportion=Proportion
-isisfish.strategyMonthInfo.title=StrategyMonthInfo
-isisfish.strategyMonthInfo.toString=%1$s %2$s
-isisfish.timeUnit.day=Day
-isisfish.timeUnit.hours=Hours
-isisfish.tray.simulation=Isis-fish - %1$s \: %2$s/%3$s
-isisfish.tray.simulation.multi=Isis-fish - %s / %s
-isisfish.tray.simulation.no=Isis-fish - No simulation
-isisfish.tripType.comments=Comments
-isisfish.tripType.duration=Duration
-isisfish.tripType.minTime=Minimum time between trips
-isisfish.tripType.name=Name
-isisfish.vcs.ask.passphrase=Enter your pass phrase (if your private key have one).
-isisfish.vcs.ask.passphrase.title=Ask your pass phrase
-isisfish.vcs.commit=vcs.commit
-isisfish.vcs.commit.cancel=vcs.commit.cancel
-isisfish.vcs.commit.label=vcs.commit.label
-isisfish.vcs.commit.ok=vcs.commit.ok
-isisfish.vcs.factory.cantinstanciate=Can't instanciate wanted VCS (%s), use default
-isisfish.vcs.howto.save.key=How to register my public key on labs forge
-isisfish.vcs.init.notfoundcantdownload=No database version %s found and can't get it.\nYou must go to ISIS-Fish web site and download database manually.
-isisfish.vcs.init.wrongprotocol=Your database repository\: %s\n don't use correct protocol.\nDo you want to make backup of your database and take the correct one ?
-isisfish.vcs.save.key=Go to labs forge to register my public key
-isisfish.vcs.switchprotocol.confirm=Protocol to access repository script has changed.\nDo you want to switch your repository ?
-isisfish.vcs.switchtag.warningconflict=Your repository is now up-to-date, but following files are conflicted, you may check them \:
-isisfish.vcs.switchversion.confirm=You don't use correct repository script for your application version %s.\nDo you want to switch your repository ?
-isisfish.vcs.update=vcs.update
-isisfish.vcs.update.cancel=cancel
-isisfish.vcs.update.checkAll=checkAll
-isisfish.vcs.update.local=local
-isisfish.vcs.update.local.modified=modified
-isisfish.vcs.update.local.outofdateAndModified=outofdateAndModified
-isisfish.vcs.update.local.tooltip.modified=
-isisfish.vcs.update.local.tooltip.outofdateAndModified=
-isisfish.vcs.update.local.tooltip.unversionned=
-isisfish.vcs.update.local.unversionned=unversionned
-isisfish.vcs.update.ok=ok
-isisfish.vcs.update.remote=remote
-isisfish.vcs.update.remote.missing=missing
-isisfish.vcs.update.remote.outofdate=outofdate
-isisfish.vcs.update.remote.tooltip.missing=
-isisfish.vcs.update.remote.tooltip.outofdate=
-isisfish.vcs.update.tooltip.checkAll=checkAll
-isisfish.vcs.update.tooltip.local=
-isisfish.vcs.update.tooltip.remote=
-isisfish.vcs.update.warningconflict=Your repository is now up-to-date, but following files are conflicted, you may check them \:\n
-isisfish.vcs.updateconfirm=updateconfirm
-isisfish.vcs.updateconfirm.cancel=cancel
-isisfish.vcs.updateconfirm.checkAll=checkAll
-isisfish.vcs.updateconfirm.label=
-isisfish.vcs.updateconfirm.label2=
-isisfish.vcs.updateconfirm.ok=ok
-isisfish.vcs.updateconfirm.tooltip.checkAll=
-isisfish.vcs.updaterepository.confirm=Your repository is not up to date.\nDo you want to update following files ?
-isisfish.vcs.vcssvn.add.error=Can't add file
-isisfish.vcs.vcssvn.add.errorreadonly=You can't add file, this repository is readonly
-isisfish.vcs.vcssvn.checkProtocol.error=Can't get address on serveur of local repository
-isisfish.vcs.vcssvn.checkProtocol.relocate=Relocate repository %s from %s to %s
-isisfish.vcs.vcssvn.checkout.error=Can't checkout
-isisfish.vcs.vcssvn.cleanup.error=Can't cleanup working copy
-isisfish.vcs.vcssvn.commit.error=Can't commit files
-isisfish.vcs.vcssvn.commit.errorreadonly=You can't commit file, this repository is readonly
-isisfish.vcs.vcssvn.delete.error=Can't delete file
-isisfish.vcs.vcssvn.delete.errorreadonly=You can't delete file, this repository is readonly
-isisfish.vcs.vcssvn.diff.error=Can't get diff
-isisfish.vcs.vcssvn.gettag.error=Can't get address on serveur of local repository
-isisfish.vcs.vcssvn.getupdate.error=Can't status file
-isisfish.vcs.vcssvn.global.filelocalandremotestatus=file %s status is (l\:%s/r\:%s)
-isisfish.vcs.vcssvn.global.filestatus=status for %s is %s
-isisfish.vcs.vcssvn.global.foundUpdatedFile=add %s as updated file
-isisfish.vcs.vcssvn.global.torevision=At revision \: %d
-isisfish.vcs.vcssvn.isconnected.switchoff=Can't connect to serveur, switch to off line\: %s
-isisfish.vcs.vcssvn.isconnected.switchto=Connection to serveur available, switch on line\: %s
-isisfish.vcs.vcssvn.isonremote.error=file %s is not on server
-isisfish.vcs.vcssvn.istag.notexist=Tag %s don't exist
-isisfish.vcs.vcssvn.isuptodate.error=Can't get file status
-isisfish.vcs.vcssvn.list.error=Can't list files
-isisfish.vcs.vcssvn.localstatus.error=Can't status file
-isisfish.vcs.vcssvn.remotestatus.error=Can't status file
-isisfish.vcs.vcssvn.setTag.error=Can't get address on server of local repository
-isisfish.vcs.vcssvn.settag.switchfromto=Switch repository tag from %s to %s
-isisfish.vcs.vcssvn.update.error=Can't update files
-isisfish.vcs.vcssvn.update.notinlocal=Can't update file that not in local repository
-isisfish.versionStorage.removed=Removed
-isisfish.vesselType.activityRange=Activity range
-isisfish.vesselType.comments=Comments
-isisfish.vesselType.fuelCost=Fuel cost of travel
-isisfish.vesselType.length=Length
-isisfish.vesselType.maxDuration=Maximum trip duration
-isisfish.vesselType.miniCrew=Minimum crew size
-isisfish.vesselType.name=Name
-isisfish.vesselType.speed=Speed
-isisfish.welcome.menu.about=About
-isisfish.welcome.menu.api=API
-isisfish.welcome.menu.close=Close
-isisfish.welcome.menu.configuration=Configuration
-isisfish.welcome.menu.configuration.sshlauncher=Caparmor configuration
-isisfish.welcome.menu.configuration.vcs=VCS Configuration
-isisfish.welcome.menu.file=File
-isisfish.welcome.menu.frame=Window
-isisfish.welcome.menu.help=Help
-isisfish.welcome.menu.help.isisfish=Isis-Fish Website
-isisfish.welcome.menu.help.isisfishapi=Isis-Fish API
-isisfish.welcome.menu.help.javaapi=Java API
-isisfish.welcome.menu.help.matrixapi=NuitonMatrix API
-isisfish.welcome.menu.help.topiaapi=ToPIA API
-isisfish.welcome.menu.input=Input
-isisfish.welcome.menu.monitor=Logs frame
-isisfish.welcome.menu.queue=Simulation queue
-isisfish.welcome.menu.result=Result
-isisfish.welcome.menu.script=Script
-isisfish.welcome.menu.simulation=Simulation launcher
-isisfish.welcome.menu.synchro=Server synchronization
-isisfish.welcome.title=Ifremer Simulation
-isisfish.wizardGroupCreation.allGroupsSameSize=All groups have the same size
-isisfish.wizardGroupCreation.allValues=Input all the values
-isisfish.wizardGroupCreation.computedGrowthCurve=Computed by a growth curve
-isisfish.wizardGroupCreation.firstAge=First age
-isisfish.wizardGroupCreation.firstAgeHelp=First age \= minimal age
-isisfish.wizardGroupCreation.firstGroup=First group
-isisfish.wizardGroupCreation.firstLength=First min length
-isisfish.wizardGroupCreation.firstLengthHelp=First min length \= minimal length of first group
-isisfish.wizardGroupCreation.gapBetweenGroupsHelp=gap between to group is 1 year.
-isisfish.wizardGroupCreation.groupWidth=Group width
-isisfish.wizardGroupCreation.groupWidthHelp=Group width \= width of group
-isisfish.wizardGroupCreation.lastAge=Last age
-isisfish.wizardGroupCreation.lastAgeHelp=Last age \= maximal age
-isisfish.wizardGroupCreation.maxGroupsLength=Maximal groups length
-isisfish.wizardGroupCreation.maxGroupsLengthHelp=A semicolon ';' must separe maximal length of each group
-isisfish.wizardGroupCreation.numberGroup=Number of group
-isisfish.wizardGroupCreation.numberGroupHelp=number of Group \= number of group wanted
-isisfish.wizardGroupCreation.numberGroups=Number of groups
-isisfish.wizardGroupCreation.populationCharacteristics=Input the population characteristics
-isisfish.wizardGroupCreation.selectGroupLengthType=Select group length type
-isisfish.wizardGroupCreation.timeStep=Time step (in month)
-isisfish.wizardGroupCreation.title=Group creation
-isisfish.wizardGroupCreation.undefinedGrowthEquation=The equation used is the population's growth curve, it needs to be defined first.
-isisfish.zone.cells=Zone cells
-isisfish.zone.comments=Comments
-isisfish.zone.name=Name
-region\ already\ exists\ %s\ use\ 'force'\ argument\ to\ force\ overwrite=
-simulate\ %s\ with\ file\ %s=
Deleted: isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-fr_FR.properties
===================================================================
--- isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-fr_FR.properties 2011-03-04 12:41:46 UTC (rev 3155)
+++ isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-fr_FR.properties 2011-03-11 17:33:15 UTC (rev 3156)
@@ -1,1125 +0,0 @@
-Add\ to\ default\ queue=
-Analyse\ plan\ error,\ too\ many\ simulation\ for\ %s\ \:\ %s=
-Can't\ add\ result\ '%1$s'\ at\ date\ %2$s=Can't add result '%1$s' at date %2$s
-Can't\ add\ simulation\:\ %s=
-Can't\ create\ simulation\ logger=Can't create simulation logger
-Can't\ delete\ simulation=
-Can't\ delete\ simulation\ %s\ =
-Can't\ display\ simulation\ log=
-Can't\ do\ post\ action\ %s=
-Can't\ do\ simulation\ %s=
-Can't\ download\ archive\ \:\ %s=
-Can't\ download\ file=
-Can't\ evaluate\ simulation\ prescript=
-Can't\ export\ simulation\ %s=
-Can't\ get\ changlog=Impossible d'obtenir de changelog
-Can't\ get\ result\:\ %1$s=Can't get result\: %1$s
-Can't\ instanciate\ export\ %1$s=Can't instanciate export %1$s
-Can't\ instantiate\ %s=
-Can't\ open\ log\ for\ %s=
-Can't\ open\ simulation\ internal\ frame=
-Can't\ read\ ssh\ key\ \:\ %s=
-Can't\ simulate\ %s=
-Check\ state\ of\ local\ repository\:\ %s=
-Command\ '%s'\ fail\ to\ execute=
-Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
-Error\ during\ vcs\ initialisation=
-Error\ while\ uploading\ public\ key\ to\ remote\ serveur\ authorized_keys=
-Generate\ next\ simulation=
-Import\ one\ java\ file\ script\ source=
-Import\ simulation\ file\ %s\ in\ directory\ %s\ and\ rename\ from\ %s\ to\ %s=
-Import\ zipped\ file\ containing\ all\ scripts\ directory\ structure=
-Info=Info
-Jobs\ submited\ is\ not\ ItemSimulation\ but\ was\ %s=
-Last\ entry\ was\ %s\ extract\ name\ %s=
-Launcher\ %s\ will\ be\ stopped\ because\ there\ are\ too\ many\ error\ (%s)=
-Local\ repository\ don't\ exist=
-Local\ repository\ exists\ but\ it's\ not\ valide\ for\ current\ vcs\:\ %s=
-Normal\ stop\ thread,\ this\ is\ not\ an\ error=
-Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
-Process\ template\ error=
-Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
-Region\ %s\ already\ inited=La r\u00E9gion %s a d\u00E9j\u00E0 \u00E9t\u00E9 initialis\u00E9e
-Remote\ control\ file\ doesn't\ exists\ %s=
-Remote\ information\ file\ doesn't\ exists\ %s=
-Rename\ data\ directory\ to\ %s=
-Show\ help=
-Show\ version=
-SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
-Skip\ data\ migration\ (disabled)=
-Ssh\ key\ found\ '%s'\ will\ be\ used\ to\ connect\ to=
-Stop\ simulation\ plan,\ because\ can't\ call\ afterSimulation\ correctly\ on\ plan\ %s=
-SubProcess\ start\:\ %s\ %s=
-Switch\ repository\ type\ to\ none=
-Try\ to\ log\ on\ %s@%s\:%d=
-Use\ branches,\ switch\ not\ needed=
-User\ restart\ simulation\ %s=
-User\ stop\ simulation\ %s=
-could\ not\ close\ reader\ %1$s=could not close reader %1$s
-could\ not\ create\ simulation\ filter\ model\ for\ reason\ %1$s=could not create simulation filter model for reason %1$s
-could\ not\ filter\ on\ simulations=could not filter on simulations
-could\ not\ found\ %s=
-could\ not\ found\ log\ file\ %1$s=could not found log file %1$s
-could\ not\ found\ region\ %s=
-could\ not\ found\ simulation\ %s=
-could\ not\ read\ at\ offset\ %1$s\ for\ reason\ %2$s=could not read at offset %1$s for reason %2$s
-destination\ already\ exists\ %s\ use\ 'force'\ argument\ to\ force\ overwrite=
-destination\ already\ exists\ %s\ use\ \\'force\\'\ argument\ to\ force\ overwrite=
-directory\ %s\ must\ be\ a\ directory=
-filter\ loaded\ in\ %1$s\ ms\ \:\ found\ %2$s\ lines.=filter loaded in %1$s ms \: found %2$s lines.
-isisfish.about.abouthtmltext=<html><b>Isis-Fish (%s)</b><br /><br />Copyright IFREMER-MAERHA 2000-2010.<br /><br /><a href\="http\://isis-fish.labs.libre-entreprise.org">http\://isis-fish.labs.libre-entreprise.org</a><br /><br />Merci de rapporter les bugs.<html>
-isisfish.about.licensetext=Vous pouvez modifier et redistribuer ce programme sous les conditions \u00E9nonc\u00E9es par la licence GNU GPL (version 2 ou ult\u00E9rieure). Une copie de la licence GPL est dans le fichier \u00AB\u00A0LICENSE.txt\u00A0\u00BB fourni avec Isis-Fish. Tous droits r\u00E9serv\u00E9s. Aucune garantie n'est fournie pour l'utilisation de ce programme.
-isisfish.about.title=\u00C0 propos de Isis-Fish...
-isisfish.advancedParameters.title=Param\u00E8tres avanc\u00E9s
-isisfish.advancedParams.freeParameters=Param\u00E8tres libres
-isisfish.advancedParams.libLevelLogger=Niveau de tracage des librairies
-isisfish.advancedParams.scriptLevelLogger=Niveau de tracage des scripts
-isisfish.advancedParams.simulLevelLogger=Niveau de tracage du simulateur
-isisfish.advancedParams.simulationCache=Simulation cache
-isisfish.advancedParams.simulationStatistique=Simulation statistique
-isisfish.advancedParams.simulatorUse=Simulateur \u00E0 utiliser
-isisfish.cell.comments=Commentaires
-isisfish.cell.land=Terre
-isisfish.cell.latitude=Latitude
-isisfish.cell.longitude=Longitude
-isisfish.cell.name=Nom
-isisfish.change.equation=Ne peut pas changer l'\u00E9quation
-isisfish.commit.message=Entrer un message de commit
-isisfish.common.add=Ajouter
-isisfish.common.add.short=Aj.
-isisfish.common.alert=alerte
-isisfish.common.apply=Appliquer
-isisfish.common.blank=\
-isisfish.common.cancel=Annuler
-isisfish.common.check=V\u00E9rifier
-isisfish.common.clear=Effacer
-isisfish.common.confirm=Confirmation
-isisfish.common.date=Date
-isisfish.common.debug=Debug
-isisfish.common.delete=Supprimer
-isisfish.common.duration.inhours=En heures
-isisfish.common.ellipsis=...
-isisfish.common.emigration=\u00E9migration
-isisfish.common.equation=Equation
-isisfish.common.error=Erreur
-isisfish.common.file=Fichier
-isisfish.common.finish=Terminer
-isisfish.common.gear=Engin
-isisfish.common.immigration=immigration
-isisfish.common.info=Info
-isisfish.common.migration=migration
-isisfish.common.module=Module
-isisfish.common.month=mois %1$s
-isisfish.common.name=Nom
-isisfish.common.new=Nouveau
-isisfish.common.newMatrix=Nouvelle matrice
-isisfish.common.next=Suivant
-isisfish.common.ok=Ok
-isisfish.common.openEditor=Ouvrir l'\u00E9diteur
-isisfish.common.population=Population
-isisfish.common.populationGroup=Groupe de population
-isisfish.common.populations=Populations
-isisfish.common.port=Port
-isisfish.common.prev=Pr\u00E9c\u00E9dent
-isisfish.common.region=R\u00E9gion
-isisfish.common.remove=Supprimer
-isisfish.common.reset=R\u00E9initialiser
-isisfish.common.save=Sauver
-isisfish.common.saveModel=Sauver comme mod\u00E8le
-isisfish.common.saveNextSimulation=Sauver pour la prochaine simulation
-isisfish.common.season=Saison
-isisfish.common.setOfVessels=Flottille
-isisfish.common.simulate=Simuler
-isisfish.common.strategies=Strat\u00E9gies
-isisfish.common.sum=somme
-isisfish.common.tag=Tag
-isisfish.common.tripType=Type de trajet
-isisfish.common.valid=Valider
-isisfish.common.value=Valeur
-isisfish.common.warn=Warning
-isisfish.common.year=ann\u00E9e
-isisfish.common.zone=Zone
-isisfish.config.category.main=Globale
-isisfish.config.category.main.description=Configuration globale
-isisfish.config.category.misc=Divers
-isisfish.config.category.misc.description=Divers
-isisfish.config.category.versioning=VCS
-isisfish.config.category.versioning.description=Gestionnaire de version
-isisfish.config.database.lockmode.description=M\u00E9thode de v\u00E9rouillage \u00E0 utiliser pour la base de donn\u00E9es
-isisfish.config.main.compileDirectory.description=le r\u00E9pertoire o\u00F9 sont compil\u00E9s les scripts
-isisfish.config.main.configFileName.description=le fichier de configuration \u00E0 utiliser
-isisfish.config.main.defaultBackupDirectory.description=le r\u00E9pertoire o\u00F9 stocker les backups des donn\u00E9es
-isisfish.config.main.defaultExportNames.description=les noms des exports \u00E0 effectuer apr\u00E8s une simulation
-isisfish.config.main.defaultMapFile.description=noms de la carte par d\u00E9faut pour une base sans cartes
-isisfish.config.main.defaultResultNames.description=les noms des r\u00E9sultats \u00E0 traiter durant une simulation
-isisfish.config.main.defaultSimulator.description=le nom du simulateur par d\u00E9faut \u00E0 utiliser lors d'une simulation
-isisfish.config.main.defaultTagValue.description=
-isisfish.config.main.encoding.description=l'encoding du syst\u00E8me
-isisfish.config.main.javadocDirectory.description=dossier de g\u00E9n\u00E9ration de la javadoc des scripts
-isisfish.config.main.javadocURL.description=l'url de la javadoc des scripts
-isisfish.config.main.launchUI.description=Affiche l'interface utilisateur
-isisfish.config.main.localSimulator.description=Nom du simulateur local (processus courant)
-isisfish.config.main.locale.description=la locale utilisateur
-isisfish.config.main.monitoringDirectory.description=Dossier contenant les informations permettant de relancer les simulations
-isisfish.config.main.performcron.description=D\u00E9marre toutes les t\u00E2ches d\u00E9finies dans le service cron
-isisfish.config.main.performmigration.description=Migre les donn\u00E9es
-isisfish.config.main.performvcsupdate.description=Met \u00E0 jour le d\u00E9p\u00F4t VCS
-isisfish.config.main.remoteCaparmor.description=Nom du lanceur de simulation distante
-isisfish.config.main.simulation.ssh.control.check.interval=V\u00E9rification de la progression (secondes)
-isisfish.config.main.simulation.ssh.control.check.interval.description=Temps d'attente en secondes entre deux v\u00E9rifications de progression
-isisfish.config.main.simulation.ssh.datapath=Base de donn\u00E9es
-isisfish.config.main.simulation.ssh.datapath.description=Emplacement de la base de donn\u00E9es (isis-database)
-isisfish.config.main.simulation.ssh.isis.home=Installation d'Isis-Fish
-isisfish.config.main.simulation.ssh.isis.home.description=Emplacement d'installation d'Isis-Fish sur le serveur
-isisfish.config.main.simulation.ssh.javapath=Emplacement de java
-isisfish.config.main.simulation.ssh.javapath.description=Emplacement de java sur le serveur (chemin total, ou relatif au $PATH, par d\u00E9faut la valeur est celle de caparmor)
-isisfish.config.main.simulation.ssh.max.threads=Nombre de thread SSH
-isisfish.config.main.simulation.ssh.max.threads.description=Nombre de simulation simultan\u00E9e \u00E0 faire en SSH. Attention, ne doit \u00EAtre utilis\u00E9 que pour faire plusieurs plans d'analyse d\u00E9pendants en m\u00EAme temps, sinon laisser '1'.
-isisfish.config.main.simulation.ssh.pbsbinpath=Emplacement des executables PBS
-isisfish.config.main.simulation.ssh.pbsbinpath.description=Emplacement des commandes PBS (qsub, qdel...) sur le serveur
-isisfish.config.main.simulation.ssh.pbsqsuboptions=Arguments qsub
-isisfish.config.main.simulation.ssh.pbsqsuboptions.description=Arguments utilis\u00E9s lors de la soumission des jobs. Par d\u00E9faut '-m n' pas d'envoi de mails.
-isisfish.config.main.simulation.ssh.server=Serveur de simulation
-isisfish.config.main.simulation.ssh.server.description=Adresse du serveur de simulation
-isisfish.config.main.simulation.ssh.sftpserver.description=Adresse du serveur de transfert de fichier (laisser vide pour utiliser directement scp sur le serveur de simulation)
-isisfish.config.main.simulation.ssh.tmppath=Dossier temporaire
-isisfish.config.main.simulation.ssh.tmppath.description=Emplacement du dossier temporaire
-isisfish.config.main.simulation.ssh.userhome=R\u00E9pertoire d'accueil
-isisfish.config.main.simulation.ssh.userhome.description=R\u00E9pertoire d'accueil de l'utilisateur
-isisfish.config.main.simulation.ssh.username=Identifiant
-isisfish.config.main.simulation.ssh.username.description=Identifiant SSH pour se connecter au serveur
-isisfish.config.main.simulationShowOnlyError.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00E9es uniquement celles avec erreur
-isisfish.config.main.smtpServer.description=le nom du serveur smtp \u00E0 utiliser pour envoyer les courriels
-isisfish.config.main.subSimulator.description=Nom du simulateur en sous processus
-isisfish.config.main.userMail.description=le courriel de l'utilisateur
-isisfish.config.main.userName.description=le nom - pr\u00E9nom de l'utilisateur
-isisfish.config.ssh.key.file=Cl\u00E9 SSH
-isisfish.config.ssh.key.file.description=Emplacement de la cl\u00E9 priv\u00E9e SSH
-isisfish.config.vcs.hostName.description=le nom du serveur vcs \u00E0 utiliser
-isisfish.config.vcs.localDatabasePath.description=
-isisfish.config.vcs.noPassPhrase.description=pour indiquer si la clef priv\u00E9e ssh2 utilis\u00E9e pour communiquer avec le serveur vcs est prot\u00E9g\u00E9 par une passe-phrase
-isisfish.config.vcs.passphrase.description=la passe-phrase utilis\u00E9e pour prot\u00E9ger la clef priv\u00E9e ssh
-isisfish.config.vcs.remotePath.description=le chemin jusqu'au parent du module de donn\u00E9es sur le serveur vcs
-isisfish.config.vcs.type.description=le type de communication vcs utilis\u00E9
-isisfish.config.vcs.useSshConnexion.description=pour indiquer si l'on utilise une connexion s\u00E9curis\u00E9e pour communiquer avec le serveur vcs (ssh2)
-isisfish.config.vcs.userName.description=le login de l'utilisateur sur le serveur vcs
-isisfish.config.vcs.userPassword.description=
-isisfish.dataResult.export.csv=Exporter en CSV
-isisfish.dataResult.label=Valeur
-isisfish.date.toString=%1$s %2$s
-isisfish.effortDescription.crewFoodCost=Co\u00FBt de l'alimentation pour l'\u00E9quipage
-isisfish.effortDescription.crewShareRate=Taux de partage de l'\u00E9quipage
-isisfish.effortDescription.crewSize=Taille de l'\u00E9quipage
-isisfish.effortDescription.economicTitle=Param\u00E8tres \u00E9conomiques
-isisfish.effortDescription.effortTitle=Param\u00E8tres d'effort de p\u00EAche
-isisfish.effortDescription.fishingOperation=Op\u00E9ration de p\u00EAche
-isisfish.effortDescription.fishingOperationDuration=Dur\u00E9e de la p\u00EAche
-isisfish.effortDescription.fishingOperationDuration.tooltip=En heures
-isisfish.effortDescription.fixedCrewSalary=Salaire d'\u00E9quipage fixe
-isisfish.effortDescription.gearsNumberPerOperation=Nombre d'engins par op\u00E9ration
-isisfish.effortDescription.landingCosts=Co\u00FBts d'accastillage
-isisfish.effortDescription.otherRunningCost=Autres co\u00FBts
-isisfish.effortDescription.parametersTitle=Param\u00E8tres des m\u00E9tiers
-isisfish.effortDescription.repairAndMaintenanceGearCost=Co\u00FBts de maintenance
-isisfish.effortDescription.title=M\u00E9tiers pratiqu\u00E9s
-isisfish.effortDescription.toString=EffortDescription for %1$s with %2$s
-isisfish.effortDescription.unitCostOfFishing=Co\u00FBt unitaire de la p\u00EAche
-isisfish.equation.editor.title=Editeur d'\u00E9quation
-isisfish.error.acceptable.population=La nouvelle valeur n'est pas une valeur valide pour cette population
-isisfish.error.add.card=Erreur lors de l'ajout du r\u00E9sultat \u00E0 la carte.
-isisfish.error.add.logger.simulation=isisfish.error.add.logger.simulation
-isisfish.error.add.result.data=Erreur lors de l'ajout du r\u00E9sultat au data.
-isisfish.error.add.result.graph=Erreur lors de l'ajout du r\u00E9sultat au graph.
-isisfish.error.add.tray=Impossible d'ajouter une icone de notification
-isisfish.error.change.classloader=Can't change classloader because can't create URL from file %1$s
-isisfish.error.change.equation=Can't change equation
-isisfish.error.compile.fileerror=Le fichier %s contient des erreurs \!
-isisfish.error.compile.script=Impossible de compiler le script \: %s
-isisfish.error.compiled.parameter=Can't get rule parameter from compiled class
-isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00E9es
-isisfish.error.create.equation=Can't create equation
-isisfish.error.delete.database=Can't delete database
-isisfish.error.delete.file=could not delete file %1$s
-isisfish.error.delete.vcs.files=Can't delete vcs files
-isisfish.error.during.simulation=Error during simulation
-isisfish.error.emigration.negative=emigration negative
-isisfish.error.empty.code.rubbin=le code rubbin est vide
-isisfish.error.empty.emigration=emigration vide
-isisfish.error.empty.id.geographic=l'identifiant g\u00E9ographique est vide
-isisfish.error.empty.immigration=immigration vide
-isisfish.error.empty.migration=Migration vide
-isisfish.error.empty.name=le nom est vide
-isisfish.error.empty.params.name=le nom du param\u00E8tre est vide
-isisfish.error.empty.population=Population est vide
-isisfish.error.empty.scientific.name=le nom scientifique est vide
-isisfish.error.empty.season=info saison vide
-isisfish.error.empty.selectivity=s\u00E9lectivit\u00E9 est vide
-isisfish.error.empty.species=espece capturable vide
-isisfish.error.empty.species.name=le nom d'espece est vide
-isisfish.error.empty.unit=l'unit\u00E9 de mesure est vide
-isisfish.error.equation.openeditor=Impossible d'ouvrir l'editeur d'\u00E9quation
-isisfish.error.equation.return.number=EquationImpl doit retourner un nombre \: %1$s
-isisfish.error.equation.savemodel=Impossible de sauver l'\u00E9quation en tant que mod\u00E8le
-isisfish.error.errorpane.htmlmessage=<html><b>IsisFish a d\u00E9tect\u00E9 une erreur \:</b><br />%s</b></html>
-isisfish.error.errorpane.title=Erreur
-isisfish.error.evaluate.equation=Impossible d'\u00E9valuer l'\u00E9quation\: %1$s
-isisfish.error.evaluate.preplan.script=
-isisfish.error.evalute.plan.script=Can't evaluate plan script
-isisfish.error.factor.invalid=Le facteur n'est pas valide
-isisfish.error.file.already.exists=The file %1$s already exist
-isisfish.error.growth.equation.before.create.group.population=Error, You must input growth equation before create the group population
-isisfish.error.immigration.negative=immigration negative
-isisfish.error.import.convertible=Erreur lors de l'import, la version du fichier que vous souhaitez importer n'est pas transformable en une version importable.
-isisfish.error.import.file=Can't import file %1$s
-isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00E9cente que la version souhait\u00E9e.
-isisfish.error.init.map=Can't init map.
-isisfish.error.input.addentity=Impossible d'ajouter l'entit\u00E9 "%s"
-isisfish.error.input.cancelentity=Impossible d'annuler les modifications
-isisfish.error.input.createentity=Impossible de cr\u00E9er une nouvelle entit\u00E9
-isisfish.error.input.removeentity=Impossible de supprimer l'entit\u00E9 "%s"
-isisfish.error.input.save=Impossible de sauver les modifications
-isisfish.error.input.saveentity=Impossible de sauver les modifications
-isisfish.error.input.spacializematrix=
-isisfish.error.instanciate=Can't instanciate %1$s
-isisfish.error.instanciate.export=Can't instanciate export %1$s
-isisfish.error.invalid.costs.fix=les co\u00FBts fixes sont invalides
-isisfish.error.invalid.distribution.recruitment=distribution de recrutement invalide
-isisfish.error.invalid.equation=Equation invalide
-isisfish.error.invalid.equation.name=Nom d'\u00E9quation invalide
-isisfish.error.invalid.file.name=Le nom du script %1$s n'est pas valide.
-isisfish.error.invalid.interval.reproduction.recruitment=interval entre la reproduction et le recrutement invalide
-isisfish.error.invalid.mean.weight=poids moyen invalide
-isisfish.error.invalid.natural.death=mortalit\u00E9 naturelle sur les classes naissantes invalide
-isisfish.error.invalid.nullequation=L'\u00E9quation %s n'existe pas \!
-isisfish.error.invalid.number=le nombre est invalide
-isisfish.error.invalid.range=La gamme possible n'a pas de valeur acceptable
-isisfish.error.invalid.values.params=Param\u00E8tre controlable hors valeurs possibles
-isisfish.error.invalidate.natural.death=mortalite naturelle invalide
-isisfish.error.invoke.method=Can't invoke method '%1$s' for class %2$s
-isisfish.error.linkageerror.message=Isis-Fish a d\u00E9tect\u00E9 une erreur d'utilisation des scripts.\nLe dossier de compilation a \u00E9t\u00E9 supprim\u00E9 pour forcer leur recompilation.\n\nMerci de relancer Isis-Fish.
-isisfish.error.linkageerror.title=Erreur d'initialisation
-isisfish.error.load.class=Can't load class\: %1$s
-isisfish.error.load.classloader=Can't create ClassLoader for script, bad directory\: %1$s for reason %2$s
-isisfish.error.load.file=could not load file %1$s
-isisfish.error.log.closeAppender=n'a pas pu ferme l'appender %1$s et la categorie %2$s
-isisfish.error.log.console.dispose=Une erreur est survenue pendant la fermeture de la console %1$s de log, raison %2$s
-isisfish.error.log.createAppender=n'a pas pu creer l'appender [%1$s] \: %2$s pour la raison %3$s
-isisfish.error.log.foundAppender=n'a pas trouve l'appender %1$s pour la categorie %2$s
-isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00E9lectionnez moins d'\u00E9l\u00E9ments ou utilisez l'op\u00E9rateur somme.
-isisfish.error.migration.negative=Migration negative
-isisfish.error.no.matrix=Pas de matrice pour \: %s
-isisfish.error.no.null.time.step=Error, the time step should not be null
-isisfish.error.no.sector=il n'y a pas de secteur de d\u00E9finit
-isisfish.error.no.select.simulation=could not select simulation
-isisfish.error.no.target.species=no target species in %1$s for %2$s
-isisfish.error.not.found.code=could not found codeclass for %1$s
-isisfish.error.not.found.description=could not found description for %1$s
-isisfish.error.not.found.field=could not found field %1$s doc for %2$s
-isisfish.error.not.found.field.class=could not found field %1$s for class %2$s
-isisfish.error.not.null.class.grown=classe mature vaut nul
-isisfish.error.not.null.mean.weight=poids moyen nul
-isisfish.error.not.null.natural.death=mortalite naturelle nulle
-isisfish.error.not.possible.metier=Pas de m\u00E9tier possible
-isisfish.error.not.support.class=La classe %s ne supporte pas les descritions
-isisfish.error.number.classes.upper.zero=Error, the number of classes must be upper than 0
-isisfish.error.out.memory=Out of memory try with more memory (option -mx)
-isisfish.error.overlap.season=Cette saison chevauche une autre saison
-isisfish.error.parse.date=Can't parse date %1$s
-isisfish.error.parse.long=Can't parse long %1$s
-isisfish.error.plan.parameter=Can't get plan parameter from compiled class
-isisfish.error.prepare.data=Can't prepare data
-isisfish.error.prepare.information.simulation=Can't prepare information for simulation
-isisfish.error.read.simulation=Can't read simulation information %1$s
-isisfish.error.read.simulation.parameters=Impossible de lire les param\u00E8tres du fichier \: %1$s
-isisfish.error.region.addmap=Impossible d'ajouter une carte
-isisfish.error.region.already.exists=Cette r\u00E9gion existe d\u00E9j\u00E0
-isisfish.error.region.cancel=
-isisfish.error.region.check=Impossible de v\u00E9rifier la r\u00E9gion
-isisfish.error.region.commit=Impossible de committer la r\u00E9gion
-isisfish.error.region.copy=Impossible de copier la r\u00E9gion
-isisfish.error.region.create=Impossible de cr\u00E9er une nouvelle r\u00E9gion
-isisfish.error.region.export=Impossible d'exporter la r\u00E9gion
-isisfish.error.region.import=Impossible d'importer la r\u00E9gion
-isisfish.error.region.load=Impossible de charger la r\u00E9gion
-isisfish.error.region.name.empty=Le nom de la R\u00E9gion est vide
-isisfish.error.region.new=
-isisfish.error.region.remove=Impossible de supprimer la r\u00E9gion
-isisfish.error.region.removemap=Impossible de supprimer une carte de la r\u00E9gion
-isisfish.error.region.save=Impossible de sauver la r\u00E9gion
-isisfish.error.remove.directory=Can't remove directory %1$s
-isisfish.error.rename.region=Can't rename region to %1$s
-isisfish.error.save.checkSum.compilation=Can't save checkSum to compilation\: %1$s
-isisfish.error.save.script.compilation=Can't save script to compilation\: %1$s
-isisfish.error.save.simulation.parameters=Can't save simulation parameters in file %1$s
-isisfish.error.script.create=isisfish.error.script.create
-isisfish.error.script.delete=N'a pas pu supprimer le fichier %1$s pour la raison suivante %2$s
-isisfish.error.script.import=N'a pas pu importer pour la raison suivante %1$s
-isisfish.error.script.load=N'a pas pu charger le fichier %1$s pour la raison suivante %2$s
-isisfish.error.script.save=N'a pas pu sauver le fichier %1$s pour la raison suivante %2$s
-isisfish.error.sensitivity.export=Error lors de l'export des facteurs de la r\u00E9gion
-isisfish.error.simulation.addanalyseplan=Impossible d'ajouter un plan d'analyze
-isisfish.error.simulation.addrule=Impossible d'ajouter une r\u00E8gle
-isisfish.error.simulation.getparametervalue=Impossible d'obtenir la valeur du param\u00E8tre
-isisfish.error.simulation.getresultname=Impossible d'obtenir la liste des r\u00E9sultat
-isisfish.error.simulation.importparameter=Impossible d'importer les param\u00E8tres de simulation
-isisfish.error.simulation.initsimulaction=Impossible d'initialiser la simulation
-isisfish.error.simulation.launchsimulation=Impossible de lancer la simulation
-isisfish.error.simulation.listoldsimulation=Impossible de lister les anciennes simulations
-isisfish.error.simulation.listpopulation=Impossible d'obtenir la liste des populations
-isisfish.error.simulation.liststrategies=Impossible d'obtenir la liste des stat\u00E9gies
-isisfish.error.simulation.loadoldsimulation=Impossible de charger une ancienne simulation
-isisfish.error.simulation.log.openAppender=n'a pas pu ouvrir l'appender de la simulation %1$s pour la raison %2$s
-isisfish.error.simulation.openregion=Impossible d'ouvrir la r\u00E9gion
-isisfish.error.simulation.remote.global=Impossible de lancer une simulation sur serveur distant
-isisfish.error.simulation.remote.wrongportvalue=Le port de connexion a une valeur incorrecte \: %s
-isisfish.error.simulation.resultXml.close=Can't close simulation result XML for reason %1$s
-isisfish.error.simulation.resultXml.open=Can't open simulation result XML for reason %1$s
-isisfish.error.simulation.resultXml.write=Can't write simulation result XML for reason %1$s
-isisfish.error.simulation.savesimulation=Impossible de sauver les param\u00E8tres de simulation
-isisfish.error.simulation.setparametervalue=Impossible d'affecter la valeur du param\u00E8tre
-isisfish.error.source.parameter=Can't get parameter from source
-isisfish.error.strategy.order=Strategy %1$s don't have 12 StrategyMonthInfo but %2$s. Recreate them
-isisfish.error.undefined.classes=pas de classes d\u00E9finies
-isisfish.error.undefined.correspondence.zones.reproduction.recruitment=pas de correspondance entre les zones de reproduction et les zones de recrutement
-isisfish.error.undefined.gear=l'engin n'est pas d\u00E9fini
-isisfish.error.undefined.mesh=aucune maille de d\u00E9fini
-isisfish.error.undefined.mesh.sector=aucune maille dans le secteur
-isisfish.error.undefined.meta.population=aucune meta population de d\u00E9fini
-isisfish.error.undefined.natural.death=pas de mortalit\u00E9 naturelle sur les classes naissantes
-isisfish.error.undefined.sector=aucun secteur de d\u00E9fini
-isisfish.error.undefined.stategy=aucune strat\u00E9gie de d\u00E9fini
-isisfish.error.undefined.stategy.months=La strat\u00E9gie n'est pas d\u00E9finie pour certain mois
-isisfish.error.undefined.zone.population=il n'y a pas de zone de population de d\u00E9finie
-isisfish.error.undefined.zone.recruitment=il n'y a pas de zone de recrutement de d\u00E9finie
-isisfish.error.undefined.zone.reproduction=il n'y a pas de zone de reproduction de d\u00E9finie
-isisfish.error.unsupported.equation.langage=unsupported langage '%1$s' for equation\: %2$s
-isisfish.error.wait.simThread=Can't wait SimThread
-isisfish.error.warning.title=Attention
-isisfish.error.write.simulation=Can't write information %1$s
-isisfish.export.saved=Exports des r\u00E9sultats sauvegard\u00E9s
-isisfish.export.title=Export des r\u00E9sultats
-isisfish.filter=Filtrer
-isisfish.filter.apply=Appliquer le filtre
-isisfish.filter.cancel=Annuler
-isisfish.filter.log.levelDebug=debug
-isisfish.filter.log.levelError=erreur
-isisfish.filter.log.levelFatal=fatal
-isisfish.filter.log.levelInfo=info
-isisfish.filter.log.levelTrace=trace
-isisfish.filter.log.levelWarn=warning
-isisfish.filter.log.tooltip.levelDebug=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelError=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelFatal=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelInfo=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelTrace=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.levelWarn=s\u00E9lectionner pour filtrer ce niveau
-isisfish.filter.log.tooltip.message=Entrer un terme \u00E0 rechercher et appuyer sur Entr\u00E9e
-isisfish.filter.reset=R\u00E9initialiser
-isisfish.filter.result=R\u00E9sultats
-isisfish.filter.result.found=R\u00E9sultats (%d/%d)
-isisfish.filter.select=S\u00E9lectionner
-isisfish.filter.select.simulation=S\u00E9lectionner une simulation
-isisfish.filter.simulation=Filtrer les simulations
-isisfish.filter.simulation.analysePlanNumber=num\u00E9ro d'analyse
-isisfish.filter.simulation.description=description
-isisfish.filter.simulation.local=locale
-isisfish.filter.simulation.numberOfYear=nombre d'ann\u00E9e(s)
-isisfish.filter.simulation.regionName=nom de r\u00E9gion
-isisfish.filter.simulation.simulationEnd=date de fin (dd/MM/yyyy)
-isisfish.filter.simulation.simulationName=nom de simulation
-isisfish.filter.simulation.simulationStart=date de d\u00E9but (dd/MM/yyyy)
-isisfish.filter.simulation.simulatorName=nom du simulateur
-isisfish.filter.simulation.tooltip.analysePlanNumber=filter sur le num\u00E9ro d'analyse (uniquement pour les simulations avec plan d'analyse)
-isisfish.filter.simulation.tooltip.description=filtrer sur la description (format regex)
-isisfish.filter.simulation.tooltip.local=filter uniquement les simulations locales
-isisfish.filter.simulation.tooltip.numberOfYear=filter sur le nombre d'ann\u00E9e(s) (recherche exacte)
-isisfish.filter.simulation.tooltip.regionName=filtrer sur le nom de la r\u00E9gion (format regex)
-isisfish.filter.simulation.tooltip.simulationEnd=filtrer sur la date de fin de simulation (format dd/MM/yyyy)
-isisfish.filter.simulation.tooltip.simulationName=filtrer sur le nom de simulation (format regex)
-isisfish.filter.simulation.tooltip.simulationStart=filtrer sur la date de d\u00E9but de simulation (format dd/MM/yyyy)
-isisfish.filter.simulation.tooltip.simulatorName=filter sur le nom du simulateur utilis\u00E9 (format regex)
-isisfish.filter.simulation.tooltip.useAnalysePlan=filter uniquement les simulations avec plan d'analyse
-isisfish.filter.simulation.tooltip.useOptimization=filter uniquement les simulations avec optimisation
-isisfish.filter.simulation.tooltip.usePreScript=filter uniquement les simulations avec Prescript
-isisfish.filter.simulation.tooltip.useStatistic=filter uniquement les simulations avec statistiques
-isisfish.filter.simulation.useAnalysePlan=plan d'analyse
-isisfish.filter.simulation.useOptimization=optimisation
-isisfish.filter.simulation.usePreScript=prescript
-isisfish.filter.simulation.useStatistic=statistiques
-isisfish.fisheryRegion.addMap=Ajouter une carte
-isisfish.fisheryRegion.area=Extr\u00E9mit\u00E9s de la zone de p\u00EAche
-isisfish.fisheryRegion.comments=Commentaires
-isisfish.fisheryRegion.delMap=Supprimer la carte
-isisfish.fisheryRegion.latitude=Lat.
-isisfish.fisheryRegion.latitude.max=Lat. max.
-isisfish.fisheryRegion.latitude.min=Lat. min.
-isisfish.fisheryRegion.longitude=Long.
-isisfish.fisheryRegion.longitude.max=Long. max.
-isisfish.fisheryRegion.longitude.min=Long. min.
-isisfish.fisheryRegion.name=Nom de la r\u00E9gion
-isisfish.fisheryRegion.ofCells=de mailles (option)
-isisfish.fisheryRegion.selectFile=S\u00E9lectionnez un fichier
-isisfish.fisheryRegion.spatial=R\u00E9solution spatiale
-isisfish.gear.comments=Commentaires
-isisfish.gear.effortUnit=Unit\u00E9 d'effort
-isisfish.gear.name=Nom
-isisfish.gear.rangeValues=Gamme de valeurs
-isisfish.gear.standardisationFactor=Facteur de standardisation
-isisfish.gear.technicalParameter=Param\u00E8tre technique
-isisfish.gear.title=Engin
-isisfish.graphBean.graph.render=Choisir un rendu de graphe
-isisfish.graphCombo.render.bar=Rendu en barres verticales
-isisfish.graphCombo.render.bar.3d=Rendu en barres verticales 3D
-isisfish.graphCombo.render.bar.stacked=Rendu en barres verticales empil\u00E9es
-isisfish.graphCombo.render.line=Rendu en ligne
-isisfish.graphCombo.render.line.3d=Rendu en ligne 3D
-isisfish.graphCombo.render.min.max=Rendu en MinMax
-isisfish.graphCombo.render.surface=Rendu en aire
-isisfish.graphCombo.render.surface.stacked=Rendu en aires empil\u00E9es
-isisfish.infoItem.label=defaultToolTip-fr.ifremer.resultat.InfoItem.label
-isisfish.infoItem.sum=Somme de tous les \u00E9l\u00E9ments
-isisfish.infoItem.sum.year=Somme des \u00E9l\u00E9ments par ann\u00E9e
-isisfish.input.continueCells=Continuer vers les mailles
-isisfish.input.continueGears=Continuer vers les engins
-isisfish.input.continueMetiers=Continuer vers les metiers
-isisfish.input.continuePopulations=Continuer vers les populations
-isisfish.input.continuePorts=Continuer vers les ports
-isisfish.input.continueSetOfVessels=Continuer vers les flottilles
-isisfish.input.continueSpecies=Continuer vers les esp\u00E8ces
-isisfish.input.continueStrategies=Continuer vers les strat\u00E9gies
-isisfish.input.continueTripTypes=Continuer vers les types de trajets
-isisfish.input.continueVesselTypes=Continuer vers les types de navires
-isisfish.input.continueZones=Continuer vers les zones
-isisfish.input.map.copytoclicboard=Copier vers de presse-papiers
-isisfish.input.menu.addRegion=Ajouter une r\u00E9gion
-isisfish.input.menu.commit=Sauvegarder les changements
-isisfish.input.menu.copyRegion=Copier r\u00E9gion
-isisfish.input.menu.exportRegion=Exporter la r\u00E9gion
-isisfish.input.menu.importRegion=Importer une r\u00E9gion
-isisfish.input.menu.importRegionSimulation=Importer la r\u00E9gion d'une simulation
-isisfish.input.menu.importRegionV2=Importer une r\u00E9gion de la v2 d'IsisFish
-isisfish.input.menu.importRenameRegion=Importer une r\u00E9gion et la renommer
-isisfish.input.menu.removeLocaly=Supprimer localement
-isisfish.input.menu.removeLocalyRemotely=Supprimer localement et \u00E0 distance
-isisfish.input.menu.sensitivity=Mexico
-isisfish.input.menu.sensitivity.export=Exporter les facteurs
-isisfish.input.menu.server=Serveur
-isisfish.input.newRegion=Nouvelle r\u00E9gion
-isisfish.input.selectRegion=S\u00E9lectionnez une r\u00E9gion
-isisfish.input.sensitivity.export.cancel=Export des facteurs annul\u00E9
-isisfish.input.sensitivity.export.complete=Export des facteurs r\u00E9ussit
-isisfish.input.sensitivity.export.running=Export des facteurs en cours...
-isisfish.input.sensitivity.export.title=Exporter les facteurs
-isisfish.input.title=Saisie de la p\u00EAcherie
-isisfish.input.tree.cells=Mailles
-isisfish.input.tree.gears=Engins
-isisfish.input.tree.metiers=M\u00E9tiers
-isisfish.input.tree.populations=Populations
-isisfish.input.tree.ports=Ports
-isisfish.input.tree.setofvessels=Flottilles
-isisfish.input.tree.species=Esp\u00E8ces
-isisfish.input.tree.strategies=Strat\u00E9gies
-isisfish.input.tree.triptypes=Types de mar\u00E9e
-isisfish.input.tree.vesseltypes=Types de navire
-isisfish.input.tree.zones=Zones
-isisfish.launch.anonymous=lecture seule
-isisfish.launch.email=courriel
-isisfish.launch.firstname=nom
-isisfish.launch.init.done=init done in %1$s.
-isisfish.launch.lasstname=pr\u00E9nom
-isisfish.launch.server.authenticationMethod=droit d'acc\u00E8s au serveur
-isisfish.launch.server.login=nom utilisateur
-isisfish.launch.server.ssh.confirm.passphrase=confirmer la passphrase
-isisfish.launch.server.ssh.key.change=Changer la clef ssh
-isisfish.launch.server.ssh.key.generate=G\u00E9n\u00E9rer la clef ssh
-isisfish.launch.server.ssh.no.passphrase=pas de passphrase
-isisfish.launch.server.ssh.passphrase=passphrase
-isisfish.launch.server.ssh.privateKeyFile=clef priv\u00E9e ssh
-isisfish.launch.server.ssh.publicKeyFile=clef publique ssh
-isisfish.launch.ssh=lecture-\u00E9criture (ssh)
-isisfish.launch.stop=Arr\u00EAt de la simulation...
-isisfish.launching=after init done in %1$s.
-isisfish.log.addAppender=ajoute un appender [%1$s]
-isisfish.log.body=Message \u00E0 joindre
-isisfish.log.closeAppender=ferme l'appender [%1$s] pour la categorie %2$s
-isisfish.log.mail.failed=Impossible d'envoyer le rapport par courriel. Le serveur smtp fonctionne ? (J'essaye de contacter < %1$s > smtp server)
-isisfish.log.mail.send=Un rapport a \u00E9t\u00E9 envoy\u00E9 \u00E0 %1$s
-isisfish.log.mail.send.title=Envoi de la simulation %1$s par email
-isisfish.log.mailTo=Adresse du destinataire
-isisfish.log.removeAppender=supprime l'appender [%1$s]
-isisfish.log.restoreLogLevel=repositionne le niveau du logger %1$s du niveau %2$s au niveau %3$s
-isisfish.log.sendAll=Envoyer la simulation complete
-isisfish.log.sendMail=Envoyer par email
-isisfish.log.simulation.name=IsisFish simulation %1$s
-isisfish.log.swapLogLevel=permute le niveau du logger %1$s du niveau %2$s au niveau %3$s
-isisfish.log.tooltip.body=Le message saisi sera joint au courriel envoy\u00E9
-isisfish.log.tooltip.mailTo=Entrer l'adresse du destinataire du courriel
-isisfish.log.tooltip.sendAll=Envoyer toute la simulation, ou uniquement le fichier de log
-isisfish.log.tooltip.sendMail=Cliquer pour envoyer le courriel contentant les fichiers
-isisfish.message.add.objets.simulation=Ajout des nouveaux objets cr\u00E9\u00E9s durant la simulation
-isisfish.message.backup.database.finished=backup database termin\u00E9
-isisfish.message.backup.database.progress=backup database en cours
-isisfish.message.cancel.finished=Annulation termin\u00E9e
-isisfish.message.check.finished=V\u00E9rification termin\u00E9e
-isisfish.message.check.inprogress=V\u00E9rification en cours...
-isisfish.message.checking.cell=
-isisfish.message.choose.archive=choose archive file or directory
-isisfish.message.commit.cancelled=commit annul\u00E9
-isisfish.message.commit.finished=commit termin\u00E9
-isisfish.message.commit.region.canceled=Commit de la r\u00E9gion annul\u00E9
-isisfish.message.commiting.region=En train de commiter la r\u00E9gion %1$s ...
-isisfish.message.compilation.time=Temps de compilation %1$ss
-isisfish.message.confirm.delete.object=Voulez-vous vraiment supprimer l'objet %1$s
-isisfish.message.confirm.remove.region=Voulez-vous vraiment supprimer la r\u00E9gion %1$s ?
-isisfish.message.confirm.remove.script=Voulez-vous vraiment supprimer le script '%1$s' ?
-isisfish.message.copy.finished=Copie termin\u00E9e
-isisfish.message.copy.region=Copier la r\u00E9gion
-isisfish.message.creating.region=En train de cr\u00E9er la r\u00E9gion %1$s
-isisfish.message.creation.finished=Cr\u00E9ation termin\u00E9e
-isisfish.message.delete.canceled=Suppression annul\u00E9e
-isisfish.message.delete.entities=Supprimer les entit\u00E9s
-isisfish.message.delete.entity=Supprimer l'entit\u00E9
-isisfish.message.delete.finished=Suppression termin\u00E9e
-isisfish.message.delete.object=Pour supprimer l'objet %1$s, tous les objets suivants seront aussi supprim\u00E9s \n\n
-isisfish.message.directory.not.exists=
-isisfish.message.evaluation.finished=\u00E9valuation termin\u00E9e
-isisfish.message.export.done=Export termin\u00E9
-isisfish.message.export.zip=Exporter dans le fichier zip %1$s
-isisfish.message.file.already.exists=Le fichier %s existe, voulez-vous l'\u00E9craser ?
-isisfish.message.file.overwrite=Le fichier existe, voulez-vous l'\u00E9craser ?
-isisfish.message.import=Importer %1$s
-isisfish.message.import.equation.convert=Conversion manuelle de l'\u00E9quation
-isisfish.message.import.finished=Import termin\u00E9
-isisfish.message.import.region.name=Entre le nom de la r\u00E9egion \u00E0 importer
-isisfish.message.import.region.xml=R\u00E9gion XML (Isis-Fish V2.x)
-isisfish.message.import.region.zipped=Zipped Region
-isisfish.message.import.scripts.file=Importer des scripts depuis une archive zip
-isisfish.message.import.scripts.file.cancelled=Importation des scripts annul\u00E9
-isisfish.message.import.scripts.file.done=Scripts import\u00E9s
-isisfish.message.import.scripts.zipped=Archive de script (*.zip)
-isisfish.message.import.xml.v2.file=Import xml v2 file
-isisfish.message.import.zip=Import zip file
-isisfish.message.launchui.notlaunch=Interface utilisateur non lanc\u00E9e
-isisfish.message.load.finished=Chargement termin\u00E9
-isisfish.message.load.map=Chargement de la carte \: %1$s
-isisfish.message.loading.old.simulation=Chargement d'une ancienne simulation...
-isisfish.message.loading.region=Chargement de la r\u00E9gion
-isisfish.message.name.imported.region=Entrez le nom de la r\u00E9gion \u00E0 importer
-isisfish.message.new.filename=Entrez le nom du nouveau du fichier.\n\t (utiliser uniquemment des caract\u00E8res et _ en commencant avec une majuscule)
-isisfish.message.new.formule.category=Choisissez le cat\u00E9gorie de la formule
-isisfish.message.new.formule.title=Nouvelle formule
-isisfish.message.new.region.name=Entrer le nom de la nouvelle r\u00E9gion
-isisfish.message.old.simulation.loaded=Ancienne simulation charg\u00E9e
-isisfish.message.page.modified=Cette page a \u00E9t\u00E9 modifi\u00E9, voulez-vous la sauvegarder ?
-isisfish.message.presimulation.script.execution=Ex\u00E9cution des scripts de Presimulation
-isisfish.message.recruitment.number.month=Entrez le nombre de mois de recrutement
-isisfish.message.region.commited=R\u00E9gion commit\u00E9e
-isisfish.message.region.loaded=R\u00E9gion charg\u00E9e
-isisfish.message.region.remove.canceled=Suppression de r\u00E9gion annul\u00E9
-isisfish.message.region.removed=R\u00E9gion supprim\u00E9e
-isisfish.message.remove.canceled=Suppression annul\u00E9e
-isisfish.message.remove.finished=Suppresison termin\u00E9
-isisfish.message.removing.region=Suppression de la r\u00E9gion %1$s...
-isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
-isisfish.message.save.finished=Sauvegarde termin\u00E9e
-isisfish.message.saveModel.dialog=Entrez le nom du mod\u00E8le d'\u00E9quation
-isisfish.message.saveModel.finished=Sauvegarde du mod\u00E8le termin\u00E9e
-isisfish.message.script.commit=Indiquez un message pour committer les modifications fa\u00EEtes sur %s
-isisfish.message.setting.cache.aspects=Mise en place des aspects Cache
-isisfish.message.setting.trace.aspects=Mise en place des aspects Trace
-isisfish.message.simulation.ended=Simulation termin\u00E9e
-isisfish.message.simulation.execution=Simulation execution
-isisfish.message.simulation.prepare=Pr\u00E9paration de la simulation
-isisfish.message.tray.disabled=Icone de notification d\u00E9sactiv\u00E9e
-isisfish.metier.comments=Commentaires
-isisfish.metier.name=Nom
-isisfish.metier.rangeValues=Param\u00E8tre d'engin
-isisfish.metier.title=M\u00E9tier
-isisfish.metierMonitor.metiers=M\u00E9tiers
-isisfish.metierMonitor.strategies=Strat\u00E9gies
-isisfish.metierSeasonInfo.toString=%1$s saison %2$s-%3$s
-isisfish.metierSeasonInfoSpecies.mainSpecies=Esp\u00E8ces principales pour le m\u00E9tier
-isisfish.metierSeasonInfoSpecies.selectSeason=S\u00E9lectionnez une saison
-isisfish.metierSeasonInfoSpecies.selectSpecies=Choix de l'esp\u00E8ce
-isisfish.metierSeasonInfoSpecies.species=Esp\u00E8ce
-isisfish.metierSeasonInfoSpecies.targetFactor=Facteur cible
-isisfish.metierSeasonInfoSpecies.title=Esp\u00E8ces capturables
-isisfish.metierSeasonInfoZone.comments=Commentaires
-isisfish.metierSeasonInfoZone.season=Saison
-isisfish.metierSeasonInfoZone.selectSeason=S\u00E9lectionnez une saison
-isisfish.metierSeasonInfoZone.title=Saison / Zones
-isisfish.misc.databasemigration.question=La base de donn\u00E9e est en version \: %s.\n\nUne migration en version %s est n\u00E9cessaire.\nVoulez vous migrer la base de donn\u00E9es ?
-isisfish.misc.databasemigration.title=Migration de base de donn\u00E9es
-isisfish.misc.nuitonmigration=IsisFish a d\u00E9tect\u00E9 l'utilisation de librairies CodeLutin dans les scripts suivants.\nVoulez vous migrer ces scripts vers les nouvelles librairies nuiton ?
-isisfish.monitor.title=Moniteur de l'application
-isisfish.month.april=avril
-isisfish.month.august=ao\u00FBt
-isisfish.month.december=d\u00E9cembre
-isisfish.month.february=f\u00E9vrier
-isisfish.month.january=janvier
-isisfish.month.july=juillet
-isisfish.month.june=juin
-isisfish.month.march=mars
-isisfish.month.may=mai
-isisfish.month.november=novembre
-isisfish.month.october=octobre
-isisfish.month.september=septembre
-isisfish.params.changeLogLev=Passe du niveau '%1$s' au niveau '%2$s'
-isisfish.params.clearFilter=Remise \u00E0 z\u00E9ro du filtre
-isisfish.params.description=Description
-isisfish.params.filter=Filtrer
-isisfish.params.loadOldSimulation=Charger une ancienne simulation
-isisfish.params.nopopulation=Aucune population s\u00E9lectionn\u00E9e
-isisfish.params.numberYear=Nombre d'ann\u00E9es
-isisfish.params.populationEffectives=Effectifs %s
-isisfish.params.rules=R\u00E8gles
-isisfish.params.rules.availables=R\u00E8gles disponibles
-isisfish.params.rules.selected=R\u00E8gles s\u00E9lectionn\u00E9es
-isisfish.params.sensitivityName=Nom de l'analyse de sensibilit\u00E9
-isisfish.params.simulationLauncher=Lanceur de simulation
-isisfish.params.simulationName=Nom de la simulation
-isisfish.params.stategiesAndPopulations=Strat\u00E9gies et populations
-isisfish.params.title=Param\u00E8tres
-isisfish.params.toString.fishery=P\u00EAcherie\: %1$s\n\n
-isisfish.params.toString.lib.logger.level=niveau du logger de librairies \: %1$s
-isisfish.params.toString.number.years=Nombre d'ann\u00E9es \: %1$s\n\n
-isisfish.params.toString.plan=Plan\: %1$s
-isisfish.params.toString.plan.number=Num\u00E9ro de s\u00E9quence dans le plan \: %1$s\n\n
-isisfish.params.toString.populations=Populations \:
-isisfish.params.toString.rule=R\u00E8gle\: %1$s
-isisfish.params.toString.script.logger.level=niveau du logger de scripts \: %1$s
-isisfish.params.toString.script.presimulation=Script de presimulation
-isisfish.params.toString.simul.logger.level=niveau du logger de simulateur \: %1$s
-isisfish.params.toString.simulation.done=Simulation r\u00E9alis\u00E9e avec \: %1$s
-isisfish.params.toString.strategies=Strat\u00E9gies d'exploitation \:
-isisfish.params.useAnalysePlan=Utiliser le plan de simulation
-isisfish.params.usePreSimulationScript=Utiliser un script de pr\u00E9-simulation
-isisfish.population.capturability=Capturabilit\u0E009e
-isisfish.population.comments=Commentaires
-isisfish.population.group=Groupe
-isisfish.population.groups=Groupes
-isisfish.population.mappingZoneReproZoneRecru=MappingZoneReproZoneRecru
-isisfish.population.matrixAbundance=Matrice d'abondance
-isisfish.population.matrixAbundance1D=matrixAbundance1D
-isisfish.population.recruitment=Recrutement
-isisfish.population.reproduction=Reproduction
-isisfish.population.season=Saison
-isisfish.population.zones=Zones
-isisfish.populationBasics.confirmCreateGroups=Attention, la re-cr\u00E9ation des groupes supprimera les groupes existants et tous les objets qui en d\u00E9pendent.\n\u00CAtes vous sur de vouloir re-cr\u00E9er les groupes ?
-isisfish.populationBasics.geographicID=Identifiant g\u00E9ographique
-isisfish.populationBasics.growth=Croissance
-isisfish.populationBasics.growthReverse=Croissance inverse
-isisfish.populationBasics.maturityGroup=Groupe de maturit\u00E9
-isisfish.populationBasics.name=Nom
-isisfish.populationBasics.numberGroup=Nombre de groupes
-isisfish.populationBasics.plusGroup=Groupe plus
-isisfish.populationBasics.recreateClasses=Reconstruire les groupes
-isisfish.populationBasics.title=Saisie des populations
-isisfish.populationCapturability.comments=Commentaires
-isisfish.populationCapturability.selectCoefficient=S\u00E9lectionnez un coefficient par saison et par classe
-isisfish.populationCapturability.title=Saisie de la capturabilit\u00E9
-isisfish.populationEquation.meanWeight=Poids moyen
-isisfish.populationEquation.naturalDeathRate=Taux de mortalit\u00E9 naturelle
-isisfish.populationEquation.price=Prix
-isisfish.populationEquation.title=Saisie des \u00E9quations
-isisfish.populationGroup.age=Age
-isisfish.populationGroup.comments=Commentaires
-isisfish.populationGroup.length=Longueur
-isisfish.populationGroup.maximumLength=Longueur maximale
-isisfish.populationGroup.meanWeigth=Poids principal
-isisfish.populationGroup.minimumLength=Longueur minimale
-isisfish.populationGroup.naturalDeathRate=Taux de mortalit\u00E9 naturelle
-isisfish.populationGroup.price=Prix
-isisfish.populationGroup.reproductionRate=Taux de reproduction
-isisfish.populationGroup.title=Saisie des groupes de population
-isisfish.populationGroup.toString=%1$s Groupe %2$s
-isisfish.populationMigration.comments=Commentaires
-isisfish.populationMigration.selectSeason=S\u00E9lectionnez une saison
-isisfish.populationMigration.title=Migration
-isisfish.populationMigration.useEquation=Utiliser l'\u00E9quation
-isisfish.populationMigrationEmigration.coefficient=Coefficient
-isisfish.populationMigrationEmigration.departureZone=Zone de d\u00E9part
-isisfish.populationMigrationEmigration.title=Emmigration
-isisfish.populationMigrationImmigration.arrivalZone=Zone d'arriv\u00E9e
-isisfish.populationMigrationImmigration.coefficient=Coefficient
-isisfish.populationMigrationImmigration.title=Immigration
-isisfish.populationMigrationMigration.arrivalZone=Zone d'arriv\u00E9e
-isisfish.populationMigrationMigration.coefficient=Coefficient
-isisfish.populationMigrationMigration.departureZone=Zone de d\u00E9part
-isisfish.populationMigrationMigration.title=Migration de population
-isisfish.populationRecruitment.comments=Commentaires
-isisfish.populationRecruitment.monthgapgetweenreprorecruitment=Nombre de mois entre ponte et recrutement
-isisfish.populationRecruitment.recruitmentDistribution=Distribution du recrutement
-isisfish.populationRecruitment.reproductionEquation=Equation de reproduction
-isisfish.populationRecruitment.title=Saisie des reproductions
-isisfish.populationSeasonInfo.arrival=Arriv\u00E9e
-isisfish.populationSeasonInfo.departure=D\u00E9part
-isisfish.populationSeasonInfo.distributionSpawing=Distribution de la reproduction
-isisfish.populationSeasonInfo.emigration=Emigration
-isisfish.populationSeasonInfo.group=Groupe
-isisfish.populationSeasonInfo.immigration=Immigration
-isisfish.populationSeasonInfo.migration=Migration
-isisfish.populationSeasonInfo.months=Mois
-isisfish.populationSeasonInfo.toString=%1$s saison %2$s-%3$s
-isisfish.populationSeasons.Reproduction=Reproduction
-isisfish.populationSeasons.changeGroup=Changement de groupe
-isisfish.populationSeasons.comments=Commentaires
-isisfish.populationSeasons.computeCoefficient=Calculer le coefficient
-isisfish.populationSeasons.distributionSpawning=Distribution de la reproduction
-isisfish.populationSeasons.noSpacialized=Non spatialis\u00E9
-isisfish.populationSeasons.selectSeason=S\u00E9lectionnez une saison
-isisfish.populationSeasons.showSpacialized=Voir les coefficients spatialis\u00E9s
-isisfish.populationSeasons.spacialized=spatialis\u00E9
-isisfish.populationSeasons.spacialized.visualisation=Coefficients spatialis\u00E9s
-isisfish.populationSeasons.title=Saisons
-isisfish.populationZones.betweenSpawningRecruitmentAreas=Correspondance entre les zones de reproduction et de recrutement
-isisfish.populationZones.selectPopulationAreas=S\u00E9lectionnez les zones des populations
-isisfish.populationZones.selectRecruitmentAreas=S\u00E9lectionnez les zones de recrutement
-isisfish.populationZones.selectSpawningAreas=S\u00E9lectionnez les zones de reproduction
-isisfish.populationZones.title=Zones
-isisfish.port.cell=Maille du port
-isisfish.port.comments=Commentaires
-isisfish.port.name=Nom
-isisfish.preScript.backParameter=Retour aux param\u00E8tres
-isisfish.preScript.title=Script de pr\u00E9-simulation
-isisfish.queue.clearDone=Retirer les simulations termin\u00E9es
-isisfish.queue.id=Identifiant
-isisfish.queue.launcher=Lanceur de simulation
-isisfish.queue.masterplan=Plan de simulation
-isisfish.queue.notstarted=Non d\u00E9marr\u00E9
-isisfish.queue.plan=Plan
-isisfish.queue.progression=Progression
-isisfish.queue.restartSimulation=Red\u00E9marrer
-isisfish.queue.showLog=Voir les logs de la simulation
-isisfish.queue.simulationLaunch=Lanceur de la queue des simulations
-isisfish.queue.status=\u00C9tat
-isisfish.queue.stopSimulation=Arr\u00EAter la simulation
-isisfish.queue.title=Queue
-isisfish.result.abundance=Abondance
-isisfish.result.add=Ajouter un r\u00E9sultat
-isisfish.result.begin.simulation=En d\u00E9but de simulation \:
-isisfish.result.capture=Capturer
-isisfish.result.capture.metier=Capturer par m\u00E9tier
-isisfish.result.choose.simulation=Choisir une simulation
-isisfish.result.datas=Donn\u00E9es
-isisfish.result.dimension=Dimension
-isisfish.result.end.simulation=En fin de Simulation\:
-isisfish.result.export=Export
-isisfish.result.export.file=Exporter un fichier texte
-isisfish.result.file=Fichier
-isisfish.result.graph=Graphe
-isisfish.result.map=Carte
-isisfish.result.new.window=Ouvrir une nouvelle fen\u00EAtre
-isisfish.result.quit=Quitter
-isisfish.result.reject.metier=Rejet par metier
-isisfish.result.remove.simulation=Supprimer Simulation
-isisfish.result.show.simulation.log=Voir les logs
-isisfish.result.statusBar=\
-isisfish.result.stress.metier=Effort par metier
-isisfish.result.summary=R\u00E9sum\u00E9
-isisfish.result.title=R\u00E9sultat
-isisfish.result.unload.metier=Debarquement par metier
-isisfish.resultChoice.save=R\u00E9sultats \u00E0 sauvegarder
-isisfish.resultChoice.saved=R\u00E9sultats sauvegard\u00E9
-isisfish.resultChoice.title=Choix de r\u00E9sultats
-isisfish.script.check=V\u00E9rifier
-isisfish.script.check.tooltip=V\u00E9rifie la synthaxe du script
-isisfish.script.commit=Commit
-isisfish.script.commit.tooltip=Committer le script sur le serveur SVN
-isisfish.script.compilation.failed=%s
-isisfish.script.compilation.ok=Compilation r\u00E9ussie.\n--------------------\n\n%s
-isisfish.script.compilingfile=Compilation de %s...
-isisfish.script.copy=Copier
-isisfish.script.copy.tooltip=Copier la s\u00E9lection courante (Ctrl-c)
-isisfish.script.cut=Couper
-isisfish.script.cut.tooltip=Couper la s\u00E9lection courante (Ctrl-x)
-isisfish.script.evaluate=\u00C9valuer
-isisfish.script.evaluate.tooltip=Lance le script (doit contenir une methode main() pour fonctionner)
-isisfish.script.export=Exporter
-isisfish.script.export.checkAll=Tout (d\u00E9-)s\u00E9lectionner
-isisfish.script.export.chooseDir=...
-isisfish.script.export.tooltip=Exporter les scripts s\u00E9lectionn\u00E9s vers une archive zip
-isisfish.script.export.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts \u00E0 exporter
-isisfish.script.export.tooltip.chooseDir=Choisir le r\u00E9pertoire o\u00F9 exporter les scripts
-isisfish.script.import=Importer des scripts depuis une archive zip
-isisfish.script.import.cancel=Annuler
-isisfish.script.import.checkAll=Tout (d\u00E9-)s\u00E9lectionner
-isisfish.script.import.import=Importer
-isisfish.script.import.labelAdd=Le(s) fichier(s) suivant(s) sera(ont) ajout\u00E9(s), Confirmer l'ajout
-isisfish.script.import.labelOverwrite=Le(s) fichier(s) suivant(s) existe(nt) d\u00E9j\u00E0, Confirmer pour l'\u00E9crasement
-isisfish.script.import.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts \u00E0 importer
-isisfish.script.javadoc.ok=Javadoc g\u00E9n\u00E9r\u00E9e avec succ\u00E8s\n---------------------------\n\n%s
-isisfish.script.menu.checkAllSyntax=V\u00E9rifier tous les scripts
-isisfish.script.menu.checkSyntax=V\u00E9rifier la syntaxe
-isisfish.script.menu.code=Code
-isisfish.script.menu.commit=Commiter des scripts sur le serveur
-isisfish.script.menu.copy=Copier
-isisfish.script.menu.cut=Couper
-isisfish.script.menu.deleteLocaly=Supprimer localement
-isisfish.script.menu.deleteLocalyServer=Supprimer localement et sur le serveur
-isisfish.script.menu.diff=Voir les diff\u00E9rences avec la version du serveur
-isisfish.script.menu.edit=\u00C9dition
-isisfish.script.menu.evaluate=Evaluer
-isisfish.script.menu.file=Fichier
-isisfish.script.menu.javadocgenerate=G\u00E9n\u00E9rer la javadoc
-isisfish.script.menu.javadocgenerated=Javadoc g\u00E9n\u00E9r\u00E9e dans %s
-isisfish.script.menu.javadocgenerating=Javadoc en cours de g\u00E9n\u00E9ration dans %s...
-isisfish.script.menu.javadocshow=Afficher la javadoc
-isisfish.script.menu.new=Nouveau
-isisfish.script.menu.paste=Coller
-isisfish.script.menu.save=Sauver
-isisfish.script.menu.txtExport=Exporter
-isisfish.script.menu.txtImport=Importer
-isisfish.script.menu.txtNewAnalysePlan=Nouveau plan d'analyse
-isisfish.script.menu.txtNewEquationModel=Nouvelle formule
-isisfish.script.menu.txtNewExport=Nouveau script d'export
-isisfish.script.menu.txtNewRule=Nouvelle r\u00E8gle
-isisfish.script.menu.txtNewScript=Nouveau script
-isisfish.script.menu.txtNewSensitivity=Nouveau calculateur de sensibilit\u00E9
-isisfish.script.menu.txtNewSensitivityExport=Nouvel export de sensibilit\u00E9
-isisfish.script.menu.txtNewSimulator=Nouveau simulateur
-isisfish.script.menu.txtVCS=Serveur
-isisfish.script.menu.update=Synchronisation
-isisfish.script.new=Nouveau
-isisfish.script.new.tooltip=Cr\u00E9e un nouveau script
-isisfish.script.paste=Coller
-isisfish.script.paste.tooltip=Colle la s\u00E9lection courante (Ctrl-v)
-isisfish.script.save=Sauver
-isisfish.script.save.tooltip=Sauve le script
-isisfish.script.title=Editeur de scripts
-isisfish.season.toString=saison %1$s-%2$s
-isisfish.selectivity.equation=Equation
-isisfish.selectivity.selectPopulation=S\u00E9lectionnez une population
-isisfish.selectivity.title=S\u00E9lectivit\u00E9
-isisfish.sens.backParameter=Retour aux param\u00E8tres
-isisfish.sens.title=Plan de simulation
-isisfish.sensitivity.coefficient=Coefficient (en %)
-isisfish.sensitivity.comment=Commentaires
-isisfish.sensitivity.continue=Facteur continu
-isisfish.sensitivity.discret=Facteur discret
-isisfish.sensitivity.displaysecondpass=Afficher les r\u00E9sultats
-isisfish.sensitivity.equation.variable.action=Action
-isisfish.sensitivity.equation.variable.coefficient=Coef (en %)
-isisfish.sensitivity.equation.variable.name=Nom
-isisfish.sensitivity.equation.variable.operator=Op\u00E9rateur
-isisfish.sensitivity.equation.variable.value=Valeur
-isisfish.sensitivity.export=Export
-isisfish.sensitivity.factor=Facteur
-isisfish.sensitivity.factors=Facteurs
-isisfish.sensitivity.firstValue=Premi\u00E8re valeur
-isisfish.sensitivity.increment=Cardinalit\u00E9
-isisfish.sensitivity.lastValue=Derni\u00E8re valeur
-isisfish.sensitivity.methodfactornotsupported=La m\u00E9thode de sensibilit\u00E9 choisie g\u00E8re les cardinalit\u00E9s des facteurs
-isisfish.sensitivity.name=Nom du facteur
-isisfish.sensitivity.operator=Op\u00E9rateur
-isisfish.sensitivity.secondpass=Analyse des r\u00E9sultats
-isisfish.sensitivity.secondpass.title=Analyse des r\u00E9sultats
-isisfish.sensitivity.select=M\u00E9thode
-isisfish.sensitivity.selectDiscretNumber=Nombre de facteurs
-isisfish.sensitivity.title=Analyse de sensibilit\u00E9
-isisfish.sensitivity.validDiscretNumber=Valider
-isisfish.sensitivity.value=Valeur
-isisfish.sensitivityChooser.title=M\u00E9thode de la sensibilit\u00E9
-isisfish.server.ssh.generateKey.title=G\u00E9n\u00E9rer une cl\u00E9 SSH
-isisfish.setOfVessels.comments=Commentaires
-isisfish.setOfVessels.fixedCosts=Co\u00FBts fixes
-isisfish.setOfVessels.name=Nom
-isisfish.setOfVessels.numberOfVessels=Nombre de navires
-isisfish.setOfVessels.technicalEfficiency=\u00C9fficacit\u00E9 technique
-isisfish.setOfVessels.title=Caract\u00E9ristiques
-isisfish.setOfVessels.vesselType=Type de navire
-isisfish.simpleResult.more.information=Cliquer sur une cellule pour plus d'informations...
-isisfish.simulation.log.console.title=Console de log simulation '%1$s'
-isisfish.simulation.log.showConsole=affichage de la console de log pour la simulation %1$s
-isisfish.simulation.menu.import=Restaurer les param\u00E8tres d'une simulation
-isisfish.simulation.menu.save=Sauver les param\u00E8tres de la simulation
-isisfish.simulation.menu.simulation=Simulation
-isisfish.simulation.name=Nom de la simulation
-isisfish.simulation.remote.message.connection=Connexion \u00E0 Caparmor
-isisfish.simulation.remote.message.deletingfiles=Suppression des fichiers de simulation
-isisfish.simulation.remote.message.downloadresults=T\u00E9l\u00E9chargement des r\u00E9sultats
-isisfish.simulation.remote.message.upload=Upload de la simulation
-isisfish.simulation.remote.message.waitingstart=Attente du d\u00E9marrage de la simulation
-isisfish.simulation.restarting=Red\u00E9marrage...
-isisfish.simulation.title=Lanceur de simulation
-isisfish.simulator.launcher.inprocess=dans le m\u00EAme processus
-isisfish.simulator.launcher.remote=sur le serveur Caparmor
-isisfish.simulator.launcher.subprocess=dans un sous processus
-isisfish.simulator.simulaction.badid=Impossible de lancer la simulation '%s' \: l'identifiant existe d\u00E9j\u00E0 \!
-isisfish.simulator.ssh.configuration.connecting=Connexion en cours
-isisfish.simulator.ssh.configuration.connectingpk=Connexion en cours (avec cl\u00E9 publique)
-isisfish.simulator.ssh.configuration.connection=Information de connexion
-isisfish.simulator.ssh.configuration.connectionerror=Connexion impossible (%s)
-isisfish.simulator.ssh.configuration.connectionok=Connect\u00E9 avec succ\u00E8s
-isisfish.simulator.ssh.configuration.environment=Configuration sur Caparmor
-isisfish.simulator.ssh.configuration.freespace=Espace disque utilis\u00E9 \:
-isisfish.simulator.ssh.configuration.freespace.confirmdelete=Attention, la suppression du dossier '%s' est irr\u00E9versible.\nConfirmez-vous la suppression de son contenu ?
-isisfish.simulator.ssh.configuration.freespace.label=Taille de %s \: %s
-isisfish.simulator.ssh.configuration.invalidpassphrase=Passphrase invalide
-isisfish.simulator.ssh.configuration.keygenerate=G\u00E9n\u00E9rer
-isisfish.simulator.ssh.configuration.status=Statut
-isisfish.simulator.ssh.configuration.test=Tester la configuration
-isisfish.simulator.ssh.configuration.title=Configuration du lanceur Caparmor
-isisfish.simulator.subprocess.readoutput.error=
-isisfish.species.age=Age
-isisfish.species.cee=CEE
-isisfish.species.comments=Commentaires
-isisfish.species.length=Longueur
-isisfish.species.name=Nom des esp\u00E8ces
-isisfish.species.rubbinCode=Code Rubbin
-isisfish.species.scientificName=Nom scientifique
-isisfish.species.structured=Structur\u00E9
-isisfish.ssh.askpassphrase.message=Entrez la passphrase pour la cl\u00E9 '%s' \:
-isisfish.ssh.askpassphrase.title=D\u00E9verrouillage de cl\u00E9 SSH
-isisfish.ssh.askpassphrase.wrongpassphrase=Mauvaise cl\u00E9, entrez une nouvelle passphrase '%s' \:
-isisfish.strategy.comments=Commentaires
-isisfish.strategy.inactivity=Equation d'inactivit\u00E9
-isisfish.strategy.inactivityEquationUsed=Utiliser une \u00E9quation d'inactivit\u00E9
-isisfish.strategy.name=Nom
-isisfish.strategy.proportionSetOfVessels=Proportion de la flottille
-isisfish.strategy.title=Caract\u00E9ristiques
-isisfish.strategyMonthInfo.metier=M\u00E9tier
-isisfish.strategyMonthInfo.minInactivityDays=Jour minimums d'inactivit\u00E9
-isisfish.strategyMonthInfo.numberOfTrips=Nombre de trajets
-isisfish.strategyMonthInfo.proportion=Proportion
-isisfish.strategyMonthInfo.title=Saisie des mois
-isisfish.strategyMonthInfo.toString=%1$s %2$s
-isisfish.timeUnit.day=Jour
-isisfish.timeUnit.hours=Heures
-isisfish.tray.simulation=Isis-fish - %1$s \: %2$s/%3$s
-isisfish.tray.simulation.multi=Isis-fish - %s / %s
-isisfish.tray.simulation.no=Isis-fish - Pas de simulation
-isisfish.tripType.comments=Commentaires
-isisfish.tripType.duration=Dur\u00E9e
-isisfish.tripType.minTime=Temps minimal entre deux voyages
-isisfish.tripType.name=Nom
-isisfish.vcs.ask.passphrase=Entrez votre passphrase (si votre clef ssh en contient une).
-isisfish.vcs.ask.passphrase.title=Demande de passe phrase
-isisfish.vcs.commit=Message de sauvegarde
-isisfish.vcs.commit.cancel=annuler
-isisfish.vcs.commit.label=Entrer quelques mots concernant la modification des scripts
-isisfish.vcs.commit.ok=confirmer
-isisfish.vcs.factory.cantinstanciate=Can't instanciate wanted VCS (%s), use default
-isisfish.vcs.howto.save.key=Comment enregister sa clef publique ssh aupr\u00E8s du labs
-isisfish.vcs.init.notfoundcantdownload=La base de donn\u00E9es pour la version %s n'a ni pu \u00EAtre trouv\u00E9e, ni t\u00E9l\u00E9charg\u00E9e.\nVous devez la t\u00E9l\u00E9charger manullement \u00E0 partir du site d'Isis-Fish.
-isisfish.vcs.init.wrongprotocol=Votre base de donn\u00E9es locale \: %s n'utilise pas un protocole correct.\nVoulez-vous faire une sauvegarde de cette base et r\u00E9cup\u00E9rer une meilleure version ?
-isisfish.vcs.save.key=Acc\u00E9der au labs pour enregister votre clef publique ssh
-isisfish.vcs.switchprotocol.confirm=Le protocole d'acc\u00E8s au d\u00E9p\u00F4t des scripts a chang\u00E9.\nVoulez-vous changer vers le nouveau d\u00E9p\u00F4t ?
-isisfish.vcs.switchtag.warningconflict=Votre base de donn\u00E9es a \u00E9t\u00E9 mise \u00E0 jour mais les fichiers suivants sont en conflit, merci de les v\u00E9rifier \:
-isisfish.vcs.switchversion.confirm=Vous n'utilisez pas le d\u00E9p\u00F4t correct pour votre version d'Isis-Fish \: %s.\nVoulez-vous changer de d\u00E9p\u00F4t ?
-isisfish.vcs.update=R\u00E9sultats de la synchronisation avec le serveur
-isisfish.vcs.update.cancel=annuler
-isisfish.vcs.update.checkAll=(de)-select tout
-isisfish.vcs.update.local=Systeme local
-isisfish.vcs.update.local.modified=Fichiers modifi\u00E9s
-isisfish.vcs.update.local.outofdateAndModified=Fichiers localement modifi\u00E9s en conflit avec le serveur
-isisfish.vcs.update.local.tooltip.modified=Fichiers localement modifi\u00E9s \n(confirmer pour revenir \u00E0 la version avant modification ou soum\u00EAtre au serveur)
-isisfish.vcs.update.local.tooltip.outofdateAndModified=Fichiers localement modifi\u00E9s mais ayant une version plus r\u00E9cente sur le serveur\n (confirmer pour revenir \u00E0 la version avant modification ou r\u00E9cup\u00E9rer la nouvelle version du serveur)
-isisfish.vcs.update.local.tooltip.unversionned=Fichiers uniquement pr\u00E9sents sur votre systeme \n(confirmer pour les enregister sur le serveur)
-isisfish.vcs.update.local.unversionned=Nouveaux fichiers
-isisfish.vcs.update.ok=continuer
-isisfish.vcs.update.remote=Serveur distant
-isisfish.vcs.update.remote.missing=Nouveaux fichiers
-isisfish.vcs.update.remote.outofdate=Fichiers plus r\u00E9cents sur le serveur
-isisfish.vcs.update.remote.tooltip.missing=Nouveaux fichiers uniquement pr\u00E9sents sur le serveur \n(confirmer pour les r\u00E9cup\u00E9rer)
-isisfish.vcs.update.remote.tooltip.outofdate=Fichiers dont il existe une version plus r\u00E9cente sur le serveur \n(confirmer pour les r\u00E9cup\u00E9rer)
-isisfish.vcs.update.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les fichiers (\u00E0 action unique) que vous voulez traiter
-isisfish.vcs.update.tooltip.local=vcs.update.tooltip.local
-isisfish.vcs.update.tooltip.remote=vcs.update.tooltip.remote
-isisfish.vcs.update.warningconflict=Votre base de donn\u00E9es a \u00E9t\u00E9 mise \u00E0 jour\nmais les fichiers suivants sont en conflit, merci de les v\u00E9rifier \:\n
-isisfish.vcs.updateconfirm=Confirmation des ope\u00E9rations de synchronisation avec le serveur
-isisfish.vcs.updateconfirm.cancel=annuler
-isisfish.vcs.updateconfirm.checkAll=(de)-select tout
-isisfish.vcs.updateconfirm.label=Confirmer les op\u00E9rations qui pourraient \u00E9craser vos fichiers
-isisfish.vcs.updateconfirm.label2='Etes vous sur de vouloir effectuer ces op\u00E9rations ?'
-isisfish.vcs.updateconfirm.ok=confirmer
-isisfish.vcs.updateconfirm.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts que vous voulez traiter
-isisfish.vcs.updaterepository.confirm=Votre d\u00E9p\u00F4t des scripts n'est pas \u00E0 jour. Voulez-vous mettre \u00E0 jour les fichiers suivants ?
-isisfish.vcs.vcssvn.add.error=Impossible d'ajouter un fichier
-isisfish.vcs.vcssvn.add.errorreadonly=Vous ne pouver pas ajouter de fichier, ce d\u00E9p\u00F4t est en lecture seule \!
-isisfish.vcs.vcssvn.checkProtocol.error=Impossible d'obtenir l'adresse correspondant au d\u00E9p\u00F4t local
-isisfish.vcs.vcssvn.checkProtocol.relocate=Transfert du d\u00E9p\u00F4t %s de %s vers %s
-isisfish.vcs.vcssvn.checkout.error=Impossible de mettre \u00E0 jour
-isisfish.vcs.vcssvn.cleanup.error=Impossible de d\u00E9verrouiller la copie locale
-isisfish.vcs.vcssvn.commit.error=Impossible de commiter
-isisfish.vcs.vcssvn.commit.errorreadonly=Vous ne pouvez pas commiter, le d\u00E9p\u00F4t est en lecture seule
-isisfish.vcs.vcssvn.delete.error=Impossible de supprimer des fichiers
-isisfish.vcs.vcssvn.delete.errorreadonly=Vous ne pouvez pas supprimer ce fichier, le d\u00E9p\u00F4t est en lecture seule
-isisfish.vcs.vcssvn.diff.error=Impossible d'obtenir le diff
-isisfish.vcs.vcssvn.gettag.error=Erreur lors de la r\u00E9cup\u00E9ration de l'adresse du d\u00E9p\u00F4t local
-isisfish.vcs.vcssvn.getupdate.error=Impossible d'obtenir le statut des fichiers
-isisfish.vcs.vcssvn.global.filelocalandremotestatus=Le statut du fichier %s est (l\:%s/d\:%s)
-isisfish.vcs.vcssvn.global.filestatus=Le statut de %s est %s
-isisfish.vcs.vcssvn.global.foundUpdatedFile=Ajout de %s comme fichier mis \u00E0 jour
-isisfish.vcs.vcssvn.global.torevision=\u00C0 la r\u00E9vision \: %d
-isisfish.vcs.vcssvn.isconnected.switchoff=Impossible de se connecter au serveur, passage en mode d\u00E9connect\u00E9 \: %s
-isisfish.vcs.vcssvn.isconnected.switchto=Connexion au serveur disponible, passage en mode connect\u00E9 \: %s
-isisfish.vcs.vcssvn.isonremote.error=Le fichier %s n'est pas sur le serveur
-isisfish.vcs.vcssvn.istag.notexist=Le tag %s n'existe pas
-isisfish.vcs.vcssvn.isuptodate.error=Impossible d'obtenir le statut de fichier
-isisfish.vcs.vcssvn.list.error=Impossible de lister
-isisfish.vcs.vcssvn.localstatus.error=Impossible d'obtenir le statut local de fichier
-isisfish.vcs.vcssvn.remotestatus.error=Impossible d'obtenir le statut distant de fichier
-isisfish.vcs.vcssvn.setTag.error=Erreur lors de la r\u00E9cup\u00E9ration de l'adresse du d\u00E9p\u00F4t local
-isisfish.vcs.vcssvn.settag.switchfromto=Switch du tag du d\u00E9p\u00F4t de %s \u00E0 %s
-isisfish.vcs.vcssvn.update.error=Impossible de mettre \u00E0 jour
-isisfish.vcs.vcssvn.update.notinlocal=Impossible de mettre \u00E0 jour des fichiers qui ne sont pas pas dans le d\u00E9p\u00F4t
-isisfish.versionStorage.removed=Supprim\u00E9
-isisfish.vesselType.activityRange=Intervalle d'activit\u00E9
-isisfish.vesselType.comments=Commentaires
-isisfish.vesselType.fuelCost=Co\u00FBt d'un trajet en fuel
-isisfish.vesselType.length=Longueur
-isisfish.vesselType.maxDuration=Dur\u00E9e maximale du trajet
-isisfish.vesselType.miniCrew=Taille minimale d'\u00E9quipage
-isisfish.vesselType.name=Nom
-isisfish.vesselType.speed=Vitesse
-isisfish.welcome.menu.about=\u00C0 propos
-isisfish.welcome.menu.api=API
-isisfish.welcome.menu.close=Fermer
-isisfish.welcome.menu.configuration=Configuration
-isisfish.welcome.menu.configuration.sshlauncher=Configuration Caparmor
-isisfish.welcome.menu.configuration.vcs=Configuration vcs
-isisfish.welcome.menu.file=Fichier
-isisfish.welcome.menu.frame=Fen\u00EAtre
-isisfish.welcome.menu.help=Aide
-isisfish.welcome.menu.help.isisfish=Site d'Isis-Fish
-isisfish.welcome.menu.help.isisfishapi=API Isis-Fish
-isisfish.welcome.menu.help.javaapi=API Java
-isisfish.welcome.menu.help.matrixapi=API NuitonMatrix
-isisfish.welcome.menu.help.topiaapi=API ToPIA
-isisfish.welcome.menu.input=Saisie
-isisfish.welcome.menu.monitor=Fen\u00EAtre de logs
-isisfish.welcome.menu.queue=Liste des simulations
-isisfish.welcome.menu.result=R\u00E9sultat
-isisfish.welcome.menu.script=Script
-isisfish.welcome.menu.simulation=Lanceur de simulations
-isisfish.welcome.menu.synchro=Synchronisation Serveur
-isisfish.welcome.title=Simulation Ifremer
-isisfish.wizardGroupCreation.allGroupsSameSize=Tous les groupes ont la m\u00EAme taille
-isisfish.wizardGroupCreation.allValues=Entrer toutes les valeurs
-isisfish.wizardGroupCreation.computedGrowthCurve=Calcul\u00E9 par une courbe de croissance
-isisfish.wizardGroupCreation.firstAge=Premier age
-isisfish.wizardGroupCreation.firstAgeHelp=Premier age \= age minimal
-isisfish.wizardGroupCreation.firstGroup=Premier groupe
-isisfish.wizardGroupCreation.firstLength=Taille min premi\u00E8re classe
-isisfish.wizardGroupCreation.firstLengthHelp=Taille min premi\u00E8re classe \= taille minimale du premier groupe
-isisfish.wizardGroupCreation.gapBetweenGroupsHelp=L'interval entre chaque groupe est de 1 an
-isisfish.wizardGroupCreation.groupWidth=Longueur du groupe
-isisfish.wizardGroupCreation.groupWidthHelp=Longueur du groupe \= Longueur du groupe
-isisfish.wizardGroupCreation.lastAge=Dernier age
-isisfish.wizardGroupCreation.lastAgeHelp=Dernier age \= age maximal
-isisfish.wizardGroupCreation.maxGroupsLength=Taille maximale de groupes
-isisfish.wizardGroupCreation.maxGroupsLengthHelp=Un point-virgule ';' doit s\u00E9parer les tailles maximales de chaque groupe
-isisfish.wizardGroupCreation.numberGroup=Nombre de groupe
-isisfish.wizardGroupCreation.numberGroupHelp=Nombre de groupe \= Nombre de groupe voulu
-isisfish.wizardGroupCreation.numberGroups=Nombre de groupes
-isisfish.wizardGroupCreation.populationCharacteristics=Entrez les caract\u00E9ristiques de la population
-isisfish.wizardGroupCreation.selectGroupLengthType=Choisir la longueur du groupe
-isisfish.wizardGroupCreation.timeStep=Pas de temps (en mois)
-isisfish.wizardGroupCreation.title=Cr\u00E9ation du groupe
-isisfish.wizardGroupCreation.undefinedGrowthEquation=L'\u00E9quation utilis\u00E9e est la courbe de croissance de la population. Elle doit \u00EAtre pr\u00E9alablement d\u00E9finie.
-isisfish.zone.cells=Cellules de la zone
-isisfish.zone.comments=Commentaires
-isisfish.zone.name=Nom
-region\ already\ exists\ %s\ use\ 'force'\ argument\ to\ force\ overwrite=
-simulate\ %s\ with\ file\ %s=
Copied: isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish_en_GB.properties (from rev 3148, isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-en_GB.properties)
===================================================================
--- isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish_en_GB.properties (rev 0)
+++ isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish_en_GB.properties 2011-03-11 17:33:15 UTC (rev 3156)
@@ -0,0 +1,1128 @@
+=
+Add\ to\ default\ queue=
+Analyse\ plan\ error,\ too\ many\ simulation\ for\ %s\ \:\ %s=
+Can't\ add\ result\ '%1$s'\ at\ date\ %2$s=Can't add result '%1$s' at date %2$s
+Can't\ add\ simulation\:\ %s=
+Can't\ create\ simulation\ logger=Can't create simulation logger
+Can't\ delete\ simulation=
+Can't\ delete\ simulation\ %s\ =
+Can't\ display\ simulation\ log=
+Can't\ do\ post\ action\ %s=
+Can't\ do\ simulation\ %s=
+Can't\ download\ archive\ \:\ %s=
+Can't\ download\ file=
+Can't\ evaluate\ simulation\ prescript=
+Can't\ export\ simulation\ %s=
+Can't\ get\ changlog=
+Can't\ get\ result\:\ %1$s=Can't get result\: %1$s
+Can't\ instanciate\ export\ %1$s=Can't instanciate export %1$s
+Can't\ instantiate\ %s=
+Can't\ open\ log\ for\ %s=
+Can't\ open\ simulation\ internal\ frame=
+Can't\ read\ ssh\ key\ \:\ %s=
+Can't\ simulate\ %s=
+Check\ state\ of\ local\ repository\:\ %s=
+Command\ '%s'\ fail\ to\ execute=
+Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
+Error\ during\ vcs\ initialisation=
+Error\ while\ uploading\ public\ key\ to\ remote\ serveur\ authorized_keys=
+Generate\ next\ simulation=
+Import\ one\ java\ file\ script\ source=
+Import\ simulation\ file\ %s\ in\ directory\ %s\ and\ rename\ from\ %s\ to\ %s=
+Import\ zipped\ file\ containing\ all\ scripts\ directory\ structure=
+Info=Info
+Jobs\ submited\ is\ not\ ItemSimulation\ but\ was\ %s=
+Last\ entry\ was\ %s\ extract\ name\ %s=
+Launcher\ %s\ will\ be\ stopped\ because\ there\ are\ too\ many\ error\ (%s)=
+Local\ repository\ don't\ exist=
+Local\ repository\ exists\ but\ it's\ not\ valide\ for\ current\ vcs\:\ %s=
+Normal\ stop\ thread,\ this\ is\ not\ an\ error=
+Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
+Process\ template\ error=
+Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
+Region\ %s\ already\ inited=
+Remote\ control\ file\ doesn't\ exists\ %s=
+Remote\ information\ file\ doesn't\ exists\ %s=
+Rename\ data\ directory\ to\ %s=
+Show\ help=
+Show\ version=
+SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
+Skip\ data\ migration\ (disabled)=
+Ssh\ key\ found\ '%s'\ will\ be\ used\ to\ connect\ to=
+Stop\ simulation\ plan,\ because\ can't\ call\ afterSimulation\ correctly\ on\ plan\ %s=
+SubProcess\ start\:\ %s\ %s=
+Switch\ repository\ type\ to\ none=
+Try\ to\ log\ on\ %s@%s\:%d=
+Use\ branches,\ switch\ not\ needed=
+User\ restart\ simulation\ %s=
+User\ stop\ simulation\ %s=
+coser.config.category.path=
+coser.ui.config.title=
+could\ not\ close\ reader\ %1$s=could not close reader %1$s
+could\ not\ create\ simulation\ filter\ model\ for\ reason\ %1$s=could not create simulation filter model for reason %1$s
+could\ not\ filter\ on\ simulations=could not filter on simulations
+could\ not\ found\ %s=
+could\ not\ found\ log\ file\ %1$s=could not found log file %1$s
+could\ not\ found\ region\ %s=
+could\ not\ found\ simulation\ %s=
+could\ not\ read\ at\ offset\ %1$s\ for\ reason\ %2$s=could not read at offset %1$s for reason %2$s
+destination\ already\ exists\ %s\ use\ 'force'\ argument\ to\ force\ overwrite=
+destination\ already\ exists\ %s\ use\ \\'force\\'\ argument\ to\ force\ overwrite=
+directory\ %s\ must\ be\ a\ directory=
+filter\ loaded\ in\ %1$s\ ms\ \:\ found\ %2$s\ lines.=filter loaded in %1$s ms \: found %2$s lines.
+isisfish.about.abouthtmltext=<html><b>Isis-Fish (%s)</b><br /><br />Copyright IFREMER-MAERHA 2000-2011.<br /><br /><a href\="http\://isis-fish.labs.libre-entreprise.org">http\://isis-fish.labs.libre-entreprise.org</a><br /><br />Please, report any bug you can found.<html>
+isisfish.about.licensetext=You can modify and redistribute the program under the conditions of the GNU General Public License (version 2 or later). A copy of the GPL is in the file "LICENSE.txt" provided with Isis-Fish. All rights reserved. No guarantees are provided for use of this program.
+isisfish.about.title=About Isis-Fish...
+isisfish.advancedParameters.title=Advanced parameters
+isisfish.advancedParams.freeParameters=Free parameters
+isisfish.advancedParams.libLevelLogger=Library log level
+isisfish.advancedParams.scriptLevelLogger=Script log level
+isisfish.advancedParams.simulLevelLogger=Simulator log level
+isisfish.advancedParams.simulationCache=Simulation cache
+isisfish.advancedParams.simulationStatistique=Simulation statistics
+isisfish.advancedParams.simulatorUse=Simulator to Use
+isisfish.cell.comments=Comments
+isisfish.cell.land=Land
+isisfish.cell.latitude=Latitude
+isisfish.cell.longitude=Longitude
+isisfish.cell.name=Name
+isisfish.change.equation=Can't change equation
+isisfish.commit.message=Enter commit message
+isisfish.common.add=Add
+isisfish.common.add.short=add
+isisfish.common.alert=alert
+isisfish.common.apply=Apply
+isisfish.common.blank=\
+isisfish.common.cancel=Cancel
+isisfish.common.check=Check
+isisfish.common.clear=Clear
+isisfish.common.confirm=Confirm
+isisfish.common.date=Date
+isisfish.common.debug=debug
+isisfish.common.delete=Delete
+isisfish.common.duration.inhours=in hours
+isisfish.common.ellipsis=...
+isisfish.common.emigration=Emigration
+isisfish.common.equation=Equation
+isisfish.common.error=error
+isisfish.common.file=File
+isisfish.common.finish=Finish
+isisfish.common.gear=Gear
+isisfish.common.immigration=immigration
+isisfish.common.info=info
+isisfish.common.migration=migration
+isisfish.common.module=Module
+isisfish.common.month=month %1$s
+isisfish.common.name=Name
+isisfish.common.new=New
+isisfish.common.newMatrix=New matrix
+isisfish.common.next=Next
+isisfish.common.ok=Ok
+isisfish.common.openEditor=Open editor
+isisfish.common.population=Population
+isisfish.common.populationGroup=Population group
+isisfish.common.populations=Populations
+isisfish.common.port=Port
+isisfish.common.prev=Previous
+isisfish.common.region=Region
+isisfish.common.remove=Remove
+isisfish.common.reset=Reset
+isisfish.common.save=Save
+isisfish.common.saveModel=Save as model
+isisfish.common.saveNextSimulation=Save for next simulation
+isisfish.common.season=Season
+isisfish.common.setOfVessels=Set of vessels
+isisfish.common.simulate=Simulate
+isisfish.common.strategies=Strategies
+isisfish.common.sum=Sum
+isisfish.common.tag=Tag
+isisfish.common.tripType=Trip type
+isisfish.common.valid=Valid
+isisfish.common.value=Value
+isisfish.common.warn=warn
+isisfish.common.year=year
+isisfish.common.zone=Zone
+isisfish.config.category.main=Main
+isisfish.config.category.main.description=Main configuration
+isisfish.config.category.misc=Misc
+isisfish.config.category.misc.description=Miscealenous
+isisfish.config.category.versioning=VCS
+isisfish.config.category.versioning.description=Versioning system
+isisfish.config.database.lockmode.description=Database lock mode
+isisfish.config.main.compileDirectory.description=Script compilation directory
+isisfish.config.main.configFileName.description=Configuration filename
+isisfish.config.main.defaultBackupDirectory.description=Backup directory
+isisfish.config.main.defaultExportNames.description=Exports to do after simulation
+isisfish.config.main.defaultMapFile.description=Default map file to use for map without custom maps
+isisfish.config.main.defaultResultNames.description=Result names to manage during a simulation
+isisfish.config.main.defaultSimulator.description=Default simulator to use to simulate
+isisfish.config.main.defaultTagValue.description=
+isisfish.config.main.encoding.description=encoding used on system
+isisfish.config.main.javadocDirectory.description=Javadoc generation directory
+isisfish.config.main.javadocURL.description=Javadoc url
+isisfish.config.main.launchUI.description=Display user interface
+isisfish.config.main.localSimulator.description=Local simulator launcher name (same process)
+isisfish.config.main.locale.description=user locale
+isisfish.config.main.monitoringDirectory.description=Folder containing all necessary information needed to restart simulation
+isisfish.config.main.performcron.description=Perform all task registered in cron service
+isisfish.config.main.performmigration.description=Perform data migration
+isisfish.config.main.performvcsupdate.description=Perform vcs update
+isisfish.config.main.remoteCaparmor.description=Remote simulator launcher name
+isisfish.config.main.simulation.ssh.control.check.interval=Control check interval (seconds)
+isisfish.config.main.simulation.ssh.control.check.interval.description=Control check interval (seconds)
+isisfish.config.main.simulation.ssh.datapath=Isis-Fish database
+isisfish.config.main.simulation.ssh.datapath.description=Isis-Fish database path
+isisfish.config.main.simulation.ssh.isis.home=Isis-Fish home
+isisfish.config.main.simulation.ssh.isis.home.description=Isis-Fish installation directory
+isisfish.config.main.simulation.ssh.javapath=Java path
+isisfish.config.main.simulation.ssh.javapath.description=Java location on remote server (full path or relative to $PATH, by default value is caparmor configuration)
+isisfish.config.main.simulation.ssh.max.threads=SSH threads count
+isisfish.config.main.simulation.ssh.max.threads.description=Number of simultaneous simulations to do through SSH. Might only be usefull for dependent analysis plans. Otherwise keep value at '1'.
+isisfish.config.main.simulation.ssh.pbsbinpath=PBS executables directory
+isisfish.config.main.simulation.ssh.pbsbinpath.description=PBS executables (qsub, qdel...) directory
+isisfish.config.main.simulation.ssh.pbsqsuboptions=Qsub arguments
+isisfish.config.main.simulation.ssh.pbsqsuboptions.description=Arguments used at qsub job sumbit. Default to '-m n' don't send mail.
+isisfish.config.main.simulation.ssh.server=Simulation server
+isisfish.config.main.simulation.ssh.server.description=Simulation server address
+isisfish.config.main.simulation.ssh.sftpserver.description=Transfer server address (set empty to use scp from simulation server)
+isisfish.config.main.simulation.ssh.tmppath=Server temp directory
+isisfish.config.main.simulation.ssh.tmppath.description=Server temp directory
+isisfish.config.main.simulation.ssh.userhome=User home directory
+isisfish.config.main.simulation.ssh.userhome.description=User home directory
+isisfish.config.main.simulation.ssh.username=SSH identifier
+isisfish.config.main.simulation.ssh.username.description=SSH identifier
+isisfish.config.main.simulationShowOnlyError.description=
+isisfish.config.main.smtpServer.description=Smtp server address
+isisfish.config.main.subSimulator.description=Sub process simulator launcher name
+isisfish.config.main.userMail.description=User email address
+isisfish.config.main.userName.description=User name
+isisfish.config.ssh.key.file=SSH key
+isisfish.config.ssh.key.file.description=Private SSH key path
+isisfish.config.vcs.hostName.description=
+isisfish.config.vcs.localDatabasePath.description=
+isisfish.config.vcs.noPassPhrase.description=
+isisfish.config.vcs.passphrase.description=
+isisfish.config.vcs.remotePath.description=
+isisfish.config.vcs.type.description=
+isisfish.config.vcs.useSshConnexion.description=
+isisfish.config.vcs.userName.description=
+isisfish.config.vcs.userPassword.description=
+isisfish.dataResult.export.csv=Export to CSV
+isisfish.dataResult.label=Value
+isisfish.date.toString=%1$s %2$s
+isisfish.effortDescription.crewFoodCost=Crew food cost
+isisfish.effortDescription.crewShareRate=Crew share rate
+isisfish.effortDescription.crewSize=Crew size
+isisfish.effortDescription.economicTitle=\u00C9conomiques parameters
+isisfish.effortDescription.effortTitle=Fishing effort parameters
+isisfish.effortDescription.fishingOperation=Fishing operation
+isisfish.effortDescription.fishingOperationDuration=Fishing operation duration
+isisfish.effortDescription.fishingOperationDuration.tooltip=In hours
+isisfish.effortDescription.fixedCrewSalary=Fixed crew salary
+isisfish.effortDescription.gearsNumberPerOperation=Gears number per operation
+isisfish.effortDescription.landingCosts=Landing costs
+isisfish.effortDescription.otherRunningCost=Other running cost
+isisfish.effortDescription.parametersTitle=M\u00E9tiers parameters
+isisfish.effortDescription.repairAndMaintenanceGearCost=Repair and maintenance gear cost
+isisfish.effortDescription.title=Practiced metier
+isisfish.effortDescription.toString=EffortDescription for %1$s with %2$s
+isisfish.effortDescription.unitCostOfFishing=Fishing unit cost
+isisfish.equation.editor.title=Equation Editor
+isisfish.error.acceptable.population=New value isn't acceptable value for this population
+isisfish.error.add.card=Error while adding of result to the map.
+isisfish.error.add.logger.simulation=isisfish.error.add.logger.simulation
+isisfish.error.add.result.data=Error while adding result ot data.
+isisfish.error.add.result.graph=Error while adding result to graph
+isisfish.error.add.tray=Can't add system tray icon
+isisfish.error.change.classloader=Can't change classloader because can't create URL from file %1$s
+isisfish.error.change.equation=Can't change equation
+isisfish.error.compile.fileerror=File %s can't be compiled \!
+isisfish.error.compile.script=Can't compile script\: %1$s
+isisfish.error.compiled.parameter=Can't get rule parameter from compiled class
+isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00E9es
+isisfish.error.create.equation=Can't create equation
+isisfish.error.delete.database=Can't delete database
+isisfish.error.delete.file=could not delete file %1$s
+isisfish.error.delete.vcs.files=Can't delete vcs files
+isisfish.error.during.simulation=Error during simulation
+isisfish.error.emigration.negative=emigration negative
+isisfish.error.empty.code.rubbin=rubbin's code is empty
+isisfish.error.empty.emigration=emigration empty
+isisfish.error.empty.id.geographic=goegraphic identifier is empty
+isisfish.error.empty.immigration=immigration empty
+isisfish.error.empty.migration=Migration empty
+isisfish.error.empty.name=The name is empty
+isisfish.error.empty.params.name=Parameter name is empty
+isisfish.error.empty.population=Population is empty
+isisfish.error.empty.scientific.name=scentific name is empty
+isisfish.error.empty.season=info season empty
+isisfish.error.empty.selectivity=selectivity is empty
+isisfish.error.empty.species=specie capturable empty
+isisfish.error.empty.species.name=specie's name is empty
+isisfish.error.empty.unit=measure unit is empty
+isisfish.error.equation.openeditor=Can't open equation editor
+isisfish.error.equation.return.number=EquationImpl must return a number\: %1$s
+isisfish.error.equation.savemodel=Can't save equation as model
+isisfish.error.errorpane.htmlmessage=<html><b>IsisFish has handled \:</b><br />%s</b></html>
+isisfish.error.errorpane.title=Error
+isisfish.error.evaluate.equation=Can't evaluate equation\: %1$s
+isisfish.error.evaluate.preplan.script=
+isisfish.error.evalute.plan.script=Can't evaluate plan script
+isisfish.error.factor.invalid=Factor is not valid
+isisfish.error.file.already.exists=The file %1$s already exist
+isisfish.error.growth.equation.before.create.group.population=Error, You must input growth equation before create the group population
+isisfish.error.immigration.negative=immigration negative
+isisfish.error.import.convertible=Erreur lors de l'import, la version du fichier que vous souhaitez importer n'est pas transformable en une version importable.
+isisfish.error.import.file=Can't import file %1$s
+isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00E9cente que la version souhait\u00E9e.
+isisfish.error.init.map=Can't init map.
+isisfish.error.input.addentity=Can't add entity "%s"
+isisfish.error.input.cancelentity=Can't cancel modification on entity
+isisfish.error.input.createentity=Can't create entity
+isisfish.error.input.removeentity=Can't remove entity "%s"
+isisfish.error.input.save=Can't save modifications
+isisfish.error.input.saveentity=Can't save entity
+isisfish.error.input.spacializematrix=
+isisfish.error.instanciate=Can't instanciate %1$s
+isisfish.error.instanciate.export=Can't instanciate export %1$s
+isisfish.error.invalid.costs.fix=les co\u00FBts fixes sont invalides
+isisfish.error.invalid.distribution.recruitment=distribution de recrutement invalide
+isisfish.error.invalid.equation=Invalid equation
+isisfish.error.invalid.equation.name=Invalid equation name
+isisfish.error.invalid.file.name=The script name %1$s is not valid.
+isisfish.error.invalid.interval.reproduction.recruitment=interval entre la reproduction et le recrutement invalide
+isisfish.error.invalid.mean.weight=Invalid mean weight
+isisfish.error.invalid.natural.death=natural mortality on classes naissantes invalide
+isisfish.error.invalid.nullequation=Equation %s doesn't exist \!
+isisfish.error.invalid.number=The number is invalid
+isisfish.error.invalid.range=La gamme possible n'a pas de valeur acceptable
+isisfish.error.invalid.values.params=Parametre controlable hors valeurs possibles
+isisfish.error.invalidate.natural.death=natural mortality invalid
+isisfish.error.invoke.method=Can't invoke method '%1$s' for class %2$s
+isisfish.error.linkageerror.message=Isis-Fish has detected a script use error.\nCompilation directory has been deleted to force recompilation.\n\nPlease, restart Isis-Fish.
+isisfish.error.linkageerror.title=Init error
+isisfish.error.load.class=Can't load class\: %1$s
+isisfish.error.load.classloader=Can't create ClassLoader for script, bad directory\: %1$s for reason %2$s
+isisfish.error.load.file=could not load file %1$s
+isisfish.error.log.closeAppender=could not close appender %1$s for category %2$s
+isisfish.error.log.console.dispose=Une erreur est survenue pendant la fermeture de la console %1$s de log, raison %2$s
+isisfish.error.log.createAppender=could not create appender [%1$s] \: %2$s for reason %3$s
+isisfish.error.log.foundAppender=\=could not found log appender %1$s for category %2$s
+isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00E9lectionnez moins d'\u00E9l\u00E9ments ou utilisez l'op\u00E9rateur somme.
+isisfish.error.migration.negative=Migration negative
+isisfish.error.no.matrix=No matrix for \: %s
+isisfish.error.no.null.time.step=Error, the time step should not be null
+isisfish.error.no.sector=No sector defined
+isisfish.error.no.select.simulation=Could not select simulation
+isisfish.error.no.target.species=No target species in %1$s for %2$s
+isisfish.error.not.found.code=Could not found codeclass for %1$s
+isisfish.error.not.found.description=Could not found description for %1$s
+isisfish.error.not.found.field=Could not found field %1$s doc for %2$s
+isisfish.error.not.found.field.class=Could not found field %1$s for class %2$s
+isisfish.error.not.null.class.grown=Null value for grown class
+isisfish.error.not.null.mean.weight=Null mean weight
+isisfish.error.not.null.natural.death=Null natural mortality
+isisfish.error.not.possible.metier=Pas de m\u00E9tier possible
+isisfish.error.not.support.class=this class does not support
+isisfish.error.number.classes.upper.zero=Error, the number of classes must be upper than 0
+isisfish.error.out.memory=Out of memory try with more memory (option -mx)
+isisfish.error.overlap.season=Cette saison chevauche une autre saison
+isisfish.error.parse.date=Can't parse date %1$s
+isisfish.error.parse.long=Can't parse long %1$s
+isisfish.error.plan.parameter=Can't get plan parameter from compiled class
+isisfish.error.prepare.data=Can't prepare data
+isisfish.error.prepare.information.simulation=Can't prepare information for simulation
+isisfish.error.read.simulation=Can't read simulation information %1$s
+isisfish.error.read.simulation.parameters=Can't read simulation parameters from file %1$s
+isisfish.error.region.addmap=Can't add map in region
+isisfish.error.region.already.exists=This region already exists
+isisfish.error.region.cancel=
+isisfish.error.region.check=Can't check region
+isisfish.error.region.commit=Can't commit region
+isisfish.error.region.copy=Can't copy region
+isisfish.error.region.create=Can't create new region
+isisfish.error.region.export=Can't export region
+isisfish.error.region.import=Can't import region
+isisfish.error.region.load=Can't load region
+isisfish.error.region.name.empty=Region name is empty
+isisfish.error.region.new=
+isisfish.error.region.remove=Can't remove region
+isisfish.error.region.removemap=Can't remove map in region
+isisfish.error.region.save=Can't save modification on region
+isisfish.error.remove.directory=Can't remove directory %1$s
+isisfish.error.rename.region=Can't rename region to %1$s
+isisfish.error.save.checkSum.compilation=Can't save checkSum to compilation\: %1$s
+isisfish.error.save.script.compilation=Can't save script to compilation\: %1$s
+isisfish.error.save.simulation.parameters=Can't save simulation parameters in file %1$s
+isisfish.error.script.create=isisfish.error.script.create
+isisfish.error.script.delete=Can't delete file %1$s for reason %2$s
+isisfish.error.script.import=Can't import file for reason %1$s
+isisfish.error.script.load=Can't load file %1$s for reason %2$s
+isisfish.error.script.save=Can't save file %1$s for reason %2$s
+isisfish.error.sensitivity.export=Can't do region factors export
+isisfish.error.simulation.addanalyseplan=Can't add analyze plan
+isisfish.error.simulation.addrule=Can't add rule
+isisfish.error.simulation.getparametervalue=Can't get parameter value
+isisfish.error.simulation.getresultname=Can't get result names list
+isisfish.error.simulation.importparameter=Can't import simulation parameters
+isisfish.error.simulation.initsimulaction=Can't init simulation
+isisfish.error.simulation.launchsimulation=Can't launch simulation
+isisfish.error.simulation.listoldsimulation=Can't get old simulation list
+isisfish.error.simulation.listpopulation=Can't get population list
+isisfish.error.simulation.liststrategies=Can't get strategies list
+isisfish.error.simulation.loadoldsimulation=Can't load old simulation
+isisfish.error.simulation.log.openAppender=could not open appender of simulation %1$s for reason %2$s
+isisfish.error.simulation.openregion=Can't open region
+isisfish.error.simulation.remote.global=Can't launch a simulation on remote server
+isisfish.error.simulation.remote.wrongportvalue=Connection port value is incorrect \: %s
+isisfish.error.simulation.resultXml.close=Can't close simulation result XML for reason %1$s
+isisfish.error.simulation.resultXml.open=Can't open simulation result XML for reason %1$s
+isisfish.error.simulation.resultXml.write=Can't write simulation result XML for reason %1$s
+isisfish.error.simulation.savesimulation=Can't save simulation parameters
+isisfish.error.simulation.setparametervalue=Can't set parameter value
+isisfish.error.source.parameter=Can't get parameter from source
+isisfish.error.strategy.order=Strategy %1$s don't have 12 StrategyMonthInfo but %2$s. Recreate them
+isisfish.error.undefined.classes=No classes defined
+isisfish.error.undefined.correspondence.zones.reproduction.recruitment=pas de correspondance entre les zones de reproduction et les zones de recrutement
+isisfish.error.undefined.gear=The engin is not defined
+isisfish.error.undefined.mesh=No mesh defined
+isisfish.error.undefined.mesh.sector=No mesh defined in sector
+isisfish.error.undefined.meta.population=No population defined
+isisfish.error.undefined.natural.death=No natural mortality on classes naissantes
+isisfish.error.undefined.sector=No sector defined
+isisfish.error.undefined.stategy=No strategy defined
+isisfish.error.undefined.stategy.months=The strategy is not defined for some mounths
+isisfish.error.undefined.zone.population=No population's zone defined
+isisfish.error.undefined.zone.recruitment=No recrutment's zone defined
+isisfish.error.undefined.zone.reproduction=No reprodution's zone defined
+isisfish.error.unsupported.equation.langage=Unsupported language '%1$s' for equation\: %2$s
+isisfish.error.wait.simThread=Can't wait SimThread
+isisfish.error.warning.title=Warning
+isisfish.error.write.simulation=Can't write information %1$s
+isisfish.export.saved=Export saved
+isisfish.export.title=Results export
+isisfish.filter=Filter
+isisfish.filter.apply=Apply filter
+isisfish.filter.cancel=Cancel
+isisfish.filter.log.levelDebug=Debug
+isisfish.filter.log.levelError=Error
+isisfish.filter.log.levelFatal=Fatal
+isisfish.filter.log.levelInfo=Info
+isisfish.filter.log.levelTrace=Trace
+isisfish.filter.log.levelWarn=Warn
+isisfish.filter.log.tooltip.levelDebug=Debug
+isisfish.filter.log.tooltip.levelError=Error
+isisfish.filter.log.tooltip.levelFatal=Fatal
+isisfish.filter.log.tooltip.levelInfo=Info
+isisfish.filter.log.tooltip.levelTrace=Trace
+isisfish.filter.log.tooltip.levelWarn=Warn
+isisfish.filter.log.tooltip.message=Enter a term to search and press Enter
+isisfish.filter.reset=Reset
+isisfish.filter.result=Results
+isisfish.filter.result.found=Results (%d/%d)
+isisfish.filter.select=Select
+isisfish.filter.select.simulation=Select a simulation
+isisfish.filter.simulation=Filter simulations
+isisfish.filter.simulation.analysePlanNumber=Analyse plan number
+isisfish.filter.simulation.description=Description
+isisfish.filter.simulation.local=Local
+isisfish.filter.simulation.numberOfYear=Number of year
+isisfish.filter.simulation.regionName=Region name
+isisfish.filter.simulation.simulationEnd=Simulation end date (dd/MM/yyyy)
+isisfish.filter.simulation.simulationName=Simulation name
+isisfish.filter.simulation.simulationStart=Simulation start date (dd/MM/yyyy)
+isisfish.filter.simulation.simulatorName=Simulator name
+isisfish.filter.simulation.tooltip.analysePlanNumber=Filter on analyse number
+isisfish.filter.simulation.tooltip.description=Filter on description (regex)
+isisfish.filter.simulation.tooltip.local=Filter only local simulations
+isisfish.filter.simulation.tooltip.numberOfYear=Filter on number of year (exact sequence)
+isisfish.filter.simulation.tooltip.regionName=Filter on region name (regex)
+isisfish.filter.simulation.tooltip.simulationEnd=Filter on region end date (format dd/MM/yyyy)
+isisfish.filter.simulation.tooltip.simulationName=Filter on simulation name
+isisfish.filter.simulation.tooltip.simulationStart=Filter on simulation start date (format dd/MM/yyyy)
+isisfish.filter.simulation.tooltip.simulatorName=Filter on simulator name
+isisfish.filter.simulation.tooltip.useAnalysePlan=Filter on simulations with analyse plan
+isisfish.filter.simulation.tooltip.useOptimization=Filter on simulations with optimization
+isisfish.filter.simulation.tooltip.usePreScript=Filter on simulations with pre-script
+isisfish.filter.simulation.tooltip.useStatistic=Filter on simulations with statistic
+isisfish.filter.simulation.useAnalysePlan=analyse plan
+isisfish.filter.simulation.useOptimization=optimization
+isisfish.filter.simulation.usePreScript=pre-script
+isisfish.filter.simulation.useStatistic=statistic
+isisfish.fisheryRegion.addMap=Add map
+isisfish.fisheryRegion.area=Fishery area boundaries
+isisfish.fisheryRegion.comments=Comments
+isisfish.fisheryRegion.delMap=Delete map
+isisfish.fisheryRegion.latitude=Lat.
+isisfish.fisheryRegion.latitude.max=Lat. max.
+isisfish.fisheryRegion.latitude.min=Lat. min.
+isisfish.fisheryRegion.longitude=Long.
+isisfish.fisheryRegion.longitude.max=Long. max.
+isisfish.fisheryRegion.longitude.min=Long. min.
+isisfish.fisheryRegion.name=Region name
+isisfish.fisheryRegion.ofCells=of cells (option)
+isisfish.fisheryRegion.selectFile=Select a file
+isisfish.fisheryRegion.spatial=Spatial resolution
+isisfish.gear.comments=Comments
+isisfish.gear.effortUnit=Effort Unit
+isisfish.gear.name=Name
+isisfish.gear.rangeValues=Range of values
+isisfish.gear.standardisationFactor=Standardisation factor
+isisfish.gear.technicalParameter=Technical parameter
+isisfish.gear.title=Gear
+isisfish.graphBean.graph.render=Choose a graph render
+isisfish.graphCombo.render.bar=Verticals bar rendering
+isisfish.graphCombo.render.bar.3d=3D verticals bars rendering
+isisfish.graphCombo.render.bar.stacked=Stacked verticals bars rendering
+isisfish.graphCombo.render.line=Line rendering
+isisfish.graphCombo.render.line.3d=3D line rendering
+isisfish.graphCombo.render.min.max=Min/max rendering
+isisfish.graphCombo.render.surface=Area rendering
+isisfish.graphCombo.render.surface.stacked=Stacked area rendering
+isisfish.infoItem.label=defaultToolTip-fr.ifremer.resultat.InfoItem.label
+isisfish.infoItem.sum=Sum all elements
+isisfish.infoItem.sum.year=Sum elements per year
+isisfish.input.continueCells=Continue to cells
+isisfish.input.continueGears=Continue to gears
+isisfish.input.continueMetiers=Continue to metiers
+isisfish.input.continuePopulations=Continue to populations
+isisfish.input.continuePorts=Continue to ports
+isisfish.input.continueSetOfVessels=Continue to set of vessels
+isisfish.input.continueSpecies=Continue to species
+isisfish.input.continueStrategies=Continue to strategies
+isisfish.input.continueTripTypes=Continue to trip types
+isisfish.input.continueVesselTypes=Continue to vessel types
+isisfish.input.continueZones=Continue to zones
+isisfish.input.map.copytoclicboard=Copy to clipboard
+isisfish.input.menu.addRegion=Add region
+isisfish.input.menu.commit=Commit change
+isisfish.input.menu.copyRegion=Copy region
+isisfish.input.menu.exportRegion=Export region
+isisfish.input.menu.importRegion=Import region
+isisfish.input.menu.importRegionSimulation=Import region from simulation
+isisfish.input.menu.importRegionV2=Import region from v2
+isisfish.input.menu.importRenameRegion=Import region and rename
+isisfish.input.menu.removeLocaly=Remove localy
+isisfish.input.menu.removeLocalyRemotely=Remove localy and remotely
+isisfish.input.menu.sensitivity=Mexico
+isisfish.input.menu.sensitivity.export=Export database factors
+isisfish.input.menu.server=Server
+isisfish.input.newRegion=New region
+isisfish.input.selectRegion=Select region
+isisfish.input.sensitivity.export.cancel=Factor export canceled
+isisfish.input.sensitivity.export.complete=Factor export complete
+isisfish.input.sensitivity.export.running=Exporting factors...
+isisfish.input.sensitivity.export.title=Export factors
+isisfish.input.title=Fishery input
+isisfish.input.tree.cells=Cells
+isisfish.input.tree.gears=Gears
+isisfish.input.tree.metiers=Metiers
+isisfish.input.tree.populations=Populations
+isisfish.input.tree.ports=Ports
+isisfish.input.tree.setofvessels=Set of vessels
+isisfish.input.tree.species=Species
+isisfish.input.tree.strategies=Strategies
+isisfish.input.tree.triptypes=Trip types
+isisfish.input.tree.vesseltypes=Vessel types
+isisfish.input.tree.zones=Zones
+isisfish.launch.anonymous=read only
+isisfish.launch.email=email
+isisfish.launch.firstname=firstname
+isisfish.launch.init.done=init done in %1$s.
+isisfish.launch.lasstname=lasstname
+isisfish.launch.server.authenticationMethod=server access
+isisfish.launch.server.login=server login
+isisfish.launch.server.ssh.confirm.passphrase=confirm passphrase
+isisfish.launch.server.ssh.key.change=Change your ssh key
+isisfish.launch.server.ssh.key.generate=Generate ssh key
+isisfish.launch.server.ssh.no.passphrase=no passphrase
+isisfish.launch.server.ssh.passphrase=passphrase
+isisfish.launch.server.ssh.privateKeyFile=private ssh key
+isisfish.launch.server.ssh.publicKeyFile=public ssh key
+isisfish.launch.ssh=read-write (ssh)
+isisfish.launch.stop=Stopping simulation...
+isisfish.launching=after init done in %1$s.
+isisfish.log.addAppender=add appender [%1$s]
+isisfish.log.body=Message to add
+isisfish.log.closeAppender=closing appender %1$s for category %2$s
+isisfish.log.mail.failed=Can't send report by mail. Is your mail server up ? (I'm trying to contact the < %1$s > smtp server)
+isisfish.log.mail.send=A report has been sent to %1$s
+isisfish.log.mail.send.title=Send simulation %1$s by email
+isisfish.log.mailTo=Destination adress
+isisfish.log.removeAppender=remove appender [%1$s]
+isisfish.log.restoreLogLevel=swap back level for logger %1$s from level %2$s to level %3$s
+isisfish.log.sendAll=Send the complete simulation archive
+isisfish.log.sendMail=Send by email
+isisfish.log.simulation.name=IsisFish simulation %1$s
+isisfish.log.swapLogLevel=swap level for logger %1$s from level %2$s to level%3$s
+isisfish.log.tooltip.body=The message will be join to email
+isisfish.log.tooltip.mailTo=Enter destination adress
+isisfish.log.tooltip.sendAll=Send the complete simulation archive, or just the log file
+isisfish.log.tooltip.sendMail=Click here to send the email with files
+isisfish.message.add.objets.simulation=Add new objets simulation
+isisfish.message.backup.database.finished=backup database finished
+isisfish.message.backup.database.progress=backup database in progress
+isisfish.message.cancel.finished=Cancel finished
+isisfish.message.check.finished=Check finished
+isisfish.message.check.inprogress=Checking in process...
+isisfish.message.checking.cell=
+isisfish.message.choose.archive=choose archive file or directory
+isisfish.message.commit.cancelled=commit cancelled
+isisfish.message.commit.finished=commit finished
+isisfish.message.commit.region.canceled=Commit region canceled
+isisfish.message.commiting.region=Commiting region %1$s ...
+isisfish.message.compilation.time=Compilation time %1$ss
+isisfish.message.confirm.delete.object=Do you really want delete object %1$s
+isisfish.message.confirm.remove.region=Do you really want to remove the region %1$s ?
+isisfish.message.confirm.remove.script=Do you want to remove script '%1$s' ?
+isisfish.message.copy.finished=Copy finished
+isisfish.message.copy.region=Copy region
+isisfish.message.creating.region=Creating region %1$s
+isisfish.message.creation.finished=Creation finished
+isisfish.message.delete.canceled=delete canceled
+isisfish.message.delete.entities=Delete entities
+isisfish.message.delete.entity=Delete entity
+isisfish.message.delete.finished=delete finished
+isisfish.message.delete.object=To delete object %1$s, all next object will be deleted\n\n
+isisfish.message.directory.not.exists=
+isisfish.message.evaluation.finished=evaluation finished
+isisfish.message.export.done=export done
+isisfish.message.export.zip=Export to zip file %1$s
+isisfish.message.file.already.exists=File %s already exists, do you want overwrite it ?
+isisfish.message.file.overwrite=File exists, do you want overwrite it ?
+isisfish.message.import=Import %1$s
+isisfish.message.import.equation.convert=Manual equation convertion
+isisfish.message.import.finished=Import finished
+isisfish.message.import.region.name=Enter name for imported region
+isisfish.message.import.region.xml=XMLed Region
+isisfish.message.import.region.zipped=Zipped Region
+isisfish.message.import.scripts.file=Import scripts from a zipped archive
+isisfish.message.import.scripts.file.cancelled=Import scripts cancelled
+isisfish.message.import.scripts.file.done=Scripts imported
+isisfish.message.import.scripts.zipped=Zipped script (*.zip)
+isisfish.message.import.xml.v2.file=Import xml v2 file
+isisfish.message.import.zip=Import zip file
+isisfish.message.launchui.notlaunch=User interface not started
+isisfish.message.load.finished=Load finished
+isisfish.message.load.map=Try to load map file\: %1$s
+isisfish.message.loading.old.simulation=Loading old simulation...
+isisfish.message.loading.region=Loading region...
+isisfish.message.name.imported.region=Enter name for imported region
+isisfish.message.new.filename=Enter the name of the new file. (use only chars and _ and start with uppercase)
+isisfish.message.new.formule.category=Select the equation model's category
+isisfish.message.new.formule.title=New equation model
+isisfish.message.new.region.name=Enter new region name
+isisfish.message.old.simulation.loaded=Old simulation loaded
+isisfish.message.page.modified=This page has been modified, do you want to save it ?
+isisfish.message.presimulation.script.execution=Presimulation Script execution
+isisfish.message.recruitment.number.month=Input the number of month of recruitment
+isisfish.message.region.commited=Region commited
+isisfish.message.region.loaded=Region loaded
+isisfish.message.region.remove.canceled=Region remove canceled
+isisfish.message.region.removed=Region removed
+isisfish.message.remove.canceled=Remove canceled
+isisfish.message.remove.finished=Remove finished
+isisfish.message.removing.region=Removing region %1$s ...
+isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
+isisfish.message.save.finished=Save finished
+isisfish.message.saveModel.dialog=Input equation model name
+isisfish.message.saveModel.finished=Save model finished
+isisfish.message.script.commit=Enter commit message for modification on %s
+isisfish.message.setting.cache.aspects=Setting Cache aspects
+isisfish.message.setting.trace.aspects=Setting Trace aspects
+isisfish.message.simulation.ended=Simulation ended
+isisfish.message.simulation.execution=Simulation execution
+isisfish.message.simulation.prepare=Preparing simulation
+isisfish.message.tray.disabled=SystemTray disabled
+isisfish.metier.comments=Comments
+isisfish.metier.name=Name
+isisfish.metier.rangeValues=Range of values
+isisfish.metier.title=Metier
+isisfish.metierMonitor.metiers=Metiers
+isisfish.metierMonitor.strategies=Strategies
+isisfish.metierSeasonInfo.toString=%1$s season %2$s-%3$s
+isisfish.metierSeasonInfoSpecies.mainSpecies=Main species for the metier
+isisfish.metierSeasonInfoSpecies.selectSeason=Select a season
+isisfish.metierSeasonInfoSpecies.selectSpecies=Select a species
+isisfish.metierSeasonInfoSpecies.species=Species
+isisfish.metierSeasonInfoSpecies.targetFactor=Target factor
+isisfish.metierSeasonInfoSpecies.title=Catchable species
+isisfish.metierSeasonInfoZone.comments=Comments
+isisfish.metierSeasonInfoZone.season=Season
+isisfish.metierSeasonInfoZone.selectSeason=Select a season
+isisfish.metierSeasonInfoZone.title=Seasons / Zones
+isisfish.misc.databasemigration.question=La base de donn\u00E9e est en version \: %s.\n\nUne migration en version %s est n\u00E9c\u00E9ssaire.\nVoulez vous migrer la base de donn\u00E9es ?
+isisfish.misc.databasemigration.title=Database migration
+isisfish.misc.nuitonmigration=IsisFish has detected some code based on CodeLutin libraries in following user scripts.\nDo you want to migrate those script on new nuiton libraries ?
+isisfish.monitor.title=Application Monitor
+isisfish.month.april=april
+isisfish.month.august=august
+isisfish.month.december=december
+isisfish.month.february=february
+isisfish.month.january=january
+isisfish.month.july=july
+isisfish.month.june=june
+isisfish.month.march=march
+isisfish.month.may=may
+isisfish.month.november=november
+isisfish.month.october=october
+isisfish.month.september=september
+isisfish.params.changeLogLev=Change from level '%1$s' to level '%2$s'
+isisfish.params.clearFilter=Clear filter
+isisfish.params.description=Description
+isisfish.params.filter=Filter
+isisfish.params.loadOldSimulation=Load old simulation
+isisfish.params.nopopulation=No selected population
+isisfish.params.numberYear=Number of year
+isisfish.params.populationEffectives=%s's effectives
+isisfish.params.rules=Rules
+isisfish.params.rules.availables=Available rules
+isisfish.params.rules.selected=Selected rules
+isisfish.params.sensitivityName=Sensitivity name
+isisfish.params.simulationLauncher=Simulation launcher
+isisfish.params.simulationName=Simulation name
+isisfish.params.stategiesAndPopulations=Stategies and populations
+isisfish.params.title=Parameters
+isisfish.params.toString.fishery=P\u00EAcherie\: %1$s\n\n
+isisfish.params.toString.lib.logger.level=Level of libraries' logger \: %1$s
+isisfish.params.toString.number.years=Number of years\: %1$s\n\n
+isisfish.params.toString.plan=Plan\: %1$s
+isisfish.params.toString.plan.number=Analyse plan sequence number\: %1$s\n\n
+isisfish.params.toString.populations=Populations \:
+isisfish.params.toString.rule=Rule\: %1$s
+isisfish.params.toString.script.logger.level=Level of scripts' logger \: %1$s
+isisfish.params.toString.script.presimulation=Script de presimulation
+isisfish.params.toString.simul.logger.level=Level of simulator's logger \: %1$s
+isisfish.params.toString.simulation.done=Simulation done with \: %1$s
+isisfish.params.toString.strategies=Strat\u00E9gies \:
+isisfish.params.useAnalysePlan=Use simulation plan
+isisfish.params.usePreSimulationScript=Use pre simulation script
+isisfish.population.capturability=Capturability
+isisfish.population.comments=Comments
+isisfish.population.group=Group
+isisfish.population.groups=Groups
+isisfish.population.mappingZoneReproZoneRecru=MappingZoneReproZoneRecru
+isisfish.population.matrixAbundance=Abundance matrix
+isisfish.population.matrixAbundance1D=matrixAbundance1D
+isisfish.population.recruitment=Recruitment
+isisfish.population.reproduction=Reproduction
+isisfish.population.season=Season
+isisfish.population.zones=Zones
+isisfish.populationBasics.confirmCreateGroups=Warning, running groups creation wizard will delete all existing groups and objects which depend on it.\nDo you want to re-create groups ?
+isisfish.populationBasics.geographicID=Geographic identifier
+isisfish.populationBasics.growth=Growth
+isisfish.populationBasics.growthReverse=Reverse growth
+isisfish.populationBasics.maturityGroup=Maturity group
+isisfish.populationBasics.name=Name
+isisfish.populationBasics.numberGroup=Number of group
+isisfish.populationBasics.plusGroup=Plus group
+isisfish.populationBasics.recreateClasses=Recreate classes
+isisfish.populationBasics.title=Population input
+isisfish.populationCapturability.comments=Comments
+isisfish.populationCapturability.selectCoefficient=Select a coefficient per season and per class
+isisfish.populationCapturability.title=Capturability input
+isisfish.populationEquation.meanWeight=Mean weight
+isisfish.populationEquation.naturalDeathRate=Natural death rate
+isisfish.populationEquation.price=Price
+isisfish.populationEquation.title=Equations input
+isisfish.populationGroup.age=Age
+isisfish.populationGroup.comments=Comments
+isisfish.populationGroup.length=Length
+isisfish.populationGroup.maximumLength=Maximum length
+isisfish.populationGroup.meanWeigth=Mean Weigth
+isisfish.populationGroup.minimumLength=Minimum length
+isisfish.populationGroup.naturalDeathRate=Natural death rate
+isisfish.populationGroup.price=Price
+isisfish.populationGroup.reproductionRate=Reproduction rate
+isisfish.populationGroup.title=Population group input
+isisfish.populationGroup.toString=%1$s Group %2$s
+isisfish.populationMigration.comments=Comments
+isisfish.populationMigration.selectSeason=Select a season
+isisfish.populationMigration.title=Migration
+isisfish.populationMigration.useEquation=Use equation
+isisfish.populationMigrationEmigration.coefficient=Coefficient
+isisfish.populationMigrationEmigration.departureZone=Departure Zone
+isisfish.populationMigrationEmigration.title=Population emigration
+isisfish.populationMigrationImmigration.arrivalZone=Arrival Zone
+isisfish.populationMigrationImmigration.coefficient=Coefficient
+isisfish.populationMigrationImmigration.title=Population immigration
+isisfish.populationMigrationMigration.arrivalZone=Arrival zone
+isisfish.populationMigrationMigration.coefficient=Coefficient
+isisfish.populationMigrationMigration.departureZone=Departure zone
+isisfish.populationMigrationMigration.title=Population migration
+isisfish.populationRecruitment.comments=Comments
+isisfish.populationRecruitment.monthgapgetweenreprorecruitment=Month gap between repro and recruitment
+isisfish.populationRecruitment.recruitmentDistribution=Recruitment distribution
+isisfish.populationRecruitment.reproductionEquation=Reproduction equation
+isisfish.populationRecruitment.title=Recruitment input
+isisfish.populationSeasonInfo.arrival=Arrival
+isisfish.populationSeasonInfo.departure=Departure
+isisfish.populationSeasonInfo.distributionSpawing=Distribution of spawing
+isisfish.populationSeasonInfo.emigration=Emigration
+isisfish.populationSeasonInfo.group=Group
+isisfish.populationSeasonInfo.immigration=Immigration
+isisfish.populationSeasonInfo.migration=Migration
+isisfish.populationSeasonInfo.months=Months
+isisfish.populationSeasonInfo.toString=%1$s season %2$s-%3$s
+isisfish.populationSeasons.Reproduction=Reproduction
+isisfish.populationSeasons.changeGroup=Change of group
+isisfish.populationSeasons.comments=Comments
+isisfish.populationSeasons.computeCoefficient=Calculate coefficient
+isisfish.populationSeasons.distributionSpawning=Distribution of spawning
+isisfish.populationSeasons.noSpacialized=Not spacialized
+isisfish.populationSeasons.selectSeason=Select a season
+isisfish.populationSeasons.showSpacialized=Show the spacialized
+isisfish.populationSeasons.spacialized=Spacialized
+isisfish.populationSeasons.spacialized.visualisation=Spacialized
+isisfish.populationSeasons.title=Saisons
+isisfish.populationZones.betweenSpawningRecruitmentAreas=Match between spawning and recruitment areas
+isisfish.populationZones.selectPopulationAreas=Select the population areas
+isisfish.populationZones.selectRecruitmentAreas=Select the recruitment areas
+isisfish.populationZones.selectSpawningAreas=Select the spawning areas
+isisfish.populationZones.title=Zones
+isisfish.port.cell=Port cell
+isisfish.port.comments=Comments
+isisfish.port.name=Name
+isisfish.preScript.backParameter=Back to parameter tab
+isisfish.preScript.title=Pre simulation script
+isisfish.queue.clearDone=Clear done jobs
+isisfish.queue.id=Id
+isisfish.queue.launcher=Simulation launcher
+isisfish.queue.masterplan=Master plan
+isisfish.queue.notstarted=Not started
+isisfish.queue.plan=Plan
+isisfish.queue.progression=Progress
+isisfish.queue.restartSimulation=Restart
+isisfish.queue.showLog=Show simulation log
+isisfish.queue.simulationLaunch=Simulation queue launch
+isisfish.queue.status=Status
+isisfish.queue.stopSimulation=Stop simulation
+isisfish.queue.title=Queue
+isisfish.result.abundance=Abondance
+isisfish.result.add=Add a result
+isisfish.result.begin.simulation=Simulation start \:
+isisfish.result.capture=Capture
+isisfish.result.capture.metier=Capture by metier
+isisfish.result.choose.simulation=Choose a Simulation
+isisfish.result.datas=Datas
+isisfish.result.dimension=Dimension
+isisfish.result.end.simulation=Simuation end \:
+isisfish.result.export=Export
+isisfish.result.export.file=Export text file
+isisfish.result.file=File
+isisfish.result.graph=Graph
+isisfish.result.map=Map
+isisfish.result.new.window=Open a new window
+isisfish.result.quit=Quitter
+isisfish.result.reject.metier=Rejet par metier
+isisfish.result.remove.simulation=Remove simulation
+isisfish.result.show.simulation.log=Show logs
+isisfish.result.statusBar=\
+isisfish.result.stress.metier=Effort par metier
+isisfish.result.summary=Summary
+isisfish.result.title=Results
+isisfish.result.unload.metier=Debarquement par metier
+isisfish.resultChoice.save=Results to save
+isisfish.resultChoice.saved=Results saved
+isisfish.resultChoice.title=Result choice
+isisfish.script.check=Check
+isisfish.script.check.tooltip=Check syntax of the current script
+isisfish.script.commit=Commit
+isisfish.script.commit.tooltip=Commit script to SVN server
+isisfish.script.compilation.failed=%s
+isisfish.script.compilation.ok=Compilation complete.\n---------------------\n\n%s
+isisfish.script.compilingfile=Compiling %s...
+isisfish.script.copy=Copy
+isisfish.script.copy.tooltip=Copy current selection (Ctrl-c)
+isisfish.script.cut=Cut
+isisfish.script.cut.tooltip=Cut current selection (Ctrl-x)
+isisfish.script.evaluate=Evaluate
+isisfish.script.evaluate.tooltip=Try to eval current script (must be have main() method)
+isisfish.script.export=Export
+isisfish.script.export.checkAll=(Un)Check all scripts
+isisfish.script.export.chooseDir=...
+isisfish.script.export.tooltip=Export selected script(s) to zip archive
+isisfish.script.export.tooltip.checkAll=(Un)Check all scripts to export
+isisfish.script.export.tooltip.chooseDir=Choose directory to export script to
+isisfish.script.import=Import scripts from archive
+isisfish.script.import.cancel=Cancel
+isisfish.script.import.checkAll=(Un)Check all script to import
+isisfish.script.import.import=Import
+isisfish.script.import.labelAdd=Following files will be added. Confirm adding.
+isisfish.script.import.labelOverwrite=Following files already exists. Confirm overridding.
+isisfish.script.import.tooltip.checkAll=(Un)Check all scripts
+isisfish.script.javadoc.ok=Javadoc generated-----------------\n\n%s
+isisfish.script.menu.checkAllSyntax=Check all scripts
+isisfish.script.menu.checkSyntax=Check syntax
+isisfish.script.menu.code=Code
+isisfish.script.menu.commit=Commit script to server
+isisfish.script.menu.copy=Copy
+isisfish.script.menu.cut=Cut
+isisfish.script.menu.deleteLocaly=Delete localy
+isisfish.script.menu.deleteLocalyServer=Delete localy and on server
+isisfish.script.menu.diff=Display diff with server version
+isisfish.script.menu.edit=Edit
+isisfish.script.menu.evaluate=Evaluate
+isisfish.script.menu.file=File
+isisfish.script.menu.javadocgenerate=Generate script javadoc
+isisfish.script.menu.javadocgenerated=Javadoc generated in %s
+isisfish.script.menu.javadocgenerating=Generating javadoc in %s...
+isisfish.script.menu.javadocshow=Show script javadoc
+isisfish.script.menu.new=New
+isisfish.script.menu.paste=Paste
+isisfish.script.menu.save=Save
+isisfish.script.menu.txtExport=Export
+isisfish.script.menu.txtImport=Import
+isisfish.script.menu.txtNewAnalysePlan=New analyse plan
+isisfish.script.menu.txtNewEquationModel=New equation model
+isisfish.script.menu.txtNewExport=New export
+isisfish.script.menu.txtNewRule=New rule
+isisfish.script.menu.txtNewScript=New script
+isisfish.script.menu.txtNewSensitivity=New sensitivity calculator
+isisfish.script.menu.txtNewSensitivityExport=New sensitivity export
+isisfish.script.menu.txtNewSimulator=New simulator
+isisfish.script.menu.txtVCS=Server
+isisfish.script.menu.update=Update from server
+isisfish.script.new=New
+isisfish.script.new.tooltip=Create new script
+isisfish.script.paste=Paste
+isisfish.script.paste.tooltip=Paste current selection (Ctrl-v)
+isisfish.script.save=Save
+isisfish.script.save.tooltip=Save script
+isisfish.script.title=Script Editor
+isisfish.season.toString=season %1$s-%2$s
+isisfish.selectivity.equation=Equation
+isisfish.selectivity.selectPopulation=Select a population
+isisfish.selectivity.title=Selectivity
+isisfish.sens.backParameter=Back to parameter tab
+isisfish.sens.title=Simulation plan
+isisfish.sensitivity.coefficient=Coefficient (in %)
+isisfish.sensitivity.comment=Comment
+isisfish.sensitivity.continue=Continuous factor
+isisfish.sensitivity.discret=Discret factor
+isisfish.sensitivity.displaysecondpass=Display results
+isisfish.sensitivity.equation.variable.action=Action
+isisfish.sensitivity.equation.variable.coefficient=Coef. (in %)
+isisfish.sensitivity.equation.variable.name=Name
+isisfish.sensitivity.equation.variable.operator=Operator
+isisfish.sensitivity.equation.variable.value=Value
+isisfish.sensitivity.export=Export
+isisfish.sensitivity.factor=Factor
+isisfish.sensitivity.factors=Factors
+isisfish.sensitivity.firstValue=First value
+isisfish.sensitivity.increment=Cardinality
+isisfish.sensitivity.lastValue=Last value
+isisfish.sensitivity.methodfactornotsupported=The selected sensitivity method handles factors cardinalities
+isisfish.sensitivity.name=Factor name
+isisfish.sensitivity.operator=Operator
+isisfish.sensitivity.secondpass=Analyze results
+isisfish.sensitivity.secondpass.title=Analyze results
+isisfish.sensitivity.select=Method
+isisfish.sensitivity.selectDiscretNumber=Number of factors
+isisfish.sensitivity.title=Sensitivity analysis
+isisfish.sensitivity.validDiscretNumber=Ok
+isisfish.sensitivity.value=Value
+isisfish.sensitivityChooser.title=Sensitivity method
+isisfish.server.ssh.generateKey.title=Generate Ssh key
+isisfish.setOfVessels.comments=Comments
+isisfish.setOfVessels.fixedCosts=Fixed costs
+isisfish.setOfVessels.name=Name
+isisfish.setOfVessels.numberOfVessels=Number of vessels
+isisfish.setOfVessels.technicalEfficiency=Technical efficiency
+isisfish.setOfVessels.title=Caracteristics
+isisfish.setOfVessels.vesselType=Vessel type
+isisfish.simpleResult.more.information=Click a cell for more information...
+isisfish.simulation.log.console.title=Log console for simulation '%1$s'
+isisfish.simulation.log.showConsole=Display log console for simulation %1$s
+isisfish.simulation.menu.import=Restore simulation parameters
+isisfish.simulation.menu.save=Save simulation parameters
+isisfish.simulation.menu.simulation=Simulation
+isisfish.simulation.name=Simulation name
+isisfish.simulation.remote.message.connection=Connecting to Caparmor
+isisfish.simulation.remote.message.deletingfiles=Deleting simulation files
+isisfish.simulation.remote.message.downloadresults=Downloading results
+isisfish.simulation.remote.message.upload=Uploading simulation
+isisfish.simulation.remote.message.waitingstart=Waiting for simulation start
+isisfish.simulation.restarting=Restarting...
+isisfish.simulation.title=Simulation launcher
+isisfish.simulator.launcher.inprocess=in current process
+isisfish.simulator.launcher.remote=on Caparmor server
+isisfish.simulator.launcher.subprocess=in subprocess
+isisfish.simulator.simulaction.badid=Can't start simulation, bad id\: %s
+isisfish.simulator.ssh.configuration.connecting=Connection...
+isisfish.simulator.ssh.configuration.connectingpk=Connection with public key...
+isisfish.simulator.ssh.configuration.connection=Connection information
+isisfish.simulator.ssh.configuration.connectionerror=Can't connect
+isisfish.simulator.ssh.configuration.connectionok=Connection successfull
+isisfish.simulator.ssh.configuration.environment=Caparmor configuration
+isisfish.simulator.ssh.configuration.freespace=Used space disk \:
+isisfish.simulator.ssh.configuration.freespace.confirmdelete=Warning, deleting folder '%s' is irreversible.\nDo you confirm the deletion of contents ?
+isisfish.simulator.ssh.configuration.freespace.label=Size of %s \: %s
+isisfish.simulator.ssh.configuration.invalidpassphrase=Invalid passphrase
+isisfish.simulator.ssh.configuration.keygenerate=Generate
+isisfish.simulator.ssh.configuration.status=Status
+isisfish.simulator.ssh.configuration.test=Test configuration
+isisfish.simulator.ssh.configuration.title=Caparmor launcher configuration
+isisfish.simulator.subprocess.readoutput.error=
+isisfish.species.age=Age
+isisfish.species.cee=CEE
+isisfish.species.comments=Comments
+isisfish.species.length=Length
+isisfish.species.name=Species name
+isisfish.species.rubbinCode=Rubbin code
+isisfish.species.scientificName=Scientific name
+isisfish.species.structured=Structured
+isisfish.ssh.askpassphrase.message=Enter passphrase for key '%s' \:
+isisfish.ssh.askpassphrase.title=SSH key unlocking
+isisfish.ssh.askpassphrase.wrongpassphrase=Wrong passphrase, enter a new one for key '%s' \:
+isisfish.strategy.comments=Comments
+isisfish.strategy.inactivity=Inactivity equation
+isisfish.strategy.inactivityEquationUsed=Use inactivity equation
+isisfish.strategy.name=Name
+isisfish.strategy.proportionSetOfVessels=Set of vessels proportion
+isisfish.strategy.title=Caracteristics
+isisfish.strategyMonthInfo.metier=Metier
+isisfish.strategyMonthInfo.minInactivityDays=Min inactivity days
+isisfish.strategyMonthInfo.numberOfTrips=Number of trips
+isisfish.strategyMonthInfo.proportion=Proportion
+isisfish.strategyMonthInfo.title=StrategyMonthInfo
+isisfish.strategyMonthInfo.toString=%1$s %2$s
+isisfish.timeUnit.day=Day
+isisfish.timeUnit.hours=Hours
+isisfish.tray.simulation=Isis-fish - %1$s \: %2$s/%3$s
+isisfish.tray.simulation.multi=Isis-fish - %s / %s
+isisfish.tray.simulation.no=Isis-fish - No simulation
+isisfish.tripType.comments=Comments
+isisfish.tripType.duration=Duration
+isisfish.tripType.minTime=Minimum time between trips
+isisfish.tripType.name=Name
+isisfish.vcs.ask.passphrase=Enter your pass phrase (if your private key have one).
+isisfish.vcs.ask.passphrase.title=Ask your pass phrase
+isisfish.vcs.commit=vcs.commit
+isisfish.vcs.commit.cancel=vcs.commit.cancel
+isisfish.vcs.commit.label=vcs.commit.label
+isisfish.vcs.commit.ok=vcs.commit.ok
+isisfish.vcs.factory.cantinstanciate=Can't instanciate wanted VCS (%s), use default
+isisfish.vcs.howto.save.key=How to register my public key on labs forge
+isisfish.vcs.init.notfoundcantdownload=No database version %s found and can't get it.\nYou must go to ISIS-Fish web site and download database manually.
+isisfish.vcs.init.wrongprotocol=Your database repository\: %s\n don't use correct protocol.\nDo you want to make backup of your database and take the correct one ?
+isisfish.vcs.save.key=Go to labs forge to register my public key
+isisfish.vcs.switchprotocol.confirm=Protocol to access repository script has changed.\nDo you want to switch your repository ?
+isisfish.vcs.switchtag.warningconflict=Your repository is now up-to-date, but following files are conflicted, you may check them \:
+isisfish.vcs.switchversion.confirm=You don't use correct repository script for your application version %s.\nDo you want to switch your repository ?
+isisfish.vcs.update=vcs.update
+isisfish.vcs.update.cancel=cancel
+isisfish.vcs.update.checkAll=checkAll
+isisfish.vcs.update.local=local
+isisfish.vcs.update.local.modified=modified
+isisfish.vcs.update.local.outofdateAndModified=outofdateAndModified
+isisfish.vcs.update.local.tooltip.modified=
+isisfish.vcs.update.local.tooltip.outofdateAndModified=
+isisfish.vcs.update.local.tooltip.unversionned=
+isisfish.vcs.update.local.unversionned=unversionned
+isisfish.vcs.update.ok=ok
+isisfish.vcs.update.remote=remote
+isisfish.vcs.update.remote.missing=missing
+isisfish.vcs.update.remote.outofdate=outofdate
+isisfish.vcs.update.remote.tooltip.missing=
+isisfish.vcs.update.remote.tooltip.outofdate=
+isisfish.vcs.update.tooltip.checkAll=checkAll
+isisfish.vcs.update.tooltip.local=
+isisfish.vcs.update.tooltip.remote=
+isisfish.vcs.update.warningconflict=Your repository is now up-to-date, but following files are conflicted, you may check them \:\n
+isisfish.vcs.updateconfirm=updateconfirm
+isisfish.vcs.updateconfirm.cancel=cancel
+isisfish.vcs.updateconfirm.checkAll=checkAll
+isisfish.vcs.updateconfirm.label=
+isisfish.vcs.updateconfirm.label2=
+isisfish.vcs.updateconfirm.ok=ok
+isisfish.vcs.updateconfirm.tooltip.checkAll=
+isisfish.vcs.updaterepository.confirm=Your repository is not up to date.\nDo you want to update following files ?
+isisfish.vcs.vcssvn.add.error=Can't add file
+isisfish.vcs.vcssvn.add.errorreadonly=You can't add file, this repository is readonly
+isisfish.vcs.vcssvn.checkProtocol.error=Can't get address on serveur of local repository
+isisfish.vcs.vcssvn.checkProtocol.relocate=Relocate repository %s from %s to %s
+isisfish.vcs.vcssvn.checkout.error=Can't checkout
+isisfish.vcs.vcssvn.cleanup.error=Can't cleanup working copy
+isisfish.vcs.vcssvn.commit.error=Can't commit files
+isisfish.vcs.vcssvn.commit.errorreadonly=You can't commit file, this repository is readonly
+isisfish.vcs.vcssvn.delete.error=Can't delete file
+isisfish.vcs.vcssvn.delete.errorreadonly=You can't delete file, this repository is readonly
+isisfish.vcs.vcssvn.diff.error=Can't get diff
+isisfish.vcs.vcssvn.gettag.error=Can't get address on serveur of local repository
+isisfish.vcs.vcssvn.getupdate.error=Can't status file
+isisfish.vcs.vcssvn.global.filelocalandremotestatus=file %s status is (l\:%s/r\:%s)
+isisfish.vcs.vcssvn.global.filestatus=status for %s is %s
+isisfish.vcs.vcssvn.global.foundUpdatedFile=add %s as updated file
+isisfish.vcs.vcssvn.global.torevision=At revision \: %d
+isisfish.vcs.vcssvn.isconnected.switchoff=Can't connect to serveur, switch to off line\: %s
+isisfish.vcs.vcssvn.isconnected.switchto=Connection to serveur available, switch on line\: %s
+isisfish.vcs.vcssvn.isonremote.error=file %s is not on server
+isisfish.vcs.vcssvn.istag.notexist=Tag %s don't exist
+isisfish.vcs.vcssvn.isuptodate.error=Can't get file status
+isisfish.vcs.vcssvn.list.error=Can't list files
+isisfish.vcs.vcssvn.localstatus.error=Can't status file
+isisfish.vcs.vcssvn.remotestatus.error=Can't status file
+isisfish.vcs.vcssvn.setTag.error=Can't get address on server of local repository
+isisfish.vcs.vcssvn.settag.switchfromto=Switch repository tag from %s to %s
+isisfish.vcs.vcssvn.update.error=Can't update files
+isisfish.vcs.vcssvn.update.notinlocal=Can't update file that not in local repository
+isisfish.versionStorage.removed=Removed
+isisfish.vesselType.activityRange=Activity range
+isisfish.vesselType.comments=Comments
+isisfish.vesselType.fuelCost=Fuel cost of travel
+isisfish.vesselType.length=Length
+isisfish.vesselType.maxDuration=Maximum trip duration
+isisfish.vesselType.miniCrew=Minimum crew size
+isisfish.vesselType.name=Name
+isisfish.vesselType.speed=Speed
+isisfish.welcome.menu.about=About
+isisfish.welcome.menu.api=API
+isisfish.welcome.menu.close=Close
+isisfish.welcome.menu.configuration=Configuration
+isisfish.welcome.menu.configuration.sshlauncher=Caparmor configuration
+isisfish.welcome.menu.configuration.vcs=VCS Configuration
+isisfish.welcome.menu.file=File
+isisfish.welcome.menu.frame=Window
+isisfish.welcome.menu.help=Help
+isisfish.welcome.menu.help.isisfish=Isis-Fish Website
+isisfish.welcome.menu.help.isisfishapi=Isis-Fish API
+isisfish.welcome.menu.help.javaapi=Java API
+isisfish.welcome.menu.help.matrixapi=NuitonMatrix API
+isisfish.welcome.menu.help.topiaapi=ToPIA API
+isisfish.welcome.menu.input=Input
+isisfish.welcome.menu.monitor=Logs frame
+isisfish.welcome.menu.queue=Simulation queue
+isisfish.welcome.menu.result=Result
+isisfish.welcome.menu.script=Script
+isisfish.welcome.menu.simulation=Simulation launcher
+isisfish.welcome.menu.synchro=Server synchronization
+isisfish.welcome.title=Ifremer Simulation
+isisfish.wizardGroupCreation.allGroupsSameSize=All groups have the same size
+isisfish.wizardGroupCreation.allValues=Input all the values
+isisfish.wizardGroupCreation.computedGrowthCurve=Computed by a growth curve
+isisfish.wizardGroupCreation.firstAge=First age
+isisfish.wizardGroupCreation.firstAgeHelp=First age \= minimal age
+isisfish.wizardGroupCreation.firstGroup=First group
+isisfish.wizardGroupCreation.firstLength=First min length
+isisfish.wizardGroupCreation.firstLengthHelp=First min length \= minimal length of first group
+isisfish.wizardGroupCreation.gapBetweenGroupsHelp=gap between to group is 1 year.
+isisfish.wizardGroupCreation.groupWidth=Group width
+isisfish.wizardGroupCreation.groupWidthHelp=Group width \= width of group
+isisfish.wizardGroupCreation.lastAge=Last age
+isisfish.wizardGroupCreation.lastAgeHelp=Last age \= maximal age
+isisfish.wizardGroupCreation.maxGroupsLength=Maximal groups length
+isisfish.wizardGroupCreation.maxGroupsLengthHelp=A semicolon ';' must separe maximal length of each group
+isisfish.wizardGroupCreation.numberGroup=Number of group
+isisfish.wizardGroupCreation.numberGroupHelp=number of Group \= number of group wanted
+isisfish.wizardGroupCreation.numberGroups=Number of groups
+isisfish.wizardGroupCreation.populationCharacteristics=Input the population characteristics
+isisfish.wizardGroupCreation.selectGroupLengthType=Select group length type
+isisfish.wizardGroupCreation.timeStep=Time step (in month)
+isisfish.wizardGroupCreation.title=Group creation
+isisfish.wizardGroupCreation.undefinedGrowthEquation=The equation used is the population's growth curve, it needs to be defined first.
+isisfish.zone.cells=Zone cells
+isisfish.zone.comments=Comments
+isisfish.zone.name=Name
+region\ already\ exists\ %s\ use\ 'force'\ argument\ to\ force\ overwrite=
+simulate\ %s\ with\ file\ %s=
Copied: isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish_fr_FR.properties (from rev 3148, isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish-fr_FR.properties)
===================================================================
--- isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish_fr_FR.properties (rev 0)
+++ isis-fish/branches/3.3.1/src/main/resources/i18n/isis-fish_fr_FR.properties 2011-03-11 17:33:15 UTC (rev 3156)
@@ -0,0 +1,1128 @@
+=
+Add\ to\ default\ queue=
+Analyse\ plan\ error,\ too\ many\ simulation\ for\ %s\ \:\ %s=
+Can't\ add\ result\ '%1$s'\ at\ date\ %2$s=Can't add result '%1$s' at date %2$s
+Can't\ add\ simulation\:\ %s=
+Can't\ create\ simulation\ logger=Can't create simulation logger
+Can't\ delete\ simulation=
+Can't\ delete\ simulation\ %s\ =
+Can't\ display\ simulation\ log=
+Can't\ do\ post\ action\ %s=
+Can't\ do\ simulation\ %s=
+Can't\ download\ archive\ \:\ %s=
+Can't\ download\ file=
+Can't\ evaluate\ simulation\ prescript=
+Can't\ export\ simulation\ %s=
+Can't\ get\ changlog=Impossible d'obtenir de changelog
+Can't\ get\ result\:\ %1$s=Can't get result\: %1$s
+Can't\ instanciate\ export\ %1$s=Can't instanciate export %1$s
+Can't\ instantiate\ %s=
+Can't\ open\ log\ for\ %s=
+Can't\ open\ simulation\ internal\ frame=
+Can't\ read\ ssh\ key\ \:\ %s=
+Can't\ simulate\ %s=
+Check\ state\ of\ local\ repository\:\ %s=
+Command\ '%s'\ fail\ to\ execute=
+Could\ not\ found\ formule\ type\ %s\ autorised\ type\ are\ %s=
+Error\ during\ vcs\ initialisation=
+Error\ while\ uploading\ public\ key\ to\ remote\ serveur\ authorized_keys=
+Generate\ next\ simulation=
+Import\ one\ java\ file\ script\ source=
+Import\ simulation\ file\ %s\ in\ directory\ %s\ and\ rename\ from\ %s\ to\ %s=
+Import\ zipped\ file\ containing\ all\ scripts\ directory\ structure=
+Info=Info
+Jobs\ submited\ is\ not\ ItemSimulation\ but\ was\ %s=
+Last\ entry\ was\ %s\ extract\ name\ %s=
+Launcher\ %s\ will\ be\ stopped\ because\ there\ are\ too\ many\ error\ (%s)=
+Local\ repository\ don't\ exist=
+Local\ repository\ exists\ but\ it's\ not\ valide\ for\ current\ vcs\:\ %s=
+Normal\ stop\ thread,\ this\ is\ not\ an\ error=
+Not\ start\ simulation\ %s\ because\ user\ ask\ stop=
+Process\ template\ error=
+Region\ %s\ allready\ exist\ in\ repository.\ Can't\ import=
+Region\ %s\ already\ inited=La r\u00E9gion %s a d\u00E9j\u00E0 \u00E9t\u00E9 initialis\u00E9e
+Remote\ control\ file\ doesn't\ exists\ %s=
+Remote\ information\ file\ doesn't\ exists\ %s=
+Rename\ data\ directory\ to\ %s=
+Show\ help=
+Show\ version=
+SimulationExecutor\ started\ with\ %s\ thread\ for\ %s=
+Skip\ data\ migration\ (disabled)=
+Ssh\ key\ found\ '%s'\ will\ be\ used\ to\ connect\ to=
+Stop\ simulation\ plan,\ because\ can't\ call\ afterSimulation\ correctly\ on\ plan\ %s=
+SubProcess\ start\:\ %s\ %s=
+Switch\ repository\ type\ to\ none=
+Try\ to\ log\ on\ %s@%s\:%d=
+Use\ branches,\ switch\ not\ needed=
+User\ restart\ simulation\ %s=
+User\ stop\ simulation\ %s=
+coser.config.category.path=
+coser.ui.config.title=
+could\ not\ close\ reader\ %1$s=could not close reader %1$s
+could\ not\ create\ simulation\ filter\ model\ for\ reason\ %1$s=could not create simulation filter model for reason %1$s
+could\ not\ filter\ on\ simulations=could not filter on simulations
+could\ not\ found\ %s=
+could\ not\ found\ log\ file\ %1$s=could not found log file %1$s
+could\ not\ found\ region\ %s=
+could\ not\ found\ simulation\ %s=
+could\ not\ read\ at\ offset\ %1$s\ for\ reason\ %2$s=could not read at offset %1$s for reason %2$s
+destination\ already\ exists\ %s\ use\ 'force'\ argument\ to\ force\ overwrite=
+destination\ already\ exists\ %s\ use\ \\'force\\'\ argument\ to\ force\ overwrite=
+directory\ %s\ must\ be\ a\ directory=
+filter\ loaded\ in\ %1$s\ ms\ \:\ found\ %2$s\ lines.=filter loaded in %1$s ms \: found %2$s lines.
+isisfish.about.abouthtmltext=<html><b>Isis-Fish (%s)</b><br /><br />Copyright IFREMER-MAERHA 2000-2011.<br /><br /><a href\="http\://isis-fish.labs.libre-entreprise.org">http\://isis-fish.labs.libre-entreprise.org</a><br /><br />Merci de rapporter les bugs.<html>
+isisfish.about.licensetext=Vous pouvez modifier et redistribuer ce programme sous les conditions \u00E9nonc\u00E9es par la licence GNU GPL (version 2 ou ult\u00E9rieure). Une copie de la licence GPL est dans le fichier \u00AB\u00A0LICENSE.txt\u00A0\u00BB fourni avec Isis-Fish. Tous droits r\u00E9serv\u00E9s. Aucune garantie n'est fournie pour l'utilisation de ce programme.
+isisfish.about.title=\u00C0 propos de Isis-Fish...
+isisfish.advancedParameters.title=Param\u00E8tres avanc\u00E9s
+isisfish.advancedParams.freeParameters=Param\u00E8tres libres
+isisfish.advancedParams.libLevelLogger=Niveau de tracage des librairies
+isisfish.advancedParams.scriptLevelLogger=Niveau de tracage des scripts
+isisfish.advancedParams.simulLevelLogger=Niveau de tracage du simulateur
+isisfish.advancedParams.simulationCache=Simulation cache
+isisfish.advancedParams.simulationStatistique=Simulation statistique
+isisfish.advancedParams.simulatorUse=Simulateur \u00E0 utiliser
+isisfish.cell.comments=Commentaires
+isisfish.cell.land=Terre
+isisfish.cell.latitude=Latitude
+isisfish.cell.longitude=Longitude
+isisfish.cell.name=Nom
+isisfish.change.equation=Ne peut pas changer l'\u00E9quation
+isisfish.commit.message=Entrer un message de commit
+isisfish.common.add=Ajouter
+isisfish.common.add.short=Aj.
+isisfish.common.alert=alerte
+isisfish.common.apply=Appliquer
+isisfish.common.blank=\
+isisfish.common.cancel=Annuler
+isisfish.common.check=V\u00E9rifier
+isisfish.common.clear=Effacer
+isisfish.common.confirm=Confirmation
+isisfish.common.date=Date
+isisfish.common.debug=Debug
+isisfish.common.delete=Supprimer
+isisfish.common.duration.inhours=En heures
+isisfish.common.ellipsis=...
+isisfish.common.emigration=\u00E9migration
+isisfish.common.equation=Equation
+isisfish.common.error=Erreur
+isisfish.common.file=Fichier
+isisfish.common.finish=Terminer
+isisfish.common.gear=Engin
+isisfish.common.immigration=immigration
+isisfish.common.info=Info
+isisfish.common.migration=migration
+isisfish.common.module=Module
+isisfish.common.month=mois %1$s
+isisfish.common.name=Nom
+isisfish.common.new=Nouveau
+isisfish.common.newMatrix=Nouvelle matrice
+isisfish.common.next=Suivant
+isisfish.common.ok=Ok
+isisfish.common.openEditor=Ouvrir l'\u00E9diteur
+isisfish.common.population=Population
+isisfish.common.populationGroup=Groupe de population
+isisfish.common.populations=Populations
+isisfish.common.port=Port
+isisfish.common.prev=Pr\u00E9c\u00E9dent
+isisfish.common.region=R\u00E9gion
+isisfish.common.remove=Supprimer
+isisfish.common.reset=R\u00E9initialiser
+isisfish.common.save=Sauver
+isisfish.common.saveModel=Sauver comme mod\u00E8le
+isisfish.common.saveNextSimulation=Sauver pour la prochaine simulation
+isisfish.common.season=Saison
+isisfish.common.setOfVessels=Flottille
+isisfish.common.simulate=Simuler
+isisfish.common.strategies=Strat\u00E9gies
+isisfish.common.sum=somme
+isisfish.common.tag=Tag
+isisfish.common.tripType=Type de trajet
+isisfish.common.valid=Valider
+isisfish.common.value=Valeur
+isisfish.common.warn=Warning
+isisfish.common.year=ann\u00E9e
+isisfish.common.zone=Zone
+isisfish.config.category.main=Globale
+isisfish.config.category.main.description=Configuration globale
+isisfish.config.category.misc=Divers
+isisfish.config.category.misc.description=Divers
+isisfish.config.category.versioning=VCS
+isisfish.config.category.versioning.description=Gestionnaire de version
+isisfish.config.database.lockmode.description=M\u00E9thode de v\u00E9rouillage \u00E0 utiliser pour la base de donn\u00E9es
+isisfish.config.main.compileDirectory.description=le r\u00E9pertoire o\u00F9 sont compil\u00E9s les scripts
+isisfish.config.main.configFileName.description=le fichier de configuration \u00E0 utiliser
+isisfish.config.main.defaultBackupDirectory.description=le r\u00E9pertoire o\u00F9 stocker les backups des donn\u00E9es
+isisfish.config.main.defaultExportNames.description=les noms des exports \u00E0 effectuer apr\u00E8s une simulation
+isisfish.config.main.defaultMapFile.description=noms de la carte par d\u00E9faut pour une base sans cartes
+isisfish.config.main.defaultResultNames.description=les noms des r\u00E9sultats \u00E0 traiter durant une simulation
+isisfish.config.main.defaultSimulator.description=le nom du simulateur par d\u00E9faut \u00E0 utiliser lors d'une simulation
+isisfish.config.main.defaultTagValue.description=
+isisfish.config.main.encoding.description=l'encoding du syst\u00E8me
+isisfish.config.main.javadocDirectory.description=dossier de g\u00E9n\u00E9ration de la javadoc des scripts
+isisfish.config.main.javadocURL.description=l'url de la javadoc des scripts
+isisfish.config.main.launchUI.description=Affiche l'interface utilisateur
+isisfish.config.main.localSimulator.description=Nom du simulateur local (processus courant)
+isisfish.config.main.locale.description=la locale utilisateur
+isisfish.config.main.monitoringDirectory.description=Dossier contenant les informations permettant de relancer les simulations
+isisfish.config.main.performcron.description=D\u00E9marre toutes les t\u00E2ches d\u00E9finies dans le service cron
+isisfish.config.main.performmigration.description=Migre les donn\u00E9es
+isisfish.config.main.performvcsupdate.description=Met \u00E0 jour le d\u00E9p\u00F4t VCS
+isisfish.config.main.remoteCaparmor.description=Nom du lanceur de simulation distante
+isisfish.config.main.simulation.ssh.control.check.interval=V\u00E9rification de la progression (secondes)
+isisfish.config.main.simulation.ssh.control.check.interval.description=Temps d'attente en secondes entre deux v\u00E9rifications de progression
+isisfish.config.main.simulation.ssh.datapath=Base de donn\u00E9es
+isisfish.config.main.simulation.ssh.datapath.description=Emplacement de la base de donn\u00E9es (isis-database)
+isisfish.config.main.simulation.ssh.isis.home=Installation d'Isis-Fish
+isisfish.config.main.simulation.ssh.isis.home.description=Emplacement d'installation d'Isis-Fish sur le serveur
+isisfish.config.main.simulation.ssh.javapath=Emplacement de java
+isisfish.config.main.simulation.ssh.javapath.description=Emplacement de java sur le serveur (chemin total, ou relatif au $PATH, par d\u00E9faut la valeur est celle de caparmor)
+isisfish.config.main.simulation.ssh.max.threads=Nombre de thread SSH
+isisfish.config.main.simulation.ssh.max.threads.description=Nombre de simulation simultan\u00E9e \u00E0 faire en SSH. Attention, ne doit \u00EAtre utilis\u00E9 que pour faire plusieurs plans d'analyse d\u00E9pendants en m\u00EAme temps, sinon laisser '1'.
+isisfish.config.main.simulation.ssh.pbsbinpath=Emplacement des executables PBS
+isisfish.config.main.simulation.ssh.pbsbinpath.description=Emplacement des commandes PBS (qsub, qdel...) sur le serveur
+isisfish.config.main.simulation.ssh.pbsqsuboptions=Arguments qsub
+isisfish.config.main.simulation.ssh.pbsqsuboptions.description=Arguments utilis\u00E9s lors de la soumission des jobs. Par d\u00E9faut '-m n' pas d'envoi de mails.
+isisfish.config.main.simulation.ssh.server=Serveur de simulation
+isisfish.config.main.simulation.ssh.server.description=Adresse du serveur de simulation
+isisfish.config.main.simulation.ssh.sftpserver.description=Adresse du serveur de transfert de fichier (laisser vide pour utiliser directement scp sur le serveur de simulation)
+isisfish.config.main.simulation.ssh.tmppath=Dossier temporaire
+isisfish.config.main.simulation.ssh.tmppath.description=Emplacement du dossier temporaire
+isisfish.config.main.simulation.ssh.userhome=R\u00E9pertoire d'accueil
+isisfish.config.main.simulation.ssh.userhome.description=R\u00E9pertoire d'accueil de l'utilisateur
+isisfish.config.main.simulation.ssh.username=Identifiant
+isisfish.config.main.simulation.ssh.username.description=Identifiant SSH pour se connecter au serveur
+isisfish.config.main.simulationShowOnlyError.description=pour indiquer si l'on doit conserver dans l'UI des simulations termin\u00E9es uniquement celles avec erreur
+isisfish.config.main.smtpServer.description=le nom du serveur smtp \u00E0 utiliser pour envoyer les courriels
+isisfish.config.main.subSimulator.description=Nom du simulateur en sous processus
+isisfish.config.main.userMail.description=le courriel de l'utilisateur
+isisfish.config.main.userName.description=le nom - pr\u00E9nom de l'utilisateur
+isisfish.config.ssh.key.file=Cl\u00E9 SSH
+isisfish.config.ssh.key.file.description=Emplacement de la cl\u00E9 priv\u00E9e SSH
+isisfish.config.vcs.hostName.description=le nom du serveur vcs \u00E0 utiliser
+isisfish.config.vcs.localDatabasePath.description=
+isisfish.config.vcs.noPassPhrase.description=pour indiquer si la clef priv\u00E9e ssh2 utilis\u00E9e pour communiquer avec le serveur vcs est prot\u00E9g\u00E9 par une passe-phrase
+isisfish.config.vcs.passphrase.description=la passe-phrase utilis\u00E9e pour prot\u00E9ger la clef priv\u00E9e ssh
+isisfish.config.vcs.remotePath.description=le chemin jusqu'au parent du module de donn\u00E9es sur le serveur vcs
+isisfish.config.vcs.type.description=le type de communication vcs utilis\u00E9
+isisfish.config.vcs.useSshConnexion.description=pour indiquer si l'on utilise une connexion s\u00E9curis\u00E9e pour communiquer avec le serveur vcs (ssh2)
+isisfish.config.vcs.userName.description=le login de l'utilisateur sur le serveur vcs
+isisfish.config.vcs.userPassword.description=
+isisfish.dataResult.export.csv=Exporter en CSV
+isisfish.dataResult.label=Valeur
+isisfish.date.toString=%1$s %2$s
+isisfish.effortDescription.crewFoodCost=Co\u00FBt de l'alimentation pour l'\u00E9quipage
+isisfish.effortDescription.crewShareRate=Taux de partage de l'\u00E9quipage
+isisfish.effortDescription.crewSize=Taille de l'\u00E9quipage
+isisfish.effortDescription.economicTitle=Param\u00E8tres \u00E9conomiques
+isisfish.effortDescription.effortTitle=Param\u00E8tres d'effort de p\u00EAche
+isisfish.effortDescription.fishingOperation=Op\u00E9ration de p\u00EAche
+isisfish.effortDescription.fishingOperationDuration=Dur\u00E9e de la p\u00EAche
+isisfish.effortDescription.fishingOperationDuration.tooltip=En heures
+isisfish.effortDescription.fixedCrewSalary=Salaire d'\u00E9quipage fixe
+isisfish.effortDescription.gearsNumberPerOperation=Nombre d'engins par op\u00E9ration
+isisfish.effortDescription.landingCosts=Co\u00FBts d'accastillage
+isisfish.effortDescription.otherRunningCost=Autres co\u00FBts
+isisfish.effortDescription.parametersTitle=Param\u00E8tres des m\u00E9tiers
+isisfish.effortDescription.repairAndMaintenanceGearCost=Co\u00FBts de maintenance
+isisfish.effortDescription.title=M\u00E9tiers pratiqu\u00E9s
+isisfish.effortDescription.toString=EffortDescription for %1$s with %2$s
+isisfish.effortDescription.unitCostOfFishing=Co\u00FBt unitaire de la p\u00EAche
+isisfish.equation.editor.title=Editeur d'\u00E9quation
+isisfish.error.acceptable.population=La nouvelle valeur n'est pas une valeur valide pour cette population
+isisfish.error.add.card=Erreur lors de l'ajout du r\u00E9sultat \u00E0 la carte.
+isisfish.error.add.logger.simulation=isisfish.error.add.logger.simulation
+isisfish.error.add.result.data=Erreur lors de l'ajout du r\u00E9sultat au data.
+isisfish.error.add.result.graph=Erreur lors de l'ajout du r\u00E9sultat au graph.
+isisfish.error.add.tray=Impossible d'ajouter une icone de notification
+isisfish.error.change.classloader=Can't change classloader because can't create URL from file %1$s
+isisfish.error.change.equation=Can't change equation
+isisfish.error.compile.fileerror=Le fichier %s contient des erreurs \!
+isisfish.error.compile.script=Impossible de compiler le script \: %s
+isisfish.error.compiled.parameter=Can't get rule parameter from compiled class
+isisfish.error.conversion.data=Erreur lors de la conversion du fichier de donn\u00E9es
+isisfish.error.create.equation=Can't create equation
+isisfish.error.delete.database=Can't delete database
+isisfish.error.delete.file=could not delete file %1$s
+isisfish.error.delete.vcs.files=Can't delete vcs files
+isisfish.error.during.simulation=Error during simulation
+isisfish.error.emigration.negative=emigration negative
+isisfish.error.empty.code.rubbin=le code rubbin est vide
+isisfish.error.empty.emigration=emigration vide
+isisfish.error.empty.id.geographic=l'identifiant g\u00E9ographique est vide
+isisfish.error.empty.immigration=immigration vide
+isisfish.error.empty.migration=Migration vide
+isisfish.error.empty.name=le nom est vide
+isisfish.error.empty.params.name=le nom du param\u00E8tre est vide
+isisfish.error.empty.population=Population est vide
+isisfish.error.empty.scientific.name=le nom scientifique est vide
+isisfish.error.empty.season=info saison vide
+isisfish.error.empty.selectivity=s\u00E9lectivit\u00E9 est vide
+isisfish.error.empty.species=espece capturable vide
+isisfish.error.empty.species.name=le nom d'espece est vide
+isisfish.error.empty.unit=l'unit\u00E9 de mesure est vide
+isisfish.error.equation.openeditor=Impossible d'ouvrir l'editeur d'\u00E9quation
+isisfish.error.equation.return.number=EquationImpl doit retourner un nombre \: %1$s
+isisfish.error.equation.savemodel=Impossible de sauver l'\u00E9quation en tant que mod\u00E8le
+isisfish.error.errorpane.htmlmessage=<html><b>IsisFish a d\u00E9tect\u00E9 une erreur \:</b><br />%s</b></html>
+isisfish.error.errorpane.title=Erreur
+isisfish.error.evaluate.equation=Impossible d'\u00E9valuer l'\u00E9quation\: %1$s
+isisfish.error.evaluate.preplan.script=
+isisfish.error.evalute.plan.script=Can't evaluate plan script
+isisfish.error.factor.invalid=Le facteur n'est pas valide
+isisfish.error.file.already.exists=The file %1$s already exist
+isisfish.error.growth.equation.before.create.group.population=Error, You must input growth equation before create the group population
+isisfish.error.immigration.negative=immigration negative
+isisfish.error.import.convertible=Erreur lors de l'import, la version du fichier que vous souhaitez importer n'est pas transformable en une version importable.
+isisfish.error.import.file=Can't import file %1$s
+isisfish.error.import.recent.files=Erreur lors de l'import, la version du fichier que vous souhaitez importer est plus r\u00E9cente que la version souhait\u00E9e.
+isisfish.error.init.map=Can't init map.
+isisfish.error.input.addentity=Impossible d'ajouter l'entit\u00E9 "%s"
+isisfish.error.input.cancelentity=Impossible d'annuler les modifications
+isisfish.error.input.createentity=Impossible de cr\u00E9er une nouvelle entit\u00E9
+isisfish.error.input.removeentity=Impossible de supprimer l'entit\u00E9 "%s"
+isisfish.error.input.save=Impossible de sauver les modifications
+isisfish.error.input.saveentity=Impossible de sauver les modifications
+isisfish.error.input.spacializematrix=
+isisfish.error.instanciate=Can't instanciate %1$s
+isisfish.error.instanciate.export=Can't instanciate export %1$s
+isisfish.error.invalid.costs.fix=les co\u00FBts fixes sont invalides
+isisfish.error.invalid.distribution.recruitment=distribution de recrutement invalide
+isisfish.error.invalid.equation=Equation invalide
+isisfish.error.invalid.equation.name=Nom d'\u00E9quation invalide
+isisfish.error.invalid.file.name=Le nom du script %1$s n'est pas valide.
+isisfish.error.invalid.interval.reproduction.recruitment=interval entre la reproduction et le recrutement invalide
+isisfish.error.invalid.mean.weight=poids moyen invalide
+isisfish.error.invalid.natural.death=mortalit\u00E9 naturelle sur les classes naissantes invalide
+isisfish.error.invalid.nullequation=L'\u00E9quation %s n'existe pas \!
+isisfish.error.invalid.number=le nombre est invalide
+isisfish.error.invalid.range=La gamme possible n'a pas de valeur acceptable
+isisfish.error.invalid.values.params=Param\u00E8tre controlable hors valeurs possibles
+isisfish.error.invalidate.natural.death=mortalite naturelle invalide
+isisfish.error.invoke.method=Can't invoke method '%1$s' for class %2$s
+isisfish.error.linkageerror.message=Isis-Fish a d\u00E9tect\u00E9 une erreur d'utilisation des scripts.\nLe dossier de compilation a \u00E9t\u00E9 supprim\u00E9 pour forcer leur recompilation.\n\nMerci de relancer Isis-Fish.
+isisfish.error.linkageerror.title=Erreur d'initialisation
+isisfish.error.load.class=Can't load class\: %1$s
+isisfish.error.load.classloader=Can't create ClassLoader for script, bad directory\: %1$s for reason %2$s
+isisfish.error.load.file=could not load file %1$s
+isisfish.error.log.closeAppender=n'a pas pu ferme l'appender %1$s et la categorie %2$s
+isisfish.error.log.console.dispose=Une erreur est survenue pendant la fermeture de la console %1$s de log, raison %2$s
+isisfish.error.log.createAppender=n'a pas pu creer l'appender [%1$s] \: %2$s pour la raison %3$s
+isisfish.error.log.foundAppender=n'a pas trouve l'appender %1$s pour la categorie %2$s
+isisfish.error.matrix.more.2d=Matrice de plus de 2 dimensions\!\!\nS\u00E9lectionnez moins d'\u00E9l\u00E9ments ou utilisez l'op\u00E9rateur somme.
+isisfish.error.migration.negative=Migration negative
+isisfish.error.no.matrix=Pas de matrice pour \: %s
+isisfish.error.no.null.time.step=Error, the time step should not be null
+isisfish.error.no.sector=il n'y a pas de secteur de d\u00E9finit
+isisfish.error.no.select.simulation=could not select simulation
+isisfish.error.no.target.species=no target species in %1$s for %2$s
+isisfish.error.not.found.code=could not found codeclass for %1$s
+isisfish.error.not.found.description=could not found description for %1$s
+isisfish.error.not.found.field=could not found field %1$s doc for %2$s
+isisfish.error.not.found.field.class=could not found field %1$s for class %2$s
+isisfish.error.not.null.class.grown=classe mature vaut nul
+isisfish.error.not.null.mean.weight=poids moyen nul
+isisfish.error.not.null.natural.death=mortalite naturelle nulle
+isisfish.error.not.possible.metier=Pas de m\u00E9tier possible
+isisfish.error.not.support.class=La classe %s ne supporte pas les descritions
+isisfish.error.number.classes.upper.zero=Error, the number of classes must be upper than 0
+isisfish.error.out.memory=Out of memory try with more memory (option -mx)
+isisfish.error.overlap.season=Cette saison chevauche une autre saison
+isisfish.error.parse.date=Can't parse date %1$s
+isisfish.error.parse.long=Can't parse long %1$s
+isisfish.error.plan.parameter=Can't get plan parameter from compiled class
+isisfish.error.prepare.data=Can't prepare data
+isisfish.error.prepare.information.simulation=Can't prepare information for simulation
+isisfish.error.read.simulation=Can't read simulation information %1$s
+isisfish.error.read.simulation.parameters=Impossible de lire les param\u00E8tres du fichier \: %1$s
+isisfish.error.region.addmap=Impossible d'ajouter une carte
+isisfish.error.region.already.exists=Cette r\u00E9gion existe d\u00E9j\u00E0
+isisfish.error.region.cancel=
+isisfish.error.region.check=Impossible de v\u00E9rifier la r\u00E9gion
+isisfish.error.region.commit=Impossible de committer la r\u00E9gion
+isisfish.error.region.copy=Impossible de copier la r\u00E9gion
+isisfish.error.region.create=Impossible de cr\u00E9er une nouvelle r\u00E9gion
+isisfish.error.region.export=Impossible d'exporter la r\u00E9gion
+isisfish.error.region.import=Impossible d'importer la r\u00E9gion
+isisfish.error.region.load=Impossible de charger la r\u00E9gion
+isisfish.error.region.name.empty=Le nom de la R\u00E9gion est vide
+isisfish.error.region.new=
+isisfish.error.region.remove=Impossible de supprimer la r\u00E9gion
+isisfish.error.region.removemap=Impossible de supprimer une carte de la r\u00E9gion
+isisfish.error.region.save=Impossible de sauver la r\u00E9gion
+isisfish.error.remove.directory=Can't remove directory %1$s
+isisfish.error.rename.region=Can't rename region to %1$s
+isisfish.error.save.checkSum.compilation=Can't save checkSum to compilation\: %1$s
+isisfish.error.save.script.compilation=Can't save script to compilation\: %1$s
+isisfish.error.save.simulation.parameters=Can't save simulation parameters in file %1$s
+isisfish.error.script.create=isisfish.error.script.create
+isisfish.error.script.delete=N'a pas pu supprimer le fichier %1$s pour la raison suivante %2$s
+isisfish.error.script.import=N'a pas pu importer pour la raison suivante %1$s
+isisfish.error.script.load=N'a pas pu charger le fichier %1$s pour la raison suivante %2$s
+isisfish.error.script.save=N'a pas pu sauver le fichier %1$s pour la raison suivante %2$s
+isisfish.error.sensitivity.export=Error lors de l'export des facteurs de la r\u00E9gion
+isisfish.error.simulation.addanalyseplan=Impossible d'ajouter un plan d'analyze
+isisfish.error.simulation.addrule=Impossible d'ajouter une r\u00E8gle
+isisfish.error.simulation.getparametervalue=Impossible d'obtenir la valeur du param\u00E8tre
+isisfish.error.simulation.getresultname=Impossible d'obtenir la liste des r\u00E9sultat
+isisfish.error.simulation.importparameter=Impossible d'importer les param\u00E8tres de simulation
+isisfish.error.simulation.initsimulaction=Impossible d'initialiser la simulation
+isisfish.error.simulation.launchsimulation=Impossible de lancer la simulation
+isisfish.error.simulation.listoldsimulation=Impossible de lister les anciennes simulations
+isisfish.error.simulation.listpopulation=Impossible d'obtenir la liste des populations
+isisfish.error.simulation.liststrategies=Impossible d'obtenir la liste des stat\u00E9gies
+isisfish.error.simulation.loadoldsimulation=Impossible de charger une ancienne simulation
+isisfish.error.simulation.log.openAppender=n'a pas pu ouvrir l'appender de la simulation %1$s pour la raison %2$s
+isisfish.error.simulation.openregion=Impossible d'ouvrir la r\u00E9gion
+isisfish.error.simulation.remote.global=Impossible de lancer une simulation sur serveur distant
+isisfish.error.simulation.remote.wrongportvalue=Le port de connexion a une valeur incorrecte \: %s
+isisfish.error.simulation.resultXml.close=Can't close simulation result XML for reason %1$s
+isisfish.error.simulation.resultXml.open=Can't open simulation result XML for reason %1$s
+isisfish.error.simulation.resultXml.write=Can't write simulation result XML for reason %1$s
+isisfish.error.simulation.savesimulation=Impossible de sauver les param\u00E8tres de simulation
+isisfish.error.simulation.setparametervalue=Impossible d'affecter la valeur du param\u00E8tre
+isisfish.error.source.parameter=Can't get parameter from source
+isisfish.error.strategy.order=Strategy %1$s don't have 12 StrategyMonthInfo but %2$s. Recreate them
+isisfish.error.undefined.classes=pas de classes d\u00E9finies
+isisfish.error.undefined.correspondence.zones.reproduction.recruitment=pas de correspondance entre les zones de reproduction et les zones de recrutement
+isisfish.error.undefined.gear=l'engin n'est pas d\u00E9fini
+isisfish.error.undefined.mesh=aucune maille de d\u00E9fini
+isisfish.error.undefined.mesh.sector=aucune maille dans le secteur
+isisfish.error.undefined.meta.population=aucune meta population de d\u00E9fini
+isisfish.error.undefined.natural.death=pas de mortalit\u00E9 naturelle sur les classes naissantes
+isisfish.error.undefined.sector=aucun secteur de d\u00E9fini
+isisfish.error.undefined.stategy=aucune strat\u00E9gie de d\u00E9fini
+isisfish.error.undefined.stategy.months=La strat\u00E9gie n'est pas d\u00E9finie pour certain mois
+isisfish.error.undefined.zone.population=il n'y a pas de zone de population de d\u00E9finie
+isisfish.error.undefined.zone.recruitment=il n'y a pas de zone de recrutement de d\u00E9finie
+isisfish.error.undefined.zone.reproduction=il n'y a pas de zone de reproduction de d\u00E9finie
+isisfish.error.unsupported.equation.langage=unsupported langage '%1$s' for equation\: %2$s
+isisfish.error.wait.simThread=Can't wait SimThread
+isisfish.error.warning.title=Attention
+isisfish.error.write.simulation=Can't write information %1$s
+isisfish.export.saved=Exports des r\u00E9sultats sauvegard\u00E9s
+isisfish.export.title=Export des r\u00E9sultats
+isisfish.filter=Filtrer
+isisfish.filter.apply=Appliquer le filtre
+isisfish.filter.cancel=Annuler
+isisfish.filter.log.levelDebug=debug
+isisfish.filter.log.levelError=erreur
+isisfish.filter.log.levelFatal=fatal
+isisfish.filter.log.levelInfo=info
+isisfish.filter.log.levelTrace=trace
+isisfish.filter.log.levelWarn=warning
+isisfish.filter.log.tooltip.levelDebug=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelError=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelFatal=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelInfo=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelTrace=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.levelWarn=s\u00E9lectionner pour filtrer ce niveau
+isisfish.filter.log.tooltip.message=Entrer un terme \u00E0 rechercher et appuyer sur Entr\u00E9e
+isisfish.filter.reset=R\u00E9initialiser
+isisfish.filter.result=R\u00E9sultats
+isisfish.filter.result.found=R\u00E9sultats (%d/%d)
+isisfish.filter.select=S\u00E9lectionner
+isisfish.filter.select.simulation=S\u00E9lectionner une simulation
+isisfish.filter.simulation=Filtrer les simulations
+isisfish.filter.simulation.analysePlanNumber=num\u00E9ro d'analyse
+isisfish.filter.simulation.description=description
+isisfish.filter.simulation.local=locale
+isisfish.filter.simulation.numberOfYear=nombre d'ann\u00E9e(s)
+isisfish.filter.simulation.regionName=nom de r\u00E9gion
+isisfish.filter.simulation.simulationEnd=date de fin (dd/MM/yyyy)
+isisfish.filter.simulation.simulationName=nom de simulation
+isisfish.filter.simulation.simulationStart=date de d\u00E9but (dd/MM/yyyy)
+isisfish.filter.simulation.simulatorName=nom du simulateur
+isisfish.filter.simulation.tooltip.analysePlanNumber=filter sur le num\u00E9ro d'analyse (uniquement pour les simulations avec plan d'analyse)
+isisfish.filter.simulation.tooltip.description=filtrer sur la description (format regex)
+isisfish.filter.simulation.tooltip.local=filter uniquement les simulations locales
+isisfish.filter.simulation.tooltip.numberOfYear=filter sur le nombre d'ann\u00E9e(s) (recherche exacte)
+isisfish.filter.simulation.tooltip.regionName=filtrer sur le nom de la r\u00E9gion (format regex)
+isisfish.filter.simulation.tooltip.simulationEnd=filtrer sur la date de fin de simulation (format dd/MM/yyyy)
+isisfish.filter.simulation.tooltip.simulationName=filtrer sur le nom de simulation (format regex)
+isisfish.filter.simulation.tooltip.simulationStart=filtrer sur la date de d\u00E9but de simulation (format dd/MM/yyyy)
+isisfish.filter.simulation.tooltip.simulatorName=filter sur le nom du simulateur utilis\u00E9 (format regex)
+isisfish.filter.simulation.tooltip.useAnalysePlan=filter uniquement les simulations avec plan d'analyse
+isisfish.filter.simulation.tooltip.useOptimization=filter uniquement les simulations avec optimisation
+isisfish.filter.simulation.tooltip.usePreScript=filter uniquement les simulations avec Prescript
+isisfish.filter.simulation.tooltip.useStatistic=filter uniquement les simulations avec statistiques
+isisfish.filter.simulation.useAnalysePlan=plan d'analyse
+isisfish.filter.simulation.useOptimization=optimisation
+isisfish.filter.simulation.usePreScript=prescript
+isisfish.filter.simulation.useStatistic=statistiques
+isisfish.fisheryRegion.addMap=Ajouter une carte
+isisfish.fisheryRegion.area=Extr\u00E9mit\u00E9s de la zone de p\u00EAche
+isisfish.fisheryRegion.comments=Commentaires
+isisfish.fisheryRegion.delMap=Supprimer la carte
+isisfish.fisheryRegion.latitude=Lat.
+isisfish.fisheryRegion.latitude.max=Lat. max.
+isisfish.fisheryRegion.latitude.min=Lat. min.
+isisfish.fisheryRegion.longitude=Long.
+isisfish.fisheryRegion.longitude.max=Long. max.
+isisfish.fisheryRegion.longitude.min=Long. min.
+isisfish.fisheryRegion.name=Nom de la r\u00E9gion
+isisfish.fisheryRegion.ofCells=de mailles (option)
+isisfish.fisheryRegion.selectFile=S\u00E9lectionnez un fichier
+isisfish.fisheryRegion.spatial=R\u00E9solution spatiale
+isisfish.gear.comments=Commentaires
+isisfish.gear.effortUnit=Unit\u00E9 d'effort
+isisfish.gear.name=Nom
+isisfish.gear.rangeValues=Gamme de valeurs
+isisfish.gear.standardisationFactor=Facteur de standardisation
+isisfish.gear.technicalParameter=Param\u00E8tre technique
+isisfish.gear.title=Engin
+isisfish.graphBean.graph.render=Choisir un rendu de graphe
+isisfish.graphCombo.render.bar=Rendu en barres verticales
+isisfish.graphCombo.render.bar.3d=Rendu en barres verticales 3D
+isisfish.graphCombo.render.bar.stacked=Rendu en barres verticales empil\u00E9es
+isisfish.graphCombo.render.line=Rendu en ligne
+isisfish.graphCombo.render.line.3d=Rendu en ligne 3D
+isisfish.graphCombo.render.min.max=Rendu en MinMax
+isisfish.graphCombo.render.surface=Rendu en aire
+isisfish.graphCombo.render.surface.stacked=Rendu en aires empil\u00E9es
+isisfish.infoItem.label=defaultToolTip-fr.ifremer.resultat.InfoItem.label
+isisfish.infoItem.sum=Somme de tous les \u00E9l\u00E9ments
+isisfish.infoItem.sum.year=Somme des \u00E9l\u00E9ments par ann\u00E9e
+isisfish.input.continueCells=Continuer vers les mailles
+isisfish.input.continueGears=Continuer vers les engins
+isisfish.input.continueMetiers=Continuer vers les metiers
+isisfish.input.continuePopulations=Continuer vers les populations
+isisfish.input.continuePorts=Continuer vers les ports
+isisfish.input.continueSetOfVessels=Continuer vers les flottilles
+isisfish.input.continueSpecies=Continuer vers les esp\u00E8ces
+isisfish.input.continueStrategies=Continuer vers les strat\u00E9gies
+isisfish.input.continueTripTypes=Continuer vers les types de trajets
+isisfish.input.continueVesselTypes=Continuer vers les types de navires
+isisfish.input.continueZones=Continuer vers les zones
+isisfish.input.map.copytoclicboard=Copier vers de presse-papiers
+isisfish.input.menu.addRegion=Ajouter une r\u00E9gion
+isisfish.input.menu.commit=Sauvegarder les changements
+isisfish.input.menu.copyRegion=Copier r\u00E9gion
+isisfish.input.menu.exportRegion=Exporter la r\u00E9gion
+isisfish.input.menu.importRegion=Importer une r\u00E9gion
+isisfish.input.menu.importRegionSimulation=Importer la r\u00E9gion d'une simulation
+isisfish.input.menu.importRegionV2=Importer une r\u00E9gion de la v2 d'IsisFish
+isisfish.input.menu.importRenameRegion=Importer une r\u00E9gion et la renommer
+isisfish.input.menu.removeLocaly=Supprimer localement
+isisfish.input.menu.removeLocalyRemotely=Supprimer localement et \u00E0 distance
+isisfish.input.menu.sensitivity=Mexico
+isisfish.input.menu.sensitivity.export=Exporter les facteurs
+isisfish.input.menu.server=Serveur
+isisfish.input.newRegion=Nouvelle r\u00E9gion
+isisfish.input.selectRegion=S\u00E9lectionnez une r\u00E9gion
+isisfish.input.sensitivity.export.cancel=Export des facteurs annul\u00E9
+isisfish.input.sensitivity.export.complete=Export des facteurs r\u00E9ussit
+isisfish.input.sensitivity.export.running=Export des facteurs en cours...
+isisfish.input.sensitivity.export.title=Exporter les facteurs
+isisfish.input.title=Saisie de la p\u00EAcherie
+isisfish.input.tree.cells=Mailles
+isisfish.input.tree.gears=Engins
+isisfish.input.tree.metiers=M\u00E9tiers
+isisfish.input.tree.populations=Populations
+isisfish.input.tree.ports=Ports
+isisfish.input.tree.setofvessels=Flottilles
+isisfish.input.tree.species=Esp\u00E8ces
+isisfish.input.tree.strategies=Strat\u00E9gies
+isisfish.input.tree.triptypes=Types de mar\u00E9e
+isisfish.input.tree.vesseltypes=Types de navire
+isisfish.input.tree.zones=Zones
+isisfish.launch.anonymous=lecture seule
+isisfish.launch.email=courriel
+isisfish.launch.firstname=nom
+isisfish.launch.init.done=init done in %1$s.
+isisfish.launch.lasstname=pr\u00E9nom
+isisfish.launch.server.authenticationMethod=droit d'acc\u00E8s au serveur
+isisfish.launch.server.login=nom utilisateur
+isisfish.launch.server.ssh.confirm.passphrase=confirmer la passphrase
+isisfish.launch.server.ssh.key.change=Changer la clef ssh
+isisfish.launch.server.ssh.key.generate=G\u00E9n\u00E9rer la clef ssh
+isisfish.launch.server.ssh.no.passphrase=pas de passphrase
+isisfish.launch.server.ssh.passphrase=passphrase
+isisfish.launch.server.ssh.privateKeyFile=clef priv\u00E9e ssh
+isisfish.launch.server.ssh.publicKeyFile=clef publique ssh
+isisfish.launch.ssh=lecture-\u00E9criture (ssh)
+isisfish.launch.stop=Arr\u00EAt de la simulation...
+isisfish.launching=after init done in %1$s.
+isisfish.log.addAppender=ajoute un appender [%1$s]
+isisfish.log.body=Message \u00E0 joindre
+isisfish.log.closeAppender=ferme l'appender [%1$s] pour la categorie %2$s
+isisfish.log.mail.failed=Impossible d'envoyer le rapport par courriel. Le serveur smtp fonctionne ? (J'essaye de contacter < %1$s > smtp server)
+isisfish.log.mail.send=Un rapport a \u00E9t\u00E9 envoy\u00E9 \u00E0 %1$s
+isisfish.log.mail.send.title=Envoi de la simulation %1$s par email
+isisfish.log.mailTo=Adresse du destinataire
+isisfish.log.removeAppender=supprime l'appender [%1$s]
+isisfish.log.restoreLogLevel=repositionne le niveau du logger %1$s du niveau %2$s au niveau %3$s
+isisfish.log.sendAll=Envoyer la simulation complete
+isisfish.log.sendMail=Envoyer par email
+isisfish.log.simulation.name=IsisFish simulation %1$s
+isisfish.log.swapLogLevel=permute le niveau du logger %1$s du niveau %2$s au niveau %3$s
+isisfish.log.tooltip.body=Le message saisi sera joint au courriel envoy\u00E9
+isisfish.log.tooltip.mailTo=Entrer l'adresse du destinataire du courriel
+isisfish.log.tooltip.sendAll=Envoyer toute la simulation, ou uniquement le fichier de log
+isisfish.log.tooltip.sendMail=Cliquer pour envoyer le courriel contentant les fichiers
+isisfish.message.add.objets.simulation=Ajout des nouveaux objets cr\u00E9\u00E9s durant la simulation
+isisfish.message.backup.database.finished=backup database termin\u00E9
+isisfish.message.backup.database.progress=backup database en cours
+isisfish.message.cancel.finished=Annulation termin\u00E9e
+isisfish.message.check.finished=V\u00E9rification termin\u00E9e
+isisfish.message.check.inprogress=V\u00E9rification en cours...
+isisfish.message.checking.cell=
+isisfish.message.choose.archive=choose archive file or directory
+isisfish.message.commit.cancelled=commit annul\u00E9
+isisfish.message.commit.finished=commit termin\u00E9
+isisfish.message.commit.region.canceled=Commit de la r\u00E9gion annul\u00E9
+isisfish.message.commiting.region=En train de commiter la r\u00E9gion %1$s ...
+isisfish.message.compilation.time=Temps de compilation %1$ss
+isisfish.message.confirm.delete.object=Voulez-vous vraiment supprimer l'objet %1$s
+isisfish.message.confirm.remove.region=Voulez-vous vraiment supprimer la r\u00E9gion %1$s ?
+isisfish.message.confirm.remove.script=Voulez-vous vraiment supprimer le script '%1$s' ?
+isisfish.message.copy.finished=Copie termin\u00E9e
+isisfish.message.copy.region=Copier la r\u00E9gion
+isisfish.message.creating.region=En train de cr\u00E9er la r\u00E9gion %1$s
+isisfish.message.creation.finished=Cr\u00E9ation termin\u00E9e
+isisfish.message.delete.canceled=Suppression annul\u00E9e
+isisfish.message.delete.entities=Supprimer les entit\u00E9s
+isisfish.message.delete.entity=Supprimer l'entit\u00E9
+isisfish.message.delete.finished=Suppression termin\u00E9e
+isisfish.message.delete.object=Pour supprimer l'objet %1$s, tous les objets suivants seront aussi supprim\u00E9s \n\n
+isisfish.message.directory.not.exists=
+isisfish.message.evaluation.finished=\u00E9valuation termin\u00E9e
+isisfish.message.export.done=Export termin\u00E9
+isisfish.message.export.zip=Exporter dans le fichier zip %1$s
+isisfish.message.file.already.exists=Le fichier %s existe, voulez-vous l'\u00E9craser ?
+isisfish.message.file.overwrite=Le fichier existe, voulez-vous l'\u00E9craser ?
+isisfish.message.import=Importer %1$s
+isisfish.message.import.equation.convert=Conversion manuelle de l'\u00E9quation
+isisfish.message.import.finished=Import termin\u00E9
+isisfish.message.import.region.name=Entre le nom de la r\u00E9egion \u00E0 importer
+isisfish.message.import.region.xml=R\u00E9gion XML (Isis-Fish V2.x)
+isisfish.message.import.region.zipped=Zipped Region
+isisfish.message.import.scripts.file=Importer des scripts depuis une archive zip
+isisfish.message.import.scripts.file.cancelled=Importation des scripts annul\u00E9
+isisfish.message.import.scripts.file.done=Scripts import\u00E9s
+isisfish.message.import.scripts.zipped=Archive de script (*.zip)
+isisfish.message.import.xml.v2.file=Import xml v2 file
+isisfish.message.import.zip=Import zip file
+isisfish.message.launchui.notlaunch=Interface utilisateur non lanc\u00E9e
+isisfish.message.load.finished=Chargement termin\u00E9
+isisfish.message.load.map=Chargement de la carte \: %1$s
+isisfish.message.loading.old.simulation=Chargement d'une ancienne simulation...
+isisfish.message.loading.region=Chargement de la r\u00E9gion
+isisfish.message.name.imported.region=Entrez le nom de la r\u00E9gion \u00E0 importer
+isisfish.message.new.filename=Entrez le nom du nouveau du fichier.\n\t (utiliser uniquemment des caract\u00E8res et _ en commencant avec une majuscule)
+isisfish.message.new.formule.category=Choisissez le cat\u00E9gorie de la formule
+isisfish.message.new.formule.title=Nouvelle formule
+isisfish.message.new.region.name=Entrer le nom de la nouvelle r\u00E9gion
+isisfish.message.old.simulation.loaded=Ancienne simulation charg\u00E9e
+isisfish.message.page.modified=Cette page a \u00E9t\u00E9 modifi\u00E9, voulez-vous la sauvegarder ?
+isisfish.message.presimulation.script.execution=Ex\u00E9cution des scripts de Presimulation
+isisfish.message.recruitment.number.month=Entrez le nombre de mois de recrutement
+isisfish.message.region.commited=R\u00E9gion commit\u00E9e
+isisfish.message.region.loaded=R\u00E9gion charg\u00E9e
+isisfish.message.region.remove.canceled=Suppression de r\u00E9gion annul\u00E9
+isisfish.message.region.removed=R\u00E9gion supprim\u00E9e
+isisfish.message.remove.canceled=Suppression annul\u00E9e
+isisfish.message.remove.finished=Suppresison termin\u00E9
+isisfish.message.removing.region=Suppression de la r\u00E9gion %1$s...
+isisfish.message.result.verif.region=R\u00E9sultat de la v\u00E9rification de la r\u00E9gion
+isisfish.message.save.finished=Sauvegarde termin\u00E9e
+isisfish.message.saveModel.dialog=Entrez le nom du mod\u00E8le d'\u00E9quation
+isisfish.message.saveModel.finished=Sauvegarde du mod\u00E8le termin\u00E9e
+isisfish.message.script.commit=Indiquez un message pour committer les modifications fa\u00EEtes sur %s
+isisfish.message.setting.cache.aspects=Mise en place des aspects Cache
+isisfish.message.setting.trace.aspects=Mise en place des aspects Trace
+isisfish.message.simulation.ended=Simulation termin\u00E9e
+isisfish.message.simulation.execution=Simulation execution
+isisfish.message.simulation.prepare=Pr\u00E9paration de la simulation
+isisfish.message.tray.disabled=Icone de notification d\u00E9sactiv\u00E9e
+isisfish.metier.comments=Commentaires
+isisfish.metier.name=Nom
+isisfish.metier.rangeValues=Param\u00E8tre d'engin
+isisfish.metier.title=M\u00E9tier
+isisfish.metierMonitor.metiers=M\u00E9tiers
+isisfish.metierMonitor.strategies=Strat\u00E9gies
+isisfish.metierSeasonInfo.toString=%1$s saison %2$s-%3$s
+isisfish.metierSeasonInfoSpecies.mainSpecies=Esp\u00E8ces principales pour le m\u00E9tier
+isisfish.metierSeasonInfoSpecies.selectSeason=S\u00E9lectionnez une saison
+isisfish.metierSeasonInfoSpecies.selectSpecies=Choix de l'esp\u00E8ce
+isisfish.metierSeasonInfoSpecies.species=Esp\u00E8ce
+isisfish.metierSeasonInfoSpecies.targetFactor=Facteur cible
+isisfish.metierSeasonInfoSpecies.title=Esp\u00E8ces capturables
+isisfish.metierSeasonInfoZone.comments=Commentaires
+isisfish.metierSeasonInfoZone.season=Saison
+isisfish.metierSeasonInfoZone.selectSeason=S\u00E9lectionnez une saison
+isisfish.metierSeasonInfoZone.title=Saison / Zones
+isisfish.misc.databasemigration.question=La base de donn\u00E9e est en version \: %s.\n\nUne migration en version %s est n\u00E9cessaire.\nVoulez vous migrer la base de donn\u00E9es ?
+isisfish.misc.databasemigration.title=Migration de base de donn\u00E9es
+isisfish.misc.nuitonmigration=IsisFish a d\u00E9tect\u00E9 l'utilisation de librairies CodeLutin dans les scripts suivants.\nVoulez vous migrer ces scripts vers les nouvelles librairies nuiton ?
+isisfish.monitor.title=Moniteur de l'application
+isisfish.month.april=avril
+isisfish.month.august=ao\u00FBt
+isisfish.month.december=d\u00E9cembre
+isisfish.month.february=f\u00E9vrier
+isisfish.month.january=janvier
+isisfish.month.july=juillet
+isisfish.month.june=juin
+isisfish.month.march=mars
+isisfish.month.may=mai
+isisfish.month.november=novembre
+isisfish.month.october=octobre
+isisfish.month.september=septembre
+isisfish.params.changeLogLev=Passe du niveau '%1$s' au niveau '%2$s'
+isisfish.params.clearFilter=Remise \u00E0 z\u00E9ro du filtre
+isisfish.params.description=Description
+isisfish.params.filter=Filtrer
+isisfish.params.loadOldSimulation=Charger une ancienne simulation
+isisfish.params.nopopulation=Aucune population s\u00E9lectionn\u00E9e
+isisfish.params.numberYear=Nombre d'ann\u00E9es
+isisfish.params.populationEffectives=Effectifs %s
+isisfish.params.rules=R\u00E8gles
+isisfish.params.rules.availables=R\u00E8gles disponibles
+isisfish.params.rules.selected=R\u00E8gles s\u00E9lectionn\u00E9es
+isisfish.params.sensitivityName=Nom de l'analyse de sensibilit\u00E9
+isisfish.params.simulationLauncher=Lanceur de simulation
+isisfish.params.simulationName=Nom de la simulation
+isisfish.params.stategiesAndPopulations=Strat\u00E9gies et populations
+isisfish.params.title=Param\u00E8tres
+isisfish.params.toString.fishery=P\u00EAcherie\: %1$s\n\n
+isisfish.params.toString.lib.logger.level=niveau du logger de librairies \: %1$s
+isisfish.params.toString.number.years=Nombre d'ann\u00E9es \: %1$s\n\n
+isisfish.params.toString.plan=Plan\: %1$s
+isisfish.params.toString.plan.number=Num\u00E9ro de s\u00E9quence dans le plan \: %1$s\n\n
+isisfish.params.toString.populations=Populations \:
+isisfish.params.toString.rule=R\u00E8gle\: %1$s
+isisfish.params.toString.script.logger.level=niveau du logger de scripts \: %1$s
+isisfish.params.toString.script.presimulation=Script de presimulation
+isisfish.params.toString.simul.logger.level=niveau du logger de simulateur \: %1$s
+isisfish.params.toString.simulation.done=Simulation r\u00E9alis\u00E9e avec \: %1$s
+isisfish.params.toString.strategies=Strat\u00E9gies d'exploitation \:
+isisfish.params.useAnalysePlan=Utiliser le plan de simulation
+isisfish.params.usePreSimulationScript=Utiliser un script de pr\u00E9-simulation
+isisfish.population.capturability=Capturabilit\u0E009e
+isisfish.population.comments=Commentaires
+isisfish.population.group=Groupe
+isisfish.population.groups=Groupes
+isisfish.population.mappingZoneReproZoneRecru=MappingZoneReproZoneRecru
+isisfish.population.matrixAbundance=Matrice d'abondance
+isisfish.population.matrixAbundance1D=matrixAbundance1D
+isisfish.population.recruitment=Recrutement
+isisfish.population.reproduction=Reproduction
+isisfish.population.season=Saison
+isisfish.population.zones=Zones
+isisfish.populationBasics.confirmCreateGroups=Attention, la re-cr\u00E9ation des groupes supprimera les groupes existants et tous les objets qui en d\u00E9pendent.\n\u00CAtes vous sur de vouloir re-cr\u00E9er les groupes ?
+isisfish.populationBasics.geographicID=Identifiant g\u00E9ographique
+isisfish.populationBasics.growth=Croissance
+isisfish.populationBasics.growthReverse=Croissance inverse
+isisfish.populationBasics.maturityGroup=Groupe de maturit\u00E9
+isisfish.populationBasics.name=Nom
+isisfish.populationBasics.numberGroup=Nombre de groupes
+isisfish.populationBasics.plusGroup=Groupe plus
+isisfish.populationBasics.recreateClasses=Reconstruire les groupes
+isisfish.populationBasics.title=Saisie des populations
+isisfish.populationCapturability.comments=Commentaires
+isisfish.populationCapturability.selectCoefficient=S\u00E9lectionnez un coefficient par saison et par classe
+isisfish.populationCapturability.title=Saisie de la capturabilit\u00E9
+isisfish.populationEquation.meanWeight=Poids moyen
+isisfish.populationEquation.naturalDeathRate=Taux de mortalit\u00E9 naturelle
+isisfish.populationEquation.price=Prix
+isisfish.populationEquation.title=Saisie des \u00E9quations
+isisfish.populationGroup.age=Age
+isisfish.populationGroup.comments=Commentaires
+isisfish.populationGroup.length=Longueur
+isisfish.populationGroup.maximumLength=Longueur maximale
+isisfish.populationGroup.meanWeigth=Poids principal
+isisfish.populationGroup.minimumLength=Longueur minimale
+isisfish.populationGroup.naturalDeathRate=Taux de mortalit\u00E9 naturelle
+isisfish.populationGroup.price=Prix
+isisfish.populationGroup.reproductionRate=Taux de reproduction
+isisfish.populationGroup.title=Saisie des groupes de population
+isisfish.populationGroup.toString=%1$s Groupe %2$s
+isisfish.populationMigration.comments=Commentaires
+isisfish.populationMigration.selectSeason=S\u00E9lectionnez une saison
+isisfish.populationMigration.title=Migration
+isisfish.populationMigration.useEquation=Utiliser l'\u00E9quation
+isisfish.populationMigrationEmigration.coefficient=Coefficient
+isisfish.populationMigrationEmigration.departureZone=Zone de d\u00E9part
+isisfish.populationMigrationEmigration.title=Emmigration
+isisfish.populationMigrationImmigration.arrivalZone=Zone d'arriv\u00E9e
+isisfish.populationMigrationImmigration.coefficient=Coefficient
+isisfish.populationMigrationImmigration.title=Immigration
+isisfish.populationMigrationMigration.arrivalZone=Zone d'arriv\u00E9e
+isisfish.populationMigrationMigration.coefficient=Coefficient
+isisfish.populationMigrationMigration.departureZone=Zone de d\u00E9part
+isisfish.populationMigrationMigration.title=Migration de population
+isisfish.populationRecruitment.comments=Commentaires
+isisfish.populationRecruitment.monthgapgetweenreprorecruitment=Nombre de mois entre ponte et recrutement
+isisfish.populationRecruitment.recruitmentDistribution=Distribution du recrutement
+isisfish.populationRecruitment.reproductionEquation=Equation de reproduction
+isisfish.populationRecruitment.title=Saisie des reproductions
+isisfish.populationSeasonInfo.arrival=Arriv\u00E9e
+isisfish.populationSeasonInfo.departure=D\u00E9part
+isisfish.populationSeasonInfo.distributionSpawing=Distribution de la reproduction
+isisfish.populationSeasonInfo.emigration=Emigration
+isisfish.populationSeasonInfo.group=Groupe
+isisfish.populationSeasonInfo.immigration=Immigration
+isisfish.populationSeasonInfo.migration=Migration
+isisfish.populationSeasonInfo.months=Mois
+isisfish.populationSeasonInfo.toString=%1$s saison %2$s-%3$s
+isisfish.populationSeasons.Reproduction=Reproduction
+isisfish.populationSeasons.changeGroup=Changement de groupe
+isisfish.populationSeasons.comments=Commentaires
+isisfish.populationSeasons.computeCoefficient=Calculer le coefficient
+isisfish.populationSeasons.distributionSpawning=Distribution de la reproduction
+isisfish.populationSeasons.noSpacialized=Non spatialis\u00E9
+isisfish.populationSeasons.selectSeason=S\u00E9lectionnez une saison
+isisfish.populationSeasons.showSpacialized=Voir les coefficients spatialis\u00E9s
+isisfish.populationSeasons.spacialized=spatialis\u00E9
+isisfish.populationSeasons.spacialized.visualisation=Coefficients spatialis\u00E9s
+isisfish.populationSeasons.title=Saisons
+isisfish.populationZones.betweenSpawningRecruitmentAreas=Correspondance entre les zones de reproduction et de recrutement
+isisfish.populationZones.selectPopulationAreas=S\u00E9lectionnez les zones des populations
+isisfish.populationZones.selectRecruitmentAreas=S\u00E9lectionnez les zones de recrutement
+isisfish.populationZones.selectSpawningAreas=S\u00E9lectionnez les zones de reproduction
+isisfish.populationZones.title=Zones
+isisfish.port.cell=Maille du port
+isisfish.port.comments=Commentaires
+isisfish.port.name=Nom
+isisfish.preScript.backParameter=Retour aux param\u00E8tres
+isisfish.preScript.title=Script de pr\u00E9-simulation
+isisfish.queue.clearDone=Retirer les simulations termin\u00E9es
+isisfish.queue.id=Identifiant
+isisfish.queue.launcher=Lanceur de simulation
+isisfish.queue.masterplan=Plan de simulation
+isisfish.queue.notstarted=Non d\u00E9marr\u00E9
+isisfish.queue.plan=Plan
+isisfish.queue.progression=Progression
+isisfish.queue.restartSimulation=Red\u00E9marrer
+isisfish.queue.showLog=Voir les logs de la simulation
+isisfish.queue.simulationLaunch=Lanceur de la queue des simulations
+isisfish.queue.status=\u00C9tat
+isisfish.queue.stopSimulation=Arr\u00EAter la simulation
+isisfish.queue.title=Queue
+isisfish.result.abundance=Abondance
+isisfish.result.add=Ajouter un r\u00E9sultat
+isisfish.result.begin.simulation=En d\u00E9but de simulation \:
+isisfish.result.capture=Capturer
+isisfish.result.capture.metier=Capturer par m\u00E9tier
+isisfish.result.choose.simulation=Choisir une simulation
+isisfish.result.datas=Donn\u00E9es
+isisfish.result.dimension=Dimension
+isisfish.result.end.simulation=En fin de Simulation\:
+isisfish.result.export=Export
+isisfish.result.export.file=Exporter un fichier texte
+isisfish.result.file=Fichier
+isisfish.result.graph=Graphe
+isisfish.result.map=Carte
+isisfish.result.new.window=Ouvrir une nouvelle fen\u00EAtre
+isisfish.result.quit=Quitter
+isisfish.result.reject.metier=Rejet par metier
+isisfish.result.remove.simulation=Supprimer Simulation
+isisfish.result.show.simulation.log=Voir les logs
+isisfish.result.statusBar=\
+isisfish.result.stress.metier=Effort par metier
+isisfish.result.summary=R\u00E9sum\u00E9
+isisfish.result.title=R\u00E9sultat
+isisfish.result.unload.metier=Debarquement par metier
+isisfish.resultChoice.save=R\u00E9sultats \u00E0 sauvegarder
+isisfish.resultChoice.saved=R\u00E9sultats sauvegard\u00E9
+isisfish.resultChoice.title=Choix de r\u00E9sultats
+isisfish.script.check=V\u00E9rifier
+isisfish.script.check.tooltip=V\u00E9rifie la synthaxe du script
+isisfish.script.commit=Commit
+isisfish.script.commit.tooltip=Committer le script sur le serveur SVN
+isisfish.script.compilation.failed=%s
+isisfish.script.compilation.ok=Compilation r\u00E9ussie.\n--------------------\n\n%s
+isisfish.script.compilingfile=Compilation de %s...
+isisfish.script.copy=Copier
+isisfish.script.copy.tooltip=Copier la s\u00E9lection courante (Ctrl-c)
+isisfish.script.cut=Couper
+isisfish.script.cut.tooltip=Couper la s\u00E9lection courante (Ctrl-x)
+isisfish.script.evaluate=\u00C9valuer
+isisfish.script.evaluate.tooltip=Lance le script (doit contenir une methode main() pour fonctionner)
+isisfish.script.export=Exporter
+isisfish.script.export.checkAll=Tout (d\u00E9-)s\u00E9lectionner
+isisfish.script.export.chooseDir=...
+isisfish.script.export.tooltip=Exporter les scripts s\u00E9lectionn\u00E9s vers une archive zip
+isisfish.script.export.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts \u00E0 exporter
+isisfish.script.export.tooltip.chooseDir=Choisir le r\u00E9pertoire o\u00F9 exporter les scripts
+isisfish.script.import=Importer des scripts depuis une archive zip
+isisfish.script.import.cancel=Annuler
+isisfish.script.import.checkAll=Tout (d\u00E9-)s\u00E9lectionner
+isisfish.script.import.import=Importer
+isisfish.script.import.labelAdd=Le(s) fichier(s) suivant(s) sera(ont) ajout\u00E9(s), Confirmer l'ajout
+isisfish.script.import.labelOverwrite=Le(s) fichier(s) suivant(s) existe(nt) d\u00E9j\u00E0, Confirmer pour l'\u00E9crasement
+isisfish.script.import.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts \u00E0 importer
+isisfish.script.javadoc.ok=Javadoc g\u00E9n\u00E9r\u00E9e avec succ\u00E8s\n---------------------------\n\n%s
+isisfish.script.menu.checkAllSyntax=V\u00E9rifier tous les scripts
+isisfish.script.menu.checkSyntax=V\u00E9rifier la syntaxe
+isisfish.script.menu.code=Code
+isisfish.script.menu.commit=Commiter des scripts sur le serveur
+isisfish.script.menu.copy=Copier
+isisfish.script.menu.cut=Couper
+isisfish.script.menu.deleteLocaly=Supprimer localement
+isisfish.script.menu.deleteLocalyServer=Supprimer localement et sur le serveur
+isisfish.script.menu.diff=Voir les diff\u00E9rences avec la version du serveur
+isisfish.script.menu.edit=\u00C9dition
+isisfish.script.menu.evaluate=Evaluer
+isisfish.script.menu.file=Fichier
+isisfish.script.menu.javadocgenerate=G\u00E9n\u00E9rer la javadoc
+isisfish.script.menu.javadocgenerated=Javadoc g\u00E9n\u00E9r\u00E9e dans %s
+isisfish.script.menu.javadocgenerating=Javadoc en cours de g\u00E9n\u00E9ration dans %s...
+isisfish.script.menu.javadocshow=Afficher la javadoc
+isisfish.script.menu.new=Nouveau
+isisfish.script.menu.paste=Coller
+isisfish.script.menu.save=Sauver
+isisfish.script.menu.txtExport=Exporter
+isisfish.script.menu.txtImport=Importer
+isisfish.script.menu.txtNewAnalysePlan=Nouveau plan d'analyse
+isisfish.script.menu.txtNewEquationModel=Nouvelle formule
+isisfish.script.menu.txtNewExport=Nouveau script d'export
+isisfish.script.menu.txtNewRule=Nouvelle r\u00E8gle
+isisfish.script.menu.txtNewScript=Nouveau script
+isisfish.script.menu.txtNewSensitivity=Nouveau calculateur de sensibilit\u00E9
+isisfish.script.menu.txtNewSensitivityExport=Nouvel export de sensibilit\u00E9
+isisfish.script.menu.txtNewSimulator=Nouveau simulateur
+isisfish.script.menu.txtVCS=Serveur
+isisfish.script.menu.update=Synchronisation
+isisfish.script.new=Nouveau
+isisfish.script.new.tooltip=Cr\u00E9e un nouveau script
+isisfish.script.paste=Coller
+isisfish.script.paste.tooltip=Colle la s\u00E9lection courante (Ctrl-v)
+isisfish.script.save=Sauver
+isisfish.script.save.tooltip=Sauve le script
+isisfish.script.title=Editeur de scripts
+isisfish.season.toString=saison %1$s-%2$s
+isisfish.selectivity.equation=Equation
+isisfish.selectivity.selectPopulation=S\u00E9lectionnez une population
+isisfish.selectivity.title=S\u00E9lectivit\u00E9
+isisfish.sens.backParameter=Retour aux param\u00E8tres
+isisfish.sens.title=Plan de simulation
+isisfish.sensitivity.coefficient=Coefficient (en %)
+isisfish.sensitivity.comment=Commentaires
+isisfish.sensitivity.continue=Facteur continu
+isisfish.sensitivity.discret=Facteur discret
+isisfish.sensitivity.displaysecondpass=Afficher les r\u00E9sultats
+isisfish.sensitivity.equation.variable.action=Action
+isisfish.sensitivity.equation.variable.coefficient=Coef (en %)
+isisfish.sensitivity.equation.variable.name=Nom
+isisfish.sensitivity.equation.variable.operator=Op\u00E9rateur
+isisfish.sensitivity.equation.variable.value=Valeur
+isisfish.sensitivity.export=Export
+isisfish.sensitivity.factor=Facteur
+isisfish.sensitivity.factors=Facteurs
+isisfish.sensitivity.firstValue=Premi\u00E8re valeur
+isisfish.sensitivity.increment=Cardinalit\u00E9
+isisfish.sensitivity.lastValue=Derni\u00E8re valeur
+isisfish.sensitivity.methodfactornotsupported=La m\u00E9thode de sensibilit\u00E9 choisie g\u00E8re les cardinalit\u00E9s des facteurs
+isisfish.sensitivity.name=Nom du facteur
+isisfish.sensitivity.operator=Op\u00E9rateur
+isisfish.sensitivity.secondpass=Analyse des r\u00E9sultats
+isisfish.sensitivity.secondpass.title=Analyse des r\u00E9sultats
+isisfish.sensitivity.select=M\u00E9thode
+isisfish.sensitivity.selectDiscretNumber=Nombre de facteurs
+isisfish.sensitivity.title=Analyse de sensibilit\u00E9
+isisfish.sensitivity.validDiscretNumber=Valider
+isisfish.sensitivity.value=Valeur
+isisfish.sensitivityChooser.title=M\u00E9thode de la sensibilit\u00E9
+isisfish.server.ssh.generateKey.title=G\u00E9n\u00E9rer une cl\u00E9 SSH
+isisfish.setOfVessels.comments=Commentaires
+isisfish.setOfVessels.fixedCosts=Co\u00FBts fixes
+isisfish.setOfVessels.name=Nom
+isisfish.setOfVessels.numberOfVessels=Nombre de navires
+isisfish.setOfVessels.technicalEfficiency=\u00C9fficacit\u00E9 technique
+isisfish.setOfVessels.title=Caract\u00E9ristiques
+isisfish.setOfVessels.vesselType=Type de navire
+isisfish.simpleResult.more.information=Cliquer sur une cellule pour plus d'informations...
+isisfish.simulation.log.console.title=Console de log simulation '%1$s'
+isisfish.simulation.log.showConsole=affichage de la console de log pour la simulation %1$s
+isisfish.simulation.menu.import=Restaurer les param\u00E8tres d'une simulation
+isisfish.simulation.menu.save=Sauver les param\u00E8tres de la simulation
+isisfish.simulation.menu.simulation=Simulation
+isisfish.simulation.name=Nom de la simulation
+isisfish.simulation.remote.message.connection=Connexion \u00E0 Caparmor
+isisfish.simulation.remote.message.deletingfiles=Suppression des fichiers de simulation
+isisfish.simulation.remote.message.downloadresults=T\u00E9l\u00E9chargement des r\u00E9sultats
+isisfish.simulation.remote.message.upload=Upload de la simulation
+isisfish.simulation.remote.message.waitingstart=Attente du d\u00E9marrage de la simulation
+isisfish.simulation.restarting=Red\u00E9marrage...
+isisfish.simulation.title=Lanceur de simulation
+isisfish.simulator.launcher.inprocess=dans le m\u00EAme processus
+isisfish.simulator.launcher.remote=sur le serveur Caparmor
+isisfish.simulator.launcher.subprocess=dans un sous processus
+isisfish.simulator.simulaction.badid=Impossible de lancer la simulation '%s' \: l'identifiant existe d\u00E9j\u00E0 \!
+isisfish.simulator.ssh.configuration.connecting=Connexion en cours
+isisfish.simulator.ssh.configuration.connectingpk=Connexion en cours (avec cl\u00E9 publique)
+isisfish.simulator.ssh.configuration.connection=Information de connexion
+isisfish.simulator.ssh.configuration.connectionerror=Connexion impossible (%s)
+isisfish.simulator.ssh.configuration.connectionok=Connect\u00E9 avec succ\u00E8s
+isisfish.simulator.ssh.configuration.environment=Configuration sur Caparmor
+isisfish.simulator.ssh.configuration.freespace=Espace disque utilis\u00E9 \:
+isisfish.simulator.ssh.configuration.freespace.confirmdelete=Attention, la suppression du dossier '%s' est irr\u00E9versible.\nConfirmez-vous la suppression de son contenu ?
+isisfish.simulator.ssh.configuration.freespace.label=Taille de %s \: %s
+isisfish.simulator.ssh.configuration.invalidpassphrase=Passphrase invalide
+isisfish.simulator.ssh.configuration.keygenerate=G\u00E9n\u00E9rer
+isisfish.simulator.ssh.configuration.status=Statut
+isisfish.simulator.ssh.configuration.test=Tester la configuration
+isisfish.simulator.ssh.configuration.title=Configuration du lanceur Caparmor
+isisfish.simulator.subprocess.readoutput.error=
+isisfish.species.age=Age
+isisfish.species.cee=CEE
+isisfish.species.comments=Commentaires
+isisfish.species.length=Longueur
+isisfish.species.name=Nom des esp\u00E8ces
+isisfish.species.rubbinCode=Code Rubbin
+isisfish.species.scientificName=Nom scientifique
+isisfish.species.structured=Structur\u00E9
+isisfish.ssh.askpassphrase.message=Entrez la passphrase pour la cl\u00E9 '%s' \:
+isisfish.ssh.askpassphrase.title=D\u00E9verrouillage de cl\u00E9 SSH
+isisfish.ssh.askpassphrase.wrongpassphrase=Mauvaise cl\u00E9, entrez une nouvelle passphrase '%s' \:
+isisfish.strategy.comments=Commentaires
+isisfish.strategy.inactivity=Equation d'inactivit\u00E9
+isisfish.strategy.inactivityEquationUsed=Utiliser une \u00E9quation d'inactivit\u00E9
+isisfish.strategy.name=Nom
+isisfish.strategy.proportionSetOfVessels=Proportion de la flottille
+isisfish.strategy.title=Caract\u00E9ristiques
+isisfish.strategyMonthInfo.metier=M\u00E9tier
+isisfish.strategyMonthInfo.minInactivityDays=Jour minimums d'inactivit\u00E9
+isisfish.strategyMonthInfo.numberOfTrips=Nombre de trajets
+isisfish.strategyMonthInfo.proportion=Proportion
+isisfish.strategyMonthInfo.title=Saisie des mois
+isisfish.strategyMonthInfo.toString=%1$s %2$s
+isisfish.timeUnit.day=Jour
+isisfish.timeUnit.hours=Heures
+isisfish.tray.simulation=Isis-fish - %1$s \: %2$s/%3$s
+isisfish.tray.simulation.multi=Isis-fish - %s / %s
+isisfish.tray.simulation.no=Isis-fish - Pas de simulation
+isisfish.tripType.comments=Commentaires
+isisfish.tripType.duration=Dur\u00E9e
+isisfish.tripType.minTime=Temps minimal entre deux voyages
+isisfish.tripType.name=Nom
+isisfish.vcs.ask.passphrase=Entrez votre passphrase (si votre clef ssh en contient une).
+isisfish.vcs.ask.passphrase.title=Demande de passe phrase
+isisfish.vcs.commit=Message de sauvegarde
+isisfish.vcs.commit.cancel=annuler
+isisfish.vcs.commit.label=Entrer quelques mots concernant la modification des scripts
+isisfish.vcs.commit.ok=confirmer
+isisfish.vcs.factory.cantinstanciate=Can't instanciate wanted VCS (%s), use default
+isisfish.vcs.howto.save.key=Comment enregister sa clef publique ssh aupr\u00E8s du labs
+isisfish.vcs.init.notfoundcantdownload=La base de donn\u00E9es pour la version %s n'a ni pu \u00EAtre trouv\u00E9e, ni t\u00E9l\u00E9charg\u00E9e.\nVous devez la t\u00E9l\u00E9charger manullement \u00E0 partir du site d'Isis-Fish.
+isisfish.vcs.init.wrongprotocol=Votre base de donn\u00E9es locale \: %s n'utilise pas un protocole correct.\nVoulez-vous faire une sauvegarde de cette base et r\u00E9cup\u00E9rer une meilleure version ?
+isisfish.vcs.save.key=Acc\u00E9der au labs pour enregister votre clef publique ssh
+isisfish.vcs.switchprotocol.confirm=Le protocole d'acc\u00E8s au d\u00E9p\u00F4t des scripts a chang\u00E9.\nVoulez-vous changer vers le nouveau d\u00E9p\u00F4t ?
+isisfish.vcs.switchtag.warningconflict=Votre base de donn\u00E9es a \u00E9t\u00E9 mise \u00E0 jour mais les fichiers suivants sont en conflit, merci de les v\u00E9rifier \:
+isisfish.vcs.switchversion.confirm=Vous n'utilisez pas le d\u00E9p\u00F4t correct pour votre version d'Isis-Fish \: %s.\nVoulez-vous changer de d\u00E9p\u00F4t ?
+isisfish.vcs.update=R\u00E9sultats de la synchronisation avec le serveur
+isisfish.vcs.update.cancel=annuler
+isisfish.vcs.update.checkAll=(de)-select tout
+isisfish.vcs.update.local=Systeme local
+isisfish.vcs.update.local.modified=Fichiers modifi\u00E9s
+isisfish.vcs.update.local.outofdateAndModified=Fichiers localement modifi\u00E9s en conflit avec le serveur
+isisfish.vcs.update.local.tooltip.modified=Fichiers localement modifi\u00E9s \n(confirmer pour revenir \u00E0 la version avant modification ou soum\u00EAtre au serveur)
+isisfish.vcs.update.local.tooltip.outofdateAndModified=Fichiers localement modifi\u00E9s mais ayant une version plus r\u00E9cente sur le serveur\n (confirmer pour revenir \u00E0 la version avant modification ou r\u00E9cup\u00E9rer la nouvelle version du serveur)
+isisfish.vcs.update.local.tooltip.unversionned=Fichiers uniquement pr\u00E9sents sur votre systeme \n(confirmer pour les enregister sur le serveur)
+isisfish.vcs.update.local.unversionned=Nouveaux fichiers
+isisfish.vcs.update.ok=continuer
+isisfish.vcs.update.remote=Serveur distant
+isisfish.vcs.update.remote.missing=Nouveaux fichiers
+isisfish.vcs.update.remote.outofdate=Fichiers plus r\u00E9cents sur le serveur
+isisfish.vcs.update.remote.tooltip.missing=Nouveaux fichiers uniquement pr\u00E9sents sur le serveur \n(confirmer pour les r\u00E9cup\u00E9rer)
+isisfish.vcs.update.remote.tooltip.outofdate=Fichiers dont il existe une version plus r\u00E9cente sur le serveur \n(confirmer pour les r\u00E9cup\u00E9rer)
+isisfish.vcs.update.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les fichiers (\u00E0 action unique) que vous voulez traiter
+isisfish.vcs.update.tooltip.local=vcs.update.tooltip.local
+isisfish.vcs.update.tooltip.remote=vcs.update.tooltip.remote
+isisfish.vcs.update.warningconflict=Votre base de donn\u00E9es a \u00E9t\u00E9 mise \u00E0 jour\nmais les fichiers suivants sont en conflit, merci de les v\u00E9rifier \:\n
+isisfish.vcs.updateconfirm=Confirmation des ope\u00E9rations de synchronisation avec le serveur
+isisfish.vcs.updateconfirm.cancel=annuler
+isisfish.vcs.updateconfirm.checkAll=(de)-select tout
+isisfish.vcs.updateconfirm.label=Confirmer les op\u00E9rations qui pourraient \u00E9craser vos fichiers
+isisfish.vcs.updateconfirm.label2='Etes vous sur de vouloir effectuer ces op\u00E9rations ?'
+isisfish.vcs.updateconfirm.ok=confirmer
+isisfish.vcs.updateconfirm.tooltip.checkAll=(D\u00E9-)S\u00E9lectionner tous les scripts que vous voulez traiter
+isisfish.vcs.updaterepository.confirm=Votre d\u00E9p\u00F4t des scripts n'est pas \u00E0 jour. Voulez-vous mettre \u00E0 jour les fichiers suivants ?
+isisfish.vcs.vcssvn.add.error=Impossible d'ajouter un fichier
+isisfish.vcs.vcssvn.add.errorreadonly=Vous ne pouver pas ajouter de fichier, ce d\u00E9p\u00F4t est en lecture seule \!
+isisfish.vcs.vcssvn.checkProtocol.error=Impossible d'obtenir l'adresse correspondant au d\u00E9p\u00F4t local
+isisfish.vcs.vcssvn.checkProtocol.relocate=Transfert du d\u00E9p\u00F4t %s de %s vers %s
+isisfish.vcs.vcssvn.checkout.error=Impossible de mettre \u00E0 jour
+isisfish.vcs.vcssvn.cleanup.error=Impossible de d\u00E9verrouiller la copie locale
+isisfish.vcs.vcssvn.commit.error=Impossible de commiter
+isisfish.vcs.vcssvn.commit.errorreadonly=Vous ne pouvez pas commiter, le d\u00E9p\u00F4t est en lecture seule
+isisfish.vcs.vcssvn.delete.error=Impossible de supprimer des fichiers
+isisfish.vcs.vcssvn.delete.errorreadonly=Vous ne pouvez pas supprimer ce fichier, le d\u00E9p\u00F4t est en lecture seule
+isisfish.vcs.vcssvn.diff.error=Impossible d'obtenir le diff
+isisfish.vcs.vcssvn.gettag.error=Erreur lors de la r\u00E9cup\u00E9ration de l'adresse du d\u00E9p\u00F4t local
+isisfish.vcs.vcssvn.getupdate.error=Impossible d'obtenir le statut des fichiers
+isisfish.vcs.vcssvn.global.filelocalandremotestatus=Le statut du fichier %s est (l\:%s/d\:%s)
+isisfish.vcs.vcssvn.global.filestatus=Le statut de %s est %s
+isisfish.vcs.vcssvn.global.foundUpdatedFile=Ajout de %s comme fichier mis \u00E0 jour
+isisfish.vcs.vcssvn.global.torevision=\u00C0 la r\u00E9vision \: %d
+isisfish.vcs.vcssvn.isconnected.switchoff=Impossible de se connecter au serveur, passage en mode d\u00E9connect\u00E9 \: %s
+isisfish.vcs.vcssvn.isconnected.switchto=Connexion au serveur disponible, passage en mode connect\u00E9 \: %s
+isisfish.vcs.vcssvn.isonremote.error=Le fichier %s n'est pas sur le serveur
+isisfish.vcs.vcssvn.istag.notexist=Le tag %s n'existe pas
+isisfish.vcs.vcssvn.isuptodate.error=Impossible d'obtenir le statut de fichier
+isisfish.vcs.vcssvn.list.error=Impossible de lister
+isisfish.vcs.vcssvn.localstatus.error=Impossible d'obtenir le statut local de fichier
+isisfish.vcs.vcssvn.remotestatus.error=Impossible d'obtenir le statut distant de fichier
+isisfish.vcs.vcssvn.setTag.error=Erreur lors de la r\u00E9cup\u00E9ration de l'adresse du d\u00E9p\u00F4t local
+isisfish.vcs.vcssvn.settag.switchfromto=Switch du tag du d\u00E9p\u00F4t de %s \u00E0 %s
+isisfish.vcs.vcssvn.update.error=Impossible de mettre \u00E0 jour
+isisfish.vcs.vcssvn.update.notinlocal=Impossible de mettre \u00E0 jour des fichiers qui ne sont pas pas dans le d\u00E9p\u00F4t
+isisfish.versionStorage.removed=Supprim\u00E9
+isisfish.vesselType.activityRange=Intervalle d'activit\u00E9
+isisfish.vesselType.comments=Commentaires
+isisfish.vesselType.fuelCost=Co\u00FBt d'un trajet en fuel
+isisfish.vesselType.length=Longueur
+isisfish.vesselType.maxDuration=Dur\u00E9e maximale du trajet
+isisfish.vesselType.miniCrew=Taille minimale d'\u00E9quipage
+isisfish.vesselType.name=Nom
+isisfish.vesselType.speed=Vitesse
+isisfish.welcome.menu.about=\u00C0 propos
+isisfish.welcome.menu.api=API
+isisfish.welcome.menu.close=Fermer
+isisfish.welcome.menu.configuration=Configuration
+isisfish.welcome.menu.configuration.sshlauncher=Configuration Caparmor
+isisfish.welcome.menu.configuration.vcs=Configuration vcs
+isisfish.welcome.menu.file=Fichier
+isisfish.welcome.menu.frame=Fen\u00EAtre
+isisfish.welcome.menu.help=Aide
+isisfish.welcome.menu.help.isisfish=Site d'Isis-Fish
+isisfish.welcome.menu.help.isisfishapi=API Isis-Fish
+isisfish.welcome.menu.help.javaapi=API Java
+isisfish.welcome.menu.help.matrixapi=API NuitonMatrix
+isisfish.welcome.menu.help.topiaapi=API ToPIA
+isisfish.welcome.menu.input=Saisie
+isisfish.welcome.menu.monitor=Fen\u00EAtre de logs
+isisfish.welcome.menu.queue=Liste des simulations
+isisfish.welcome.menu.result=R\u00E9sultat
+isisfish.welcome.menu.script=Script
+isisfish.welcome.menu.simulation=Lanceur de simulations
+isisfish.welcome.menu.synchro=Synchronisation Serveur
+isisfish.welcome.title=Simulation Ifremer
+isisfish.wizardGroupCreation.allGroupsSameSize=Tous les groupes ont la m\u00EAme taille
+isisfish.wizardGroupCreation.allValues=Entrer toutes les valeurs
+isisfish.wizardGroupCreation.computedGrowthCurve=Calcul\u00E9 par une courbe de croissance
+isisfish.wizardGroupCreation.firstAge=Premier age
+isisfish.wizardGroupCreation.firstAgeHelp=Premier age \= age minimal
+isisfish.wizardGroupCreation.firstGroup=Premier groupe
+isisfish.wizardGroupCreation.firstLength=Taille min premi\u00E8re classe
+isisfish.wizardGroupCreation.firstLengthHelp=Taille min premi\u00E8re classe \= taille minimale du premier groupe
+isisfish.wizardGroupCreation.gapBetweenGroupsHelp=L'interval entre chaque groupe est de 1 an
+isisfish.wizardGroupCreation.groupWidth=Longueur du groupe
+isisfish.wizardGroupCreation.groupWidthHelp=Longueur du groupe \= Longueur du groupe
+isisfish.wizardGroupCreation.lastAge=Dernier age
+isisfish.wizardGroupCreation.lastAgeHelp=Dernier age \= age maximal
+isisfish.wizardGroupCreation.maxGroupsLength=Taille maximale de groupes
+isisfish.wizardGroupCreation.maxGroupsLengthHelp=Un point-virgule ';' doit s\u00E9parer les tailles maximales de chaque groupe
+isisfish.wizardGroupCreation.numberGroup=Nombre de groupe
+isisfish.wizardGroupCreation.numberGroupHelp=Nombre de groupe \= Nombre de groupe voulu
+isisfish.wizardGroupCreation.numberGroups=Nombre de groupes
+isisfish.wizardGroupCreation.populationCharacteristics=Entrez les caract\u00E9ristiques de la population
+isisfish.wizardGroupCreation.selectGroupLengthType=Choisir la longueur du groupe
+isisfish.wizardGroupCreation.timeStep=Pas de temps (en mois)
+isisfish.wizardGroupCreation.title=Cr\u00E9ation du groupe
+isisfish.wizardGroupCreation.undefinedGrowthEquation=L'\u00E9quation utilis\u00E9e est la courbe de croissance de la population. Elle doit \u00EAtre pr\u00E9alablement d\u00E9finie.
+isisfish.zone.cells=Cellules de la zone
+isisfish.zone.comments=Commentaires
+isisfish.zone.name=Nom
+region\ already\ exists\ %s\ use\ 'force'\ argument\ to\ force\ overwrite=
+simulate\ %s\ with\ file\ %s=
1
0
r3155 - isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/filter
by chatellier@users.labs.libre-entreprise.org 04 Mar '11
by chatellier@users.labs.libre-entreprise.org 04 Mar '11
04 Mar '11
Author: chatellier
Date: 2011-03-04 12:41:46 +0000 (Fri, 04 Mar 2011)
New Revision: 3155
Log:
Fix compil issue
Modified:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/filter/SimulationFilterPanelUI.jaxx
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/filter/SimulationFilterPanelUI.jaxx
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/filter/SimulationFilterPanelUI.jaxx 2011-03-03 17:29:37 UTC (rev 3154)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/simulator/filter/SimulationFilterPanelUI.jaxx 2011-03-04 12:41:46 UTC (rev 3155)
@@ -105,14 +105,12 @@
text='isisfish.filter.simulation.simulationStart'
toolTipText='isisfish.filter.simulation.tooltip.simulationStart'/>
<org.jdesktop.swingx.JXDatePicker
- id="simulationStart"
- columns='7' onFocusLost="doCheck()"/>
+ id="simulationStart" onFocusLost="doCheck()"/>
<JLabel labelFor='{simulationEnd}'
text='isisfish.filter.simulation.simulationEnd'
toolTipText='isisfish.filter.simulation.tooltip.simulationEnd'/>
<org.jdesktop.swingx.JXDatePicker
- id="simulationEnd"
- columns='7' onFocusLost="doCheck()"/>
+ id="simulationEnd" onFocusLost="doCheck()"/>
</HBox>
</cell>
</row>
1
0
r3154 - isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/config
by chatellier@users.labs.libre-entreprise.org 03 Mar '11
by chatellier@users.labs.libre-entreprise.org 03 Mar '11
03 Mar '11
Author: chatellier
Date: 2011-03-03 17:29:37 +0000 (Thu, 03 Mar 2011)
New Revision: 3154
Log:
ho !!!
Modified:
isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/config/SSHLauncherConfigAction.java
Modified: isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/config/SSHLauncherConfigAction.java
===================================================================
--- isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/config/SSHLauncherConfigAction.java 2011-03-03 16:38:12 UTC (rev 3153)
+++ isis-fish/branches/3.3.1/src/main/java/fr/ifremer/isisfish/ui/config/SSHLauncherConfigAction.java 2011-03-03 17:29:37 UTC (rev 3154)
@@ -65,7 +65,7 @@
public class SSHLauncherConfigAction {
/** Class logger. */
- private static Log log = LogFactory.getLog(InputAction.class);
+ private static Log log = LogFactory.getLog(SSHLauncherConfigAction.class);
protected SSHLauncherConfigUI configUI;
1
0