From 18fd7dae1f67d70a781bf86708274aa740c9229b Mon Sep 17 00:00:00 2001 From: Patrick Plitzner Date: Mon, 19 Sep 2016 12:37:44 +0200 Subject: [PATCH] Generalize title creation for cdm view parts --- .../ReferencingObjectsView.java | 5 +++++ .../editor/view/concept/ConceptViewPart.java | 18 ++++++++++++++---- .../view/concept/graph/ConceptGraphView.java | 5 +++++ .../view/descriptive/DescriptiveViewPart.java | 14 ++------------ .../editor/view/media/MediaViewPart.java | 6 +++++- .../taxeditor/view/AbstractCdmViewPart.java | 12 ++++++++++++ .../taxeditor/view/detail/DetailsViewPart.java | 12 ++++-------- .../SupplementalDataViewPart.java | 6 ++++++ 8 files changed, 53 insertions(+), 25 deletions(-) diff --git a/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsView.java b/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsView.java index 75bf240ef..ff5b0a6df 100644 --- a/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsView.java +++ b/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsView.java @@ -392,4 +392,9 @@ public class ReferencingObjectsView extends AbstractCdmViewPart { } + @Override + protected String getViewName() { + return "Referencing Objects"; + } + } diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/ConceptViewPart.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/ConceptViewPart.java index 8fa2c650f..93c7cabaa 100644 --- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/ConceptViewPart.java +++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/ConceptViewPart.java @@ -32,8 +32,8 @@ import eu.etaxonomy.cdm.model.taxon.Taxon; import eu.etaxonomy.cdm.model.taxon.TaxonRelationship; import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor; import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor; +import eu.etaxonomy.taxeditor.editor.TaxonEditorInput; import eu.etaxonomy.taxeditor.editor.key.AbstractGraphKeyEditor; -import eu.etaxonomy.taxeditor.editor.view.media.MediaViewPart; import eu.etaxonomy.taxeditor.model.AbstractUtility; import eu.etaxonomy.taxeditor.model.IPartContentHasDetails; import eu.etaxonomy.taxeditor.model.IPartContentHasSupplementalData; @@ -87,15 +87,20 @@ implements IPartContentHasDetails, IPartContentHasSupplementalData{ IEditorInput input = ((IEditorPart) part).getEditorInput(); showViewer(part, new StructuredSelection(input)); } - else{ - showViewer(); - } } else { showEmptyPage(); } } + + @Override + protected String createPartTitle(Object selectedObject) { + if(selectedObject instanceof TaxonEditorInput){ + return super.createPartTitle(((TaxonEditorInput) selectedObject).getTaxon()); + } + return super.createPartTitle(selectedObject); + } @Override public boolean onComplete() { @@ -165,4 +170,9 @@ implements IPartContentHasDetails, IPartContentHasSupplementalData{ } + @Override + protected String getViewName() { + return "Concept Relations"; + } + } diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/graph/ConceptGraphView.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/graph/ConceptGraphView.java index 01ca52b88..356e9e5cd 100644 --- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/graph/ConceptGraphView.java +++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/graph/ConceptGraphView.java @@ -123,5 +123,10 @@ public class ConceptGraphView extends AbstractCdmEditorViewPart { return layoutAlgoritm; } + @Override + protected String getViewName() { + return "Concept Graph"; + } + } diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptiveViewPart.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptiveViewPart.java index b61efaa48..cf0b7d927 100644 --- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptiveViewPart.java +++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptiveViewPart.java @@ -56,7 +56,6 @@ import eu.etaxonomy.taxeditor.model.IPartContentHasDetails; import eu.etaxonomy.taxeditor.model.IPartContentHasFactualData; import eu.etaxonomy.taxeditor.model.IPartContentHasSupplementalData; import eu.etaxonomy.taxeditor.model.ImageResources; -import eu.etaxonomy.taxeditor.store.CdmStore; import eu.etaxonomy.taxeditor.view.AbstractCdmEditorViewPart; import eu.etaxonomy.taxeditor.view.detail.DetailsViewPart; import eu.etaxonomy.taxeditor.view.supplementaldata.SupplementalDataViewPart; @@ -156,7 +155,6 @@ public class DescriptiveViewPart extends AbstractCdmEditorViewPart implements IP @Override protected void selectionChanged_internal(IWorkbenchPart part, ISelection selection) { if(AbstractUtility.getActiveEditor() == null){ - setPartName(createPartTitle(null)); showEmptyPage(); return; } @@ -187,27 +185,19 @@ public class DescriptiveViewPart extends AbstractCdmEditorViewPart implements IP && ((IStructuredSelection) selection).getFirstElement() instanceof IDescribable && part instanceof IPartContentHasFactualData && !(((IStructuredSelection) selection).getFirstElement() instanceof SpecimenOrObservationBase && part instanceof BulkEditor)){ featureNodeContainerCache.clear(); - setPartName(createPartTitle(((IStructuredSelection) selection).getFirstElement())); showViewer(part, (IStructuredSelection) selection); return; } else{ - setPartName(createPartTitle(null)); showEmptyPage(); } } - + + @Override protected String getViewName(){ return Messages.DescriptiveViewPart_FACTUAL_DATA; } - private String createPartTitle(Object selectedObject){ - if(selectedObject!=null){ - return getViewName()+": "+selectedObject; //$NON-NLS-1$ - } - return getViewName(); - } - /** * * @author n.hoffmann diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java index 28beab559..8d0e3e777 100644 --- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java +++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/media/MediaViewPart.java @@ -34,7 +34,6 @@ import eu.etaxonomy.taxeditor.model.AbstractUtility; import eu.etaxonomy.taxeditor.model.IPartContentHasDetails; import eu.etaxonomy.taxeditor.model.IPartContentHasMedia; import eu.etaxonomy.taxeditor.model.IPartContentHasSupplementalData; -import eu.etaxonomy.taxeditor.store.CdmStore; import eu.etaxonomy.taxeditor.view.AbstractCdmEditorViewPart; import eu.etaxonomy.taxeditor.view.detail.DetailsViewPart; import eu.etaxonomy.taxeditor.view.supplementaldata.SupplementalDataViewPart; @@ -152,4 +151,9 @@ public class MediaViewPart extends AbstractCdmEditorViewPart implements IPartCon public boolean onComplete() { return true; } + + @Override + protected String getViewName() { + return "Media"; + } } diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/AbstractCdmViewPart.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/AbstractCdmViewPart.java index 4367e2b83..5ea7369b2 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/AbstractCdmViewPart.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/AbstractCdmViewPart.java @@ -96,6 +96,7 @@ public abstract class AbstractCdmViewPart extends ViewPart implements ISelection *

showEmptyPage

*/ public void showEmptyPage(){ + setPartName(createPartTitle(null)); pageBook.showPage(emptySelectionLabel); } @@ -113,6 +114,8 @@ public abstract class AbstractCdmViewPart extends ViewPart implements ISelection if (getViewer().getControl()==null || getViewer().getControl().isDisposed()){ return; } + + setPartName(createPartTitle(element)); getViewer().setInput(element); showViewer(); } @@ -222,4 +225,13 @@ public abstract class AbstractCdmViewPart extends ViewPart implements ISelection // TODO Auto-generated method stub return null; } + + protected String createPartTitle(Object selectedObject){ + if(selectedObject!=null){ + return getViewName()+": "+selectedObject; //$NON-NLS-1$ + } + return getViewName(); + } + + protected abstract String getViewName(); } diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewPart.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewPart.java index 0f0df4522..a7713c6f8 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewPart.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewPart.java @@ -70,7 +70,6 @@ public class DetailsViewPart extends AbstractCdmEditorViewPart implements IPartC if((part instanceof IEditorPart) || (part instanceof IPartContentHasDetails)) { if(structuredSelection.size() != 1){ - setPartName(createPartTitle(null)); showEmptyPage(); return; } @@ -80,26 +79,23 @@ public class DetailsViewPart extends AbstractCdmEditorViewPart implements IPartC // do show the map for distributions Feature feature = ((FeatureNodeContainer) ((IStructuredSelection) selection).getFirstElement()).getFeature(); if(!feature.equals(Feature.DISTRIBUTION())){ - setPartName(createPartTitle(null)); showEmptyPage(); return; } } - - - setPartName(createPartTitle(((IStructuredSelection) selection).getFirstElement())); showViewer(part, structuredSelection); }else{ - setPartName(createPartTitle(null)); showEmptyPage(); } } - private String getViewName(){ + @Override + protected String getViewName(){ return "Details"; } - private String createPartTitle(Object selectedObject){ + @Override + protected String createPartTitle(Object selectedObject){ if(selectedObject!=null){ if(selectedObject instanceof TreeNode){ selectedObject = ((TreeNode) selectedObject).getValue(); diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/supplementaldata/SupplementalDataViewPart.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/supplementaldata/SupplementalDataViewPart.java index 984c3c6f2..efb6648df 100644 --- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/supplementaldata/SupplementalDataViewPart.java +++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/supplementaldata/SupplementalDataViewPart.java @@ -123,4 +123,10 @@ public class SupplementalDataViewPart extends AbstractCdmEditorViewPart { // TODO Auto-generated method stub return false; } + + + @Override + protected String getViewName() { + return "Supplemental Data"; + } } -- 2.34.1