Revision c0e5fd02
Added by Katja Luther over 10 years ago
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/DeleteHandler.java | ||
---|---|---|
62 | 62 |
|
63 | 63 |
String plural = selection.size() > 1 ? "s" : ""; |
64 | 64 |
// Prompt user for confirmation |
65 |
if(! MessageDialog.openConfirm(HandlerUtil.getActiveShell(event), "Confirm Deletion", "Are you sure you want to delete the selected node" + plural +"?")){ |
|
66 |
return null; |
|
67 |
} |
|
65 |
|
|
66 |
|
|
68 | 67 |
|
69 | 68 |
Iterator selectionIterator = selection.iterator(); |
70 | 69 |
Set<ITaxonTreeNode> treeNodes = new HashSet<ITaxonTreeNode>(); |
... | ... | |
85 | 84 |
if (treeNodes.size() == 1 ){ |
86 | 85 |
try { |
87 | 86 |
|
87 |
ITaxonTreeNode treeNode = treeNodes.iterator().next(); |
|
88 |
ITaxonTreeNode taxonNode =treeNode; |
|
89 |
|
|
90 |
if (taxonNode instanceof Classification && taxonNode.hasChildNodes()){ |
|
91 |
if(! MessageDialog.openConfirm(HandlerUtil.getActiveShell(event), "Confirm Deletion", "Do you really want to delete the classification? The tree has children, they will be deleted, too")){ |
|
92 |
return null; |
|
93 |
} |
|
94 |
} else if (taxonNode instanceof Classification && !taxonNode.hasChildNodes()){ |
|
95 |
if(! MessageDialog.openConfirm(HandlerUtil.getActiveShell(event), "Confirm Deletion", "Do you really want to delete the classification?")){ |
|
96 |
return null; |
|
97 |
} |
|
98 |
} else { |
|
99 |
if(! MessageDialog.openConfirm(HandlerUtil.getActiveShell(event), "Confirm Deletion", "Do you really want to delete the selected node?")){ |
|
100 |
return null; |
|
101 |
} |
|
102 |
} |
|
88 | 103 |
|
89 | 104 |
if (allEditorsClosed){ |
90 |
ITaxonTreeNode treeNode = treeNodes.iterator().next(); |
|
91 |
/*if (treeNode instanceof Classification){ |
|
92 |
operation = new DeleteOperation( |
|
93 |
event.getCommand().getName(), NavigationUtil.getUndoContext(), |
|
94 |
treeNodes, new TaxonDeletionConfigurator(), taxonNavigator, taxonNavigator); |
|
95 |
|
|
96 |
NavigationUtil.executeOperation(operation); |
|
97 |
}else {*/ |
|
98 |
ITaxonTreeNode taxonNode =treeNode; |
|
105 |
/*if(! MessageDialog.openConfirm(HandlerUtil.getActiveShell(event), "Confirm Deletion", "Do you really want to delete the selected nodes?")){ |
|
106 |
return null; |
|
107 |
}*/ |
|
99 | 108 |
operation = new DeleteOperation( |
100 | 109 |
event.getCommand().getName(), NavigationUtil.getUndoContext(), |
101 | 110 |
taxonNode, new TaxonDeletionConfigurator(), taxonNavigator, taxonNavigator); |
... | ... | |
111 | 120 |
} |
112 | 121 |
} else{ |
113 | 122 |
try{ |
123 |
if(! MessageDialog.openConfirm(HandlerUtil.getActiveShell(event), "Confirm Deletion", "Do you really want to delete the selected nodes?")){ |
|
124 |
return null; |
|
125 |
} |
|
114 | 126 |
if (allEditorsClosed){ |
115 | 127 |
operation = new DeleteOperation( |
116 | 128 |
event.getCommand().getName(), NavigationUtil.getUndoContext(), |
Also available in: Unified diff
delete whole classification with children