branch feature/7929_editeur_de_zone updated (3be1d33 -> 32a93e0)
This is an automated email from the git hooks/post-receive script. New change to branch feature/7929_editeur_de_zone in repository tutti. See http://git.codelutin.com/tutti.git from 3be1d33 - utilisation directement du modele du protocol - ajout d'une popup de menu pour surrpimer et renommer les zones (refs #7929) new 2beea6e activation ou non des boutons d'ajout et de suppresion des strates (refs #7929) new 32a93e0 desactivation des boutons d'ajout et de suppression des strates à l'ouverture de l'écran (refs #7929) The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit 32a93e00588df1c459a0fbd82814edceccafcd39 Author: Kevin Morin <morin@codelutin.com> Date: Wed Feb 3 11:05:50 2016 +0100 desactivation des boutons d'ajout et de suppression des strates à l'ouverture de l'écran (refs #7929) commit 2beea6ed016caa96d94ef027f6b44d5f6f1b926e Author: Kevin Morin <morin@codelutin.com> Date: Wed Feb 3 10:46:33 2016 +0100 activation ou non des boutons d'ajout et de suppresion des strates (refs #7929) Summary of changes: .../swing/content/protocol/zones/ZoneEditorUI.jcss | 3 -- .../protocol/zones/ZoneEditorUIHandler.java | 58 ++++++++++++++++------ .../protocol/zones/actions/AddStratasAction.java | 5 ++ .../zones/actions/RemoveStratasAction.java | 1 + 4 files changed, 50 insertions(+), 17 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7929_editeur_de_zone in repository tutti. See http://git.codelutin.com/tutti.git commit 2beea6ed016caa96d94ef027f6b44d5f6f1b926e Author: Kevin Morin <morin@codelutin.com> Date: Wed Feb 3 10:46:33 2016 +0100 activation ou non des boutons d'ajout et de suppresion des strates (refs #7929) --- .../swing/content/protocol/zones/ZoneEditorUI.jcss | 5 +- .../protocol/zones/ZoneEditorUIHandler.java | 56 ++++++++++++++++------ .../protocol/zones/actions/AddStratasAction.java | 4 ++ 3 files changed, 48 insertions(+), 17 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUI.jcss b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUI.jcss index 6a83608..115da48 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUI.jcss +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUI.jcss @@ -34,7 +34,6 @@ JToolBar { _help: {"tutti.zoneEditor.action.rename.help"}; } - #expandZonesTree { actionIcon: expand; _simpleAction: {fr.ifremer.tutti.ui.swing.content.protocol.zones.actions.ExpandZonesTreeAction.class}; @@ -57,12 +56,12 @@ JToolBar { #addButton { actionIcon: left; - enabled: {zonesTree.getSelectionCount() == 1}; + enabled: false; _simpleAction: {fr.ifremer.tutti.ui.swing.content.protocol.zones.actions.AddStratasAction.class}; } #removeButton { actionIcon: right; - enabled: {zonesTree.getSelectionCount() >= 1}; + enabled: false; _simpleAction: {fr.ifremer.tutti.ui.swing.content.protocol.zones.actions.RemoveStratasAction.class}; } \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUIHandler.java index f541124..239922d 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUIHandler.java @@ -10,7 +10,9 @@ import fr.ifremer.tutti.ui.swing.content.protocol.EditProtocolUIModel; import fr.ifremer.tutti.ui.swing.content.protocol.zones.models.StrataUIModel; import fr.ifremer.tutti.ui.swing.content.protocol.zones.models.SubStrataUIModel; import fr.ifremer.tutti.ui.swing.content.protocol.zones.models.ZoneUIModel; +import fr.ifremer.tutti.ui.swing.content.protocol.zones.tree.StrataNode; import fr.ifremer.tutti.ui.swing.content.protocol.zones.tree.StratasTreeModel; +import fr.ifremer.tutti.ui.swing.content.protocol.zones.tree.SubStrataNode; import fr.ifremer.tutti.ui.swing.content.protocol.zones.tree.ZoneNode; import fr.ifremer.tutti.ui.swing.content.protocol.zones.tree.ZonesTreeModel; import fr.ifremer.tutti.ui.swing.util.AbstractTuttiUIHandler; @@ -24,6 +26,8 @@ import javax.swing.JComponent; import javax.swing.JPopupMenu; import javax.swing.JTree; import javax.swing.SwingUtilities; +import javax.swing.event.TreeSelectionEvent; +import javax.swing.event.TreeSelectionListener; import javax.swing.tree.TreeModel; import javax.swing.tree.TreePath; import java.awt.Point; @@ -179,7 +183,7 @@ public class ZoneEditorUIHandler extends AbstractTuttiUIHandler<EditProtocolUIMo // init trees TreeModel availableStratasTreeModel = new StratasTreeModel(); - JTree availableStratasTree = ui.getAvailableStratasTree(); + final JTree availableStratasTree = ui.getAvailableStratasTree(); availableStratasTree.setModel(availableStratasTreeModel); SwingUtil.addExpandOnClickListener(availableStratasTree); @@ -189,11 +193,44 @@ public class ZoneEditorUIHandler extends AbstractTuttiUIHandler<EditProtocolUIMo SwingUtil.addExpandOnClickListener(zonesTree); zonesTree.addTreeSelectionListener(event -> { - boolean zoneSelected = event.getPath().getLastPathComponent() instanceof ZoneNode; - getUI().getDeleteZoneMenuItem().setEnabled(zoneSelected); - getUI().getRenameZoneMenuItem().setEnabled(zoneSelected); + + TreePath[] selectedPaths = zonesTree.getSelectionPaths(); + boolean allStrataNode = selectedPaths != null; + + if (selectedPaths != null) { + + if (selectedPaths.length == 1) { + boolean zoneSelected = event.getPath().getLastPathComponent() instanceof ZoneNode; + getUI().getDeleteZoneMenuItem().setEnabled(zoneSelected); + getUI().getRenameZoneMenuItem().setEnabled(zoneSelected); + } + + for (TreePath selectedPath : selectedPaths) { + Object lastPathComponent = selectedPath.getLastPathComponent(); + if (!(lastPathComponent instanceof StrataNode + || lastPathComponent instanceof SubStrataNode)) { + allStrataNode = false; + break; + } + } + } + + getUI().getRemoveButton().setEnabled(allStrataNode); + }); + TreeSelectionListener enableAddStrataListener = new TreeSelectionListener() { + + @Override + public void valueChanged(TreeSelectionEvent e) { + getUI().getAddButton().setEnabled(zonesTree.getSelectionCount() == 1 + && zonesTree.getSelectionPath().getLastPathComponent() instanceof ZoneNode + && availableStratasTree.getSelectionCount() >= 1); + } + }; + zonesTree.addTreeSelectionListener(enableAddStrataListener); + availableStratasTree.addTreeSelectionListener(enableAddStrataListener); + // get data initModel(); @@ -236,18 +273,9 @@ public class ZoneEditorUIHandler extends AbstractTuttiUIHandler<EditProtocolUIMo log.debug("At point [" + p + "] found Row " + rowIndex); } - // select row (could empty selection) - if (rowIndex == -1) { - source.clearSelection(); - - } else { - // set selection - source.setSelectionRow(rowIndex); - } - if (rightClick) { - TreePath path = source.getPathForRow(rowIndex); + source.setSelectionRow(rowIndex); // on right click show popup popup.show(source, e.getX(), e.getY()); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/AddStratasAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/AddStratasAction.java index 615562d..4094e4c 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/AddStratasAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/AddStratasAction.java @@ -66,6 +66,10 @@ public class AddStratasAction extends SimpleActionSupport<ZoneEditorUI> { log.info("add subtrata " + subStrata.getLabel()); } subStratasToAdd.add(subStrata); + + } else { + // the root node is selected, add all + stratasToAdd.addAll(zoneEditorUI.getModel().getAvailableStratas()); } } -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch feature/7929_editeur_de_zone in repository tutti. See http://git.codelutin.com/tutti.git commit 32a93e00588df1c459a0fbd82814edceccafcd39 Author: Kevin Morin <morin@codelutin.com> Date: Wed Feb 3 11:05:50 2016 +0100 desactivation des boutons d'ajout et de suppression des strates à l'ouverture de l'écran (refs #7929) --- .../tutti/ui/swing/content/protocol/zones/ZoneEditorUI.jcss | 2 -- .../ui/swing/content/protocol/zones/ZoneEditorUIHandler.java | 12 +++++++----- .../content/protocol/zones/actions/AddStratasAction.java | 1 + .../content/protocol/zones/actions/RemoveStratasAction.java | 1 + 4 files changed, 9 insertions(+), 7 deletions(-) diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUI.jcss b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUI.jcss index 115da48..f4c227e 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUI.jcss +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUI.jcss @@ -56,12 +56,10 @@ JToolBar { #addButton { actionIcon: left; - enabled: false; _simpleAction: {fr.ifremer.tutti.ui.swing.content.protocol.zones.actions.AddStratasAction.class}; } #removeButton { actionIcon: right; - enabled: false; _simpleAction: {fr.ifremer.tutti.ui.swing.content.protocol.zones.actions.RemoveStratasAction.class}; } \ No newline at end of file diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUIHandler.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUIHandler.java index 239922d..e201889 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUIHandler.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/ZoneEditorUIHandler.java @@ -195,7 +195,7 @@ public class ZoneEditorUIHandler extends AbstractTuttiUIHandler<EditProtocolUIMo zonesTree.addTreeSelectionListener(event -> { TreePath[] selectedPaths = zonesTree.getSelectionPaths(); - boolean allStrataNode = selectedPaths != null; + boolean allStrataNode = true; if (selectedPaths != null) { @@ -213,9 +213,10 @@ public class ZoneEditorUIHandler extends AbstractTuttiUIHandler<EditProtocolUIMo break; } } + } - getUI().getRemoveButton().setEnabled(allStrataNode); + getUI().getRemoveButton().setEnabled(selectedPaths != null && allStrataNode); }); @@ -223,9 +224,10 @@ public class ZoneEditorUIHandler extends AbstractTuttiUIHandler<EditProtocolUIMo @Override public void valueChanged(TreeSelectionEvent e) { - getUI().getAddButton().setEnabled(zonesTree.getSelectionCount() == 1 - && zonesTree.getSelectionPath().getLastPathComponent() instanceof ZoneNode - && availableStratasTree.getSelectionCount() >= 1); + boolean addButtonEnabled = zonesTree.getSelectionCount() == 1 + && zonesTree.getSelectionPath().getLastPathComponent() instanceof ZoneNode + && availableStratasTree.getSelectionCount() >= 1; + getUI().getAddButton().setEnabled(addButtonEnabled); } }; zonesTree.addTreeSelectionListener(enableAddStrataListener); diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/AddStratasAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/AddStratasAction.java index 4094e4c..aa0511f 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/AddStratasAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/AddStratasAction.java @@ -30,6 +30,7 @@ public class AddStratasAction extends SimpleActionSupport<ZoneEditorUI> { public AddStratasAction(ZoneEditorUI zoneEditorUI) { super(zoneEditorUI); + setEnabled(false); } @Override diff --git a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/RemoveStratasAction.java b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/RemoveStratasAction.java index 07448a2..93a8cdf 100644 --- a/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/RemoveStratasAction.java +++ b/tutti-ui-swing/src/main/java/fr/ifremer/tutti/ui/swing/content/protocol/zones/actions/RemoveStratasAction.java @@ -29,6 +29,7 @@ public class RemoveStratasAction extends SimpleActionSupport<ZoneEditorUI> { public RemoveStratasAction(ZoneEditorUI zoneEditorUI) { super(zoneEditorUI); + setEnabled(false); } @Override -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm