Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe Commits: 9c8ca5a9 by Tony Chemit at 2020-12-31T10:26:13+01:00 Meilleure disposition pour l'onglet carte - closes #1721 Plus nettoyage code sur TripUIModel (suppression états inutiles). Debut de correction de #1654 - - - - - 9 changed files: - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIHandler.java - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/mode/ChangeMode.java - client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/TripUIHelper.java - client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/common/TripUIHandler.java - client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/common/TripUIModel.java - client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/common/TripUI.jcss - client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/common/TripUIHandler.java - client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/common/TripUIModel.java - models/dto/src/main/java/fr/ird/observe/dto/data/ps/common/TripDto.java Changes: ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/ContentUIHandler.java ===================================== @@ -319,6 +319,7 @@ public abstract class ContentUIHandler<U extends ContentUI> implements ObserveSe public final void fixFormSize() { // we want to see the hole form on screen ui.setMinimumSize(ui.getPreferredSize()); + getDataSourceEditor().updateContentSize(); } /** ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/actions/mode/ChangeMode.java ===================================== @@ -46,7 +46,6 @@ import org.apache.logging.log4j.Logger; import javax.swing.Icon; import javax.swing.JComponent; import javax.swing.KeyStroke; -import javax.swing.SwingUtilities; import javax.swing.tree.TreeNode; import java.awt.event.ActionEvent; import java.util.Objects; @@ -253,15 +252,12 @@ public class ChangeMode<U extends ContentUI> extends ContentUIActionSupport<U> { public void rebuildEditableZone(U ui) { ui.getHandler().getDataSourceEditor().getMessageView().setVisible(true); - SwingUtilities.invokeLater(ui.getHandler()::fixFormSize); - getDataSourceEditor().updateContentSize(); + ui.getHandler().fixFormSize(); } protected void rebuildNotEditableZone(U ui) { ui.getHandler().getDataSourceEditor().getMessageView().setVisible(false); ui.getHandler().fixFormSize(); - getDataSourceEditor().updateContentSize(); - SwingUtilities.invokeLater(ui.getHandler()::fixFormSize); } protected void rebuildFocus(U ui, ContentMode mode) { ===================================== client/datasource/editor/api/src/main/java/fr/ird/observe/client/datasource/editor/api/content/data/TripUIHelper.java ===================================== @@ -116,6 +116,7 @@ public class TripUIHelper<D extends DataDto, U extends ContentOpenableUI<D, U> & TripMapUI tripMap1 = ui.getTripMap(); if (selectedComponent.getSelectedComponent().equals(tripMap1)) { ui.getActions().setVisible(false); + ui.getHandler().getDataSourceEditor().getMessageView().setVisible(false); if (ui.isBuildMap()) { try { buildTripMap(); @@ -125,6 +126,9 @@ public class TripUIHelper<D extends DataDto, U extends ContentOpenableUI<D, U> & } } else { ui.getActions().setVisible(true); + ui.getHandler().getDataSourceEditor().getMessageView().setVisible(true); + ui.getHandler().fixFormSize(); + } } ===================================== client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/common/TripUIHandler.java ===================================== @@ -37,6 +37,7 @@ import java.util.Objects; import static io.ultreia.java4all.i18n.I18n.t; /** + * FIXME:Focus tab0 ui.getTripType(), tab1 ui.getTripMap().getZoomIt() * Created on 8/27/14. * * @author Tony Chemit - dev@tchemit.fr @@ -74,38 +75,6 @@ class TripUIHandler extends GeneratedTripUIHandler { .install(ui.getSave()); } - // @Override -// protected ContentOpenableUILayoutFocusTraversalPolicy<TripUI> createFocusTraversalPolicy() { -// return new ContentOpenableUILayoutFocusTraversalPolicy<TripUI>() { -// -//// @Override -//// protected Component getFirstComponentForEdit(Container aContainer) { -//// TripUI ui = getUi(); -//// switch (ui.getMainTabbedPane().getSelectedIndex()) { -//// case 0: -//// return ui.getTripType(); -//// case 1: -//// return ui.getTripMap().getZoomIt(); -//// } -//// return ui.getTripType(); -//// } -// -// @Override -// protected Component getLastComponentForEdit(Container aContainer) { -// TripUI ui = getUi(); -// switch (ui.getMainTabbedPane().getSelectedIndex()) { -// case 0: -// return ui.getToggleConfigure(); -// case 1: -// return ui.getTripMap().getExportPng(); -// } -// //TODO-Focus -// return null; -// } -// -// }; -// } - @Override public void onOpenForm(Form<?> form) { tripUIHelper.onOpenModel(getModel().getStates().getSelectedId()); ===================================== client/datasource/editor/ll/src/main/java/fr/ird/observe/client/datasource/editor/ll/data/common/TripUIModel.java ===================================== @@ -31,8 +31,6 @@ import fr.ird.observe.dto.data.ll.common.TripDto; import fr.ird.observe.dto.form.Form; import fr.ird.observe.services.ObserveServicesProvider; import io.ultreia.java4all.bean.spi.GenerateJavaBeanDefinition; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; import java.beans.PropertyChangeListener; import java.beans.PropertyVetoException; @@ -47,8 +45,6 @@ import java.beans.PropertyVetoException; @GenerateJavaBeanDefinition public class TripUIModel extends GeneratedTripUIModel { - private static final Logger log = LogManager.getLogger(TripUIModel.class); - public TripUIModel(TripUINavigationNode source) { super(source); } ===================================== client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/common/TripUI.jcss ===================================== @@ -21,7 +21,7 @@ */ #ocean { - enabled:{!states.isUpdatingMode() || model.isRouteEmpty()}; + enabled:{!states.isUpdatingMode() || bean.isRouteEmpty()}; } #formsUrl { ===================================== client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/common/TripUIHandler.java ===================================== @@ -21,20 +21,13 @@ */ package fr.ird.observe.client.datasource.editor.ps.data.common; -import fr.ird.observe.client.datasource.editor.api.content.actions.create.CreateNewOpenableUI; import fr.ird.observe.client.datasource.editor.api.content.data.TripUIHelper; -import fr.ird.observe.client.datasource.editor.api.content.data.open.ContentOpenableUIModelStates; -import fr.ird.observe.client.datasource.editor.ps.data.PsTripActionHelper; -import fr.ird.observe.client.datasource.editor.ps.data.observation.ActivityListUINavigationNode; import fr.ird.observe.dto.data.ps.common.TripDto; -import fr.ird.observe.dto.data.ps.observation.ActivityDto; import fr.ird.observe.dto.form.Form; -import javax.swing.JMenuItem; - -import static fr.ird.observe.client.datasource.editor.api.content.actions.InsertMenuAction.PROPERTY_NAME_UPDATING_MODE_AND_NOT_MODIFIED; - /** + * FIXME:Focus tab0 ui.getCaptain(), tab1 ui.getTripMap().getZoomIt() + * * @author Tony Chemit - dev@tchemit.fr * @since 1.0 */ @@ -53,59 +46,6 @@ class TripUIHandler extends GeneratedTripUIHandler { ui.getLandingHarbour().getIndexes().setSelectedButton(1); } - @Override - protected void installCreateNewAction() { - super.installCreateNewAction(); - JMenuItem editor = CreateNewOpenableUI.installAction(ui, - ActivityListUINavigationNode.class, - n -> ((TripUINavigationNode) n).getRouteListUINavigationNode().getRouteUINavigationNode(ui.getModel().getClientUIContext().getObserveEditModel().getPs().getObservationRoute().getId()).getActivityListUINavigationNode(), - PsTripActionHelper.createNewObservationActionPredicate(ui, ActivityDto.class)); - ui.getModel().addPropertyChangeListener("routeOpen", evt -> { - if (!evt.getPropertyName().equals("routeOpen") || !evt.getPropertyName().equals(PROPERTY_NAME_UPDATING_MODE_AND_NOT_MODIFIED)) { - return; - } - TripUIModel source = (TripUIModel) evt.getSource(); - editor.setEnabled(source.isRouteOpen() && source.getStates().isUpdatingMode() && !source.getStates().isModified()); - }); - - ui.getModel().getStates().addPropertyChangeListener(PROPERTY_NAME_UPDATING_MODE_AND_NOT_MODIFIED, evt -> { - ContentOpenableUIModelStates<?> source = (ContentOpenableUIModelStates<?>) evt.getSource(); - editor.setEnabled(getModel().isRouteOpen() && source.isUpdatingMode() && !source.isModified()); - }); - } - -// @Override -// protected ContentOpenableUILayoutFocusTraversalPolicy<TripUI> createFocusTraversalPolicy() { -// return new ContentOpenableUILayoutFocusTraversalPolicy<TripUI>() { -// -//// @Override -//// protected Component getFirstComponentForEdit(Container aContainer) { -//// switch (ui.getMainTabbedPane().getSelectedIndex()) { -//// case 0: -//// return ui.getCaptain(); -//// case 1: -//// return ui.getTripMap().getZoomIt(); -//// } -//// return null; -//// } -// -// @Override -// protected Component getLastComponentForEdit(Container aContainer) { -// TripUI ui = getUi(); -// if (!ui.getCreate().isEnabled()) { -// return ui.getDelete(); -// } -// return ui.getCreate(); -// } -// }; -// } - -// @Override -// protected Form<TripDto> onOpenForm() { -// tripUIHelper.onOpenModel(getModel().getStates().getSelectedId()); -// return super.onOpenForm(); -// } - @Override public void onOpenForm(Form<?> form) { tripUIHelper.onOpenModel(getModel().getStates().getSelectedId()); @@ -117,18 +57,5 @@ class TripUIHandler extends GeneratedTripUIHandler { super.onOpenAfterOpenModel(); tripUIHelper.onOpenAfterOpenModel(); } - -// @Override -// public void startEditUI() { -// super.startEditUI(); -// ui.getOcean().setEnabled(getModel().getStates().getBean().getRouteSize() == 0); -// ui.getAddActivity().setEnabled(ui.getAddRoute().isEnabled() && ui.getModel().getClientUIContext().getObserveEditModel().getPs().getObservationRoute().isEnabled()); -// } - -// @Override -// public void stopEditUI() { -// super.stopEditUI(); -// ui.getAddActivity().setEnabled(false); -// } } ===================================== client/datasource/editor/ps/src/main/java/fr/ird/observe/client/datasource/editor/ps/data/common/TripUIModel.java ===================================== @@ -29,8 +29,6 @@ import fr.ird.observe.dto.data.ps.common.TripDto; import fr.ird.observe.dto.form.Form; import fr.ird.observe.services.ObserveServicesProvider; import io.ultreia.java4all.bean.spi.GenerateJavaBeanDefinition; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; import org.nuiton.util.DateUtil; import java.util.Date; @@ -44,12 +42,6 @@ import java.util.Date; @GenerateJavaBeanDefinition public class TripUIModel extends GeneratedTripUIModel { - public static final String PROPERTY_ROUTE_OPEN = "routeOpen"; - public static final String PROPERTY_ROUTE_EMPTY = "routeEmpty"; - private static final Logger log = LogManager.getLogger(TripUIModel.class); - private boolean routeOpen; - private boolean routeEmpty; - public TripUIModel(TripUINavigationNode source) { super(source); } @@ -62,28 +54,6 @@ public class TripUIModel extends GeneratedTripUIModel { referenceCache.addReferentialFilter(TripDto.PROPERTY_VESSEL, ReferencesFilterHelper.newSubVesselList(clientConfig.getVesselTypeSeineCommonTripId())); } - public boolean isRouteOpen() { - return routeOpen; - } - - public void setRouteOpen(boolean routeOpen) { - this.routeOpen = routeOpen; - firePropertyChange(PROPERTY_ROUTE_OPEN, routeOpen); - } - - public boolean isRouteEmpty() { - return routeEmpty; - } - - public void setRouteEmpty(boolean routeEmpty) { - this.routeEmpty = routeEmpty; - firePropertyChange(PROPERTY_ROUTE_EMPTY, routeEmpty); - } - - // FIXME in context -// public String getText(TripUINavigationNode node) { -// return super.getText(node) + (node.isPersisted() ? String.format(" (%d)", node.getData().getRouteSize()) : ""); -// } @Override public void openForm(Form<TripDto> form) { super.openForm(form); @@ -91,23 +61,16 @@ public class TripUIModel extends GeneratedTripUIModel { if (getStates().isUpdatingMode() && getStates().getBean().getEndDate() == null) { Date date = DateUtil.getEndOfDay(new Date()); getStates().getBean().setEndDate(date); - log.debug(getPrefix() + "date fin " + date); } - setRouteOpen(getClientUIContext().getObserveEditModel().getPs().getObservationRoute().isEnabled()); - setRouteEmpty(getStates().getBean().isRouteEmpty()); } @Override public TripDto getBeanToSave() { TripDto bean = super.getBeanToSave(); - // on force toujours la date a etre sans heure, minute,... + // on force toujours la date a être sans heure, minute,... Date startDate = DateUtil.getDay(bean.getStartDate()); - log.debug("startDate = " + startDate); bean.setStartDate(startDate); - - Date endDate = bean.getEndDate(); - log.debug("endDate = " + endDate); return bean; } } ===================================== models/dto/src/main/java/fr/ird/observe/dto/data/ps/common/TripDto.java ===================================== @@ -27,6 +27,7 @@ import io.ultreia.java4all.bean.spi.GenerateJavaBeanDefinition; import org.nuiton.util.DateUtil; import java.util.Date; +import java.util.LinkedHashSet; import java.util.Objects; import java.util.Optional; @@ -41,11 +42,19 @@ public class TripDto extends GeneratedTripDto { Optional<RouteStubDto> optional = getRoute().stream() .filter(r -> Objects.equals(r.getDate(), date) && !Objects.equals(r.getId(), routeId)) .findFirst(); - return !optional.isPresent(); + return optional.isEmpty(); } @Override public void setStartDate(Date startDate) { super.setStartDate(startDate == null ? null : DateUtil.getDay(startDate)); } + + @Override + public void setRoute(LinkedHashSet<RouteStubDto> route) { + boolean oldValue = isRouteEmpty(); + super.setRoute(route); + //FIXME:Dto should be generated by dto template + firePropertyChange("routeEmpty",oldValue, isRouteEmpty()); + } } View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/9c8ca5a91d9d3d5cffb90df4cb... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/-/commit/9c8ca5a91d9d3d5cffb90df4cb... You're receiving this email because of your account on gitlab.com.