Tony CHEMIT pushed to branch develop-7.x at ultreiaio / ird-observe Commits: 19f0cd67 by tchemit at 2019-02-14T17:14:51Z A la ré ouverture de l'UI, l'affichage est partiel - See #1224 - - - - - a1ce16a2 by tchemit at 2019-02-14T17:14:52Z L'asssitant sauvegarde a un comportement étonnant - Closes #1228 - - - - - 072a1983 by tchemit at 2019-02-14T17:14:52Z Ergonomie assistant sauvegarde - Closes #1229 - - - - - ad7f65ec by tchemit at 2019-02-14T17:14:52Z Revert "add missing i18n key" This reverts commit 3ae3e01e - - - - - 8 changed files: - client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalModel.java - client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalUI.jcss - client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/storage/StorageUIModel.java - client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/BackupUI.jcss - client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/BackupUIHandler.java - client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationTreeCellRenderer.java - validation/src/main/i18n/getters/validation-messages.getter Changes: ===================================== client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalModel.java ===================================== @@ -26,6 +26,7 @@ import fr.ird.observe.client.configuration.ClientConfig; import fr.ird.observe.client.ui.admin.AdminActionModel; import fr.ird.observe.client.ui.admin.AdminStep; import fr.ird.observe.client.ui.admin.AdminUIModel; +import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.LogManager; import org.nuiton.jaxx.runtime.swing.wizard.ext.WizardState; @@ -35,6 +36,8 @@ import java.io.File; import java.util.HashSet; import java.util.Set; +import static fr.ird.observe.client.ui.storage.StorageUIModel.SQL_GZ_EXTENSION; + /** * Le modèle d'une opération d'export de données observers. * @@ -45,6 +48,8 @@ public class SaveLocalModel extends AdminActionModel { public static final String BACKUP_FILE_PROPERTY_NAME = "backupFile"; + public static final String BACKUP_FILE_NAME_PROPERTY_NAME = "backupFileName"; + public static final String DO_BACKUP_PROPERTY_NAME = "doBackup"; public static final String CAN_SAVE_LOCAL_PROPERTY_NAME = "canSaveLocal"; @@ -99,11 +104,17 @@ public class SaveLocalModel extends AdminActionModel { return backupFile; } + public String getBackupFileName() { + return StringUtils.removeEnd(backupFile.getName(), SQL_GZ_EXTENSION); + } + public void setBackupFile(File backupFile) { boolean canSave = isCanSaveLocal(); File oldValue = this.backupFile; + String oldBackupFileName = getBackupFileName(); this.backupFile = backupFile; firePropertyChange(BACKUP_FILE_PROPERTY_NAME, oldValue, backupFile); + firePropertyChange(BACKUP_FILE_NAME_PROPERTY_NAME, oldBackupFileName, getBackupFileName()); firePropertyChange(CAN_SAVE_LOCAL_PROPERTY_NAME, canSave, isCanSaveLocal()); } @@ -125,9 +136,11 @@ public class SaveLocalModel extends AdminActionModel { public boolean isCanSaveLocal() { boolean validate = !doBackup || backupFile != null && - !backupFile.exists() && - backupFile.getName().endsWith(".sql.gz") && - backupFile.getParentFile().exists(); + !backupFile.exists() && backupFile.getParentFile().exists() && backupFile.getName().endsWith(SQL_GZ_EXTENSION); + if (validate) { + String filename = getBackupFileName(); + validate = !filename.isEmpty() && !filename.contains("."); + }; if (log.isDebugEnabled()) { log.debug("can save ? " + validate); ===================================== client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalUI.jcss ===================================== @@ -75,7 +75,7 @@ #filenameText { enabled:{stepModel.isDoBackup()}; - text:{stepModel.getBackupFile().getName()}; + text:{stepModel.getBackupFileName()}; } #startAction { ===================================== client-core/src/main/java/fr/ird/observe/client/ui/admin/save/SaveLocalUIHandler.java ===================================== @@ -26,6 +26,7 @@ import fr.ird.observe.client.ui.ObserveKeyStrokes; import fr.ird.observe.client.ui.admin.AdminStep; import fr.ird.observe.client.ui.admin.AdminTabUIHandler; import fr.ird.observe.client.ui.admin.synchronize.referential.legacy.SynchronizeModel; +import fr.ird.observe.client.ui.storage.StorageUIModel; import fr.ird.observe.client.ui.util.UIHelper; import fr.ird.observe.services.service.actions.synchro.referential.legacy.UnidirectionalReferentialSynchronizeContext; import fr.ird.observe.services.service.sql.AddSqlScriptProducerRequest; @@ -106,7 +107,7 @@ public class SaveLocalUIHandler extends AdminTabUIHandler<SaveLocalUI> implement } public void changeFilename(String filename) { - getUi().getStepModel().setBackupFile(new File(getUi().directoryText.getText(), filename)); + getUi().getStepModel().setBackupFile(new File(ui.getDirectoryText().getText(), filename + StorageUIModel.SQL_GZ_EXTENSION)); } public void doStartAction() { ===================================== client-core/src/main/java/fr/ird/observe/client/ui/storage/StorageUIModel.java ===================================== @@ -92,6 +92,7 @@ public class StorageUIModel extends WizardModel<StorageStep> { public static final String CREATION_MODE_PROPERTY_NAME = "creationMode"; public static final String DO_BACKUP_PROPERTY_NAME = "doBackup"; public static final String BACKUP_FILE_PROPERTY_NAME = "backupFile"; + public static final String BACKUP_FILE_NAME_PROPERTY_NAME = "backupFileName"; public static final String DUMP_FILE_PROPERTY_NAME = "dumpFile"; public static final String LOCAL_STORAGE_EXIST_PROPERTY_NAME = "localStorageExist"; public static final String USE_SSL_PROPERTY_NAME = "useSsl"; @@ -117,6 +118,7 @@ public class StorageUIModel extends WizardModel<StorageStep> { private static final String CAN_USE_REMOTE_SERVICE_PROPERTY_NAME = "canUseRemoteService"; private static final String CAN_USE_SERVER_SERVICE_PROPERTY_NAME = "canUseServerService"; private static final char[] EMPTY_PASSWORD = new char[0]; + public static final String SQL_GZ_EXTENSION = ".sql.gz"; // private static final String LOGIN_REFERENTIEL = "referentiel"; private final ProgressModel progressModel = new ProgressModel(); @@ -991,7 +993,11 @@ public class StorageUIModel extends WizardModel<StorageStep> { break; case BACKUP: - validate = !doBackup || backupFile != null && !backupFile.exists() && backupFile.getName().endsWith(".sql.gz"); + validate = !doBackup || backupFile != null && !backupFile.exists() && backupFile.getName().endsWith(SQL_GZ_EXTENSION); + if (validate) { + String filename = getBackupFileName(); + validate = !filename.isEmpty() && !filename.contains("."); + } break; case SELECT_DATA: // chemit 20100525 : aucune contrainte dans ce cas @@ -1149,10 +1155,15 @@ public class StorageUIModel extends WizardModel<StorageStep> { return backupFile; } + public String getBackupFileName() { + return StringUtils.removeEnd(backupFile.getName(),SQL_GZ_EXTENSION); + } public void setBackupFile(File backupFile) { File oldValue = this.backupFile; + String oldBackupFileName = getBackupFileName(); this.backupFile = backupFile; firePropertyChange(BACKUP_FILE_PROPERTY_NAME, oldValue, backupFile); + firePropertyChange(BACKUP_FILE_NAME_PROPERTY_NAME, oldBackupFileName, getBackupFileName()); validate(); } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/BackupUI.jcss ===================================== @@ -50,5 +50,5 @@ #filenameText { enabled:{model.isDoBackup()}; - text:{model.getBackupFile().getName()}; + text:{model.getBackupFileName()}; } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/storage/tabs/BackupUIHandler.java ===================================== @@ -24,7 +24,9 @@ package fr.ird.observe.client.ui.storage.tabs; import fr.ird.observe.client.ui.ObserveKeyStrokes; import fr.ird.observe.client.ui.storage.StorageStep; +import fr.ird.observe.client.ui.storage.StorageUIModel; import fr.ird.observe.client.ui.util.UIHelper; +import org.apache.commons.lang3.StringUtils; import org.nuiton.jaxx.runtime.spi.UIHandler; import javax.swing.AbstractAction; @@ -90,7 +92,7 @@ public class BackupUIHandler extends StorageTabUIHandler<BackupUI> implements UI } public void changeFilename(String filename) { - ui.getModel().setBackupFile(new File(ui.getDirectoryText().getText(), filename)); + ui.getModel().setBackupFile(new File(ui.getDirectoryText().getText(), filename + StorageUIModel.SQL_GZ_EXTENSION)); } } ===================================== client-core/src/main/java/fr/ird/observe/client/ui/tree/navigation/NavigationTreeCellRenderer.java ===================================== @@ -33,6 +33,7 @@ import javax.swing.JTree; import javax.swing.tree.DefaultTreeCellRenderer; import java.awt.Color; import java.awt.Component; +import java.awt.Dimension; /** * Created on 14/11/16. @@ -86,6 +87,17 @@ public class NavigationTreeCellRenderer extends DefaultTreeCellRenderer implemen JLabel comp = (JLabel) super.getTreeCellRendererComponent(tree, text, sel, expanded, leaf, row, hasFocus); comp.setToolTipText(text); comp.setIcon(icon); + Dimension size = comp.getPreferredSize(); + double height = size.getHeight(); + if (icon != null) { + int iconHeight = icon.getIconHeight(); + if (height > 2 * iconHeight) { + log.error(String.format("Size is amazing: %s for node: %s", size, text)); + Dimension newSize = new Dimension((int) size.getWidth(), iconHeight + 2); + comp.setSize(newSize); + comp.setPreferredSize(newSize); + } + } return comp; } ===================================== validation/src/main/i18n/getters/validation-messages.getter ===================================== @@ -5,6 +5,7 @@ observe.validation.catchLongline.required.count.when.acquisitionModeIsGrouped observe.validation.catchLongline.required.position observe.validation.field.mandatory observe.validation.floatingObject.invalid.parts +observe.validation.floatingObject.required.comment.for.balise1 observe.validation.floatingObject.required.comment.for.balise2 observe.validation.floatingObject.size.supportVesselName observe.validation.lengthFormula.endDate.before.startDate View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/1ec2311fdd4b78e7e0190b83093... -- View it on GitLab: https://gitlab.com/ultreiaio/ird-observe/compare/1ec2311fdd4b78e7e0190b83093... You're receiving this email because of your account on gitlab.com.