From 496d004953355ffd8d68d93e5a2979200fc74038 Mon Sep 17 00:00:00 2001
From: Patric Plitzner
Date: Tue, 3 Sep 2013 10:30:01 +0000
Subject: [PATCH] - fixed the link in CollectionSelectionDialog and
InstitutionSelectionDialog to create a new entity - found strange bug in
org.eclipse.swt.widgets.Link described in Ticket #3691
---
.../menu/AbstractMenuPreferences.java | 4 -
...actFilteredCdmResourceSelectionDialog.java | 161 +++++++++---------
.../selection/CollectionSelectionDialog.java | 12 +-
.../selection/InstitutionSelectionDialog.java | 10 +-
4 files changed, 95 insertions(+), 92 deletions(-)
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/menu/AbstractMenuPreferences.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/menu/AbstractMenuPreferences.java
index f78483bd6..8eb85ef25 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/menu/AbstractMenuPreferences.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/menu/AbstractMenuPreferences.java
@@ -12,7 +12,6 @@ package eu.etaxonomy.taxeditor.preference.menu;
import java.util.ArrayList;
import java.util.HashMap;
-import java.util.Iterator;
import java.util.List;
import org.eclipse.core.commands.Command;
@@ -25,7 +24,6 @@ import org.eclipse.jface.preference.PreferencePage;
import org.eclipse.jface.viewers.CheckStateChangedEvent;
import org.eclipse.jface.viewers.CheckboxTableViewer;
import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.wizard.WizardDialog;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
@@ -39,11 +37,9 @@ import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.IWorkbenchPreferencePage;
import org.eclipse.ui.commands.ICommandService;
import org.eclipse.ui.handlers.IHandlerService;
-import org.eclipse.ui.internal.commands.Parameter;
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
-import eu.etaxonomy.cdm.api.service.ITermService;
import eu.etaxonomy.cdm.model.common.DefinedTermBase;
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
import eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermEditor;
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/AbstractFilteredCdmResourceSelectionDialog.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/AbstractFilteredCdmResourceSelectionDialog.java
index 242af0320..95a87cf52 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/AbstractFilteredCdmResourceSelectionDialog.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/AbstractFilteredCdmResourceSelectionDialog.java
@@ -1,9 +1,9 @@
// $Id$
/**
* Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy
+* European Distributed Institute of Taxonomy
* http://www.e-taxonomy.eu
-*
+*
* The contents of this file are subject to the Mozilla Public License Version 1.1
* See LICENSE.TXT at the top of this package for the full license terms.
*/
@@ -47,8 +47,8 @@ import eu.etaxonomy.cdm.model.common.ICdmBase;
import eu.etaxonomy.cdm.model.common.IIdentifiableEntity;
import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
import eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard;
-import eu.etaxonomy.taxeditor.store.StoreUtil;
import eu.etaxonomy.taxeditor.store.internal.TaxeditorStorePlugin;
/**
@@ -61,19 +61,19 @@ import eu.etaxonomy.taxeditor.store.internal.TaxeditorStorePlugin;
public abstract class AbstractFilteredCdmResourceSelectionDialog extends
FilteredItemsSelectionDialog implements IConversationEnabled {
- private ConversationHolder conversation;
+ private final ConversationHolder conversation;
protected List> model;
- private Set transientCdmObjects = new HashSet();
- private String settings;
-
+ private final Set transientCdmObjects = new HashSet();
+ private final String settings;
+
protected T cdmBaseToBeFiltered;
-
+
/**
* Constructor for AbstractFilteredCdmResourceSelectionDialog.
*
* @param shell a {@link org.eclipse.swt.widgets.Shell} object.
- * @param conversation
+ * @param conversation
* @param title a {@link java.lang.String} object.
* @param multi a boolean.
* @param settings a {@link java.lang.String} object.
@@ -85,29 +85,29 @@ public abstract class AbstractFilteredCdmResourceSelectionDialoggetSelectionFromDialog
*
@@ -140,18 +140,18 @@ public abstract class AbstractFilteredCdmResourceSelectionDialog TYPE getSelectionFromDialog(AbstractFilteredCdmResourceSelectionDialog dialog) {
//dialog.setInitialPattern("");
int result = dialog.open();
-
+
if (result == Window.CANCEL) {
return null;
}
-
+
UUID uuid = dialog.getSelectedUuidAndTitleCache().getUuid();
if(uuid == null){
return null;
- }
+ }
return dialog.getCdmObjectByUuid(uuid);
}
-
+
/**
* Check if object was created during the life of this dialog. If not,
* retrieve it from the CdmStore.
@@ -167,7 +167,7 @@ public abstract class AbstractFilteredCdmResourceSelectionDialoggetPersistentObject
*
@@ -204,16 +204,16 @@ public abstract class AbstractFilteredCdmResourceSelectionDialoginitModel
*/
@@ -243,7 +243,7 @@ public abstract class AbstractFilteredCdmResourceSelectionDialog element : model){
contentProvider.add(element, itemsFilter);
@@ -316,7 +316,7 @@ public abstract class AbstractFilteredCdmResourceSelectionDialog() {
- public int compare(UuidAndTitleCache entity1,
+ @Override
+ public int compare(UuidAndTitleCache entity1,
UuidAndTitleCache entity2) {
Collator collator = Collator.getInstance();
return collator.compare(entity1.getTitleCache(), entity2.getTitleCache());
@@ -370,7 +371,7 @@ public abstract class AbstractFilteredCdmResourceSelectionDialoggetSelectedUuidAndTitleCache
*
@@ -380,7 +381,7 @@ public abstract class AbstractFilteredCdmResourceSelectionDialogGetter for the field settings
.
*
@@ -392,9 +393,9 @@ public abstract class AbstractFilteredCdmResourceSelectionDialoggetNewWizardLinkText
*
* @return a {@link java.lang.String} object.
*/
protected abstract String getNewWizardLinkText();
-
+
/**
* getNewEntityWizard
- * @param parameter
+ * @param parameter
* @return a {@link eu.etaxonomy.taxeditor.newWizard.AbstractNewEntityWizard} object.
*/
protected abstract AbstractNewEntityWizard getNewEntityWizard(String parameter);
-
+
public class FilteredCdmResourceLabelProvider extends LabelProvider {
- public String getText(Object element) {
+ @Override
+ public String getText(Object element) {
if (element == null) {
return null;
}
return ((UuidAndTitleCache) element).getTitleCache();
- }
+ }
};
/* (non-Javadoc)
@@ -444,33 +448,34 @@ public abstract class AbstractFilteredCdmResourceSelectionDialoggetConversationHolder
*
* @return a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
*/
- public ConversationHolder getConversationHolder() {
+ @Override
+ public ConversationHolder getConversationHolder() {
return conversation;
}
-
+
/** {@inheritDoc} */
- public void update(CdmDataChangeMap changeEvents) {}
+ @Override
+ public void update(CdmDataChangeMap changeEvents) {}
/**
- * Don't want to add for example a taxon or synonym to itself
- * so filter the list to remove the taxon in question
+ * Don't want to add for example a taxon or synonym to itself
+ * so filter the list to remove the taxon in question
* (cdmBaseToBeFiltered
)
* so it is not available in the filtered list.
*/
private void filterExcludedObjects() {
if (model != null && cdmBaseToBeFiltered != null) {
-
+
UuidAndTitleCache uuidAndTitleCacheToRemove = null;
-
+
for (UuidAndTitleCache uuidAndTitleCache : model){
if ((cdmBaseToBeFiltered.getUuid()).equals(uuidAndTitleCache.getUuid())) {
uuidAndTitleCacheToRemove = uuidAndTitleCache;
- }
+ }
}
model.remove(uuidAndTitleCacheToRemove);
}
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/CollectionSelectionDialog.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/CollectionSelectionDialog.java
index 02ef93583..15f0798b2 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/CollectionSelectionDialog.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/CollectionSelectionDialog.java
@@ -1,9 +1,9 @@
// $Id$
/**
* Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy
+* European Distributed Institute of Taxonomy
* http://www.e-taxonomy.eu
-*
+*
* The contents of this file are subject to the Mozilla Public License Version 1.1
* See LICENSE.TXT at the top of this package for the full license terms.
*/
@@ -30,7 +30,7 @@ import eu.etaxonomy.taxeditor.store.CdmStore;
*/
public class CollectionSelectionDialog extends
AbstractFilteredCdmResourceSelectionDialog {
-
+
/**
* select
*
@@ -44,7 +44,7 @@ public class CollectionSelectionDialog extends
"Choose Collection", false, CollectionSelectionDialog.class.getCanonicalName(), collection);
return getSelectionFromDialog(dialog);
}
-
+
/**
* Constructor for FilteredCollectionSelectionDialog.
*
@@ -85,7 +85,7 @@ public class CollectionSelectionDialog extends
/** {@inheritDoc} */
@Override
protected String getNewWizardLinkText() {
- return "Click link to create a new Collection.";
+ return String.format("Click link to create a new %1s", "Collection ");
}
/* (non-Javadoc)
@@ -97,5 +97,5 @@ public class CollectionSelectionDialog extends
return new NewCollectionWizard();
}
-
+
}
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/InstitutionSelectionDialog.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/InstitutionSelectionDialog.java
index a76039c7e..9312db0b6 100644
--- a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/InstitutionSelectionDialog.java
+++ b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/InstitutionSelectionDialog.java
@@ -1,9 +1,9 @@
// $Id$
/**
* Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy
+* European Distributed Institute of Taxonomy
* http://www.e-taxonomy.eu
-*
+*
* The contents of this file are subject to the Mozilla Public License Version 1.1
* See LICENSE.TXT at the top of this package for the full license terms.
*/
@@ -35,7 +35,7 @@ public class InstitutionSelectionDialog extends
"Choose Institution", false, TeamSelectionDialog.class.getCanonicalName(), institution);
return getSelectionFromDialog(dialog);
}
-
+
/**
* @param shell
* @param conversation
@@ -56,7 +56,7 @@ public class InstitutionSelectionDialog extends
@Override
protected Institution getPersistentObject(UUID uuid) {
AgentBase agentBase = CdmStore.getService(IAgentService.class).load(uuid);
-
+
if(agentBase instanceof Institution){
return (Institution) agentBase;
}
@@ -76,7 +76,7 @@ public class InstitutionSelectionDialog extends
*/
@Override
protected String getNewWizardLinkText() {
- return "Create a new Institution.";
+ return "Create a new Institution.";
}
/* (non-Javadoc)
--
2.34.1