Revision 4633f830
Added by Katja Luther almost 9 years ago
eu.etaxonomy.taxeditor.navigation/plugin.xml | ||
---|---|---|
247 | 247 |
visible="true"> |
248 | 248 |
</separator> |
249 | 249 |
<command |
250 |
commandId="org.eclipse.ui.edit.delete"
|
|
250 |
commandId="eu.etaxonomy.taxeditor.navigation.command.delete"
|
|
251 | 251 |
label="%command.label.10" |
252 | 252 |
style="push"> |
253 | 253 |
<visibleWhen |
... | ... | |
352 | 352 |
visible="true"> |
353 | 353 |
</separator> |
354 | 354 |
<command |
355 |
commandId="org.eclipse.ui.edit.delete"
|
|
355 |
commandId="eu.etaxonomy.taxeditor.navigation.key.polytomous.command.delete"
|
|
356 | 356 |
label="%command.label.19" |
357 | 357 |
style="push"> |
358 | 358 |
</command> |
... | ... | |
426 | 426 |
id="eu.etaxonomy.taxeditor.navigation.navigator.handler.OpenFixClassificationHierarchyHandler" |
427 | 427 |
name="%command.name.10"> |
428 | 428 |
</command> |
429 |
<command |
|
430 |
defaultHandler="eu.etaxonomy.taxeditor.navigation.navigator.handler.DeleteHandler" |
|
431 |
id="eu.etaxonomy.taxeditor.navigation.command.delete" |
|
432 |
name="delete"> |
|
433 |
</command> |
|
429 | 434 |
</extension> |
430 | 435 |
<extension |
431 | 436 |
point="org.eclipse.ui.handlers"> |
432 | 437 |
<handler |
433 | 438 |
class="eu.etaxonomy.taxeditor.navigation.navigator.handler.DeleteHandler" |
434 |
commandId="org.eclipse.ui.edit.delete">
|
|
439 |
commandId="eu.etaxonomy.taxeditor.navigation.navigator.command.delete">
|
|
435 | 440 |
<activeWhen> |
436 | 441 |
<with |
437 | 442 |
variable="activePartId"> |
... | ... | |
443 | 448 |
</handler> |
444 | 449 |
<handler |
445 | 450 |
class="eu.etaxonomy.taxeditor.navigation.key.polytomous.handler.DeleteHandler" |
446 |
commandId="org.eclipse.ui.edit.delete">
|
|
451 |
commandId="eu.etaxonomy.taxeditor.navigation.key.polytomous.command.delete">
|
|
447 | 452 |
<activeWhen> |
448 | 453 |
<with |
449 | 454 |
variable="activePartId"> |
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/TaxonNavigator.java | ||
---|---|---|
11 | 11 |
package eu.etaxonomy.taxeditor.navigation.navigator; |
12 | 12 |
|
13 | 13 |
import java.util.ArrayList; |
14 |
import java.util.Comparator; |
|
14 | 15 |
import java.util.HashSet; |
15 | 16 |
import java.util.List; |
16 | 17 |
import java.util.Observable; |
... | ... | |
31 | 32 |
import eu.etaxonomy.cdm.api.conversation.IConversationEnabled; |
32 | 33 |
import eu.etaxonomy.cdm.api.service.IClassificationService; |
33 | 34 |
import eu.etaxonomy.cdm.model.common.CdmBase; |
35 |
import eu.etaxonomy.cdm.model.taxon.TaxonComparator; |
|
34 | 36 |
import eu.etaxonomy.cdm.model.taxon.TaxonComparatorSearch; |
37 |
import eu.etaxonomy.cdm.model.taxon.TaxonNaturalComparator; |
|
35 | 38 |
import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap; |
36 | 39 |
import eu.etaxonomy.taxeditor.model.DataChangeBridge; |
37 | 40 |
import eu.etaxonomy.taxeditor.model.IDataChangeBehavior; |
38 | 41 |
import eu.etaxonomy.taxeditor.model.MessagingUtils; |
39 | 42 |
import eu.etaxonomy.taxeditor.navigation.NavigationUtil; |
40 | 43 |
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled; |
44 |
import eu.etaxonomy.taxeditor.preference.PreferencesUtil; |
|
41 | 45 |
import eu.etaxonomy.taxeditor.store.CdmStore; |
42 | 46 |
import eu.etaxonomy.taxeditor.store.LoginManager; |
43 | 47 |
|
... | ... | |
76 | 80 |
/** {@inheritDoc} */ |
77 | 81 |
@Override |
78 | 82 |
protected IAdaptable getInitialInput() { |
79 |
|
|
80 |
TaxonComparatorSearch comparator = new TaxonComparatorSearch(); |
|
83 |
Comparator comparator; |
|
84 |
if (PreferencesUtil.getSortNodesNaturally()){ |
|
85 |
comparator = new TaxonNaturalComparator(); |
|
86 |
} else{ |
|
87 |
comparator = new TaxonComparatorSearch(); |
|
88 |
} |
|
81 | 89 |
TaxonNodeComparator viewerComparator = new TaxonNodeComparator(comparator); |
82 | 90 |
this.getCommonViewer().setComparator(viewerComparator); |
83 | 91 |
setLinkingEnabled(true); |
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/TaxonNodeComparator.java | ||
---|---|---|
12 | 12 |
import eu.etaxonomy.cdm.model.taxon.Classification; |
13 | 13 |
import eu.etaxonomy.cdm.model.taxon.TaxonBase; |
14 | 14 |
import eu.etaxonomy.cdm.model.taxon.TaxonComparatorSearch; |
15 |
import eu.etaxonomy.cdm.model.taxon.TaxonNaturalComparator; |
|
15 | 16 |
import eu.etaxonomy.cdm.model.taxon.TaxonNode; |
16 | 17 |
import eu.etaxonomy.taxeditor.ui.section.supplemental.IdentifiableSourceElement; |
17 | 18 |
|
18 | 19 |
public class TaxonNodeComparator extends ViewerComparator{ |
19 | 20 |
|
20 | 21 |
|
21 |
public TaxonNodeComparator(TaxonComparatorSearch comparator) {
|
|
22 |
public TaxonNodeComparator(Comparator<TaxonBase> comparator){
|
|
22 | 23 |
super(comparator); |
23 | 24 |
} |
24 | 25 |
|
... | ... | |
29 | 30 |
if (e1 instanceof Classification && e2 instanceof Classification){ |
30 | 31 |
return ((Classification)e1).getTitleCache().compareTo(((Classification)e2).getTitleCache()); |
31 | 32 |
} else{ |
32 |
return this.getComparator().compare(((TaxonNode)e1).getTaxon(),((TaxonNode)e2).getTaxon()); |
|
33 |
if (this.getComparator() instanceof TaxonNaturalComparator){ |
|
34 |
return this.getComparator().compare((TaxonNode)e1, (TaxonNode)e2); |
|
35 |
}else{ |
|
36 |
return this.getComparator().compare(((TaxonNode)e1).getTaxon(),((TaxonNode)e2).getTaxon()); |
|
37 |
} |
|
33 | 38 |
} |
34 | 39 |
} |
35 | 40 |
} |
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/TreeNodeDropAdapterAssistant.java | ||
---|---|---|
19 | 19 |
import org.eclipse.core.commands.operations.IUndoContext; |
20 | 20 |
import org.eclipse.core.runtime.IStatus; |
21 | 21 |
import org.eclipse.core.runtime.Status; |
22 |
import org.eclipse.jface.dialogs.IconAndMessageDialog; |
|
22 | 23 |
import org.eclipse.jface.dialogs.MessageDialog; |
23 | 24 |
import org.eclipse.jface.util.LocalSelectionTransfer; |
24 | 25 |
import org.eclipse.jface.viewers.ISelection; |
25 | 26 |
import org.eclipse.jface.viewers.TreeSelection; |
26 | 27 |
import org.eclipse.swt.dnd.DropTargetEvent; |
27 | 28 |
import org.eclipse.swt.dnd.TransferData; |
29 |
import org.eclipse.swt.graphics.Image; |
|
30 |
import org.eclipse.swt.widgets.Shell; |
|
28 | 31 |
import org.eclipse.ui.handlers.HandlerUtil; |
29 | 32 |
import org.eclipse.ui.navigator.CommonDropAdapter; |
30 | 33 |
import org.eclipse.ui.navigator.CommonDropAdapterAssistant; |
... | ... | |
39 | 42 |
import eu.etaxonomy.taxeditor.navigation.navigator.operation.MoveTaxonOperation; |
40 | 43 |
import eu.etaxonomy.taxeditor.operation.AbstractPostOperation; |
41 | 44 |
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled; |
45 |
import eu.etaxonomy.taxeditor.preference.PreferencesUtil; |
|
42 | 46 |
import eu.etaxonomy.taxeditor.store.CdmStore; |
43 | 47 |
|
44 | 48 |
/** |
... | ... | |
65 | 69 |
public IStatus handleDrop(CommonDropAdapter dropAdapter, |
66 | 70 |
DropTargetEvent dropTargetEvent, Object target) { |
67 | 71 |
|
72 |
|
|
68 | 73 |
if (target instanceof ITaxonTreeNode) { |
69 | 74 |
Set<TaxonNode> taxonNodes = getSelectedTaxa(); |
70 | 75 |
ITaxonTreeNode targetTreeNode = (ITaxonTreeNode) target; |
... | ... | |
82 | 87 |
} |
83 | 88 |
} |
84 | 89 |
} |
85 |
|
|
90 |
|
|
86 | 91 |
return Status.CANCEL_STATUS; |
87 | 92 |
} |
88 | 93 |
|
... | ... | |
171 | 176 |
if(targetITaxonTreeNode instanceof TaxonNode){ |
172 | 177 |
|
173 | 178 |
TaxonNode targetTaxonNode = (TaxonNode) targetITaxonTreeNode; |
174 |
|
|
175 |
// for(TaxonNode taxonNode : taxonNodes){ |
|
176 |
// if (taxonNode.equals(targetTaxonNode)) { |
|
177 |
// return Status.CANCEL_STATUS; |
|
178 |
// } |
|
179 |
// } |
|
180 |
|
|
181 |
// Make sure parent taxon does not have unsaved changes |
|
179 |
// Make sure parent taxon does not have unsaved changes |
|
182 | 180 |
if (NavigationUtil.isDirty(targetTaxonNode)){ |
183 | 181 |
MessageDialog.openWarning(NavigationUtil.getShell(), "Unsaved Parent Taxon", "There are unsaved " + |
184 | 182 |
"changes in the parent taxon. Pleas save first."); |
185 | 183 |
return Status.CANCEL_STATUS; |
186 | 184 |
} |
187 | 185 |
|
188 |
|
|
189 |
/*if (((TaxonNode) targetITaxonTreeNode).isTopmostNode()) { |
|
190 |
MessageDialog.openConfirm(null, "Taxonnode can not be moved", "A taxonnode can not be moved to the classification"); |
|
191 |
}*/ |
|
192 |
|
|
193 |
// Make sure parentTaxon is not the drop target |
|
194 |
// if (!childTaxonNode.isTopmostNode() && childTaxonNode.getParent().equals(targetTaxonNode)){ |
|
195 |
// return Status.CANCEL_STATUS; |
|
196 |
// } |
|
197 |
|
|
198 |
// Make sure taxon is not being dropped onto itself |
|
199 |
// if (childTaxonNode.equals(targetTaxonNode)) { |
|
200 |
// return Status.CANCEL_STATUS; |
|
201 |
// } |
|
202 |
|
|
203 |
|
|
204 |
|
|
205 | 186 |
} |
206 |
|
|
207 |
IUndoContext workspaceUndoContext = NavigationUtil.getWorkbenchUndoContext(); |
|
208 |
if (workspaceUndoContext == null) { |
|
209 |
logger.error("Workspace undo context is null. DND operation cancelled"); |
|
210 |
return Status.CANCEL_STATUS; |
|
211 |
} |
|
212 |
|
|
213 |
AbstractPostOperation operation = new MoveTaxonOperation |
|
214 |
("Move Taxon", workspaceUndoContext, taxonNode, targetITaxonTreeNode, this, taxonNavigator); |
|
215 |
NavigationUtil.executeOperation(operation); |
|
187 |
if (!PreferencesUtil.getSortNodesNaturally()){ |
|
188 |
IUndoContext workspaceUndoContext = NavigationUtil.getWorkbenchUndoContext(); |
|
189 |
if (workspaceUndoContext == null) { |
|
190 |
logger.error("Workspace undo context is null. DND operation cancelled"); |
|
191 |
return Status.CANCEL_STATUS; |
|
192 |
} |
|
193 |
|
|
194 |
AbstractPostOperation operation = new MoveTaxonOperation |
|
195 |
("Move Taxon", workspaceUndoContext, taxonNode, targetITaxonTreeNode, this, taxonNavigator, true); |
|
196 |
NavigationUtil.executeOperation(operation); |
|
197 |
|
|
198 |
logger.info("Moved taxa to new parent " + targetITaxonTreeNode); |
|
199 |
return Status.OK_STATUS; |
|
200 |
}else{ |
|
201 |
String[] buttonLables = {"Parent", "Predecessor", "Cancel"}; |
|
202 |
MessageDialog dialog = new MessageDialog(null, "Target node", null, "Do you want to use the target node as parent or do you want to move the taxon below the target.", MessageDialog.QUESTION_WITH_CANCEL, buttonLables, 0); |
|
203 |
dialog.open(); |
|
204 |
int returnCode = dialog.getReturnCode(); |
|
205 |
if (returnCode == 0){ |
|
206 |
IUndoContext workspaceUndoContext = NavigationUtil.getWorkbenchUndoContext(); |
|
207 |
if (workspaceUndoContext == null) { |
|
208 |
logger.error("Workspace undo context is null. DND operation cancelled"); |
|
209 |
return Status.CANCEL_STATUS; |
|
210 |
} |
|
211 |
|
|
212 |
AbstractPostOperation operation = new MoveTaxonOperation |
|
213 |
("Move Taxon", workspaceUndoContext, taxonNode, targetITaxonTreeNode, this, taxonNavigator, true); |
|
214 |
NavigationUtil.executeOperation(operation); |
|
215 |
|
|
216 |
logger.info("Moved taxa to new parent " + targetITaxonTreeNode); |
|
217 |
return Status.OK_STATUS; |
|
218 |
}else if (returnCode == 1){ |
|
219 |
IUndoContext workspaceUndoContext = NavigationUtil.getWorkbenchUndoContext(); |
|
220 |
if (workspaceUndoContext == null) { |
|
221 |
logger.error("Workspace undo context is null. DND operation cancelled"); |
|
222 |
return Status.CANCEL_STATUS; |
|
223 |
} |
|
216 | 224 |
|
217 |
logger.info("Moved taxa to new parent " + targetITaxonTreeNode); |
|
218 |
return Status.OK_STATUS; |
|
225 |
AbstractPostOperation operation = new MoveTaxonOperation |
|
226 |
("Move Taxon", workspaceUndoContext, taxonNode, targetITaxonTreeNode, this, taxonNavigator, false); |
|
227 |
NavigationUtil.executeOperation(operation); |
|
228 |
|
|
229 |
logger.info("Moved taxa to new parent " + targetITaxonTreeNode); |
|
230 |
return Status.OK_STATUS; |
|
231 |
} else{ |
|
232 |
return Status.CANCEL_STATUS; |
|
233 |
} |
|
234 |
|
|
235 |
|
|
236 |
} |
|
219 | 237 |
} |
220 | 238 |
|
221 | 239 |
/* (non-Javadoc) |
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/MoveTaxonHandler.java | ||
---|---|---|
41 | 41 |
import eu.etaxonomy.taxeditor.navigation.navigator.operation.MoveTaxonOperation; |
42 | 42 |
import eu.etaxonomy.taxeditor.operation.AbstractPostOperation; |
43 | 43 |
import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled; |
44 |
import eu.etaxonomy.taxeditor.preference.PreferencesUtil; |
|
44 | 45 |
import eu.etaxonomy.taxeditor.store.CdmStore; |
45 | 46 |
import eu.etaxonomy.taxeditor.ui.dialog.selection.TaxonNodeSelectionDialog; |
47 |
import eu.etaxonomy.taxeditor.ui.dialog.selection.TaxonNodeSelectionNaturalOrderDialog; |
|
46 | 48 |
|
47 | 49 |
/** |
48 | 50 |
* <p>MoveTaxonHandler class.</p> |
... | ... | |
87 | 89 |
|
88 | 90 |
// TaxonNode taxonNode = (TaxonNode) selection.getFirstElement(); |
89 | 91 |
if (taxonNode != null){ |
90 |
parentTaxonNode = TaxonNodeSelectionDialog.select(HandlerUtil.getActiveShell(event), taxonNavigator.getConversationHolder(), "Choose new parent", excludeTaxa, null, null); |
|
91 |
|
|
92 |
boolean moveToNewParent = true; |
|
93 |
if (PreferencesUtil.getSortNodesNaturally()){ |
|
94 |
if(!MessageDialog.openQuestion(null, "Target node", "The choosen target node should be the parent?")){ |
|
95 |
moveToNewParent = false; |
|
96 |
} |
|
97 |
parentTaxonNode = TaxonNodeSelectionDialog.select(HandlerUtil.getActiveShell(event), taxonNavigator.getConversationHolder(), "Choose the taxon above the moved taxon.", excludeTaxa, null, null); |
|
98 |
}else{ |
|
99 |
parentTaxonNode = TaxonNodeSelectionDialog.select(HandlerUtil.getActiveShell(event), taxonNavigator.getConversationHolder(), "Choose new parent", excludeTaxa, null, null); |
|
100 |
} |
|
92 | 101 |
if(parentTaxonNode != null){ |
93 | 102 |
if(NavigationUtil.isDirty(parentTaxonNode)){ |
94 | 103 |
MessageDialog.openWarning(HandlerUtil.getActiveShell(event), "Unsaved Parent Taxon", "There are unsaved " + |
... | ... | |
98 | 107 |
|
99 | 108 |
AbstractPostOperation operation = new MoveTaxonOperation |
100 | 109 |
("Move taxon to new parent", NavigationUtil.getUndoContext(), |
101 |
taxonNode, parentTaxonNode, taxonNavigator, taxonNavigator); //$NON-NLS-1$ |
|
110 |
taxonNode, parentTaxonNode, taxonNavigator, taxonNavigator, moveToNewParent); //$NON-NLS-1$
|
|
102 | 111 |
NavigationUtil.executeOperation(operation); |
103 | 112 |
taxonNavigator.refresh(); |
104 | 113 |
|
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/MoveTaxonOperation.java | ||
---|---|---|
53 | 53 |
//private Map<TaxonNode, ITaxonTreeNode> oldParentTreeNodes; |
54 | 54 |
|
55 | 55 |
private TaxonNode taxonNode; |
56 |
|
|
56 |
private boolean moveToParentNode; |
|
57 | 57 |
/** |
58 | 58 |
* <p>Constructor for MoveTaxonOperation.</p> |
59 | 59 |
* |
... | ... | |
65 | 65 |
* @param conversationEnabled a {@link eu.etaxonomy.cdm.api.conversation.IConversationEnabled} object. |
66 | 66 |
*/ |
67 | 67 |
public MoveTaxonOperation(String label, IUndoContext undoContext, |
68 |
TaxonNode taxonNodeToMove, ITaxonTreeNode newParentTreeNode, IPostOperationEnabled postOperationEnabled, IConversationEnabled conversationEnabled) { |
|
68 |
TaxonNode taxonNodeToMove, ITaxonTreeNode newParentTreeNode, IPostOperationEnabled postOperationEnabled, IConversationEnabled conversationEnabled, boolean moveToParentNode) {
|
|
69 | 69 |
super(label, undoContext, postOperationEnabled, conversationEnabled); |
70 | 70 |
|
71 | 71 |
this.taxonNode = taxonNodeToMove; |
... | ... | |
74 | 74 |
}*/ |
75 | 75 |
|
76 | 76 |
this.newParentTreeNode = newParentTreeNode; |
77 |
|
|
77 |
this.moveToParentNode = moveToParentNode; |
|
78 | 78 |
// Save old parent ITaxonTreeNodes for undo |
79 | 79 |
|
80 | 80 |
//this.parentNode = taxonNode.getParent(); |
... | ... | |
90 | 90 |
bind(); |
91 | 91 |
monitor.worked(20); |
92 | 92 |
|
93 |
UpdateResult result = CdmStore.getService(ITaxonNodeService.class).moveTaxonNode(this.taxonNode.getUuid(),newParentTreeNode.getUuid()); |
|
93 |
UpdateResult result = CdmStore.getService(ITaxonNodeService.class).moveTaxonNode(this.taxonNode.getUuid(),newParentTreeNode.getUuid(), moveToParentNode);
|
|
94 | 94 |
// try { |
95 | 95 |
// for (TaxonNode taxonNode : taxonNodes){ |
96 | 96 |
// TaxonNode newTaxonNode = newParentTreeNode.addChildNode(taxonNode, |
eu.etaxonomy.taxeditor.store/OSGI-INF/l10n/bundle.properties | ||
---|---|---|
130 | 130 |
page.name.29 = Editor Profile |
131 | 131 |
page.name.30 = Language |
132 | 132 |
command.label.clone = Clone |
133 |
command.label.openInSpecimenEditor = Open in Specimen Editor |
|
133 |
command.label.openInSpecimenEditor = Open in Specimen Editor |
|
134 |
page.name.31 = Order of Taxonnodes |
|
135 |
extension.name.0 = Popup Menu Commands |
|
136 |
command.name.8 = Clone Datasource |
|
137 |
command.name.9 = Open Feature Tree Editor Wizard |
|
138 |
command.name.10 = Open Password Wizzard |
|
139 |
command.name.11 = Open Distribution Editor Wizard |
|
140 |
command.name.12 = Connect |
|
141 |
wizard.name.18 = CSV |
|
142 |
wizard.name.19 = CSV_NAME |
|
143 |
wizard.name.20 = CSV_PRINT |
|
144 |
activity.description = DELETE permission dependent ui contributions |
|
145 |
activity.name = Delete |
|
146 |
activity.description.0 = UPDATE permission dependent ui contributions |
|
147 |
activity.name.0 = Update |
|
148 |
activity.description.1 = CREATE permission dependent ui contributions |
|
149 |
activity.name.1 = Delete |
|
150 |
activity.description.2 = ROLE_USER_MANAGER dependent ui contributions |
|
151 |
activity.name.2 = UserManagement |
|
152 |
activity.description.3 = ROLE_PROJECT_MANAGER dependent ui contributions |
|
153 |
activity.name.3 = ProjectManagement |
|
154 |
extension-point.name = Cdm Viewer |
|
155 |
Bundle-Vendor = EDIT |
|
156 |
Bundle-Name = DataStore Bundle |
|
157 |
command.name.13 = delete |
|
158 |
command.name.14 = delete |
eu.etaxonomy.taxeditor.store/OSGI-INF/l10n/messages.properties | ||
---|---|---|
14 | 14 |
LanguageEditorPreferencePage_EditorHasToRestart=The application has to be restarted, in order to complete the language switch.\nDo you want to restart now? |
15 | 15 |
LanguageEditorPreferencePage_PleaseRestart=Please Restart |
16 | 16 |
LanguageEditorPreferencePage_RestartRequired=After changing the default language, a restart is required,\nin order for the new settings to take effect. |
17 |
OrderPreferencePage_NewNavigatorWindowRequired=After changing the order of the taxon nodes, closing and reopen of the taxon navigator is required. |
|
18 |
OrderPreferencePage_PleaseReopenNavigator=Please close and reopen the taxon navigator. |
eu.etaxonomy.taxeditor.store/OSGI-INF/l10n/messages_de.properties | ||
---|---|---|
13 | 13 |
LanguageEditorPreferencePage_ChooseDefaultLanguage=Bitte w?hlen Sie die Standardsprache f?r den Taxonomischen Editor aus. |
14 | 14 |
LanguageEditorPreferencePage_EditorHasToRestart=Der Anwendung muss neu gestartet werden, um die Sprache zu wechseln.\nWollen Sie jetzt neu starten? |
15 | 15 |
LanguageEditorPreferencePage_PleaseRestart=Bitte neu starten |
16 |
LanguageEditorPreferencePage_RestartRequired=Nach dem Wechsel der Standardsprache ist ein Neustart erforderlich. |
|
16 |
LanguageEditorPreferencePage_RestartRequired=Nach dem Wechsel der Standardsprache ist ein Neustart erforderlich. |
|
17 |
OrderPreferencePage_NewNavigatorWindowRequired=Nach dem ?ndern der Taxon Sortierung, ist das Schlie?en und erneute ?ffnen des taxon Navigators erforderlich. |
eu.etaxonomy.taxeditor.store/plugin.xml | ||
---|---|---|
1 | 1 |
<?xml version="1.0" encoding="UTF-8"?> |
2 | 2 |
<?eclipse version="3.2"?> |
3 | 3 |
<plugin> |
4 |
<extension-point id="eu.etaxonomy.taxeditor.store.cdmViewer" name="Cdm Viewer" schema="schema/eu.etaxonomy.taxeditor.store.cdmViewer.exsd"/>
|
|
4 |
<extension-point id="eu.etaxonomy.taxeditor.store.cdmViewer" name="%extension-point.name" schema="schema/eu.etaxonomy.taxeditor.store.cdmViewer.exsd"/>
|
|
5 | 5 |
<extension |
6 | 6 |
point="org.eclipse.ui.preferencePages"> |
7 | 7 |
<page |
... | ... | |
206 | 206 |
id="eu.etaxonomy.taxeditor.preference.defaultlanguagepditorpreferencePage" |
207 | 207 |
name="%page.name.30"> |
208 | 208 |
</page> |
209 |
<page |
|
210 |
category="eu.etaxonomy.taxeditor.preferences.general" |
|
211 |
class="eu.etaxonomy.taxeditor.preference.OrderPreferences" |
|
212 |
id="eu.etaxonomy.taxeditor.preference.OrderPreferencesPage" |
|
213 |
name="%page.name.31"> |
|
214 |
</page> |
|
209 | 215 |
</extension> |
210 | 216 |
<extension |
211 | 217 |
point="org.eclipse.ui.views"> |
... | ... | |
437 | 443 |
visible="true"> |
438 | 444 |
</separator> |
439 | 445 |
<command |
440 |
commandId="org.eclipse.ui.edit.delete"
|
|
446 |
commandId="eu.etaxonomy.taxeditor.view.datasource.delete"
|
|
441 | 447 |
label="%command.label.9" |
442 | 448 |
style="push"> |
443 | 449 |
<visibleWhen> |
... | ... | |
516 | 522 |
</command> |
517 | 523 |
</menu> |
518 | 524 |
<command |
519 |
commandId="org.eclipse.ui.edit.delete"
|
|
525 |
commandId="eu.etaxonomy.taxeditor.editor.definedTerms.delete"
|
|
520 | 526 |
label="%command.label.14" |
521 | 527 |
style="push"> |
522 | 528 |
<visibleWhen |
... | ... | |
550 | 556 |
point="org.eclipse.ui.handlers"> |
551 | 557 |
<handler |
552 | 558 |
class="eu.etaxonomy.taxeditor.view.datasource.handler.DeleteDataSourceHandler" |
553 |
commandId="org.eclipse.ui.edit.delete">
|
|
559 |
commandId="eu.etaxonomy.taxeditor.view.datasource.delete">
|
|
554 | 560 |
<activeWhen> |
555 | 561 |
<with |
556 | 562 |
variable="activePartId"> |
... | ... | |
562 | 568 |
</handler> |
563 | 569 |
<handler |
564 | 570 |
class="eu.etaxonomy.taxeditor.editor.definedterm.handler.DeleteTermBaseHandler" |
565 |
commandId="org.eclipse.ui.edit.delete">
|
|
571 |
commandId="eu.etaxonomy.taxeditor.editor.definedTerms.delete">
|
|
566 | 572 |
<activeWhen> |
567 | 573 |
<with |
568 | 574 |
variable="activePartId"> |
... | ... | |
608 | 614 |
</handler> |
609 | 615 |
</extension> |
610 | 616 |
<extension |
611 |
name="Popup Menu Commands"
|
|
617 |
name="%extension.name.0"
|
|
612 | 618 |
point="org.eclipse.ui.commands"> |
613 | 619 |
<command |
614 | 620 |
defaultHandler="eu.etaxonomy.taxeditor.view.datasource.handler.ChangeConnectionHandler" |
... | ... | |
623 | 629 |
<command |
624 | 630 |
defaultHandler="eu.etaxonomy.taxeditor.view.datasource.handler.CloneDataSourceHandler" |
625 | 631 |
id="eu.etaxonomy.taxeditor.store.datasource.clone" |
626 |
name="Clone Datasource">
|
|
632 |
name="%command.name.8">
|
|
627 | 633 |
</command> |
628 | 634 |
<command |
629 | 635 |
defaultHandler="eu.etaxonomy.taxeditor.view.datasource.handler.CreateDataSourceHandler" |
... | ... | |
635 | 641 |
id="eu.etaxonomy.taxeditor.store.datasource.close" |
636 | 642 |
name="%command.name.2"> |
637 | 643 |
</command> |
644 |
<command |
|
645 |
defaultHandler="eu.etaxonomy.taxeditor.view.datasource.handler.DeleteDataSourceHandler" |
|
646 |
id="eu.etaxonomy.taxeditor.view.datasource.delete" |
|
647 |
name="%command.name.13"> |
|
648 |
</command> |
|
638 | 649 |
<command |
639 | 650 |
defaultHandler="eu.etaxonomy.taxeditor.view.datasource.handler.UpdateDataSourceHandler" |
640 | 651 |
id="eu.etaxonomy.taxeditor.store.datasource.update" |
... | ... | |
666 | 677 |
</command> |
667 | 678 |
<command |
668 | 679 |
id="eu.etaxonomy.taxeditor.store.open.FeatureTreeEditorWizard" |
669 |
name="Open Feature Tree Editor Wizard">
|
|
680 |
name="%command.name.9">
|
|
670 | 681 |
</command> |
671 | 682 |
<command |
672 | 683 |
id="eu.etaxonomy.taxeditor.store.openPasswordWizzard" |
673 |
name="Open Password Wizzard">
|
|
684 |
name="%command.name.10">
|
|
674 | 685 |
</command> |
675 | 686 |
<command |
676 | 687 |
id="eu.etaxonomy.taxeditor.store.open.OpenDistributionEditorWizardHandler" |
677 |
name="Open Distribution Editor Wizard">
|
|
688 |
name="%command.name.11">
|
|
678 | 689 |
</command> |
679 | 690 |
<command |
680 | 691 |
defaultHandler="eu.etaxonomy.taxeditor.view.datasource.handler.ChangeConnectionHandler" |
681 | 692 |
id="eu.etaxonomy.taxeditor.datasource.connect" |
682 |
name="Connect"> |
|
693 |
name="%command.name.12"> |
|
694 |
</command> |
|
695 |
<command |
|
696 |
defaultHandler="eu.etaxonomy.taxeditor.editor.definedterm.handler.DeleteTermBaseHandler" |
|
697 |
id="eu.etaxonomy.taxeditor.editor.definedTerms.delete" |
|
698 |
name="%command.name.14"> |
|
683 | 699 |
</command> |
684 | 700 |
</extension> |
685 | 701 |
<extension |
... | ... | |
775 | 791 |
category="eu.etaxonomy.taxeditor.export.category.cdm" |
776 | 792 |
class="eu.etaxonomy.taxeditor.io.wizard.CsvExportWizard" |
777 | 793 |
id="eu.etaxonomy.taxeditor.io.export.csv" |
778 |
name="CSV">
|
|
794 |
name="%wizard.name.18">
|
|
779 | 795 |
</wizard> |
780 | 796 |
<wizard |
781 | 797 |
category="eu.etaxonomy.taxeditor.export.category.cdm" |
782 | 798 |
class="eu.etaxonomy.taxeditor.io.wizard.CsvNameExportWizard" |
783 |
id="eu.etaxonomy.taxeditor.io.export.csv" |
|
784 |
name="CSV-Names"> |
|
799 |
id="eu.etaxonomy.taxeditor.io.export.csv_name" |
|
800 |
name="%wizard.name.19"> |
|
801 |
</wizard> |
|
802 |
<wizard |
|
803 |
category="eu.etaxonomy.taxeditor.export.category.cdm" |
|
804 |
class="eu.etaxonomy.taxeditor.io.wizard.CsvPrintExportWizard" |
|
805 |
id="eu.etaxonomy.taxeditor.io.export.csv_print" |
|
806 |
name="%wizard.name.20"> |
|
785 | 807 |
</wizard> |
786 | 808 |
</extension> |
787 | 809 |
<extension |
... | ... | |
1190 | 1212 |
<extension |
1191 | 1213 |
point="org.eclipse.ui.activities"> |
1192 | 1214 |
<activity |
1193 |
description="DELETE permission dependent ui contributions"
|
|
1215 |
description="%activity.description"
|
|
1194 | 1216 |
id="eu.etaxonomy.taxeditor.store.activityDelete" |
1195 |
name="Delete">
|
|
1217 |
name="%activity.name">
|
|
1196 | 1218 |
<enabledWhen> |
1197 | 1219 |
<reference |
1198 | 1220 |
definitionId="canDELETE"> |
... | ... | |
1204 | 1226 |
pattern="eu\.etaxonomy\.taxeditor\..*/.*.delete"> |
1205 | 1227 |
</activityPatternBinding> |
1206 | 1228 |
<activity |
1207 |
description="UPDATE permission dependent ui contributions"
|
|
1229 |
description="%activity.description.0"
|
|
1208 | 1230 |
id="eu.etaxonomy.taxeditor.store.activityUpdate" |
1209 |
name="Update">
|
|
1231 |
name="%activity.name.0">
|
|
1210 | 1232 |
<enabledWhen> |
1211 | 1233 |
<reference |
1212 | 1234 |
definitionId="canUPDATE"> |
... | ... | |
1218 | 1240 |
pattern="eu\.etaxonomy\.taxeditor\..*/.*.command\.update\..*"> |
1219 | 1241 |
</activityPatternBinding> |
1220 | 1242 |
<activity |
1221 |
description="CREATE permission dependent ui contributions"
|
|
1243 |
description="%activity.description.1"
|
|
1222 | 1244 |
id="eu.etaxonomy.taxeditor.store.activityCreate" |
1223 |
name="Delete">
|
|
1245 |
name="%activity.name.1">
|
|
1224 | 1246 |
<enabledWhen> |
1225 | 1247 |
<reference |
1226 | 1248 |
definitionId="canDELETE"> |
... | ... | |
1232 | 1254 |
pattern="eu\.etaxonomy\.taxeditor\..*/.*.command\.create\..*"> |
1233 | 1255 |
</activityPatternBinding> |
1234 | 1256 |
<activity |
1235 |
description="ROLE_USER_MANAGER dependent ui contributions"
|
|
1257 |
description="%activity.description.2"
|
|
1236 | 1258 |
id="eu.etaxonomy.taxeditor.store.activityUserManagement" |
1237 |
name="UserManagement">
|
|
1259 |
name="%activity.name.2">
|
|
1238 | 1260 |
<enabledWhen> |
1239 | 1261 |
<reference |
1240 | 1262 |
definitionId="hasROLE_USER_MANAGER"> |
... | ... | |
1250 | 1272 |
pattern="eu\.etaxonomy\.taxeditor\..*/bulkeditor\.input\.group"> |
1251 | 1273 |
</activityPatternBinding> |
1252 | 1274 |
<activity |
1253 |
description="ROLE_PROJECT_MANAGER dependent ui contributions"
|
|
1275 |
description="%activity.description.3"
|
|
1254 | 1276 |
id="eu.etaxonomy.taxeditor.store.activityProjectManagement" |
1255 |
name="ProjectManagement">
|
|
1277 |
name="%activity.name.3">
|
|
1256 | 1278 |
<enabledWhen> |
1257 | 1279 |
<reference |
1258 | 1280 |
definitionId="hasROLE_PROJECT_MANAGER"> |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/Messages.java | ||
---|---|---|
22 | 22 |
public static String LanguageEditorPreferencePage_EditorHasToRestart; |
23 | 23 |
public static String LanguageEditorPreferencePage_PleaseRestart; |
24 | 24 |
public static String LanguageEditorPreferencePage_RestartRequired; |
25 |
public static String OrderPreferencePage_NewNavigatorWindowRequired; |
|
26 |
public static String OrderPreferencePage_PleaseReopenNavigator; |
|
25 | 27 |
public static String CdmDataSourceViewPart_1; |
26 | 28 |
public static String CdmDataSourceViewPart_10; |
27 | 29 |
public static String CdmDataSourceViewPart_11; |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/IPreferenceKeys.java | ||
---|---|---|
89 | 89 |
|
90 | 90 |
/** Constant <code>SORT_RANKS_HIERARCHICHALLY="eu.etaxonomy.taxeditor.menus.sortRanksH"{trunked}</code> */ |
91 | 91 |
public static final String SORT_RANKS_HIERARCHICHALLY = "eu.etaxonomy.taxeditor.menus.sortRanksHierarchichally"; |
92 |
|
|
92 |
/** Constant <code>SORT_NODES_NATURALL="eu.etaxonomy.taxeditor.menus.sortNodesN"{trunked}</code> */ |
|
93 |
public static final String SORT_NODES_NATURALLY = "eu.etaxonomy.taxeditor.menus.sortNodesNaturally"; |
|
94 |
|
|
93 | 95 |
/** |
94 | 96 |
* Whether multilanguage text fields should be editable in multiple languages. |
95 | 97 |
*/ |
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/PreferencesUtil.java | ||
---|---|---|
751 | 751 |
ctrl.setEnabled(enabled); |
752 | 752 |
} |
753 | 753 |
} |
754 |
|
|
755 |
/** |
|
756 |
* <p> |
|
757 |
* getSortRanksNaturally |
|
758 |
* </p> |
|
759 |
* |
|
760 |
* @return a boolean. |
|
761 |
*/ |
|
762 |
public static boolean getSortNodesNaturally() { |
|
763 |
return getPreferenceStore().getBoolean(SORT_NODES_NATURALLY); |
|
764 |
} |
|
765 |
|
|
766 |
/** |
|
767 |
* <p> |
|
768 |
* setSortRanksNaturally |
|
769 |
* </p> |
|
770 |
* |
|
771 |
* @param selection |
|
772 |
* a boolean. |
|
773 |
*/ |
|
774 |
public static void setSortNodesNaturally(boolean selection) { |
|
775 |
getPreferenceStore().setValue(SORT_NODES_NATURALLY, selection); |
|
776 |
} |
|
754 | 777 |
} |
Also available in: Unified diff
make the order of the taxon nodes editable