Merge branch 'release/4.7.0'
[taxeditor.git] / eu.etaxonomy.taxeditor.editor / src / main / java / eu / etaxonomy / taxeditor / editor / name / TaxonNameEditor.java
index dc16cfc14eb992ca415fec7bf3952af544bd52cd..859552af72983bade24498e26742aed18e55b828 100644 (file)
@@ -58,6 +58,7 @@ import eu.etaxonomy.taxeditor.editor.ISecuredEditor;
 import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
 import eu.etaxonomy.taxeditor.editor.SimpleSelectionProvider;
 import eu.etaxonomy.taxeditor.editor.TaxonEditorInput;
+import eu.etaxonomy.taxeditor.editor.l10n.Messages;
 import eu.etaxonomy.taxeditor.editor.name.container.AbstractGroup;
 import eu.etaxonomy.taxeditor.editor.name.container.AbstractGroupedContainer;
 import eu.etaxonomy.taxeditor.editor.name.container.AcceptedGroup;
@@ -73,7 +74,6 @@ import eu.etaxonomy.taxeditor.model.TaxeditorPartService;
 import eu.etaxonomy.taxeditor.preference.Resources;
 import eu.etaxonomy.taxeditor.security.RequiredPermissions;
 import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
-import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
 /**
@@ -87,12 +87,12 @@ import eu.etaxonomy.taxeditor.store.CdmStore;
  * @version 1.0
  */
 public class TaxonNameEditor extends EditorPart implements
-               IMultiPageTaxonEditorPage, IConversationEnabled, ICdmEntitySessionEnabled,
+               IMultiPageTaxonEditorPage, IConversationEnabled,
                IPartContentHasDetails, IPartChangeListener,
                ISelectionListener, IDropTargetable, ISecuredEditor {
 
        /** Constant <code>ID="eu.etaxonomy.taxeditor.editor.taxon.name"</code> */
-       public static final String ID = "eu.etaxonomy.taxeditor.editor.taxon.name";
+       public static final String ID = "eu.etaxonomy.taxeditor.editor.taxon.name"; //$NON-NLS-1$
 
        private Taxon taxon;
 
@@ -207,6 +207,7 @@ public class TaxonNameEditor extends EditorPart implements
                ISelectionProvider selectionProvider = getSite().getSelectionProvider();
                getSite().registerContextMenu(TaxonNameEditor.ID, menuManager,
                                selectionProvider);
+               menuManager.setRemoveAllWhenShown(true);
 
                parent.setData(taxon);
 
@@ -241,6 +242,7 @@ public class TaxonNameEditor extends EditorPart implements
                ContainerFactory.createOrUpdateHeterotypicSynonymyGroups(this);
                ContainerFactory.createOrUpdateMisapplicationsGroup(this);
 
+
                // Redraw composite
                managedForm.reflow(true);
        }
@@ -253,7 +255,7 @@ public class TaxonNameEditor extends EditorPart implements
         * @return a {@link eu.etaxonomy.cdm.model.taxon.Taxon} object.
         */
        public Taxon getTaxon() {
-               return (Taxon) HibernateProxyHelper.deproxy(taxon);
+               return HibernateProxyHelper.deproxy(taxon);
        }
 
        /**
@@ -276,7 +278,7 @@ public class TaxonNameEditor extends EditorPart implements
            PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell().setFocus();
                if (getSelectedContainer() == null) {
                        throw new IllegalStateException(
-                                       "There should always be a selected object.");
+                                       Messages.TaxonNameEditor_THERE_SHOULD_ALWAYS_BE);
                }
                getSelectedContainer().setSelected();
 
@@ -468,13 +470,13 @@ public class TaxonNameEditor extends EditorPart implements
        @Override
        public void doSave(IProgressMonitor monitor) {
 
-               monitor.beginTask("Saving names", getGroupedContainers().size());
+               monitor.beginTask(Messages.TaxonNameEditor_SAVING_NAMES, getGroupedContainers().size());
 
                try {
                        // check for empty names
                        for (AbstractGroupedContainer container : getGroupedContainers()) {
 
-                               monitor.subTask("Saving composite: "
+                               monitor.subTask(Messages.TaxonNameEditor_SAVING_COMPOSITES
                                                + container.getTaxonBase().getTitleCache());
                                container.persistName();
 
@@ -505,13 +507,13 @@ public class TaxonNameEditor extends EditorPart implements
                        throws PartInitException {
 
                if (!(input != null)) {
-            throw new PartInitException("Invalid Input: Must be IEditorInput");
+            throw new PartInitException(Messages.TaxonNameEditor_INVALID_INPUT);
         }
 
                if (input.getAdapter(Taxon.class) != null) {
                        taxon = CdmBase.deproxy(input.getAdapter(Taxon.class), Taxon.class);
                } else {
-                       throw new PartInitException("Invalid Input: Taxon cannot be null");
+                       throw new PartInitException(Messages.TaxonNameEditor_INVALID_INPUT_TAXON_NULL);
                }
 
                setSite(site);
@@ -949,12 +951,6 @@ public class TaxonNameEditor extends EditorPart implements
                setEnabled(enabled, background);
        }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled#getCdmEntitySession()
-     */
-    @Override
-    public ICdmEntitySession getCdmEntitySession() {
-        return editor.getCdmEntitySession();
-    }
+
 
 }