Observe-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
June 2019
- 1 participants
- 64 discussions
[Git][ultreiaio/ird-observe][develop] 6 commits: [LL Composition détaillée] Sur le formulaire Brancheline deux champs non...
by Tony CHEMIT 09 Jun '19
by Tony CHEMIT 09 Jun '19
09 Jun '19
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
97924bcb by tchemit at 2019-06-09T12:09:27Z
[LL Composition détaillée] Sur le formulaire Brancheline deux champs non conditionnés - Closes #1316
- - - - -
93c515a0 by tchemit at 2019-06-09T12:10:43Z
[LL Composition détaillé] Sur l'écran Brancheline le label Temps depuis déclanchement dupliqué - Closes #1317
- - - - -
ddfde1c8 by tchemit at 2019-06-09T12:11:32Z
fix BranchelineUIModel javaBean definition
- - - - -
e490d101 by tchemit at 2019-06-09T12:12:18Z
[LL] Patron de génération du schéma détaillé - Closes #1266
- - - - -
5dbc81cd by tchemit at 2019-06-09T13:22:30Z
[LL Composition détaillée] Validateur en erreur sur le formulaire Brancheline - Closes #1318
- - - - -
9d4a7867 by tchemit at 2019-06-09T13:25:56Z
update gitlab issues [skip ci]
- - - - -
24 changed files:
- .gitlab/issue_templates/Contrat-SFA-2017-Anomalie.md
- .gitlab/issue_templates/Contrat-SFA-2017-Evolution.md
- + client-core/.mvn/i18n/parse-validation-messages
- client-core/pom.xml
- client-core/src/main/i18n/getters/java.getter
- + client-core/src/main/i18n/getters/validation-fields.getter
- + client-core/src/main/i18n/getters/validation-messages.getter
- client-core/src/main/java/fr/ird/observe/client/ui/content/api/ContentUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/edit/ContentEditUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/open/ContentOpenableUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/simple/ContentSimpleUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/table/ContentTableUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/api/ref/ContentReferenceUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/BranchlineObsUI.jaxx
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/BranchlineObsUI.jcss
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/BranchlineObsUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/LonglineDetailCompositionObsUI.jaxx
- client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/LonglineDetailCompositionObsUIHandler.java
- + client-core/src/main/resources/fr/ird/observe/client/ui/content/data/ll/observation/LonglineDetailCompositionObsUIModel-update-error-validation.xml
- dto/src/main/java/fr/ird/observe/dto/data/ll/observation/SectionTemplate.java
- observe-i18n/src/main/i18n/translations/observe_en_GB.properties
- observe-i18n/src/main/i18n/translations/observe_es_ES.properties
- observe-i18n/src/main/i18n/translations/observe_fr_FR.properties
- pom.xml
Changes:
=====================================
.gitlab/issue_templates/Contrat-SFA-2017-Anomalie.md
=====================================
@@ -10,5 +10,5 @@
/label ~"Anomalie"
/label ~"IRD-2018-01-V8"
-/milestone %"8.0-RC-1"
+/milestone %"8.0-RC-2"
/assign @tchemit
\ No newline at end of file
=====================================
.gitlab/issue_templates/Contrat-SFA-2017-Evolution.md
=====================================
@@ -1,5 +1,5 @@
/label ~"Evolution"
/label ~"IRD-2018-01-V8"
-/milestone %"8.0-RC-1"
+/milestone %"8.0-RC-2"
/assign @tchemit
\ No newline at end of file
=====================================
client-core/.mvn/i18n/parse-validation-messages
=====================================
=====================================
client-core/pom.xml
=====================================
@@ -770,6 +770,53 @@
</dependencies>
</plugin>
+ <plugin>
+ <groupId>fr.ird.observe.toolkit</groupId>
+ <artifactId>toolbox-maven-plugin</artifactId>
+ <version>${observeToolkitVersion}</version>
+ <executions>
+ <execution>
+ <id>generate-i18n-validator-fields</id>
+ <goals>
+ <goal>generate-i18n-validator-fields</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>generate-validators-descriptor</id>
+ <goals>
+ <goal>generate-validators-descriptor</goal>
+ </goals>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>client-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>fr.ird.observe.toolkit</groupId>
+ <artifactId>common-validation</artifactId>
+ <version>${observeToolkitVersion}</version>
+ </dependency>
+ <dependency>
+ <groupId>io.ultreia.java4all.jaxx</groupId>
+ <artifactId>jaxx-widgets-gis</artifactId>
+ <version>${lib.version.java4all.jaxx}</version>
+ </dependency>
+ <dependency>
+ <groupId>io.ultreia.java4all.jaxx</groupId>
+ <artifactId>jaxx-widgets-temperature</artifactId>
+ <version>${lib.version.java4all.jaxx}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.javassist</groupId>
+ <artifactId>javassist</artifactId>
+ <version>${lib.version.javassist}</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+
</plugins>
</build>
=====================================
client-core/src/main/i18n/getters/java.getter
=====================================
@@ -1040,6 +1040,9 @@ observe.ui.tree.referential.ll.landing
observe.ui.tree.referential.ll.obs
observe.ui.tree.referential.ps.common
observe.ui.tree.referential.ps.obs
+observe.validation.setLonglineObsDetailComposition.invalid.pattern
+observe.validation.setLonglineObsDetailComposition.required.id
+observe.validation.setLonglineObsDetailComposition.required.pattern
observe.validator.field.tip
observe.validator.message.tip
observe.validator.scope.tip
=====================================
client-core/src/main/i18n/getters/validation-fields.getter
=====================================
@@ -0,0 +1 @@
+observe.common.LonglineDetailCompositionObsUIModelDto.generateTabValid
=====================================
client-core/src/main/i18n/getters/validation-messages.getter
=====================================
@@ -0,0 +1 @@
+observe.validation.setLonglineObsDetailComposition.invalid.templates
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/api/ContentUIHandler.java
=====================================
@@ -516,7 +516,7 @@ public abstract class ContentUIHandler<U extends ContentUI> implements ObserveSe
return icon;
}
- protected final void prepareValidators(IdDto editBean) {
+ protected void installValidators(IdDto editBean) {
// reset all validators
SwingValidatorUtil.setValidatorBean(ui, null);
// mark ui as editing
@@ -552,9 +552,12 @@ public abstract class ContentUIHandler<U extends ContentUI> implements ObserveSe
// ui.removeContextValue(model.getBeanType(), "edit");
// dettach all validators
- SwingValidatorUtil.setValidatorBean(ui, null);
+ uninstallValidators();
}
+ protected void uninstallValidators() {
+ SwingValidatorUtil.setValidatorBean(ui, null);
+ }
protected boolean resetEdit;
public boolean isResetEdit() {
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/edit/ContentEditUIHandler.java
=====================================
@@ -53,7 +53,7 @@ public abstract class ContentEditUIHandler<D extends DataDto, R extends DataDtoR
public void startEditUI() {
ContentEditUIModel<D, R> model = getModel();
prepareValidationContext();
- prepareValidators(model.getBean());
+ installValidators(model.getBean());
// addInfoMessageStartEdit();
model.setModified(model.isCreatingMode());
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/open/ContentOpenableUIHandler.java
=====================================
@@ -76,7 +76,7 @@ public abstract class ContentOpenableUIHandler<D extends DataDto, R extends Data
public void startEditUI() {
ContentOpenableUIModel<D, R> model = getModel();
prepareValidationContext();
- prepareValidators(model.getBean());
+ installValidators(model.getBean());
// addInfoMessageStartEdit();
boolean create = model.isCreatingMode();
model.setModified(create);
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/simple/ContentSimpleUIHandler.java
=====================================
@@ -57,7 +57,7 @@ public abstract class ContentSimpleUIHandler<D extends DataDto, U extends Conten
public void startEditUI() {
prepareValidationContext();
ContentSimpleUIModel<D> model = getModel();
- prepareValidators(model.getBean());
+ installValidators(model.getBean());
model.setModified(false);
if (model.isCreatingMode()) {
grabFocusOnForm();
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/table/ContentTableUIHandler.java
=====================================
@@ -188,7 +188,7 @@ public abstract class ContentTableUIHandler<D extends DataDto, C extends DataDto
@Override
public void startEditUI() {
prepareValidationContext();
- prepareValidators(getModel().getBean());
+ installValidators(getModel().getBean());
reselectRow();
getModel().setModified(false);
// addUpdatingMessage();
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/api/ref/ContentReferenceUIHandler.java
=====================================
@@ -216,7 +216,7 @@ public class ContentReferenceUIHandler<D extends ReferentialDto, R extends Refer
removeAllMessages(ui);
model.setEditing(true);
prepareValidationContext();
- prepareValidators(model.getBean());
+ installValidators(model.getBean());
if (model.isCreatingMode()) {
// addInfoMessage(t("observe.message.creating.referentiel"));
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/BranchlineObsUI.jaxx
=====================================
@@ -116,10 +116,7 @@ public void edit(BranchlineObsDto branchline) { getHandler().edit(branchline); }
<cell anchor='east'>
<BeanCheckBox id='timer'/>
</cell>
- <cell>
- <JLabel id='timeSinceContactLabel'/>
- </cell>
- <cell>
+ <cell columns="2">
<TimeEditor id='timeSinceContact' constructorParams='this' beanScope="model"/>
</cell>
</row>
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/BranchlineObsUI.jcss
=====================================
@@ -43,6 +43,14 @@
showTimeEditorSlider:false;
}
+#snapWeight {
+ enabled:{BooleanUtils.isTrue(bean.getWeightedSnap())};
+}
+
+#swivelWeight {
+ enabled:{BooleanUtils.isTrue(bean.getWeightedSwivel())};
+}
+
/* ***************************************************************************** */
/* HOOK AND BAIT TAB ********************************************************** */
/* ***************************************************************************** */
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/BranchlineObsUIModel.java
=====================================
@@ -39,7 +39,7 @@ import java.util.Date;
@GenerateJavaBeanDefinition
public class BranchlineObsUIModel extends ContentSimpleUIModel<BranchlineObsDto> implements JavaBean {
- public static final String PROPERTY_SAVED = "saved";
+ static final String PROPERTY_SAVED = "saved";
private static final long serialVersionUID = 1L;
private BranchlineObsDto branchlineDto;
@@ -82,6 +82,6 @@ public class BranchlineObsUIModel extends ContentSimpleUIModel<BranchlineObsDto>
@Override
public JavaBeanDefinition javaBeanDefinition() {
- return null;
+ return javaBeanDefinition;
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/LonglineDetailCompositionObsUI.jaxx
=====================================
@@ -54,6 +54,12 @@
errorTableModel='{getErrorTableModel()}' context='update-longlineDetailComposition'>
</BeanValidator>
+ <BeanValidator id='generateValidator' autoField='true'
+ beanClass='fr.ird.observe.client.ui.content.data.ll.observation.LonglineDetailCompositionObsUIModel'
+ errorTableModel='{getErrorTableModel()}' context='update'>
+ <field name="generateTabValid" component="sectionTemplatesPane"/>
+ </BeanValidator>
+
<BeanValidator id='sectionValidator' beanClass='fr.ird.observe.dto.data.ll.observation.SectionObsDto'
errorTableModel='{getErrorTableModel()}' context='update-table'>
<field name='basket' component='sectionsPane'/>
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/data/ll/observation/LonglineDetailCompositionObsUIHandler.java
=====================================
@@ -10,12 +10,12 @@ package fr.ird.observe.client.ui.content.data.ll.observation;
* 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>.
@@ -28,6 +28,7 @@ import fr.ird.observe.client.ui.actions.content.api.tab.GoToTabUIActionSupport;
import fr.ird.observe.client.ui.content.api.data.simple.ContentSimpleUIHandler;
import fr.ird.observe.client.ui.content.api.ui.ObserveLayoutFocusTraversalPolicy;
import fr.ird.observe.client.ui.util.UIHelper;
+import fr.ird.observe.dto.IdDto;
import fr.ird.observe.dto.data.ll.observation.BasketObsDto;
import fr.ird.observe.dto.data.ll.observation.BranchlineObsDto;
import fr.ird.observe.dto.data.ll.observation.SectionObsDto;
@@ -40,8 +41,13 @@ import fr.ird.observe.dto.form.FormDefinition;
import fr.ird.observe.services.service.data.ll.observation.SetLonglineObsDetailCompositionService;
import fr.ird.observe.spi.DtoModelHelper;
import org.apache.commons.lang3.BooleanUtils;
+import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.jdesktop.swingx.JXTable;
+import org.jdesktop.swingx.decorator.ColorHighlighter;
+import org.jdesktop.swingx.decorator.ToolTipHighlighter;
+import org.jdesktop.swingx.renderer.StringValue;
import org.nuiton.decorator.Decorator;
import org.nuiton.jaxx.runtime.spi.UIHandler;
import org.nuiton.jaxx.runtime.swing.JVetoableTabbedPane;
@@ -50,6 +56,7 @@ import javax.swing.JComboBox;
import javax.swing.JOptionPane;
import javax.swing.event.ChangeListener;
import javax.swing.event.TableModelListener;
+import java.awt.Color;
import java.awt.Component;
import java.awt.Container;
import java.beans.PropertyChangeListener;
@@ -273,6 +280,7 @@ public class LonglineDetailCompositionObsUIHandler extends ContentSimpleUIHandle
@Override
public void afterInit(LonglineDetailCompositionObsUI ui) {
super.afterInit(ui);
+ ui.getSectionTemplatesTable().setCellSelectionEnabled(false);
ui.get$objectMap().put(GoToTabUIActionSupport.SUB_TABBED_PANE, ui.getBranchlineDetailUI().getSubTabbedPane());
this.validationHelper = new LonglineDetailCompositionObsUIValidationHelper(ui, getDecoratorService());
getBranchlineDetailUIModel().addPropertyChangeListener(BranchlineObsUIModel.PROPERTY_SAVED, branchlineDetailChanged);
@@ -335,7 +343,7 @@ public class LonglineDetailCompositionObsUIHandler extends ContentSimpleUIHandle
BranchlineObsUIModel branchlineUIModel = branchlineObsUI.getModel();
Optional<FormDefinition<BranchlineObsDto>> optionalFormDefinition = DtoModelHelper.getOptionalFormDefinition(BranchlineObsDto.class);
- optionalFormDefinition.ifPresent(t->branchlineObsUI.getModel().getReferenceCache().loadReferentialReferenceSetsInModel(t, true));
+ optionalFormDefinition.ifPresent(t -> branchlineObsUI.getModel().getReferenceCache().loadReferentialReferenceSetsInModel(t, true));
branchlineUIModel.setForm(branchlineDtoForm);
//FIXME Validate this default date
@@ -374,6 +382,82 @@ public class LonglineDetailCompositionObsUIHandler extends ContentSimpleUIHandle
}
}
+ @Override
+ protected void installValidators(IdDto editBean) {
+ super.installValidators(editBean);
+ ui.getGenerateValidator().setBean(getModel());
+ }
+
+ @Override
+ protected void uninstallValidators() {
+ super.uninstallValidators();
+ ui.getGenerateValidator().setBean(null);
+ }
+
+ @Override
+ public void startEditUI() {
+ super.startEditUI();
+ ui.getSectionTemplatesTable().addHighlighter(new ColorHighlighter((renderer, adapter) -> {
+ JXTable component = (JXTable) adapter.getComponent();
+ SectionObsTemplateTableModel model = (SectionObsTemplateTableModel) component.getModel();
+ int row = adapter.convertRowIndexToModel(adapter.row);
+ SectionTemplate node = model.getData(row);
+ if (node.isEmpty()) {
+ return false;
+ }
+ switch (adapter.convertColumnIndexToModel(adapter.column)) {
+ case 0:
+ return !node.isIdValid();
+ case 1:
+ return !node.isFloatlineLengthsValid();
+ }
+ return true;
+ }, ObserveSwingApplicationContext.get().getConfig().getFloatingObjectMaterialErrorColor(), Color.WHITE,ObserveSwingApplicationContext.get().getConfig().getFloatingObjectMaterialErrorColor(), Color.WHITE));
+ ui.getSectionTemplatesTable().addHighlighter(new ToolTipHighlighter((renderer, adapter) -> {
+ JXTable component = (JXTable) adapter.getComponent();
+ SectionObsTemplateTableModel model = (SectionObsTemplateTableModel) component.getModel();
+ int row = adapter.convertRowIndexToModel(adapter.row);
+ SectionTemplate node = model.getData(row);
+ if (node.isEmpty()) {
+ return false;
+ }
+ switch (adapter.convertColumnIndexToModel(adapter.column)) {
+ case 0:
+ return !node.isIdValid();
+ case 1:
+ return !node.isFloatlineLengthsValid();
+ }
+ return true;
+ }, (StringValue) value -> {
+ int selectedColumn = ui.getSectionTemplatesTable().getSelectedColumn();
+ String str = (String) value;
+ boolean empty = StringUtils.isEmpty(str);
+ switch (selectedColumn) {
+ case 0:
+ return t("observe.validation.setLonglineObsDetailComposition.required.id");
+ case 1:
+ return empty?t("observe.validation.setLonglineObsDetailComposition.required.pattern"):t("observe.validation.setLonglineObsDetailComposition.invalid.pattern");
+ }
+ return null;
+ }));
+// ui.getSectionTemplatesTable().addHighlighter(new IconHighlighter((renderer, adapter) -> {
+// JXTable component = (JXTable) adapter.getComponent();
+// SectionObsTemplateTableModel model = (SectionObsTemplateTableModel) component.getModel();
+// int row = adapter.convertRowIndexToModel(adapter.row);
+// SectionTemplate node = model.getData(row);
+// if (node.isEmpty()) {
+// return false;
+// }
+// switch (adapter.convertColumnIndexToModel(adapter.column)) {
+// case 0:
+// return !node.isIdValid();
+// case 1:
+// return !node.isFloatlineLengthsValid();
+// }
+// return true;
+// }, JTabbedPaneValidator.ERROR_ICON));
+ }
+
public void insertBeforeSelectedSectionTemplate() {
getSectionTemplatesTableModel().insertBeforeSelectedRow();
}
=====================================
client-core/src/main/resources/fr/ird/observe/client/ui/content/data/ll/observation/LonglineDetailCompositionObsUIModel-update-error-validation.xml
=====================================
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ #%L
+ ObServe :: Client core
+ %%
+ Copyright (C) 2008 - 2019 IRD, Code Lutin, Ultreia.io
+ %%
+ 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="generateTabValid">
+ <field-validator type="fieldexpression" short-circuit="true">
+ <param name="expression">
+ <![CDATA[ generateTabValid ]]>
+ </param>
+ <message>observe.validation.setLonglineObsDetailComposition.invalid.templates</message>
+ </field-validator>
+ </field>
+</validators>
=====================================
dto/src/main/java/fr/ird/observe/dto/data/ll/observation/SectionTemplate.java
=====================================
@@ -10,12 +10,12 @@ package fr.ird.observe.dto.data.ll.observation;
* 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>.
@@ -23,6 +23,7 @@ package fr.ird.observe.dto.data.ll.observation;
*/
import com.google.common.base.Preconditions;
+import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.jdesktop.beans.AbstractSerializableBean;
@@ -84,7 +85,9 @@ public class SectionTemplate extends AbstractSerializableBean {
}
public boolean isFloatlineLengthsValid() {
-
+ if (floatlineLengths == null) {
+ return false;
+ }
Matcher matcher = FLOATLINE_LENGTHS_PATTERN.matcher(floatlineLengths);
return matcher.matches();
@@ -92,7 +95,7 @@ public class SectionTemplate extends AbstractSerializableBean {
public List<Float> getFloatlineLengthsAsList() {
- String[] parts = floatlineLengths.split("\\/");
+ String[] parts = floatlineLengths.split("/");
List<Float> newLengths = new ArrayList<>(parts.length);
for (String part : parts) {
Float aFloat = Float.valueOf(part);
@@ -179,4 +182,12 @@ public class SectionTemplate extends AbstractSerializableBean {
result = 31 * result + (floatlineLengths == null ? 0 : floatlineLengths.hashCode());
return result;
}
+
+ public boolean isIdValid() {
+ return StringUtils.isNotEmpty(id);
+ }
+
+ public boolean isEmpty() {
+ return StringUtils.isEmpty(id) && StringUtils.isEmpty(floatlineLengths);
+ }
}
=====================================
observe-i18n/src/main/i18n/translations/observe_en_GB.properties
=====================================
@@ -1446,6 +1446,7 @@ observe.common.LonglineDetailCompositionObsDto.sectionsTable.template=Template
observe.common.LonglineDetailCompositionObsDto.sectionsTable.template.tip=Template used to generate baskets floatline lengths
observe.common.LonglineDetailCompositionObsDto.title=Detailed composition
observe.common.LonglineDetailCompositionObsDto.title.section.cant.use.firstTemplate=Can't use the first template while generating
+observe.common.LonglineDetailCompositionObsUIModelDto.generateTabValid=Templates
observe.common.LonglineGlobalCompositionDto.message.updating=Updating global composition
observe.common.LonglineGlobalCompositionLogbookDto.message.updating=Updating global composition
observe.common.LonglineGlobalCompositionObsDto.message.updating=Updating global composition
@@ -3611,6 +3612,10 @@ observe.validation.setLongline.required.settingStartTimeStamp=Timestamp must be
observe.validation.setLongline.required.totalSectionsCount=Total sections count must be filled.
observe.validation.setLongline.settingEndTimeStamp.before.haulingStartTimeStamp=Setting end time must be before hauling start time.
observe.validation.setLongline.settingStartTimeStamp.before.settingEndTimeStamp=Setting start time must be before setting end time.
+observe.validation.setLonglineObsDetailComposition.invalid.pattern=Pattern format is 'x/y/z/...'
+observe.validation.setLonglineObsDetailComposition.invalid.templates=Templates are not valid, see tooltip on error cells
+observe.validation.setLonglineObsDetailComposition.required.id=Id must be filled.
+observe.validation.setLonglineObsDetailComposition.required.pattern=Pattern must be filled.
observe.validation.shipOwner.desactivated.country=Selected ship owner is disabled.
observe.validation.shipOwner.required.code=Code is mandatory.
observe.validation.shipOwner.required.label=Label is mandatory.
=====================================
observe-i18n/src/main/i18n/translations/observe_es_ES.properties
=====================================
@@ -1446,6 +1446,7 @@ observe.common.LonglineDetailCompositionObsDto.sectionsTable.template=Template
observe.common.LonglineDetailCompositionObsDto.sectionsTable.template.tip=Template
observe.common.LonglineDetailCompositionObsDto.title=Esquema del palangre
observe.common.LonglineDetailCompositionObsDto.title.section.cant.use.firstTemplate=Impossible de utilizar el primer modelo durante la generación
+observe.common.LonglineDetailCompositionObsUIModelDto.generateTabValid=Templates \#TODO
observe.common.LonglineGlobalCompositionDto.message.updating=Composición global del palangre en proceso de modificación
observe.common.LonglineGlobalCompositionLogbookDto.message.updating=Composición global del palangre en proceso de modificación
observe.common.LonglineGlobalCompositionObsDto.message.updating=Composición global del palangre en proceso de modificación
@@ -3611,6 +3612,10 @@ observe.validation.setLongline.required.settingStartTimeStamp=Timestamp de inici
observe.validation.setLongline.required.totalSectionsCount=Número de secciones vacío.
observe.validation.setLongline.settingEndTimeStamp.before.haulingStartTimeStamp=La hora de inicio de arrastre debe ser superior o igual a la hora de fin de calada.
observe.validation.setLongline.settingStartTimeStamp.before.settingEndTimeStamp=L'heure de fin de calada debe ser superior o igual a la hora de inicio de calada.
+observe.validation.setLonglineObsDetailComposition.invalid.pattern=Le format du patron doit être de la forme x/y/z/... \#TODO
+observe.validation.setLonglineObsDetailComposition.invalid.templates=Templates are not valid, see tooltip on error cells. \#TODO
+observe.validation.setLonglineObsDetailComposition.required.id=Identifiant non renseigné \#TODO
+observe.validation.setLonglineObsDetailComposition.required.pattern=Patron non renseigné \#TODO
observe.validation.shipOwner.desactivated.country=L'armateur sélectionné est désactivé. \#TODO
observe.validation.shipOwner.required.code=Le code est obligatoire. \#TODO
observe.validation.shipOwner.required.label=Le code est obligatoire. \#TODO
=====================================
observe-i18n/src/main/i18n/translations/observe_fr_FR.properties
=====================================
@@ -1446,6 +1446,7 @@ observe.common.LonglineDetailCompositionObsDto.sectionsTable.template=Patron
observe.common.LonglineDetailCompositionObsDto.sectionsTable.template.tip=Patron
observe.common.LonglineDetailCompositionObsDto.title=Schéma de palangre
observe.common.LonglineDetailCompositionObsDto.title.section.cant.use.firstTemplate=Impossible d'utiliser le premier modèle lors de la génération
+observe.common.LonglineDetailCompositionObsUIModelDto.generateTabValid=Templates
observe.common.LonglineGlobalCompositionDto.message.updating=Composition globale de la palangre en cours de modification
observe.common.LonglineGlobalCompositionLogbookDto.message.updating=Composition globale de la palangre en cours de modification
observe.common.LonglineGlobalCompositionObsDto.message.updating=Composition globale de la palangre en cours de modification
@@ -3611,6 +3612,10 @@ observe.validation.setLongline.required.settingStartTimeStamp=Horodatage de déb
observe.validation.setLongline.required.totalSectionsCount=Nombre de sections non renseigné.
observe.validation.setLongline.settingEndTimeStamp.before.haulingStartTimeStamp=L'heure de début de virage doit être supérieure ou égal à l'heure de fin de filage.
observe.validation.setLongline.settingStartTimeStamp.before.settingEndTimeStamp=L'heure de fin de filage doit être supérieure ou égal à l'heure de début de filage.
+observe.validation.setLonglineObsDetailComposition.invalid.pattern=Le format du patron doit être de la forme x/y/z/...
+observe.validation.setLonglineObsDetailComposition.invalid.templates=Les templates ne sont pas valides, passer en revue les cellules en erreur
+observe.validation.setLonglineObsDetailComposition.required.id=Identifiant non renseigné
+observe.validation.setLonglineObsDetailComposition.required.pattern=Patron non renseigné
observe.validation.shipOwner.desactivated.country=L'armateur sélectionné est désactivé.
observe.validation.shipOwner.required.code=Le code est obligatoire.
observe.validation.shipOwner.required.label=Le libellé est obligatoire.
=====================================
pom.xml
=====================================
@@ -156,7 +156,7 @@
<maven.build.timestamp.format>dd/MM/yyyy HH:mm z</maven.build.timestamp.format>
<buildDate>${maven.build.timestamp}</buildDate>
- <observeToolkitVersion>4.11</observeToolkitVersion>
+ <observeToolkitVersion>4.12</observeToolkitVersion>
<lib.version.nuiton.validation>3.1</lib.version.nuiton.validation>
<!--can't use 1.4.197 (date has changed + blob also)-->
<lib.version.h2>1.4.196</lib.version.h2>
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/3985d9113c344528e0adb0f460…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/3985d9113c344528e0adb0f460…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Rafraichissement de la page 'A propos' - See #1237
by Tony CHEMIT 08 Jun '19
by Tony CHEMIT 08 Jun '19
08 Jun '19
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
3985d911 by tchemit at 2019-06-08T16:38:34Z
Rafraichissement de la page 'A propos' - See #1237
- - - - -
10 changed files:
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/help/ShowAboutAction.java
- + client-core/src/main/resources/icons/logo_cro.jpg
- + client-core/src/main/resources/icons/logo_feamp.png
- client-core/src/main/resources/icons/logo_ird.png
- + client-core/src/main/resources/icons/logo_obs7.png
- + client-core/src/main/resources/icons/logo_sfa.jpg
- observe-i18n/src/main/i18n/templates/about_en_GB.ftl
- observe-i18n/src/main/i18n/templates/about_fr_FR.ftl
- src/site/resources/img/logo_ird.png
- src/site/site_fr.xml
Changes:
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/help/ShowAboutAction.java
=====================================
@@ -34,14 +34,19 @@ import org.nuiton.jaxx.widgets.about.AboutUI;
import org.nuiton.jaxx.widgets.about.AboutUIBuilder;
import org.nuiton.util.Resource;
+import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import java.awt.BorderLayout;
+import java.awt.Dimension;
+import java.awt.GridLayout;
+import java.awt.Image;
import java.awt.event.ActionEvent;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.Reader;
import java.nio.charset.StandardCharsets;
+import java.util.Objects;
import static io.ultreia.java4all.i18n.I18n.t;
@@ -70,7 +75,7 @@ public class ShowAboutAction extends MenuActionSupport {
String changelog = null;
try {
- try (Reader resource = new InputStreamReader(getClass().getClassLoader().getResourceAsStream("META-INF/" + name + "-CHANGELOG.md"), StandardCharsets.UTF_8)) {
+ try (Reader resource = new InputStreamReader(Objects.requireNonNull(getClass().getClassLoader().getResourceAsStream("META-INF/" + name + "-CHANGELOG.md")), StandardCharsets.UTF_8)) {
Node node = Parser.builder().build().parseReader(resource);
changelog = HtmlRenderer.builder().build().render(node);
}
@@ -95,11 +100,29 @@ public class ShowAboutAction extends MenuActionSupport {
// tweak top panel
JPanel topPanel = about.getTopPanel();
topPanel.removeAll();
+ JPanel topPanel2 = new JPanel();
+ JPanel topPanel3 = new JPanel();
topPanel.setLayout(new BorderLayout());
- topPanel.add(new JLabel(Resource.getIcon("/icons/logo.png")), BorderLayout.WEST);
- topPanel.add(new JLabel(Resource.getIcon("/icons/logo_ird.png")), BorderLayout.EAST);
+ topPanel2.setLayout(new GridLayout(1,0));
+ topPanel3.setLayout(new GridLayout(1,0));
+ topPanel.add(topPanel2, BorderLayout.CENTER);
+ topPanel.add(topPanel3, BorderLayout.SOUTH);
+
+ int width = (int) (about.getOwner().getWidth() * 0.9);
+ int height = (int) (about.getOwner().getHeight() * 0.9)/6;
+
+ topPanel2.add(new JLabel(Resource.getIcon("/icons/logo_obs7.png")));
+ topPanel2.add(new JLabel(Resource.getIcon("/icons/logo_ird.png")));
+
+ topPanel3.add(new JLabel(getImage("/icons/logo_sfa.jpg", width/4, height)));
+ topPanel3.add(new JLabel(getImage("/icons/logo_cro.jpg", width/4, height)));
+ topPanel3.add(new JLabel(getImage("/icons/logo_feamp.png", width/4, height)));
about.display();
}
+
+ private ImageIcon getImage(String image, int width, int height) {
+ return new ImageIcon(Resource.getIcon(image).getImage().getScaledInstance(width, height, Image.SCALE_DEFAULT));
+ }
}
=====================================
client-core/src/main/resources/icons/logo_cro.jpg
=====================================
Binary files /dev/null and b/client-core/src/main/resources/icons/logo_cro.jpg differ
=====================================
client-core/src/main/resources/icons/logo_feamp.png
=====================================
Binary files /dev/null and b/client-core/src/main/resources/icons/logo_feamp.png differ
=====================================
client-core/src/main/resources/icons/logo_ird.png
=====================================
Binary files a/client-core/src/main/resources/icons/logo_ird.png and b/client-core/src/main/resources/icons/logo_ird.png differ
=====================================
client-core/src/main/resources/icons/logo_obs7.png
=====================================
Binary files /dev/null and b/client-core/src/main/resources/icons/logo_obs7.png differ
=====================================
client-core/src/main/resources/icons/logo_sfa.jpg
=====================================
Binary files /dev/null and b/client-core/src/main/resources/icons/logo_sfa.jpg differ
=====================================
observe-i18n/src/main/i18n/templates/about_en_GB.ftl
=====================================
@@ -22,34 +22,36 @@
<html>
<body>
<h3>ObServe</h3>
-<a href="http://www.ird.fr/informatique-scientifique/projets/observe/">Système d'Information,
- d'Observation et de Suivi des pêches thonières tropicales de surface.</a>
+<a href="http://www.ird.fr/informatique-scientifique/projets/observe/">Système informatique de gestion de données
+ d'observations embarquées de pêche à la senne et à la palangre.</a>
<hr/>
<p>
- Application de saisie des données observateurs et de consultation de telles données depuis une base <i>Obstuna</i>.
+ This project was initialized by IRD in 2009. Financial contributors are:
</p>
+<ul>
+ <li>Institut de Recherche pour le Développement (IRD)</li>
+ <li>Fond Européen pour les Affaires Maritimes et la Pêche (FEAMP)</li>
+ <li>Seychelles Fishing Authority (SFA)</li>
+ <li>AZTI Tecnalia</li>
+ <li>Orthongel</li>
+</ul>
<p>
- Ce projet a été initiée en 2008 par l'unité US 007-OSIRIS de <a href="http://www.ird.fr">l'IRD</a> dans le cadre
- d'un
- <a href="http://www.ird.fr/informatique-scientifique/soutien/spirales/anciens_projet…">project
- spirale</a>.</p>
-<p>
- Il a été réalisé par la société <a href="http://codelutin.com">Code Lutin</a> en 2009.
+ It was realized by compagnies <a href="http://codelutin.com">Code Lutin</a> and <a href="https://ultreia.io">Ultreia.io</a> since 2009.
</p>
<br/>
<hr/>
<p>
- Pour plus d'informations, vous pouvez visiter le <a href="http://observe.codelutin.com">site du projet</a>.
+ For more information, you might visit <a href="https://ultreiaio.gitlab.io/ird-observe">project's site</a>.
</p>
-<h4>Version du locigiel</h4>
+<h4>Version</h4>
<dl>
<dt>Version</dt>
<dd>${buildVersion}</dd>
<dt>Date</dt>
<dd>${buildDate?string('dd.MM.yyyy HH:mm:ss')}</dd>
- <dt>Numéro de build</dt>
- <dd><a href="https://gitlab.nuiton.org/codelutin/observe/commit/${buildNumber}">${buildNumber}</a></dd>
+ <dt>Build number</dt>
+ <dd><a href="https://gitlab.com/ultreiaio/ird-observe/commit/${buildNumber}">${buildNumber}</a></dd>
</dl>
</body>
=====================================
observe-i18n/src/main/i18n/templates/about_fr_FR.ftl
=====================================
@@ -22,24 +22,26 @@
<html>
<body>
<h3>ObServe</h3>
-<a href="http://www.ird.fr/informatique-scientifique/projets/observe/">Système d'Information,
- d'Observation et de Suivi des pêches thonières tropicales de surface.</a>
+<a href="http://www.ird.fr/informatique-scientifique/projets/observe/">Système informatique de gestion de données
+ d'observations embarquées de pêche à la senne et à la palangre.</a>
<hr/>
<p>
- Application de saisie des données observateurs et de consultation de telles données depuis une base <i>Obstuna</i>.
+ Ce projet a été initiée par l'IRD en 2009. Les contributeurs financiers sont :
</p>
+<ul>
+ <li>Institut de Recherche pour le Développement (IRD)</li>
+ <li>Fond Européen pour les Affaires Maritimes et la Pêche (FEAMP)</li>
+ <li>Seychelles Fishing Authority (SFA)</li>
+ <li>AZTI Tecnalia</li>
+ <li>Orthongel</li>
+</ul>
<p>
- Ce projet a été initiée en 2008 par l'unité US 007-OSIRIS de <a href="http://www.ird.fr">l'IRD</a> dans le cadre
- d'un
- <a href="http://www.ird.fr/informatique-scientifique/soutien/spirales/anciens_projet…">project
- spirale</a>.</p>
-<p>
- Il a été réalisé par la société <a href="http://codelutin.com">Code Lutin</a> en 2009.
+ Il a été réalisé par les sociétés <a href="http://codelutin.com">Code Lutin</a> et <a href="https://ultreia.io">Ultreia.io</a> depuis 2009.
</p>
<br/>
<hr/>
<p>
- Pour plus d'informations, vous pouvez visiter le <a href="http://observe.codelutin.com">site du projet</a>.
+ Pour plus d'informations, vous pouvez visiter le <a href="https://ultreiaio.gitlab.io/ird-observe">site du projet</a>.
</p>
<h4>Version du locigiel</h4>
=====================================
src/site/resources/img/logo_ird.png
=====================================
Binary files a/src/site/resources/img/logo_ird.png and b/src/site/resources/img/logo_ird.png differ
=====================================
src/site/site_fr.xml
=====================================
@@ -52,6 +52,12 @@
<href>index.html</href>
</bannerLeft>
+ <bannerRight>
+ <name>${project.name}</name>
+ <src>./img/logo_ird.png</src>
+ <href>index.html</href>
+ </bannerRight>
+
<poweredBy>
<logo href="http://jaxx.nuiton.org" name="JAXX" width="120" img="./img/jaxx-logo.png"/>
<logo href="http://topia.nuiton.org" name="ToPIA" width="120" img="./img/topia-logo.png"/>
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/3985d9113c344528e0adb0f4603…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/3985d9113c344528e0adb0f4603…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Improve navigation icons + only let access to navigation menus if only possible
by Tony CHEMIT 08 Jun '19
by Tony CHEMIT 08 Jun '19
08 Jun '19
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
ce2492d7 by tchemit at 2019-06-08T14:32:55Z
Improve navigation icons + only let access to navigation menus if only possible
- - - - -
12 changed files:
- client-configuration/src/main/java/fr/ird/observe/client/configuration/NavigationTreeConfigBean.java
- client-core/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineLandingAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineLogbookActivityAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineLogbookSampleAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineObsActivityAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineProgramAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineTripAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineActivityAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineProgramAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineRouteAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineTripAction.java
Changes:
=====================================
client-configuration/src/main/java/fr/ird/observe/client/configuration/NavigationTreeConfigBean.java
=====================================
@@ -32,6 +32,10 @@ import io.ultreia.java4all.bean.AbstractJavaBean;
public class NavigationTreeConfigBean extends AbstractJavaBean implements NavigationTreeConfig {
+ public static final String SHOW_SEINE_TRIP = "showSeineTrip";
+ public static final String SHOW_REFERENTIAL = "showReferential";
+ public static final String SHOW_LONGLINE_TRIP = "showLonglineTrip";
+ public static final String SHOW_EMPTY_PROGRAM = "showEmptyProgram";
private boolean showSeineTrip = true;
private boolean showLonglineTrip = true;
private boolean showReferential = true;
@@ -46,7 +50,7 @@ public class NavigationTreeConfigBean extends AbstractJavaBean implements Naviga
public void setShowSeineTrip(boolean showSeineTrip) {
boolean oldValue = isShowSeineTrip();
this.showSeineTrip = showSeineTrip;
- firePropertyChange("showSeineTrip", oldValue, showSeineTrip);
+ firePropertyChange(SHOW_SEINE_TRIP, oldValue, showSeineTrip);
}
@Override
@@ -58,7 +62,7 @@ public class NavigationTreeConfigBean extends AbstractJavaBean implements Naviga
public void setShowLonglineTrip(boolean showLonglineTrip) {
boolean oldValue = isShowLonglineTrip();
this.showLonglineTrip = showLonglineTrip;
- firePropertyChange("showLonglineTrip", oldValue, showLonglineTrip);
+ firePropertyChange(SHOW_LONGLINE_TRIP, oldValue, showLonglineTrip);
}
@Override
@@ -70,7 +74,7 @@ public class NavigationTreeConfigBean extends AbstractJavaBean implements Naviga
public void setShowReferential(boolean showReferential) {
boolean oldValue = isShowReferential();
this.showReferential = showReferential;
- firePropertyChange("showReferential", oldValue, showReferential);
+ firePropertyChange(SHOW_REFERENTIAL, oldValue, showReferential);
}
@Override
@@ -82,6 +86,6 @@ public class NavigationTreeConfigBean extends AbstractJavaBean implements Naviga
public void setShowEmptyProgram(boolean showEmptyProgram) {
boolean oldValue = isShowEmptyProgram();
this.showEmptyProgram = showEmptyProgram;
- firePropertyChange("showEmptyProgram", oldValue, showEmptyProgram);
+ firePropertyChange(SHOW_EMPTY_PROGRAM, oldValue, showEmptyProgram);
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
=====================================
@@ -24,6 +24,7 @@ package fr.ird.observe.client.ui;
import fr.ird.observe.client.ObserveRunner;
import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.configuration.ClientConfig;
+import fr.ird.observe.client.configuration.NavigationTreeConfigBean;
import fr.ird.observe.client.db.ObserveSwingDataSource;
import fr.ird.observe.client.ui.actions.UIActionSupport;
import fr.ird.observe.client.ui.actions.main.ChangeFocusGlobalUIAction;
@@ -428,12 +429,19 @@ public class ObserveMainUIInitializer {
ui.getRootPane().getActionMap().put(ChangeFocusGlobalUIAction.ACTION_NAME, action);
ui.getRootPane().getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(action.getAcceleratorKey(), ChangeFocusGlobalUIAction.ACTION_NAME);
+ NavigationTreeConfigBean config = ui.getNavigationUI().getTreeModel().getConfig();
+
ObserveSeineEditModel seineEditModel = ObserveSwingApplicationContext.get().getNavigationEdit().getSeine();
- seineEditModel.addPropertyChangeListener(ObserveSeineEditModel.PROPERTY_ENABLED, e -> updateNavigationSeine((Boolean) e.getNewValue()));
+ seineEditModel.addPropertyChangeListener(ObserveSeineEditModel.PROPERTY_ENABLED, e -> updateNavigationSeine(config.isShowSeineTrip() && Objects.equals(Boolean.TRUE, e.getNewValue())));
+ config.addPropertyChangeListener(NavigationTreeConfigBean.SHOW_SEINE_TRIP, e -> updateNavigationSeine(seineEditModel.isEnabled() && Objects.equals(Boolean.TRUE, e.getNewValue())));
+
ObserveLonglineEditModel longlineEditModel = ObserveSwingApplicationContext.get().getNavigationEdit().getLongline();
- longlineEditModel.addPropertyChangeListener(ObserveLonglineEditModel.PROPERTY_ENABLED, e -> updateNavigationLongline((Boolean) e.getNewValue()));
- ui.getNavigationUI().getTreeModel().getConfig().addPropertyChangeListener("showReferential", e -> updateReferentialNavigation((Boolean) e.getNewValue()));
- updateReferentialNavigation(ui.getNavigationUI().getTreeModel().getConfig().isShowReferential());
+ longlineEditModel.addPropertyChangeListener(ObserveLonglineEditModel.PROPERTY_ENABLED, e -> updateNavigationLongline(config.isShowLonglineTrip() && Objects.equals(Boolean.TRUE, e.getNewValue())));
+ config.addPropertyChangeListener(NavigationTreeConfigBean.SHOW_LONGLINE_TRIP, e -> updateNavigationLongline(longlineEditModel.isEnabled() && Objects.equals(Boolean.TRUE, e.getNewValue())));
+
+ config.addPropertyChangeListener(NavigationTreeConfigBean.SHOW_REFERENTIAL, e -> updateReferentialNavigation((Boolean) e.getNewValue()));
+ updateReferentialNavigation(config.isShowReferential());
+
}
private void updateReferentialNavigation(Boolean newValue) {
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineLandingAction.java
=====================================
@@ -41,7 +41,7 @@ public class SelectLonglineLandingAction extends SelectEditDataAction {
(int) 'F',
t("observe.common.TripLonglineLandingDto.action.goToOpen.short"),
t("observe.common.TripLonglineLandingDto.action.goToOpen.tip"),
- "navigation.data.longline.LandingLongline");
+ "navigation.data.ll.landing.LandingLongline");
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineLogbookActivityAction.java
=====================================
@@ -41,7 +41,7 @@ public class SelectLonglineLogbookActivityAction extends SelectEditDataAction {
(int) 'D',
t("observe.common.ActivityLogbookDto.action.goToOpen.short"),
t("observe.common.ActivityLogbookDto.action.goToOpen.tip"),
- "navigation.data.longline.ActivityLonglineLogbook");
+ "navigation.data.ll.logbook.ActivityLonglineLogbook");
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineLogbookSampleAction.java
=====================================
@@ -41,7 +41,7 @@ public class SelectLonglineLogbookSampleAction extends SelectEditDataAction {
(int) 'E',
t("observe.common.TripLonglineSampleLogbookDto.action.goToOpen.short"),
t("observe.common.TripLonglineSampleLogbookDto.action.goToOpen.tip"),
- "navigation.data.longline.SampleLogbook");
+ "navigation.data.ll.logbook.SampleLogbook");
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineObsActivityAction.java
=====================================
@@ -41,7 +41,7 @@ public class SelectLonglineObsActivityAction extends SelectEditDataAction {
(int) 'C',
t("observe.common.ActivityObsDto.action.goToOpen.short"),
t("observe.common.ActivityObsDto.action.goToOpen.tip"),
- "navigation.data.longline.ActivityLonglineObs");
+ "navigation.data.ll.observation.ActivityLonglineObs");
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineProgramAction.java
=====================================
@@ -39,6 +39,6 @@ public class SelectLonglineProgramAction extends SelectEditDataAction {
super(mainUI, ObserveLonglineProgramEditNode.class, (int) 'A',
t("observe.common.ProgramDto.action.goToOpen.short"),
t("observe.common.ProgramDto.action.goToOpen.tip"),
- "navigation.referential.Program");
+ "navigation.referential.common.Program");
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineTripAction.java
=====================================
@@ -41,7 +41,7 @@ public class SelectLonglineTripAction extends SelectEditDataAction {
(int) 'B',
t("observe.common.TripDto.action.goToOpen.short"),
t("observe.common.TripDto.action.goToOpen.tip"),
- "navigation.data.longline.TripLongline");
+ "navigation.data.ll.common.TripLongline");
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineActivityAction.java
=====================================
@@ -41,7 +41,7 @@ public class SelectSeineActivityAction extends SelectEditDataAction {
(int) 'D',
t("observe.common.ActivityDto.action.goToOpen.short"),
t("observe.common.ActivityDto.action.goToOpen.tip"),
- "navigation.data.seine.ActivitySeine");
+ "navigation.data.ps.observation.ActivitySeine");
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineProgramAction.java
=====================================
@@ -41,6 +41,6 @@ public class SelectSeineProgramAction extends SelectEditDataAction {
(int) 'A',
t("observe.common.ProgramDto.action.goToOpen.short"),
t("observe.common.ProgramDto.action.goToOpen.tip"),
- "navigation.referential.Program");
+ "navigation.referential.common.Program");
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineRouteAction.java
=====================================
@@ -41,6 +41,6 @@ public class SelectSeineRouteAction extends SelectEditDataAction {
(int) 'C',
t("observe.common.RouteDto.action.goToOpen.short"),
t("observe.common.RouteDto.action.goToOpen.tip"),
- "navigation.data.seine.Route");
+ "navigation.data.ps.observation.Route");
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineTripAction.java
=====================================
@@ -41,7 +41,7 @@ public class SelectSeineTripAction extends SelectEditDataAction {
(int) 'B',
t("observe.common.TripDto.action.goToOpen.short"),
t("observe.common.TripDto.action.goToOpen.tip"),
- "navigation.data.seine.TripSeine");
+ "navigation.data.ps.common.TripSeine");
}
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/ce2492d7c8c671762e8b0931454…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/ce2492d7c8c671762e8b0931454…
You're receiving this email because of your account on gitlab.com.
1
0
08 Jun '19
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
66ecf076 by tchemit at 2019-06-08T14:13:49Z
Nouveau logo - Closes #1238
- - - - -
6 changed files:
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/help/ShowAboutAction.java
- − client-core/src/main/resources/icons/logo-small.png
- client-core/src/main/resources/icons/logo.png
- − src/site/resources/img/logo-small.png
- src/site/resources/img/logo.png
- src/site/site_fr.xml
Changes:
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/help/ShowAboutAction.java
=====================================
@@ -96,7 +96,7 @@ public class ShowAboutAction extends MenuActionSupport {
JPanel topPanel = about.getTopPanel();
topPanel.removeAll();
topPanel.setLayout(new BorderLayout());
- topPanel.add(new JLabel(Resource.getIcon("/icons/logo-small.png")), BorderLayout.WEST);
+ topPanel.add(new JLabel(Resource.getIcon("/icons/logo.png")), BorderLayout.WEST);
topPanel.add(new JLabel(Resource.getIcon("/icons/logo_ird.png")), BorderLayout.EAST);
about.display();
=====================================
client-core/src/main/resources/icons/logo-small.png deleted
=====================================
Binary files a/client-core/src/main/resources/icons/logo-small.png and /dev/null differ
=====================================
client-core/src/main/resources/icons/logo.png
=====================================
Binary files a/client-core/src/main/resources/icons/logo.png and b/client-core/src/main/resources/icons/logo.png differ
=====================================
src/site/resources/img/logo-small.png deleted
=====================================
Binary files a/src/site/resources/img/logo-small.png and /dev/null differ
=====================================
src/site/resources/img/logo.png
=====================================
Binary files a/src/site/resources/img/logo.png and b/src/site/resources/img/logo.png differ
=====================================
src/site/site_fr.xml
=====================================
@@ -48,7 +48,7 @@
<bannerLeft>
<name>${project.name}</name>
- <src>./img/logo-small.png</src>
+ <src>./img/logo.png</src>
<href>index.html</href>
</bannerLeft>
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/66ecf076cdc6466dce6cfc7e023…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/66ecf076cdc6466dce6cfc7e023…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Déplacement de groupes de données - Closes #918
by Tony CHEMIT 08 Jun '19
by Tony CHEMIT 08 Jun '19
08 Jun '19
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
f6992669 by tchemit at 2019-06-08T13:01:26Z
Déplacement de groupes de données - Closes #918
- - - - -
5 changed files:
- services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/common/TripLonglineServiceLocal.java
- services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/logbook/ActivityLonglineLogbookSampleServiceLocal.java
- services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/logbook/ActivityLonglineLogbookServiceLocal.java
- services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/logbook/TripLonglineSampleLogbookServiceLocal.java
- services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/observation/ActivityLonglineObsServiceLocal.java
Changes:
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/common/TripLonglineServiceLocal.java
=====================================
@@ -46,6 +46,8 @@ import fr.ird.observe.services.local.service.data.TripMapDtoFactory;
import fr.ird.observe.services.service.data.ll.common.TripLonglineService;
import fr.ird.observe.services.service.sql.DeleteSqlScriptProducerRequest;
import fr.ird.observe.services.service.sql.SqlScriptProducerService;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.hashids.Hashids;
import org.nuiton.topia.persistence.script.SqlScriptConsumer;
import org.nuiton.topia.persistence.script.TopiaSqlScript;
@@ -63,6 +65,34 @@ import java.util.List;
public class TripLonglineServiceLocal extends ObserveServiceLocal implements TripLonglineService {
private SqlScriptProducerService sqlScriptProducerService;
+ private static final Logger log = LogManager.getLogger(TripLonglineServiceLocal.class);
+
+ public static boolean copyTripLogbookMetaData(TripLongline oldTripLongline, TripLongline newTripLongline) {
+ if (!newTripLongline.isLogbookAvailability()) {
+ // copy logbook meta-data to new trip
+ log.info(String.format("Add logbook metadata to trip: %s", newTripLongline.getTopiaId()));
+ newTripLongline.setLogbookAvailability(true);
+ newTripLongline.setLogbookComment(oldTripLongline.getLogbookComment());
+ newTripLongline.setLogbookDataEntryOperator(oldTripLongline.getLogbookDataEntryOperator());
+ newTripLongline.setLogbookDataQuality(oldTripLongline.getLogbookDataQuality());
+ return true;
+ }
+ return false;
+ }
+
+ public static boolean copyTripObservationMetaData(TripLongline oldTripLongline, TripLongline newTripLongline) {
+ if (!newTripLongline.isObservationsAvailability()) {
+ // copy observation meta-data to new trip
+ log.info(String.format("Add observation metadata to trip: %s", newTripLongline.getTopiaId()));
+ newTripLongline.setObservationsAvailability(true);
+ newTripLongline.setObservationsComment(oldTripLongline.getObservationsComment());
+ newTripLongline.setObservationMethod(oldTripLongline.getObservationMethod());
+ newTripLongline.setObservationsDataEntryOperator(oldTripLongline.getObservationsDataEntryOperator());
+ newTripLongline.setObservationsDataQuality(oldTripLongline.getObservationsDataQuality());
+ return true;
+ }
+ return false;
+ }
@Override
public void setServiceContext(ObserveServiceContextLocal serviceContext) {
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/logbook/ActivityLonglineLogbookSampleServiceLocal.java
=====================================
@@ -30,8 +30,11 @@ import fr.ird.observe.entities.data.ll.common.TripLongline;
import fr.ird.observe.entities.data.ll.logbook.ActivityLonglineLogbook;
import fr.ird.observe.entities.data.ll.logbook.SampleLogbook;
import fr.ird.observe.services.local.service.ObserveServiceLocal;
+import fr.ird.observe.services.local.service.data.ll.common.TripLonglineServiceLocal;
import fr.ird.observe.services.service.data.ll.logbook.ActivityLonglineLogbookSampleService;
+import java.util.Objects;
+
/**
* @author Tony Chemit - dev(a)tchemit.fr
*/
@@ -81,11 +84,13 @@ public class ActivityLonglineLogbookSampleServiceLocal extends ObserveServiceLoc
if (!sampleLogbookId.equals(sampleLogbook.getTopiaId())) {
throw new DataNotFoundException(SampleLogbookDto.class, sampleLogbookId);
}
- TripLongline tripLongline = TRIP_LONGLINE_SPI.loadEntity(getTopiaPersistenceContext(), newTripId);
+ TripLongline oldTripLongline = getTopiaPersistenceContext().getMultipleAssociationParent(TripLongline.class, TripLongline.PROPERTY_ACTIVITY_LONGLINE_LOGBOOK, oldActivity.getTopiaId());
+ TripLongline newTripLongline = TRIP_LONGLINE_SPI.loadEntity(getTopiaPersistenceContext(), newTripId);
oldActivity.setSample(null);
- tripLongline.addSample(sampleLogbook);
+ newTripLongline.addSample(sampleLogbook);
+ TripLonglineServiceLocal.copyTripLogbookMetaData(oldTripLongline, newTripLongline);
saveEntity(oldActivity);
- saveEntity(tripLongline);
+ saveEntity(newTripLongline);
}
@Override
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/logbook/ActivityLonglineLogbookServiceLocal.java
=====================================
@@ -37,11 +37,13 @@ import fr.ird.observe.entities.data.ll.logbook.ActivityLonglineLogbook;
import fr.ird.observe.entities.data.ll.logbook.ActivityLonglineLogbookTopiaDao;
import fr.ird.observe.entities.referential.common.DataQuality;
import fr.ird.observe.services.local.service.ObserveServiceLocal;
+import fr.ird.observe.services.local.service.data.ll.common.TripLonglineServiceLocal;
import fr.ird.observe.services.service.data.ll.logbook.ActivityLonglineLogbookService;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
+import java.util.Objects;
/**
* @author Tony Chemit - dev(a)tchemit.fr
@@ -143,13 +145,8 @@ public class ActivityLonglineLogbookServiceLocal extends ObserveServiceLocal imp
ActivityLonglineLogbook activityLongline = ACTIVITY_LONGLINE_LOGBOOK_SPI.loadEntity(getTopiaPersistenceContext(), activityId);
newTripLongline.addActivityLonglineLogbook(activityLongline);
}
- if (oldTripLongline != null && !newTripLongline.isLogbookAvailability()) {
- // copy logbook meta-data to new trip
- newTripLongline.setLogbookAvailability(true);
- newTripLongline.setLogbookComment(oldTripLongline.getLogbookComment());
- newTripLongline.setLogbookDataEntryOperator(oldTripLongline.getLogbookDataEntryOperator());
- newTripLongline.setLogbookDataQuality(oldTripLongline.getLogbookDataQuality());
- }
+ TripLonglineServiceLocal.copyTripLogbookMetaData(Objects.requireNonNull(oldTripLongline), newTripLongline);
+
saveEntity(newTripLongline);
}
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/logbook/TripLonglineSampleLogbookServiceLocal.java
=====================================
@@ -37,6 +37,7 @@ import fr.ird.observe.entities.data.ll.common.TripLonglineTopiaDao;
import fr.ird.observe.entities.data.ll.logbook.ActivityLonglineLogbook;
import fr.ird.observe.entities.data.ll.logbook.SampleLogbook;
import fr.ird.observe.services.local.service.ObserveServiceLocal;
+import fr.ird.observe.services.local.service.data.ll.common.TripLonglineServiceLocal;
import fr.ird.observe.services.service.data.ll.logbook.TripLonglineSampleLogbookService;
import java.util.Calendar;
@@ -133,13 +134,17 @@ public class TripLonglineSampleLogbookServiceLocal extends ObserveServiceLocal i
@Override
public void moveToActivityLongline(String newActivityId, String sampleLogbookId) {
- TripLongline tripLongline = getTopiaPersistenceContext().getMultipleAssociationParent(TripLongline.class, TripLongline.PROPERTY_SAMPLE, sampleLogbookId);
+ TripLongline oldTripLongline = getTopiaPersistenceContext().getMultipleAssociationParent(TripLongline.class, TripLongline.PROPERTY_SAMPLE, sampleLogbookId);
+ TripLongline newTripLongline = getTopiaPersistenceContext().getMultipleAssociationParent(TripLongline.class, TripLongline.PROPERTY_ACTIVITY_LONGLINE_LOGBOOK, newActivityId);
SampleLogbook sampleLogbook = SAMPLE_LOGBOOK_SPI.loadEntity(getTopiaPersistenceContext(), sampleLogbookId);
- tripLongline.removeSample(sampleLogbook);
+ oldTripLongline.removeSample(sampleLogbook);
ActivityLonglineLogbook newActivity = ACTIVITY_LONGLINE_LOGBOOK_SPI.loadEntity(getTopiaPersistenceContext(), newActivityId);
//WARNING need to recreate entity, so the topia id will change!
newActivity.setSample(getTopiaPersistenceContext().getSampleLogbookDao().create(sampleLogbook));
- saveEntity(tripLongline);
+ if (TripLonglineServiceLocal.copyTripLogbookMetaData(oldTripLongline, newTripLongline)) {
+ saveEntity(newTripLongline);
+ }
+ saveEntity(oldTripLongline);
saveEntity(newActivity);
}
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/ll/observation/ActivityLonglineObsServiceLocal.java
=====================================
@@ -37,11 +37,13 @@ import fr.ird.observe.entities.data.ll.logbook.ActivityLonglineLogbook;
import fr.ird.observe.entities.data.ll.observation.ActivityLonglineObs;
import fr.ird.observe.entities.data.ll.observation.ActivityLonglineObsTopiaDao;
import fr.ird.observe.services.local.service.ObserveServiceLocal;
+import fr.ird.observe.services.local.service.data.ll.common.TripLonglineServiceLocal;
import fr.ird.observe.services.service.data.ll.observation.ActivityLonglineObsService;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
+import java.util.Objects;
/**
* @author Tony Chemit - dev(a)tchemit.fr
@@ -147,14 +149,8 @@ public class ActivityLonglineObsServiceLocal extends ObserveServiceLocal impleme
if (activityUsed) {
saveEntity(oldTripLongline);
}
- if (oldTripLongline != null && !newTripLongline.isObservationsAvailability()) {
- // copy observation meta-data to new trip
- newTripLongline.setObservationsAvailability(true);
- newTripLongline.setObservationsComment(oldTripLongline.getObservationsComment());
- newTripLongline.setObservationMethod(oldTripLongline.getObservationMethod());
- newTripLongline.setObservationsDataEntryOperator(oldTripLongline.getObservationsDataEntryOperator());
- newTripLongline.setObservationsDataQuality(oldTripLongline.getObservationsDataQuality());
- }
+ TripLonglineServiceLocal.copyTripObservationMetaData(Objects.requireNonNull(oldTripLongline), newTripLongline);
+
saveEntity(newTripLongline);
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/f6992669d827035a661d8ff2ec1…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/f6992669d827035a661d8ff2ec1…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] L'asssitant connexion propose des raccourcis sur des touches qui n'existent pas - Closes #1302
by Tony CHEMIT 08 Jun '19
by Tony CHEMIT 08 Jun '19
08 Jun '19
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
a1bf1fe0 by tchemit at 2019-06-08T12:27:33Z
L'asssitant connexion propose des raccourcis sur des touches qui n'existent pas - Closes #1302
- - - - -
1 changed file:
- client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/ConfigUIHandler.java
Changes:
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/ConfigUIHandler.java
=====================================
@@ -148,7 +148,8 @@ public class ConfigUIHandler extends StorageTabUIHandler<ConfigUI> implements UI
public void addRemoteConfiguration(ObserveMainUI mainUI, RemoteDataSourceConfiguration configuration, int position) {
JMenuItem item = new JMenuItem(configuration.getName());
item.putClientProperty("configuration", configuration);
- UseRemoteConfigurationUIAction action = new UseRemoteConfigurationUIAction(mainUI, ui, UseRemoteConfigurationUIAction.ACTION_NAME + position, configuration, KeyStroke.getKeyStroke("F" + position));
+ KeyStroke keyStroke = getKeyStroke(position);
+ UseRemoteConfigurationUIAction action = new UseRemoteConfigurationUIAction(mainUI, ui, UseRemoteConfigurationUIAction.ACTION_NAME + position, configuration, keyStroke);
action.initForMainUi(item, ui.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT), observeActionMap);
ui.getRemoteMenu().add(item);
@@ -157,12 +158,29 @@ public class ConfigUIHandler extends StorageTabUIHandler<ConfigUI> implements UI
public void addServerConfiguration(ObserveMainUI mainUI, ServerDataSourceConfiguration configuration, int position) {
JMenuItem item = new JMenuItem(configuration.getName());
item.putClientProperty("configuration", configuration);
- UseServerConfigurationUIAction action = new UseServerConfigurationUIAction(mainUI, ui, UseServerConfigurationUIAction.ACTION_NAME + position, configuration, KeyStroke.getKeyStroke("F" + position));
+ KeyStroke keyStroke = getKeyStroke(position);
+ UseServerConfigurationUIAction action = new UseServerConfigurationUIAction(mainUI, ui, UseServerConfigurationUIAction.ACTION_NAME + position, configuration, keyStroke);
action.initForMainUi(item, ui.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT), observeActionMap);
ui.getServerMenu().add(item);
}
+ private KeyStroke getKeyStroke(int position) {
+ if (position<(12)+1) {
+ return KeyStroke.getKeyStroke("F" + position);
+ }
+ if (position<(12*2)+1) {
+ return KeyStroke.getKeyStroke("shift pressed F" + (position-12));
+ }
+ if (position<(12*3)+1) {
+ return KeyStroke.getKeyStroke("ctrl pressed F" + (position-24));
+ }
+ if (position<(12*4)+1) {
+ return KeyStroke.getKeyStroke("shift ctrl pressed F" + (position-36));
+ }
+ return null;
+ }
+
private void refreshConfig(ConfigUI ui, String configId) {
JComponent c = (JComponent) ui.getObjectById(configId);
if (c != null) {
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/a1bf1fe01f45d255581b9f0d0e4…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/a1bf1fe01f45d255581b9f0d0e4…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] [SYNCHRO AVANCEE] Trier les référentiels dans ordre alphabétique dans les arbres - Closes #1314
by Tony CHEMIT 08 Jun '19
by Tony CHEMIT 08 Jun '19
08 Jun '19
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
2ff555d9 by tchemit at 2019-06-08T11:51:06Z
[SYNCHRO AVANCEE] Trier les référentiels dans ordre alphabétique dans les arbres - Closes #1314
- - - - -
30 changed files:
- client-core/src/main/i18n/getters/java.getter
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineCommonReferentialAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineLandingReferentialAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectLonglineObsReferentialAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineCommonReferentialAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/SelectSeineObsReferentialAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/legacy/SynchronizeUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/ReferentialSynchroUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/ReferentialSynchronizeTreeCellRenderer.java
- client-core/src/main/java/fr/ird/observe/client/ui/admin/synchronize/referential/ng/tree/ReferentialSynchronizeTreeModelsBuilder.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ll/common/ReferenceHomeLonglineCommonUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ll/landing/ReferenceHomeLonglineLandingUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ll/observation/ReferenceHomeLonglineObsUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ps/common/ReferenceHomeSeineCommonUIModel.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/ref/ps/observation/ReferenceHomeSeineObsUIModel.java
- + client-core/src/main/java/fr/ird/observe/client/ui/tree/I18nTreeHelper.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/GearUseFeaturesLonglineNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/TripLonglineNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/ActivityLonglineLogbookListNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/ActivityLonglineLogbookNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/ActivityLonglineSampleLogbookNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/CatchLonglineLogbookNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/SetLonglineLogbookGlobalCompositionNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/SetLonglineLogbookNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/TripLonglineLandingLogbookListNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/TripLonglineLandingLogbookNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/TripLonglineSampleLogbookListNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/logbook/TripLonglineSampleLogbookNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/obs/ActivityLonglineObsListNavigationTreeNode.java
- client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/obs/ActivityLonglineObsNavigationTreeNode.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/2ff555d92d47b7a8b41e9a02f3f…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/2ff555d92d47b7a8b41e9a02f3f…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 2 commits: Raccourci clavier F6 ne semble pas fonctionner pour la suppression des référentiels - Closes #1308
by Tony CHEMIT 07 Jun '19
by Tony CHEMIT 07 Jun '19
07 Jun '19
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
a8554805 by tchemit at 2019-06-07T16:08:12Z
Raccourci clavier F6 ne semble pas fonctionner pour la suppression des référentiels - Closes #1308
- - - - -
f5e0d99e by tchemit at 2019-06-07T16:09:06Z
Revue de certains raccourcis clavier - Closes #1313
- - - - -
30 changed files:
- client-core/src/main/java/fr/ird/observe/client/ui/ObserveKeyStrokes.java
- client-core/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/UIActionSupport.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/ResetEditUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/list/CreateOpenDataFromListUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/CreateOpenDataUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/DeleteOpenDataUIActionSupport.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/open/SaveOpenDataUIActionSupport.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/table/DeleteTableEntryUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/table/NewTableEntryUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/api/data/table/SaveTableDataUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/LonglineDetailCompositionDeleteAllSectionsAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/LonglineDetailCompositionGenerateAllSectionsAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/delete/DeleteActivityLonglineLogbookUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/delete/DeleteActivityLonglineObsUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/delete/DeleteTripLonglineLandingUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/delete/DeleteTripLonglineSampleLogbookUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/delete/DeleteTripLonglineUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/save/SaveActivityLonglineLogbookUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/save/SaveActivityLonglineObsUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/save/SaveTripLonglineLandingUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/save/SaveTripLonglineSampleLogbookUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ll/save/SaveTripLonglineUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ps/delete/DeleteActivitySeineUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ps/delete/DeleteRouteSeineUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ps/delete/DeleteTripSeineUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ps/save/SaveActivitySeineUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ps/save/SaveRouteSeineUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/content/data/ps/save/SaveTripSeineUIAction.java
- client-core/src/main/java/fr/ird/observe/client/ui/actions/main/global/ChangeFocusGlobalUIAction.java → client-core/src/main/java/fr/ird/observe/client/ui/actions/main/ChangeFocusGlobalUIAction.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/5ff975a91dcc8a4c77acf1a0af…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/5ff975a91dcc8a4c77acf1a0af…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Les objets en édition ne sont pas bien restitués lors d'un redémarrage de...
by Tony CHEMIT 07 Jun '19
by Tony CHEMIT 07 Jun '19
07 Jun '19
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
5ff975a9 by tchemit at 2019-06-07T13:06:37Z
Les objets en édition ne sont pas bien restitués lors d'un redémarrage de l'application - Closes #1311
- - - - -
5 changed files:
- client-core/src/main/java/fr/ird/observe/client/ui/admin/consolidate/ConsolidateUIHandler.java
- dto/src/main/java/fr/ird/observe/spi/DtoModelClasses.java
- persistence/src/main/java/fr/ird/observe/entities/ObserveTopiaPersistenceContext.java
- services-local/src/main/java/fr/ird/observe/services/local/service/data/NavigationServiceLocal.java
- services-local/src/main/java/fr/ird/observe/services/local/service/data/TripManagementServiceLocal.java
Changes:
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/admin/consolidate/ConsolidateUIHandler.java
=====================================
@@ -27,14 +27,14 @@ import fr.ird.observe.client.db.ObserveSwingDataSource;
import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.admin.AdminTabUIHandler;
import fr.ird.observe.client.ui.util.ProgressModel;
+import fr.ird.observe.dto.data.ps.common.TripSeineReference;
import fr.ird.observe.dto.reference.DataDtoReference;
import fr.ird.observe.services.service.actions.consolidate.ConsolidateDataService;
import fr.ird.observe.services.service.actions.consolidate.ConsolidateTripSeineDataRequest;
import fr.ird.observe.services.service.actions.consolidate.ConsolidateTripSeineDataResult;
import fr.ird.observe.services.service.actions.consolidate.set.ConsolidateActivitySeineDataResult;
-import fr.ird.observe.spi.DtoModelClasses;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.nuiton.jaxx.runtime.spi.UIHandler;
import org.nuiton.jaxx.runtime.swing.wizard.ext.WizardState;
@@ -81,7 +81,7 @@ public class ConsolidateUIHandler extends AdminTabUIHandler<ConsolidateUI> imple
Set<DataDtoReference<?, ?>> trips = getModel().getSelectDataModel().getSelectionDataModel().getSelectedData();
ImmutableSet<String> tripIds = ImmutableSet.copyOf(trips.stream()
- .filter(input -> DtoModelClasses.isTripSeineId(input.getId()))
+ .filter(input -> input instanceof TripSeineReference)
.map(DataDtoReference::getId)
.collect(Collectors.toSet()));
=====================================
dto/src/main/java/fr/ird/observe/spi/DtoModelClasses.java
=====================================
@@ -23,36 +23,37 @@ package fr.ird.observe.spi;
*/
import com.google.common.collect.ImmutableSet;
-import fr.ird.observe.dto.IdDto;
import fr.ird.observe.dto.data.DataDto;
+import fr.ird.observe.dto.data.ll.common.GearUseFeaturesLonglineDto;
+import fr.ird.observe.dto.data.ll.common.GearUseFeaturesMeasurementLonglineDto;
+import fr.ird.observe.dto.data.ll.common.TripLonglineDto;
+import fr.ird.observe.dto.data.ll.common.TripLonglineGearUseDto;
+import fr.ird.observe.dto.data.ll.landing.LandingLonglineDto;
+import fr.ird.observe.dto.data.ll.landing.LandingPartLonglineDto;
import fr.ird.observe.dto.data.ll.logbook.ActivityLonglineLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.BaitsCompositionLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.BranchlinesCompositionLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.CatchLonglineLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.FloatlinesCompositionLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.HooksCompositionLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.SampleLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.SamplePartLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookCatchDto;
+import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookGlobalCompositionDto;
import fr.ird.observe.dto.data.ll.observation.ActivityLonglineObsDto;
import fr.ird.observe.dto.data.ll.observation.ActivityLonglineObsEncounterDto;
import fr.ird.observe.dto.data.ll.observation.ActivityLonglineObsSensorUsedDto;
-import fr.ird.observe.dto.data.ll.logbook.BaitsCompositionLogbookDto;
import fr.ird.observe.dto.data.ll.observation.BaitsCompositionObsDto;
import fr.ird.observe.dto.data.ll.observation.BasketObsDto;
import fr.ird.observe.dto.data.ll.observation.BranchlineObsDto;
-import fr.ird.observe.dto.data.ll.logbook.BranchlinesCompositionLogbookDto;
import fr.ird.observe.dto.data.ll.observation.BranchlinesCompositionObsDto;
-import fr.ird.observe.dto.data.ll.logbook.CatchLonglineLogbookDto;
import fr.ird.observe.dto.data.ll.observation.CatchLonglineObsDto;
import fr.ird.observe.dto.data.ll.observation.EncounterObsDto;
-import fr.ird.observe.dto.data.ll.logbook.FloatlinesCompositionLogbookDto;
import fr.ird.observe.dto.data.ll.observation.FloatlinesCompositionObsDto;
-import fr.ird.observe.dto.data.ll.common.GearUseFeaturesLonglineDto;
-import fr.ird.observe.dto.data.ll.common.GearUseFeaturesMeasurementLonglineDto;
-import fr.ird.observe.dto.data.ll.logbook.HooksCompositionLogbookDto;
import fr.ird.observe.dto.data.ll.observation.HooksCompositionObsDto;
-import fr.ird.observe.dto.data.ll.landing.LandingLonglineDto;
-import fr.ird.observe.dto.data.ll.landing.LandingPartLonglineDto;
-import fr.ird.observe.dto.data.ll.logbook.SampleLogbookDto;
-import fr.ird.observe.dto.data.ll.logbook.SamplePartLogbookDto;
import fr.ird.observe.dto.data.ll.observation.SectionObsDto;
import fr.ird.observe.dto.data.ll.observation.SensorUsedObsDto;
-import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookCatchDto;
-import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookDto;
-import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookGlobalCompositionDto;
import fr.ird.observe.dto.data.ll.observation.SetLonglineObsCatchDto;
import fr.ird.observe.dto.data.ll.observation.SetLonglineObsDetailCompositionDto;
import fr.ird.observe.dto.data.ll.observation.SetLonglineObsDto;
@@ -61,8 +62,6 @@ import fr.ird.observe.dto.data.ll.observation.SetLonglineObsTdrDto;
import fr.ird.observe.dto.data.ll.observation.SizeMeasureObsDto;
import fr.ird.observe.dto.data.ll.observation.TdrObsDto;
import fr.ird.observe.dto.data.ll.observation.TripLonglineActivityObsDto;
-import fr.ird.observe.dto.data.ll.common.TripLonglineDto;
-import fr.ird.observe.dto.data.ll.common.TripLonglineGearUseDto;
import fr.ird.observe.dto.data.ll.observation.WeightMeasureObsDto;
import fr.ird.observe.dto.data.ps.common.GearUseFeaturesMeasurementSeineDto;
import fr.ird.observe.dto.data.ps.common.GearUseFeaturesSeineDto;
@@ -91,9 +90,7 @@ import fr.ird.observe.dto.data.ps.observation.TargetCatchDto;
import fr.ird.observe.dto.data.ps.observation.TargetLengthDto;
import fr.ird.observe.dto.data.ps.observation.TargetSampleDto;
import fr.ird.observe.dto.data.ps.observation.TransmittingBuoyDto;
-import fr.ird.observe.dto.reference.DtoReference;
import fr.ird.observe.dto.referential.ReferentialDto;
-import fr.ird.observe.dto.referential.ll.landing.CompagniesDto;
import fr.ird.observe.dto.referential.common.CountryDto;
import fr.ird.observe.dto.referential.common.DataQualityDto;
import fr.ird.observe.dto.referential.common.FpaZoneDto;
@@ -121,38 +118,40 @@ import fr.ird.observe.dto.referential.common.VesselTypeDto;
import fr.ird.observe.dto.referential.common.WeightMeasureMethodDto;
import fr.ird.observe.dto.referential.common.WeightMeasureTypeDto;
import fr.ird.observe.dto.referential.common.WindDto;
-import fr.ird.observe.dto.referential.ll.observation.BaitHaulingStatusDto;
import fr.ird.observe.dto.referential.ll.common.BaitSettingStatusDto;
import fr.ird.observe.dto.referential.ll.common.BaitTypeDto;
import fr.ird.observe.dto.referential.ll.common.CatchFateLonglineDto;
-import fr.ird.observe.dto.referential.ll.landing.ConservationDto;
-import fr.ird.observe.dto.referential.ll.landing.DataSourceDto;
-import fr.ird.observe.dto.referential.ll.observation.EncounterTypeDto;
import fr.ird.observe.dto.referential.ll.common.HealthnessDto;
-import fr.ird.observe.dto.referential.ll.observation.HookPositionDto;
import fr.ird.observe.dto.referential.ll.common.HookSizeDto;
import fr.ird.observe.dto.referential.ll.common.HookTypeDto;
-import fr.ird.observe.dto.referential.ll.observation.ItemHorizontalPositionDto;
-import fr.ird.observe.dto.referential.ll.observation.ItemVerticalPositionDto;
import fr.ird.observe.dto.referential.ll.common.LightsticksColorDto;
import fr.ird.observe.dto.referential.ll.common.LightsticksTypeDto;
import fr.ird.observe.dto.referential.ll.common.LineTypeDto;
-import fr.ird.observe.dto.referential.ll.observation.MaturityStatusDto;
import fr.ird.observe.dto.referential.ll.common.MitigationTypeDto;
import fr.ird.observe.dto.referential.ll.common.ObservationMethodDto;
import fr.ird.observe.dto.referential.ll.common.OnBoardProcessingDto;
-import fr.ird.observe.dto.referential.ll.observation.SensorBrandDto;
-import fr.ird.observe.dto.referential.ll.observation.SensorDataFormatDto;
-import fr.ird.observe.dto.referential.ll.observation.SensorTypeDto;
import fr.ird.observe.dto.referential.ll.common.SettingShapeDto;
-import fr.ird.observe.dto.referential.ll.observation.StomacFullnessDto;
import fr.ird.observe.dto.referential.ll.common.TripTypeDto;
import fr.ird.observe.dto.referential.ll.common.VesselActivityLonglineDto;
import fr.ird.observe.dto.referential.ll.common.WeightCategoryLonglineDto;
import fr.ird.observe.dto.referential.ll.common.WeightDeterminationMethodDto;
+import fr.ird.observe.dto.referential.ll.landing.CompagniesDto;
+import fr.ird.observe.dto.referential.ll.landing.ConservationDto;
+import fr.ird.observe.dto.referential.ll.landing.DataSourceDto;
+import fr.ird.observe.dto.referential.ll.observation.BaitHaulingStatusDto;
+import fr.ird.observe.dto.referential.ll.observation.EncounterTypeDto;
+import fr.ird.observe.dto.referential.ll.observation.HookPositionDto;
+import fr.ird.observe.dto.referential.ll.observation.ItemHorizontalPositionDto;
+import fr.ird.observe.dto.referential.ll.observation.ItemVerticalPositionDto;
+import fr.ird.observe.dto.referential.ll.observation.MaturityStatusDto;
+import fr.ird.observe.dto.referential.ll.observation.SensorBrandDto;
+import fr.ird.observe.dto.referential.ll.observation.SensorDataFormatDto;
+import fr.ird.observe.dto.referential.ll.observation.SensorTypeDto;
+import fr.ird.observe.dto.referential.ll.observation.StomacFullnessDto;
import fr.ird.observe.dto.referential.ps.common.SpeciesFateDto;
import fr.ird.observe.dto.referential.ps.common.TransmittingBuoyOperationDto;
import fr.ird.observe.dto.referential.ps.common.TransmittingBuoyTypeDto;
+import fr.ird.observe.dto.referential.ps.common.VesselActivitySeineDto;
import fr.ird.observe.dto.referential.ps.observation.DetectionModeDto;
import fr.ird.observe.dto.referential.ps.observation.NonTargetCatchReleaseConformityDto;
import fr.ird.observe.dto.referential.ps.observation.NonTargetCatchReleaseStatusDto;
@@ -166,7 +165,6 @@ import fr.ird.observe.dto.referential.ps.observation.ReasonForNoFishingDto;
import fr.ird.observe.dto.referential.ps.observation.ReasonForNullSetDto;
import fr.ird.observe.dto.referential.ps.observation.SpeciesStatusDto;
import fr.ird.observe.dto.referential.ps.observation.SurroundingActivityDto;
-import fr.ird.observe.dto.referential.ps.common.VesselActivitySeineDto;
import fr.ird.observe.dto.referential.ps.observation.WeightCategorySeineDto;
/**
@@ -385,91 +383,11 @@ public class DtoModelClasses {
.addAll(ENTITY_DATA_WITH_NO_BINDER_TYPES)
.build();
- public static boolean isProgramId(String id) {
- return id.contains("Program");
- }
-
- public static boolean isTrip(IdDto dto) {
- return isTripSeineId(dto.getId()) || isTripLonglineId(dto.getId());
- }
-
- public static boolean isTrip(DtoReference dto) {
- return isTripSeineId(dto.getId()) || isTripLonglineId(dto.getId());
- }
-
- public static boolean isTripLonglineId(String id) {
- return id.contains("TripLongline");
- }
-
- public static boolean isTripSeineId(String id) {
- return id.contains("TripSeine");
- }
-
- public static boolean isRouteId(String id) {
- return id.contains("Route");
- }
-
- public static boolean isActivitySeine(IdDto dto) {
- return isActivitySeineId(dto.getId());
- }
-
- public static boolean isActivitySeineId(String id) {
- return id.contains("ActivitySeine");
- }
-
- public static boolean isActivityLonglineObs(IdDto dto) {
- return isActivityLonglineObsId(dto.getId());
- }
-
- public static boolean isActivityLonglineLogbook(IdDto dto) {
- return isActivityLonglineLogbookId(dto.getId());
- }
-
- public static boolean isActivityLonglineObsId(String id) {
- return id.contains("ActivityLonglineObs");
- }
-
- public static boolean isActivityLonglineLogbookId(String id) {
- return id.contains("ActivityLonglineLogbook");
- }
-
- public static boolean isSetSeine(IdDto dto) {
- return isSetSeineId(dto.getId());
- }
-
- public static boolean isSetSeineId(String id) {
- return id.contains("SetSeine");
- }
-
- public static boolean isSetLonglineObs(IdDto dto) {
- return isSetLonglineObsId(dto.getId());
- }
-
- public static boolean isSetLonglineObsId(String id) {
- return id.contains("SetLonglineObs");
- }
-
- public static boolean isSetLonglineLogbook(IdDto dto) {
- return isSetLonglineLogbookId(dto.getId());
- }
-
- public static boolean isSetLonglineLogbookId(String id) {
- return id.contains("SetLonglineLogbook");
- }
-
- public static boolean isFloatingObject(IdDto dto) {
- return isFloatingObjectId(dto.getId());
- }
-
- public static boolean isFloatingObjectId(String id) {
- return id.contains("FloatingObject");
- }
-
public static boolean isSeineId(String id) {
- return id.contains("Seine");
+ return id.contains(".ps.");
}
public static boolean isLonglineId(String id) {
- return id.contains("Longline");
+ return id.contains(".ll.");
}
}
=====================================
persistence/src/main/java/fr/ird/observe/entities/ObserveTopiaPersistenceContext.java
=====================================
@@ -28,6 +28,7 @@ import fr.ird.observe.spi.DbModelHelper;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.nuiton.topia.persistence.TopiaDao;
+import org.nuiton.topia.persistence.TopiaEntity;
import org.nuiton.topia.persistence.TopiaEntityEnumProvider;
import org.nuiton.topia.persistence.internal.AbstractTopiaPersistenceContextConstructorParameter;
import org.nuiton.topia.persistence.internal.support.TopiaUsageSupportImpl;
@@ -140,6 +141,13 @@ public class ObserveTopiaPersistenceContext extends AbstractObserveTopiaPersiste
return showSql;
}
+ public boolean exists(String topiaId) {
+ checkNotClosed();
+ Class<? extends TopiaEntity> entityClass = getTopiaIdFactory().getClassName(topiaId);
+ TopiaDao<?> dao = getDao(entityClass);
+ return dao.forTopiaIdEquals(topiaId).exists();
+ }
+
public <E extends ObserveEntity> E newEntity(Class<E> entityType) {
TopiaDao<E> dao = getDao(entityType);
return dao.newInstance();
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/NavigationServiceLocal.java
=====================================
@@ -40,7 +40,6 @@ import fr.ird.observe.services.service.data.NavigationService;
import fr.ird.observe.services.service.data.ll.common.TripLonglineService;
import fr.ird.observe.services.service.data.ps.common.TripSeineService;
import fr.ird.observe.services.service.referential.ReferentialService;
-import fr.ird.observe.spi.DtoModelClasses;
import java.util.Set;
@@ -120,30 +119,7 @@ public class NavigationServiceLocal extends ObserveServiceLocal implements Navig
ObserveTopiaPersistenceContext topiaPersistenceContext = serviceContext.getTopiaPersistenceContext();
for (String id : ids) {
- boolean exists;
- if (DtoModelClasses.isProgramId(id)) {
- exists = topiaPersistenceContext.getProgramDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isTripSeineId(id)) {
- exists = topiaPersistenceContext.getTripSeineDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isRouteId(id)) {
- exists = topiaPersistenceContext.getRouteDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isActivitySeineId(id)) {
- exists = topiaPersistenceContext.getActivitySeineDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isSetSeineId(id)) {
- exists = topiaPersistenceContext.getSetSeineDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isFloatingObjectId(id)) {
- exists = topiaPersistenceContext.getFloatingObjectDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isTripLonglineId(id)) {
- exists = topiaPersistenceContext.getTripLonglineDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isActivityLonglineObsId(id)) {
- exists = topiaPersistenceContext.getActivityLonglineObsDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isSetLonglineObsId(id)) {
- exists = DtoModelClasses.isSetLonglineObsId(id) && topiaPersistenceContext.getSetLonglineObsDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isActivityLonglineLogbookId(id)) {
- exists = topiaPersistenceContext.getActivityLonglineLogbookDao().forTopiaIdEquals(id).exists();
- } else {
- exists = DtoModelClasses.isSetLonglineLogbookId(id) && topiaPersistenceContext.getSetLonglineLogbookDao().forTopiaIdEquals(id).exists();
- }
+ boolean exists = topiaPersistenceContext.exists(id);
if (exists) {
result.add(id);
}
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/TripManagementServiceLocal.java
=====================================
@@ -36,7 +36,6 @@ import fr.ird.observe.services.service.data.TripManagementService;
import fr.ird.observe.services.service.sql.AddSqlScriptProducerRequest;
import fr.ird.observe.services.service.sql.DeleteSqlScriptProducerRequest;
import fr.ird.observe.services.service.sql.SqlScriptProducerService;
-import fr.ird.observe.spi.DtoModelClasses;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.nuiton.topia.persistence.script.SqlScriptConsumer;
@@ -150,8 +149,7 @@ public class TripManagementServiceLocal extends ObserveServiceLocal implements T
long t0 = System.nanoTime();
- boolean isTripSeineId = DtoModelClasses.isTripSeineId(tripId);
- boolean deleted = (isTripSeineId && tripSeineIds.contains(tripId)) || tripLonglineIds.contains(tripId);
+ boolean deleted = tripSeineIds.contains(tripId) || tripLonglineIds.contains(tripId);
if (deleted) {
log.info("Start delete of trip: " + tripId);
@@ -163,12 +161,6 @@ public class TripManagementServiceLocal extends ObserveServiceLocal implements T
persistenceContext.getSqlSupport().doSqlWork(SqlScriptConsumer.of(sqlScript));
log.info("Delete of trip: " + tripId + " done in " + StringUtil.convertTime(t0, System.nanoTime()));
-
- if (isTripSeineId) {
- tripSeineIds.remove(tripId);
- } else {
- tripLonglineIds.remove(tripId);
- }
persistenceContext.commit();
}
return deleted;
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/5ff975a91dcc8a4c77acf1a0afd…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/5ff975a91dcc8a4c77acf1a0afd…
You're receiving this email because of your account on gitlab.com.
1
0
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
2f77685b by tchemit at 2019-06-07T11:51:42Z
update pom
- - - - -
d1c1fd1b by tchemit at 2019-06-07T12:55:11Z
[LL] Certains formulaires ont des onglets avec le raccourci clavier écrit deux fois - closes #1312
- - - - -
92b55f65 by tchemit at 2019-06-07T12:55:11Z
Les objets en édition ne sont pas bien restitués lors d'un redémarrage de l'application - Closes #1311
- - - - -
11 changed files:
- client-core/src/main/java/fr/ird/observe/client/ui/actions/UIActionSupport.java
- client-core/src/main/java/fr/ird/observe/client/ui/admin/AdminTabUIInitializer.java
- client-core/src/main/java/fr/ird/observe/client/ui/admin/consolidate/ConsolidateUIHandler.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/api/ContentUIInitializer.java
- client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/open/ContentOpenableUI.jcss
- client-core/src/main/java/fr/ird/observe/client/ui/util/UIHelper.java
- dto/src/main/java/fr/ird/observe/spi/DtoModelClasses.java
- persistence/src/main/java/fr/ird/observe/entities/ObserveTopiaPersistenceContext.java
- pom.xml
- services-local/src/main/java/fr/ird/observe/services/local/service/data/NavigationServiceLocal.java
- services-local/src/main/java/fr/ird/observe/services/local/service/data/TripManagementServiceLocal.java
Changes:
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/actions/UIActionSupport.java
=====================================
@@ -57,6 +57,7 @@ public abstract class UIActionSupport extends AbstractAction {
public static final String EDITOR = "editor";
public static final String CLIENT_PROPERTY_UI = "ui";
private static final long serialVersionUID = 1L;
+ public static final String DELEGATE_CONTENT_UI = "delegateContentUI";
private final ObserveMainUI mainUI;
public UIActionSupport(ObserveMainUI mainUI, String actionCommandKey, String label, String shortDescription, String actionIcon, KeyStroke acceleratorKey) {
@@ -227,7 +228,7 @@ public abstract class UIActionSupport extends AbstractAction {
}
protected ContentUI getContentUI(ContentUI contentUI) {
- Object delegateContentUI = contentUI.getObjectById("delegateContentUI");
+ Object delegateContentUI = contentUI.getObjectById(DELEGATE_CONTENT_UI);
if (delegateContentUI != null) {
Component selectedComponent;
if (delegateContentUI instanceof JTabbedPane) {
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/admin/AdminTabUIInitializer.java
=====================================
@@ -24,17 +24,7 @@ package fr.ird.observe.client.ui.admin;
import com.google.common.collect.ImmutableMap;
import fr.ird.observe.client.ObserveSwingApplicationContext;
-import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.actions.UIActionSupport;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToSubTab1UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToSubTab2UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToSubTab3UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab1UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab2UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab3UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab4UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab5UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab6UIAction;
import fr.ird.observe.client.ui.actions.content.api.tab.GoToTabUIActionSupport;
import fr.ird.observe.client.ui.content.api.spi.ObserveActionMap;
import fr.ird.observe.client.ui.util.UIHelper;
@@ -356,37 +346,10 @@ public class AdminTabUIInitializer<UI extends AdminTabUI> {
int tabCount = tabbedPane.getTabCount();
InputMap inputMap = ui.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
if (mainTabbedPane) {
- ObserveKeyStrokes.addKeyStrokeToMainTabbedPane(tabbedPane);
- if (tabCount > 0) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_1, GoToTab1UIAction.ACTION_NAME);
- }
- if (tabCount > 1) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_2, GoToTab2UIAction.ACTION_NAME);
- }
- if (tabCount > 2) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_3, GoToTab3UIAction.ACTION_NAME);
- }
- if (tabCount > 3) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_4, GoToTab4UIAction.ACTION_NAME);
- }
- if (tabCount > 4) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_5, GoToTab5UIAction.ACTION_NAME);
- }
- if (tabCount > 5) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_6, GoToTab6UIAction.ACTION_NAME);
- }
+ UIHelper.initMainTab(tabbedPane, tabCount, inputMap);
}
if (subTabbedPane) {
- ObserveKeyStrokes.addKeyStrokeToSubTabbedPane(tabbedPane);
- if (tabCount > 0) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_SUB_TAB_1, GoToSubTab1UIAction.ACTION_NAME);
- }
- if (tabCount > 1) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_SUB_TAB_2, GoToSubTab2UIAction.ACTION_NAME);
- }
- if (tabCount > 2) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_SUB_TAB_3, GoToSubTab3UIAction.ACTION_NAME);
- }
+ UIHelper.initSubTab(tabbedPane, tabCount, inputMap);
}
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/admin/consolidate/ConsolidateUIHandler.java
=====================================
@@ -27,14 +27,14 @@ import fr.ird.observe.client.db.ObserveSwingDataSource;
import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.admin.AdminTabUIHandler;
import fr.ird.observe.client.ui.util.ProgressModel;
+import fr.ird.observe.dto.data.ps.common.TripSeineReference;
import fr.ird.observe.dto.reference.DataDtoReference;
import fr.ird.observe.services.service.actions.consolidate.ConsolidateDataService;
import fr.ird.observe.services.service.actions.consolidate.ConsolidateTripSeineDataRequest;
import fr.ird.observe.services.service.actions.consolidate.ConsolidateTripSeineDataResult;
import fr.ird.observe.services.service.actions.consolidate.set.ConsolidateActivitySeineDataResult;
-import fr.ird.observe.spi.DtoModelClasses;
-import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.nuiton.jaxx.runtime.spi.UIHandler;
import org.nuiton.jaxx.runtime.swing.wizard.ext.WizardState;
@@ -81,7 +81,7 @@ public class ConsolidateUIHandler extends AdminTabUIHandler<ConsolidateUI> imple
Set<DataDtoReference<?, ?>> trips = getModel().getSelectDataModel().getSelectionDataModel().getSelectedData();
ImmutableSet<String> tripIds = ImmutableSet.copyOf(trips.stream()
- .filter(input -> DtoModelClasses.isTripSeineId(input.getId()))
+ .filter(input -> input instanceof TripSeineReference)
.map(DataDtoReference::getId)
.collect(Collectors.toSet()));
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/api/ContentUIInitializer.java
=====================================
@@ -28,15 +28,6 @@ import com.google.common.collect.Lists;
import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.actions.UIActionSupport;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToSubTab1UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToSubTab2UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToSubTab3UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab1UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab2UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab3UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab4UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab5UIAction;
-import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab6UIAction;
import fr.ird.observe.client.ui.actions.content.api.tab.GoToTabUIActionSupport;
import fr.ird.observe.client.ui.content.api.spi.ObserveActionMap;
import fr.ird.observe.client.ui.content.api.ui.DataReferenceListCellRenderer;
@@ -227,6 +218,7 @@ public class ContentUIInitializer<UI extends ContentUI> {
ImmutableMap.Builder<String, JAXXValidator> extraTabUIBuilder = ImmutableMap.builder();
+ log.info("Init widgets - first pass for: "+ui);
Set<Object> done = new LinkedHashSet<>();
for (String name : ui.get$objectMap().keySet()) {
Object o = ui.getObjectById(name);
@@ -337,9 +329,14 @@ public class ContentUIInitializer<UI extends ContentUI> {
}
}
+ log.info("Init widgets - second pass for: "+ui);
+
// second pass to init JTabbedPane
ImmutableMap<String, JAXXValidator> extraTabUis = extraTabUIBuilder.build();
for (String name : ui.get$objectMap().keySet()) {
+ if (UIActionSupport.DELEGATE_CONTENT_UI.equals(name)) {
+ continue;
+ }
Object o = ui.getObjectById(name);
if (o instanceof JTabbedPane) {
@@ -742,41 +739,14 @@ public class ContentUIInitializer<UI extends ContentUI> {
int tabCount = tabbedPane.getTabCount();
InputMap inputMap = ui.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
- ObserveKeyStrokes.addKeyStrokeToMainTabbedPane(tabbedPane);
- if (tabCount > 0) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_1, GoToTab1UIAction.ACTION_NAME);
- }
- if (tabCount > 1) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_2, GoToTab2UIAction.ACTION_NAME);
- }
- if (tabCount > 2) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_3, GoToTab3UIAction.ACTION_NAME);
- }
- if (tabCount > 3) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_4, GoToTab4UIAction.ACTION_NAME);
- }
- if (tabCount > 4) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_5, GoToTab5UIAction.ACTION_NAME);
- }
- if (tabCount > 5) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_6, GoToTab6UIAction.ACTION_NAME);
- }
+ UIHelper.initMainTab(tabbedPane, tabCount, inputMap);
}
protected void initSubTabbedPane(JTabbedPane tabbedPane) {
int tabCount = tabbedPane.getTabCount();
InputMap inputMap = ui.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW);
- ObserveKeyStrokes.addKeyStrokeToSubTabbedPane(tabbedPane);
- if (tabCount > 0) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_SUB_TAB_1, GoToSubTab1UIAction.ACTION_NAME);
- }
- if (tabCount > 1) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_SUB_TAB_2, GoToSubTab2UIAction.ACTION_NAME);
- }
- if (tabCount > 2) {
- inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_SUB_TAB_3, GoToSubTab3UIAction.ACTION_NAME);
- }
+ UIHelper.initSubTab(tabbedPane, tabCount, inputMap);
}
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/content/api/data/open/ContentOpenableUI.jcss
=====================================
@@ -42,7 +42,7 @@
#save {
_globalAction:{SaveDataGlobalUIAction.ACTION_NAME};
- enabled:{model.isModified() && model.isValid()};
+ enabled:{model.isValid() && (model.isModified() || model.isCreatingMode())};
}
#delete {
=====================================
client-core/src/main/java/fr/ird/observe/client/ui/util/UIHelper.java
=====================================
@@ -23,7 +23,17 @@ package fr.ird.observe.client.ui.util;
import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.ObserveSwingTechnicalException;
+import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.ObserveMainUI;
+import fr.ird.observe.client.ui.actions.content.api.tab.GoToSubTab1UIAction;
+import fr.ird.observe.client.ui.actions.content.api.tab.GoToSubTab2UIAction;
+import fr.ird.observe.client.ui.actions.content.api.tab.GoToSubTab3UIAction;
+import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab1UIAction;
+import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab2UIAction;
+import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab3UIAction;
+import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab4UIAction;
+import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab5UIAction;
+import fr.ird.observe.client.ui.actions.content.api.tab.GoToTab6UIAction;
import fr.ird.observe.client.ui.actions.main.menu.storage.ChangeStorageAction;
import fr.ird.observe.client.ui.actions.main.menu.storage.CloseStorageAction;
import fr.ird.observe.client.ui.actions.main.menu.storage.ReloadStorageAction;
@@ -49,10 +59,12 @@ import org.nuiton.jaxx.widgets.error.ErrorDialogUI;
import org.nuiton.jaxx.widgets.file.JaxxFileChooser;
import org.nuiton.jaxx.widgets.select.BeanFilterableComboBox;
+import javax.swing.InputMap;
import javax.swing.JComponent;
import javax.swing.JDialog;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
+import javax.swing.JTabbedPane;
import javax.swing.JTable;
import javax.swing.JTree;
import javax.swing.SwingUtilities;
@@ -652,4 +664,38 @@ public class UIHelper extends SwingUtil {
return editor;
}
+ public static void initMainTab(JTabbedPane tabbedPane, int tabCount, InputMap inputMap) {
+ ObserveKeyStrokes.addKeyStrokeToMainTabbedPane(tabbedPane);
+ if (tabCount > 0) {
+ inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_1, GoToTab1UIAction.ACTION_NAME);
+ }
+ if (tabCount > 1) {
+ inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_2, GoToTab2UIAction.ACTION_NAME);
+ }
+ if (tabCount > 2) {
+ inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_3, GoToTab3UIAction.ACTION_NAME);
+ }
+ if (tabCount > 3) {
+ inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_4, GoToTab4UIAction.ACTION_NAME);
+ }
+ if (tabCount > 4) {
+ inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_5, GoToTab5UIAction.ACTION_NAME);
+ }
+ if (tabCount > 5) {
+ inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_TAB_6, GoToTab6UIAction.ACTION_NAME);
+ }
+ }
+
+ public static void initSubTab(JTabbedPane tabbedPane, int tabCount, InputMap inputMap) {
+ ObserveKeyStrokes.addKeyStrokeToSubTabbedPane(tabbedPane);
+ if (tabCount > 0) {
+ inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_SUB_TAB_1, GoToSubTab1UIAction.ACTION_NAME);
+ }
+ if (tabCount > 1) {
+ inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_SUB_TAB_2, GoToSubTab2UIAction.ACTION_NAME);
+ }
+ if (tabCount > 2) {
+ inputMap.put(ObserveKeyStrokes.KEY_STROKE_GO_SUB_TAB_3, GoToSubTab3UIAction.ACTION_NAME);
+ }
+ }
}
=====================================
dto/src/main/java/fr/ird/observe/spi/DtoModelClasses.java
=====================================
@@ -23,36 +23,37 @@ package fr.ird.observe.spi;
*/
import com.google.common.collect.ImmutableSet;
-import fr.ird.observe.dto.IdDto;
import fr.ird.observe.dto.data.DataDto;
+import fr.ird.observe.dto.data.ll.common.GearUseFeaturesLonglineDto;
+import fr.ird.observe.dto.data.ll.common.GearUseFeaturesMeasurementLonglineDto;
+import fr.ird.observe.dto.data.ll.common.TripLonglineDto;
+import fr.ird.observe.dto.data.ll.common.TripLonglineGearUseDto;
+import fr.ird.observe.dto.data.ll.landing.LandingLonglineDto;
+import fr.ird.observe.dto.data.ll.landing.LandingPartLonglineDto;
import fr.ird.observe.dto.data.ll.logbook.ActivityLonglineLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.BaitsCompositionLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.BranchlinesCompositionLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.CatchLonglineLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.FloatlinesCompositionLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.HooksCompositionLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.SampleLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.SamplePartLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookCatchDto;
+import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookDto;
+import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookGlobalCompositionDto;
import fr.ird.observe.dto.data.ll.observation.ActivityLonglineObsDto;
import fr.ird.observe.dto.data.ll.observation.ActivityLonglineObsEncounterDto;
import fr.ird.observe.dto.data.ll.observation.ActivityLonglineObsSensorUsedDto;
-import fr.ird.observe.dto.data.ll.logbook.BaitsCompositionLogbookDto;
import fr.ird.observe.dto.data.ll.observation.BaitsCompositionObsDto;
import fr.ird.observe.dto.data.ll.observation.BasketObsDto;
import fr.ird.observe.dto.data.ll.observation.BranchlineObsDto;
-import fr.ird.observe.dto.data.ll.logbook.BranchlinesCompositionLogbookDto;
import fr.ird.observe.dto.data.ll.observation.BranchlinesCompositionObsDto;
-import fr.ird.observe.dto.data.ll.logbook.CatchLonglineLogbookDto;
import fr.ird.observe.dto.data.ll.observation.CatchLonglineObsDto;
import fr.ird.observe.dto.data.ll.observation.EncounterObsDto;
-import fr.ird.observe.dto.data.ll.logbook.FloatlinesCompositionLogbookDto;
import fr.ird.observe.dto.data.ll.observation.FloatlinesCompositionObsDto;
-import fr.ird.observe.dto.data.ll.common.GearUseFeaturesLonglineDto;
-import fr.ird.observe.dto.data.ll.common.GearUseFeaturesMeasurementLonglineDto;
-import fr.ird.observe.dto.data.ll.logbook.HooksCompositionLogbookDto;
import fr.ird.observe.dto.data.ll.observation.HooksCompositionObsDto;
-import fr.ird.observe.dto.data.ll.landing.LandingLonglineDto;
-import fr.ird.observe.dto.data.ll.landing.LandingPartLonglineDto;
-import fr.ird.observe.dto.data.ll.logbook.SampleLogbookDto;
-import fr.ird.observe.dto.data.ll.logbook.SamplePartLogbookDto;
import fr.ird.observe.dto.data.ll.observation.SectionObsDto;
import fr.ird.observe.dto.data.ll.observation.SensorUsedObsDto;
-import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookCatchDto;
-import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookDto;
-import fr.ird.observe.dto.data.ll.logbook.SetLonglineLogbookGlobalCompositionDto;
import fr.ird.observe.dto.data.ll.observation.SetLonglineObsCatchDto;
import fr.ird.observe.dto.data.ll.observation.SetLonglineObsDetailCompositionDto;
import fr.ird.observe.dto.data.ll.observation.SetLonglineObsDto;
@@ -61,8 +62,6 @@ import fr.ird.observe.dto.data.ll.observation.SetLonglineObsTdrDto;
import fr.ird.observe.dto.data.ll.observation.SizeMeasureObsDto;
import fr.ird.observe.dto.data.ll.observation.TdrObsDto;
import fr.ird.observe.dto.data.ll.observation.TripLonglineActivityObsDto;
-import fr.ird.observe.dto.data.ll.common.TripLonglineDto;
-import fr.ird.observe.dto.data.ll.common.TripLonglineGearUseDto;
import fr.ird.observe.dto.data.ll.observation.WeightMeasureObsDto;
import fr.ird.observe.dto.data.ps.common.GearUseFeaturesMeasurementSeineDto;
import fr.ird.observe.dto.data.ps.common.GearUseFeaturesSeineDto;
@@ -91,9 +90,7 @@ import fr.ird.observe.dto.data.ps.observation.TargetCatchDto;
import fr.ird.observe.dto.data.ps.observation.TargetLengthDto;
import fr.ird.observe.dto.data.ps.observation.TargetSampleDto;
import fr.ird.observe.dto.data.ps.observation.TransmittingBuoyDto;
-import fr.ird.observe.dto.reference.DtoReference;
import fr.ird.observe.dto.referential.ReferentialDto;
-import fr.ird.observe.dto.referential.ll.landing.CompagniesDto;
import fr.ird.observe.dto.referential.common.CountryDto;
import fr.ird.observe.dto.referential.common.DataQualityDto;
import fr.ird.observe.dto.referential.common.FpaZoneDto;
@@ -121,38 +118,40 @@ import fr.ird.observe.dto.referential.common.VesselTypeDto;
import fr.ird.observe.dto.referential.common.WeightMeasureMethodDto;
import fr.ird.observe.dto.referential.common.WeightMeasureTypeDto;
import fr.ird.observe.dto.referential.common.WindDto;
-import fr.ird.observe.dto.referential.ll.observation.BaitHaulingStatusDto;
import fr.ird.observe.dto.referential.ll.common.BaitSettingStatusDto;
import fr.ird.observe.dto.referential.ll.common.BaitTypeDto;
import fr.ird.observe.dto.referential.ll.common.CatchFateLonglineDto;
-import fr.ird.observe.dto.referential.ll.landing.ConservationDto;
-import fr.ird.observe.dto.referential.ll.landing.DataSourceDto;
-import fr.ird.observe.dto.referential.ll.observation.EncounterTypeDto;
import fr.ird.observe.dto.referential.ll.common.HealthnessDto;
-import fr.ird.observe.dto.referential.ll.observation.HookPositionDto;
import fr.ird.observe.dto.referential.ll.common.HookSizeDto;
import fr.ird.observe.dto.referential.ll.common.HookTypeDto;
-import fr.ird.observe.dto.referential.ll.observation.ItemHorizontalPositionDto;
-import fr.ird.observe.dto.referential.ll.observation.ItemVerticalPositionDto;
import fr.ird.observe.dto.referential.ll.common.LightsticksColorDto;
import fr.ird.observe.dto.referential.ll.common.LightsticksTypeDto;
import fr.ird.observe.dto.referential.ll.common.LineTypeDto;
-import fr.ird.observe.dto.referential.ll.observation.MaturityStatusDto;
import fr.ird.observe.dto.referential.ll.common.MitigationTypeDto;
import fr.ird.observe.dto.referential.ll.common.ObservationMethodDto;
import fr.ird.observe.dto.referential.ll.common.OnBoardProcessingDto;
-import fr.ird.observe.dto.referential.ll.observation.SensorBrandDto;
-import fr.ird.observe.dto.referential.ll.observation.SensorDataFormatDto;
-import fr.ird.observe.dto.referential.ll.observation.SensorTypeDto;
import fr.ird.observe.dto.referential.ll.common.SettingShapeDto;
-import fr.ird.observe.dto.referential.ll.observation.StomacFullnessDto;
import fr.ird.observe.dto.referential.ll.common.TripTypeDto;
import fr.ird.observe.dto.referential.ll.common.VesselActivityLonglineDto;
import fr.ird.observe.dto.referential.ll.common.WeightCategoryLonglineDto;
import fr.ird.observe.dto.referential.ll.common.WeightDeterminationMethodDto;
+import fr.ird.observe.dto.referential.ll.landing.CompagniesDto;
+import fr.ird.observe.dto.referential.ll.landing.ConservationDto;
+import fr.ird.observe.dto.referential.ll.landing.DataSourceDto;
+import fr.ird.observe.dto.referential.ll.observation.BaitHaulingStatusDto;
+import fr.ird.observe.dto.referential.ll.observation.EncounterTypeDto;
+import fr.ird.observe.dto.referential.ll.observation.HookPositionDto;
+import fr.ird.observe.dto.referential.ll.observation.ItemHorizontalPositionDto;
+import fr.ird.observe.dto.referential.ll.observation.ItemVerticalPositionDto;
+import fr.ird.observe.dto.referential.ll.observation.MaturityStatusDto;
+import fr.ird.observe.dto.referential.ll.observation.SensorBrandDto;
+import fr.ird.observe.dto.referential.ll.observation.SensorDataFormatDto;
+import fr.ird.observe.dto.referential.ll.observation.SensorTypeDto;
+import fr.ird.observe.dto.referential.ll.observation.StomacFullnessDto;
import fr.ird.observe.dto.referential.ps.common.SpeciesFateDto;
import fr.ird.observe.dto.referential.ps.common.TransmittingBuoyOperationDto;
import fr.ird.observe.dto.referential.ps.common.TransmittingBuoyTypeDto;
+import fr.ird.observe.dto.referential.ps.common.VesselActivitySeineDto;
import fr.ird.observe.dto.referential.ps.observation.DetectionModeDto;
import fr.ird.observe.dto.referential.ps.observation.NonTargetCatchReleaseConformityDto;
import fr.ird.observe.dto.referential.ps.observation.NonTargetCatchReleaseStatusDto;
@@ -166,7 +165,6 @@ import fr.ird.observe.dto.referential.ps.observation.ReasonForNoFishingDto;
import fr.ird.observe.dto.referential.ps.observation.ReasonForNullSetDto;
import fr.ird.observe.dto.referential.ps.observation.SpeciesStatusDto;
import fr.ird.observe.dto.referential.ps.observation.SurroundingActivityDto;
-import fr.ird.observe.dto.referential.ps.common.VesselActivitySeineDto;
import fr.ird.observe.dto.referential.ps.observation.WeightCategorySeineDto;
/**
@@ -385,86 +383,6 @@ public class DtoModelClasses {
.addAll(ENTITY_DATA_WITH_NO_BINDER_TYPES)
.build();
- public static boolean isProgramId(String id) {
- return id.contains("Program");
- }
-
- public static boolean isTrip(IdDto dto) {
- return isTripSeineId(dto.getId()) || isTripLonglineId(dto.getId());
- }
-
- public static boolean isTrip(DtoReference dto) {
- return isTripSeineId(dto.getId()) || isTripLonglineId(dto.getId());
- }
-
- public static boolean isTripLonglineId(String id) {
- return id.contains("TripLongline");
- }
-
- public static boolean isTripSeineId(String id) {
- return id.contains("TripSeine");
- }
-
- public static boolean isRouteId(String id) {
- return id.contains("Route");
- }
-
- public static boolean isActivitySeine(IdDto dto) {
- return isActivitySeineId(dto.getId());
- }
-
- public static boolean isActivitySeineId(String id) {
- return id.contains("ActivitySeine");
- }
-
- public static boolean isActivityLonglineObs(IdDto dto) {
- return isActivityLonglineObsId(dto.getId());
- }
-
- public static boolean isActivityLonglineLogbook(IdDto dto) {
- return isActivityLonglineLogbookId(dto.getId());
- }
-
- public static boolean isActivityLonglineObsId(String id) {
- return id.contains("ActivityLonglineObs");
- }
-
- public static boolean isActivityLonglineLogbookId(String id) {
- return id.contains("ActivityLonglineLogbook");
- }
-
- public static boolean isSetSeine(IdDto dto) {
- return isSetSeineId(dto.getId());
- }
-
- public static boolean isSetSeineId(String id) {
- return id.contains("SetSeine");
- }
-
- public static boolean isSetLonglineObs(IdDto dto) {
- return isSetLonglineObsId(dto.getId());
- }
-
- public static boolean isSetLonglineObsId(String id) {
- return id.contains("SetLonglineObs");
- }
-
- public static boolean isSetLonglineLogbook(IdDto dto) {
- return isSetLonglineLogbookId(dto.getId());
- }
-
- public static boolean isSetLonglineLogbookId(String id) {
- return id.contains("SetLonglineLogbook");
- }
-
- public static boolean isFloatingObject(IdDto dto) {
- return isFloatingObjectId(dto.getId());
- }
-
- public static boolean isFloatingObjectId(String id) {
- return id.contains("FloatingObject");
- }
-
public static boolean isSeineId(String id) {
return id.contains("Seine");
}
=====================================
persistence/src/main/java/fr/ird/observe/entities/ObserveTopiaPersistenceContext.java
=====================================
@@ -28,6 +28,7 @@ import fr.ird.observe.spi.DbModelHelper;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.nuiton.topia.persistence.TopiaDao;
+import org.nuiton.topia.persistence.TopiaEntity;
import org.nuiton.topia.persistence.TopiaEntityEnumProvider;
import org.nuiton.topia.persistence.internal.AbstractTopiaPersistenceContextConstructorParameter;
import org.nuiton.topia.persistence.internal.support.TopiaUsageSupportImpl;
@@ -140,6 +141,13 @@ public class ObserveTopiaPersistenceContext extends AbstractObserveTopiaPersiste
return showSql;
}
+ public boolean exists(String topiaId) {
+ checkNotClosed();
+ Class<? extends TopiaEntity> entityClass = getTopiaIdFactory().getClassName(topiaId);
+ TopiaDao<?> dao = getDao(entityClass);
+ return dao.forTopiaIdEquals(topiaId).exists();
+ }
+
public <E extends ObserveEntity> E newEntity(Class<E> entityType) {
TopiaDao<E> dao = getDao(entityType);
return dao.newInstance();
=====================================
pom.xml
=====================================
@@ -26,7 +26,7 @@
<parent>
<groupId>io.ultreia.maven</groupId>
<artifactId>pom</artifactId>
- <version>2019.8.18</version>
+ <version>2019.8.19</version>
</parent>
<groupId>fr.ird.observe</groupId>
@@ -163,7 +163,7 @@
<lib.version.java4all.topia>1.9</lib.version.java4all.topia>
<!--<lib.version.java4all.eugene>3.0-alpha-22</lib.version.java4all.eugene>-->
- <lib.version.java4all.jaxx>3.0-alpha-52</lib.version.java4all.jaxx>
+ <!--lib.version.java4all.jaxx>3.0-alpha-52</lib.version.java4all.jaxx-->
<!--<lib.version.java4all.i18n>4.0-beta-3-SNAPSHOT</lib.version.java4all.i18n>-->
<!--<lib.version.java4all.config>1.0.8-SNAPSHOT</lib.version.java4all.config>-->
<!--<lib.version.nuiton.topia>3.4.2-SNAPSHOT</lib.version.nuiton.topia>-->
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/NavigationServiceLocal.java
=====================================
@@ -40,7 +40,6 @@ import fr.ird.observe.services.service.data.NavigationService;
import fr.ird.observe.services.service.data.ll.common.TripLonglineService;
import fr.ird.observe.services.service.data.ps.common.TripSeineService;
import fr.ird.observe.services.service.referential.ReferentialService;
-import fr.ird.observe.spi.DtoModelClasses;
import java.util.Set;
@@ -120,30 +119,7 @@ public class NavigationServiceLocal extends ObserveServiceLocal implements Navig
ObserveTopiaPersistenceContext topiaPersistenceContext = serviceContext.getTopiaPersistenceContext();
for (String id : ids) {
- boolean exists;
- if (DtoModelClasses.isProgramId(id)) {
- exists = topiaPersistenceContext.getProgramDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isTripSeineId(id)) {
- exists = topiaPersistenceContext.getTripSeineDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isRouteId(id)) {
- exists = topiaPersistenceContext.getRouteDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isActivitySeineId(id)) {
- exists = topiaPersistenceContext.getActivitySeineDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isSetSeineId(id)) {
- exists = topiaPersistenceContext.getSetSeineDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isFloatingObjectId(id)) {
- exists = topiaPersistenceContext.getFloatingObjectDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isTripLonglineId(id)) {
- exists = topiaPersistenceContext.getTripLonglineDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isActivityLonglineObsId(id)) {
- exists = topiaPersistenceContext.getActivityLonglineObsDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isSetLonglineObsId(id)) {
- exists = DtoModelClasses.isSetLonglineObsId(id) && topiaPersistenceContext.getSetLonglineObsDao().forTopiaIdEquals(id).exists();
- } else if (DtoModelClasses.isActivityLonglineLogbookId(id)) {
- exists = topiaPersistenceContext.getActivityLonglineLogbookDao().forTopiaIdEquals(id).exists();
- } else {
- exists = DtoModelClasses.isSetLonglineLogbookId(id) && topiaPersistenceContext.getSetLonglineLogbookDao().forTopiaIdEquals(id).exists();
- }
+ boolean exists = topiaPersistenceContext.exists(id);
if (exists) {
result.add(id);
}
=====================================
services-local/src/main/java/fr/ird/observe/services/local/service/data/TripManagementServiceLocal.java
=====================================
@@ -36,7 +36,6 @@ import fr.ird.observe.services.service.data.TripManagementService;
import fr.ird.observe.services.service.sql.AddSqlScriptProducerRequest;
import fr.ird.observe.services.service.sql.DeleteSqlScriptProducerRequest;
import fr.ird.observe.services.service.sql.SqlScriptProducerService;
-import fr.ird.observe.spi.DtoModelClasses;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.nuiton.topia.persistence.script.SqlScriptConsumer;
@@ -150,8 +149,7 @@ public class TripManagementServiceLocal extends ObserveServiceLocal implements T
long t0 = System.nanoTime();
- boolean isTripSeineId = DtoModelClasses.isTripSeineId(tripId);
- boolean deleted = (isTripSeineId && tripSeineIds.contains(tripId)) || tripLonglineIds.contains(tripId);
+ boolean deleted = tripSeineIds.contains(tripId) || tripLonglineIds.contains(tripId);
if (deleted) {
log.info("Start delete of trip: " + tripId);
@@ -163,12 +161,6 @@ public class TripManagementServiceLocal extends ObserveServiceLocal implements T
persistenceContext.getSqlSupport().doSqlWork(SqlScriptConsumer.of(sqlScript));
log.info("Delete of trip: " + tripId + " done in " + StringUtil.convertTime(t0, System.nanoTime()));
-
- if (isTripSeineId) {
- tripSeineIds.remove(tripId);
- } else {
- tripLonglineIds.remove(tripId);
- }
persistenceContext.commit();
}
return deleted;
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/c8c8d149bc8dfa405b2c56b09b…
--
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/c8c8d149bc8dfa405b2c56b09b…
You're receiving this email because of your account on gitlab.com.
1
0