Author: echatellier Date: 2011-12-10 11:12:43 +0100 (Sat, 10 Dec 2011) New Revision: 3563 Url: http://forge.codelutin.com/repositories/revision/isis-fish/3563 Log: #591 : AS - Pas possible d'avoir plusieurs facteurs TargetFactor Modified: trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/renderer/TripTypeListRenderer.java Modified: trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/IsisConfig.java 2011-12-10 10:12:43 UTC (rev 3563) @@ -119,7 +119,7 @@ * migration de donnees demande automatiquement un changement de version * d'application. */ - protected final static Version version = new Version(4, 0, 0, 0); + protected final static Version version = new Version(4, 0, 0, 1); protected final static Version majorVersion = new Version(version.getNumber(0)); protected final static Version databaseVersion = new Version( Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/GearUI.jaxx 2011-12-10 10:12:43 UTC (rev 3563) @@ -73,10 +73,10 @@ <JPanel id="body"> <JTabbedPane constraints='BorderLayout.CENTER' id="gearTab"> <tab title='isisfish.gear.title'> - <GearTabUI id="gearTabUI" bean="{getBean()}" active="{isActive()}" constructorParams='this' /> + <GearTabUI id="gearTabUI" bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this' /> </tab> <tab title='isisfish.selectivity.title'> - <SelectivityUI id="selectivityUI" bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <SelectivityUI id="selectivityUI" bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> </JTabbedPane> </JPanel> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoSpeciesUI.jaxx 2011-12-10 10:12:43 UTC (rev 3563) @@ -44,6 +44,7 @@ java.beans.PropertyChangeEvent; java.beans.PropertyChangeListener; java.util.ArrayList + java.util.List java.awt.Dimension javax.swing.DefaultComboBoxModel </import> @@ -61,16 +62,10 @@ 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(); - setTargetSpeciesModel(); - } + setSeasonModel(); setSpecies(null); setMetierSeasonInfo(null); + setTableTargetSpeciesModel(); } }); } @@ -81,7 +76,11 @@ } protected void setSeasonModel() { - java.util.List<MetierSeasonInfo> metierSeasonInfo = getBean().getMetierSeasonInfo(); + List<MetierSeasonInfo> metierSeasonInfo = null; + + if (getBean() != null) { + metierSeasonInfo = getBean().getMetierSeasonInfo(); + } MetierSeasonInfoComboModel seasonModel = new MetierSeasonInfoComboModel(metierSeasonInfo); fieldMetierSeasonInfo.setModel(seasonModel); } @@ -96,7 +95,7 @@ } protected void setTargetSpeciesModel() { - java.util.List<Species> species = getFisheryRegion().getSpecies(); + List<Species> species = getFisheryRegion().getSpecies(); SpeciesComboModel fieldTargetSpeciesModel = new SpeciesComboModel(species); fieldTargetSpecies.setModel(fieldTargetSpeciesModel); } @@ -108,19 +107,21 @@ protected void setTableTargetSpeciesModel() { List<TargetSpecies> targetSpecies = new ArrayList<TargetSpecies>(); - - // SpeciesTargetSpecies can be null durring region creation - if (getMetierSeasonInfo().getSpeciesTargetSpecies() != null) { - // move collection to list - // and add all entity to verifier - for (TargetSpecies oneTargetSpecies : getMetierSeasonInfo().getSpeciesTargetSpecies()) { - targetSpecies.add(oneTargetSpecies); - getSaveVerifier().addCurrentEntity(oneTargetSpecies); - oneTargetSpecies.addPropertyChangeListener(new PropertyChangeListener() { - public void propertyChange(PropertyChangeEvent evt) { - changeModel.setStayChanged(true); - } - }); + + if (getBean() != null && getMetierSeasonInfo() != null) { + // SpeciesTargetSpecies can be null durring region creation + if (getMetierSeasonInfo().getSpeciesTargetSpecies() != null) { + // move collection to list + // and add all entity to verifier + for (TargetSpecies oneTargetSpecies : getMetierSeasonInfo().getSpeciesTargetSpecies()) { + targetSpecies.add(oneTargetSpecies); + getSaveVerifier().addCurrentEntity(oneTargetSpecies); + oneTargetSpecies.addPropertyChangeListener(new PropertyChangeListener() { + public void propertyChange(PropertyChangeEvent evt) { + changeModel.setStayChanged(true); + } + }); + } } } @@ -170,7 +171,7 @@ <cell fill='horizontal' weightx='1.0'> <JComboBox id="fieldMetierSeasonInfo" onItemStateChanged='metierSeasonInfoChanged()' renderer="{new fr.ifremer.isisfish.ui.input.renderer.MetierSeasonInfoComboRenderer()}" - enabled='{isActive() && !changeModel.isChanged()}'/> + enabled='{isActive() && (isSensitivity() || !changeModel.isChanged() ) }'/> </cell> </row> <row> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierSeasonInfoZoneUI.jaxx 2011-12-10 10:12:43 UTC (rev 3563) @@ -238,7 +238,7 @@ <JLabel text="isisfish.metierSeasonInfoZone.selectSeason" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='1.0'> - <JComboBox id="metierSeasonInfoCombo" onItemStateChanged='seasonChanged()' enabled='{isActive() && !changeModel.isChanged()}' + <JComboBox id="metierSeasonInfoCombo" onItemStateChanged='seasonChanged()' enabled='{isActive() && (isSensitivity() || !changeModel.isChanged() ) }' renderer="{new fr.ifremer.isisfish.ui.input.renderer.MetierSeasonInfoComboRenderer()}" /> </cell> </row> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/MetierUI.jaxx 2011-12-10 10:12:43 UTC (rev 3563) @@ -41,14 +41,6 @@ installChangeListener(metierTab); } -/*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 - getSaveVerifier().addCurrentPanel(metierSeasonSpeciesUI, metierSeasonInfoUI, metierTabUI); -}*/ - @Override public void setLayer(boolean active) { super.setLayer(active); @@ -67,13 +59,13 @@ <JPanel id="body"> <JTabbedPane id="metierTab" constraints='BorderLayout.CENTER'> <tab title='isisfish.metier.title'> - <MetierTabUI id="metierTabUI" bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <MetierTabUI id="metierTabUI" bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <tab title='isisfish.metierSeasonInfoZone.title'> - <MetierSeasonInfoZoneUI id="metierSeasonInfoUI" bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <MetierSeasonInfoZoneUI id="metierSeasonInfoUI" bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <tab title='isisfish.metierSeasonInfoSpecies.title'> - <MetierSeasonInfoSpeciesUI id="metierSeasonSpeciesUI" bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <MetierSeasonInfoSpeciesUI id="metierSeasonSpeciesUI" bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> </JTabbedPane> </JPanel> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationSeasonsUI.jaxx 2011-12-10 10:12:43 UTC (rev 3563) @@ -264,7 +264,7 @@ </cell> <cell fill='horizontal' weightx='1.0'> <JComboBox id="fieldPopulationSeasonInfoChooser" - onItemStateChanged='seasonChanged()' enabled='{isActive() && !changeModel.isChanged()}' + onItemStateChanged='seasonChanged()' enabled='{isActive() && (isSensitivity() || !changeModel.isChanged() ) }' renderer="{new fr.ifremer.isisfish.ui.input.renderer.PopulationSeasonInfoComboRenderer()}"/> </cell> </row> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/PopulationUI.jaxx 2011-12-10 10:12:43 UTC (rev 3563) @@ -79,39 +79,39 @@ <JTabbedPane id="populationTab"> <!-- Saisie des populations --> <tab title='isisfish.populationBasics.title'> - <PopulationBasicsUI id='populationBasicsUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <PopulationBasicsUI id='populationBasicsUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <!-- Zones --> <tab title='isisfish.populationZones.title'> - <PopulationZonesUI id='populationZoneUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <PopulationZonesUI id='populationZoneUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <!-- Saisons --> <tab title='isisfish.populationSeasons.title'> - <PopulationSeasonsUI id='populationSeasonsUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <PopulationSeasonsUI id='populationSeasonsUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <!-- Saisie des équations --> <tab title='isisfish.populationEquation.title'> - <PopulationEquationUI id='populationEquationUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <PopulationEquationUI id='populationEquationUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <!-- Saisie des reproductions --> <tab title='isisfish.populationRecruitment.title'> - <PopulationRecruitmentUI id='populationRecruitementUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <PopulationRecruitmentUI id='populationRecruitementUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <!-- Saisie des groupes de population --> <tab title='isisfish.populationGroup.title'> - <PopulationGroupUI id='populationGroupUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <PopulationGroupUI id='populationGroupUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <!--Capturabilité --> <tab title='isisfish.populationCapturability.title'> - <PopulationCapturabilityUI id='populationCapturabilityUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <PopulationCapturabilityUI id='populationCapturabilityUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <!-- Migration --> <tab title='isisfish.populationMigration.title'> - <PopulationMigrationUI id='populationMigrationUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <PopulationMigrationUI id='populationMigrationUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <!-- Price --> <tab title='isisfish.populationPrice.title'> - <PopulationPriceUI id='populationPriceUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <PopulationPriceUI id='populationPriceUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> </JTabbedPane> </JPanel> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/SetOfVesselsUI.jaxx 2011-12-10 10:12:43 UTC (rev 3563) @@ -62,13 +62,13 @@ <JPanel id="body"> <JTabbedPane id="setOfVesselsTab"> <tab title='isisfish.setOfVessels.title'> - <SetOfVesselsBasicsUI id='setOfVesselsBasicsUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <SetOfVesselsBasicsUI id='setOfVesselsBasicsUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <tab title='isisfish.effortDescription.title'> - <EffortDescriptionUI id='effortDescriptionUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <EffortDescriptionUI id='effortDescriptionUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <tab title='isisfish.effortDescription.parametersTitle'> - <EffortDescriptionParametersUI id='effortParametersUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <EffortDescriptionParametersUI id='effortParametersUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> </JTabbedPane> </JPanel> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/StrategyUI.jaxx 2011-12-10 10:12:43 UTC (rev 3563) @@ -53,10 +53,10 @@ <JPanel id="body"> <JTabbedPane id="strategyTab"> <tab title='isisfish.strategy.title'> - <StrategyTabUI id='strategyTabUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <StrategyTabUI id='strategyTabUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> <tab title='isisfish.strategyMonthInfo.title'> - <StrategyMonthInfoUI id='strategyMonthInfoUI' bean="{getBean()}" active="{isActive()}" constructorParams='this'/> + <StrategyMonthInfoUI id='strategyMonthInfoUI' bean="{getBean()}" active="{isActive()}" sensitivity="{isSensitivity()}" constructorParams='this'/> </tab> </JTabbedPane> </JPanel> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/renderer/TripTypeListRenderer.java =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/renderer/TripTypeListRenderer.java 2011-12-02 19:03:57 UTC (rev 3562) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/renderer/TripTypeListRenderer.java 2011-12-10 10:12:43 UTC (rev 3563) @@ -71,11 +71,13 @@ index, isSelected, cellHasFocus); TripType tripType = (TripType) value; - if (appendDetails) { - c.setText(tripType.getName() + "(" + tripType.getTripDuration() + ":" - + tripType.getMinTimeBetweenTrip() + ")"); - } else { - c.setText(tripType.getName()); + if (tripType != null) { + if (appendDetails) { + c.setText(tripType.getName() + "(" + tripType.getTripDuration() + ":" + + tripType.getMinTimeBetweenTrip() + ")"); + } else { + c.setText(tripType.getName()); + } } return c;