This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit 0308cdbd5c9b1e469247cc1139b83c550dee9973 Author: Tony CHEMIT <chemit@codelutin.com> Date: Thu Apr 16 23:03:47 2015 +0200 refs #6986 revue de la gestion du quadrant sur l'écran d'opération de peche palangre --- .../src/main/java/fr/ird/observe/entities/Set.java | 3 ++ .../observe/entities/longline/SetLonglineImpl.java | 26 +++++++------- .../ird/observe/entities/seine/SetSeineImpl.java | 8 +++-- .../ird/observe/ui/content/ContentUIHandler.java | 28 +++++++++++++++ .../ui/content/impl/longline/SetLonglineUI.css | 8 ++--- .../impl/longline/SetLonglineUIHandler.java | 42 ++++++++++++++++++++++ .../content/impl/longline/SetLonglineUIModel.java | 8 ++--- 7 files changed, 100 insertions(+), 23 deletions(-) diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/Set.java b/observe-entities/src/main/java/fr/ird/observe/entities/Set.java index 001fbbe..d43dd22 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/Set.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/Set.java @@ -31,4 +31,7 @@ import org.nuiton.topia.persistence.TopiaEntity; * @since 3.7 */ public interface Set extends TopiaEntity { + + void initCoordinates(); + } diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/longline/SetLonglineImpl.java b/observe-entities/src/main/java/fr/ird/observe/entities/longline/SetLonglineImpl.java index 8ad0f0e..f67b2ee 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/longline/SetLonglineImpl.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/longline/SetLonglineImpl.java @@ -22,6 +22,7 @@ package fr.ird.observe.entities.longline; * #L% */ +import fr.ird.type.CoordinateHelper; import org.nuiton.util.DateUtil; import java.util.Date; @@ -30,47 +31,46 @@ public class SetLonglineImpl extends SetLonglineAbstract { private static final long serialVersionUID = 1L; - protected Integer settingStartQuadrant; - - protected Integer settingEndQuadrant; + @Override + public void initCoordinates() { - protected Integer haulingStartQuadrant; + setSettingStartQuadrant(getSettingStartQuadrant()); + setSettingEndQuadrant(getSettingEndQuadrant()); - protected Integer haulingEndQuadrant; + setHaulingStartQuadrant(getHaulingStartQuadrant()); + setHaulingEndQuadrant(getHaulingEndQuadrant()); + + } public Integer getSettingStartQuadrant() { - return settingStartQuadrant; + return CoordinateHelper.getQuadrant(settingStartLongitude, settingStartLatitude); } public void setSettingStartQuadrant(Integer settingStartQuadrant) { - this.settingStartQuadrant = settingStartQuadrant; fireOnPostWrite(PROPERTY_SETTING_START_QUADRANT, null, settingStartQuadrant); } public Integer getSettingEndQuadrant() { - return settingEndQuadrant; + return CoordinateHelper.getQuadrant(settingEndLongitude, settingEndLatitude); } public void setSettingEndQuadrant(Integer settingEndQuadrant) { - this.settingEndQuadrant = settingEndQuadrant; fireOnPostWrite(PROPERTY_SETTING_END_QUADRANT, null, settingEndQuadrant); } public Integer getHaulingStartQuadrant() { - return haulingStartQuadrant; + return CoordinateHelper.getQuadrant(haulingStartLongitude, haulingStartLatitude); } public void setHaulingStartQuadrant(Integer haulingStartQuadrant) { - this.haulingStartQuadrant = haulingStartQuadrant; fireOnPostWrite(PROPERTY_HAULING_START_QUADRANT, null, haulingStartQuadrant); } public Integer getHaulingEndQuadrant() { - return haulingEndQuadrant; + return CoordinateHelper.getQuadrant(haulingEndLongitude, haulingEndLatitude); } public void setHaulingEndQuadrant(Integer haulingEndQuadrant) { - this.haulingEndQuadrant = haulingEndQuadrant; fireOnPostWrite(PROPERTY_HAULING_END_QUADRANT, null, haulingEndQuadrant); } diff --git a/observe-entities/src/main/java/fr/ird/observe/entities/seine/SetSeineImpl.java b/observe-entities/src/main/java/fr/ird/observe/entities/seine/SetSeineImpl.java index 4df818e..275787e 100644 --- a/observe-entities/src/main/java/fr/ird/observe/entities/seine/SetSeineImpl.java +++ b/observe-entities/src/main/java/fr/ird/observe/entities/seine/SetSeineImpl.java @@ -21,8 +21,8 @@ */ package fr.ird.observe.entities.seine; -import fr.ird.observe.util.Numbers; import fr.ird.observe.entities.constants.seine.SchoolType; +import fr.ird.observe.util.Numbers; import org.nuiton.util.DateUtil; import java.util.Date; @@ -40,6 +40,10 @@ public class SetSeineImpl extends SetSeineAbstract { } @Override + public void initCoordinates() { + } + + @Override public boolean hasTargetCatch() { if (isTargetCatchEmpty()) { return false; @@ -160,7 +164,7 @@ public class SetSeineImpl extends SetSeineAbstract { @Override public void setEndSetTime(Date endSetTime) { if (endSetTimeStamp != null) { - Date dateAndTime = DateUtil.getDateAndTime(endSetTimeStamp, endSetTime, false, false); + Date dateAndTime = DateUtil.getDateAndTime(endSetTimeStamp, endSetTime, false, false); setEndSetTimeStamp(dateAndTime); } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java index 7a5c374..05f636a 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/ContentUIHandler.java @@ -42,6 +42,7 @@ import fr.ird.observe.ui.tree.ObserveTreeHelper; import fr.ird.observe.util.DBHelper; import jaxx.runtime.JAXXContext; import jaxx.runtime.swing.ErrorDialogUI; +import jaxx.runtime.swing.JAXXButtonGroup; import jaxx.runtime.swing.editor.bean.BeanListHeader; import jaxx.runtime.validator.swing.SwingValidatorMessageTableModel; import jaxx.runtime.validator.swing.SwingValidatorUtil; @@ -51,6 +52,7 @@ import org.apache.commons.logging.LogFactory; import org.nuiton.decorator.Decorator; import org.nuiton.decorator.DecoratorUtil; import org.nuiton.decorator.JXPathDecorator; +import org.nuiton.jaxx.widgets.gis.absolute.CoordinatesEditor; import org.nuiton.topia.TopiaContext; import org.nuiton.topia.TopiaException; import org.nuiton.topia.persistence.TopiaEntity; @@ -827,4 +829,30 @@ public abstract class ContentUIHandler<E extends TopiaEntity> { } return title; } + + //FIXME Do it in jaxx + protected void resetQuadrant(CoordinatesEditor editor) { + + editor.setQuadrant(null); + JAXXButtonGroup quadrantBG = editor.getQuadrantBG(); + + quadrantBG.setSelectedValue(null); + quadrantBG.setSelectedButton(null); + + quadrantBG.remove(editor.getQuadrant1()); + quadrantBG.remove(editor.getQuadrant2()); + quadrantBG.remove(editor.getQuadrant3()); + quadrantBG.remove(editor.getQuadrant4()); + + editor.getQuadrant1().setSelected(false); + editor.getQuadrant2().setSelected(false); + editor.getQuadrant3().setSelected(false); + editor.getQuadrant4().setSelected(false); + + quadrantBG.add(editor.getQuadrant1()); + quadrantBG.add(editor.getQuadrant2()); + quadrantBG.add(editor.getQuadrant3()); + quadrantBG.add(editor.getQuadrant4()); + + } } diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUI.css b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUI.css index 9610408..79ffc52 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUI.css +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUI.css @@ -81,7 +81,7 @@ #settingStartCoordinates { propertyLatitude:{SetLongline.PROPERTY_SETTING_START_LATITUDE}; propertyLongitude:{SetLongline.PROPERTY_SETTING_START_LONGITUDE}; - propertyQuadrant:{SetLongline.PROPERTY_SETTING_START_QUADRANT}; + /*propertyQuadrant:{SetLongline.PROPERTY_SETTING_START_QUADRANT};*/ latitude:{bean.getSettingStartLatitude()}; longitude:{bean.getSettingStartLongitude()}; quadrant:{bean.getSettingStartQuadrant()}; @@ -104,7 +104,7 @@ #settingEndCoordinates { propertyLatitude:{SetLongline.PROPERTY_SETTING_END_LATITUDE}; propertyLongitude:{SetLongline.PROPERTY_SETTING_END_LONGITUDE}; - propertyQuadrant:{SetLongline.PROPERTY_SETTING_END_QUADRANT}; + /*propertyQuadrant:{SetLongline.PROPERTY_SETTING_END_QUADRANT};*/ latitude:{bean.getSettingEndLatitude()}; longitude:{bean.getSettingEndLongitude()}; quadrant:{bean.getSettingEndQuadrant()}; @@ -375,7 +375,7 @@ #haulingStartCoordinates { propertyLatitude:{SetLongline.PROPERTY_HAULING_START_LATITUDE}; propertyLongitude:{SetLongline.PROPERTY_HAULING_START_LONGITUDE}; - propertyQuadrant:{SetLongline.PROPERTY_HAULING_START_QUADRANT}; + /*propertyQuadrant:{SetLongline.PROPERTY_HAULING_START_QUADRANT};*/ latitude:{bean.getHaulingStartLatitude()}; longitude:{bean.getHaulingStartLongitude()}; quadrant:{bean.getHaulingStartQuadrant()}; @@ -394,7 +394,7 @@ #haulingEndCoordinates { propertyLatitude:{SetLongline.PROPERTY_HAULING_END_LATITUDE}; propertyLongitude:{SetLongline.PROPERTY_HAULING_END_LONGITUDE}; - propertyQuadrant:{SetLongline.PROPERTY_HAULING_END_QUADRANT}; + /*propertyQuadrant:{SetLongline.PROPERTY_HAULING_END_QUADRANT};*/ latitude:{bean.getHaulingEndLatitude()}; longitude:{bean.getHaulingEndLongitude()}; quadrant:{bean.getHaulingEndQuadrant()}; diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIHandler.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIHandler.java index 1baa2bb..54f8c65 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIHandler.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIHandler.java @@ -164,9 +164,17 @@ public class SetLonglineUIHandler extends ContentUIHandler<SetLongline> { } + + @Override public void openUI() throws Exception { + // Reset quandrant + resetQuadrant(getUi().getSettingStartCoordinates()); + resetQuadrant(getUi().getSettingEndCoordinates()); + resetQuadrant(getUi().getHaulingStartCoordinates()); + resetQuadrant(getUi().getHaulingEndCoordinates()); + if (log.isInfoEnabled()) { log.info("OpenUI: " + getModel()); } @@ -192,6 +200,8 @@ public class SetLonglineUIHandler extends ContentUIHandler<SetLongline> { // creation mode dataService.preCreate(source, activityId, bean, binder, getPreCreateExecutor()); + getUi().getFishingOperationTabPane().setSelectedIndex(0); + } else { // update mode @@ -199,6 +209,9 @@ public class SetLonglineUIHandler extends ContentUIHandler<SetLongline> { } + // passage en coordonnes absolues + utilisation du quadrant + bean.initCoordinates(); + // utilisation du mode requis setContentMode(mode); @@ -217,6 +230,31 @@ public class SetLonglineUIHandler extends ContentUIHandler<SetLongline> { } @Override + protected void onLoad(TopiaContext tx, SetLongline bean) throws TopiaException { + + Float settingStartLatitude = bean.getSettingStartLatitude(); + Float settingStartLongitude = bean.getSettingStartLongitude(); + Float settingEndLatitude = bean.getSettingEndLatitude(); + Float settingEndLongitude = bean.getSettingEndLongitude(); + Float haulingStartLatitude = bean.getHaulingStartLatitude(); + Float haulingStartLongitude = bean.getHaulingStartLongitude(); + Float haulingEndLatitude = bean.getHaulingEndLatitude(); + Float haulingEndLongitude = bean.getHaulingEndLongitude(); + + super.onLoad(tx, bean); + + getBean().setSettingStartLatitude(settingStartLatitude); + getBean().setSettingStartLongitude(settingStartLongitude); + getBean().setSettingEndLatitude(settingEndLatitude); + getBean().setSettingEndLongitude(settingEndLongitude); + getBean().setHaulingStartLatitude(haulingStartLatitude); + getBean().setHaulingStartLongitude(haulingStartLongitude); + getBean().setHaulingEndLatitude(haulingEndLatitude); + getBean().setHaulingEndLongitude(haulingEndLongitude); + + } + + @Override protected void closeSafeUI() { if (log.isInfoEnabled()) { @@ -247,6 +285,10 @@ public class SetLonglineUIHandler extends ContentUIHandler<SetLongline> { // on reporte la position de l'activité pour la position de début de filage Float latitude = parentBean.getLatitude(); Float longitude = parentBean.getLongitude(); + + // On enregistre deux fois les coordonnées car la première fois on perd le signe à cause de l'éditeur + bean.setSettingStartLatitude(latitude); + bean.setSettingStartLongitude(longitude); bean.setSettingStartLatitude(latitude); bean.setSettingStartLongitude(longitude); diff --git a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIModel.java b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIModel.java index 03f7ecc..af4588b 100644 --- a/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIModel.java +++ b/observe-swing/src/main/java/fr/ird/observe/ui/content/impl/longline/SetLonglineUIModel.java @@ -116,14 +116,14 @@ public class SetLonglineUIModel extends ContentUIModel<SetLongline> { SetLongline.PROPERTY_NUMBER, SetLongline.PROPERTY_SETTING_START_TIME_STAMP, + SetLongline.PROPERTY_SETTING_START_QUADRANT, SetLongline.PROPERTY_SETTING_START_LATITUDE, SetLongline.PROPERTY_SETTING_START_LONGITUDE, - SetLongline.PROPERTY_SETTING_START_QUADRANT, SetLongline.PROPERTY_SETTING_END_TIME_STAMP, + SetLongline.PROPERTY_SETTING_END_QUADRANT, SetLongline.PROPERTY_SETTING_END_LATITUDE, SetLongline.PROPERTY_SETTING_END_LONGITUDE, - SetLongline.PROPERTY_SETTING_END_QUADRANT, // setting caracteristics tab SetLongline.PROPERTY_SETTING_SHAPE, @@ -150,15 +150,15 @@ public class SetLonglineUIModel extends ContentUIModel<SetLongline> { // hauling tab SetLongline.PROPERTY_HAULING_DIRECTION_SAME_AS_SETTING, + SetLongline.PROPERTY_HAULING_START_QUADRANT, SetLongline.PROPERTY_HAULING_START_LATITUDE, SetLongline.PROPERTY_HAULING_START_LONGITUDE, SetLongline.PROPERTY_HAULING_START_TIME_STAMP, - SetLongline.PROPERTY_HAULING_START_QUADRANT, + SetLongline.PROPERTY_HAULING_END_QUADRANT, SetLongline.PROPERTY_HAULING_END_LATITUDE, SetLongline.PROPERTY_HAULING_END_LONGITUDE, SetLongline.PROPERTY_HAULING_END_TIME_STAMP, - SetLongline.PROPERTY_HAULING_END_QUADRANT, SetLongline.PROPERTY_HAULING_BREAKS); -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.