r4225 - in trunk/src/main/java/fr/ifremer/isisfish: types ui/input/cell ui/input/gear ui/input/population ui/input/port ui/input/setofvessels ui/input/zone
Author: echatellier Date: 2015-05-07 16:16:34 +0000 (Thu, 07 May 2015) New Revision: 4225 Url: http://forge.codelutin.com/projects/isis-fish/repository/revisions/4225 Log: Replace Combobox and Lit by non deprecated Modified: trunk/src/main/java/fr/ifremer/isisfish/types/RangeOfValues.java trunk/src/main/java/fr/ifremer/isisfish/ui/input/cell/CellHandler.java trunk/src/main/java/fr/ifremer/isisfish/ui/input/gear/RangeOfValuesUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationGroupUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationEmigrationUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationImmigrationUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationMigrationUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/port/PortUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/setofvessels/SetOfVesselsBasicsUI.jaxx trunk/src/main/java/fr/ifremer/isisfish/ui/input/zone/ZoneBasicsUI.jaxx Modified: trunk/src/main/java/fr/ifremer/isisfish/types/RangeOfValues.java =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/types/RangeOfValues.java 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/types/RangeOfValues.java 2015-05-07 16:16:34 UTC (rev 4225) @@ -5,7 +5,7 @@ * $Id$ * $HeadURL$ * %% - * Copyright (C) 2006 - 2011 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin, Chatellier Eric + * Copyright (C) 2006 - 2015 Ifremer, Code Lutin, Cédric Pineau, Benjamin Poussin, 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 @@ -58,7 +58,7 @@ protected String type = TYPE_STRING; protected boolean continueRange = false; protected String values = ""; - protected List possibleValues = null; + protected List<Object> possibleValues = null; public RangeOfValues(String typeValue) { setTypeValues(typeValue); @@ -166,9 +166,9 @@ return s; } - public List getPossibleValues() { + public List<Object> getPossibleValues() { if (possibleValues == null) { - possibleValues = new ArrayList(); + possibleValues = new ArrayList<>(); String g = getValues(); Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/cell/CellHandler.java =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/cell/CellHandler.java 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/cell/CellHandler.java 2015-05-07 16:16:34 UTC (rev 4225) @@ -41,6 +41,7 @@ import fr.ifremer.isisfish.map.OpenMapEvents; import fr.ifremer.isisfish.ui.input.InputContentHandler; import fr.ifremer.isisfish.ui.input.InputUI; +import fr.ifremer.isisfish.ui.models.common.GenericComboModel; import fr.ifremer.isisfish.ui.sensitivity.SensitivityTabUI; /** @@ -51,7 +52,7 @@ /** Class logger. */ private static final Log log = LogFactory.getLog(CellHandler.class); - protected boolean cellChanged; + protected boolean init; protected void init(final CellUI cellUI) { super.init(cellUI); @@ -82,6 +83,8 @@ cellUI.addPropertyChangeListener(CellUI.PROPERTY_BEAN, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { + init = true; + GenericComboModel<Cell> cellModel = new GenericComboModel<>(); if (evt.getNewValue() == null) { cellUI.fieldCellName.setText(""); cellUI.fieldCellLatitude.setText(""); @@ -90,16 +93,18 @@ cellUI.fieldCellLand.setSelected(false); } if (evt.getNewValue() != null) { - cellChanged = false; - jaxx.runtime.SwingUtil.fillComboBox(cellUI.fieldCell, cellUI.getFisheryRegion().getCell(), cellUI.getBean()); - cellChanged = true; + //jaxx.runtime.SwingUtil.fillComboBox(cellUI.fieldCell, cellUI.getFisheryRegion().getCell(), cellUI.getBean()); + cellModel.setElementList(cellUI.getFisheryRegion().getCell()); + cellModel.setSelectedItem(cellUI.getBean()); } + cellUI.fieldCell.setModel(cellModel); + init = false; } }); } protected void fieldCellChanged(ItemEvent event) { - if (cellChanged && event.getStateChange() == ItemEvent.SELECTED) { + if (!init && event.getStateChange() == ItemEvent.SELECTED) { Cell c = (Cell)inputContentUI.fieldCell.getSelectedItem(); if (c==null) { return; Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/gear/RangeOfValuesUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/gear/RangeOfValuesUI.jaxx 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/gear/RangeOfValuesUI.jaxx 2015-05-07 16:16:34 UTC (rev 4225) @@ -32,63 +32,58 @@ fr.ifremer.isisfish.entities.Gear java.beans.PropertyChangeEvent; java.beans.PropertyChangeListener + java.util.List java.util.ArrayList + fr.ifremer.isisfish.ui.models.common.GenericComboModel </import> <script><![CDATA[ + boolean init = false; protected void $afterCompleteSetup() { addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { + + GenericComboModel<String> gearParamTypeModel = new GenericComboModel<>(); if (evt.getNewValue() == null) { fieldGearParamPossibleValue.setText(""); + fieldGearParamType.setSelectedItem(null); + fieldGearParamType.setModel(gearParamTypeModel); } if (evt.getNewValue() != null) { - java.util.List<Object> values = new ArrayList<Object>(); + init = true; + + List<String> values = new ArrayList<String>(); for (String value : RangeOfValues.getPossibleTypes()) { values.add(value); } - - init = true; - jaxx.runtime.SwingUtil.fillComboBox(fieldGearParamType, values, getBean().getPossibleValue() == null ? null : getBean().getPossibleValue().getType(), true); + gearParamTypeModel.setElementList(values); + + fieldGearParamType.setModel(gearParamTypeModel); + if (getBean().getPossibleValue() != null) { + fieldGearParamType.setSelectedItem(getBean().getPossibleValue().getType()); + } + init = false; } } }); } -/*public void refresh() { - Gear gear = getSaveVerifier().getEntity(Gear.class); - - // add null before, for second to be considered as a changed event - // otherwize, setBean has no effect - setBean(null); - setBean(gear); - - if (getBean() != 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; - } -}*/ - protected void gearParamChanged() { if (fieldGearParamType.getSelectedItem() != null && !init) { getBean().setPossibleValue(new RangeOfValues(fieldGearParamType.getSelectedItem().toString().concat("[" + fieldGearParamPossibleValue.getText() + "]"))); } } - ]]></script> + ]]></script> <JPanel id='body'> <Table> <row> <cell fill='horizontal' weightx='0.5'> - <JAXXComboBox id="fieldGearParamType" onActionPerformed='gearParamChanged()' enabled='{isActive()}'/> + <JComboBox id="fieldGearParamType" + genericType="String" + onItemStateChanged='gearParamChanged()' enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> <JTextField id="fieldGearParamPossibleValue" text='{getBean().getPossibleValue() == null ? "" : getBean().getPossibleValue().getValues()}' Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationGroupUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationGroupUI.jaxx 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationGroupUI.jaxx 2015-05-07 16:16:34 UTC (rev 4225) @@ -5,7 +5,7 @@ $Id$ $HeadURL$ %% - Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric + Copyright (C) 2009 - 2015 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 @@ -40,11 +40,12 @@ <fr.ifremer.isisfish.entities.PopulationGroup id='populationGroup' javaBean='null'/> <import> - fr.ifremer.isisfish.entities.PopulationGroup; - fr.ifremer.isisfish.entities.Population; - org.nuiton.math.matrix.MatrixND; - java.beans.PropertyChangeEvent; - java.beans.PropertyChangeListener; + fr.ifremer.isisfish.entities.PopulationGroup + fr.ifremer.isisfish.entities.Population + org.nuiton.math.matrix.MatrixND + java.beans.PropertyChangeEvent + java.beans.PropertyChangeListener + fr.ifremer.isisfish.ui.models.common.GenericComboModel </import> <BeanValidator id='validator' context="group" @@ -65,14 +66,17 @@ protected void $afterCompleteSetup() { addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { + + GenericComboModel<PopulationGroup> groupModel = new GenericComboModel<>(); + if (evt.getNewValue() == null) { setPopulationGroup(null); } if (evt.getNewValue() != null) { - if (getBean().getPopulationGroup() != null) { - jaxx.runtime.SwingUtil.fillComboBox(populationGroupPopulationGroupComboBox, getBean().getPopulationGroup(), getPopulationGroup(), true); - } + groupModel.setElementList(getBean().getPopulationGroup()); } + + populationGroupPopulationGroupComboBox.setModel(groupModel); } }); @@ -82,6 +86,7 @@ fieldPopulationGroupMeanWeight.setText(""); fieldPopulationGroupPrice.setText(""); fieldPopulationGroupReproductionRate.setText(""); + fieldPopulationGroupMaturityOgive.setText(""); fieldPopulationGroupAge.setText(""); fieldPopulationGroupMinLength.setText(""); fieldPopulationGroupMaxLength.setText(""); @@ -100,18 +105,6 @@ changeModel.setStayChanged(false); } -/*public void refresh() { - //if (!isActive()) { - setPopGroupNotNull(false); - //} - Population population = getSaveVerifier().getEntity(Population.class); - - // add null before, for second to be considered as a changed event - // otherwize, setBean has no effect - setBean(null); - setBean(population); -}*/ - protected void setNaturalDeathRateMatrix() { try { Population population = getBean(); @@ -149,8 +142,9 @@ <JLabel text="isisfish.common.populationGroup" enabled='{isActive()}'/> </cell> <cell columns='2' fill='horizontal' weightx='1.0'> - <JAXXComboBox id='populationGroupPopulationGroupComboBox' onActionPerformed='populationGroupChanged()' - enabled='{isActive()}'/> + <JComboBox id='populationGroupPopulationGroupComboBox' + genericType="fr.ifremer.isisfish.entities.PopulationGroup" + onActionPerformed='populationGroupChanged()' enabled='{isActive()}'/> </cell> </row> <row> @@ -168,7 +162,7 @@ </cell> <cell columns='2' fill='horizontal' weightx='1.0'> <JTextField id="fieldPopulationGroupMeanWeight" text='{String.valueOf(getPopulationGroup().getMeanWeight())}' - enabled="false" decorator='boxed'/> + enabled='{isActive()}' editable="false" decorator='boxed'/> </cell> </row> <row> @@ -177,7 +171,7 @@ </cell> <cell columns='2' fill='horizontal' weightx='1.0'> <JTextField id="fieldPopulationGroupMaturityOgive" text='{String.valueOf(getPopulationGroup().getMaturityOgive())}' - enabled="false" decorator='boxed'/> + enabled='{isActive()}' editable="false" decorator='boxed'/> </cell> </row> <row> @@ -186,7 +180,7 @@ </cell> <cell columns='2' fill='horizontal' weightx='1.0'> <JTextField id="fieldPopulationGroupReproductionRate" text='{String.valueOf(getPopulationGroup().getReproductionRate())}' - enabled="false" decorator='boxed'/> + enabled='{isActive()}' editable="false" decorator='boxed'/> </cell> </row> <row> @@ -195,7 +189,7 @@ </cell> <cell columns='2' fill='horizontal' weightx='1.0'> <JTextField id="fieldPopulationGroupPrice" text='{String.valueOf(getPopulationGroup().getPrice())}' - enabled="false" decorator='boxed'/> + enabled='{isActive()}' editable="false" decorator='boxed'/> </cell> </row> <row> @@ -205,7 +199,7 @@ <cell columns='2' fill='horizontal' weightx='1.0'> <!-- non editable age field --> <JTextField id="fieldPopulationGroupAge" text='{String.valueOf(getPopulationGroup().getAge())}' - enabled='false' decorator='boxed'/> + enabled='{isActive()}' editable="false" decorator='boxed'/> </cell> </row> <row> @@ -216,13 +210,13 @@ <!-- non editable min length field --> <JTextField id="fieldPopulationGroupMinLength" text='{String.valueOf(getPopulationGroup().getMinLength())}' toolTipText="isisfish.populationGroup.minimumLength" - enabled='false' decorator='boxed' /> + enabled='{isActive()}' editable="false" decorator='boxed' /> </cell> <cell fill='both' weightx='0.5'> <!-- non editable max length field --> <JTextField id="fieldPopulationGroupMaxLength" text='{String.valueOf(getPopulationGroup().getMaxLength())}' toolTipText="isisfish.populationGroup.maximumLength" - enabled='false' decorator='boxed'/> + enabled='{isActive()}' editable="false" decorator='boxed'/> </cell> </row> <row> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationEmigrationUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationEmigrationUI.jaxx 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationEmigrationUI.jaxx 2015-05-07 16:16:34 UTC (rev 4225) @@ -5,7 +5,7 @@ $Id$ $HeadURL$ %% - Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric + Copyright (C) 2009 - 2015 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 @@ -28,10 +28,6 @@ <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'/> - <import> fr.ifremer.isisfish.entities.Population fr.ifremer.isisfish.entities.PopulationGroup @@ -43,6 +39,7 @@ java.beans.PropertyChangeListener org.nuiton.math.matrix.gui.MatrixPanelListener fr.ifremer.isisfish.ui.input.InputAction + fr.ifremer.isisfish.ui.models.common.GenericComboModel </import> <script><![CDATA[ @@ -50,11 +47,15 @@ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { if (evt.getNewValue() == null) { + fieldPopulationMigrationEmigrationCoefficient.setText(""); populationMigrationEmigrationTable.setMatrix(null); } if (evt.getNewValue() != null) { - refreshPanel(); + } + setFieldPopulationMigrationMigrationGroupChooserModel(); + setFieldPopulationMigrationMigrationDepartureZoneChooserModel(); + setAddButton(); } }); } @@ -66,46 +67,37 @@ //setPopInfo(pi); populationMigrationEmigrationTable.setMatrix(getPopInfo().getEmigrationMatrix().copy()); } - -/*public void refresh(){ - Population population = getSaveVerifier().getEntity(Population.class); - - // setBean(null); useless here - setBean(population); - - refreshPanel(); -}*/ - -public void refreshPanel() { - setFieldPopulationMigrationMigrationGroupChooserModel(); - setFieldPopulationMigrationMigrationDepartureZoneChooserModel(); - setAddButton(); -} protected void populationMigrationEmigrationMatrixChanged(MatrixPanelEvent event) { remove.setEnabled(populationMigrationEmigrationTable.getTable().getSelectedRow() != -1); - if (popInfo != null){ + 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() { + GenericComboModel<PopulationGroup> groups = new GenericComboModel<>(); + if (getBean() != null && getBean().getPopulationGroup() != null) { + //jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationEmigrationGroupChooser,getBean().getPopulationGroup(), null, true); + groups.setElementList(getBean().getPopulationGroup()); } + fieldPopulationMigrationEmigrationGroupChooser.setModel(groups); } -protected void setFieldPopulationMigrationMigrationDepartureZoneChooserModel(){ +protected void setFieldPopulationMigrationMigrationDepartureZoneChooserModel() { + GenericComboModel<Zone> zones = new GenericComboModel<>(); if (getBean() != null && getBean().getPopulationZone() != null){ - jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationEmigrationDepartureZoneChooser,getBean().getPopulationZone(), null, true); + //jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationEmigrationDepartureZoneChooser,getBean().getPopulationZone(), null, true); + zones.setElementList(getBean().getPopulationZone()); } + fieldPopulationMigrationEmigrationDepartureZoneChooser.setModel(zones); } -protected void add(){ +protected void add() { getContextValue(InputAction.class).addEmigration( getPopInfo(), (PopulationGroup) fieldPopulationMigrationEmigrationGroupChooser.getSelectedItem(), (Zone) fieldPopulationMigrationEmigrationDepartureZoneChooser.getSelectedItem(), Double.parseDouble(fieldPopulationMigrationEmigrationCoefficient.getText())); - populationMigrationEmigrationTable.setMatrix(getPopInfo().getEmigrationMatrix().clone()); + populationMigrationEmigrationTable.setMatrix(getPopInfo().getEmigrationMatrix().clone()); } protected void remove() { @@ -120,20 +112,11 @@ populationMigrationEmigrationTable.setMatrix(getPopInfo().getEmigrationMatrix().copy()); } } -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()); + add.setEnabled(isActive() + && fieldPopulationMigrationEmigrationGroupChooser.getSelectedItem() != null + && fieldPopulationMigrationEmigrationDepartureZoneChooser.getSelectedItem() != null + && !fieldPopulationMigrationEmigrationCoefficient.getText().equals("")); } ]]></script> <JPanel id="body"> @@ -143,13 +126,15 @@ <JLabel text="isisfish.common.populationGroup" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> - <JAXXComboBox id="fieldPopulationMigrationEmigrationGroupChooser" enabled='{isActive()}' onActionPerformed='groupChanged()'/> + <JComboBox id="fieldPopulationMigrationEmigrationGroupChooser" + genericType="fr.ifremer.isisfish.entities.PopulationGroup" + enabled='{isActive()}' onItemStateChanged='setAddButton()'/> </cell> <cell> <JLabel text="isisfish.populationMigrationEmigration.coefficient" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> - <JTextField id="fieldPopulationMigrationEmigrationCoefficient" enabled='{isActive()}' onKeyReleased='coefChanged()'/> + <JTextField id="fieldPopulationMigrationEmigrationCoefficient" enabled='{isActive()}' onKeyReleased='setAddButton()'/> </cell> </row> <row> @@ -157,7 +142,9 @@ <JLabel text="isisfish.populationMigrationEmigration.departureZone" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> - <JAXXComboBox id="fieldPopulationMigrationEmigrationDepartureZoneChooser" enabled='{isActive()}' onActionPerformed='zoneChanged()'/> + <JComboBox id="fieldPopulationMigrationEmigrationDepartureZoneChooser" + genericType="fr.ifremer.isisfish.entities.Zone" + enabled='{isActive()}' onItemStateChanged='setAddButton()'/> </cell> <cell columns='2' fill='horizontal' weightx='0.5'> <JPanel/> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationImmigrationUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationImmigrationUI.jaxx 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationImmigrationUI.jaxx 2015-05-07 16:16:34 UTC (rev 4225) @@ -5,7 +5,7 @@ $Id$ $HeadURL$ %% - Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric + Copyright (C) 2009 - 2015 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 @@ -28,10 +28,6 @@ <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'/> - <import> java.beans.PropertyChangeEvent java.beans.PropertyChangeListener @@ -43,6 +39,7 @@ org.nuiton.math.matrix.gui.MatrixPanelEvent org.nuiton.math.matrix.gui.MatrixPanelListener fr.ifremer.isisfish.ui.input.InputAction + fr.ifremer.isisfish.ui.models.common.GenericComboModel </import> <script><![CDATA[ @@ -50,11 +47,15 @@ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { if (evt.getNewValue() == null) { + fieldPopulationMigrationImmigrationCoefficient.setText(""); populationMigrationImmigrationTable.setMatrix(null); } if (evt.getNewValue() != null) { - refreshPanel(); + } + setFieldPopulationMigrationMigrationGroupChooserModel(); + setFieldPopulationMigrationMigrationArrivalZoneChooserModel(); + setAddButton(); } }); } @@ -74,27 +75,20 @@ populationMigrationImmigrationTable.setMatrix(getPopInfo().getImmigrationMatrix().copy()); } -/*public void refresh(){ - Population population = getVerifier().getEntity(Population.class); - setBean(population); - - refreshPanel(); -}*/ - -public void refreshPanel(){ - setFieldPopulationMigrationMigrationGroupChooserModel(); - setFieldPopulationMigrationMigrationArrivalZoneChooserModel(); - setAddButton(); -} protected void setFieldPopulationMigrationMigrationGroupChooserModel(){ + GenericComboModel<PopulationGroup> groups = new GenericComboModel<>(); if (getBean() != null && getBean().getPopulationGroup() != null){ - jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationImmigrationGroupChooser, getBean().getPopulationGroup(), null, true); + groups.setElementList(getBean().getPopulationGroup()); } + fieldPopulationMigrationImmigrationGroupChooser.setModel(groups); } protected void setFieldPopulationMigrationMigrationArrivalZoneChooserModel(){ + GenericComboModel<Zone> zones = new GenericComboModel<>(); if (getBean() != null && getBean().getPopulationZone() != null){ - jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationImmigrationArrivalZoneChooser, getBean().getPopulationZone(), null, true); + //jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationMigrationArrivalZoneChooser,getBean().getPopulationZone(), null, true); + zones.setElementList(getBean().getPopulationZone()); } + fieldPopulationMigrationImmigrationArrivalZoneChooser.setModel(zones); } protected void add() { getContextValue(InputAction.class).addImmigration(getPopInfo(), @@ -115,21 +109,14 @@ populationMigrationImmigrationTable.setMatrix(getPopInfo().getImmigrationMatrix().copy()); } } -protected void groupChanged(){ - setGPopSelected(fieldPopulationMigrationImmigrationGroupChooser.getSelectedItem() != null); - setAddButton(); + +protected void setAddButton() { + add.setEnabled(isActive() && + fieldPopulationMigrationImmigrationGroupChooser.getSelectedItem() != null && + !fieldPopulationMigrationImmigrationCoefficient.getText().equals("") && + fieldPopulationMigrationImmigrationArrivalZoneChooser.getSelectedItem() != null + ); } -protected void coefChanged(){ - setCoefNonVide(!fieldPopulationMigrationImmigrationCoefficient.getText().equals("")); - setAddButton(); -} -protected void zoneChanged(){ - setZoneDepartSelected(fieldPopulationMigrationImmigrationArrivalZoneChooser.getSelectedItem() != null); - setAddButton(); -} -protected void setAddButton(){ - add.setEnabled(getGPopSelected() && getZoneDepartSelected() && getCoefNonVide()); -} ]]> </script> <JPanel id="body"> @@ -139,13 +126,15 @@ <JLabel text="isisfish.common.populationGroup" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> - <JAXXComboBox id="fieldPopulationMigrationImmigrationGroupChooser" enabled='{isActive()}' onActionPerformed='groupChanged()'/> + <JComboBox id="fieldPopulationMigrationImmigrationGroupChooser" + genericType="fr.ifremer.isisfish.entities.PopulationGroup" + enabled='{isActive()}' onActionPerformed='setAddButton()'/> </cell> <cell> <JLabel text="isisfish.populationMigrationImmigration.coefficient" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> - <JTextField id="fieldPopulationMigrationImmigrationCoefficient" enabled='{isActive()}' onKeyReleased='coefChanged()'/> + <JTextField id="fieldPopulationMigrationImmigrationCoefficient" enabled='{isActive()}' onKeyReleased='setAddButton()'/> </cell> </row> <row> @@ -153,7 +142,9 @@ <JLabel text="isisfish.populationMigrationImmigration.arrivalZone" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> - <JAXXComboBox id="fieldPopulationMigrationImmigrationArrivalZoneChooser" enabled='{isActive()}' onActionPerformed='zoneChanged()'/> + <JComboBox id="fieldPopulationMigrationImmigrationArrivalZoneChooser" + genericType="fr.ifremer.isisfish.entities.Zone" + enabled='{isActive()}' onActionPerformed='setAddButton()'/> </cell> <cell columns='2' fill='horizontal' weightx='0.5'> <JPanel/> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationMigrationUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationMigrationUI.jaxx 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationMigrationUI.jaxx 2015-05-07 16:16:34 UTC (rev 4225) @@ -5,7 +5,7 @@ $Id$ $HeadURL$ %% - Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric + Copyright (C) 2009 - 2015 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 @@ -34,17 +34,18 @@ <Boolean id='coefNonVide' javaBean='false'/> <import> - fr.ifremer.isisfish.entities.PopulationSeasonInfo; - fr.ifremer.isisfish.entities.Population; - fr.ifremer.isisfish.entities.PopulationGroup; - fr.ifremer.isisfish.entities.PopulationSeasonInfo; - fr.ifremer.isisfish.entities.Zone; - org.nuiton.math.matrix.MatrixND; - org.nuiton.math.matrix.gui.MatrixPanelEvent; - java.beans.PropertyChangeEvent; - java.beans.PropertyChangeListener; - org.nuiton.math.matrix.gui.MatrixPanelListener; + fr.ifremer.isisfish.entities.PopulationSeasonInfo + fr.ifremer.isisfish.entities.Population + fr.ifremer.isisfish.entities.PopulationGroup + fr.ifremer.isisfish.entities.PopulationSeasonInfo + fr.ifremer.isisfish.entities.Zone + org.nuiton.math.matrix.MatrixND + org.nuiton.math.matrix.gui.MatrixPanelEvent + java.beans.PropertyChangeEvent + java.beans.PropertyChangeListener + org.nuiton.math.matrix.gui.MatrixPanelListener javax.swing.text.Document + fr.ifremer.isisfish.ui.models.common.GenericComboModel </import> <script><![CDATA[ @@ -52,11 +53,16 @@ addPropertyChangeListener(PROPERTY_BEAN, new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { if (evt.getNewValue() == null) { + fieldPopulationMigrationMigrationCoefficient.setText(""); populationMigrationMigrationTable.setMatrix(null); } if (evt.getNewValue() != null) { - refreshPanel(); + } + setFieldPopulationMigrationMigrationGroupChooserModel(); + setFieldPopulationMigrationMigrationDepartureZoneChooserModel(); + setFieldPopulationMigrationMigrationArrivalZoneChooserModel(); + setAddButton(); } }); } @@ -75,37 +81,30 @@ populationMigrationMigrationTable.setMatrix(getPopInfo().getMigrationMatrix().copy()); } -/*public void refresh() { - Population population = getSaveVerifier().getEntity(Population.class); - // setBean(null); is useless here - setBean(population); - - refreshPanel(); -}*/ - -public void refreshPanel(){ - setFieldPopulationMigrationMigrationGroupChooserModel(); - setFieldPopulationMigrationMigrationDepartureZoneChooserModel(); - setFieldPopulationMigrationMigrationArrivalZoneChooserModel(); - - //setAddButton(); -} -protected void setFieldPopulationMigrationMigrationGroupChooserModel(){ +protected void setFieldPopulationMigrationMigrationGroupChooserModel() { + GenericComboModel<PopulationGroup> groups = new GenericComboModel<>(); if (getBean() != null && getBean().getPopulationGroup() != null){ - jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationMigrationGroupChooser,getBean().getPopulationGroup(), null, true); + groups.setElementList(getBean().getPopulationGroup()); } + fieldPopulationMigrationMigrationGroupChooser.setModel(groups); } protected void setFieldPopulationMigrationMigrationDepartureZoneChooserModel(){ + GenericComboModel<Zone> zones = new GenericComboModel<>(); if (getBean() != null && getBean().getPopulationZone() != null){ - jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationMigrationDepartureZoneChooser,getBean().getPopulationZone(), null, true); + //jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationMigrationDepartureZoneChooser,getBean().getPopulationZone(), null, true); + zones.setElementList(getBean().getPopulationZone()); } + fieldPopulationMigrationMigrationDepartureZoneChooser.setModel(zones); } protected void setFieldPopulationMigrationMigrationArrivalZoneChooserModel(){ + GenericComboModel<Zone> zones = new GenericComboModel<>(); if (getBean() != null && getBean().getPopulationZone() != null){ - jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationMigrationArrivalZoneChooser,getBean().getPopulationZone(), null, true); + //jaxx.runtime.SwingUtil.fillComboBox(fieldPopulationMigrationMigrationArrivalZoneChooser,getBean().getPopulationZone(), null, true); + zones.setElementList(getBean().getPopulationZone()); } + fieldPopulationMigrationMigrationArrivalZoneChooser.setModel(zones); } -protected void add(){ +protected void add() { getAction().addMigration(getPopInfo(), (PopulationGroup) fieldPopulationMigrationMigrationGroupChooser.getSelectedItem(), (Zone) fieldPopulationMigrationMigrationDepartureZoneChooser.getSelectedItem(), @@ -126,22 +125,6 @@ populationMigrationMigrationTable.setMatrix(getPopInfo().getMigrationMatrix().copy()); } } -/*protected void groupChanged(){ - setGPopSelected(fieldPopulationMigrationMigrationGroupChooser.getSelectedItem() != null); - setAddButton(); -} -protected void coefChanged(){ - setCoefNonVide(!fieldPopulationMigrationMigrationCoefficient.getText().equals("")); - setAddButton(); -} -protected void zoneDepartueChanged(){ - setZoneDepartSelected(fieldPopulationMigrationMigrationDepartureZoneChooser.getSelectedItem() != null); - setAddButton(); -} -protected void zoneArrivalChanged(){ - setZoneArrivalSelected(fieldPopulationMigrationMigrationArrivalZoneChooser.getSelectedItem() != null); - setAddButton(); -}*/ protected void setAddButton() { add.setEnabled(isActive() && fieldPopulationMigrationMigrationGroupChooser.getSelectedItem() != null && @@ -158,7 +141,7 @@ <JLabel text="isisfish.common.populationGroup" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> - <JAXXComboBox id="fieldPopulationMigrationMigrationGroupChooser" enabled='{isActive()}' + <JComboBox id="fieldPopulationMigrationMigrationGroupChooser" enabled='{isActive()}' onItemStateChanged="setAddButton()"/> </cell> <cell> @@ -176,14 +159,16 @@ <JLabel text="isisfish.populationMigrationMigration.departureZone" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> - <JAXXComboBox id="fieldPopulationMigrationMigrationDepartureZoneChooser" enabled='{isActive()}' + <JComboBox id="fieldPopulationMigrationMigrationDepartureZoneChooser" enabled='{isActive()}' + genericType="fr.ifremer.isisfish.entities.Zone" onItemStateChanged="setAddButton()"/> </cell> <cell> <JLabel text="isisfish.populationMigrationMigration.arrivalZone" enabled='{isActive()}'/> </cell> <cell fill='horizontal' weightx='0.5'> - <JAXXComboBox id="fieldPopulationMigrationMigrationArrivalZoneChooser" enabled='{isActive()}' + <JComboBox id="fieldPopulationMigrationMigrationArrivalZoneChooser" enabled='{isActive()}' + genericType="fr.ifremer.isisfish.entities.Zone" onItemStateChanged="setAddButton()"/> </cell> </row> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationUI.jaxx 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/population/PopulationMigrationUI.jaxx 2015-05-07 16:16:34 UTC (rev 4225) @@ -62,8 +62,9 @@ fieldUseEquationMigration.setSelected(false); } if (evt.getNewValue() != null) { - refresh(); + } + refresh(); } }); } Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/port/PortUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/port/PortUI.jaxx 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/port/PortUI.jaxx 2015-05-07 16:16:34 UTC (rev 4225) @@ -5,7 +5,7 @@ $Id$ $HeadURL$ %% - Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric + Copyright (C) 2009 - 2015 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 @@ -39,6 +39,7 @@ java.beans.PropertyChangeEvent java.beans.PropertyChangeListener java.awt.event.MouseEvent + fr.ifremer.isisfish.ui.models.common.GenericListModel </import> <BeanValidator id='validator' @@ -49,7 +50,7 @@ </BeanValidator> <script><![CDATA[ -boolean portChanged = true; +boolean init = false; protected void $afterCompleteSetup() { @@ -61,12 +62,12 @@ for (Cell c : portMap.getSelectedCells()) { if (getBean().getCell() != null) { if (!getBean().getCell().getTopiaId().equals(c.getTopiaId())){ - portCell.setSelectedValue(c); + portCell.setSelectedValue(c, true); return true; } } else { - portCell.setSelectedValue(c); + portCell.setSelectedValue(c, true); return true; } } @@ -85,8 +86,9 @@ fieldPortComment.setText(""); } if (evt.getNewValue() != null) { - fillCellList(); + } + fillCellList(); } }); } @@ -103,17 +105,21 @@ }*/ protected void fillCellList() { + GenericListModel<Cell> cellModel = new GenericListModel<>(); if (getBean() != null) { - portChanged = false; - portCell.fillList(getFisheryRegion().getCell(), getBean().getCell()); - portCell.setSelectedValue(getBean().getCell()); - portChanged = true; + init = true; + cellModel.setElementList(getFisheryRegion().getCell()); + portCell.setModel(cellModel); + portCell.setSelectedValue(getBean().getCell(), true); + init = false; + } else { + portCell.setModel(cellModel); } } protected void portChanged() { - if (portChanged) { - getBean().setCell((Cell)portCell.getSelectedValue()); + if (getBean() != null && !init) { + getBean().setCell(portCell.getSelectedValue()); } } ]]></script> @@ -139,7 +145,8 @@ <row> <cell columns='2' fill='both' weighty='0.7' weightx='1.0'> <JScrollPane id="spPortCell"> - <JAXXList id="portCell" selectedValue='{getBean().getCell()}' selectionMode="0" + <JList id="portCell" + genericType="fr.ifremer.isisfish.entities.Cell" selectionMode="{javax.swing.ListSelectionModel.SINGLE_SELECTION}" onValueChanged='portChanged()' enabled='{isActive()}' decorator='boxed' /> </JScrollPane> </cell> Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/setofvessels/SetOfVesselsBasicsUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/setofvessels/SetOfVesselsBasicsUI.jaxx 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/setofvessels/SetOfVesselsBasicsUI.jaxx 2015-05-07 16:16:34 UTC (rev 4225) @@ -5,7 +5,7 @@ $Id$ $HeadURL$ %% - Copyright (C) 2009 - 2011 Ifremer, Code Lutin, Chatellier Eric + Copyright (C) 2009 - 2015 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 Modified: trunk/src/main/java/fr/ifremer/isisfish/ui/input/zone/ZoneBasicsUI.jaxx =================================================================== --- trunk/src/main/java/fr/ifremer/isisfish/ui/input/zone/ZoneBasicsUI.jaxx 2015-05-07 13:57:54 UTC (rev 4224) +++ trunk/src/main/java/fr/ifremer/isisfish/ui/input/zone/ZoneBasicsUI.jaxx 2015-05-07 16:16:34 UTC (rev 4225) @@ -73,23 +73,27 @@ zoneMap.setSelectedCells(); } if (evt.getNewValue() != null) { - setZoneCells(); + } + setZoneCells(); } }); } protected void setZoneCells() { + GenericListModel<Cell> zoneModel = new GenericListModel<Cell>(); if (getBean() != null) { List<Cell> cells = getFisheryRegion().getCell(); - GenericListModel<Cell> model = new GenericListModel<Cell>(cells); - zoneCells.setModel(model); + zoneModel.setElementList(cells); + zoneCells.setModel(zoneModel); if (getBean().getCell() != null) { for (Cell selectedCell : getBean().getCell()) { int index = cells.indexOf(selectedCell); zoneCells.addSelectionInterval(index, index); } } + } else { + zoneCells.setModel(zoneModel); } }
participants (1)
-
echatellier@users.forge.codelutin.com