From 248d15d960e19dcddaa610f201cfec1248615b21 Mon Sep 17 00:00:00 2001 From: Patrick Plitzner Date: Tue, 27 Mar 2018 15:49:42 +0200 Subject: [PATCH] ref #7095 Add remove description button --- .../workingSet/matrix/CharacterMatrix.java | 27 ++++++++++++++++--- .../taxeditor/model/ImageResources.java | 6 +++++ 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/workingSet/matrix/CharacterMatrix.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/workingSet/matrix/CharacterMatrix.java index 0f4064c18..18cb1fdcc 100644 --- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/workingSet/matrix/CharacterMatrix.java +++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/workingSet/matrix/CharacterMatrix.java @@ -196,6 +196,8 @@ public class CharacterMatrix extends Composite { private ConfigRegistry configRegistry; + private DefaultBodyLayerStack bodyLayer; + public CharacterMatrix(Composite parent, CharacterMatrixPart part) { super(parent, SWT.NONE); @@ -384,7 +386,7 @@ public class CharacterMatrix extends Composite { * Add description button */ Button btnAddDescription = new Button(buttonPanel, SWT.PUSH); - btnAddDescription.setImage(ImageResources.getImage(ImageResources.ADD_ICON)); + btnAddDescription.setImage(ImageResources.getImage(ImageResources.ADD_ICON_GREEN)); btnAddDescription.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { @@ -406,6 +408,25 @@ public class CharacterMatrix extends Composite { } } }); + /** + * Remove description button + */ + Button btnRemoveDescription = new Button(buttonPanel, SWT.PUSH); + btnRemoveDescription.setImage(ImageResources.getImage(ImageResources.ACTIVE_DELETE_ICON)); + btnRemoveDescription.addSelectionListener(new SelectionAdapter() { + @Override + public void widgetSelected(SelectionEvent e) { + int[] fullySelectedRowPositions = bodyLayer.getSelectionLayer().getFullySelectedRowPositions(); + for (int i : fullySelectedRowPositions) { + Object rowObject = bodyDataProvider.getRowObject(i); + if(rowObject instanceof RowWrapper){ + CharacterMatrix.this.descriptions.remove(rowObject); + workingSet.removeDescription(((RowWrapper) rowObject).getSpecimenDescription()); + setDirty(); + } + } + } + }); } private void applyStyles(){ @@ -584,8 +605,8 @@ public class CharacterMatrix extends Composite { GlazedListTreeData treeData = new GlazedListTreeData<>(treeList); ITreeRowModel treeRowModel = new GlazedListTreeRowModel<>(treeData); - final DefaultBodyLayerStack bodyLayer = new DefaultBodyLayerStack( - bodyDataLayer); + bodyLayer = new DefaultBodyLayerStack( + eventLayer); viewportLayer = bodyLayer.getViewportLayer(); final SelectionLayer selectionLayer = bodyLayer.getSelectionLayer(); freezeLayer = new FreezeLayer(selectionLayer); diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/ImageResources.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/ImageResources.java index 37c0f03d7..b21864681 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/ImageResources.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/ImageResources.java @@ -52,6 +52,8 @@ public class ImageResources { ************************************************************************************** */ /** Constant ADD_ICON="add_icon" */ public static final String ADD_ICON = "add_icon"; + public static final String ADD_ICON_GREEN = "add_icon_green"; + public static final String MIN_ICON = "min_icon"; public static final String ADD_EDIT = "add_edit"; /** Constant TRASH_ICON="trash_icon" */ public static final String TRASH_ICON = "trash_icon"; @@ -269,6 +271,10 @@ public class ImageResources { protected void initializeImageRegistry(ImageRegistry registry) { registerImage(registry, ADD_ICON, "add_no_bg.gif"); + registerImage(registry, ADD_ICON_GREEN, + "add.gif"); + registerImage(registry, MIN_ICON, + "min.gif"); registerImage(registry, ADD_EDIT, "add_edit.gif"); registerImage(registry, TRASH_ICON, -- 2.34.1