r157 - in trunk/tutti-ui-swing/src/main: java/fr/ifremer/tutti/ui/swing java/fr/ifremer/tutti/ui/swing/content/home java/fr/ifremer/tutti/ui/swing/content/operation resources/fr/ifremer/tutti/ui/swing/content/operation resources/i18n resources/icons
Author: tchemit Date: 2013-01-08 10:28:42 +0100 (Tue, 08 Jan 2013) New Revision: 157 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/157 Log: refs #1908: [CONSOLIDATION] Mise en place des deux contextes de validation (pour les captures) Added: trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-validate-error-validation.xml trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-validate-warning-validation.xml trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-warning-validation.xml trunk/tutti-ui-swing/src/main/resources/icons/action-validate.png Removed: trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-warning-validation.xml Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUI.css 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUI.css 2013-01-08 09:28:42 UTC (rev 157) @@ -77,6 +77,14 @@ /*actionIcon: "catches";*/ } +#menuActionValidateCatches { + text: "tutti.action.validateCatches"; + toolTipText: "tutti.action.validateCatches.tip"; + mnemonic: V; + enabled: {model.getScreen() != TuttiScreen.EDIT_FISHING_OPERATION && model.isCruiseContextFilled()}; + actionIcon: validate; +} + #menuSynchronisations { text: "tutti.menu.synchronisations"; toolTipText: "tutti.menu.synchronisations.tip"; Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUI.jaxx 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUI.jaxx 2013-01-08 09:28:42 UTC (rev 157) @@ -68,6 +68,8 @@ onActionPerformed="getHandler().showSelectCampaign()"/> <JMenuItem id='menuActionFillCatches' onActionPerformed="getHandler().showFillCatches()"/> + <JMenuItem id='menuActionValidateCatches' + onActionPerformed="getHandler().showFillCatches()"/> </JMenu> <JMenu id='menuSynchronisations'> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUIHandler.java 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/MainUIHandler.java 2013-01-08 09:28:42 UTC (rev 157) @@ -113,16 +113,18 @@ TuttiScreen screen; - if (context.isCruiseContextFilled()) { +// if (context.isCruiseContextFilled()) { +// +// // direct fill catches screen +// screen = TuttiScreen.EDIT_FISHING_OPERATION; +// } else { +// +// // go to select cruise screen +// screen = TuttiScreen.SELECT_CRUISE; +// } - // direct fill catches screen - screen = TuttiScreen.EDIT_FISHING_OPERATION; - } else { + screen = TuttiScreen.SELECT_CRUISE; - // go to select cruise screen - screen = TuttiScreen.SELECT_CRUISE; - } - context.setScreen(screen); } @@ -185,9 +187,15 @@ } public void showFillCatches() { + context.setValidationContext(TuttiUIContext.VALIDATION_CONTEXT_EDIT); context.setScreen(TuttiScreen.EDIT_FISHING_OPERATION); } + public void showValidateCatches() { + context.setValidationContext(TuttiUIContext.VALIDATION_CONTEXT_VALIDATE); + context.setScreen(TuttiScreen.EDIT_FISHING_OPERATION); + } + public void showImportScreen() { } @@ -338,7 +346,17 @@ case EDIT_FISHING_OPERATION: - screenTitle = _("tutti.title.edit.operations", getSelectedCruiseTitle()); + String validationContext = context.getValidationContext(); + + if (TuttiUIContext.VALIDATION_CONTEXT_EDIT.equals(validationContext)) { + + // edit catches + screenTitle = _("tutti.title.edit.operations", getSelectedCruiseTitle()); + } else { + + // validate catches + screenTitle = _("tutti.title.validate.operations", getSelectedCruiseTitle()); + } screenUI = new FishingOperationsUI(context); break; } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/TuttiUIContext.java 2013-01-08 09:28:42 UTC (rev 157) @@ -55,6 +55,10 @@ */ public class TuttiUIContext extends AbstractBean implements Closeable, UIMessageNotifier { + public static final String VALIDATION_CONTEXT_EDIT = "edit"; + + public static final String VALIDATION_CONTEXT_VALIDATE = "validate"; + /** Logger. */ private static final Log log = LogFactory.getLog(TuttiUIContext.class); @@ -64,17 +68,19 @@ public static final String PROPERTY_PROTOCOL_ID = "protocolId"; - public static final Set<String> ID_TO_SAVE_PROPERTIES = Sets.newHashSet( - PROPERTY_PROGRAM_ID, - PROPERTY_CRUISE_ID, - PROPERTY_PROTOCOL_ID); - public static final String PROPERTY_SCREEN = "screen"; public static final String PROPERTY_CRUISE_CONTEXT_FILLED = "cruiseContextFilled"; public static final String PROPERTY_PROTOCOL_FILLED = "protocolFilled"; + public static final String PROPERTY_VALIDATION_CONTEXT = "validationContext"; + + public static final Set<String> ID_TO_SAVE_PROPERTIES = Sets.newHashSet( + PROPERTY_PROGRAM_ID, + PROPERTY_CRUISE_ID, + PROPERTY_PROTOCOL_ID); + /** * Application context (only one for all the application). * @@ -145,6 +151,13 @@ */ protected final Set<UIMessageNotifier> messageNotifiers; + /** + * Validation context (used by fishingOperation screens). + * + * @since 0.3 + */ + private String validationContext; + public static TuttiUIContext newContext(TuttiConfig config) { Preconditions.checkNotNull(config); Preconditions.checkState(applicationContext == null, @@ -240,6 +253,16 @@ oldValue, isProtocolFilled()); } + public void setValidationContext(String validationContext) { + Object oldValue = getValidationContext(); + this.validationContext = validationContext; + firePropertyChange(PROPERTY_VALIDATION_CONTEXT, oldValue, validationContext); + } + + public String getValidationContext() { + return validationContext; + } + public void setScreen(TuttiScreen screen) { Object oldValue = getScreen(); this.screen = screen; @@ -362,6 +385,7 @@ programId = null; cruiseId = null; protocolId = null; + validationContext = null; setScreen(null); Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.css 2013-01-08 09:28:42 UTC (rev 157) @@ -96,7 +96,12 @@ text: "tutti.action.new"; } -#showFishingOperationsButton { - text: "tutti.action.catches"; +#fillFishingOperationsButton { + text: "tutti.action.fillCatches"; enabled: {uiContext.isCruiseContextFilled()}; } + +#validateFishingOperationsButton { + text: "tutti.action.validateCatches"; + enabled: {uiContext.isCruiseContextFilled()}; +} Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUI.jaxx 2013-01-08 09:28:42 UTC (rev 157) @@ -112,8 +112,12 @@ </row> <row> <cell columns='3'> - <JButton id='showFishingOperationsButton' - onActionPerformed='handler.showFishingOperations()'/> + <JPanel layout='{new GridLayout(1,0)}'> + <JButton id='fillFishingOperationsButton' + onActionPerformed='handler.showFillCatches()'/> + <JButton id='validateFishingOperationsButton' + onActionPerformed='handler.showValidateCatches()'/> + </JPanel> </cell> </row> </Table> Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/home/SelectCruiseUIHandler.java 2013-01-08 09:28:42 UTC (rev 157) @@ -231,8 +231,13 @@ } } - public void showFishingOperations() { + public void showFillCatches() { + context.setValidationContext(TuttiUIContext.VALIDATION_CONTEXT_EDIT); + context.setScreen(TuttiScreen.EDIT_FISHING_OPERATION); + } + public void showValidateCatches() { + context.setValidationContext(TuttiUIContext.VALIDATION_CONTEXT_VALIDATE); context.setScreen(TuttiScreen.EDIT_FISHING_OPERATION); } Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIHandler.java 2013-01-08 09:28:42 UTC (rev 157) @@ -48,11 +48,9 @@ import javax.swing.JLabel; import javax.swing.JPanel; import java.awt.BorderLayout; -import java.awt.CardLayout; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.util.List; -import jaxx.runtime.swing.CardLayout2Ext; /** @@ -111,6 +109,8 @@ public void beforeInitUI() { EditFishingOperationUIModel model = new EditFishingOperationUIModel(); + model.setValidationContext(getContext().getValidationContext()); + model.addPropertyChangeListener(EditFishingOperationUIModel.PROPERTY_EMPTY, new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { @@ -146,13 +146,13 @@ onSelectedSubStrata(source, newStrata); } }); - + model.addPropertyChangeListener(EditFishingOperationUIModel.PROPERTY_USE_SEXAGECIMAL_FORMAT, new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { boolean useSexagecimalFormat = (Boolean) evt.getNewValue(); log.info("property PROPERTY_USE_SEXAGECIMAL_FORMAT changed " + useSexagecimalFormat); - + if (useSexagecimalFormat) { getModel().convertGearShootingCoordinatesDDToDMS(); } else { @@ -164,7 +164,7 @@ // listModelIsModify(model); ui.setContextValue(model); - + fishingOperationMonitor.setBean(model); } @@ -245,6 +245,9 @@ model.setEmpty(true); + //FIXME-tchemit Use this when jaxx-validator will works again :( + //ui.getValidator().setContext(getModel().getValidationContext()); + listenValidatorValid(ui.getValidator(), getModel()); //init gear shooting @@ -282,9 +285,9 @@ //------------------------------------------------------------------------// //-- Public methods --// //------------------------------------------------------------------------// - + public void selectFishingOperation(FishingOperation bean) { - + if (fishingOperationMonitor.wasModified()) { // previous fishingOperation was modified, let's save it @@ -300,7 +303,7 @@ if (beanToSave.isUseSexagecimalFormat()) { beanToSave.convertGearShootingCoordinatesDMSToDD(); } - + // save modified fishing operation FishingOperation toSave = beanToSave.toBean(); @@ -409,7 +412,7 @@ public void save() { EditFishingOperationUIModel model = getModel(); - + // get fishingOperation to save if (model.isUseSexagecimalFormat()) { model.convertGearShootingCoordinatesDMSToDD(); @@ -442,19 +445,19 @@ public void setUseSexagecimalFormat(boolean useSexagecimalFormat) { getModel().setUseSexagecimalFormat(useSexagecimalFormat); } - + public void setGearShootingStartLatitude(String text) { getModel().setGearShootingStartLatitude(Float.valueOf(text)); } - + public void setGearShootingStartLatitudeDegree(String text) { getModel().setGearShootingStartLatitude(Float.valueOf(text)); } - + public void setGearShootingStartLatitudeMinute(String text) { getModel().setGearShootingStartLatitude(Float.valueOf(text)); } - + public void setGearShootingStartLatitudeSecond(String text) { getModel().setGearShootingStartLatitude(Float.valueOf(text)); } @@ -470,11 +473,11 @@ public void setGearShootingEndLongitude(String text) { getModel().setGearShootingEndLongitude(Float.valueOf(text)); } - + //------------------------------------------------------------------------// //-- Protected methods --// //------------------------------------------------------------------------// - + protected void onSelectedStrata(EditFishingOperationUIModel model, FishingOperationLocation newStrata) { Modified: trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java =================================================================== --- trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel.java 2013-01-08 09:28:42 UTC (rev 157) @@ -24,16 +24,13 @@ * #L% */ -import fr.ifremer.tutti.persistence.entities.CaracteristicMap; import fr.ifremer.tutti.persistence.entities.TuttiEntities; import fr.ifremer.tutti.persistence.entities.data.Cruise; import fr.ifremer.tutti.persistence.entities.data.FishingOperation; import fr.ifremer.tutti.persistence.entities.referential.FishingOperationLocation; import fr.ifremer.tutti.persistence.entities.referential.Person; +import fr.ifremer.tutti.persistence.spatial.SexagecimalPosition; import fr.ifremer.tutti.ui.swing.AbstractTuttiBeanUIModel; -import fr.ifremer.tutti.persistence.spatial.SexagecimalPosition; -import java.beans.PropertyChangeEvent; -import java.beans.PropertyChangeListener; import org.nuiton.util.beans.Binder; import org.nuiton.util.beans.BinderFactory; @@ -65,39 +62,39 @@ public static final String PROPERTY_SUB_STRATA = "subStrata"; public static final String PROPERTY_USE_SEXAGECIMAL_FORMAT = "useSexagecimalFormat"; - + public static final String PROPERTY_GEAR_SHOOTING_START_LATITUDE = "gearShootingStartLatitude"; - + public static final String PROPERTY_GEAR_SHOOTING_START_LATITUDE_DEGREE = "gearShootingStartLatitudeDegree"; - + public static final String PROPERTY_GEAR_SHOOTING_START_LATITUDE_MINUTE = "gearShootingStartLatitudeMinute"; - + public static final String PROPERTY_GEAR_SHOOTING_START_LATITUDE_SECOND = "gearShootingStartLatitudeSecond"; - + public static final String PROPERTY_GEAR_SHOOTING_START_LONGITUDE = "gearShootingStartLongitude"; - + public static final String PROPERTY_GEAR_SHOOTING_START_LONGITUDE_DEGREE = "gearShootingStartLongitudeDegree"; - + public static final String PROPERTY_GEAR_SHOOTING_START_LONGITUDE_MINUTE = "gearShootingStartLongitudeMinute"; - + public static final String PROPERTY_GEAR_SHOOTING_START_LONGITUDE_SECOND = "gearShootingStartLongitudeSecond"; public static final String PROPERTY_GEAR_SHOOTING_START_DATE = "gearShootingStartDate"; public static final String PROPERTY_GEAR_SHOOTING_END_LATITUDE = "gearShootingEndLatitude"; - + public static final String PROPERTY_GEAR_SHOOTING_END_LATITUDE_DEGREE = "gearShootingEndLatitudeDegree"; - + public static final String PROPERTY_GEAR_SHOOTING_END_LATITUDE_MINUTE = "gearShootingEndLatitudeMinute"; - + public static final String PROPERTY_GEAR_SHOOTING_END_LATITUDE_SECOND = "gearShootingEndLatitudeSecond"; public static final String PROPERTY_GEAR_SHOOTING_END_LONGITUDE = "gearShootingEndLongitude"; - + public static final String PROPERTY_GEAR_SHOOTING_END_LONGITUDE_DEGREE = "gearShootingEndLongitudeDegree"; - + public static final String PROPERTY_GEAR_SHOOTING_END_LONGITUDE_MINUTE = "gearShootingEndLongitudeMinute"; - + public static final String PROPERTY_GEAR_SHOOTING_END_LONGITUDE_SECOND = "gearShootingEndLongitudeSecond"; public static final String PROPERTY_GEAR_SHOOTING_END_DATE = "gearShootingEndDate"; @@ -116,6 +113,8 @@ public static final String PROPERTY_SAISISSEUR = "saisisseur"; + public static final String PROPERTY_VALIDATION_CONTEXT = "validationContext"; + /** * Flag when there is no fishing operation selected. * @@ -177,6 +176,8 @@ protected FishingOperation fishingOperation; + protected String validationContext; + protected static Binder<EditFishingOperationUIModel, FishingOperation> toBeanBinder = BinderFactory.newBinder(EditFishingOperationUIModel.class, FishingOperation.class); @@ -282,7 +283,7 @@ this.useSexagecimalFormat = useSexagecimalFormat; firePropertyChange(PROPERTY_USE_SEXAGECIMAL_FORMAT, oldValue, useSexagecimalFormat); } - + public Float getGearShootingStartLatitude() { return gearShootingStartLatitude; } @@ -292,7 +293,7 @@ this.gearShootingStartLatitude = gearShootingStartLatitude; firePropertyChange(PROPERTY_GEAR_SHOOTING_START_LATITUDE, oldValue, gearShootingStartLatitude); } - + public Integer getGearShootingStartLatitudeDegree() { Integer result = gearShootingStartLatitudeAsSexagecimal.getDegre(); if (gearShootingStartLatitudeAsSexagecimal.isSign()) { @@ -300,7 +301,7 @@ } return result; } - + public void setGearShootingStartLatitudeDegree(Integer degree) { Object oldValue = getGearShootingStartLatitudeDegree(); boolean sign = degree != null && degree < 0; @@ -311,22 +312,22 @@ gearShootingStartLatitudeAsSexagecimal.setDegre(degree); firePropertyChange(PROPERTY_GEAR_SHOOTING_START_LATITUDE_DEGREE, oldValue, degree); } - + public Integer getGearShootingStartLatitudeMinute() { return gearShootingStartLatitudeAsSexagecimal.getMinute(); } - + public void setGearShootingStartLatitudeMinute(Integer minute) { Object oldValue = getGearShootingStartLatitudeMinute(); gearShootingStartLatitudeAsSexagecimal.setMinute(minute); firePropertyChange(PROPERTY_GEAR_SHOOTING_START_LATITUDE_MINUTE, oldValue, minute); - + } - + public Integer getGearShootingStartLatitudeSecond() { return gearShootingStartLatitudeAsSexagecimal.getSeconde(); } - + public void setGearShootingStartLatitudeSecond(Integer second) { Object oldValue = getGearShootingStartLatitudeSecond(); gearShootingStartLatitudeAsSexagecimal.setSeconde(second); @@ -343,7 +344,7 @@ firePropertyChange(PROPERTY_GEAR_SHOOTING_START_LONGITUDE, oldValue, gearShootingStartLongitude); } - + public Integer getGearShootingStartLongitudeDegree() { Integer result = gearShootingStartLongitudeAsSexagecimal.getDegre(); if (gearShootingStartLongitudeAsSexagecimal.isSign()) { @@ -351,7 +352,7 @@ } return result; } - + public void setGearShootingStartLongitudeDegree(Integer degree) { Object oldValue = getGearShootingStartLongitudeDegree(); boolean sign = degree != null && degree < 0; @@ -362,28 +363,28 @@ gearShootingStartLongitudeAsSexagecimal.setDegre(degree); firePropertyChange(PROPERTY_GEAR_SHOOTING_START_LONGITUDE_DEGREE, oldValue, degree); } - + public Integer getGearShootingStartLongitudeMinute() { return gearShootingStartLongitudeAsSexagecimal.getMinute(); } - + public void setGearShootingStartLongitudeMinute(Integer minute) { Object oldValue = getGearShootingStartLongitudeMinute(); gearShootingStartLongitudeAsSexagecimal.setMinute(minute); firePropertyChange(PROPERTY_GEAR_SHOOTING_START_LONGITUDE_MINUTE, oldValue, minute); - + } - + public Integer getGearShootingStartLongitudeSecond() { return gearShootingStartLongitudeAsSexagecimal.getSeconde(); } - + public void setGearShootingStartLongitudeSecond(Integer second) { Object oldValue = getGearShootingStartLongitudeSecond(); gearShootingStartLongitudeAsSexagecimal.setSeconde(second); firePropertyChange(PROPERTY_GEAR_SHOOTING_START_LONGITUDE_SECOND, oldValue, second); } - + public Date getGearShootingStartDate() { return gearShootingStartDate; } @@ -403,7 +404,7 @@ this.gearShootingEndLatitude = gearShootingEndLatitude; firePropertyChange(PROPERTY_GEAR_SHOOTING_END_LATITUDE, oldValue, gearShootingEndLatitude); } - + public Integer getGearShootingEndLatitudeDegree() { Integer result = gearShootingEndLatitudeAsSexagecimal.getDegre(); if (gearShootingEndLatitudeAsSexagecimal.isSign()) { @@ -411,7 +412,7 @@ } return result; } - + public void setGearShootingEndLatitudeDegree(Integer degree) { Object oldValue = getGearShootingEndLatitudeDegree(); boolean sign = degree != null && degree < 0; @@ -422,22 +423,22 @@ gearShootingEndLatitudeAsSexagecimal.setDegre(degree); firePropertyChange(PROPERTY_GEAR_SHOOTING_END_LATITUDE_DEGREE, oldValue, degree); } - + public Integer getGearShootingEndLatitudeMinute() { return gearShootingEndLatitudeAsSexagecimal.getMinute(); } - + public void setGearShootingEndLatitudeMinute(Integer minute) { Object oldValue = getGearShootingEndLatitudeMinute(); gearShootingEndLatitudeAsSexagecimal.setMinute(minute); firePropertyChange(PROPERTY_GEAR_SHOOTING_END_LATITUDE_MINUTE, oldValue, minute); - + } - + public Integer getGearShootingEndLatitudeSecond() { return gearShootingEndLatitudeAsSexagecimal.getSeconde(); } - + public void setGearShootingEndLatitudeSecond(Integer second) { Object oldValue = getGearShootingEndLatitudeSecond(); gearShootingEndLatitudeAsSexagecimal.setSeconde(second); @@ -461,7 +462,7 @@ } return result; } - + public void setGearShootingEndLongitudeDegree(Integer degree) { Object oldValue = getGearShootingEndLongitudeDegree(); boolean sign = degree != null && degree < 0; @@ -472,28 +473,28 @@ gearShootingEndLongitudeAsSexagecimal.setDegre(degree); firePropertyChange(PROPERTY_GEAR_SHOOTING_END_LONGITUDE_DEGREE, oldValue, degree); } - + public Integer getGearShootingEndLongitudeMinute() { return gearShootingEndLongitudeAsSexagecimal.getMinute(); } - + public void setGearShootingEndLongitudeMinute(Integer minute) { Object oldValue = getGearShootingEndLongitudeMinute(); gearShootingEndLongitudeAsSexagecimal.setMinute(minute); firePropertyChange(PROPERTY_GEAR_SHOOTING_END_LONGITUDE_MINUTE, oldValue, minute); - + } - + public Integer getGearShootingEndLongitudeSecond() { return gearShootingEndLongitudeAsSexagecimal.getSeconde(); } - + public void setGearShootingEndLongitudeSecond(Integer second) { Object oldValue = getGearShootingEndLongitudeSecond(); gearShootingEndLongitudeAsSexagecimal.setSeconde(second); firePropertyChange(PROPERTY_GEAR_SHOOTING_END_LONGITUDE_SECOND, oldValue, second); } - + public Date getGearShootingEndDate() { return gearShootingEndDate; } @@ -573,15 +574,25 @@ firePropertyChange(PROPERTY_SAISISSEUR, null, saisisseur); } + public String getValidationContext() { + return validationContext; + } + + public void setValidationContext(String validationContext) { + Object oldValue = getValidationContext(); + this.validationContext = validationContext; + firePropertyChange(PROPERTY_VALIDATION_CONTEXT, oldValue, validationContext); + } + @Override protected FishingOperation newEntity() { return fishingOperation; } - + public void convertGearShootingCoordinatesDDToDMS() { SexagecimalPosition position; Integer degree; - + position = SexagecimalPosition.valueOf(gearShootingStartLatitude); degree = position.getDegre(); if (degree != null) { @@ -590,7 +601,7 @@ setGearShootingStartLatitudeDegree(degree); setGearShootingStartLatitudeMinute(position.getMinute()); setGearShootingStartLatitudeSecond(position.getSeconde()); - + position = SexagecimalPosition.valueOf(gearShootingStartLongitude); degree = position.getDegre(); if (degree != null) { @@ -599,19 +610,19 @@ setGearShootingStartLongitudeDegree(degree); setGearShootingStartLongitudeMinute(position.getMinute()); setGearShootingStartLongitudeSecond(position.getSeconde()); - + position = SexagecimalPosition.valueOf(gearShootingEndLatitude); degree = position.getDegre(); if (degree != null) { degree *= position.isSign() ? -1 : 1; } if (position.getDegre() != null) { - + } setGearShootingEndLatitudeDegree(degree); setGearShootingEndLatitudeMinute(position.getMinute()); setGearShootingEndLatitudeSecond(position.getSeconde()); - + position = SexagecimalPosition.valueOf(gearShootingEndLongitude); degree = position.getDegre(); if (degree != null) { @@ -621,19 +632,19 @@ setGearShootingEndLongitudeMinute(position.getMinute()); setGearShootingEndLongitudeSecond(position.getSeconde()); } - + public void convertGearShootingCoordinatesDMSToDD() { Float decimalValue = gearShootingStartLatitudeAsSexagecimal.toDecimal(); setGearShootingStartLatitude(decimalValue); - + decimalValue = gearShootingStartLongitudeAsSexagecimal.toDecimal(); setGearShootingStartLongitude(decimalValue); - + decimalValue = gearShootingEndLatitudeAsSexagecimal.toDecimal(); setGearShootingEndLatitude(decimalValue); - + decimalValue = gearShootingEndLongitudeAsSexagecimal.toDecimal(); setGearShootingEndLongitude(decimalValue); } - + } \ No newline at end of file Deleted: trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml =================================================================== --- trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml 2013-01-08 09:28:42 UTC (rev 157) @@ -1,53 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - #%L - Tutti :: UI - $Id$ - $HeadURL$ - %% - Copyright (C) 2012 Ifremer - %% - 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% - --> -<!DOCTYPE validators PUBLIC - "-//Apache Struts//XWork Validator 1.0.3//EN" - "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> -<validators> - - <field name="stationNumber"> - - <field-validator type="required" short-circuit="true"> - <message>tutti.validator.error.fishingOperation.stationNumber.required</message> - </field-validator> - - </field> - - <field name="fishingOperationNumber"> - - <field-validator type="required" short-circuit="true"> - <message>tutti.validator.error.fishingOperation.fishingOperationNumber.required</message> - </field-validator> - - </field> - - <field name="date"> - - <field-validator type="required" short-circuit="true"> - <message>tutti.validator.error.fishingOperation.date.required</message> - </field-validator> - - </field> -</validators> Copied: trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml (from rev 155, trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml) =================================================================== --- trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml (rev 0) +++ trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml 2013-01-08 09:28:42 UTC (rev 157) @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 Ifremer + %% + 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% + --> +<!DOCTYPE validators PUBLIC + "-//Apache Struts//XWork Validator 1.0.3//EN" + "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> +<validators> + + <field name="stationNumber"> + + <field-validator type="required" short-circuit="true"> + <message> + tutti.validator.error.fishingOperation.stationNumber.required + </message> + </field-validator> + + </field> + + <field name="fishingOperationNumber"> + + <field-validator type="required" short-circuit="true"> + <message> + tutti.validator.error.fishingOperation.fishingOperationNumber.required + </message> + </field-validator> + + </field> + + <field name="date"> + + <field-validator type="required" short-circuit="true"> + <message>tutti.validator.error.fishingOperation.date.required</message> + </field-validator> + + </field> +</validators> Copied: trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-validate-error-validation.xml (from rev 155, trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-error-validation.xml) =================================================================== --- trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-validate-error-validation.xml (rev 0) +++ trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-validate-error-validation.xml 2013-01-08 09:28:42 UTC (rev 157) @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 Ifremer + %% + 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% + --> +<!DOCTYPE validators PUBLIC + "-//Apache Struts//XWork Validator 1.0.3//EN" + "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> +<validators> + + <field name="stationNumber"> + + <field-validator type="required" short-circuit="true"> + <message> + tutti.validator.error.fishingOperation.stationNumber.required + </message> + </field-validator> + + </field> + + <field name="fishingOperationNumber"> + + <field-validator type="required" short-circuit="true"> + <message> + tutti.validator.error.fishingOperation.fishingOperationNumber.required + </message> + </field-validator> + + </field> + + <field name="date"> + + <field-validator type="required" short-circuit="true"> + <message>tutti.validator.error.fishingOperation.date.required</message> + </field-validator> + + </field> +</validators> Added: trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-validate-warning-validation.xml =================================================================== --- trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-validate-warning-validation.xml (rev 0) +++ trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-validate-warning-validation.xml 2013-01-08 09:28:42 UTC (rev 157) @@ -0,0 +1,322 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL: http://svn.forge.codelutin.com/svn/tutti/trunk/tutti-ui-swing/src/main/resou... $ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + 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% + --> + + +<!DOCTYPE validators PUBLIC + "-//Apache Struts//XWork Validator 1.0.3//EN" + "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> + +<validators> + + <!--gear shooting start latitude validation --> + + <field name="gearShootingStartLatitude"> + + <field-validator type="fieldexpressionwithparams"> + <param name="doubleParams">min:90.0|max:90.0</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat || ( -doubles.min <= gearShootingStartLatitude && gearShootingStartLatitude <= doubles.max ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLatitudeDegree"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:90|max:90</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ( + ( -ints.min < getGearShootingStartLatitudeDegree() && getGearShootingStartLatitudeDegree() < ints.max ) + || ( + ( getGearShootingStartLatitudeDegree() == ints.max || getGearShootingStartLatitudeDegree() == -ints.min ) + && getGearShootingStartLatitudeMinute() == 0 && getGearShootingStartLatitudeSecond() == 0 + ) + ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLatitudeMinute"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingStartLatitudeMinute() && getGearShootingStartLatitudeMinute() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLatitudeSecond"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingStartLatitudeSecond() && getGearShootingStartLatitudeSecond() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <!--gear shooting start longitude validation --> + + <field name="gearShootingStartLongitude"> + + <field-validator type="fieldexpressionwithparams"> + <param name="doubleParams">min:180.0|max:180.0</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat || ( -doubles.min <= gearShootingStartLongitude && gearShootingStartLongitude <= doubles.max ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLongitudeDegree"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:180|max:180</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ( + (-ints.min < getGearShootingStartLongitudeDegree() && getGearShootingStartLongitudeDegree() < ints.max) + || ( + ( getGearShootingStartLongitudeDegree() == ints.max || getGearShootingStartLongitudeDegree() == -ints.min ) + && getGearShootingStartLongitudeMinute() == 0 && getGearShootingStartLongitudeSecond() == 0 + ) + ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLongitudeMinute"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingStartLongitudeMinute() && getGearShootingStartLongitudeMinute() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLongitudeSecond"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingStartLongitudeSecond() && getGearShootingStartLongitudeSecond() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <!--gear shooting end latitude validation --> + + <field name="gearShootingEndLatitude"> + + <field-validator type="fieldexpressionwithparams"> + <param name="doubleParams">min:90.0|max:90.0</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat || ( -doubles.min <= gearShootingEndLatitude && gearShootingEndLatitude <= doubles.max ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + + <field name="gearShootingEndLatitudeDegree"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:90|max:90</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ( + (-ints.min < getGearShootingEndLatitudeDegree() && getGearShootingEndLatitudeDegree() < ints.max) + || ( + ( getGearShootingEndLatitudeDegree() == ints.max || getGearShootingEndLatitudeDegree() == -ints.min ) + && getGearShootingEndLatitudeMinute() == 0 && getGearShootingEndLatitudeSecond() == 0 + ) + ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLatitudeMinute"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingEndLatitudeMinute() && getGearShootingEndLatitudeMinute() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLatitudeSecond"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingEndLatitudeSecond() && getGearShootingEndLatitudeSecond() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <!--gear shooting end longitude validation --> + + <field name="gearShootingEndLongitude"> + + <field-validator type="fieldexpressionwithparams"> + <param name="doubleParams">min:180.0|max:180.0</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat || ( -doubles.min <= gearShootingEndLongitude && gearShootingEndLongitude <= doubles.max ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLongitudeDegree"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:180|max:180</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ( + (-ints.min < getGearShootingEndLongitudeDegree() && getGearShootingEndLongitudeDegree() < ints.max) + || ( + ( getGearShootingEndLongitudeDegree() == ints.max || getGearShootingEndLongitudeDegree() == -ints.min ) + && getGearShootingEndLongitudeMinute() == 0 && getGearShootingEndLongitudeSecond() == 0 + ) + ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLongitudeMinute"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingEndLongitudeMinute() && getGearShootingEndLongitudeMinute() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLongitudeSecond"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingEndLongitudeSecond() && getGearShootingEndLongitudeSecond() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + +</validators> Property changes on: trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-validate-warning-validation.xml ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Deleted: trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-warning-validation.xml =================================================================== --- trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-warning-validation.xml 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-warning-validation.xml 2013-01-08 09:28:42 UTC (rev 157) @@ -1,322 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - #%L - Tutti :: UI - $Id$ - $HeadURL$ - %% - Copyright (C) 2012 - 2013 Ifremer - %% - 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% - --> - - -<!DOCTYPE validators PUBLIC - "-//Apache Struts//XWork Validator 1.0.3//EN" - "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> - -<validators> - - <!--gear shooting start latitude validation --> - - <field name="gearShootingStartLatitude"> - - <field-validator type="fieldexpressionwithparams"> - <param name="doubleParams">min:90.0|max:90.0</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat || ( -doubles.min <= gearShootingStartLatitude && gearShootingStartLatitude <= doubles.max ) - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingStartLatitudeDegree"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:90|max:90</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ( - ( -ints.min < getGearShootingStartLatitudeDegree() && getGearShootingStartLatitudeDegree() < ints.max ) - || ( - ( getGearShootingStartLatitudeDegree() == ints.max || getGearShootingStartLatitudeDegree() == -ints.min ) - && getGearShootingStartLatitudeMinute() == 0 && getGearShootingStartLatitudeSecond() == 0 - ) - ) - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingStartLatitudeMinute"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:0|max:60</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ints.min <= getGearShootingStartLatitudeMinute() && getGearShootingStartLatitudeMinute() < ints.max - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingStartLatitudeSecond"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:0|max:60</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ints.min <= getGearShootingStartLatitudeSecond() && getGearShootingStartLatitudeSecond() < ints.max - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <!--gear shooting start longitude validation --> - - <field name="gearShootingStartLongitude"> - - <field-validator type="fieldexpressionwithparams"> - <param name="doubleParams">min:180.0|max:180.0</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat || ( -doubles.min <= gearShootingStartLongitude && gearShootingStartLongitude <= doubles.max ) - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingStartLongitudeDegree"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:180|max:180</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ( - (-ints.min < getGearShootingStartLongitudeDegree() && getGearShootingStartLongitudeDegree() < ints.max) - || ( - ( getGearShootingStartLongitudeDegree() == ints.max || getGearShootingStartLongitudeDegree() == -ints.min ) - && getGearShootingStartLongitudeMinute() == 0 && getGearShootingStartLongitudeSecond() == 0 - ) - ) - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingStartLongitudeMinute"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:0|max:60</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ints.min <= getGearShootingStartLongitudeMinute() && getGearShootingStartLongitudeMinute() < ints.max - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingStartLongitudeSecond"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:0|max:60</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ints.min <= getGearShootingStartLongitudeSecond() && getGearShootingStartLongitudeSecond() < ints.max - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <!--gear shooting end latitude validation --> - - <field name="gearShootingEndLatitude"> - - <field-validator type="fieldexpressionwithparams"> - <param name="doubleParams">min:90.0|max:90.0</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat || ( -doubles.min <= gearShootingEndLatitude && gearShootingEndLatitude <= doubles.max ) - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - - <field name="gearShootingEndLatitudeDegree"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:90|max:90</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ( - (-ints.min < getGearShootingEndLatitudeDegree() && getGearShootingEndLatitudeDegree() < ints.max) - || ( - ( getGearShootingEndLatitudeDegree() == ints.max || getGearShootingEndLatitudeDegree() == -ints.min ) - && getGearShootingEndLatitudeMinute() == 0 && getGearShootingEndLatitudeSecond() == 0 - ) - ) - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingEndLatitudeMinute"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:0|max:60</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ints.min <= getGearShootingEndLatitudeMinute() && getGearShootingEndLatitudeMinute() < ints.max - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingEndLatitudeSecond"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:0|max:60</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ints.min <= getGearShootingEndLatitudeSecond() && getGearShootingEndLatitudeSecond() < ints.max - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <!--gear shooting end longitude validation --> - - <field name="gearShootingEndLongitude"> - - <field-validator type="fieldexpressionwithparams"> - <param name="doubleParams">min:180.0|max:180.0</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat || ( -doubles.min <= gearShootingEndLongitude && gearShootingEndLongitude <= doubles.max ) - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingEndLongitudeDegree"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:180|max:180</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ( - (-ints.min < getGearShootingEndLongitudeDegree() && getGearShootingEndLongitudeDegree() < ints.max) - || ( - ( getGearShootingEndLongitudeDegree() == ints.max || getGearShootingEndLongitudeDegree() == -ints.min ) - && getGearShootingEndLongitudeMinute() == 0 && getGearShootingEndLongitudeSecond() == 0 - ) - ) - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingEndLongitudeMinute"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:0|max:60</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ints.min <= getGearShootingEndLongitudeMinute() && getGearShootingEndLongitudeMinute() < ints.max - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - - <field name="gearShootingEndLongitudeSecond"> - - <field-validator type="fieldexpressionwithparams"> - <param name="intParams">min:0|max:60</param> - <param name="expression"> - <![CDATA[ - useSexagecimalFormat && ints.min <= getGearShootingEndLongitudeSecond() && getGearShootingEndLongitudeSecond() < ints.max - ]]> - </param> - - <message></message> - - </field-validator> - - </field> - -</validators> Copied: trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-warning-validation.xml (from rev 156, trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-warning-validation.xml) =================================================================== --- trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-warning-validation.xml (rev 0) +++ trunk/tutti-ui-swing/src/main/resources/fr/ifremer/tutti/ui/swing/content/operation/EditFishingOperationUIModel-warning-validation.xml 2013-01-08 09:28:42 UTC (rev 157) @@ -0,0 +1,322 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + #%L + Tutti :: UI + $Id$ + $HeadURL$ + %% + Copyright (C) 2012 - 2013 Ifremer + %% + 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% + --> + + +<!DOCTYPE validators PUBLIC + "-//Apache Struts//XWork Validator 1.0.3//EN" + "http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd"> + +<validators> + + <!--gear shooting start latitude validation --> + + <field name="gearShootingStartLatitude"> + + <field-validator type="fieldexpressionwithparams"> + <param name="doubleParams">min:90.0|max:90.0</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat || ( -doubles.min <= gearShootingStartLatitude && gearShootingStartLatitude <= doubles.max ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLatitudeDegree"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:90|max:90</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ( + ( -ints.min < getGearShootingStartLatitudeDegree() && getGearShootingStartLatitudeDegree() < ints.max ) + || ( + ( getGearShootingStartLatitudeDegree() == ints.max || getGearShootingStartLatitudeDegree() == -ints.min ) + && getGearShootingStartLatitudeMinute() == 0 && getGearShootingStartLatitudeSecond() == 0 + ) + ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLatitudeMinute"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingStartLatitudeMinute() && getGearShootingStartLatitudeMinute() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLatitudeSecond"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingStartLatitudeSecond() && getGearShootingStartLatitudeSecond() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <!--gear shooting start longitude validation --> + + <field name="gearShootingStartLongitude"> + + <field-validator type="fieldexpressionwithparams"> + <param name="doubleParams">min:180.0|max:180.0</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat || ( -doubles.min <= gearShootingStartLongitude && gearShootingStartLongitude <= doubles.max ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLongitudeDegree"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:180|max:180</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ( + (-ints.min < getGearShootingStartLongitudeDegree() && getGearShootingStartLongitudeDegree() < ints.max) + || ( + ( getGearShootingStartLongitudeDegree() == ints.max || getGearShootingStartLongitudeDegree() == -ints.min ) + && getGearShootingStartLongitudeMinute() == 0 && getGearShootingStartLongitudeSecond() == 0 + ) + ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLongitudeMinute"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingStartLongitudeMinute() && getGearShootingStartLongitudeMinute() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingStartLongitudeSecond"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingStartLongitudeSecond() && getGearShootingStartLongitudeSecond() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <!--gear shooting end latitude validation --> + + <field name="gearShootingEndLatitude"> + + <field-validator type="fieldexpressionwithparams"> + <param name="doubleParams">min:90.0|max:90.0</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat || ( -doubles.min <= gearShootingEndLatitude && gearShootingEndLatitude <= doubles.max ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + + <field name="gearShootingEndLatitudeDegree"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:90|max:90</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ( + (-ints.min < getGearShootingEndLatitudeDegree() && getGearShootingEndLatitudeDegree() < ints.max) + || ( + ( getGearShootingEndLatitudeDegree() == ints.max || getGearShootingEndLatitudeDegree() == -ints.min ) + && getGearShootingEndLatitudeMinute() == 0 && getGearShootingEndLatitudeSecond() == 0 + ) + ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLatitudeMinute"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingEndLatitudeMinute() && getGearShootingEndLatitudeMinute() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLatitudeSecond"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingEndLatitudeSecond() && getGearShootingEndLatitudeSecond() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <!--gear shooting end longitude validation --> + + <field name="gearShootingEndLongitude"> + + <field-validator type="fieldexpressionwithparams"> + <param name="doubleParams">min:180.0|max:180.0</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat || ( -doubles.min <= gearShootingEndLongitude && gearShootingEndLongitude <= doubles.max ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLongitudeDegree"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:180|max:180</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ( + (-ints.min < getGearShootingEndLongitudeDegree() && getGearShootingEndLongitudeDegree() < ints.max) + || ( + ( getGearShootingEndLongitudeDegree() == ints.max || getGearShootingEndLongitudeDegree() == -ints.min ) + && getGearShootingEndLongitudeMinute() == 0 && getGearShootingEndLongitudeSecond() == 0 + ) + ) + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLongitudeMinute"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingEndLongitudeMinute() && getGearShootingEndLongitudeMinute() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + + <field name="gearShootingEndLongitudeSecond"> + + <field-validator type="fieldexpressionwithparams"> + <param name="intParams">min:0|max:60</param> + <param name="expression"> + <![CDATA[ + useSexagecimalFormat && ints.min <= getGearShootingEndLongitudeSecond() && getGearShootingEndLongitudeSecond() < ints.max + ]]> + </param> + + <message></message> + + </field-validator> + + </field> + +</validators> Modified: trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties =================================================================== --- trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties 2013-01-07 22:58:44 UTC (rev 156) +++ trunk/tutti-ui-swing/src/main/resources/i18n/tutti-ui-swing_fr_FR.properties 2013-01-08 09:28:42 UTC (rev 157) @@ -4,7 +4,6 @@ tutti.action.about.tip=À Propos tutti.action.cancel=Annuler tutti.action.casino-import=Import Casino -tutti.action.catches=Captures tutti.action.close=Fermer tutti.action.configuration=Configuration tutti.action.configuration.tip=Configurer Tutti @@ -12,7 +11,7 @@ tutti.action.edit=Editer tutti.action.exit=Quitter tutti.action.exit.tip=Quitter l'application -tutti.action.fillCatches=Captures +tutti.action.fillCatches=Saisir les captures tutti.action.fillCatches.tip=Saisir des captures tutti.action.generate=Générer tutti.action.generateCampaignName=Générer le nom @@ -33,6 +32,8 @@ tutti.action.site=Site tutti.action.site.tip=Accéder au site du projet Tutti tutti.action.splitSpeciesBatch=Catégoriser un lot +tutti.action.validateCatches=Valider les captures +tutti.action.validateCatches.tip=Valider les captures tutti.application.config=Configuration de l'application Tutti tutti.application.name=Tutti tutti.config.category.applications=Application @@ -187,7 +188,6 @@ tutti.table.benthos.batch.header.speciesByGenusCode=Espèce tutti.table.benthos.batch.header.toConfirm=A Confirmer tutti.table.benthos.batch.header.weight=Poids -tutti.table.fishing.caracteristic.header.key= tutti.table.fishing.environment.header.key=Clé tutti.table.fishing.environment.header.value=Valeur tutti.table.fishing.gearShooting.header.key=Clé @@ -255,6 +255,7 @@ tutti.title.selectedProgram=Série de campagne %s tutti.title.selectedProtocol=Protocol %s tutti.title.splitBatch=Catégoriser un lot +tutti.title.validate.operations=Validation des opérations de pêches (%s) tutti.to.be.done=< A FAIRE > tutti.tooltip.attachment.none=Pas de pièce-jointes tutti.tooltip.comment.none=Pas de commentaire Added: trunk/tutti-ui-swing/src/main/resources/icons/action-validate.png =================================================================== (Binary files differ) Property changes on: trunk/tutti-ui-swing/src/main/resources/icons/action-validate.png ___________________________________________________________________ Added: svn:mime-type + image/png
participants (1)
-
tchemit@users.forge.codelutin.com