Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe Commits: 319fe39c by Tony CHEMIT at 2018-06-17T12:07:57Z Fix data widget binding - - - - - fcbf32da by Tony CHEMIT at 2018-06-17T12:08:18Z [PS] Formulaire DCP / matériaux / Couleur de surbrillance - Closes #969 - - - - - 7 changed files: - client-configuration/src/main/config/Client.ini - 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/src/main/java/fr/ird/observe/client/ui/actions/main/menu/config/ShowConfigAction.java - client/src/main/java/fr/ird/observe/client/ui/content/ContentUIInitializer.java - client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIHandler.java Changes: ===================================== client-configuration/src/main/config/Client.ini ===================================== --- a/client-configuration/src/main/config/Client.ini +++ b/client-configuration/src/main/config/Client.ini @@ -524,6 +524,13 @@ key = ui.noFocusBorderColor.color type = java.awt.Color defaultValue = "java.awt.Color[r=192,g=192,b=192]" + +[option floatingObjectMaterialErrorColor] +description = observe.config.ui.dcp.error.color +key = ui.dcp.error.color +type = color +defaultValue = java.awt.Color[r=255,g=100,b=100] + [option showMnemonic] description = observe.config.ui.showMnemonic key = ui.showMnemonic ===================================== client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties ===================================== --- a/client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties +++ b/client-configuration/src/main/resources/i18n/client-configuration_en_GB.properties @@ -78,6 +78,7 @@ observe.config.swingSessionFile.description=Swing session file. observe.config.temperature.format=Default temperature format observe.config.ui.autoPopupNumberEditor=Flag sets to true when number editor show automaticly popup observe.config.ui.changeSynchroSrc=Flag sets to true if you can change local source in admin tasks +observe.config.ui.dcp.error.color=Color to notify errors while validating floating object materials. observe.config.ui.focusBorderColor=Color of the focus container border observe.config.ui.fullscreen=Flag sets to true to lauch application in full screen mode observe.config.ui.loadLocalStorage=Flag sets to true to load local data source when application starts ===================================== client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties ===================================== --- a/client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties +++ b/client-configuration/src/main/resources/i18n/client-configuration_es_ES.properties @@ -78,6 +78,7 @@ observe.config.swingSessionFile.description=Fichier de sauvegarde des états des observe.config.temperature.format=Default temperature format \#TODO observe.config.ui.autoPopupNumberEditor=Para mostrar automáticamente el editor numérico durante la edición de un número observe.config.ui.changeSynchroSrc=Pour autoriser la sélection de la base source dans les opérations sur base +observe.config.ui.dcp.error.color=Color to notify errors while validating floating object materials. \#TODO observe.config.ui.focusBorderColor=Couleur de la bordure de la zone qui a le focus \#TODO observe.config.ui.fullscreen=Para mostrar en modo pantalla completa la aplicación observe.config.ui.loadLocalStorage=Cambiar la base local al iniciar la aplicación ===================================== client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties ===================================== --- a/client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties +++ b/client-configuration/src/main/resources/i18n/client-configuration_fr_FR.properties @@ -78,6 +78,7 @@ observe.config.swingSessionFile.description=Fichier de sauvegarde des états des observe.config.temperature.format=Unité de température observe.config.ui.autoPopupNumberEditor=Pour afficher automatiquement l'éditeur numérique lors de l'édition d'un nombre observe.config.ui.changeSynchroSrc=Pour autoriser la sélection de la base source dans les opérations sur base +observe.config.ui.dcp.error.color=Couleur pour notifier les erreurs sur la composition des dcps observe.config.ui.focusBorderColor=Couleur de la bordure de la zone qui a le focus observe.config.ui.fullscreen=Pour afficher l'application en mode pleine écran observe.config.ui.loadLocalStorage=Charger la base locale au démarrage de l'application ===================================== client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/config/ShowConfigAction.java ===================================== --- a/client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/config/ShowConfigAction.java +++ b/client/src/main/java/fr/ird/observe/client/ui/actions/main/menu/config/ShowConfigAction.java @@ -206,6 +206,7 @@ public class ShowConfigAction extends MenuActionSupport { helper.addOption(ClientConfigOption.FOCUS_BORDER_COLOR); helper.addOption(ClientConfigOption.NO_FOCUS_BORDER_COLOR); + helper.addOption(ClientConfigOption.FLOATING_OBJECT_MATERIAL_ERROR_COLOR); helper.addOption(ClientConfigOption.DEFAULT_DB_MODE); helper.addOption(ClientConfigOption.DEFAULT_CREATION_MODE); ===================================== client/src/main/java/fr/ird/observe/client/ui/content/ContentUIInitializer.java ===================================== --- a/client/src/main/java/fr/ird/observe/client/ui/content/ContentUIInitializer.java +++ b/client/src/main/java/fr/ird/observe/client/ui/content/ContentUIInitializer.java @@ -693,6 +693,9 @@ public class ContentUIInitializer<E extends IdDto, UI extends ContentUI<E, UI>> picker.addActionListener(e -> { JXDatePicker source = (JXDatePicker) e.getSource(); Date date = source.getDate(); + if (getBean()==null) { + return; + } if (Objects.equals(date, UIHelper.getProperty(getBean(), propertyName))) { // On n'envoie pas la demande, car cela va modifier ensuite le formulaire // car avec oldValue=null et newValue=null, les pcs sont déclanchés... ===================================== client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIHandler.java ===================================== --- a/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIHandler.java +++ b/client/src/main/java/fr/ird/observe/client/ui/content/data/seine/FloatingObjectUIHandler.java @@ -22,7 +22,6 @@ package fr.ird.observe.client.ui.content.data.seine; import com.google.common.collect.ImmutableSet; -import com.google.common.collect.Maps; import fr.ird.observe.client.ObserveSwingApplicationContext; import fr.ird.observe.client.db.ClientDataContext; import fr.ird.observe.client.db.ObserveSwingDataSource; @@ -72,7 +71,6 @@ import javax.swing.event.TableModelListener; import javax.swing.event.TreeModelEvent; import java.awt.Color; import java.util.HashSet; -import java.util.List; import java.util.Map; import java.util.Objects; import java.util.Optional; @@ -430,17 +428,16 @@ public class FloatingObjectUIHandler extends ContentUIHandler<FloatingObjectDto, FloatingObjectPartsTreeNode node = (FloatingObjectPartsTreeNode) component.getPathForRow(row).getLastPathComponent(); boolean valid1 = node.isValid(1); boolean valid2 = node.isValid(2); - boolean valid = valid1 && valid2; switch (adapter.convertRowIndexToModel(adapter.column)) { case 0: - return !valid; + return false; case 1: return !valid1; case 2: return !valid2; } return true; - }, Color.RED, Color.WHITE)); + }, ObserveSwingApplicationContext.get().getConfig().getFloatingObjectMaterialErrorColor(), Color.WHITE)); } protected void computeTabValidState(SwingValidatorMessageTableModel errorTableModel) { View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/fac4d0130ae2a3b5ee16315fe09... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/fac4d0130ae2a3b5ee16315fe09... You're receiving this email because of your account on gitlab.com.