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
April 2018
- 1 participants
- 53 discussions
[Git][ultreiaio/ird-observe][develop] 3 commits: [PS] Libellés des formulaires sous Calée à mettre à jour (Closes #881)
by Tony CHEMIT 09 Apr '18
by Tony CHEMIT 09 Apr '18
09 Apr '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
f17670f3 by Tony CHEMIT at 2018-04-09T17:24:34Z
[PS] Libellés des formulaires sous Calée à mettre à jour (Closes #881)
- - - - -
59828b34 by Tony CHEMIT at 2018-04-09T17:24:36Z
[PS] Tableaux de captures et échantillons (Closes #883)
- - - - -
8866f09e by Tony CHEMIT at 2018-04-09T17:24:36Z
[PS] Sasie d'un échantillon - présélection du type de mesure par défaut (Closes #884)
- - - - -
30 changed files:
- client/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseTableModel.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIModel.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetDiscardCatchUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetDiscardCatchUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetDiscardCatchUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUIModel.java
- client/src/main/java/fr/ird/observe/client/ui/content/table/ContentTableModel.java
- client/src/main/java/fr/ird/observe/client/ui/content/table/ContentTableUIHandler.java
- client/src/main/resources/i18n/client_en_GB.properties
- client/src/main/resources/i18n/client_es_ES.properties
- client/src/main/resources/i18n/client_fr_FR.properties
- dto/src/main/models/Observe.model
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/0443ba9155d11d23b300dd497b…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/0443ba9155d11d23b300dd497b…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] [PS] Sasie d'un échantillon - présélection du type de mesure par défaut (Closes #884)
by Tony CHEMIT 09 Apr '18
by Tony CHEMIT 09 Apr '18
09 Apr '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
0443ba91 by Tony CHEMIT at 2018-04-09T17:07:45Z
[PS] Sasie d'un échantillon - présélection du type de mesure par défaut (Closes #884)
- - - - -
2 changed files:
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUIHandler.java
Changes:
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIHandler.java
@@ -106,8 +106,9 @@ public class NonTargetSampleUIHandler extends AbstractSampleUIHandler<NonTargetS
// on utilise le code par defaut de l'espèce
Optional<SizeMeasureTypeReference> sizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
+ log.debug("Default size measure "+sizeMeasureType.orElse(null));
getUi().getModel().setDefaultSizeMeasureType(sizeMeasureType.orElse(null));
-
+ resetDefaultSizeMeasureType();
}
@Override
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUIHandler.java
@@ -111,9 +111,9 @@ public class TargetSampleUIHandler<U extends ContentTableUI<TargetSampleDto, Tar
// on utilise le code par defaut de l'espèce
Optional<SizeMeasureTypeReference> sizeMeasureType = getSpeciesDefaultSizeMeasureType(species);
-
+ log.debug("Default size measure "+sizeMeasureType.orElse(null));
((TargetSampleUI) getUi()).getModel().setDefaultSizeMeasureType(sizeMeasureType.orElse(null));
-
+ resetDefaultSizeMeasureType();
}
@Override
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/0443ba9155d11d23b300dd497b9…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/0443ba9155d11d23b300dd497b9…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] [PS] Tableaux de captures et échantillons (Closes #883)
by Tony CHEMIT 09 Apr '18
by Tony CHEMIT 09 Apr '18
09 Apr '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
9c16e540 by Tony CHEMIT at 2018-04-09T16:56:20Z
[PS] Tableaux de captures et échantillons (Closes #883)
- - - - -
30 changed files:
- client/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/longline/CatchLonglineUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseTableModel.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchReleaseUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetCatchUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/NonTargetSampleUIModel.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetCatchUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetDiscardCatchUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetDiscardCatchUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetDiscardCatchUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TargetSampleUIModel.java
- client/src/main/java/fr/ird/observe/client/ui/content/table/ContentTableModel.java
- client/src/main/java/fr/ird/observe/client/ui/content/table/ContentTableUIHandler.java
- client/src/main/resources/i18n/client_en_GB.properties
- client/src/main/resources/i18n/client_es_ES.properties
- client/src/main/resources/i18n/client_fr_FR.properties
- dto/src/main/models/Observe.model
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/9c16e540eb48aacc17dd79b871b…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/9c16e540eb48aacc17dd79b871b…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] [PS] Libellés des formulaires sous Calée à mettre à jour (Closes #881)
by Tony CHEMIT 09 Apr '18
by Tony CHEMIT 09 Apr '18
09 Apr '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
c8496284 by Tony CHEMIT at 2018-04-09T14:01:06Z
[PS] Libellés des formulaires sous Calée à mettre à jour (Closes #881)
- - - - -
1 changed file:
- client/src/main/resources/i18n/client_fr_FR.properties
Changes:
=====================================
client/src/main/resources/i18n/client_fr_FR.properties
=====================================
--- a/client/src/main/resources/i18n/client_fr_FR.properties
+++ b/client/src/main/resources/i18n/client_fr_FR.properties
@@ -1518,18 +1518,18 @@ observe.ui.tree.longline.sensorUsed=Capteurs utilisés
observe.ui.tree.longline.setDetailComposition=Compositions détaillées
observe.ui.tree.longline.setGlobalComposition=Compositions globales
observe.ui.tree.longline.tdr=Enregistreurs de profondeur
-observe.ui.tree.seine.discardedTargetCatch=Rejet de thon
-observe.ui.tree.seine.discardedTargetSample=Echantillon thon rejeté
-observe.ui.tree.seine.keptTargetCatch=Capture cible
-observe.ui.tree.seine.keptTargetSample=Echantillon thon capturé
-observe.ui.tree.seine.nonTargetCatch=Faunes accessoire conservée ou rejetée
-observe.ui.tree.seine.nonTargetCatchRelease=Faunes accessoires libérées
-observe.ui.tree.seine.nonTargetSample=Echantillons faune accessoire
+observe.ui.tree.seine.discardedTargetCatch=Thons rejetés
+observe.ui.tree.seine.discardedTargetSample=Échantillons thons rejetés
+observe.ui.tree.seine.keptTargetCatch=Thons conservés
+observe.ui.tree.seine.keptTargetSample=Échantillons thons conservés
+observe.ui.tree.seine.nonTargetCatch=Espèces accessoires conservées ou rejetées
+observe.ui.tree.seine.nonTargetCatchRelease=Espèces accessoires libérées
+observe.ui.tree.seine.nonTargetSample=Échantillons espèces accessoires
observe.ui.tree.seine.objectObservedSpecies=Faune observée
observe.ui.tree.seine.objectOperation=Opérations sur l'objet
observe.ui.tree.seine.objectSchoolEstimate=Estimations banc objet
observe.ui.tree.seine.routes=Routes
-observe.ui.tree.seine.schoolEstimate=Estimations banc
+observe.ui.tree.seine.schoolEstimate=Estimation banc
observe.usage.action.shouldReplace=Remplacer le référentiel désactivé ?
observe.usage.replaceTitle=Objet de remplacement
observe.usage.usageTitle=Références trouvées
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/c84962840c463ca2b4c235cc710…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/c84962840c463ca2b4c235cc710…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 2 commits: Code clean - optimize toArray method
by Tony CHEMIT 09 Apr '18
by Tony CHEMIT 09 Apr '18
09 Apr '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
d6500800 by Tony CHEMIT at 2018-04-08T09:56:41Z
Code clean - optimize toArray method
- - - - -
d57e2d96 by Tony CHEMIT at 2018-04-08T17:08:38Z
clean code + use last pom
- - - - -
30 changed files:
- client-configuration/pom.xml
- client-configuration/src/main/java/fr/ird/observe/client/configuration/ClientConfig.java
- client-configuration/src/main/resources/log4j.properties
- client-configuration/src/main/resources/observe-log4j.properties
- client/pom.xml
- client/src/main/assembly/bin.xml
- client/src/main/assembly/dist/obstuna-admin/extra/01_create-postgis-1-activity.sql
- client/src/main/assembly/dist/obstuna-admin/extra/02_create-postgis-2-harbour.sql
- client/src/main/assembly/dist/obstuna-admin/extra/03_create-postgis-3-activity-seine.sql
- client/src/main/assembly/dist/obstuna-admin/extra/04_create-postgis-4-activity-longine.sql
- client/src/main/assembly/dist/obstuna-admin/extra/05_function_enhanced_sets_school_types.sql
- client/src/main/assembly/i18n.xml
- client/src/main/assembly/map.xml
- client/src/main/assembly/sql/v1/sql/obstuna.sql
- client/src/main/filtered-resources/observe-application.properties
- client/src/main/java/fr/ird/observe/client/FloatingObjectPresetsManager.java
- client/src/main/java/fr/ird/observe/client/ObserveActionExecutor.java
- client/src/main/java/fr/ird/observe/client/ObserveCLAction.java
- client/src/main/java/fr/ird/observe/client/ObserveOpenDataManager.java
- client/src/main/java/fr/ird/observe/client/ObserveResourceManager.java
- client/src/main/java/fr/ird/observe/client/ObserveRunner.java
- client/src/main/java/fr/ird/observe/client/ObserveSwingApplicationContext.java
- client/src/main/java/fr/ird/observe/client/ObserveSwingSessionHelper.java
- client/src/main/java/fr/ird/observe/client/ObserveSwingTechnicalException.java
- client/src/main/java/fr/ird/observe/client/ObserveTextGenerator.java
- client/src/main/java/fr/ird/observe/client/RunObserve.java
- client/src/main/java/fr/ird/observe/client/backup/AtCloseApplicationLocalDatabaseBackupTask.java
- client/src/main/java/fr/ird/observe/client/backup/AutomaticLocalDatabaseBackupTask.java
- client/src/main/java/fr/ird/observe/client/backup/BackupStorage.java
- client/src/main/java/fr/ird/observe/client/backup/BackupsManager.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/16a4627037064e9c1ccf18263c…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/16a4627037064e9c1ccf18263c…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][feature/v8_maquette] Refactor move api (first step)
by Tony CHEMIT 09 Apr '18
by Tony CHEMIT 09 Apr '18
09 Apr '18
Tony CHEMIT pushed to branch feature/v8_maquette at ultreiaio / ird-observe
Commits:
27bcb0df by Tony CHEMIT at 2018-04-09T13:42:52Z
Refactor move api (first step)
- - - - -
16 changed files:
- client/src/main/java/fr/ird/observe/client/ObserveSwingApplicationContext.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/longline/ActivityLonglineLogbookUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/longline/ActivityLonglineUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/longline/TripLonglineUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/ActivitySeineUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/RouteUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TripSeineUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/content/open/ContentOpenableUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/NavigationTreeNodeSupport.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/ReferenceNavigationTreeNodeSupport.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/ActivitiesLonglineNavigationTreeNode.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/ProgramLonglineNavigationTreeNode.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/ActivitiesSeineNavigationTreeNode.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/ProgramSeineNavigationTreeNode.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/RoutesSeineNavigationTreeNode.java
- services-client/src/main/java/fr/ird/observe/services/client/ObserveServiceFactoryClient.java
Changes:
=====================================
client/src/main/java/fr/ird/observe/client/ObserveSwingApplicationContext.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ObserveSwingApplicationContext.java
+++ b/client/src/main/java/fr/ird/observe/client/ObserveSwingApplicationContext.java
@@ -2,19 +2,19 @@
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
+ * 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
+ *
+ * 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%
@@ -23,7 +23,6 @@ package fr.ird.observe.client;
import com.google.common.base.Preconditions;
import com.google.common.collect.ImmutableSet;
-import fr.ird.observe.spi.DtoModelHelper;
import fr.ird.observe.client.backup.AtCloseApplicationLocalDatabaseBackupTask;
import fr.ird.observe.client.backup.BackupsManager;
import fr.ird.observe.client.configuration.ClientConfig;
@@ -34,12 +33,20 @@ import fr.ird.observe.client.ui.content.ContentUIManager;
import fr.ird.observe.client.ui.content.ObserveActionMap;
import fr.ird.observe.client.ui.content.ObserveFocusManager;
import fr.ird.observe.client.validation.ClientValidationContext;
-import fr.ird.observe.dto.referential.ReferentialLocale;
import fr.ird.observe.dto.decoration.DecoratorService;
+import fr.ird.observe.dto.referential.ReferentialLocale;
import fr.ird.observe.services.ObserveDataSourceConfigurationMainFactory;
import fr.ird.observe.services.ObserveServiceMainFactory;
import fr.ird.observe.services.validation.ValidatorDto;
import fr.ird.observe.services.validation.ValidatorsManager;
+import fr.ird.observe.spi.DtoModelHelper;
+import org.apache.commons.lang3.SystemUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.h2.tools.Server;
+import org.nuiton.jaxx.runtime.context.DefaultApplicationContext;
+import org.nuiton.jaxx.runtime.context.JAXXContextEntryDef;
+
import java.io.Closeable;
import java.io.IOException;
import java.util.Arrays;
@@ -49,13 +56,6 @@ import java.util.List;
import java.util.Objects;
import java.util.concurrent.ScheduledThreadPoolExecutor;
import java.util.concurrent.TimeUnit;
-import org.apache.commons.lang3.SystemUtils;
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.h2.tools.Server;
-import org.nuiton.jaxx.runtime.context.DefaultApplicationContext;
-import org.nuiton.jaxx.runtime.context.JAXXContextEntryDef;
-
import static fr.ird.observe.client.ObserveSwingApplicationContext.Entries.ACTIONS;
import static fr.ird.observe.client.ObserveSwingApplicationContext.Entries.ACTION_MAP;
@@ -97,91 +97,12 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
/** Logger */
private static final Log log = LogFactory.getLog(ObserveSwingApplicationContext.class);
-
- enum Entries {
-
- CONFIG("Config", ClientConfig.class),
- DECORATOR_SERVICE("Decorator service", DecoratorService.class),
- TEXT_GENERATOR("Text generator", ObserveTextGenerator.class),
- DATA_SOURCE_CONFIGURATION_FACTORY("Data source configuration main factory", ObserveDataSourceConfigurationMainFactory.class),
- OPEN_DATA_MANAGER("Open data manager", ObserveOpenDataManager.class),
- DATA_CONTEXT("Data context", ClientDataContext.class),
- CONTENT_UI_MANAGER("Content UI manager", ContentUIManager.class),
- DATA_SOURCES_MANAGER("Data sources manager", ObserveDataSourcesManager.class),
- FLOATING_OBJECT_REFERENCES_MANAGER("Floating object referenfences manager", FloatingObjectPresetsManager.class),
- OBSERVE_SWING_SESSION_HELPER("Swing session Helper", ObserveSwingSessionHelper.class),
- VALIDATION_CONTEXT("Validation context", ClientValidationContext.class),
- MAIN_UI("Main UI", ObserveMainUI.class),
- ACTIONS("Command line Actions", ObserveCLAction.class),
- ACTION_MAP("UI Actions", ObserveActionMap.class),
- H2_SERVER_MODE("H2 Server mode", Boolean.class),
- H2_SERVER("H2 Server", Server.class),
- H2_WEBSERVER("H2 Web server", Server.class),
- FOCUS_MANAGER("Focus manager", ObserveFocusManager.class),
- VALIDATORS_MANAGER("Validators manager", ValidatorsManager.class),
- BACKUP_MANAGER("Backup manager", BackupsManager.class),
- LOCAL_DATABASE_BACKUP_TIMER("Local database backup task", ScheduledThreadPoolExecutor.class),
- NODE_TO_RESELECT("Node to reselect");
-
- private final String objectName;
- private final JAXXContextEntryDef entryDef;
-
- <O> Entries(String objectName, Class<O> entryType) {
- this.objectName = objectName;
- this.entryDef = newContextEntryDef(objectName, entryType);
- }
-
- Entries(String objectName) {
- this.objectName = objectName;
- this.entryDef = newListContextEntryDef(objectName);
- }
-
- @SuppressWarnings("unchecked")
- public <O> O get() {
- return (O) entryDef.getContextValue(ObserveSwingApplicationContext.get());
- }
-
- @SuppressWarnings("unchecked")
- private <O> void set(O instance) {
- entryDef.setContextValue(ObserveSwingApplicationContext.get(), instance);
- if (log.isInfoEnabled()) {
- log.info("Add to application context " + objectName + ": " + (instance instanceof Collection ? ((Collection) instance).size() + " element(s)" : instance));
- }
- }
-
- private <O> void remove() {
- O instance = get();
- entryDef.removeContextValue(ObserveSwingApplicationContext.get());
- if (log.isInfoEnabled()) {
- log.info("Remove from application context " + objectName + ": " + (instance instanceof Collection ? ((Collection) instance).size() + " element(s)" : instance));
- }
- }
- }
-
private static ObserveSwingApplicationContext INSTANCE;
-
/** Un objet pour bloquer le context */
private final Object lock;
-
/** Un drapeau pour savoir quand l'application est en cours de fermeture. */
private boolean closed;
- /**
- * Récupération du contexte applicatif.
- *
- * @return l'instance partagé du contexte.
- * @throws IllegalStateException si le contexte n'a pas été initialisé
- */
- public static ObserveSwingApplicationContext get() throws IllegalStateException {
- Objects.requireNonNull(INSTANCE, "no application context initialized.");
- return INSTANCE;
- }
-
- /** @return {@code true} si le context a été initialisé */
- public static boolean isInit() {
- return INSTANCE != null;
- }
-
public ObserveSwingApplicationContext(ClientConfig config) {
Preconditions.checkState(INSTANCE == null, "application context already registred.");
@@ -216,9 +137,21 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
lock = new Object();
}
- //-------------------------------------------
- // - Read
- //-------------------------------------------
+ /**
+ * Récupération du contexte applicatif.
+ *
+ * @return l'instance partagé du contexte.
+ * @throws IllegalStateException si le contexte n'a pas été initialisé
+ */
+ public static ObserveSwingApplicationContext get() throws IllegalStateException {
+ Objects.requireNonNull(INSTANCE, "no application context initialized.");
+ return INSTANCE;
+ }
+
+ /** @return {@code true} si le context a été initialisé */
+ public static boolean isInit() {
+ return INSTANCE != null;
+ }
/**
* @return {@code true} si le context applicatif a été fermé (et est donc
@@ -228,6 +161,10 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
return closed;
}
+ //-------------------------------------------
+ // - Read
+ //-------------------------------------------
+
public ClientConfig getConfig() {
return CONFIG.get();
}
@@ -276,10 +213,29 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
return MAIN_UI.get();
}
+ public void setMainUI(ObserveMainUI ui) {
+ MAIN_UI.set(ui);
+
+ ObserveActionMap actionMap = ui.getObserveActionMap();
+ ui.getRootPane().setActionMap(actionMap);
+
+ ACTION_MAP.set(actionMap);
+
+ }
+
public List<Object> getNodesToReselect() {
return NODE_TO_RESELECT.get();
}
+ public void setNodesToReselect(Object[] paths) {
+ if (paths == null) {
+ NODE_TO_RESELECT.remove();
+
+ } else {
+ NODE_TO_RESELECT.set(Arrays.asList(paths));
+ }
+ }
+
public ObserveActionMap getActionMap() {
return ACTION_MAP.get();
}
@@ -288,14 +244,26 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
return H2_SERVER.get();
}
+ public void setH2Server(Server server) {
+ H2_SERVER.set(server);
+ }
+
public Server getH2WebServer() {
return H2_WEBSERVER.get();
}
+ public void setH2WebServer(Server server) {
+ H2_WEBSERVER.set(server);
+ }
+
private ScheduledThreadPoolExecutor getLocalDatabaseBackupTimer() {
return LOCAL_DATABASE_BACKUP_TIMER.get();
}
+ //-------------------------------------------
+ // - Write
+ //-------------------------------------------
+
public ObserveSwingSessionHelper getSwingSessionHelper() {
return OBSERVE_SWING_SESSION_HELPER.get();
}
@@ -308,37 +276,6 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
return BACKUP_MANAGER.get();
}
- //-------------------------------------------
- // - Write
- //-------------------------------------------
-
- public void setNodesToReselect(Object[] paths) {
- if (paths == null) {
- NODE_TO_RESELECT.remove();
-
- } else {
- NODE_TO_RESELECT.set(Arrays.asList(paths));
- }
- }
-
- public void setH2Server(Server server) {
- H2_SERVER.set(server);
- }
-
- public void setH2WebServer(Server server) {
- H2_WEBSERVER.set(server);
- }
-
- public void setMainUI(ObserveMainUI ui) {
- MAIN_UI.set(ui);
-
- ObserveActionMap actionMap = ui.getObserveActionMap();
- ui.getRootPane().setActionMap(actionMap);
-
- ACTION_MAP.set(actionMap);
-
- }
-
public void removeMainUI() {
MAIN_UI.remove();
}
@@ -347,16 +284,16 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
H2_SERVER_MODE.remove();
}
- //-------------------------------------------
- // - Locks
- //-------------------------------------------
-
void lock() throws InterruptedException {
synchronized (lock) {
lock.wait();
}
}
+ //-------------------------------------------
+ // - Locks
+ //-------------------------------------------
+
public void releaseLock() {
synchronized (lock) {
lock.notifyAll();
@@ -364,7 +301,7 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
}
@Override
- public void close() throws IOException {
+ public void close() {
if (log.isInfoEnabled()) {
log.info("Closing swing application context " + this);
}
@@ -398,11 +335,7 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
log.error("Could not close", e);
}
}
- try {
- ObserveServiceMainFactory.get().close();
- } catch (IOException e) {
- log.error("Could not close", e);
- }
+ ObserveServiceMainFactory.get().close();
// fermeture du context principal
clear();
@@ -421,12 +354,63 @@ public class ObserveSwingApplicationContext extends DefaultApplicationContext im
super.finalize();
}
-// private void registerMainAction(ActionMap actionMap, UIActionSupport action) {
-// String actionId = action.getActionId();
-// if (log.isInfoEnabled()) {
-// log.info("Register UI action " + actionId);
-// }
-// actionMap.put(actionId, action);
-// }
+ enum Entries {
+
+ CONFIG("Config", ClientConfig.class),
+ DECORATOR_SERVICE("Decorator service", DecoratorService.class),
+ TEXT_GENERATOR("Text generator", ObserveTextGenerator.class),
+ DATA_SOURCE_CONFIGURATION_FACTORY("Data source configuration main factory", ObserveDataSourceConfigurationMainFactory.class),
+ OPEN_DATA_MANAGER("Open data manager", ObserveOpenDataManager.class),
+ DATA_CONTEXT("Data context", ClientDataContext.class),
+ CONTENT_UI_MANAGER("Content UI manager", ContentUIManager.class),
+ DATA_SOURCES_MANAGER("Data sources manager", ObserveDataSourcesManager.class),
+ FLOATING_OBJECT_REFERENCES_MANAGER("Floating object referenfences manager", FloatingObjectPresetsManager.class),
+ OBSERVE_SWING_SESSION_HELPER("Swing session Helper", ObserveSwingSessionHelper.class),
+ VALIDATION_CONTEXT("Validation context", ClientValidationContext.class),
+ MAIN_UI("Main UI", ObserveMainUI.class),
+ ACTIONS("Command line Actions", ObserveCLAction.class),
+ ACTION_MAP("UI Actions", ObserveActionMap.class),
+ H2_SERVER_MODE("H2 Server mode", Boolean.class),
+ H2_SERVER("H2 Server", Server.class),
+ H2_WEBSERVER("H2 Web server", Server.class),
+ FOCUS_MANAGER("Focus manager", ObserveFocusManager.class),
+ VALIDATORS_MANAGER("Validators manager", ValidatorsManager.class),
+ BACKUP_MANAGER("Backup manager", BackupsManager.class),
+ LOCAL_DATABASE_BACKUP_TIMER("Local database backup task", ScheduledThreadPoolExecutor.class),
+ NODE_TO_RESELECT("Node to reselect");
+
+ private final String objectName;
+ private final JAXXContextEntryDef entryDef;
+
+ <O> Entries(String objectName, Class<O> entryType) {
+ this.objectName = objectName;
+ this.entryDef = newContextEntryDef(objectName, entryType);
+ }
+
+ Entries(String objectName) {
+ this.objectName = objectName;
+ this.entryDef = newListContextEntryDef(objectName);
+ }
+
+ @SuppressWarnings("unchecked")
+ public <O> O get() {
+ return (O) entryDef.getContextValue(ObserveSwingApplicationContext.get());
+ }
+ @SuppressWarnings("unchecked")
+ private <O> void set(O instance) {
+ entryDef.setContextValue(ObserveSwingApplicationContext.get(), instance);
+ if (log.isInfoEnabled()) {
+ log.info("Add to application context " + objectName + ": " + (instance instanceof Collection ? ((Collection) instance).size() + " element(s)" : instance));
+ }
+ }
+
+ private <O> void remove() {
+ O instance = get();
+ entryDef.removeContextValue(ObserveSwingApplicationContext.get());
+ if (log.isInfoEnabled()) {
+ log.info("Remove from application context " + objectName + ": " + (instance instanceof Collection ? ((Collection) instance).size() + " element(s)" : instance));
+ }
+ }
+ }
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/data/longline/ActivityLonglineLogbookUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/data/longline/ActivityLonglineLogbookUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/longline/ActivityLonglineLogbookUIHandler.java
@@ -28,13 +28,18 @@ import fr.ird.observe.client.db.constants.DataContextType;
import fr.ird.observe.client.ui.content.ContentMode;
import fr.ird.observe.client.ui.content.ContentUIModel;
import fr.ird.observe.client.ui.content.open.ContentOpenableUIHandler;
+import fr.ird.observe.client.ui.tree.navigation.NavigationTree;
+import fr.ird.observe.client.ui.tree.navigation.nodes.NavigationTreeNodeSupport;
+import fr.ird.observe.client.ui.tree.navigation.nodes.longline.ActivitiesLonglineNavigationTreeNode;
import fr.ird.observe.client.validation.ClientValidationContext;
import fr.ird.observe.dto.data.longline.ActivityLonglineDto;
import fr.ird.observe.dto.data.longline.ActivityLonglineHelper;
+import fr.ird.observe.dto.data.longline.ActivityLonglineReference;
import fr.ird.observe.dto.data.longline.TripLonglineDto;
import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.DataDtoReference;
import fr.ird.observe.dto.result.TripChildSaveResultDto;
+import fr.ird.observe.spi.DtoModelHelper;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.jaxx.runtime.spi.UIHandler;
@@ -241,8 +246,6 @@ class ActivityLonglineLogbookUIHandler extends ContentOpenableUIHandler<Activity
setUpdateMareeNodeTag(saveResult.isTripEndDateUpdated());
- obtainChildPosition(bean);
-
if (notPersisted) {
// ouverture de l'activité après création
getOpenDataManager().openActivityLongline(getSelectedParentId(), bean.getId(), null);
@@ -257,9 +260,15 @@ class ActivityLonglineLogbookUIHandler extends ContentOpenableUIHandler<Activity
return true;
}
+
@Override
- protected int getOpenablePosition(String parentId, ActivityLonglineDto bean) {
- return getActivityLonglineService().getActivityLonglinePositionInTripLongline(parentId, bean.getId());
+ protected int getOpenablePosition() {
+ NavigationTree treeHelper = getNavigationTree();
+ NavigationTreeNodeSupport node = treeHelper.getSelectedNode();
+ ActivitiesLonglineNavigationTreeNode parentNode = (ActivitiesLonglineNavigationTreeNode) node.getParent();
+ ActivityLonglineReference reference = DtoModelHelper.fromDataDto(getBeanType()).toReference(getDecoratorService().getReferentialLocale(), getBean());
+ return ActivitiesLonglineNavigationTreeNode.sortReferences(parentNode, node, reference, ActivityLonglineReference::getTimeStamp);
+// return getActivityLonglineService().getActivityLonglinePositionInTripLongline(parentId, bean.getId());
}
@Override
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/data/longline/ActivityLonglineUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/data/longline/ActivityLonglineUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/longline/ActivityLonglineUIHandler.java
@@ -4,7 +4,7 @@ package fr.ird.observe.client.ui.content.data.longline;
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -28,20 +28,25 @@ import fr.ird.observe.client.db.constants.DataContextType;
import fr.ird.observe.client.ui.content.ContentMode;
import fr.ird.observe.client.ui.content.ContentUIModel;
import fr.ird.observe.client.ui.content.open.ContentOpenableUIHandler;
+import fr.ird.observe.client.ui.tree.navigation.NavigationTree;
+import fr.ird.observe.client.ui.tree.navigation.nodes.NavigationTreeNodeSupport;
+import fr.ird.observe.client.ui.tree.navigation.nodes.longline.ActivitiesLonglineNavigationTreeNode;
import fr.ird.observe.client.validation.ClientValidationContext;
-import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.data.longline.ActivityLonglineDto;
import fr.ird.observe.dto.data.longline.ActivityLonglineHelper;
+import fr.ird.observe.dto.data.longline.ActivityLonglineReference;
import fr.ird.observe.dto.data.longline.TripLonglineDto;
+import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.DataDtoReference;
import fr.ird.observe.dto.result.TripChildSaveResultDto;
-import java.util.Optional;
-import javax.swing.SwingUtilities;
+import fr.ird.observe.spi.DtoModelHelper;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.jaxx.runtime.spi.UIHandler;
import org.nuiton.validator.NuitonValidatorScope;
+import javax.swing.*;
+import java.util.Optional;
import static org.nuiton.i18n.I18n.n;
import static org.nuiton.i18n.I18n.t;
@@ -241,8 +246,6 @@ class ActivityLonglineUIHandler extends ContentOpenableUIHandler<ActivityLonglin
setUpdateMareeNodeTag(saveResult.isTripEndDateUpdated());
- obtainChildPosition(bean);
-
if (notPersisted) {
// ouverture de l'activité après création
getOpenDataManager().openActivityLongline(getSelectedParentId(), bean.getId(), null);
@@ -258,8 +261,13 @@ class ActivityLonglineUIHandler extends ContentOpenableUIHandler<ActivityLonglin
}
@Override
- protected int getOpenablePosition(String parentId, ActivityLonglineDto bean) {
- return getActivityLonglineService().getActivityLonglinePositionInTripLongline(parentId, bean.getId());
+ protected int getOpenablePosition() {
+ NavigationTree treeHelper = getNavigationTree();
+ NavigationTreeNodeSupport node = treeHelper.getSelectedNode();
+ ActivitiesLonglineNavigationTreeNode parentNode = (ActivitiesLonglineNavigationTreeNode) node.getParent();
+ ActivityLonglineReference reference = DtoModelHelper.fromDataDto(getBeanType()).toReference(getDecoratorService().getReferentialLocale(), getBean());
+ return ActivitiesLonglineNavigationTreeNode.sortReferences(parentNode, node, reference, ActivityLonglineReference::getTimeStamp);
+// return getActivityLonglineService().getActivityLonglinePositionInTripLongline(parentId, bean.getId());
}
@Override
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/data/longline/TripLonglineUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/data/longline/TripLonglineUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/longline/TripLonglineUIHandler.java
@@ -10,12 +10,12 @@ package fr.ird.observe.client.ui.content.data.longline;
* 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>.
@@ -29,8 +29,12 @@ import fr.ird.observe.client.db.constants.DataContextType;
import fr.ird.observe.client.ui.content.ContentMode;
import fr.ird.observe.client.ui.content.open.ContentOpenableUIHandler;
import fr.ird.observe.client.ui.content.open.ContentOpenableUIModel;
+import fr.ird.observe.client.ui.tree.navigation.NavigationTree;
+import fr.ird.observe.client.ui.tree.navigation.nodes.NavigationTreeNodeSupport;
+import fr.ird.observe.client.ui.tree.navigation.nodes.longline.ProgramLonglineNavigationTreeNode;
import fr.ird.observe.client.ui.util.tripMap.TripMapUI;
import fr.ird.observe.dto.data.TripMapDto;
+import fr.ird.observe.dto.data.longline.TripLonglineReference;
import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.data.longline.TripLonglineDto;
import fr.ird.observe.dto.data.longline.TripLonglineHelper;
@@ -51,6 +55,7 @@ import javax.swing.JTabbedPane;
import javax.swing.SwingUtilities;
import javax.swing.event.TableModelListener;
+import fr.ird.observe.spi.DtoModelHelper;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.jaxx.runtime.spi.UIHandler;
@@ -245,18 +250,18 @@ class TripLonglineUIHandler extends ContentOpenableUIHandler<TripLonglineDto, Tr
}
super.startEditUI(TripLonglineUI.BINDING_VESSEL_SELECTED_ITEM,
- TripLonglineUI.BINDING_CAPTAIN_SELECTED_ITEM,
- TripLonglineUI.BINDING_OBSERVATION_OBSERVER_SELECTED_ITEM,
- TripLonglineUI.BINDING_OBSERVATION_TRIP_TYPE_SELECTED_ITEM,
- TripLonglineUI.BINDING_OBSERVATION_DATA_ENTRY_OPERATOR_SELECTED_ITEM,
- TripLonglineUI.BINDING_TOTAL_FISHING_OPERATIONS_NUMBER_NUMBER_VALUE,
- TripLonglineUI.BINDING_OCEAN_SELECTED_ITEM,
- TripLonglineUI.BINDING_START_DATE_DATE,
- TripLonglineUI.BINDING_END_DATE_DATE,
- TripLonglineUI.BINDING_COMMENT_MODEL,
- TripLonglineUI.BINDING_HOME_ID_TEXT,
- TripLonglineUI.BINDING_CLOSE_ENABLED,
- TripLonglineUI.BINDING_CLOSE_AND_CREATE_ENABLED);
+ TripLonglineUI.BINDING_CAPTAIN_SELECTED_ITEM,
+ TripLonglineUI.BINDING_OBSERVATION_OBSERVER_SELECTED_ITEM,
+ TripLonglineUI.BINDING_OBSERVATION_TRIP_TYPE_SELECTED_ITEM,
+ TripLonglineUI.BINDING_OBSERVATION_DATA_ENTRY_OPERATOR_SELECTED_ITEM,
+ TripLonglineUI.BINDING_TOTAL_FISHING_OPERATIONS_NUMBER_NUMBER_VALUE,
+ TripLonglineUI.BINDING_OCEAN_SELECTED_ITEM,
+ TripLonglineUI.BINDING_START_DATE_DATE,
+ TripLonglineUI.BINDING_END_DATE_DATE,
+ TripLonglineUI.BINDING_COMMENT_MODEL,
+ TripLonglineUI.BINDING_HOME_ID_TEXT,
+ TripLonglineUI.BINDING_CLOSE_ENABLED,
+ TripLonglineUI.BINDING_CLOSE_AND_CREATE_ENABLED);
model.setModified(create);
}
@@ -310,9 +315,6 @@ class TripLonglineUIHandler extends ContentOpenableUIHandler<TripLonglineDto, Tr
SaveResultDto saveResult = getTripLonglineService().save(bean);
saveResult.toDto(bean);
- // recuperation de la position de la maree dans le program
- obtainChildPosition(bean);
-
// ouverture de la marée
if (notPersisted) {
getOpenDataManager().openTripLongline(getSelectedParentId(), bean.getId());
@@ -321,12 +323,6 @@ class TripLonglineUIHandler extends ContentOpenableUIHandler<TripLonglineDto, Tr
}
@Override
- protected int getOpenablePosition(String parentId, TripLonglineDto bean) {
-
- return getTripLonglineService().getTripLonglinePositionInProgram(parentId, bean.getId());
- }
-
- @Override
protected boolean doDelete(TripLonglineDto bean) {
if (askToDelete(bean)) {
@@ -374,4 +370,14 @@ class TripLonglineUIHandler extends ContentOpenableUIHandler<TripLonglineDto, Tr
model.setObservationTabValid(observationTabValid);
}
+
+ @Override
+ protected int getOpenablePosition() {
+ NavigationTree treeHelper = getNavigationTree();
+ NavigationTreeNodeSupport node = treeHelper.getSelectedNode();
+ ProgramLonglineNavigationTreeNode parentNode = (ProgramLonglineNavigationTreeNode) node.getParent();
+ TripLonglineReference reference = DtoModelHelper.fromDataDto(getBeanType()).toReference(getDecoratorService().getReferentialLocale(), getBean());
+ return ProgramLonglineNavigationTreeNode.sortReferences(parentNode, node, reference, TripLonglineReference::getStartDate);
+ }
+
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/data/seine/ActivitySeineUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/ActivitySeineUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/ActivitySeineUIHandler.java
@@ -2,7 +2,7 @@
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -27,22 +27,21 @@ import fr.ird.observe.client.db.constants.DataContextType;
import fr.ird.observe.client.ui.content.ContentMode;
import fr.ird.observe.client.ui.content.ContentUIModel;
import fr.ird.observe.client.ui.content.open.ContentOpenableUIHandler;
+import fr.ird.observe.client.ui.tree.navigation.NavigationTree;
+import fr.ird.observe.client.ui.tree.navigation.nodes.NavigationTreeNodeSupport;
+import fr.ird.observe.client.ui.tree.navigation.nodes.seine.ActivitiesSeineNavigationTreeNode;
import fr.ird.observe.client.validation.ClientValidationContext;
+import fr.ird.observe.dto.data.seine.ActivitySeineDto;
+import fr.ird.observe.dto.data.seine.ActivitySeineHelper;
+import fr.ird.observe.dto.data.seine.ActivitySeineReference;
+import fr.ird.observe.dto.data.seine.RouteDto;
+import fr.ird.observe.dto.data.seine.TripSeineDto;
import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.DataDtoReference;
import fr.ird.observe.dto.referential.seine.VesselActivitySeineHelper;
import fr.ird.observe.dto.referential.seine.VesselActivitySeineReference;
import fr.ird.observe.dto.result.SaveResultDto;
-import fr.ird.observe.dto.data.seine.ActivitySeineDto;
-import fr.ird.observe.dto.data.seine.ActivitySeineHelper;
-import fr.ird.observe.dto.data.seine.RouteDto;
-import fr.ird.observe.dto.data.seine.TripSeineDto;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Optional;
-import java.util.Set;
-import javax.swing.SwingUtilities;
-import javax.swing.event.TableModelListener;
+import fr.ird.observe.spi.DtoModelHelper;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.jaxx.runtime.spi.UIHandler;
@@ -50,6 +49,12 @@ import org.nuiton.jaxx.validator.swing.SwingValidatorMessage;
import org.nuiton.jaxx.validator.swing.SwingValidatorMessageTableModel;
import org.nuiton.validator.NuitonValidatorScope;
+import javax.swing.*;
+import javax.swing.event.TableModelListener;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Optional;
+import java.util.Set;
import static org.nuiton.i18n.I18n.n;
import static org.nuiton.i18n.I18n.t;
@@ -68,7 +73,7 @@ class ActivitySeineUIHandler extends ContentOpenableUIHandler<ActivitySeineDto,
ActivitySeineUIHandler() {
super(DataContextType.Route, DataContextType.ActivitySeine,
- n("observe.common.ActivitySeineDto.message.not.open"));
+ n("observe.common.ActivitySeineDto.message.not.open"));
computeTabValidStateListener = e -> {
SwingValidatorMessageTableModel source = (SwingValidatorMessageTableModel) e.getSource();
@@ -131,17 +136,17 @@ class ActivitySeineUIHandler extends ContentOpenableUIHandler<ActivitySeineDto,
// la route n'est pas ouverte
addMessage(ui,
- NuitonValidatorScope.INFO,
- getTypeI18nKey(RouteDto.class),
- t("observe.common.RouteDto.message.not.open"));
+ NuitonValidatorScope.INFO,
+ getTypeI18nKey(RouteDto.class),
+ t("observe.common.RouteDto.message.not.open"));
} else if (!getOpenDataManager().isOpenTripSeine(dataContext.getSelectedTripSeineId())) {
// la marée n'est past ouverte
addMessage(ui,
- NuitonValidatorScope.INFO,
- getTypeI18nKey(TripSeineDto.class),
- t("observe.common.TripSeineDto.message.not.open"));
+ NuitonValidatorScope.INFO,
+ getTypeI18nKey(TripSeineDto.class),
+ t("observe.common.TripSeineDto.message.not.open"));
if (getModel().isHistoricalData()) {
@@ -251,28 +256,28 @@ class ActivitySeineUIHandler extends ContentOpenableUIHandler<ActivitySeineDto,
ui.getValidator().setContext(contextName);
if (create) {
addMessage(ui,
- NuitonValidatorScope.INFO,
- getTypeI18nKey(ActivitySeineDto.class),
- t("observe.common.ActivitySeineDto.message.creating"));
+ NuitonValidatorScope.INFO,
+ getTypeI18nKey(ActivitySeineDto.class),
+ t("observe.common.ActivitySeineDto.message.creating"));
} else {
addMessage(ui,
- NuitonValidatorScope.INFO,
- getTypeI18nKey(ActivitySeineDto.class),
- t("observe.common.ActivitySeineDto.message.updating"));
+ NuitonValidatorScope.INFO,
+ getTypeI18nKey(ActivitySeineDto.class),
+ t("observe.common.ActivitySeineDto.message.updating"));
}
super.startEditUI(ActivitySeineUI.BINDING_TIME_TIME,
- ActivitySeineUI.BINDING_VESSEL_SPEED_NUMBER_VALUE,
- ActivitySeineUI.BINDING_SEA_SURFACE_TEMPERATURE_STORAGE_TEMPERATURE,
- ActivitySeineUI.BINDING_COMMENT_MODEL,
- ActivitySeineUI.BINDING_VESSEL_ACTIVITY_SEINE_SELECTED_ITEM,
- ActivitySeineUI.BINDING_PREVIOUS_FPA_ZONE_SELECTED_ITEM,
- ActivitySeineUI.BINDING_CURRENT_FPA_ZONE_SELECTED_ITEM,
- ActivitySeineUI.BINDING_NEXT_FPA_ZONE_SELECTED_ITEM,
- ActivitySeineUI.BINDING_SURROUNDING_ACTIVITY_SELECTED_ITEM,
- ActivitySeineUI.BINDING_CLOSE_ENABLED,
- ActivitySeineUI.BINDING_ADD_SET_ENABLED,
- ActivitySeineUI.BINDING_CLOSE_AND_CREATE_ENABLED);
+ ActivitySeineUI.BINDING_VESSEL_SPEED_NUMBER_VALUE,
+ ActivitySeineUI.BINDING_SEA_SURFACE_TEMPERATURE_STORAGE_TEMPERATURE,
+ ActivitySeineUI.BINDING_COMMENT_MODEL,
+ ActivitySeineUI.BINDING_VESSEL_ACTIVITY_SEINE_SELECTED_ITEM,
+ ActivitySeineUI.BINDING_PREVIOUS_FPA_ZONE_SELECTED_ITEM,
+ ActivitySeineUI.BINDING_CURRENT_FPA_ZONE_SELECTED_ITEM,
+ ActivitySeineUI.BINDING_NEXT_FPA_ZONE_SELECTED_ITEM,
+ ActivitySeineUI.BINDING_SURROUNDING_ACTIVITY_SELECTED_ITEM,
+ ActivitySeineUI.BINDING_CLOSE_ENABLED,
+ ActivitySeineUI.BINDING_ADD_SET_ENABLED,
+ ActivitySeineUI.BINDING_CLOSE_AND_CREATE_ENABLED);
model.setModified(create);
}
@@ -288,8 +293,6 @@ class ActivitySeineUIHandler extends ContentOpenableUIHandler<ActivitySeineDto,
SaveResultDto saveResult = getActivitySeineService().save(routeId, getModel().getBean());
saveResult.toDto(bean);
- obtainChildPosition(bean);
-
if (notPersisted) {
// ouverture de l'activité après création
getOpenDataManager().openActivitySeine(getSelectedParentId(), bean.getId(), null);
@@ -305,8 +308,13 @@ class ActivitySeineUIHandler extends ContentOpenableUIHandler<ActivitySeineDto,
}
@Override
- protected int getOpenablePosition(String parentId, ActivitySeineDto bean) {
- return getActivitySeineService().getActivitySeinePositionInRoute(parentId, bean.getId());
+ protected int getOpenablePosition() {
+ NavigationTree treeHelper = getNavigationTree();
+ NavigationTreeNodeSupport node = treeHelper.getSelectedNode();
+ ActivitiesSeineNavigationTreeNode parentNode = (ActivitiesSeineNavigationTreeNode) node.getParent();
+ ActivitySeineReference reference = DtoModelHelper.fromDataDto(getBeanType()).toReference(getDecoratorService().getReferentialLocale(), getBean());
+ return ActivitiesSeineNavigationTreeNode.sortReferences(parentNode, node, reference, ActivitySeineReference::getTime);
+// return getActivitySeineService().getActivitySeinePositionInRoute(parentId, bean.getId());
}
@Override
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/data/seine/RouteUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/RouteUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/RouteUIHandler.java
@@ -2,7 +2,7 @@
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -24,28 +24,32 @@ package fr.ird.observe.client.ui.content.data.seine;
import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.client.db.ClientDataContext;
import fr.ird.observe.client.db.constants.DataContextType;
-import fr.ird.observe.client.ui.util.UIHelper;
import fr.ird.observe.client.ui.content.ContentMode;
import fr.ird.observe.client.ui.content.open.ContentOpenableUIHandler;
import fr.ird.observe.client.ui.tree.navigation.NavigationTree;
import fr.ird.observe.client.ui.tree.navigation.nodes.NavigationTreeNodeSupport;
+import fr.ird.observe.client.ui.tree.navigation.nodes.seine.RouteSeineNavigationTreeNode;
+import fr.ird.observe.client.ui.tree.navigation.nodes.seine.RoutesSeineNavigationTreeNode;
+import fr.ird.observe.client.ui.util.UIHelper;
+import fr.ird.observe.dto.data.seine.ActivitySeineDto;
+import fr.ird.observe.dto.data.seine.RouteDto;
+import fr.ird.observe.dto.data.seine.RouteHelper;
+import fr.ird.observe.dto.data.seine.RouteReference;
+import fr.ird.observe.dto.data.seine.TripSeineDto;
import fr.ird.observe.dto.decoration.ObserveI18nDecoratorHelper;
import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.referential.seine.VesselActivitySeineHelper;
import fr.ird.observe.dto.referential.seine.VesselActivitySeineReference;
import fr.ird.observe.dto.result.TripChildSaveResultDto;
-import fr.ird.observe.dto.data.seine.ActivitySeineDto;
-import fr.ird.observe.dto.data.seine.RouteDto;
-import fr.ird.observe.dto.data.seine.RouteHelper;
-import fr.ird.observe.dto.data.seine.TripSeineDto;
-import java.util.Date;
-import javax.swing.JOptionPane;
+import fr.ird.observe.spi.DtoModelHelper;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.jaxx.runtime.spi.UIHandler;
import org.nuiton.util.DateUtil;
import org.nuiton.validator.NuitonValidatorScope;
+import javax.swing.*;
+import java.util.Date;
import static org.nuiton.i18n.I18n.n;
import static org.nuiton.i18n.I18n.t;
@@ -204,8 +208,6 @@ class RouteUIHandler extends ContentOpenableUIHandler<RouteDto, RouteUI> impleme
// on doit toujours recharger le nœud de la marée puisque le nombre de routes a changé
setUpdateMareeNodeTag(true);
- obtainChildPosition(bean);
-
// ouverture de la route
if (notPersisted) {
getOpenDataManager().openRoute(getSelectedParentId(), bean.getId());
@@ -215,8 +217,12 @@ class RouteUIHandler extends ContentOpenableUIHandler<RouteDto, RouteUI> impleme
}
@Override
- protected int getOpenablePosition(String parentId, RouteDto bean) {
- return getRouteService().getRoutePositionInTripSeine(parentId, bean.getId());
+ protected int getOpenablePosition() {
+ NavigationTree treeHelper = getNavigationTree();
+ NavigationTreeNodeSupport node = treeHelper.getSelectedNode();
+ RoutesSeineNavigationTreeNode parentNode = (RoutesSeineNavigationTreeNode) node.getParent();
+ RouteReference reference = DtoModelHelper.fromDataDto(getBeanType()).toReference(getDecoratorService().getReferentialLocale(), getBean());
+ return RouteSeineNavigationTreeNode.sortReferences(parentNode, node, reference, RouteReference::getDate);
}
@Override
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TripSeineUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TripSeineUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/TripSeineUIHandler.java
@@ -2,7 +2,7 @@
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -28,8 +28,14 @@ import fr.ird.observe.client.db.constants.DataContextType;
import fr.ird.observe.client.ui.content.ContentMode;
import fr.ird.observe.client.ui.content.open.ContentOpenableUIHandler;
import fr.ird.observe.client.ui.content.open.ContentOpenableUIModel;
+import fr.ird.observe.client.ui.tree.navigation.NavigationTree;
+import fr.ird.observe.client.ui.tree.navigation.nodes.NavigationTreeNodeSupport;
+import fr.ird.observe.client.ui.tree.navigation.nodes.seine.ProgramSeineNavigationTreeNode;
import fr.ird.observe.client.ui.util.tripMap.TripMapUI;
import fr.ird.observe.dto.data.TripMapDto;
+import fr.ird.observe.dto.data.seine.TripSeineDto;
+import fr.ird.observe.dto.data.seine.TripSeineHelper;
+import fr.ird.observe.dto.data.seine.TripSeineReference;
import fr.ird.observe.dto.form.Form;
import fr.ird.observe.dto.reference.DtoReferenceCollection;
import fr.ird.observe.dto.referential.PersonDto;
@@ -39,18 +45,17 @@ import fr.ird.observe.dto.referential.VesselDto;
import fr.ird.observe.dto.referential.VesselHelper;
import fr.ird.observe.dto.referential.VesselReference;
import fr.ird.observe.dto.result.SaveResultDto;
-import fr.ird.observe.dto.data.seine.TripSeineDto;
-import fr.ird.observe.dto.data.seine.TripSeineHelper;
-import java.util.Date;
-import java.util.List;
-import javax.swing.JComponent;
-import javax.swing.JTabbedPane;
-import javax.swing.SwingUtilities;
+import fr.ird.observe.spi.DtoModelHelper;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.jaxx.runtime.spi.UIHandler;
import org.nuiton.util.DateUtil;
+import javax.swing.JComponent;
+import javax.swing.JTabbedPane;
+import javax.swing.SwingUtilities;
+import java.util.Date;
+import java.util.List;
import static org.nuiton.i18n.I18n.n;
import static org.nuiton.i18n.I18n.t;
@@ -289,9 +294,6 @@ class TripSeineUIHandler extends ContentOpenableUIHandler<TripSeineDto, TripSein
SaveResultDto saveResult = getTripSeineService().save(bean);
saveResult.toDto(bean);
- // recuperation de la position de la maree dans le program
- obtainChildPosition(bean);
-
// ouverture de la marée
if (notPersisted) {
getOpenDataManager().openTripSeine(getSelectedParentId(), bean.getId());
@@ -300,9 +302,14 @@ class TripSeineUIHandler extends ContentOpenableUIHandler<TripSeineDto, TripSein
return true;
}
- protected int getOpenablePosition(String parentId, TripSeineDto bean) {
+ protected int getOpenablePosition() {
- return getTripSeineService().getTripSeinePositionInProgram(parentId, bean.getId());
+ NavigationTree treeHelper = getNavigationTree();
+ NavigationTreeNodeSupport node = treeHelper.getSelectedNode();
+ ProgramSeineNavigationTreeNode parentNode = (ProgramSeineNavigationTreeNode) node.getParent();
+ TripSeineReference reference = DtoModelHelper.fromDataDto(getBeanType()).toReference(getDecoratorService().getReferentialLocale(), getBean());
+ return ProgramSeineNavigationTreeNode.sortReferences(parentNode, node, reference, TripSeineReference::getStartDate);
+// return getTripSeineService().getTripSeinePositionInProgram(parentId, bean.getId());
}
@Override
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/open/ContentOpenableUIHandler.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/open/ContentOpenableUIHandler.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/open/ContentOpenableUIHandler.java
@@ -48,10 +48,9 @@ import static org.nuiton.i18n.I18n.t;
*/
public abstract class ContentOpenableUIHandler<E extends DataDto, U extends ContentOpenableUI<E, U>> extends ContentUIHandler<E, U> {
- private static final String POSITION_OPENABLE = "positionOpenable";
+// private static final String POSITION_OPENABLE = "positionOpenable";
- /** Logger */
- static private final Log log = LogFactory.getLog(ContentOpenableUIHandler.class);
+ private static final Log log = LogFactory.getLog(ContentOpenableUIHandler.class);
private static final String UPDATE_TRIP_NODE = "updateTripNode";
protected final String closeMessage;
@@ -147,8 +146,7 @@ public abstract class ContentOpenableUIHandler<E extends DataDto, U extends Cont
model.setMode(ContentMode.READ);
removeAllMessages(ui);
- addMessage(ui, NuitonValidatorScope.INFO,
- getTypeI18nKey(bean.getClass()), t(closeMessage));
+ addMessage(ui, NuitonValidatorScope.INFO, getTypeI18nKey(bean.getClass()), t(closeMessage));
NavigationTree treeHelper = getNavigationTree();
treeHelper.reloadSelectedNode(bean instanceof TripSeineDto || bean instanceof TripLonglineDto, true);
@@ -162,9 +160,9 @@ public abstract class ContentOpenableUIHandler<E extends DataDto, U extends Cont
super.afterSave(refresh);
- U ui = getUi();
+ E bean = getBean();
+ int position = getOpenablePosition();
- int position = ui.getContextValue(Integer.class, POSITION_OPENABLE);
NavigationTree treeHelper = getNavigationTree();
NavigationTreeNodeSupport node = treeHelper.getSelectedNode();
@@ -176,8 +174,6 @@ public abstract class ContentOpenableUIHandler<E extends DataDto, U extends Cont
boolean create = node.getId() == null;
- E bean = getBean();
-
int oldPosition;
if (create) {
oldPosition = parentNode.getChildCount();
@@ -258,20 +254,20 @@ public abstract class ContentOpenableUIHandler<E extends DataDto, U extends Cont
createDataUI();
}
- protected final void obtainChildPosition(E bean) {
-
- String containerId = getSelectedParentId();
-
- int position = getOpenablePosition(containerId, bean);
-
- if (log.isDebugEnabled()) {
- log.debug("Position of child : " + position);
- }
-
- getUi().setContextValue(position, POSITION_OPENABLE);
- }
-
- protected abstract int getOpenablePosition(String parentId, E bean);
+// protected final void obtainChildPosition(E bean) {
+//
+// String containerId = getSelectedParentId();
+//
+// int position = getOpenablePosition(containerId, bean);
+//
+// if (log.isDebugEnabled()) {
+// log.debug("Position of child : " + position);
+// }
+//
+// getUi().setContextValue(position, POSITION_OPENABLE);
+// }
+
+ protected abstract int getOpenablePosition();
protected final void finalizeOpenUI(ContentMode mode, boolean create) {
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/NavigationTreeNodeSupport.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/NavigationTreeNodeSupport.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/NavigationTreeNodeSupport.java
@@ -4,7 +4,7 @@ package fr.ird.observe.client.ui.tree.navigation.nodes;
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -26,15 +26,22 @@ import fr.ird.observe.client.ui.ObserveKeyStrokes;
import fr.ird.observe.client.ui.actions.content.SelectNodeUIAction;
import fr.ird.observe.client.ui.content.ContentUI;
import fr.ird.observe.client.ui.tree.ObserveTreeNodeSupport;
-import java.awt.Color;
-import java.awt.event.ActionEvent;
-import java.util.Enumeration;
-import javax.swing.AbstractAction;
-import javax.swing.JMenuItem;
+import fr.ird.observe.dto.IdDto;
+import fr.ird.observe.dto.reference.DtoReference;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.jaxx.runtime.JAXXObject;
+import javax.swing.AbstractAction;
+import javax.swing.JMenuItem;
+import java.awt.Color;
+import java.awt.event.ActionEvent;
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.Enumeration;
+import java.util.List;
+import java.util.function.Function;
+
/**
* Created on 14/11/16.
*
@@ -48,6 +55,21 @@ public abstract class NavigationTreeNodeSupport<O> extends ObserveTreeNodeSuppor
private boolean loaded;
+ public static <D extends IdDto, R extends DtoReference<D, R>, C extends Comparable> int sortReferences(Iterable<? extends ReferenceNavigationTreeNodeSupport<D, R>> childNodes, NavigationTreeNodeSupport selectedNode, R reference, Function<R, C> comparatorFunction) {
+ List<R> references = new ArrayList<>();
+ for (ReferenceNavigationTreeNodeSupport<D, R> childNode : childNodes) {
+ if (childNode == selectedNode) {
+ continue;
+ }
+ references.add(childNode.getData());
+ }
+ references.add(reference);
+ @SuppressWarnings("unchecked")
+ Comparator<R> comparing = Comparator.comparing(comparatorFunction);
+ references.sort(comparing);
+ return references.indexOf(reference);
+ }
+
public abstract Class<?> getDataType();
public abstract void reload();
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/ReferenceNavigationTreeNodeSupport.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/ReferenceNavigationTreeNodeSupport.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/ReferenceNavigationTreeNodeSupport.java
@@ -4,7 +4,7 @@ package fr.ird.observe.client.ui.tree.navigation.nodes;
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -26,9 +26,14 @@ import fr.ird.observe.client.ObserveSwingApplicationContext;
import fr.ird.observe.dto.IdDto;
import fr.ird.observe.dto.IdHelper;
import fr.ird.observe.dto.reference.DtoReference;
-import java.awt.Color;
import org.nuiton.decorator.Decorator;
+import java.awt.*;
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.List;
+import java.util.function.Function;
+
/**
* Created on 14/11/16.
*
@@ -39,17 +44,17 @@ public abstract class ReferenceNavigationTreeNodeSupport<D extends IdDto, R exte
private final Decorator<R> decorator;
- @Override
- public String getId() {
- return getData().getId();
- }
-
protected ReferenceNavigationTreeNodeSupport(R data, boolean allowChildren) {
super(data, allowChildren && data.isPersisted());
this.decorator = ObserveSwingApplicationContext.get().getDecoratorService().getReferenceDecorator(getDataType());
}
@Override
+ public String getId() {
+ return getData().getId();
+ }
+
+ @Override
public Color getColor() {
return isPersisted() ? super.getColor() : Color.RED;
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/ActivitiesLonglineNavigationTreeNode.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/ActivitiesLonglineNavigationTreeNode.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/ActivitiesLonglineNavigationTreeNode.java
@@ -25,10 +25,15 @@ package fr.ird.observe.client.ui.tree.navigation.nodes.longline;
import fr.ird.observe.client.ui.content.data.longline.ActivityLonglinesUI;
import fr.ird.observe.client.ui.tree.navigation.nodes.ClassNavigationTreeNode;
import fr.ird.observe.client.ui.tree.navigation.nodes.WithChildsToReload;
+import fr.ird.observe.client.ui.tree.navigation.nodes.seine.TripSeineNavigationTreeNode;
import fr.ird.observe.dto.IdHelper;
import fr.ird.observe.dto.data.longline.ActivityLonglineDto;
import fr.ird.observe.dto.data.longline.ActivityLonglineReference;
import fr.ird.observe.dto.reference.DataDtoReferenceSet;
+import org.apache.commons.collections4.EnumerationUtils;
+import org.jetbrains.annotations.NotNull;
+
+import java.util.Iterator;
import static org.nuiton.i18n.I18n.t;
@@ -39,7 +44,7 @@ import static org.nuiton.i18n.I18n.t;
* @author Tony Chemit - dev(a)tchemit.fr
* @since 6.0
*/
-public class ActivitiesLonglineNavigationTreeNode extends ClassNavigationTreeNode<ActivityLonglineDto> implements WithChildsToReload {
+public class ActivitiesLonglineNavigationTreeNode extends ClassNavigationTreeNode<ActivityLonglineDto> implements WithChildsToReload, Iterable<ActivityLonglineNavigationTreeNode> {
ActivitiesLonglineNavigationTreeNode() {
super(ActivityLonglineDto.class, true, t("observe.ui.tree.activities"));
@@ -67,4 +72,11 @@ public class ActivitiesLonglineNavigationTreeNode extends ClassNavigationTreeNod
add(new ActivityLonglineNavigationTreeNode(reference));
}
}
+
+ @SuppressWarnings("unchecked")
+ @NotNull
+ @Override
+ public Iterator<ActivityLonglineNavigationTreeNode> iterator() {
+ return EnumerationUtils.toList(children()).iterator();
+ }
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/ProgramLonglineNavigationTreeNode.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/ProgramLonglineNavigationTreeNode.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/longline/ProgramLonglineNavigationTreeNode.java
@@ -4,7 +4,7 @@ package fr.ird.observe.client.ui.tree.navigation.nodes.longline;
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -27,9 +27,11 @@ import fr.ird.observe.client.ui.tree.navigation.nodes.ReferenceNavigationTreeNod
import fr.ird.observe.dto.data.longline.TripLonglineReference;
import fr.ird.observe.dto.referential.ProgramDto;
import fr.ird.observe.dto.referential.ProgramReference;
+import org.apache.commons.collections4.EnumerationUtils;
+import org.jetbrains.annotations.NotNull;
+
import java.util.Collection;
import java.util.Iterator;
-import org.apache.commons.collections4.EnumerationUtils;
/**
* Created on 14/11/16.
@@ -74,8 +76,11 @@ public class ProgramLonglineNavigationTreeNode extends ReferenceNavigationTreeNo
return TripLonglinesUI.class;
}
+ @SuppressWarnings("unchecked")
+ @NotNull
@Override
public Iterator<TripLonglineNavigationTreeNode> iterator() {
return EnumerationUtils.toList(children()).iterator();
}
+
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/ActivitiesSeineNavigationTreeNode.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/ActivitiesSeineNavigationTreeNode.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/ActivitiesSeineNavigationTreeNode.java
@@ -4,7 +4,7 @@ package fr.ird.observe.client.ui.tree.navigation.nodes.seine;
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -26,10 +26,13 @@ import fr.ird.observe.client.ui.content.data.seine.ActivitySeinesUI;
import fr.ird.observe.client.ui.tree.navigation.nodes.ClassNavigationTreeNode;
import fr.ird.observe.client.ui.tree.navigation.nodes.WithChildsToReload;
import fr.ird.observe.dto.IdHelper;
-import fr.ird.observe.dto.reference.DataDtoReferenceSet;
import fr.ird.observe.dto.data.seine.ActivitySeineDto;
import fr.ird.observe.dto.data.seine.ActivitySeineReference;
+import fr.ird.observe.dto.reference.DataDtoReferenceSet;
+import org.apache.commons.collections4.EnumerationUtils;
+import org.jetbrains.annotations.NotNull;
+import java.util.Iterator;
import static org.nuiton.i18n.I18n.t;
@@ -39,7 +42,7 @@ import static org.nuiton.i18n.I18n.t;
* @author Tony Chemit - dev(a)tchemit.fr
* @since 6.0
*/
-public class ActivitiesSeineNavigationTreeNode extends ClassNavigationTreeNode<ActivitySeineDto> implements WithChildsToReload {
+public class ActivitiesSeineNavigationTreeNode extends ClassNavigationTreeNode<ActivitySeineDto> implements WithChildsToReload ,Iterable<ActivitySeineNavigationTreeNode> {
ActivitiesSeineNavigationTreeNode() {
super(ActivitySeineDto.class, true, t("observe.ui.tree.activities"));
@@ -67,4 +70,11 @@ public class ActivitiesSeineNavigationTreeNode extends ClassNavigationTreeNode<A
add(new ActivitySeineNavigationTreeNode(reference));
}
}
+
+ @SuppressWarnings("unchecked")
+ @NotNull
+ @Override
+ public Iterator<ActivitySeineNavigationTreeNode> iterator() {
+ return EnumerationUtils.toList(children()).iterator();
+ }
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/ProgramSeineNavigationTreeNode.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/ProgramSeineNavigationTreeNode.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/ProgramSeineNavigationTreeNode.java
@@ -4,7 +4,7 @@ package fr.ird.observe.client.ui.tree.navigation.nodes.seine;
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -24,12 +24,14 @@ package fr.ird.observe.client.ui.tree.navigation.nodes.seine;
import fr.ird.observe.client.ui.content.data.seine.TripSeinesUI;
import fr.ird.observe.client.ui.tree.navigation.nodes.ReferenceNavigationTreeNodeSupport;
+import fr.ird.observe.dto.data.seine.TripSeineReference;
import fr.ird.observe.dto.referential.ProgramDto;
import fr.ird.observe.dto.referential.ProgramReference;
-import fr.ird.observe.dto.data.seine.TripSeineReference;
+import org.apache.commons.collections4.EnumerationUtils;
+import org.jetbrains.annotations.NotNull;
+
import java.util.Collection;
import java.util.Iterator;
-import org.apache.commons.collections4.EnumerationUtils;
/**
* Created on 14/11/16.
@@ -61,7 +63,6 @@ public class ProgramSeineNavigationTreeNode extends ReferenceNavigationTreeNodeS
return TripSeinesUI.class;
}
-
@Override
public boolean isOpen() {
// le programme est ouvert si l'une de ses marées est ouverte
@@ -73,6 +74,8 @@ public class ProgramSeineNavigationTreeNode extends ReferenceNavigationTreeNodeS
return false;
}
+ @SuppressWarnings("unchecked")
+ @NotNull
@Override
public Iterator<TripSeineNavigationTreeNode> iterator() {
return EnumerationUtils.toList(children()).iterator();
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/RoutesSeineNavigationTreeNode.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/RoutesSeineNavigationTreeNode.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/nodes/seine/RoutesSeineNavigationTreeNode.java
@@ -4,7 +4,7 @@ package fr.ird.observe.client.ui.tree.navigation.nodes.seine;
* #%L
* ObServe :: Client
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -26,10 +26,13 @@ import fr.ird.observe.client.ui.content.data.seine.RoutesUI;
import fr.ird.observe.client.ui.tree.navigation.nodes.ClassNavigationTreeNode;
import fr.ird.observe.client.ui.tree.navigation.nodes.WithChildsToReload;
import fr.ird.observe.dto.IdHelper;
-import fr.ird.observe.dto.reference.DataDtoReferenceSet;
import fr.ird.observe.dto.data.seine.RouteDto;
import fr.ird.observe.dto.data.seine.RouteReference;
+import fr.ird.observe.dto.reference.DataDtoReferenceSet;
+import org.apache.commons.collections4.EnumerationUtils;
+import org.jetbrains.annotations.NotNull;
+import java.util.Iterator;
import static org.nuiton.i18n.I18n.t;
@@ -39,7 +42,7 @@ import static org.nuiton.i18n.I18n.t;
* @author Tony Chemit - dev(a)tchemit.fr
* @since 6.0
*/
-public class RoutesSeineNavigationTreeNode extends ClassNavigationTreeNode<RouteDto> implements WithChildsToReload {
+public class RoutesSeineNavigationTreeNode extends ClassNavigationTreeNode<RouteDto> implements WithChildsToReload,Iterable<RouteSeineNavigationTreeNode> {
RoutesSeineNavigationTreeNode() {
super(RouteDto.class, true, t("observe.ui.tree.seine.routes"));
@@ -67,4 +70,12 @@ public class RoutesSeineNavigationTreeNode extends ClassNavigationTreeNode<Route
add(new RouteSeineNavigationTreeNode(reference));
}
}
+
+
+ @SuppressWarnings("unchecked")
+ @NotNull
+ @Override
+ public Iterator<RouteSeineNavigationTreeNode> iterator() {
+ return EnumerationUtils.toList(children()).iterator();
+ }
}
=====================================
services-client/src/main/java/fr/ird/observe/services/client/ObserveServiceFactoryClient.java
=====================================
--- a/services-client/src/main/java/fr/ird/observe/services/client/ObserveServiceFactoryClient.java
+++ b/services-client/src/main/java/fr/ird/observe/services/client/ObserveServiceFactoryClient.java
@@ -4,7 +4,7 @@ package fr.ird.observe.services.client;
* #%L
* ObServe :: Services client implementation
* %%
- * Copyright (C) 2008 - 2017 IRD, Code Lutin, Ultreia.io
+ * Copyright (C) 2008 - 2018 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
@@ -36,9 +36,11 @@ import fr.ird.observe.services.gson.ObserveDataSourceConnectionAdapter;
import fr.ird.observe.services.gson.ObserveDtoGsonSupplier;
import fr.ird.observe.services.service.ObserveService;
import io.ultreia.java4all.http.HResponseBuilder;
-import java.io.IOException;
-import java.util.Objects;
import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import java.util.Objects;
/**
* Created on 16/08/15.
@@ -47,8 +49,10 @@ import org.apache.commons.lang3.StringUtils;
*/
public class ObserveServiceFactoryClient extends ObserveServiceFactorySupport implements ObserveDataSourceConfigurationRestConstants {
+ private static final Log log = LogFactory.getLog(ObserveServiceFactoryClient.class);
+ private final static ClassMappingClient CLASS_MAPPING = ClassMappingClient.get();
+ private final static int LOCATE_PREFIX_LENGTH = ObserveServiceClientSupport.class.getPackage().getName().length();
private final ObserveRequestBuilderFactory requestBuilderFactory = new ObserveRequestBuilderFactory();
-
private final HResponseBuilder responseBuilder = HResponseBuilder.create(new ObserveDtoGsonSupplier() {
@Override
@@ -60,9 +64,6 @@ public class ObserveServiceFactoryClient extends ObserveServiceFactorySupport im
}
});
- private final static ClassMappingClient CLASS_MAPPING = ClassMappingClient.get();
-
- private final static int LOCATE_PREFIX_LENGTH = ObserveServiceClientSupport.class.getPackage().getName().length();
@Override
public <S extends ObserveService> boolean accept(ObserveDataSourceConfiguration dataSourceConfiguration, Class<S> serviceType) {
@@ -130,8 +131,12 @@ public class ObserveServiceFactoryClient extends ObserveServiceFactorySupport im
}
@Override
- public void close() throws IOException {
- responseBuilder.close();
+ public void close() {
+ try {
+ responseBuilder.close();
+ } catch (Exception e) {
+ log.error("Can't close response builder", e);
+ }
}
}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/27bcb0df8d6b9e8bb4e938a1a79…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/27bcb0df8d6b9e8bb4e938a1a79…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] Simplificiation du layout de content
by Tony CHEMIT 08 Apr '18
by Tony CHEMIT 08 Apr '18
08 Apr '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
16a46270 by Tony CHEMIT at 2018-04-08T09:48:52Z
Simplificiation du layout de content
- - - - -
5 changed files:
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jcss
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
- client/src/main/java/fr/ird/observe/client/ui/content/ContentUIManager.java
- client/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationUI.jcss
Changes:
=====================================
client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
+++ b/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
@@ -121,8 +121,6 @@
<ClientDataContext id='dataContext' initializer='ObserveSwingApplicationContext.get().getDataContext()'/>
- <CardLayout2 id='contentLayout'/>
-
<CardLayout2Ext id='bodyLayout' constructorParams='this, "body"'/>
<ObserveBlockingLayerUI id='busyBlockLayerUI'/>
@@ -260,8 +258,8 @@ protected void finalize() throws Throwable {
<!-- right up : content -->
- <JPanel id="content">
- <JPanel id="emptySelection" constraints='"emptySelection"' layout="{new BorderLayout()}">
+ <JPanel id="content" layout="{new BorderLayout()}">
+ <JPanel id="emptySelection" layout="{new BorderLayout()}" constraints="BorderLayout.CENTER">
<JLabel id="emptySelectionLabel" constraints="BorderLayout.CENTER"/>
</JPanel>
</JPanel>
=====================================
client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jcss
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jcss
+++ b/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jcss
@@ -328,10 +328,6 @@ JSplitPane {
resizeWeight: 0.80;
}
-#contentLayout {
- useOnlyVisibleComponentDimension: true;
-}
-
#navigationView {
title: "observe.view.navigation";
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
@@ -62,7 +62,6 @@ import javax.swing.border.Border;
import javax.swing.border.LineBorder;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.tree.TreePath;
-import java.awt.Component;
import java.awt.Container;
import java.awt.Cursor;
import java.awt.event.KeyEvent;
@@ -88,8 +87,6 @@ public class ObserveMainUIInitializer {
/** Logger */
private static final Log log = LogFactory.getLog(ObserveMainUIInitializer.class);
- private static final String EMPTY_SELECTION = "emptySelection";
-
private final ObserveMainUI ui;
private Border focusBorder;
private Border noFocusBorder;
@@ -183,25 +180,15 @@ public class ObserveMainUIInitializer {
}
if (ui.getNavigationUI().getTree().isSelectionEmpty()) {
log.debug("No selection, show empty panel...");
-
- boolean foundEmptySelection = false;
- for (Component component : ui.getContent().getComponents()) {
- if (component.getName().equals(EMPTY_SELECTION)) {
- foundEmptySelection = true;
- }
- }
- if (!foundEmptySelection) {
- ui.getContent().add(ui.getEmptySelection(), EMPTY_SELECTION);
- }
- ui.getContentLayout().show(ui.getContent(), EMPTY_SELECTION);
+ ui.getContentUIManager().removeSelectedContentUI();
return;
}
TreePath path = event.getPath();
NavigationTreeNodeSupport node = (NavigationTreeNodeSupport) path.getLastPathComponent();
- ContentUIManager manager = ui.getContentUIManager();
// obtain the ui type to show
+ @SuppressWarnings("unchecked")
Class<? extends ContentUI<?, ?>> uiClass = node.getContentClass();
if (log.isDebugEnabled()) {
log.debug("new selected path = " + node + ", ui = " + uiClass);
@@ -525,7 +512,7 @@ public class ObserveMainUIInitializer {
public void cleanNavigationUI(ProgressModel progressModel) {
// reset content uis
- ui.getContentLayout().reset(ui.getContent());
+ ui.getContentUIManager().removeSelectedContentUI();
progressModel.incrementsCurrentStep();
// clean messages
=====================================
client/src/main/java/fr/ird/observe/client/ui/content/ContentUIManager.java
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/content/ContentUIManager.java
+++ b/client/src/main/java/fr/ird/observe/client/ui/content/ContentUIManager.java
@@ -6,15 +6,15 @@
* %%
* 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
+ * 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
+ *
+ * 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%
@@ -26,14 +26,15 @@ import fr.ird.observe.client.ObserveSwingSessionHelper;
import fr.ird.observe.client.ui.ObserveMainUI;
import fr.ird.observe.client.ui.util.UIHelper;
import fr.ird.observe.dto.AbstractObserveDto;
-import java.awt.Component;
-import java.lang.reflect.Constructor;
-import javax.swing.JPanel;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.jaxx.runtime.JAXXContext;
import org.nuiton.jaxx.runtime.context.JAXXInitialContext;
-import org.nuiton.jaxx.runtime.swing.CardLayout2;
+
+import javax.swing.JPanel;
+import java.awt.BorderLayout;
+import java.awt.Component;
+import java.lang.reflect.Constructor;
/**
* Manager des ecrans d'editions
@@ -46,30 +47,21 @@ public class ContentUIManager {
/** Logger */
private static final Log log = LogFactory.getLog(ContentUIManager.class);
- public <U extends ContentUI<?, ?>> U getContent(Class<U> uiClass) {
-
- CardLayout2 layout = getLayout();
+ public <U extends ContentUI<?, ?>> U getContent() {
JPanel layoutContent = getLayoutContent();
- String constraints = uiClass.getName();
-
- if (!layout.contains(constraints)) {
-
- // pas trouvé
+ Component currentContent = layoutContent.getComponent(0);
+ if (!(currentContent instanceof ContentUI)) {
return null;
}
-
- @SuppressWarnings("unchecked") U content = (U) layout.getComponent(layoutContent, constraints);
-
+ @SuppressWarnings("unchecked") U content = (U) currentContent;
if (log.isDebugEnabled()) {
- log.debug("Will use existing content [" + constraints + "] : " + content.getClass().getName());
+ log.debug(String.format("Will use existing content: %s", content.getClass().getName()));
}
return content;
}
public <U extends ContentUI<?, ?>> U createContent(Class<U> uiClass) {
- String constraints = uiClass.getName();
-
U result;
try {
Constructor<U> constructor = uiClass.getConstructor(JAXXContext.class);
@@ -84,9 +76,10 @@ public class ContentUIManager {
try {
// ajout du content dans son parent
- getLayoutContent().add(result, constraints);
+ getLayoutContent().removeAll();
+ getLayoutContent().add(result, BorderLayout.CENTER);
if (log.isDebugEnabled()) {
- log.debug("Add new content [" + constraints + "] : " + result.getClass().getName());
+ log.debug(String.format("Add new content: %s", result.getClass().getName()));
}
getMainUI().getModel().attachFocusOnBody(result);
@@ -117,8 +110,8 @@ public class ContentUIManager {
} catch (Exception e) {
UIHelper.handlingError(e);
} finally {
-
- getLayout().show(getLayoutContent(), constraints);
+ getLayoutContent().removeAll();
+ getLayoutContent().add(content, BorderLayout.CENTER);
getMainUI().getHandler().updateContentSize();
content.opened();
@@ -127,7 +120,8 @@ public class ContentUIManager {
}
public void close() {
- getLayout().reset(getLayoutContent());
+ getLayoutContent().removeAll();
+ getLayoutContent().add(getMainUI().getEmptySelection(), BorderLayout.CENTER);
}
public ContentUI<?, ?> getSelectedContentUI() {
@@ -162,13 +156,12 @@ public class ContentUIManager {
}
public void removeSelectedContentUI() {
-
ContentUI<?, ?> selectedContentUI = getSelectedContentUI();
if (selectedContentUI != null) {
- getLayout().removeLayoutComponent(selectedContentUI, selectedContentUI.getClass().getName());
- getLayoutContent().remove(selectedContentUI);
+ getLayoutContent().removeAll();
selectedContentUI.destroy();
}
+ getLayoutContent().add(getMainUI().getEmptySelection(), BorderLayout.CENTER);
}
public void restartEdit() {
@@ -211,25 +204,22 @@ public class ContentUIManager {
return getMainUI().getContent();
}
- private CardLayout2 getLayout() {
- return getMainUI().getContentLayout();
- }
+// private CardLayout2 getLayout() {
+// return getMainUI().getContentLayout();
+// }
private ObserveMainUI getMainUI() {
return ObserveSwingApplicationContext.get().getMainUI();
}
private ContentUI<?, ?> getSelectedContentUI(ObserveMainUI ui) {
-
if (ui == null) {
// no ui, so no modification
return null;
}
-
ContentUI<?, ?> result = null;
- CardLayout2 layout = ui.getContentLayout();
JPanel container = ui.getContent();
- Component currentContent = layout.getVisibleComponent(container);
+ Component currentContent = container.getComponent(0);
if (currentContent instanceof ContentUI<?, ?>) {
result = (ContentUI<?, ?>) currentContent;
}
=====================================
client/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationUI.jcss
=====================================
--- a/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationUI.jcss
+++ b/client/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationUI.jcss
@@ -65,3 +65,7 @@ JButton {
actionIcon:generate;
toolTipText:"observe.tree.action.configure.tip";
}
+
+#tree {
+ font-size:11;
+}
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/16a4627037064e9c1ccf18263cd…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/commit/16a4627037064e9c1ccf18263cd…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 8 commits: Amélioration de l'arbre de navigation
by Tony CHEMIT 07 Apr '18
by Tony CHEMIT 07 Apr '18
07 Apr '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
b639f36a by Tony CHEMIT at 2018-04-07T13:15:51Z
Amélioration de l'arbre de navigation
- - - - -
16c878bd by Tony CHEMIT at 2018-04-07T13:15:52Z
Correction d'un appel a UIHelper.askUser
- - - - -
d8f72cb6 by Tony CHEMIT at 2018-04-07T13:15:52Z
Fix some navigation issues (scrollpane does not work, on select node is not expand) + review navigation ui design
- - - - -
e4d6751c by Tony CHEMIT at 2018-04-07T13:15:52Z
fix update node in navigation on save, create or delete
- - - - -
1530b729 by Tony CHEMIT at 2018-04-07T13:15:52Z
Fix widget decorator labels
- - - - -
15d183ff by Tony CHEMIT at 2018-04-07T13:15:52Z
Make change focus action works again
- - - - -
1eabc6c6 by Tony CHEMIT at 2018-04-07T13:36:01Z
fix message view minimum size
- - - - -
b2cb695a by Tony CHEMIT at 2018-04-07T14:33:19Z
Improve focus manager on some LL screens
- - - - -
30 changed files:
- client-configuration/pom.xml
- client-configuration/src/main/config/Client.ini
- client-configuration/src/main/java/fr/ird/observe/client/configuration/ClientConfig.java
- + client-configuration/src/main/java/fr/ird/observe/client/configuration/NavigationTreeConfig.java
- + client-configuration/src/main/java/fr/ird/observe/client/configuration/NavigationTreeConfigBean.java
- client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties
- client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties
- client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties
- client/pom.xml
- client/src/main/java/fr/ird/observe/client/ui/ObserveKeyStrokes.java
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIHandler.java
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/CloseAndCreateUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/CloseOpenUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/GoDownUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/GoUpUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveActivityLonglinesUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveActivitySeinesUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveMultipleDataUIActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveRoutesUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveSingleDataUIActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveTripUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveTripsUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/ReOpenUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/ResetEditUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/SelectNodeUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/global/ChangeFocusGlobalUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/GotoActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/storage/ReloadStorageAction.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/def898c3ae09d8031c28a6f5c6…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/def898c3ae09d8031c28a6f5c6…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 6 commits: Amélioration de l'arbre de navigation
by Tony CHEMIT 07 Apr '18
by Tony CHEMIT 07 Apr '18
07 Apr '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
c4336df8 by Tony CHEMIT at 2018-04-07T13:09:44Z
Amélioration de l'arbre de navigation
- - - - -
5012bf7d by Tony CHEMIT at 2018-04-07T13:09:46Z
Correction d'un appel a UIHelper.askUser
- - - - -
816b8b32 by Tony CHEMIT at 2018-04-07T13:09:46Z
Fix some navigation issues (scrollpane does not work, on select node is not expand) + review navigation ui design
- - - - -
bbcc8e2a by Tony CHEMIT at 2018-04-07T13:09:46Z
fix update node in navigation on save, create or delete
- - - - -
00f8b8ca by Tony CHEMIT at 2018-04-07T13:09:46Z
Fix widget decorator labels
- - - - -
def898c3 by Tony CHEMIT at 2018-04-07T13:09:46Z
Make change focus action works again
- - - - -
30 changed files:
- client-configuration/pom.xml
- client-configuration/src/main/config/Client.ini
- client-configuration/src/main/java/fr/ird/observe/client/configuration/ClientConfig.java
- + client-configuration/src/main/java/fr/ird/observe/client/configuration/NavigationTreeConfig.java
- + client-configuration/src/main/java/fr/ird/observe/client/configuration/NavigationTreeConfigBean.java
- client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties
- client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties
- client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties
- client/pom.xml
- client/src/main/java/fr/ird/observe/client/ui/ObserveKeyStrokes.java
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/CloseAndCreateUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/CloseOpenUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/GoDownUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/GoUpUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveActivityLonglinesUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveActivitySeinesUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveMultipleDataUIActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveRoutesUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveSingleDataUIActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveTripUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveTripsUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/ReOpenUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/ResetEditUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/SelectNodeUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/global/ChangeFocusGlobalUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/GotoActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/storage/ReloadStorageAction.java
- client/src/main/java/fr/ird/observe/client/ui/admin/synchronize/data/DataSynchroModel.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/a00981f71bf68b3909e2ca228e…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/a00981f71bf68b3909e2ca228e…
You're receiving this email because of your account on gitlab.com.
1
0
[Git][ultreiaio/ird-observe][develop] 6 commits: Amélioration de l'arbre de navigation
by Tony CHEMIT 07 Apr '18
by Tony CHEMIT 07 Apr '18
07 Apr '18
Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
052918b5 by Tony CHEMIT at 2018-04-07T12:56:10Z
Amélioration de l'arbre de navigation
- - - - -
4b67f6bf by Tony CHEMIT at 2018-04-07T12:56:11Z
Correction d'un appel a UIHelper.askUser
- - - - -
368ee054 by Tony CHEMIT at 2018-04-07T12:56:11Z
Fix some navigation issues (scrollpane does not work, on select node is not expand) + review navigation ui design
- - - - -
e190467e by Tony CHEMIT at 2018-04-07T12:56:12Z
fix update node in navigation on save, create or delete
- - - - -
6ca9e346 by Tony CHEMIT at 2018-04-07T12:56:12Z
Fix widget decorator labels
- - - - -
a00981f7 by Tony CHEMIT at 2018-04-07T12:56:12Z
Make change focus action works again
- - - - -
30 changed files:
- client-configuration/pom.xml
- client-configuration/src/main/config/Client.ini
- client-configuration/src/main/java/fr/ird/observe/client/configuration/ClientConfig.java
- + client-configuration/src/main/java/fr/ird/observe/client/configuration/NavigationTreeConfig.java
- + client-configuration/src/main/java/fr/ird/observe/client/configuration/NavigationTreeConfigBean.java
- client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties
- client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties
- client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties
- client/pom.xml
- client/src/main/java/fr/ird/observe/client/ui/ObserveKeyStrokes.java
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUI.jaxx
- client/src/main/java/fr/ird/observe/client/ui/ObserveMainUIInitializer.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/CloseAndCreateUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/CloseOpenUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/GoDownUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/GoUpUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveActivityLonglinesUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveActivitySeinesUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveMultipleDataUIActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveRoutesUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveSingleDataUIActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveTripUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/MoveTripsUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/ReOpenUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/ResetEditUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/content/SelectNodeUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/global/ChangeFocusGlobalUIAction.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/navigation/GotoActionSupport.java
- client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/storage/ReloadStorageAction.java
- client/src/main/java/fr/ird/observe/client/ui/admin/synchronize/data/DataSynchroModel.java
The diff was not included because it is too large.
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/8c4e21bd10a0f0d5c155d4f92b…
---
View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/8c4e21bd10a0f0d5c155d4f92b…
You're receiving this email because of your account on gitlab.com.
1
0