removed old projects
authorn.hoffmann <n.hoffmann@localhost>
Wed, 13 Jan 2010 12:37:00 +0000 (12:37 +0000)
committern.hoffmann <n.hoffmann@localhost>
Wed, 13 Jan 2010 12:37:00 +0000 (12:37 +0000)
633 files changed:
.gitattributes
.gitignore
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/.classpath [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/.project [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/META-INF/MANIFEST.MF [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/build.properties [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/eu.etaxonomy.taxeditor.designproposal1.product [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/a_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg2.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_32.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/db.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/delete.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.ico [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/rel_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/save.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/text.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/undo.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/plugin.xml [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/splash.bmp [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/com/swtdesigner/ResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/com/swtdesigner/SWTResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Activator.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Application.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationActionBarAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationWorkbenchAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationWorkbenchWindowAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Perspective.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/controller/OpenNameEditorAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/controller/SaveNameAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/model/NameEditorInput.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/model/TaxonName.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/CarduusEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/EditNameProperties.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/EmptyEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MoveDialogView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MultiPagePilosellaView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MyCompletionProcessor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MyRuleScanner.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MySourceViewerConfig.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/NameEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/NameListView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/PilosellaEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/UndoView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/.classpath [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/.project [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/META-INF/MANIFEST.MF [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/build.properties [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/eu.etaxonomy.taxeditor.designproposal2.product [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/a_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg2.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_32.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/db.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/delete.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.ico [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/rel_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/save.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/text.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/undo.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/plugin.xml [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/splash.bmp [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/com/swtdesigner/ResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/com/swtdesigner/SWTResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Activator.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Application.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationActionBarAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationWorkbenchAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationWorkbenchWindowAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Perspective.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/controller/OpenNameEditorAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/controller/SaveNameAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/model/NameEditorInput.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/model/TaxonName.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/CarduusEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/EditNameProperties.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/EmptyEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MoveDialogView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MultiPagePilosellaView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MyCompletionProcessor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MyRuleScanner.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MySourceViewerConfig.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/NameEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/NameListView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/PilosellaEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/UndoView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.feature/.project [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.feature/build.properties [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.feature/feature.xml [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/.classpath [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/.project [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/META-INF/MANIFEST.MF [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/Prototype1.product [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Activator.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application$1.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Perspective.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView$1.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$1.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$2.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$1.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewContentProvider.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewLabelProvider.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView.class [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/build.properties [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_32.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/basionym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/concept.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/edit_16x16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/heterosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homonym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/misapplied.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/orthovariant.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/repsyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/unknown.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/plugin.xml [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/com/swtdesigner/ResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/com/swtdesigner/SWTResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Activator.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Application.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Perspective.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/DeleteNameAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/SaveNameAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/AbstractModelObject.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/NameEditorInput.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/TaxonName.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/EditNameProperties.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/GenericObservableMapCellLabelProvider.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MyCompletionProcessor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MyRuleScanner.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MySourceViewerConfig.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/NameEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/NameListView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/.classpath [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/.project [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/META-INF/MANIFEST.MF [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/build.properties [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/eu.etaxonomy.taxeditor.prototype2.product [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/a_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_edit.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg2.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_32.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/change.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/correction_change.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/db.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete_edit.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.ico [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/impl_co.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/rel_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save_edit.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/text.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/undo.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/warn_tsk.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/plugin.xml [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/splash.bmp [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/com/swtdesigner/ResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/com/swtdesigner/SWTResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Activator.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Application.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationActionBarAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationWorkbenchAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationWorkbenchWindowAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Perspective.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionAddQuickName.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionAddSynonymToTaxon.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionDeleteTaxon.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionMoveTaxon.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionOpenNameEditor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionOpenNewChildNameEditor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionPopulatePropertySheet.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionRemoveTaxonFromTree.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionSaveTaxon.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/NameTransfer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/SynonymRelationshipTransfer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/TaxonTransfer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/NameEditorInput.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/NameTreeContentProvider.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/PropertySheetNode.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/AcceptedNameViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/CarduusEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/EditNameProperties.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/EmptyEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/MoveDialogView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/MultiPageTaxonView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameListView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameViewer_.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/PilosellaEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/PropertySheetViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/RecentNamesTableViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/RelatedNameViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/TaxonomicTreeViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/Testeroo.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/UndoView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/AnnotationMarkerAccess.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/CompositeRectangle.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/ErrorAnnotation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/GroupComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MyCompletionProcessor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MyRuleScanner.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MySourceViewerConfig.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDamagerRepairer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDocument.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDocumentListener.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitionScanner.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitionScanner_.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitioner.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitioner__.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerConfig.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerKeyListener.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerModifyListener.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerVerifyListener.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/SimpleNamePartitioner.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/TesterooWritableSet.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/WarningAnnotation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/heterosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/homosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetContentProvider.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetValueEditingSupport.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetValueLabelProvider.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/.classpath [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/.project [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/META-INF/MANIFEST.MF [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/build.properties [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/eu.etaxonomy.taxeditor.product [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_16x16.bmp [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_32x32.bmp [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_48x48.bmp [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/EDIT-logo.jpg [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/Thumbs.db [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/a_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted_small.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/add.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/add_edit.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg2.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_32.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/autonym_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/change.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/close_view.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/concept.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/concept_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/correction_change.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/db.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/delete.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/delete_edit.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.ico [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/error_co.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/file_obj.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/form_banner.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/garland_logo.png [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/help_topic.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_original_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_original_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.ico [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.png [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/large_image.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/linkto_help.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/move.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/move_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/new_child.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/newprj_wiz.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/open.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/quick_add.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_error_obj.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_warning_obj.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/rel_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/sample.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/save.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/save_edit.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/swap.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/swap2.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/tax_to_syn.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/text.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/th_horizontal.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/th_vertical.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/undo.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown_no_bg.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/icons/warn_tsk.gif [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/log4j.properties [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/plugin.xml [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/plugin_customization.ini [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/splash.bmp [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/com/swtdesigner/ResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/com/swtdesigner/SWTResourceManager.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/Application.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationActionBarAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationWorkbenchAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationWorkbenchWindowAdvisor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/FreetextPropertiesPerspective.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ITaxEditorConstants.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/Messages.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/SideBySidePerspective.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/TaxEditorPlugin.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/NameTransfer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/SaveAllAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/SynonymRelationshipTransfer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/TaxEditorActionFactory.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/TaxonTransfer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/UndoableAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/WidgetTransfer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/CreateNameRelationAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/DeleteNameRelationAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/DeleteTaxonAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/MoveTaxonAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/SaveTaxonAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/SwapSynonymAndTaxonAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/images/AddImageAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/images/RemoveImageAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/io/ExportAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/io/ImportAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeConceptRelationAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeSynonymToConceptRelationAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeSynonymToMisapplicationAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateAutonymAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateConceptRelationAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateHeterotypicSynonymAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateMisappliedNameAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateNewTaxonFromSynonymAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateSynonymInGroupAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateTaxonomicallyIncludedTaxonAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/MakeBasionymAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/Messages.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/RemoveConceptAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/RemoveSynonymAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/UnmakeBasionymAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/messages.properties [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/ChangeTaxonToSynonymAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/MoveTaxonDialogAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNameRelationWizardAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNameRelationsListWizardAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNewTaxonEditorAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenTaxonEditorAction.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/EditorController.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/GlobalController.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/PreferencesController.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/PropertySheetController.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/SearchController.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/TreeController.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmDataSourceDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmDataSourceRepository.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmTransactionController.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/ICdmDataSourceRepository.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/RegisterDatabaseDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/AbstractTaxonEditor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/CompositeBorderDecorator.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ContextMenu.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/EmptyEditorView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/EmptyTextViewerPrompt.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ErrorAnnotation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/FreeTextElementFactory.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupCompositeLabel.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupedComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/IFreeTextElementFactory.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/IHasPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineBreakListener.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineWrapSquigglesStrategy.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineWrapSupport.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MenuConstants.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditorActionBarContributor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ParseListener.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SelectTaxonDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SimpleSelectionProvider.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/TemporaryTaxon.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/UndoView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ViewerConfiguration.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/WarningAnnotation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/CommonNameComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionElementComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionFeatureGroupComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionGroupComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionLabelComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DistributionDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/IDescriptionEditorCompositeRepository.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/LanguageDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/TaxonDescriptionEditor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImageComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImagesController.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImagesGroupComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/TaxonHasNoImagesComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/TaxonImagesEditor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/UrlDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/AcceptedNameComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/CdmParserController.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/ConceptComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/ConceptGroupComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/HomotypicalGroupComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/INameEditorCompositeRepository.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/IterableSynonymyList.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/MisappliedGroupComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/MisappliedNameComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/NameComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/NameViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/RulerWithIcon.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/SynonymComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/IReferenceSearch.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/ReferenceSearchDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/ReferenceSelectComposite.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/AddTaxonomicChildHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHeterotypicSynonymHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHomotypicSynonymHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateMisappliedNameHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/DeleteTaxonHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditNewTaxonHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditTaxonHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/ExportHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/ImportHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/MoveTaxonHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/NewTaxonHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/OpenTaxonHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/SaveAllHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/SwapTaxonSynonymHandler.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard2.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/CdmSessionDataRepository.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/CdmUtil.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/DescriptionUtil.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ICdmSessionDataRepository.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ICdmTaxonSetListener.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/IDistributionInfoProvider.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/LanguageUtil.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/NameEditorInput.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ReferenceUtil.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/FavoritesTableViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/FavoritesView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/QuickNameTaxon.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/RecentNamesTableViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/RecentNamesView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchResult.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchResultView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeContentProvider.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeLabelProvider.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeView.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeViewer.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/AbstractEditorOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/ChangeTaxonToSynonymOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/DeleteTaxonOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/MoveTaxonOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/description/AddElementOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/description/RemoveElementOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/images/AddImageOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/images/RemoveImageOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeConceptRelationOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeHomotypicGroupOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeMisappliedNameToSynonymOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToConceptOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToMisappliedNameOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToTaxonOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateConceptRelationOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateMisappliedNameOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateSynonymInExisitingHomotypicalGroupOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateSynonymInNewGroupOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/MakeSynonymAcceptedOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/MakeSynonymGroupBasionymOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveConceptRelationOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveMisappliedNameOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveSynonymOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/UnmakeSynonymGroupBasionymOperation.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/CdmPreferences.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/DescriptionPreferences.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/FeaturePreferences.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/InitNomenclaturalCodePrefDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/InitializeDbPreferences.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/NomenclaturalCodePreferences.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/RankMenuPreferences.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/TaxonomicPreferences.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationsDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationsPropertyDescriptor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CheckboxPropertyDescriptor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CollectionPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CompletionProcessor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/DayValidator.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/EditorPropertySheetEntry.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/MarkersPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/SourceViewerConfig.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/TimePeriodPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/YearValidator.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/CommonNamePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/DescriptionElementPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/TaxonDescriptionPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/images/ImagePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/BotanicalNamePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NameRelationsPropertyDescriptor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NameRelationsPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NomStatusPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NonViralNamePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/ScientificNamePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/TaxonBasePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/ZoologicalNamePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ChooseRelatedNameWizardPage.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ChooseRelationTypeWizardPage.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ListNameRelationsWizardPage.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationWizard.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationWizardModel.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationsListWizard.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/NomenclaturalReferencePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferencePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferenceSearchDescriptor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/SingleRefTypePropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypeCollectionPropertySource.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypePropertyDescriptor.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ChooseNameTypeWizardPage.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ChooseSpecimenTypeWizardPage.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ListTypeWizardPage.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/NameSearchDialog.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeDesignationWizard.java [deleted file]
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeListWizard.java [deleted file]
taxeditor-feature-dependencies/.project [deleted file]
taxeditor-feature-dependencies/build.properties [deleted file]
taxeditor-feature-dependencies/feature.xml [deleted file]
taxeditor-feature/.project [deleted file]
taxeditor-feature/build.properties [deleted file]
taxeditor-feature/feature.xml [deleted file]
taxeditor-updateSite/.project [deleted file]
taxeditor-updateSite/index.html [deleted file]
taxeditor-updateSite/site.xml [deleted file]
taxeditor-updateSite/web/site.css [deleted file]
taxeditor-updateSite/web/site.xsl [deleted file]

index 7853a0378181aa30a8386819e4cea7a6a6a5dcbb..d2d5ce2c96909ff660342b5390758e2e26248df5 100644 (file)
@@ -1,624 +1,4 @@
 * text=auto !eol
 * text=auto !eol
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/.classpath -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/.project -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/META-INF/MANIFEST.MF -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/build.properties -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/eu.etaxonomy.taxeditor.designproposal1.product -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/a_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg2.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_32.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/db.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/delete.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.ico -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/rel_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/save.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/text.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/undo.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/plugin.xml -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/splash.bmp -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/com/swtdesigner/ResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/com/swtdesigner/SWTResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Activator.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Application.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationActionBarAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationWorkbenchAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationWorkbenchWindowAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Perspective.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/controller/OpenNameEditorAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/controller/SaveNameAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/model/NameEditorInput.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/model/TaxonName.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/CarduusEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/EditNameProperties.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/EmptyEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MoveDialogView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MultiPagePilosellaView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MyCompletionProcessor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MyRuleScanner.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MySourceViewerConfig.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/NameEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/NameListView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/PilosellaEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/UndoView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/.classpath -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/.project -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/META-INF/MANIFEST.MF -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/build.properties -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/eu.etaxonomy.taxeditor.designproposal2.product -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/a_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg2.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_32.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/db.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/delete.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.ico -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/rel_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/save.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/text.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/undo.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/plugin.xml -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/splash.bmp -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/com/swtdesigner/ResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/com/swtdesigner/SWTResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Activator.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Application.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationActionBarAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationWorkbenchAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationWorkbenchWindowAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Perspective.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/controller/OpenNameEditorAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/controller/SaveNameAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/model/NameEditorInput.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/model/TaxonName.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/CarduusEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/EditNameProperties.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/EmptyEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MoveDialogView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MultiPagePilosellaView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MyCompletionProcessor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MyRuleScanner.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MySourceViewerConfig.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/NameEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/NameListView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/PilosellaEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/UndoView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.feature/.project -text
-eclipseprojects/eu.etaxonomy.taxeditor.feature/build.properties -text
-eclipseprojects/eu.etaxonomy.taxeditor.feature/feature.xml -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/.classpath -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/.project -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/META-INF/MANIFEST.MF -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/Prototype1.product -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Activator.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application$1.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Perspective.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView$1.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$1.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$2.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$1.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewContentProvider.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewLabelProvider.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView.class -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/build.properties -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_32.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/basionym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/concept.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/edit_16x16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/heterosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homonym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/misapplied.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/orthovariant.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/repsyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/unknown.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/plugin.xml -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/com/swtdesigner/ResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/com/swtdesigner/SWTResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Activator.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Application.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Perspective.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/DeleteNameAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/SaveNameAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/AbstractModelObject.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/NameEditorInput.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/TaxonName.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/EditNameProperties.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/GenericObservableMapCellLabelProvider.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MyCompletionProcessor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MyRuleScanner.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MySourceViewerConfig.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/NameEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/NameListView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/.classpath -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/.project -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/META-INF/MANIFEST.MF -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/build.properties -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/eu.etaxonomy.taxeditor.prototype2.product -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/a_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_edit.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg2.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_32.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/change.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/correction_change.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/db.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete_edit.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.ico -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/impl_co.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/rel_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save_edit.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/text.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/undo.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/warn_tsk.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/plugin.xml -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/splash.bmp -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/com/swtdesigner/ResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/com/swtdesigner/SWTResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Activator.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Application.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationActionBarAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationWorkbenchAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationWorkbenchWindowAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Perspective.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionAddQuickName.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionAddSynonymToTaxon.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionDeleteTaxon.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionMoveTaxon.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionOpenNameEditor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionOpenNewChildNameEditor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionPopulatePropertySheet.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionRemoveTaxonFromTree.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionSaveTaxon.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/NameTransfer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/SynonymRelationshipTransfer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/TaxonTransfer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/NameEditorInput.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/NameTreeContentProvider.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/PropertySheetNode.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/AcceptedNameViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/CarduusEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/EditNameProperties.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/EmptyEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/MoveDialogView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/MultiPageTaxonView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameListView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameViewer_.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/PilosellaEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/PropertySheetViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/RecentNamesTableViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/RelatedNameViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/TaxonomicTreeViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/Testeroo.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/UndoView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/AnnotationMarkerAccess.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/CompositeRectangle.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/ErrorAnnotation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/GroupComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MyCompletionProcessor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MyRuleScanner.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MySourceViewerConfig.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDamagerRepairer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDocument.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDocumentListener.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitionScanner.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitionScanner_.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitioner.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitioner__.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerConfig.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerKeyListener.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerModifyListener.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerVerifyListener.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/SimpleNamePartitioner.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/TesterooWritableSet.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/WarningAnnotation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/heterosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/homosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetContentProvider.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetValueEditingSupport.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetValueLabelProvider.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/.classpath -text
-eclipseprojects/eu.etaxonomy.taxeditor/.project -text
-eclipseprojects/eu.etaxonomy.taxeditor/META-INF/MANIFEST.MF -text
-eclipseprojects/eu.etaxonomy.taxeditor/build.properties -text
-eclipseprojects/eu.etaxonomy.taxeditor/eu.etaxonomy.taxeditor.product -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_16x16.bmp -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_32x32.bmp -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_48x48.bmp -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/EDIT-logo.jpg -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/Thumbs.db -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/a_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted_small.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/add.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/add_edit.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg2.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_32.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/autonym_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/change.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/close_view.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/concept.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/concept_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/correction_change.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/db.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/delete.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/delete_edit.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.ico -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/error_co.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/file_obj.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/form_banner.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/garland_logo.png -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/help_topic.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_original_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_original_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.ico -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.png -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/large_image.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/linkto_help.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/move.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/move_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/new_child.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/newprj_wiz.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/open.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/quick_add.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_error_obj.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_warning_obj.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/rel_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/sample.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/save.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/save_edit.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/swap.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/swap2.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/tax_to_syn.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/text.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/th_horizontal.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/th_vertical.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/undo.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown_no_bg.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/icons/warn_tsk.gif -text
-eclipseprojects/eu.etaxonomy.taxeditor/log4j.properties -text
-eclipseprojects/eu.etaxonomy.taxeditor/plugin.xml -text
-eclipseprojects/eu.etaxonomy.taxeditor/plugin_customization.ini -text
-eclipseprojects/eu.etaxonomy.taxeditor/splash.bmp -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/com/swtdesigner/ResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/com/swtdesigner/SWTResourceManager.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/Application.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationActionBarAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationWorkbenchAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationWorkbenchWindowAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/FreetextPropertiesPerspective.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ITaxEditorConstants.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/Messages.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/SideBySidePerspective.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/TaxEditorPlugin.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/NameTransfer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/SaveAllAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/SynonymRelationshipTransfer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/TaxEditorActionFactory.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/TaxonTransfer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/UndoableAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/WidgetTransfer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/CreateNameRelationAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/DeleteNameRelationAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/DeleteTaxonAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/MoveTaxonAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/SaveTaxonAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/SwapSynonymAndTaxonAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/images/AddImageAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/images/RemoveImageAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/io/ExportAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/io/ImportAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeConceptRelationAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeSynonymToConceptRelationAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeSynonymToMisapplicationAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateAutonymAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateConceptRelationAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateHeterotypicSynonymAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateMisappliedNameAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateNewTaxonFromSynonymAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateSynonymInGroupAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateTaxonomicallyIncludedTaxonAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/MakeBasionymAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/Messages.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/RemoveConceptAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/RemoveSynonymAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/UnmakeBasionymAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/messages.properties -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/ChangeTaxonToSynonymAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/MoveTaxonDialogAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNameRelationWizardAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNameRelationsListWizardAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNewTaxonEditorAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenTaxonEditorAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/EditorController.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/GlobalController.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/PreferencesController.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/PropertySheetController.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/SearchController.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/TreeController.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmDataSourceDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmDataSourceRepository.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmTransactionController.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/ICdmDataSourceRepository.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/RegisterDatabaseDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/AbstractTaxonEditor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/CompositeBorderDecorator.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ContextMenu.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/EmptyEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/EmptyTextViewerPrompt.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ErrorAnnotation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/FreeTextElementFactory.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupCompositeLabel.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupedComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/IFreeTextElementFactory.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/IHasPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineBreakListener.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineWrapSquigglesStrategy.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineWrapSupport.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MenuConstants.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditorActionBarContributor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ParseListener.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SelectTaxonDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SimpleSelectionProvider.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/TemporaryTaxon.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/UndoView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ViewerConfiguration.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/WarningAnnotation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/CommonNameComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionElementComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionFeatureGroupComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionGroupComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionLabelComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DistributionDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/IDescriptionEditorCompositeRepository.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/LanguageDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/TaxonDescriptionEditor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImageComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImagesController.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImagesGroupComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/TaxonHasNoImagesComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/TaxonImagesEditor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/UrlDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/AcceptedNameComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/CdmParserController.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/ConceptComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/ConceptGroupComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/HomotypicalGroupComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/INameEditorCompositeRepository.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/IterableSynonymyList.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/MisappliedGroupComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/MisappliedNameComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/NameComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/NameViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/RulerWithIcon.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/SynonymComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/IReferenceSearch.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/ReferenceSearchDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/ReferenceSelectComposite.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/AddTaxonomicChildHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHeterotypicSynonymHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHomotypicSynonymHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateMisappliedNameHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/DeleteTaxonHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditNewTaxonHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditTaxonHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/ExportHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/ImportHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/MoveTaxonHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/NewTaxonHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/OpenTaxonHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/SaveAllHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/SwapTaxonSynonymHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard2.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/CdmSessionDataRepository.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/CdmUtil.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/DescriptionUtil.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ICdmSessionDataRepository.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ICdmTaxonSetListener.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/IDistributionInfoProvider.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/LanguageUtil.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/NameEditorInput.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ReferenceUtil.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/FavoritesTableViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/FavoritesView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/QuickNameTaxon.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/RecentNamesTableViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/RecentNamesView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchResult.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchResultView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeContentProvider.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeLabelProvider.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeViewer.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/AbstractEditorOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/ChangeTaxonToSynonymOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/DeleteTaxonOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/MoveTaxonOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/description/AddElementOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/description/RemoveElementOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/images/AddImageOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/images/RemoveImageOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeConceptRelationOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeHomotypicGroupOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeMisappliedNameToSynonymOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToConceptOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToMisappliedNameOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToTaxonOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateConceptRelationOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateMisappliedNameOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateSynonymInExisitingHomotypicalGroupOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateSynonymInNewGroupOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/MakeSynonymAcceptedOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/MakeSynonymGroupBasionymOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveConceptRelationOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveMisappliedNameOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveSynonymOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/UnmakeSynonymGroupBasionymOperation.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/CdmPreferences.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/DescriptionPreferences.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/FeaturePreferences.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/InitNomenclaturalCodePrefDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/InitializeDbPreferences.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/NomenclaturalCodePreferences.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/RankMenuPreferences.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/TaxonomicPreferences.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationsDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationsPropertyDescriptor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CheckboxPropertyDescriptor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CollectionPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CompletionProcessor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/DayValidator.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/EditorPropertySheetEntry.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/MarkersPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/SourceViewerConfig.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/TimePeriodPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/YearValidator.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/CommonNamePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/DescriptionElementPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/TaxonDescriptionPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/images/ImagePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/BotanicalNamePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NameRelationsPropertyDescriptor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NameRelationsPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NomStatusPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NonViralNamePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/ScientificNamePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/TaxonBasePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/ZoologicalNamePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ChooseRelatedNameWizardPage.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ChooseRelationTypeWizardPage.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ListNameRelationsWizardPage.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationWizard.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationWizardModel.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationsListWizard.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/NomenclaturalReferencePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferencePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferenceSearchDescriptor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/SingleRefTypePropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypeCollectionPropertySource.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypePropertyDescriptor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ChooseNameTypeWizardPage.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ChooseSpecimenTypeWizardPage.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ListTypeWizardPage.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/NameSearchDialog.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeDesignationWizard.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeListWizard.java -text
 /pom.xml -text
 taxeditor-annotatedlineeditor/META-INF/MANIFEST.MF -text
 taxeditor-annotatedlineeditor/build.properties -text
 /pom.xml -text
 taxeditor-annotatedlineeditor/META-INF/MANIFEST.MF -text
 taxeditor-annotatedlineeditor/build.properties -text
@@ -977,9 +357,6 @@ taxeditor-editor/src/test/java/eu/etaxonomy/taxeditor/editor/ApplicationActionBa
 taxeditor-editor/src/test/java/eu/etaxonomy/taxeditor/editor/ApplicationWorkbenchAdvisor.java -text
 taxeditor-editor/src/test/java/eu/etaxonomy/taxeditor/editor/ApplicationWorkbenchWindowAdvisor.java -text
 taxeditor-editor/src/test/java/eu/etaxonomy/taxeditor/editor/Perspective.java -text
 taxeditor-editor/src/test/java/eu/etaxonomy/taxeditor/editor/ApplicationWorkbenchAdvisor.java -text
 taxeditor-editor/src/test/java/eu/etaxonomy/taxeditor/editor/ApplicationWorkbenchWindowAdvisor.java -text
 taxeditor-editor/src/test/java/eu/etaxonomy/taxeditor/editor/Perspective.java -text
-taxeditor-feature-dependencies/.project -text
-taxeditor-feature-dependencies/build.properties -text
-taxeditor-feature-dependencies/feature.xml -text
 taxeditor-feature-product/.project -text
 taxeditor-feature-product/buckminster.cspex -text
 taxeditor-feature-product/buckminster_product.properties -text
 taxeditor-feature-product/.project -text
 taxeditor-feature-product/buckminster.cspex -text
 taxeditor-feature-product/buckminster_product.properties -text
@@ -989,9 +366,6 @@ taxeditor-feature-product/build/product.ant -text
 taxeditor-feature-product/feature.properties -text
 taxeditor-feature-product/feature.xml -text
 taxeditor-feature-product/taxeditor.product -text
 taxeditor-feature-product/feature.properties -text
 taxeditor-feature-product/feature.xml -text
 taxeditor-feature-product/taxeditor.product -text
-taxeditor-feature/.project -text
-taxeditor-feature/build.properties -text
-taxeditor-feature/feature.xml -text
 taxeditor-navigation/META-INF/MANIFEST.MF -text
 taxeditor-navigation/build.properties -text
 taxeditor-navigation/icons/edit_16x16.gif -text
 taxeditor-navigation/META-INF/MANIFEST.MF -text
 taxeditor-navigation/build.properties -text
 taxeditor-navigation/icons/edit_16x16.gif -text
@@ -1314,8 +688,3 @@ taxeditor-store/src/test/resources/eu/etaxonomy/taxeditor/store/CdmStoreTest.xml
 taxeditor-store/src/test/resources/eu/etaxonomy/taxeditor/store/ConcurrentSessionTest.xml -text
 taxeditor-store/src/test/resources/log4j.properties -text
 taxeditor-store/src/test/resources/unitils.properties -text
 taxeditor-store/src/test/resources/eu/etaxonomy/taxeditor/store/ConcurrentSessionTest.xml -text
 taxeditor-store/src/test/resources/log4j.properties -text
 taxeditor-store/src/test/resources/unitils.properties -text
-taxeditor-updateSite/.project -text
-taxeditor-updateSite/index.html -text
-taxeditor-updateSite/site.xml -text
-taxeditor-updateSite/web/site.css -text
-taxeditor-updateSite/web/site.xsl -text
index a25754c4fe7fb52acc3181ec17142d4d5a4e098f..42fb7e3a7779af31abd4944b61ecd25e06afeb74 100644 (file)
@@ -1,4 +1,3 @@
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/sandbox
 taxeditor-annotatedlineeditor/.classpath
 taxeditor-annotatedlineeditor/.project
 taxeditor-annotatedlineeditor/.settings
 taxeditor-annotatedlineeditor/.classpath
 taxeditor-annotatedlineeditor/.project
 taxeditor-annotatedlineeditor/.settings
@@ -16,7 +15,6 @@ taxeditor-editor/.settings
 taxeditor-editor/target
 taxeditor-feature-product/plugin_customization.ini
 taxeditor-feature-product/workspace
 taxeditor-editor/target
 taxeditor-feature-product/plugin_customization.ini
 taxeditor-feature-product/workspace
-taxeditor-feature/.project
 taxeditor-navigation/.classpath
 taxeditor-navigation/.project
 taxeditor-navigation/.settings
 taxeditor-navigation/.classpath
 taxeditor-navigation/.project
 taxeditor-navigation/.settings
@@ -25,8 +23,3 @@ taxeditor-store/.classpath
 taxeditor-store/.project
 taxeditor-store/.settings
 taxeditor-store/target
 taxeditor-store/.project
 taxeditor-store/.settings
 taxeditor-store/target
-taxeditor-updateSite/artifacts.xml
-taxeditor-updateSite/content.xml
-taxeditor-updateSite/features/*.jar
-taxeditor-updateSite/logs.zip
-taxeditor-updateSite/plugins/*.jar
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/.classpath b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/.classpath
deleted file mode 100644 (file)
index 0215967..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<classpath>\r
-       <classpathentry kind="src" path="src"/>\r
-       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>\r
-       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>\r
-       <classpathentry kind="output" path="bin"/>\r
-</classpath>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/.project b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/.project
deleted file mode 100644 (file)
index e4b6f8b..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<projectDescription>\r
-       <name>eu.etaxonomy.taxeditor.designproposal1</name>\r
-       <comment></comment>\r
-       <projects>\r
-       </projects>\r
-       <buildSpec>\r
-               <buildCommand>\r
-                       <name>org.eclipse.jdt.core.javabuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.ManifestBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.SchemaBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-       </buildSpec>\r
-       <natures>\r
-               <nature>org.eclipse.pde.PluginNature</nature>\r
-               <nature>org.eclipse.jdt.core.javanature</nature>\r
-       </natures>\r
-</projectDescription>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/META-INF/MANIFEST.MF b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/META-INF/MANIFEST.MF
deleted file mode 100644 (file)
index beb85f6..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Editor Design Proposal 1
-Bundle-SymbolicName: eu.etaxonomy.taxeditor.designproposal1;singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: eu.etaxonomy.taxeditor.designproposal1.Activator
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.ui.forms,
- org.eclipse.jface.text,
- org.eclipse.ui.editors
-Eclipse-LazyStart: true
-Export-Package: com.swtdesigner,
- eu.etaxonomy.taxeditor.designproposal1,
- eu.etaxonomy.taxeditor.designproposal1.controller,
- eu.etaxonomy.taxeditor.designproposal1.model,
- eu.etaxonomy.taxeditor.designproposal1.view
-Main-Class: eu.etaxonomy.taxeditor.designproposal1.Application
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/build.properties b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/build.properties
deleted file mode 100644 (file)
index ef1b9e5..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-source.. = src/\r
-output.. = bin/\r
-bin.includes = plugin.xml,\\r
-               META-INF/,\\r
-               .,\\r
-               icons/,\\r
-               splash.bmp,\\r
-               bin/,\\r
-               .project,\\r
-               .classpath,\\r
-               build.properties,\\r
-               eu.etaxonomy.taxeditor.designproposal1.product\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/eu.etaxonomy.taxeditor.designproposal1.product b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/eu.etaxonomy.taxeditor.designproposal1.product
deleted file mode 100644 (file)
index 33b4320..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<?pde version="3.1"?>\r
-\r
-<product name="EDIT Taxonomic Editor - Design Proposal 1" id="eu.etaxonomy.taxeditor.designproposal1.product" application="eu.etaxonomy.taxeditor.designproposal1.application" useFeatures="false">\r
-\r
-   <aboutInfo>\r
-      <image path="icons/edit_16x16.gif"/>\r
-      <text>\r
-         Thanks for all the laughs!\r
-      </text>\r
-   </aboutInfo>\r
-\r
-   <configIni use="default"/>\r
-\r
-   <launcherArgs>\r
-      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>\r
-   </launcherArgs>\r
-\r
-   <windowImages i16="icons/edit_16x16.gif"/>\r
-\r
-   <splash\r
-      location="eu.etaxonomy.taxeditor.designproposal1" />\r
-   <launcher name="EDIT Taxonomic Editor">\r
-      <solaris/>\r
-      <win useIco="true">\r
-         <ico path="/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.ico"/>\r
-         <bmp/>\r
-      </win>\r
-   </launcher>\r
-\r
-\r
-   <vm>\r
-      <windows type="jre">jre1.5.0_06</windows>\r
-   </vm>\r
-\r
-   <plugins>\r
-      <plugin id="com.ibm.icu"/>\r
-      <plugin id="eu.etaxonomy.taxeditor.designproposal1"/>\r
-      <plugin id="org.eclipse.core.commands"/>\r
-      <plugin id="org.eclipse.core.contenttype"/>\r
-      <plugin id="org.eclipse.core.databinding"/>\r
-      <plugin id="org.eclipse.core.expressions"/>\r
-      <plugin id="org.eclipse.core.jobs"/>\r
-      <plugin id="org.eclipse.core.runtime"/>\r
-      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>\r
-      <plugin id="org.eclipse.equinox.app"/>\r
-      <plugin id="org.eclipse.equinox.common"/>\r
-      <plugin id="org.eclipse.equinox.preferences"/>\r
-      <plugin id="org.eclipse.equinox.registry"/>\r
-      <plugin id="org.eclipse.help"/>\r
-      <plugin id="org.eclipse.jface"/>\r
-      <plugin id="org.eclipse.jface.databinding"/>\r
-      <plugin id="org.eclipse.jface.text"/>\r
-      <plugin id="org.eclipse.osgi"/>\r
-      <plugin id="org.eclipse.swt"/>\r
-      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>\r
-      <plugin id="org.eclipse.text"/>\r
-      <plugin id="org.eclipse.ui"/>\r
-      <plugin id="org.eclipse.ui.forms"/>\r
-      <plugin id="org.eclipse.ui.workbench"/>\r
-   </plugins>\r
-\r
-</product>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/a_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/a_no_bg.gif
deleted file mode 100644 (file)
index 2f54262..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/a_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add.gif
deleted file mode 100644 (file)
index 29c2aee..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg.gif
deleted file mode 100644 (file)
index 0dd4eab..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg2.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg2.gif
deleted file mode 100644 (file)
index dfbf68f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/add_no_bg2.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_16.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_16.gif
deleted file mode 100644 (file)
index 05626b1..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_32.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_32.gif
deleted file mode 100644 (file)
index b432f88..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/alt_window_32.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym.gif
deleted file mode 100644 (file)
index 2780f44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym_no_bg.gif
deleted file mode 100644 (file)
index 8c3d54b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/basionym_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept.gif
deleted file mode 100644 (file)
index 445cd44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept_no_bg.gif
deleted file mode 100644 (file)
index 362c109..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/concept_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/db.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/db.gif
deleted file mode 100644 (file)
index 1f3b8db..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/db.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/delete.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/delete.gif
deleted file mode 100644 (file)
index 559e462..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/delete.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.gif
deleted file mode 100644 (file)
index d857c6c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.ico b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.ico
deleted file mode 100644 (file)
index d4b6c2b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/edit_16x16.ico and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn.gif
deleted file mode 100644 (file)
index ebab24c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn_no_bg.gif
deleted file mode 100644 (file)
index 02a6d38..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/heterosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym.gif
deleted file mode 100644 (file)
index abaf009..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym_no_bg.gif
deleted file mode 100644 (file)
index 05b399a..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homonym_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn.gif
deleted file mode 100644 (file)
index 143c881..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn_no_bg.gif
deleted file mode 100644 (file)
index 19575f7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/homosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied.gif
deleted file mode 100644 (file)
index 18fba08..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied_no_bg.gif
deleted file mode 100644 (file)
index dca3ff0..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/misapplied_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move.gif
deleted file mode 100644 (file)
index f43e9b9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move_no_bg.gif
deleted file mode 100644 (file)
index 2f2a3f0..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/move_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant.gif
deleted file mode 100644 (file)
index 14ade2f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant_no_bg.gif
deleted file mode 100644 (file)
index caf5430..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/orthovariant_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/rel_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/rel_no_bg.gif
deleted file mode 100644 (file)
index 77f03e7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/rel_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn.gif
deleted file mode 100644 (file)
index 1b627ce..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn_no_bg.gif
deleted file mode 100644 (file)
index f2370b4..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/repsyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/save.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/save.gif
deleted file mode 100644 (file)
index ad505a9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/save.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/text.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/text.gif
deleted file mode 100644 (file)
index 9312d7e..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/text.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/undo.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/undo.gif
deleted file mode 100644 (file)
index 3aeba19..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/undo.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown.gif
deleted file mode 100644 (file)
index 8c58c52..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown_no_bg.gif
deleted file mode 100644 (file)
index a6a784b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/icons/unknown_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/plugin.xml b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/plugin.xml
deleted file mode 100644 (file)
index 5f23eeb..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<?eclipse version="3.2"?>\r
-<plugin>\r
-\r
-   <extension\r
-         id="application"\r
-         point="org.eclipse.core.runtime.applications">\r
-      <application>\r
-         <run\r
-               class="eu.etaxonomy.taxeditor.designproposal1.Application">\r
-         </run>\r
-      </application>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.perspectives">\r
-      <perspective\r
-            class="eu.etaxonomy.taxeditor.designproposal1.Perspective"\r
-            fixed="false"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.perspective"\r
-            name="Perspective">\r
-      </perspective>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.views">\r
-      <view\r
-            name="Create Name"\r
-            class="eu.etaxonomy.taxeditor.designproposal1.view.CreateNameView"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.createnameview">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal1.view.NameListView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.namelistview"\r
-            name="Name List View">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal1.view.LastNameView"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.lastnameview"\r
-            name="Last Name Created">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal1.view.EditorMockupView"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.editormockupview"\r
-            name="New ViewPart">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal1.view.DogView"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.DogView"\r
-            name="New ViewPart">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal1.view.UndoView"\r
-            icon="icons/text.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.undoview"\r
-            name="Recent Actions">\r
-      </view>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.editors">\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.designproposal1.view.MultiPagePilosellaView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.mpetestview"\r
-            name="Multipart Test">\r
-      </editor>\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.designproposal1.view.NameEditorView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.nameeditorview"\r
-            name="New EditorPart">\r
-      </editor>\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.designproposal1.view.EmptyEditorView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.EmptyEditorView"\r
-            name="New EditorPart">\r
-      </editor>\r
-   </extension>\r
-   <extension\r
-         id="product"\r
-         point="org.eclipse.core.runtime.products">\r
-      <product\r
-            application="eu.etaxonomy.taxeditor.designproposal1.application"\r
-            name="EDIT Taxonomic Editor - Design Proposal 1">\r
-         <property\r
-               name="appName"\r
-               value="EDIT Taxonomic Editor - Design Proposal 1">\r
-         </property>\r
-         <property\r
-               name="aboutImage"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="aboutText"\r
-               value="Thanks for all the laughs!">\r
-         </property>\r
-         <property\r
-               name="windowImages"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-      </product>\r
-   </extension>\r
-\r
-</plugin>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/splash.bmp b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/splash.bmp
deleted file mode 100644 (file)
index 74c1225..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/splash.bmp and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/com/swtdesigner/ResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/com/swtdesigner/ResourceManager.java
deleted file mode 100644 (file)
index b8480f6..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-package com.swtdesigner;
-import java.io.File;
-import java.io.InputStream;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Method;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.jface.resource.CompositeImageDescriptor;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.*;
-
-/**
- * Utility class for managing OS resources associated with SWT/JFace controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class ResourceManager extends SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image descriptors to images
-        */
-    private static HashMap<ImageDescriptor, Image> m_DescriptorImageMap = new HashMap<ImageDescriptor, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-    
-    /**
-     * Returns an image descriptor stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image descriptor
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(Class<?> clazz, String path) {
-        return ImageDescriptor.createFromFile(clazz, path);
-    }
-
-    /**
-     * Returns an image descriptor stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(String path) {
-        try {
-            return ImageDescriptor.createFromURL((new File(path)).toURI().toURL());
-        } catch (MalformedURLException e) {
-            return null;
-        }
-    }
-
-    /**
-     * Returns an image based on the specified image descriptor
-     * @param descriptor ImageDescriptor The image descriptor for the image
-     * @return Image The image based on the specified image descriptor
-     */
-    public static Image getImage(ImageDescriptor descriptor) {
-        if (descriptor == null)
-            return null;
-        Image image = m_DescriptorImageMap.get(descriptor);
-        if (image == null) {
-            image = descriptor.createImage();
-            m_DescriptorImageMap.put(descriptor, image);
-        }
-        return image;
-    }
-
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       final Rectangle bid = baseImage.getBounds();
-                       final Rectangle did = decorator.getBounds();
-            final Point baseImageSize = new Point(bid.width, bid.height); 
-            CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() { 
-                protected void drawCompositeImage(int width, int height) { 
-                    drawImage(baseImage.getImageData(), 0, 0); 
-                    if (corner == TOP_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, 0); 
-                    } else if (corner == TOP_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, 0); 
-                    } else if (corner == BOTTOM_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, bid.height - did.height - 1); 
-                    } else if (corner == BOTTOM_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, bid.height - did.height - 1); 
-                    } 
-                } 
-                protected Point getSize() { 
-                    return baseImageSize; 
-                } 
-            }; 
-            result = compositImageDesc.createImage(); 
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-       SWTResourceManager.disposeImages();
-       //
-        for (Iterator<Image> I = m_DescriptorImageMap.values().iterator(); I.hasNext();)
-             I.next().dispose();
-        m_DescriptorImageMap.clear();
-    }
-
-    //////////////////////////////
-    // Plugin images support
-    //////////////////////////////
-
-    /**
-     * Maps URL to images
-     */
-    private static HashMap<URL, Image> m_URLImageMap = new HashMap<URL, Image>();
-
-    /**
-     * Retuns an image based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getPluginImage(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                if (m_URLImageMap.containsKey(url))
-                    return m_URLImageMap.get(url);
-                InputStream is = url.openStream();
-                Image image;
-                try {
-                    image = getImage(is);
-                    m_URLImageMap.put(url, image);
-                } finally {
-                    is.close();
-                }
-                return image;
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an image descriptor based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getPluginImageDescriptor(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                return ImageDescriptor.createFromURL(url);
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an URL based on a plugin and file path
-     * @param plugin Object The plugin containing the file path
-     * @param name String The file path
-     * @return URL The URL representing the file at the specified path
-     * @throws Exception
-     */
-       @SuppressWarnings("unchecked") //$NON-NLS-1$
-       private static URL getPluginImageURL(Object plugin, String name) throws Exception {
-               // try to work with 'plugin' as with OSGI BundleContext
-               try {
-                       Class bundleClass = Class.forName("org.osgi.framework.Bundle"); //$NON-NLS-1$
-                       Class bundleContextClass = Class.forName("org.osgi.framework.BundleContext"); //$NON-NLS-1$
-                       if (bundleContextClass.isAssignableFrom(plugin.getClass())) {
-                               Method getBundleMethod = bundleContextClass.getMethod("getBundle", new Class[]{}); //$NON-NLS-1$
-                               Object bundle = getBundleMethod.invoke(plugin, new Object[]{});
-                               //
-                               Class ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Class platformClass = Class.forName("org.eclipse.core.runtime.Platform"); //$NON-NLS-1$
-                               Method findMethod = platformClass.getMethod("find", new Class[]{bundleClass, ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(null, new Object[]{bundle, path});
-                       }
-               } catch (Throwable e) {
-               // Ignore any exceptions
-               }
-               // else work with 'plugin' as with usual Eclipse plugin
-               {
-                       Class pluginClass = Class.forName("org.eclipse.core.runtime.Plugin"); //$NON-NLS-1$
-                       if (pluginClass.isAssignableFrom(plugin.getClass())) {
-                               //
-                               Class ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Method findMethod = pluginClass.getMethod("find", new Class[]{ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(plugin, new Object[]{path});
-                       }
-               }
-               return null;
-       }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/com/swtdesigner/SWTResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/com/swtdesigner/SWTResourceManager.java
deleted file mode 100644 (file)
index f0b8891..0000000
+++ /dev/null
@@ -1,455 +0,0 @@
-package com.swtdesigner;
-import java.io.BufferedInputStream;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.CoolBar;
-import org.eclipse.swt.widgets.CoolItem;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Utility class for managing OS resources associated with SWT controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Color support
-    //////////////////////////////
-
-    /**
-     * Maps RGB values to colors
-     */
-    private static HashMap<RGB, Color> m_ColorMap = new HashMap<RGB, Color>();
-
-    /**
-     * Returns the system color matching the specific ID
-     * @param systemColorID int The ID value for the color
-     * @return Color The system color matching the specific ID
-     */
-    public static Color getColor(int systemColorID) {
-        Display display = Display.getCurrent();
-        return display.getSystemColor(systemColorID);
-    }
-
-    /**
-     * Returns a color given its red, green and blue component values
-     * @param r int The red component of the color
-     * @param g int The green component of the color
-     * @param b int The blue component of the color
-     * @return Color The color matching the given red, green and blue componet values
-     */
-    public static Color getColor(int r, int g, int b) {
-        return getColor(new RGB(r, g, b));
-    }
-
-    /**
-     * Returns a color given its RGB value
-     * @param rgb RGB The RGB value of the color
-     * @return Color The color matching the RGB value
-     */
-    public static Color getColor(RGB rgb) {
-        Color color = m_ColorMap.get(rgb);
-        if (color == null) {
-            Display display = Display.getCurrent();
-            color = new Color(display, rgb);
-            m_ColorMap.put(rgb, color);
-        }
-        return color;
-    }
-
-    /**
-     * Dispose of all the cached colors
-     */
-    public static void disposeColors() {
-        for (Iterator<Color> iter = m_ColorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_ColorMap.clear();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image names to images
-        */
-    private static HashMap<String, Image> m_ClassImageMap = new HashMap<String, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-
-    /**
-     * Returns an image encoded by the specified input stream
-     * @param is InputStream The input stream encoding the image data
-     * @return Image The image encoded by the specified input stream
-     */
-    protected static Image getImage(InputStream is) {
-        Display display = Display.getCurrent();
-        ImageData data = new ImageData(is);
-        if (data.transparentPixel > 0)
-            return new Image(display, data, data.getTransparencyMask());
-        return new Image(display, data);
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String path) {
-       return getImage("default", path); //$NON-NLS-1$
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param section The section to which belongs specified image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String section, String path) {
-        String key = section + '|' + SWTResourceManager.class.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-            try {
-                FileInputStream fis = new FileInputStream(path);
-                image = getImage(fis);
-                m_ClassImageMap.put(key, image);
-                fis.close();
-            } catch (Exception e) {
-               image = getMissingImage();
-               m_ClassImageMap.put(key, image);
-            }
-        }
-        return image;
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(Class<?> clazz, String path) {
-        String key = clazz.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-               try {
-                       if (path.length() > 0 && path.charAt(0) == '/') {
-                               String newPath = path.substring(1, path.length());
-                               image = getImage(new BufferedInputStream(clazz.getClassLoader().getResourceAsStream(newPath)));
-                       } else {
-                               image = getImage(clazz.getResourceAsStream(path));
-                       }
-                       m_ClassImageMap.put(key, image);
-               } catch (Exception e) {
-                       image = getMissingImage();
-                       m_ClassImageMap.put(key, image);
-               }
-        }
-        return image;
-    }
-
-    private static final int MISSING_IMAGE_SIZE = 10;
-       private static Image getMissingImage() {
-               Image image = new Image(Display.getCurrent(), MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               //
-               GC gc = new GC(image);
-               gc.setBackground(getColor(SWT.COLOR_RED));
-               gc.fillRectangle(0, 0, MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               gc.dispose();
-               //
-               return image;
-       }
-
-    /**
-     * Style constant for placing decorator image in top left corner of base image.
-     */
-    public static final int TOP_LEFT = 1;
-    /**
-     * Style constant for placing decorator image in top right corner of base image.
-     */
-    public static final int TOP_RIGHT = 2;
-    /**
-     * Style constant for placing decorator image in bottom left corner of base image.
-     */
-    public static final int BOTTOM_LEFT = 3;
-    /**
-     * Style constant for placing decorator image in bottom right corner of base image.
-     */
-    public static final int BOTTOM_RIGHT = 4;
-    
-    /**
-     * Returns an image composed of a base image decorated by another image
-     * @param baseImage Image The base image that should be decorated
-     * @param decorator Image The image to decorate the base image
-     * @return Image The resulting decorated image
-     */
-    public static Image decorateImage(Image baseImage, Image decorator) {
-       return decorateImage(baseImage, decorator, BOTTOM_RIGHT);
-    }
-    
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       Rectangle bid = baseImage.getBounds();
-                       Rectangle did = decorator.getBounds();
-                       result = new Image(Display.getCurrent(), bid.width, bid.height);
-                       GC gc = new GC(result);
-                       gc.drawImage(baseImage, 0, 0);
-                       //
-                       if (corner == TOP_LEFT) {
-                               gc.drawImage(decorator, 0, 0);
-                       } else if (corner == TOP_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, 0);
-                       } else if (corner == BOTTOM_LEFT) {
-                               gc.drawImage(decorator, 0, bid.height - did.height - 1);
-                       } else if (corner == BOTTOM_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, bid.height - did.height - 1);
-                       }
-                       //
-                       gc.dispose();
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-        for (Iterator<Image> I = m_ClassImageMap.values().iterator(); I.hasNext();)
-             I.next().dispose();
-        m_ClassImageMap.clear();
-        //
-        for (Iterator<HashMap<Image, Image>> I = m_ImageToDecoratorMap.values().iterator(); I.hasNext();) {
-                       HashMap<Image, Image> decoratedMap = I.next();
-                       for (Iterator<Image> J = decoratedMap.values().iterator(); J.hasNext();) {
-                               Image image = J.next();
-                               image.dispose();
-                       }
-               }
-    }
-
-    /**
-        * Dispose cached images in specified section
-        * @param section the section do dispose
-        */
-       public static void disposeImages(String section) {
-               for (Iterator<String> I = m_ClassImageMap.keySet().iterator(); I.hasNext();) {
-                       String key = I.next();
-                       if (!key.startsWith(section + '|'))
-                               continue;
-                       Image image = m_ClassImageMap.get(key);
-                       image.dispose();
-                       I.remove();
-               }
-       }
-
-    //////////////////////////////
-    // Font support
-    //////////////////////////////
-
-    /**
-     * Maps font names to fonts
-     */
-    private static HashMap<String, Font> m_FontMap = new HashMap<String, Font>();
-
-    /**
-     * Maps fonts to their bold versions
-     */
-    private static HashMap<Font, Font> m_FontToBoldFontMap = new HashMap<Font, Font>();
-
-    /**
-     * Returns a font based on its name, height and style
-     * @param name String The name of the font
-     * @param height int The height of the font
-     * @param style int The style of the font
-     * @return Font The font matching the name, height and style
-     */
-    public static Font getFont(String name, int height, int style) {
-       return getFont(name, height, style, false, false);
-    }
-
-
-    /**
-     * Returns a font based on its name, height and style. 
-     * Windows-specific strikeout and underline flags are also supported.
-     * @param name String The name of the font
-     * @param size int The size of the font
-     * @param style int The style of the font
-     * @param strikeout boolean The strikeout flag (warning: Windows only)
-     * @param underline boolean The underline flag (warning: Windows only)
-     * @return Font The font matching the name, height, style, strikeout and underline
-     */
-       public static Font getFont(String name, int size, int style, boolean strikeout, boolean underline) {
-               String fontName = name + '|' + size + '|' + style + '|' + strikeout + '|' + underline;
-        Font font = m_FontMap.get(fontName);
-        if (font == null) {
-               FontData fontData = new FontData(name, size, style);
-               if (strikeout || underline) {
-                       try {
-                               Class<?> logFontClass = Class.forName("org.eclipse.swt.internal.win32.LOGFONT"); //$NON-NLS-1$
-                               Object logFont = FontData.class.getField("data").get(fontData); //$NON-NLS-1$
-                               if (logFont != null && logFontClass != null) {
-                                       if (strikeout) {
-                                                       logFontClass.getField("lfStrikeOut").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                                       if (underline) {
-                                                       logFontClass.getField("lfUnderline").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                               }
-                       } catch (Throwable e) {
-                               System.err.println(
-                                       "Unable to set underline or strikeout" + " (probably on a non-Windows platform). " + e); //$NON-NLS-1$ //$NON-NLS-2$
-                       }
-               }
-               font = new Font(Display.getCurrent(), fontData);
-               m_FontMap.put(fontName, font);
-        }
-               return font;
-       }
-    
-
-    /**
-     * Return a bold version of the give font
-     * @param baseFont Font The font for whoch a bold version is desired
-     * @return Font The bold version of the give font
-     */
-    public static Font getBoldFont(Font baseFont) {
-        Font font = m_FontToBoldFontMap.get(baseFont);
-        if (font == null) {
-            FontData fontDatas[] = baseFont.getFontData();
-            FontData data = fontDatas[0];
-            font = new Font(Display.getCurrent(), data.getName(), data.getHeight(), SWT.BOLD);
-            m_FontToBoldFontMap.put(baseFont, font);
-        }
-        return font;
-    }
-
-    /**
-     * Dispose all of the cached fonts
-     */
-    public static void disposeFonts() {
-        for (Iterator<Font> iter = m_FontMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_FontMap.clear();
-    }
-
-       //////////////////////////////
-    // CoolBar support
-    //////////////////////////////
-
-    /**
-     * Fix the layout of the specified CoolBar
-     * @param bar CoolBar The CoolBar that shgoud be fixed
-     */
-    public static void fixCoolBarSize(CoolBar bar) {
-        CoolItem[] items = bar.getItems();
-        // ensure that each item has control (at least empty one)
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            if (item.getControl() == null)
-                item.setControl(new Canvas(bar, SWT.NONE) {
-                @Override
-                               public Point computeSize(int wHint, int hHint, boolean changed) {
-                    return new Point(20, 20);
-                }
-            });
-        }
-        // compute size for each item
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            Control control = item.getControl();
-            control.pack();
-            Point size = control.getSize();
-            item.setSize(item.computeSize(size.x, size.y));
-        }
-    }
-
-    //////////////////////////////
-    // Cursor support
-    //////////////////////////////
-
-    /**
-     * Maps IDs to cursors
-     */
-    private static HashMap<Integer, Cursor> m_IdToCursorMap = new HashMap<Integer, Cursor>();
-    /**
-     * Returns the system cursor matching the specific ID
-     * @param id int The ID value for the cursor
-     * @return Cursor The system cursor matching the specific ID
-     */
-    public static Cursor getCursor(int id) {
-        Integer key = new Integer(id);
-        Cursor cursor = m_IdToCursorMap.get(key);
-        if (cursor == null) {
-            cursor = new Cursor(Display.getDefault(), id);
-            m_IdToCursorMap.put(key, cursor);
-        }
-        return cursor;
-    }
-    /**
-     * Dispose all of the cached cursors
-     */
-    public static void disposeCursors() {
-        for (Iterator<Cursor> iter = m_IdToCursorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_IdToCursorMap.clear();
-    }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Activator.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Activator.java
deleted file mode 100644 (file)
index 3e52b5d..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.ui.plugin.AbstractUIPlugin;\r
-import org.osgi.framework.BundleContext;\r
-\r
-//import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-\r
-\r
-/**\r
- * The activator class controls the plug-in life cycle\r
- */\r
-public class Activator extends AbstractUIPlugin {\r
-\r
-       // The plug-in ID\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.mvctest";\r
-\r
-       // The shared instance\r
-       private static Activator plugin;\r
-               \r
-//     private CdmApplicationController cdmApp = new CdmApplicationController();\r
-       \r
-       /**\r
-        * The constructor\r
-        */\r
-       public Activator() {\r
-       }\r
-\r
-       \r
-       /*\r
-        * (non-Javadoc)\r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)\r
-        */\r
-       public void start(BundleContext context) throws Exception {\r
-               super.start(context);\r
-               plugin = this;\r
-       }\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)\r
-        */\r
-       public void stop(BundleContext context) throws Exception {\r
-               plugin = null;\r
-               super.stop(context);\r
-       }\r
-\r
-       /**\r
-        * Returns the shared instance\r
-        *\r
-        * @return the shared instance\r
-        */\r
-       public static Activator getDefault() {\r
-               return plugin;\r
-       }\r
-\r
-       /**\r
-        * Returns an image descriptor for the image file at the given\r
-        * plug-in relative path\r
-        *\r
-        * @param path the path\r
-        * @return the image descriptor\r
-        */\r
-       public static ImageDescriptor getImageDescriptor(String path) {\r
-               return imageDescriptorFromPlugin(PLUGIN_ID, path);\r
-       }\r
-       \r
-       \r
-       public Image getImage(String key) {\r
-               return getImageRegistry().get(key);\r
-       }\r
-       \r
-       /**\r
-     * @return the objectList\r
-     */\r
-//    public CdmApplicationController getApplicationController() {\r
-//        return this.cdmApp;\r
-//    }        \r
-       \r
-               \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Application.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Application.java
deleted file mode 100644 (file)
index 8a7b97c..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1;
-
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * This class controls all aspects of the application's execution
- */
-public class Application implements IApplication {
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.IApplicationContext)
-        */
-       public Object start(IApplicationContext context) {
-               Display display = PlatformUI.createDisplay();
-               try {
-                       int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
-                       if (returnCode == PlatformUI.RETURN_RESTART) {
-                               return IApplication.EXIT_RESTART;
-                       }
-                       return IApplication.EXIT_OK;
-               } finally {
-                       display.dispose();
-               }
-       }
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#stop()
-        */
-       public void stop() {
-               final IWorkbench workbench = PlatformUI.getWorkbench();
-               if (workbench == null)
-                       return;
-               final Display display = workbench.getDisplay();
-               display.syncExec(new Runnable() {
-                       public void run() {
-                               if (!display.isDisposed())
-                                       workbench.close();
-                       }
-               });
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationActionBarAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationActionBarAdvisor.java
deleted file mode 100644 (file)
index 93e743f..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-
-import eu.etaxonomy.taxeditor.designproposal1.controller.OpenNameEditorAction;
-
-/**
- * An action bar advisor is responsible for creating, adding, and disposing of
- * the actions added to a workbench window. Each window will be populated with
- * new actions.
- */
-public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
-
-       // Actions - important to allocate these only in makeActions, and then use
-       // them
-       // in the fill methods. This ensures that the actions aren't recreated
-       // when fillActionBars is called with FILL_PROXY.
-       private IWorkbenchAction exitAction;
-       private OpenNameEditorAction newNameAction;
-
-       public ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {
-               super(configurer);
-       }
-
-       protected void makeActions(final IWorkbenchWindow window) {
-               // Creates the actions and registers them.
-               // Registering is needed to ensure that key bindings work.
-               // The corresponding commands keybindings are defined in the plugin.xml
-               // file.
-               // Registering also provides automatic disposal of the actions when
-               // the window is closed.
-
-               exitAction = ActionFactory.QUIT.create(window);
-               register(exitAction);
-               
-               newNameAction = new OpenNameEditorAction();
-               register(newNameAction);
-       }
-
-       protected void fillMenuBar(IMenuManager menuBar) {
-               MenuManager fileMenu = new MenuManager("&File",
-                               IWorkbenchActionConstants.M_FILE);
-               menuBar.add(fileMenu);
-               fileMenu.add(newNameAction);
-               fileMenu.add(exitAction);
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationWorkbenchAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationWorkbenchAdvisor.java
deleted file mode 100644 (file)
index 6749cbd..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1;
-
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchAdvisor;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
-
-       private static final String PERSPECTIVE_ID = "eu.etaxonomy.taxeditor.designproposal1.perspective";
-
-       public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(
-                       IWorkbenchWindowConfigurer configurer) {
-               return new ApplicationWorkbenchWindowAdvisor(configurer);
-       }
-
-       public String getInitialWindowPerspectiveId() {
-               return PERSPECTIVE_ID;
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationWorkbenchWindowAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/ApplicationWorkbenchWindowAdvisor.java
deleted file mode 100644 (file)
index 09376c2..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1;
-
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-//import eu.etaxonomy.taxeditor.prototype1.controller.PopulateNameListViewAction;
-
-public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor {
-
-       public ApplicationWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) {
-               super(configurer);
-       }
-
-       public ActionBarAdvisor createActionBarAdvisor(
-                       IActionBarConfigurer configurer) {
-               return new ApplicationActionBarAdvisor(configurer);
-       }
-
-       public void preWindowOpen() {
-               IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
-               configurer.setInitialSize(new Point(800, 600));
-               configurer.setShowCoolBar(false);
-               configurer.setShowStatusLine(false);
-               configurer.setTitle("EDIT Taxonomic Editor");
-       }
-       
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Perspective.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/Perspective.java
deleted file mode 100644 (file)
index 9c0f5c7..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1;
-
-import org.eclipse.ui.IFolderLayout;
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPerspectiveFactory;
-import org.eclipse.ui.IPlaceholderFolderLayout;
-
-import eu.etaxonomy.taxeditor.designproposal1.view.NameListView;
-import eu.etaxonomy.taxeditor.designproposal1.view.UndoView;
-//import eu.etaxonomy.taxeditor.designproposal1.view.DogView;
-
-public class Perspective implements IPerspectiveFactory {
-
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.perspective";
-       
-       public void createInitialLayout(IPageLayout layout) {
-               String editorArea = layout.getEditorArea();
-               layout.addStandaloneView(NameListView.ID, false, IPageLayout.LEFT, 0.30f, editorArea);
-               layout.addView(UndoView.ID, IPageLayout.BOTTOM, 0.8f, editorArea);
-               layout.getViewLayout(NameListView.ID).setCloseable(false);
-               addFastViews(layout);
-       }
-       private void addFastViews(IPageLayout layout) {
-               System.currentTimeMillis();
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/controller/OpenNameEditorAction.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/controller/OpenNameEditorAction.java
deleted file mode 100644 (file)
index 5c2fa5b..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-//import eu.etaxonomy.cdm.api.service.INameService;\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal1.model.NameEditorInput;\r
-import eu.etaxonomy.taxeditor.designproposal1.model.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal1.view.MultiPagePilosellaView;\r
-import eu.etaxonomy.taxeditor.designproposal1.view.NameEditorView;\r
-\r
-public class OpenNameEditorAction extends Action {\r
-\r
-       private TaxonName taxonname;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.controller.opennameeditoraction"; //$NON-NLS-1$\r
-       \r
-       public OpenNameEditorAction(TaxonName taxonname) {\r
-               this.taxonname = taxonname;\r
-       }\r
-\r
-       public OpenNameEditorAction() {\r
-//             INameService ns = Activator.getDefault().getApplicationController().getNameService();\r
-//             this.taxonname = ns.createTaxonName(null);\r
-               this.taxonname = new TaxonName();\r
-               this.taxonname.setName("new");\r
-               setId(ID);\r
-               setText("New taxon");\r
-       }\r
-\r
-       public OpenNameEditorAction(String name) {\r
-//             INameService ns = Activator.getDefault().getApplicationController().getNameService();\r
-//             this.taxonname = ns.createTaxonName(null);\r
-               this.taxonname = new TaxonName();\r
-               this.taxonname.setName(name);\r
-//             setId(ID);\r
-//             setText("New name");\r
-       }\r
-       \r
-       public void run() {\r
-               IEditorInput input = new NameEditorInput(taxonname);\r
-        try {\r
-//             Activator.getDefault().getWorkbench().getActiveWorkbenchWindow().\r
-//                     getActivePage().openEditor(input, NameEditorView.ID);\r
-               Activator.getDefault().getWorkbench().getActiveWorkbenchWindow().\r
-                       getActivePage().openEditor(input, MultiPagePilosellaView.ID);           \r
-               } catch (PartInitException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/controller/SaveNameAction.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/controller/SaveNameAction.java
deleted file mode 100644 (file)
index 9257abf..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal1.model.TaxonName;\r
-\r
-public class SaveNameAction extends Action {\r
-       TaxonName taxonname;\r
-       \r
-       public SaveNameAction(TaxonName taxonname) {\r
-               this.taxonname = taxonname;\r
-       }\r
-       \r
-       public void run() {\r
-//             Activator.getDefault().getApplicationController().getNameService().\r
-//                     saveTaxonName(taxonname);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/model/NameEditorInput.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/model/NameEditorInput.java
deleted file mode 100644 (file)
index 9afdba2..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.model;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IPersistableElement;\r
-\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-\r
-public class NameEditorInput implements IEditorInput {\r
-\r
-       private TaxonName taxonname;\r
-       \r
-       public NameEditorInput (TaxonName taxonname) {\r
-               this.taxonname = taxonname;\r
-       }\r
-       \r
-       public boolean exists() {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       public ImageDescriptor getImageDescriptor() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getName() {\r
-               return taxonname.getName();\r
-       }\r
-\r
-       public IPersistableElement getPersistable() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getToolTipText() {\r
-               return taxonname.getName();\r
-       }\r
-\r
-       public Object getAdapter(Class adapter) {\r
-\r
-               if (adapter == TaxonName.class) {\r
-                       return this.taxonname;\r
-               }\r
-               \r
-               return null;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/model/TaxonName.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/model/TaxonName.java
deleted file mode 100644 (file)
index 66b7cde..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.model;\r
-\r
-public class TaxonName {\r
-       String name;\r
-\r
-       public String getName() {\r
-               return name;\r
-       }\r
-\r
-       public void setName(String name) {\r
-               this.name = name;\r
-       }\r
-       \r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/CarduusEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/CarduusEditorView.java
deleted file mode 100644 (file)
index 181cc47..0000000
+++ /dev/null
@@ -1,482 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.TextViewer;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.PopupList;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.ControlAdapter;\r
-import org.eclipse.swt.events.ControlEvent;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.KeyListener;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.CoolBar;\r
-import org.eclipse.swt.widgets.CoolItem;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.ToolBar;\r
-import org.eclipse.swt.widgets.ToolItem;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-//import org.eclipse.ui.texteditor.AbstractTextEditor;\r
-\r
-//import eu.etaxonomy.cdm.event.ICdmEventListener;\r
-//import eu.etaxonomy.cdm.event.ICdmEventListenerRegistration;\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal1.controller.OpenNameEditorAction;\r
-import eu.etaxonomy.taxeditor.designproposal1.controller.SaveNameAction;\r
-import eu.etaxonomy.taxeditor.designproposal1.model.TaxonName;\r
-\r
-//public class CarduusEditorView extends EditorPart implements ICdmEventListener {\r
-public class CarduusEditorView extends EditorPart {\r
-\r
-       private Table table_1;\r
-       private Text carduusLSpText;\r
-       private StyledText styledText;\r
-       private TaxonName taxonname;\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.carduuseditorview"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               //\r
-               \r
-               \r
-//             txtPlay = new Text(container, SWT.BORDER);\r
-//             txtPlay.setCapture(true);\r
-//             final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);\r
-//             gd_txtPlay.heightHint = 96;\r
-//             txtPlay.setLayoutData(gd_txtPlay);\r
-////           txtPlay.addVerifyListener(new VerifyListener() {\r
-////                   @Override\r
-////                   public void verifyText(VerifyEvent e) {\r
-////                   e.doit = Character.isDigit(e.character);\r
-////               }           \r
-////           });\r
-//             txtPlay.addSelectionListener(new SelectionListener() {\r
-//\r
-//                     @Override\r
-//                     public void widgetDefaultSelected(SelectionEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//\r
-//                     @Override\r
-//                     public void widgetSelected(SelectionEvent e) {\r
-//                             System.out.println(e.toString());\r
-//                     }\r
-//                     \r
-//                     \r
-//             });\r
-//             \r
-//             \r
-//             txtPlay.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             System.out.println(e.character);\r
-//                             if (e.character == '=') {\r
-//                                     Shell shell = Activator.getDefault().getWorkbench().\r
-//                                             getActiveWorkbenchWindow().getShell();\r
-//                                     PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-////                                   Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-//                                     // Add the items to the list\r
-//                                     String[] OPTIONS = { "Create homo. syn.",\r
-//                                                     "Create hetero. syn.",\r
-//                                                     "Create mis. name",\r
-//                                                     "Create homonym"};\r
-//\r
-//                                     list.setItems(OPTIONS);\r
-//                                     \r
-//                                     // Open the list and get the selected item\r
-//                                     String selected = list.open(txtPlay.getBounds());\r
-//                                     \r
-//                                     // Print the item to the console\r
-//                                     System.out.println(selected);                                   \r
-//                             }\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//             });\r
-               parent.setLayout(new GridLayout());\r
-               Document doc = new Document("");\r
-\r
-               final Label taxonomicallyIncludedInLabel = new Label(parent, SWT.NONE);\r
-               taxonomicallyIncludedInLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));\r
-               taxonomicallyIncludedInLabel.setText("Higher taxon: \"Cardueae Cass.\"");\r
-\r
-               final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
-//             toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
-               itemSave.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemSave.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save.gif"));\r
-               itemSave.addSelectionListener(new SelectionListener() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               \r
-//                             taxonname.setGenus(txtGenus.getText());\r
-//                             taxonname.setSpecificEpithet(txtSpEpi.getText());\r
-                               \r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-               });\r
-\r
-               final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemMove.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemMove.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                       }\r
-               });\r
-               \r
-               final Menu menuMove = new Menu(toolBar);\r
-               menuMove.setData("x", null);\r
-               addDropDown(itemMove, menuMove);\r
-\r
-               final MenuItem moveTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               moveTaxonpilosellaMenuItem.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");\r
-\r
-               final MenuItem turnTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               turnTaxonpilosellaMenuItem.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");\r
-               \r
-//             });\r
-//             newItemToolItem.setText("New item");\r
-               itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-\r
-               final ToolItem itemDelete = new ToolItem(toolBar, SWT.NONE);\r
-               itemDelete.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemDelete.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-                               \r
-               final ToolItem separator1 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddRelationship.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/rel_no_bg.gif"));\r
-               \r
-               final Menu menuAddRel = new Menu(toolBar);\r
-               menuAddRel.setData("x", null);\r
-               addDropDown(itemAddRelationship, menuAddRel);\r
-\r
-               final MenuItem testMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               testMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               testMenuItem.setText("Add synonymy (type unknown)");\r
-\r
-               final MenuItem addHomotypicSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomotypicSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               addHomotypicSynonymMenuItem.setText("Add homotypic synonym");\r
-\r
-               final MenuItem addHeterotypicSynoynmMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHeterotypicSynoynmMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               addHeterotypicSynoynmMenuItem.setText("Add heterotypic synoynm");\r
-\r
-               final MenuItem addBasionymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addBasionymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               addBasionymMenuItem.setText("Add basionym");\r
-\r
-               final MenuItem addReplacedSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addReplacedSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               addReplacedSynonymMenuItem.setText("Add replaced synonym");\r
-\r
-               final MenuItem addHomonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               addHomonymMenuItem.setText("Add homonym");\r
-\r
-               final MenuItem addOrthographicVariantMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addOrthographicVariantMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               addOrthographicVariantMenuItem.setText("Add orthographic variant");\r
-\r
-               final MenuItem addMisappliedNameMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addMisappliedNameMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               addMisappliedNameMenuItem.setText("Add misapplied name");\r
-\r
-               final MenuItem addConceptRelationMenuItem_1 = new MenuItem(menuAddRel, SWT.CASCADE);\r
-               addConceptRelationMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               addConceptRelationMenuItem_1.setText("Add concept relation");\r
-\r
-               final Menu menu = new Menu(addConceptRelationMenuItem_1);\r
-               addConceptRelationMenuItem_1.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setText("congruent");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setSelection(true);\r
-               checkboxMenuItem_1.setText("included in");\r
-\r
-               final MenuItem checkboxMenuItem_2 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_2.setText("includes");\r
-\r
-               final MenuItem checkboxMenuItem_3 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_3.setText("overlaps");\r
-\r
-               final MenuItem checkboxMenuItem_4 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_4.setText("excludes");\r
-\r
-               final MenuItem checkboxMenuItem_5 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_5.setSelection(true);\r
-               checkboxMenuItem_5.setText("doubtful");\r
-               \r
-               final ToolItem separator2 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddTaxon = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddTaxon.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add_no_bg2.gif"));\r
-               itemAddTaxon.setToolTipText("Add new taxon");\r
-\r
-               final Menu menuAdd = new Menu(toolBar);\r
-               menuAdd.setData("x", null);\r
-               addDropDown(itemAddTaxon, menuAdd);\r
-\r
-               final MenuItem addTaxonToMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addTaxonToMenuItem.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final MenuItem addNewTaxonMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addNewTaxonMenuItem.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final Composite composite = new Composite(parent, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.horizontalSpacing = 3;\r
-               gridLayout_2.numColumns = 2;\r
-               composite.setLayout(gridLayout_2);\r
-\r
-               carduusLSpText = new Text(composite, SWT.WRAP);\r
-               carduusLSpText.setText("Carduus L., Sp. Pl.: 820. 1753");\r
-               carduusLSpText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
-               final GridData gd_carduusLSpText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               carduusLSpText.setLayoutData(gd_carduusLSpText);\r
-               carduusLSpText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               carduusLSpText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               carduusLSpText.setBackground(null);                             \r
-                       }\r
-\r
-               });\r
-\r
-               table_1 = new Table(composite, SWT.BORDER);\r
-               table_1.setLinesVisible(true);\r
-               table_1.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, true, true, 1, 2));\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn.setWidth(100);\r
-               newColumnTableColumn.setText("New column");\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(100);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem.setText(0, "Rank");\r
-               newItemTableItem.setText(1, "genus");\r
-               newItemTableItem.setText("Rank");\r
-               \r
-               final TableItem newItemTableItem_1 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Carduus");\r
-               newItemTableItem_1.setText(0, "Genus");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_2.setText(0, "Species epithet");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "L.");\r
-               newItemTableItem_3.setText(0, "Author team");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_4.setText("...");\r
-//             newItemTableItem_2.setText("Species epithet");\r
-//             newItemTableItem_1.setText("Genus");\r
-               //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               SourceViewer sourceviewer = new SourceViewer(composite, null, SWT.WRAP | SWT.FULL_SELECTION);\r
-               sourceviewer.setAnnotationHover(null);\r
-               styledText = sourceviewer.getTextWidget();\r
-               final GridData gd_styledText = new GridData(SWT.FILL, SWT.TOP, true, false);\r
-               gd_styledText.heightHint = 41;\r
-               gd_styledText.widthHint = 450;\r
-               styledText.setLayoutData(gd_styledText);\r
-               sourceviewer.setDocument(doc);\r
-               sourceviewer.configure(new MySourceViewerConfig());\r
-               sourceviewer.setTabsToSpacesConverter(null);\r
-\r
-               \r
-//             final Menu menu = new Menu(toolBar);\r
-//             addDropDown(newItemToolItem, menu);\r
-//             );\r
-               \r
-//             Action testAction = new OpenNameEditorAction();\r
-//             testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));\r
-//             testAction.setToolTipText("Add relation");\r
-//             toolBar.add(testAction);\r
-               \r
-               populateForm();         \r
-       }\r
-\r
-//     private void populateForm() {\r
-//             \r
-//             String fulltext = "";\r
-//             \r
-//             if (taxonname.getGenus() != null) {\r
-//                     fulltext = taxonname.getGenus();\r
-//             }\r
-//\r
-//             if (taxonname.getSpecificEpithet() != null) {\r
-//                     fulltext += " " + taxonname.getSpecificEpithet();\r
-//             }\r
-//\r
-//             if (taxonname.getAuthorship() != null) {\r
-//                     fulltext += " " + taxonname.getAuthorship();\r
-//             }\r
-//             \r
-////           txtPlay.setText(fulltext);\r
-////           txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");\r
-//             \r
-//             this.setPartName(taxonname.getName());\r
-//     }\r
-\r
-       private void populateForm() {\r
-               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-       }\r
-       \r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       public void propertyChange(PropertyChangeEvent evt) {\r
-//             TaxonName taxonname = (TaxonName)evt.getNewValue();\r
-               this.taxonname = (TaxonName)evt.getNewValue();\r
-               System.out.println(((TaxonName)evt.getNewValue()).getName());\r
-               populateForm();\r
-               \r
-               // for individual fields, do something like:\r
-               //      if (evt.getPropertyName().equalsIgnoreCase("genus"))\r
-               //              txtGenus.setText ...\r
-       }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-       \r
-       private static void addDropDown(final ToolItem item, final Menu menu) {\r
-               item.addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               if (event.detail == SWT.ARROW) {\r
-                                       Rectangle rect = item.getBounds();\r
-                                       Point pt = new Point(rect.x, rect.y + rect.height);\r
-                                       pt = item.getParent().toDisplay(pt);\r
-                                       menu.setLocation(pt.x, pt.y);\r
-                                       menu.setVisible(true);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/EditNameProperties.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/EditNameProperties.java
deleted file mode 100644 (file)
index 1919037..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.dialogs.PropertyPage;\r
-\r
-public class EditNameProperties extends PropertyPage {\r
-\r
-       /**\r
-        * Create the property page\r
-        */\r
-       public EditNameProperties() {\r
-               super();\r
-       }\r
-\r
-       /**\r
-        * Create contents of the property page\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public Control createContents(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               //\r
-               return container;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/EmptyEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/EmptyEditorView.java
deleted file mode 100644 (file)
index 67634d4..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-\r
-public class EmptyEditorView extends EditorPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.EmptyEditorView"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               //\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input)\r
-                       throws PartInitException {\r
-               // Initialize the editor part\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MoveDialogView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MoveDialogView.java
deleted file mode 100644 (file)
index 6b048b1..0000000
+++ /dev/null
@@ -1,281 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.jface.dialogs.IDialogConstants;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal1.controller.OpenNameEditorAction;\r
-\r
-public class MoveDialogView extends Dialog {\r
-\r
-       Text searchText;\r
-       \r
-       private Tree tree;\r
-       /**\r
-        * Create the dialog\r
-        * @param parentShell\r
-        */\r
-       public MoveDialogView(Shell parentShell) {\r
-               super(parentShell);\r
-       }\r
-\r
-       /**\r
-        * Create contents of the dialog\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected Control createDialogArea(Composite parent) {\r
-               parent.setRedraw(true);\r
-               Composite container = (Composite) super.createDialogArea(parent);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               container.setLayout(gridLayout);\r
-\r
-               final Label youHaveChosenLabel = new Label(container, SWT.WRAP);\r
-               final GridData gd_youHaveChosenLabel = new GridData(SWT.CENTER, SWT.FILL, true, false, 2, 1);\r
-               gd_youHaveChosenLabel.heightHint = 30;\r
-               youHaveChosenLabel.setLayoutData(gd_youHaveChosenLabel);\r
-               youHaveChosenLabel.setText("You have chosen to turn \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym. Please choose a new accepted name from one of the following options.");\r
-\r
-               final Group group_1 = new Group(container, SWT.NONE);\r
-               group_1.setLayout(new GridLayout());\r
-               final GridData gd_group_1 = new GridData(SWT.FILL, SWT.FILL, true, true);\r
-               gd_group_1.heightHint = 83;\r
-               group_1.setLayoutData(gd_group_1);\r
-\r
-               final Button chooseAcceptedNameButton = new Button(group_1, SWT.RADIO);\r
-               chooseAcceptedNameButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               chooseAcceptedNameButton.setText("Choose from taxonomic tree");\r
-\r
-               tree = new Tree(group_1, SWT.FULL_SELECTION | SWT.BORDER);\r
-               tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               tree.setItemCount(1);\r
-               tree.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDoubleClick(final MouseEvent e) {\r
-                               new OpenNameEditorAction("Pilosella").run();\r
-                       }\r
-               });\r
-\r
-               final TreeItem newItemTreeItem = new TreeItem(tree, SWT.NONE);\r
-               newItemTreeItem.setChecked(true);\r
-               newItemTreeItem.setText("Compositae Giseke");\r
-\r
-               final TreeItem newItemTreeItem_1 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_1.setItemCount(1);\r
-               newItemTreeItem_1.setText("Anthemideae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_2 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_2.setItemCount(1);\r
-               newItemTreeItem_2.setText("Arctotideae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_3 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_3.setItemCount(1);\r
-               newItemTreeItem_3.setText("Astereae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_4 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_4.setItemCount(1);\r
-               newItemTreeItem_4.setText("Calenduleae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_5 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_5.setItemCount(1);\r
-               newItemTreeItem_5.setText("Cardueae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_6 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_6.setText("Cichorieae Lam. & DC.");\r
-\r
-               final TreeItem newItemTreeItem_16 = new TreeItem(newItemTreeItem_6, SWT.NONE);\r
-               newItemTreeItem_16.setExpanded(true);\r
-               newItemTreeItem_16.setText("Pilosella Vaill.");\r
-\r
-               final TreeItem newItemTreeItem_17 = new TreeItem(newItemTreeItem_16, SWT.NONE);\r
-               newItemTreeItem_17.setText("Pilosella fuscoatra coll.");\r
-\r
-               final TreeItem newItemTreeItem_18 = new TreeItem(newItemTreeItem_17, SWT.NONE);\r
-               newItemTreeItem_18.setFont(SWTResourceManager.getFont("", 8, SWT.BOLD));\r
-               newItemTreeItem_18.setExpanded(true);\r
-               newItemTreeItem_18.setText("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-\r
-               final TreeItem newItemTreeItem_7 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_7.setItemCount(1);\r
-               newItemTreeItem_7.setText("Eupatorieae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_8 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_8.setItemCount(1);\r
-               newItemTreeItem_8.setText("Gnaphalieae Lecoq & Juillet");\r
-\r
-               final TreeItem newItemTreeItem_9 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_9.setItemCount(1);\r
-               newItemTreeItem_9.setText("Helenieae Lindl.");\r
-\r
-               final TreeItem newItemTreeItem_10 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_10.setItemCount(1);\r
-               newItemTreeItem_10.setText("Heliantheae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_11 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_11.setItemCount(1);\r
-               newItemTreeItem_11.setText("Inuleae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_12 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_12.setItemCount(1);\r
-               newItemTreeItem_12.setText("Mutisieae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_13 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_13.setItemCount(1);\r
-               newItemTreeItem_13.setText("Plucheeae Anderb.");\r
-\r
-               final TreeItem newItemTreeItem_14 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_14.setItemCount(1);\r
-               newItemTreeItem_14.setText("Senecioneae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_15 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_15.setItemCount(1);\r
-               newItemTreeItem_15.setText("Vernonieae Cass.");\r
-\r
-               final Composite composite = new Composite(container, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setLayout(new FillLayout(SWT.VERTICAL));\r
-               \r
-               final Group group = new Group(composite, SWT.NONE);\r
-               group.setLayout(new GridLayout());\r
-\r
-               final Button chooseAcceptedTaxonButton = new Button(group, SWT.RADIO);\r
-               chooseAcceptedTaxonButton.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                       }\r
-               });\r
-               chooseAcceptedTaxonButton.setText("Choose from recently viewed taxa");\r
-\r
-               \r
-               \r
-               \r
-               \r
-               Table table = new Table(group, SWT.BORDER);\r
-               table.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDoubleClick(final MouseEvent e) {\r
-                               new OpenNameEditorAction("Carduus").run();\r
-                       }\r
-               });\r
-               table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem.setText("Laphangium (Hilliard & B. L. Burtt) Tzvelev");\r
-\r
-               final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_1.setText("Carduus L.");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_2.setText("Carduus carpetanus Boiss. & Reut.");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_3.setText("Carduus kerneri Simonk.");\r
-\r
-               final TableItem newItemTableItem_5 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_5.setText("Senecio eboracensis R. J. Abbott & A. J. Lowe");\r
-\r
-               final TableItem newItemTableItem_6 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_6.setText("Senecio elegans L.");               \r
-               \r
-               final Group group_2 = new Group(composite, SWT.NONE);\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               group_2.setLayout(gridLayout_1);\r
-\r
-               final Button searchForNameButton = new Button(group_2, SWT.RADIO);\r
-               searchForNameButton.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));\r
-               searchForNameButton.setText("Search for name of accepted taxon");\r
-               new Label(group_2, SWT.NONE);\r
-               \r
-               searchText = new Text(group_2, SWT.BORDER);\r
-               searchText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               searchText.setText("Use \"*\" for wildcard searching");\r
-               searchText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               searchText.setForeground(SWTResourceManager.getColor(0,0,0));\r
-                               searchText.setText("");\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               if (searchText.getText() == "") {\r
-                                       searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                       searchText.setText("Use \"*\" for wildcard searching");                                 \r
-                               }\r
-                               \r
-                       }\r
-                       \r
-               });\r
-\r
-               final Button searchButton = new Button(group_2, SWT.NONE);\r
-               searchButton.setLayoutData(new GridData());\r
-               searchButton.setText("Search");\r
-\r
-               final Composite composite_1 = new Composite(container, SWT.NONE);\r
-               composite_1.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 2, 1));\r
-               composite_1.setLayout(new FillLayout());\r
-\r
-               final Label selectedTaxonLabel = new Label(composite_1, SWT.NONE);\r
-               selectedTaxonLabel.setText("Selected taxon: ");\r
-\r
-               final Label currentSelectionSenecioLabel = new Label(composite_1, SWT.RIGHT);\r
-               currentSelectionSenecioLabel.setFont(SWTResourceManager.getFont("", 9, SWT.BOLD));\r
-               currentSelectionSenecioLabel.setText("Senecio elegans L.");\r
-               new Label(container, SWT.NONE);\r
-               \r
-               \r
-               //\r
-               return container;\r
-       }\r
-\r
-       /**\r
-        * Create contents of the button bar\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected void createButtonsForButtonBar(Composite parent) {\r
-               createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,\r
-                               true);\r
-               createButton(parent, IDialogConstants.CANCEL_ID,\r
-                               IDialogConstants.CANCEL_LABEL, false);\r
-       }\r
-\r
-       /**\r
-        * Return the initial size of the dialog\r
-        */\r
-       @Override\r
-       protected Point getInitialSize() {\r
-               return new Point(700, 500);\r
-       }\r
-       protected void configureShell(Shell newShell) {\r
-               super.configureShell(newShell);\r
-               newShell.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/edit_16x16.ico"));\r
-               newShell.setText("Move \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MultiPagePilosellaView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MultiPagePilosellaView.java
deleted file mode 100644 (file)
index 7f22029..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.MultiPageEditorPart;\r
-\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal1.model.NameEditorInput;\r
-import eu.etaxonomy.taxeditor.designproposal1.model.TaxonName;\r
-\r
-public class MultiPagePilosellaView extends MultiPageEditorPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.mpetestview";\r
-       private TaxonName taxonname;\r
-       \r
-       @Override\r
-       protected void createPages() {\r
-               try {\r
-                       if (taxonname.getName() == "Carduus") {\r
-                               this.setPartName("Carduus L.");\r
-                               addPage(0, new CarduusEditorView(), new NameEditorInput(new TaxonName()));\r
-                       } else if (taxonname.getName() == "Pilosella") {\r
-                               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-                               addPage(0, new PilosellaEditorView(), new NameEditorInput(new TaxonName()));\r
-                       } else {\r
-                               this.setPartName("New taxon");\r
-                               addPage(0, new NameEditorView(), new NameEditorInput(new TaxonName()));                         \r
-                       }\r
-                       setPageText(0, "Name");\r
-\r
-                       addPage(1, new EmptyEditorView(), new NameEditorInput(new TaxonName()));\r
-                       setPageText(1, "Facts");\r
-                       \r
-                       addPage(2, new EmptyEditorView(), new NameEditorInput(new TaxonName()));\r
-                       setPageText(2, "Specimen");\r
-                       \r
-                       addPage(3, new EmptyEditorView(), new NameEditorInput(new TaxonName()));\r
-                       setPageText(3, "Geographic");\r
-                       \r
-               } catch (PartInitException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     System.out.println(taxonname.getCreatedWho());\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-       \r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MyCompletionProcessor.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MyCompletionProcessor.java
deleted file mode 100644 (file)
index 55beddb..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.jface.text.ITextViewer;\r
-import org.eclipse.jface.text.contentassist.CompletionProposal;\r
-import org.eclipse.jface.text.contentassist.ContextInformation;\r
-import org.eclipse.jface.text.contentassist.ICompletionProposal;\r
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;\r
-import org.eclipse.jface.text.contentassist.IContextInformation;\r
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Image;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
-\r
-public class MyCompletionProcessor implements IContentAssistProcessor {\r
-\r
-       protected final static String[] myProposals = { "Unknown synonymy", \r
-                                                       "Create homotypic synonym",\r
-                                                       "Create heterotypic synoynm",\r
-                                                       "Create basionym",\r
-                                                       "Create replaced synonym",\r
-                                                       "Create homonym",\r
-                                                       "Create orthographic variant",\r
-                                                       "Create misapplied name",\r
-                                                       "Create concept relation"};\r
-       protected final static String[] myIcons = { "icons/unknown.gif", \r
-                                                       "icons/homosyn.gif", \r
-                                                       "icons/heterosyn.gif",\r
-                                                       "icons/basionym.gif",\r
-                                                       "icons/repsyn.gif",\r
-                                                       "icons/homonym.gif",\r
-                                                       "icons/orthovariant.gif",\r
-                                                       "icons/misapplied.gif",\r
-                                                       "icons/concept.gif"};\r
-       protected final static String[] myContexts = { "To create a homotypic synonym, there are many things to consider. I could go on all day.",\r
-                                                       "Create homotypic synonym",\r
-                                                       "Create heterotypic synoynm",\r
-                                                       "Create basionym",\r
-                                                       "Create replaced synonym",\r
-                                                       "Create homonym",\r
-                                                       "Create orthographic variant",\r
-                                                       "Create misapplied name",\r
-                                                       "Create concept relation"};\r
-       \r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public ICompletionProposal[] computeCompletionProposals(\r
-               ITextViewer viewer, int documentOffset) {\r
-               String context = "Describe formatting / parsing of this rel. type.";\r
-//             Image img = ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown.gif");\r
-               ICompletionProposal[] result =\r
-                       new ICompletionProposal[myProposals.length];\r
-               for (int i = 0; i < myProposals.length; i++) {\r
-                     IContextInformation contextInfo = \r
-                                new ContextInformation(null, myProposals[i]+" Style");\r
-                       result[i] = new CompletionProposal(myProposals[i],documentOffset, 0, \r
-                                       myProposals[i].length(), ResourceManager.getPluginImage(Activator.getDefault(), myIcons[i]), \r
-                                       myProposals[i], contextInfo, context);\r
-\r
-               }\r
-               return result;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public char[] getCompletionProposalAutoActivationCharacters() {\r
-               return new char[] { '=', (char) SWT.CR };\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public char[] getContextInformationAutoActivationCharacters() {\r
-               return null;\r
-       }\r
-\r
-       // For Context information \r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public IContextInformationValidator getContextInformationValidator() {\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public IContextInformation[] computeContextInformation(\r
-               ITextViewer viewer,\r
-               int documentOffset) {\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public String getErrorMessage() {\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MyRuleScanner.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MyRuleScanner.java
deleted file mode 100644 (file)
index c68ce97..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import org.eclipse.jface.text.TextAttribute;\r
-import org.eclipse.jface.text.rules.EndOfLineRule;\r
-import org.eclipse.jface.text.rules.IRule;\r
-import org.eclipse.jface.text.rules.IToken;\r
-import org.eclipse.jface.text.rules.RuleBasedScanner;\r
-import org.eclipse.jface.text.rules.SingleLineRule;\r
-import org.eclipse.jface.text.rules.Token;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-public class MyRuleScanner extends RuleBasedScanner {\r
-       private static Color TAG_COLOR= new Color(Display.getCurrent(), new RGB(200, 0, 0));\r
-       private static Color COMMENT_COLOR= new Color(Display.getCurrent(), new RGB(0, 200, 0));\r
-\r
-       public MyRuleScanner() {\r
-               IToken tagToken =\r
-                       new Token(new TextAttribute(TAG_COLOR));\r
-//                             new TextAttribute(TAG_COLOR,\r
-//                             null,\r
-//                             SWT.BOLD,\r
-//                             SWTResourceManager.getFont("Georgia", 11, SWT.NONE)));\r
-\r
-               IToken commentToken= new Token(new TextAttribute(COMMENT_COLOR));\r
-\r
-               IRule[] rules = new IRule[2];\r
-               //Add rule for processing instructions\r
-               rules[0] = new SingleLineRule("<myTag", "myTag>", tagToken);\r
-               rules[1] = new EndOfLineRule("//", commentToken); //$NON-NLS-1$\r
-               setRules(rules);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MySourceViewerConfig.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/MySourceViewerConfig.java
deleted file mode 100644 (file)
index a66fade..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.TextAttribute;\r
-import org.eclipse.jface.text.contentassist.ContentAssistant;\r
-import org.eclipse.jface.text.contentassist.IContentAssistant;\r
-import org.eclipse.jface.text.presentation.IPresentationReconciler;\r
-import org.eclipse.jface.text.presentation.PresentationReconciler;\r
-import org.eclipse.jface.text.rules.DefaultDamagerRepairer;\r
-import org.eclipse.jface.text.rules.Token;\r
-import org.eclipse.jface.text.source.ISourceViewer;\r
-import org.eclipse.jface.text.source.SourceViewerConfiguration;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-public class MySourceViewerConfig extends SourceViewerConfiguration {\r
-       private MyRuleScanner scanner;\r
-       private static Color DEFAULT_TAG_COLOR =\r
-               new Color(Display.getCurrent(), new RGB(0, 0, 0));\r
-\r
-       public MySourceViewerConfig() {\r
-       }\r
-\r
-       protected MyRuleScanner getTagScanner() {\r
-               if (scanner == null) {\r
-                       scanner = new MyRuleScanner();\r
-                       scanner.setDefaultReturnToken(\r
-                               new Token(\r
-                                       new TextAttribute(DEFAULT_TAG_COLOR,\r
-                                       null,\r
-                                       0,\r
-                                       SWTResourceManager.getFont("Georgia", 11, SWT.BOLD | SWT.ITALIC))\r
-                               ));\r
-               }\r
-               return scanner;\r
-       }\r
-\r
-       /**\r
-        * Define reconciler for MyEditor\r
-        */\r
-       public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer) {\r
-               PresentationReconciler reconciler = new PresentationReconciler();\r
-               DefaultDamagerRepairer dr = new DefaultDamagerRepairer(getTagScanner());\r
-               reconciler.setDamager(dr, IDocument.DEFAULT_CONTENT_TYPE);\r
-               reconciler.setRepairer(dr, IDocument.DEFAULT_CONTENT_TYPE);\r
-               return reconciler;\r
-       }\r
-       \r
-       public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {\r
-\r
-               ContentAssistant assistant = new ContentAssistant();\r
-               assistant.setContentAssistProcessor(\r
-                       new MyCompletionProcessor(),\r
-                       IDocument.DEFAULT_CONTENT_TYPE);\r
-               assistant.enableAutoActivation(true);\r
-               assistant.setAutoActivationDelay(50);\r
-               assistant.setProposalPopupOrientation(\r
-                       IContentAssistant.PROPOSAL_OVERLAY);\r
-               assistant.setStatusLineVisible(true);\r
-               assistant.setStatusMessage("Create a nomenclatural or taxonomic relationship");\r
-               assistant.setProposalSelectorBackground(\r
-                               new Color(Display.getCurrent(), new RGB(255, 255, 255)));\r
-               assistant.setInformationControlCreator(\r
-                               getInformationControlCreator(sourceViewer)); // this is what pops up the yellow context box\r
-               return assistant;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/NameEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/NameEditorView.java
deleted file mode 100644 (file)
index fc039c7..0000000
+++ /dev/null
@@ -1,523 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.TextViewer;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.PopupList;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.ControlAdapter;\r
-import org.eclipse.swt.events.ControlEvent;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.KeyAdapter;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.KeyListener;\r
-import org.eclipse.swt.events.MenuAdapter;\r
-import org.eclipse.swt.events.MenuEvent;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.CoolBar;\r
-import org.eclipse.swt.widgets.CoolItem;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.ToolBar;\r
-import org.eclipse.swt.widgets.ToolItem;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-//import org.eclipse.ui.texteditor.AbstractTextEditor;\r
-\r
-//import eu.etaxonomy.cdm.event.ICdmEventListener;\r
-//import eu.etaxonomy.cdm.event.ICdmEventListenerRegistration;\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal1.controller.OpenNameEditorAction;\r
-import eu.etaxonomy.taxeditor.designproposal1.controller.SaveNameAction;\r
-import eu.etaxonomy.taxeditor.designproposal1.model.TaxonName;\r
-\r
-//public class NameEditorView extends EditorPart implements ICdmEventListener {\r
-public class NameEditorView extends EditorPart {\r
-\r
-       private Table table_1;\r
-       private Text text_3;\r
-       private StyledText styledText;\r
-       private TaxonName taxonname;\r
-       private Text clickHereToText;\r
-       \r
-       public boolean dirtyBoy = false;\r
-       String clickText;\r
-       \r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.nameeditorview"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               //\r
-               \r
-               \r
-//             txtPlay = new Text(container, SWT.BORDER);\r
-//             txtPlay.setCapture(true);\r
-//             final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);\r
-//             gd_txtPlay.heightHint = 96;\r
-//             txtPlay.setLayoutData(gd_txtPlay);\r
-////           txtPlay.addVerifyListener(new VerifyListener() {\r
-////                   @Override\r
-////                   public void verifyText(VerifyEvent e) {\r
-////                   e.doit = Character.isDigit(e.character);\r
-////               }           \r
-////           });\r
-//             txtPlay.addSelectionListener(new SelectionListener() {\r
-//\r
-//                     @Override\r
-//                     public void widgetDefaultSelected(SelectionEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//\r
-//                     @Override\r
-//                     public void widgetSelected(SelectionEvent e) {\r
-//                             System.out.println(e.toString());\r
-//                     }\r
-//                     \r
-//                     \r
-//             });\r
-//             \r
-//             \r
-//             txtPlay.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             System.out.println(e.character);\r
-//                             if (e.character == '=') {\r
-//                                     Shell shell = Activator.getDefault().getWorkbench().\r
-//                                             getActiveWorkbenchWindow().getShell();\r
-//                                     PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-////                                   Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-//                                     // Add the items to the list\r
-//                                     String[] OPTIONS = { "Create homo. syn.",\r
-//                                                     "Create hetero. syn.",\r
-//                                                     "Create mis. name",\r
-//                                                     "Create homonym"};\r
-//\r
-//                                     list.setItems(OPTIONS);\r
-//                                     \r
-//                                     // Open the list and get the selected item\r
-//                                     String selected = list.open(txtPlay.getBounds());\r
-//                                     \r
-//                                     // Print the item to the console\r
-//                                     System.out.println(selected);                                   \r
-//                             }\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//             });\r
-               parent.setLayout(new GridLayout());\r
-               Document doc = new Document("");\r
-\r
-               final Label taxonomicallyIncludedInLabel = new Label(parent, SWT.NONE);\r
-               taxonomicallyIncludedInLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));\r
-               taxonomicallyIncludedInLabel.setText(" ");\r
-\r
-               final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
-//             toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
-               itemSave.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemSave.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save.gif"));\r
-               itemSave.addSelectionListener(new SelectionListener() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               \r
-//                             taxonname.setGenus(txtGenus.getText());\r
-//                             taxonname.setSpecificEpithet(txtSpEpi.getText());\r
-                               \r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-               });\r
-\r
-               final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemMove.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemMove.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                       }\r
-               });\r
-               \r
-               final Menu menuMove = new Menu(toolBar);\r
-               addDropDown(itemMove, menuMove);\r
-\r
-               final MenuItem moveTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               moveTaxonpilosellaMenuItem.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");\r
-\r
-               final MenuItem turnTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               turnTaxonpilosellaMenuItem.setSelection(true);\r
-               turnTaxonpilosellaMenuItem.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");\r
-\r
-                               \r
-//             });\r
-//             newItemToolItem.setText("New item");\r
-               itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-\r
-               final ToolItem itemDelete = new ToolItem(toolBar, SWT.NONE);\r
-               itemDelete.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemDelete.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-                               \r
-               final ToolItem separator1 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddRelationship.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/rel_no_bg.gif"));\r
-               \r
-               final Menu menuAddRel = new Menu(toolBar);\r
-               menuAddRel.setData("x", null);\r
-               addDropDown(itemAddRelationship, menuAddRel);\r
-\r
-               final MenuItem testMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               testMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               testMenuItem.setText("Add synonymy (type unknown)");\r
-\r
-               final MenuItem addHomotypicSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomotypicSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               addHomotypicSynonymMenuItem.setText("Add homotypic synonym");\r
-\r
-               final MenuItem addHeterotypicSynoynmMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHeterotypicSynoynmMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               addHeterotypicSynoynmMenuItem.setText("Add heterotypic synoynm");\r
-\r
-               final MenuItem addBasionymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addBasionymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               addBasionymMenuItem.setText("Add basionym");\r
-\r
-               final MenuItem addReplacedSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addReplacedSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               addReplacedSynonymMenuItem.setText("Add replaced synonym");\r
-\r
-               final MenuItem addHomonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               addHomonymMenuItem.setText("Add homonym");\r
-\r
-               final MenuItem addOrthographicVariantMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addOrthographicVariantMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               addOrthographicVariantMenuItem.setText("Add orthographic variant");\r
-\r
-               final MenuItem addMisappliedNameMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addMisappliedNameMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               addMisappliedNameMenuItem.setText("Add misapplied name");\r
-\r
-               final MenuItem addConceptRelationMenuItem_1 = new MenuItem(menuAddRel, SWT.CASCADE);\r
-               addConceptRelationMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               addConceptRelationMenuItem_1.setText("Add concept relation");\r
-\r
-               final Menu menu = new Menu(addConceptRelationMenuItem_1);\r
-               addConceptRelationMenuItem_1.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setText("congruent");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setSelection(true);\r
-               checkboxMenuItem_1.setText("included in");\r
-\r
-               final MenuItem checkboxMenuItem_2 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_2.setText("includes");\r
-\r
-               final MenuItem checkboxMenuItem_3 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_3.setText("overlaps");\r
-\r
-               final MenuItem checkboxMenuItem_4 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_4.setText("excludes");\r
-\r
-               final MenuItem checkboxMenuItem_5 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_5.setSelection(true);\r
-               checkboxMenuItem_5.setText("doubtful");\r
-               \r
-               final ToolItem separator2 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddTaxon = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddTaxon.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add_no_bg2.gif"));\r
-               itemAddTaxon.setToolTipText("Add new taxon");\r
-\r
-               final Menu menuAdd = new Menu(toolBar);\r
-               menuAdd.setData("x", null);\r
-               addDropDown(itemAddTaxon, menuAdd);\r
-\r
-               final MenuItem addTaxonToMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addTaxonToMenuItem.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final MenuItem addNewTaxonMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addNewTaxonMenuItem.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final Composite composite = new Composite(parent, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.horizontalSpacing = 3;\r
-               gridLayout_2.numColumns = 2;\r
-               composite.setLayout(gridLayout_2);\r
-\r
-               clickText = "Click here to start entering accepted name or enter its individual fields in the property sheet to the right";\r
-               \r
-               clickHereToText = new Text(composite, SWT.WRAP);\r
-               clickHereToText.addKeyListener(new KeyAdapter() {\r
-                       public void keyPressed(final KeyEvent e) {\r
-                       }\r
-               });\r
-               clickHereToText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               clickHereToText.setText(clickText);\r
-               clickHereToText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.ITALIC));\r
-               final GridData gd_clickHereToText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_clickHereToText.widthHint = 426;\r
-               clickHereToText.setLayoutData(gd_clickHereToText);\r
-               clickHereToText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-//                             clickHereToText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                               if (!dirtyBoy) {\r
-                                       clickHereToText.setText("");\r
-                                       clickHereToText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
-                                       clickHereToText.setForeground(SWTResourceManager.getColor(0, 0, 0));\r
-                                       dirtyBoy = true;\r
-                                       firePropertyChange(PROP_DIRTY);\r
-                               }\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-//                             clickHereToText.setBackground(null);                            \r
-                               if (clickHereToText.getText() == "") {\r
-                                       clickHereToText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                       clickHereToText.setText(clickText);\r
-                                       clickHereToText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.ITALIC));\r
-                                       dirtyBoy = false;\r
-                               } else {\r
-                                       dirtyBoy = true;\r
-                               }\r
-                       }\r
-\r
-               });\r
-//             clickHereToText.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             dirtyBoy = true;\r
-//                             isDirty();\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//                     \r
-//             });\r
-\r
-               table_1 = new Table(composite, SWT.BORDER);\r
-               table_1.setLinesVisible(true);\r
-               table_1.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, true, true, 1, 2));\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn.setWidth(100);\r
-               newColumnTableColumn.setText("New column");\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(100);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem.setText(0, "Rank");\r
-               newItemTableItem.setText("Rank");\r
-               \r
-               final TableItem newItemTableItem_1 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_1.setText(0, "Genus");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_2.setText(0, "Species epithet");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_3.setText(0, "Author team");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_4.setText("...");\r
-//             newItemTableItem_1.setText("Genus");\r
-               //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               SourceViewer sourceviewer = new SourceViewer(composite, null, SWT.WRAP | SWT.FULL_SELECTION);\r
-               sourceviewer.setAnnotationHover(null);\r
-               styledText = sourceviewer.getTextWidget();\r
-               final GridData gd_styledText = new GridData(SWT.FILL, SWT.TOP, true, false);\r
-               gd_styledText.heightHint = 41;\r
-               gd_styledText.widthHint = 450;\r
-               styledText.setLayoutData(gd_styledText);\r
-               sourceviewer.setDocument(doc);\r
-               sourceviewer.configure(new MySourceViewerConfig());\r
-               sourceviewer.setTabsToSpacesConverter(null);\r
-\r
-               \r
-//             final Menu menu = new Menu(toolBar);\r
-//             addDropDown(newItemToolItem, menu);\r
-//             );\r
-               \r
-//             Action testAction = new OpenNameEditorAction();\r
-//             testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));\r
-//             testAction.setToolTipText("Add relation");\r
-//             toolBar.add(testAction);\r
-               \r
-               populateForm();         \r
-       }\r
-\r
-//     private void populateForm() {\r
-//             \r
-//             String fulltext = "";\r
-//             \r
-//             if (taxonname.getGenus() != null) {\r
-//                     fulltext = taxonname.getGenus();\r
-//             }\r
-//\r
-//             if (taxonname.getSpecificEpithet() != null) {\r
-//                     fulltext += " " + taxonname.getSpecificEpithet();\r
-//             }\r
-//\r
-//             if (taxonname.getAuthorship() != null) {\r
-//                     fulltext += " " + taxonname.getAuthorship();\r
-//             }\r
-//             \r
-////           txtPlay.setText(fulltext);\r
-////           txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");\r
-//             \r
-//             this.setPartName(taxonname.getName());\r
-//     }\r
-\r
-       private void populateForm() {\r
-               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-       }\r
-       \r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return dirtyBoy;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       public void propertyChange(PropertyChangeEvent evt) {\r
-//             TaxonName taxonname = (TaxonName)evt.getNewValue();\r
-               this.taxonname = (TaxonName)evt.getNewValue();\r
-               System.out.println(((TaxonName)evt.getNewValue()).getName());\r
-               populateForm();\r
-               \r
-               // for individual fields, do something like:\r
-               //      if (evt.getPropertyName().equalsIgnoreCase("genus"))\r
-               //              txtGenus.setText ...\r
-       }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-       \r
-       private static void addDropDown(final ToolItem item, final Menu menu) {\r
-               item.addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               if (event.detail == SWT.ARROW) {\r
-                                       Rectangle rect = item.getBounds();\r
-                                       Point pt = new Point(rect.x, rect.y + rect.height);\r
-                                       pt = item.getParent().toDisplay(pt);\r
-                                       menu.setLocation(pt.x, pt.y);\r
-                                       menu.setVisible(true);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/NameListView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/NameListView.java
deleted file mode 100644 (file)
index 9271b85..0000000
+++ /dev/null
@@ -1,404 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.IStructuredContentProvider;\r
-import org.eclipse.jface.viewers.ITableLabelProvider;\r
-import org.eclipse.jface.viewers.LabelProvider;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.jface.viewers.TreeViewer;\r
-import org.eclipse.jface.viewers.Viewer;\r
-import org.eclipse.jface.viewers.ViewerLabel;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StackLayout;\r
-import org.eclipse.swt.events.FocusAdapter;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.layout.RowData;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.ExpandBar;\r
-import org.eclipse.swt.widgets.ExpandItem;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-//import eu.etaxonomy.cdm.api.service.INameService;\r
-//import eu.etaxonomy.cdm.event.ICdmEventListener;\r
-//import eu.etaxonomy.cdm.event.ICdmEventListenerRegistration;\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal1.controller.OpenNameEditorAction;\r
-\r
-//public class NameListView extends ViewPart implements ICdmEventListener {\r
-public class NameListView extends ViewPart {\r
-       private Text searchText;\r
-       private Table table;\r
-       private Composite composite;\r
-       private Tree tree;\r
-       private Composite taxTreeComposite = null;\r
-       private Composite recentNamesComposite = null;\r
-       private Composite searchComposite = null;       \r
-       private Composite top = null;\r
-       private ExpandBar expandBar = null;\r
-       private ExpandItem taxTreeExpandItem;\r
-       private ExpandItem recentNamesExpandItem;\r
-       private ExpandItem searchExpandItem;    \r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.namelistview"; //$NON-NLS-1$\r
-\r
-       \r
-       \r
-       /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               // TODO Auto-generated method stub\r
-               parent.setLayout(new FillLayout());\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.horizontalSpacing = 0;\r
-               gridLayout.marginWidth = 0;\r
-               gridLayout.marginHeight = 0;\r
-               gridLayout.verticalSpacing = 0; \r
-                               \r
-               top = new Composite(parent, SWT.NONE);\r
-               top.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               composite = new Composite(top, SWT.NONE);\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               composite.setLayout(gridLayout_1);\r
-               final Label lblDataSourceTitle = new Label(composite, SWT.NONE);\r
-               lblDataSourceTitle.setFont(SWTResourceManager.getFont("Arial", 14, SWT.BOLD));\r
-               lblDataSourceTitle.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDataSourceTitle.setAlignment(SWT.CENTER);\r
-               lblDataSourceTitle.setText(" Euro+Med");                \r
-               \r
-               final Label lblDbImg = new Label(composite, SWT.NONE);\r
-               lblDbImg.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));\r
-               lblDbImg.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDbImg.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/db.gif"));\r
-\r
-               final Menu menu = new Menu(lblDbImg);\r
-               lblDbImg.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setSelection(true);\r
-               checkboxMenuItem.setText("Euro+Med (mssql://128.14.101.12:80/europlusmed)");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setText("WP6 (mssql://128.14.101.13:80/wp6)");\r
-\r
-               final MenuItem palmWebora1922299480pwMenuItem = new MenuItem(menu, SWT.NONE);\r
-               palmWebora1922299480pwMenuItem.setText("Palm Web (ora://192.22.99.4:80/pw)");\r
-\r
-               new MenuItem(menu, SWT.SEPARATOR);\r
-\r
-               final MenuItem newDataSourceMenuItem = new MenuItem(menu, SWT.NONE);\r
-               newDataSourceMenuItem.setText("New data source ...");\r
-               \r
-               final Label lblDataSource = new Label(composite, SWT.NONE);\r
-               final GridData gd_lblDataSource = new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1);\r
-               gd_lblDataSource.heightHint = 16;\r
-               lblDataSource.setLayoutData(gd_lblDataSource);\r
-               lblDataSource.setFont(SWTResourceManager.getFont("Arial", 8, SWT.NONE));\r
-               lblDataSource.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDataSource.setAlignment(SWT.CENTER);\r
-               lblDataSource.setText("  mssql://128.14.101.12:80/europlusmed");\r
-\r
-               \r
-               createExpandBar();\r
-               top.setLayout(gridLayout);\r
-               top.setTabList(new Control[] {composite, expandBar});\r
-       }\r
-\r
-       /**\r
-        * This method initializes expandBar\r
-        * \r
-        */\r
-       private void createExpandBar() {\r
-               expandBar = new ExpandBar(top, SWT.V_SCROLL);\r
-               GridData gridData = new GridData();\r
-               gridData.horizontalAlignment = GridData.FILL;\r
-               gridData.grabExcessHorizontalSpace = true;\r
-               gridData.grabExcessVerticalSpace = true;\r
-               gridData.verticalAlignment = GridData.FILL;\r
-               expandBar.setLayoutData(gridData);\r
-               createNameListComposite();\r
-               createRecentNamesComposite();\r
-               createSearchComposite();\r
-               \r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();               \r
-               \r
-       }\r
-       \r
-       private void createNameListComposite() {\r
-\r
-\r
-               \r
-       }\r
-       \r
-       private void createRecentNamesComposite() {\r
-               taxTreeExpandItem = new ExpandItem(expandBar, SWT.NONE, 0);\r
-               taxTreeExpandItem.setExpanded(true);\r
-               taxTreeExpandItem.setHeight(200);\r
-               taxTreeExpandItem.setText("Taxonomic Tree");\r
-//                             IFileArrangerImages.IMG_HOME);\r
-//             nameListExpandItem.setImage(image);\r
-               \r
-               taxTreeComposite = new Composite(expandBar, SWT.NONE);\r
-               taxTreeComposite.setLayout(new FillLayout());\r
-               taxTreeComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               \r
-               taxTreeExpandItem.setControl(taxTreeComposite);\r
-\r
-               tree = new Tree(taxTreeComposite, SWT.FULL_SELECTION);\r
-               tree.setItemCount(1);\r
-               tree.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDoubleClick(final MouseEvent e) {\r
-                               new OpenNameEditorAction("Pilosella").run();\r
-                       }\r
-               });\r
-\r
-               final TreeItem newItemTreeItem = new TreeItem(tree, SWT.NONE);\r
-               newItemTreeItem.setChecked(true);\r
-               newItemTreeItem.setText("Compositae Giseke");\r
-\r
-               final TreeItem newItemTreeItem_1 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_1.setItemCount(1);\r
-               newItemTreeItem_1.setText("Anthemideae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_2 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_2.setItemCount(1);\r
-               newItemTreeItem_2.setText("Arctotideae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_3 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_3.setItemCount(1);\r
-               newItemTreeItem_3.setText("Astereae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_4 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_4.setItemCount(1);\r
-               newItemTreeItem_4.setText("Calenduleae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_5 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_5.setItemCount(1);\r
-               newItemTreeItem_5.setText("Cardueae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_6 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_6.setText("Cichorieae Lam. & DC.");\r
-\r
-               final TreeItem newItemTreeItem_16 = new TreeItem(newItemTreeItem_6, SWT.NONE);\r
-               newItemTreeItem_16.setExpanded(true);\r
-               newItemTreeItem_16.setText("Pilosella Vaill.");\r
-\r
-               final TreeItem newItemTreeItem_17 = new TreeItem(newItemTreeItem_16, SWT.NONE);\r
-               newItemTreeItem_17.setText("Pilosella fuscoatra coll.");\r
-\r
-               final TreeItem newItemTreeItem_18 = new TreeItem(newItemTreeItem_17, SWT.NONE);\r
-               newItemTreeItem_18.setFont(SWTResourceManager.getFont("", 8, SWT.BOLD));\r
-               newItemTreeItem_18.setExpanded(true);\r
-               newItemTreeItem_18.setText("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-\r
-               final TreeItem newItemTreeItem_7 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_7.setItemCount(1);\r
-               newItemTreeItem_7.setText("Eupatorieae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_8 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_8.setItemCount(1);\r
-               newItemTreeItem_8.setText("Gnaphalieae Lecoq & Juillet");\r
-\r
-               final TreeItem newItemTreeItem_9 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_9.setItemCount(1);\r
-               newItemTreeItem_9.setText("Helenieae Lindl.");\r
-\r
-               final TreeItem newItemTreeItem_10 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_10.setItemCount(1);\r
-               newItemTreeItem_10.setText("Heliantheae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_11 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_11.setItemCount(1);\r
-               newItemTreeItem_11.setText("Inuleae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_12 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_12.setItemCount(1);\r
-               newItemTreeItem_12.setText("Mutisieae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_13 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_13.setItemCount(1);\r
-               newItemTreeItem_13.setText("Plucheeae Anderb.");\r
-\r
-               final TreeItem newItemTreeItem_14 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_14.setItemCount(1);\r
-               newItemTreeItem_14.setText("Senecioneae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_15 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_15.setItemCount(1);\r
-               newItemTreeItem_15.setText("Vernonieae Cass.");\r
-               taxTreeComposite.setTabList(new Control[] {tree});\r
-               recentNamesExpandItem = new ExpandItem(expandBar, SWT.NONE, 1);\r
-               recentNamesExpandItem.setHeight(130);\r
-               recentNamesExpandItem.setExpanded(true);\r
-               recentNamesExpandItem.setText("Recently viewed names");\r
-               recentNamesComposite = new Composite(expandBar, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               recentNamesComposite.setLayout(gridLayout);\r
-\r
-               recentNamesExpandItem.setControl(recentNamesComposite);\r
-\r
-               table = new Table(recentNamesComposite, SWT.NONE);\r
-               table.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDoubleClick(final MouseEvent e) {\r
-                               new OpenNameEditorAction("Carduus").run();\r
-                       }\r
-               });\r
-               table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem.setText("Laphangium (Hilliard & B. L. Burtt) Tzvelev");\r
-\r
-               final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_1.setText("Carduus L.");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_2.setText("Carduus carpetanus Boiss. & Reut.");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_3.setText("Carduus kerneri Simonk.");\r
-\r
-               final TableItem newItemTableItem_5 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_5.setText("Senecio eboracensis R. J. Abbott & A. J. Lowe");\r
-\r
-               final TableItem newItemTableItem_6 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_6.setText("Senecio elegans L.");\r
-\r
-//             Image image = FileArrangerImages.getImageRegistry().get(\r
-//                             IFileArrangerImages.IMG_BOOKMARK);\r
-//             bookmarksExpandItem.setImage(image);\r
-       }\r
-\r
-       private void createSearchComposite() {\r
-               searchExpandItem = new ExpandItem(expandBar, SWT.NONE, 2);\r
-               searchExpandItem.setHeight(50);\r
-               searchExpandItem.setExpanded(true);\r
-               searchExpandItem.setText("Search");\r
-               searchComposite = new Composite(expandBar, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               searchComposite.setLayout(gridLayout);\r
-\r
-               searchExpandItem.setControl(searchComposite);\r
-\r
-               searchText = new Text(searchComposite, SWT.BORDER);\r
-               searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               searchText.setText("Use \"*\" for wildcard searching");\r
-               final GridData gd_useForText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               searchText.setLayoutData(gd_useForText);\r
-               searchText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               searchText.setForeground(SWTResourceManager.getColor(0,0,0));\r
-                               searchText.setText("");\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               if (searchText.getText() == "") {\r
-                                       searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                       searchText.setText("Use \"*\" for wildcard searching");                                 \r
-                               }\r
-                               \r
-                       }\r
-                       \r
-               });\r
-\r
-               final Button searchButton = new Button(searchComposite, SWT.NONE);\r
-               searchButton.setText("Search");\r
-\r
-//             final Label carduusLLabel = new Label(searchComposite, SWT.NONE);\r
-//             carduusLLabel.setLayoutData(gd_carduusLLabel);\r
-//             carduusLLabel.setText("Carduus L.");\r
-//\r
-//             final Label carduusCarpetanusBoissLabel = new Label(searchComposite, SWT.NONE);\r
-//             carduusCarpetanusBoissLabel.setLayoutData(gd_carduusCarpetanusBoissLabel);\r
-//             carduusCarpetanusBoissLabel.setText("Carduus carpetanus Boiss. & Reut.");\r
-\r
-//             Image image = FileArrangerImages.getImageRegistry().get(\r
-//                             IFileArrangerImages.IMG_FTP);\r
-//             ftpExpandItem.setImage(image);\r
-       }       \r
-       \r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-       \r
-       /**\r
-        * Refreshes a taxon name in the list\r
-        */\r
-//     public void refreshElement(TaxonName taxonname) {\r
-//     }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             System.out.println("here i am");\r
-//             refreshElement((TaxonName)arg0);\r
-//     }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/PilosellaEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/PilosellaEditorView.java
deleted file mode 100644 (file)
index bf66c06..0000000
+++ /dev/null
@@ -1,692 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.TextViewer;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.PopupList;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.ControlAdapter;\r
-import org.eclipse.swt.events.ControlEvent;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.KeyListener;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.MouseListener;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.CoolBar;\r
-import org.eclipse.swt.widgets.CoolItem;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.ToolBar;\r
-import org.eclipse.swt.widgets.ToolItem;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.editors.text.TextEditor;\r
-import org.eclipse.ui.part.EditorPart;\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-//import org.eclipse.ui.texteditor.AbstractTextEditor;\r
-\r
-//import eu.etaxonomy.cdm.event.ICdmEventListener;\r
-//import eu.etaxonomy.cdm.event.ICdmEventListenerRegistration;\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal1.controller.OpenNameEditorAction;\r
-import eu.etaxonomy.taxeditor.designproposal1.controller.SaveNameAction;\r
-import eu.etaxonomy.taxeditor.designproposal1.model.TaxonName;\r
-\r
-public class PilosellaEditorView extends EditorPart {\r
-//public class PilosellaEditorView extends TextEditor {\r
-\r
-       private Text hieraciumFuscoatrumSubspText_1;\r
-       private Text hieraciumRubroonegenseNorrlText;\r
-       private Table table_1;\r
-       private Text text_3;\r
-       private Text hieraciumFuscoatrumSubspText;\r
-       private Text hieraciumAurantiacumSubspText;\r
-       private Text text_1;\r
-       private StyledText styledText;\r
-       private TaxonName taxonname;\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.pilosellaeditorview"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               //\r
-               \r
-               \r
-//             txtPlay = new Text(container, SWT.BORDER);\r
-//             txtPlay.setCapture(true);\r
-//             final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);\r
-//             gd_txtPlay.heightHint = 96;\r
-//             txtPlay.setLayoutData(gd_txtPlay);\r
-////           txtPlay.addVerifyListener(new VerifyListener() {\r
-////                   @Override\r
-////                   public void verifyText(VerifyEvent e) {\r
-////                   e.doit = Character.isDigit(e.character);\r
-////               }           \r
-////           });\r
-//             txtPlay.addSelectionListener(new SelectionListener() {\r
-//\r
-//                     @Override\r
-//                     public void widgetDefaultSelected(SelectionEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//\r
-//                     @Override\r
-//                     public void widgetSelected(SelectionEvent e) {\r
-//                             System.out.println(e.toString());\r
-//                     }\r
-//                     \r
-//                     \r
-//             });\r
-//             \r
-//             \r
-//             txtPlay.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             System.out.println(e.character);\r
-//                             if (e.character == '=') {\r
-//                                     Shell shell = Activator.getDefault().getWorkbench().\r
-//                                             getActiveWorkbenchWindow().getShell();\r
-//                                     PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-////                                   Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-//                                     // Add the items to the list\r
-//                                     String[] OPTIONS = { "Create homo. syn.",\r
-//                                                     "Create hetero. syn.",\r
-//                                                     "Create mis. name",\r
-//                                                     "Create homonym"};\r
-//\r
-//                                     list.setItems(OPTIONS);\r
-//                                     \r
-//                                     // Open the list and get the selected item\r
-//                                     String selected = list.open(txtPlay.getBounds());\r
-//                                     \r
-//                                     // Print the item to the console\r
-//                                     System.out.println(selected);                                   \r
-//                             }\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//             });\r
-               parent.setLayout(new GridLayout());\r
-               Document doc = new Document();\r
-\r
-               final Label taxonomicallyIncludedInLabel = new Label(parent, SWT.NONE);\r
-               taxonomicallyIncludedInLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));\r
-               taxonomicallyIncludedInLabel.setText("Higher taxon: \"Pilosella fuscoatra coll.\"");\r
-\r
-               final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
-//             toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
-               itemSave.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemSave.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save.gif"));\r
-               itemSave.addSelectionListener(new SelectionListener() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               \r
-//                             taxonname.setGenus(txtGenus.getText());\r
-//                             taxonname.setSpecificEpithet(txtSpEpi.getText());\r
-                               \r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-               });\r
-\r
-               final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemMove.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               \r
-               final Menu menuMove = new Menu(toolBar);\r
-               menuMove.setData("x", null);\r
-               addDropDown(itemMove, menuMove);\r
-\r
-               final MenuItem moveTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               moveTaxonpilosellaMenuItem.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");\r
-\r
-               final MenuItem turnTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               turnTaxonpilosellaMenuItem.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                               new MoveDialogView(getSite().getShell());\r
-//                             MessageDialog.openInformation(getSite().getShell(),"Readme Editor","View Action executed");                             \r
-                               MoveDialogView dialog = new MoveDialogView(getSite().getShell());\r
-                               dialog.open();                          \r
-                       }\r
-               });\r
-               turnTaxonpilosellaMenuItem.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");\r
-               \r
-//             });\r
-//             newItemToolItem.setText("New item");\r
-               itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-\r
-               final ToolItem itemDelete = new ToolItem(toolBar, SWT.NONE);\r
-               itemDelete.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemDelete.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-                               \r
-               final ToolItem separator1 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddRelationship.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/rel_no_bg.gif"));\r
-               \r
-               final Menu menuAddRel = new Menu(toolBar);\r
-               menuAddRel.setData("x", null);\r
-               addDropDown(itemAddRelationship, menuAddRel);\r
-\r
-               final MenuItem testMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               testMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               testMenuItem.setText("Add synonymy (type unknown)");\r
-\r
-               final MenuItem addHomotypicSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomotypicSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               addHomotypicSynonymMenuItem.setText("Add homotypic synonym");\r
-\r
-               final MenuItem addHeterotypicSynoynmMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHeterotypicSynoynmMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               addHeterotypicSynoynmMenuItem.setText("Add heterotypic synoynm");\r
-\r
-               final MenuItem addBasionymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addBasionymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               addBasionymMenuItem.setText("Add basionym");\r
-\r
-               final MenuItem addReplacedSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addReplacedSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               addReplacedSynonymMenuItem.setText("Add replaced synonym");\r
-\r
-               final MenuItem addHomonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               addHomonymMenuItem.setText("Add homonym");\r
-\r
-               final MenuItem addOrthographicVariantMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addOrthographicVariantMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               addOrthographicVariantMenuItem.setText("Add orthographic variant");\r
-\r
-               final MenuItem addMisappliedNameMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addMisappliedNameMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               addMisappliedNameMenuItem.setText("Add misapplied name");\r
-\r
-               final MenuItem addConceptRelationMenuItem_1 = new MenuItem(menuAddRel, SWT.CASCADE);\r
-               addConceptRelationMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               addConceptRelationMenuItem_1.setText("Add concept relation");\r
-\r
-               final Menu menu = new Menu(addConceptRelationMenuItem_1);\r
-               addConceptRelationMenuItem_1.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setText("congruent");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setSelection(true);\r
-               checkboxMenuItem_1.setText("included in");\r
-\r
-               final MenuItem checkboxMenuItem_2 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_2.setText("includes");\r
-\r
-               final MenuItem checkboxMenuItem_3 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_3.setText("overlaps");\r
-\r
-               final MenuItem checkboxMenuItem_4 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_4.setText("excludes");\r
-\r
-               final MenuItem checkboxMenuItem_5 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_5.setSelection(true);\r
-               checkboxMenuItem_5.setText("doubtful");\r
-               \r
-               final ToolItem separator2 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddTaxon = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddTaxon.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add_no_bg2.gif"));\r
-               itemAddTaxon.setToolTipText("Add new taxon");\r
-\r
-               final Menu menuAdd = new Menu(toolBar);\r
-               menuAdd.setData("x", null);\r
-               addDropDown(itemAddTaxon, menuAdd);\r
-\r
-               final MenuItem addTaxonToMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addTaxonToMenuItem.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final MenuItem addNewTaxonMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addNewTaxonMenuItem.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final Composite composite = new Composite(parent, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.horizontalSpacing = 3;\r
-               gridLayout_2.numColumns = 3;\r
-               composite.setLayout(gridLayout_2);\r
-\r
-               text_3 = new Text(composite, SWT.WRAP);\r
-               text_3.setText("Pilosella fuscoatra (Nägeli & Peter) Soják in Preslia 43: 184. 1971 ");\r
-               text_3.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
-               text_3.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
-               text_3.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               text_3.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               text_3.setBackground(null);                             \r
-                       }\r
-\r
-               });\r
-\r
-               table_1 = new Table(composite, SWT.BORDER);\r
-               table_1.setLinesVisible(true);\r
-               table_1.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, true, true, 1, 7));\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn.setWidth(100);\r
-               newColumnTableColumn.setText("New column");\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(100);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem.setText(0, "Rank");\r
-               newItemTableItem.setText(1, "species");\r
-               newItemTableItem.setText("Rank");\r
-               \r
-               final TableItem newItemTableItem_1 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Pilosella");\r
-               newItemTableItem_1.setText(0, "Genus");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_2.setText(1, "fuscoatra");\r
-               newItemTableItem_2.setText(0, "Species epithet");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "Nägeli & Peter");\r
-               newItemTableItem_3.setText(0, "Author team");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_4.setText("...");\r
-//             newItemTableItem_3.setText("Author team");\r
-//             newItemTableItem_2.setText("Species epithet");\r
-//             newItemTableItem_1.setText("Genus");\r
-\r
-               final Label labelWithMenu = new Label(composite, SWT.NONE);\r
-               labelWithMenu.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               labelWithMenu.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               final GridData gd_labelWithMenu = new GridData(SWT.LEFT, SWT.TOP, false, false);\r
-               labelWithMenu.setLayoutData(gd_labelWithMenu);\r
-               \r
-               text_1 = new Text(composite, SWT.WRAP);\r
-               final GridData gd_text_1 = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_text_1.widthHint = 300;\r
-               text_1.setLayoutData(gd_text_1);\r
-               text_1.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.BOLD | SWT.ITALIC));\r
-               text_1.setText("Hieracium fuscoatrum Nägeli & Peter, Hierac. Mitt.-Eur. 1: 315. 1885");\r
-               text_1.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               text_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               text_1.setBackground(null);                             \r
-                       }\r
-\r
-               });\r
-               \r
-\r
-               final Label label_1 = new Label(composite, SWT.NONE);\r
-               label_1.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               label_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               hieraciumAurantiacumSubspText = new Text(composite, SWT.WRAP);\r
-               final GridData gd_hieraciumAurantiacumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumAurantiacumSubspText.widthHint = 300;\r
-               hieraciumAurantiacumSubspText.setLayoutData(gd_hieraciumAurantiacumSubspText);\r
-               hieraciumAurantiacumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumAurantiacumSubspText.setText("Hieracium aurantiacum subsp. chaetodermum Pohle & Zahn in Allg. Bot. Z. Syst. 13: 110. 1907");\r
-               hieraciumAurantiacumSubspText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumAurantiacumSubspText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumAurantiacumSubspText.setBackground(null);                              \r
-                       }\r
-\r
-               });\r
-               \r
-\r
-               final Label label_2 = new Label(composite, SWT.NONE);\r
-               label_2.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_2.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               label_2.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-\r
-//             addDropDown(label_2, menuAddRel);\r
-               \r
-               hieraciumFuscoatrumSubspText = new Text(composite, SWT.WRAP);\r
-               final GridData gd_hieraciumFuscoatrumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumFuscoatrumSubspText.widthHint = 300;\r
-               hieraciumFuscoatrumSubspText.setLayoutData(gd_hieraciumFuscoatrumSubspText);\r
-               hieraciumFuscoatrumSubspText.setText("Hieracium fuscoatrum subsp. chaetodermum (Pohle & Zahn) Zahn in Engler, Pflanzenr. 82: 1267. 1923");\r
-               hieraciumFuscoatrumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumFuscoatrumSubspText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText.setBackground(null);                               \r
-                       }\r
-\r
-               });\r
-\r
-               final Label label = new Label(composite, SWT.NONE);\r
-               label.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               label.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-\r
-               hieraciumRubroonegenseNorrlText = new Text(composite, SWT.WRAP);\r
-               hieraciumRubroonegenseNorrlText.setText("Hieracium rubroonegense Norrl. in Acta Soc. Fauna Fl. Fenn. 26(7): 61. 1904");\r
-               hieraciumRubroonegenseNorrlText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumRubroonegenseNorrlText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumRubroonegenseNorrlText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumRubroonegenseNorrlText.setBackground(null);                            \r
-                       }\r
-\r
-               });             \r
-               final GridData gd_hieraciumRubroonegenseNorrlText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumRubroonegenseNorrlText.widthHint = 300;\r
-               hieraciumRubroonegenseNorrlText.setLayoutData(gd_hieraciumRubroonegenseNorrlText);\r
-\r
-               final Label label_3 = new Label(composite, SWT.NONE);\r
-               label_3.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_3.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               label_3.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               hieraciumFuscoatrumSubspText_1 = new Text(composite, SWT.WRAP);\r
-               hieraciumFuscoatrumSubspText_1.setText("Hieracium fuscoatrum subsp. rubroonegense (Norrl.) Zahn in Engler, Pflanzenr. 82: 1267. 1923");\r
-               hieraciumFuscoatrumSubspText_1.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumFuscoatrumSubspText_1.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText_1.setBackground(null);                             \r
-                       }\r
-\r
-               });     \r
-               final GridData gd_hieraciumFuscoatrumSubspText_1 = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumFuscoatrumSubspText_1.widthHint = 300;\r
-               hieraciumFuscoatrumSubspText_1.setLayoutData(gd_hieraciumFuscoatrumSubspText_1);\r
-               \r
-               final Label label_4 = new Label(composite, SWT.NONE);\r
-               label_4.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_4.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               label_4.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final Menu menu1 = new Menu(labelWithMenu);\r
-               labelWithMenu.setMenu(menu1);\r
-               labelWithMenu.addMouseListener(new MouseListener() {\r
-\r
-                       public void mouseDoubleClick(MouseEvent e) {\r
-                               // TODO Auto-generated method stub\r
-                               \r
-                       }\r
-\r
-                       public void mouseDown(MouseEvent e) {\r
-                               menu1.setVisible(true);\r
-                       }\r
-\r
-                       public void mouseUp(MouseEvent e) {\r
-                               // TODO Auto-generated method stub\r
-                               \r
-                       }\r
-                       \r
-               });\r
-\r
-               final MenuItem deletehieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               deletehieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-               deletehieraciumFuscoatrumMenuItem.setText("Delete \"Hieracium fuscoatrum Nägeli & Peter\" from this taxon");\r
-\r
-               new MenuItem(menu1, SWT.SEPARATOR);\r
-\r
-               final MenuItem moveMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               moveMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-               moveMenuItem.setText("Move \"Hieracium fuscoatrum Nägeli & Peter\" to another taxon");\r
-\r
-               final MenuItem makehieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               makehieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/a_no_bg.gif"));\r
-               makehieraciumFuscoatrumMenuItem.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into an accepted name");\r
-\r
-               new MenuItem(menu1, SWT.SEPARATOR);\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a synonym (type unknown)");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_1 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_1.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homotypic synonym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_2 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_2.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_2.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a heterotypic synoynm");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_3 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_3.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_3.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a basionym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_4 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_4.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_4.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a replaced synonym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_5 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_5.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_5.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homonym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_6 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_6.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_6.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a orthographic variant");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_7 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_7.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_7.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a misapplied name");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_8 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_8.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_8.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a concept relation");\r
-\r
-               SourceViewer sourceviewer = new SourceViewer(composite, null, SWT.WRAP | SWT.FULL_SELECTION);\r
-               sourceviewer.setAnnotationHover(null);\r
-               styledText = sourceviewer.getTextWidget();\r
-               final GridData gd_styledText = new GridData(SWT.FILL, SWT.TOP, true, false);\r
-               gd_styledText.heightHint = 41;\r
-               gd_styledText.widthHint = 450;\r
-               styledText.setLayoutData(gd_styledText);\r
-               sourceviewer.setDocument(doc);\r
-               sourceviewer.configure(new MySourceViewerConfig());\r
-//             sourceviewer.setTabsToSpacesConverter(null);\r
-\r
-               \r
-//             final Menu menu = new Menu(toolBar);\r
-//             addDropDown(newItemToolItem, menu);\r
-//             );\r
-               \r
-//             Action testAction = new OpenNameEditorAction();\r
-//             testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));\r
-//             testAction.setToolTipText("Add relation");\r
-//             toolBar.add(testAction);\r
-               \r
-               populateForm();         \r
-       }\r
-\r
-//     private void populateForm() {\r
-//             \r
-//             String fulltext = "";\r
-//             \r
-//             if (taxonname.getGenus() != null) {\r
-//                     fulltext = taxonname.getGenus();\r
-//             }\r
-//\r
-//             if (taxonname.getSpecificEpithet() != null) {\r
-//                     fulltext += " " + taxonname.getSpecificEpithet();\r
-//             }\r
-//\r
-//             if (taxonname.getAuthorship() != null) {\r
-//                     fulltext += " " + taxonname.getAuthorship();\r
-//             }\r
-//             \r
-////           txtPlay.setText(fulltext);\r
-////           txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");\r
-//             \r
-//             this.setPartName(taxonname.getName());\r
-//     }\r
-\r
-       private void populateForm() {\r
-               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-       }\r
-       \r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return true;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       public void propertyChange(PropertyChangeEvent evt) {\r
-//             TaxonName taxonname = (TaxonName)evt.getNewValue();\r
-               this.taxonname = (TaxonName)evt.getNewValue();\r
-               System.out.println(((TaxonName)evt.getNewValue()).getName());\r
-               populateForm();\r
-               \r
-               // for individual fields, do something like:\r
-               //      if (evt.getPropertyName().equalsIgnoreCase("genus"))\r
-               //              txtGenus.setText ...\r
-       }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-       \r
-       private static void addDropDown(final ToolItem item, final Menu menu) {\r
-               item.addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               if (event.detail == SWT.ARROW) {\r
-                                       Rectangle rect = item.getBounds();\r
-                                       Point pt = new Point(rect.x, rect.y + rect.height);\r
-                                       pt = item.getParent().toDisplay(pt);\r
-                                       menu.setLocation(pt.x, pt.y);\r
-                                       menu.setVisible(true);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/UndoView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/designproposal1/view/UndoView.java
deleted file mode 100644 (file)
index 37a7f23..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal1.view;\r
-\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.PaintEvent;\r
-import org.eclipse.swt.events.PaintListener;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Canvas;\r
-import org.eclipse.swt.widgets.Combo;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.FileDialog;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.List;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.ui.part.ViewPart;\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-import eu.etaxonomy.taxeditor.designproposal1.Activator;\r
-\r
-public class UndoView extends ViewPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.undoview"; //$NON-NLS-1$\r
-    private Table table;\r
-\r
-    /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               container.setLayout(new FillLayout(SWT.VERTICAL));\r
-\r
-               table = new Table(container, SWT.NONE);\r
-               table.getHorizontalBar().setVisible(false);\r
-               table.setLinesVisible(true);\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table, SWT.NONE);\r
-               newColumnTableColumn.setWidth(19);\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(1000);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem.setText(1, "Created taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Added fact (Distribution) \"California deciduous forest ...\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_2.setText(1, "Added fact (Distribution) \"Brazilian (Northerly region)\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "Moved taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_4.setText(1, "Added unknown syn. \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_5 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_5.setText(1, "Changed rel. type to homo. syn. for \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_6 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_6.setText(1, "Edited name \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_7 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_7.setText(new String[] {"Undo the last action"});\r
-               newItemTableItem_7.setImage(0, ResourceManager.getPluginImage(Activator.getDefault(), "icons/undo.gif"));\r
-               newItemTableItem_7.setText(1, "Deleted fact (Distribution) \"Brazilian (Northerly region)\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               //\r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();\r
-       }\r
-\r
-       /**\r
-        * Create the actions\r
-        */\r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/.classpath b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/.classpath
deleted file mode 100644 (file)
index 0215967..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<classpath>\r
-       <classpathentry kind="src" path="src"/>\r
-       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>\r
-       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>\r
-       <classpathentry kind="output" path="bin"/>\r
-</classpath>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/.project b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/.project
deleted file mode 100644 (file)
index e4b6f8b..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<projectDescription>\r
-       <name>eu.etaxonomy.taxeditor.designproposal1</name>\r
-       <comment></comment>\r
-       <projects>\r
-       </projects>\r
-       <buildSpec>\r
-               <buildCommand>\r
-                       <name>org.eclipse.jdt.core.javabuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.ManifestBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.SchemaBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-       </buildSpec>\r
-       <natures>\r
-               <nature>org.eclipse.pde.PluginNature</nature>\r
-               <nature>org.eclipse.jdt.core.javanature</nature>\r
-       </natures>\r
-</projectDescription>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/META-INF/MANIFEST.MF b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/META-INF/MANIFEST.MF
deleted file mode 100644 (file)
index 38ecb1c..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Editor Design Proposal 2
-Bundle-SymbolicName: eu.etaxonomy.taxeditor.designproposal2;singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: eu.etaxonomy.taxeditor.designproposal2.Activator
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.ui.forms,
- org.eclipse.jface.text,
- org.eclipse.ui.editors
-Eclipse-LazyStart: true
-Export-Package: com.swtdesigner,
- eu.etaxonomy.taxeditor.designproposal2,
- eu.etaxonomy.taxeditor.designproposal2.controller,
- eu.etaxonomy.taxeditor.designproposal2.model,
- eu.etaxonomy.taxeditor.designproposal2.view
-Main-Class: eu.etaxonomy.taxeditor.designproposal1.Application
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/build.properties b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/build.properties
deleted file mode 100644 (file)
index e71be90..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-source.. = src/\r
-output.. = bin/\r
-bin.includes = plugin.xml,\\r
-               META-INF/,\\r
-               .,\\r
-               icons/,\\r
-               splash.bmp,\\r
-               bin/,\\r
-               .project,\\r
-               .classpath,\\r
-               build.properties,\\r
-               eu.etaxonomy.taxeditor.designproposal2.product\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/eu.etaxonomy.taxeditor.designproposal2.product b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/eu.etaxonomy.taxeditor.designproposal2.product
deleted file mode 100644 (file)
index 33b4320..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<?pde version="3.1"?>\r
-\r
-<product name="EDIT Taxonomic Editor - Design Proposal 1" id="eu.etaxonomy.taxeditor.designproposal1.product" application="eu.etaxonomy.taxeditor.designproposal1.application" useFeatures="false">\r
-\r
-   <aboutInfo>\r
-      <image path="icons/edit_16x16.gif"/>\r
-      <text>\r
-         Thanks for all the laughs!\r
-      </text>\r
-   </aboutInfo>\r
-\r
-   <configIni use="default"/>\r
-\r
-   <launcherArgs>\r
-      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>\r
-   </launcherArgs>\r
-\r
-   <windowImages i16="icons/edit_16x16.gif"/>\r
-\r
-   <splash\r
-      location="eu.etaxonomy.taxeditor.designproposal1" />\r
-   <launcher name="EDIT Taxonomic Editor">\r
-      <solaris/>\r
-      <win useIco="true">\r
-         <ico path="/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.ico"/>\r
-         <bmp/>\r
-      </win>\r
-   </launcher>\r
-\r
-\r
-   <vm>\r
-      <windows type="jre">jre1.5.0_06</windows>\r
-   </vm>\r
-\r
-   <plugins>\r
-      <plugin id="com.ibm.icu"/>\r
-      <plugin id="eu.etaxonomy.taxeditor.designproposal1"/>\r
-      <plugin id="org.eclipse.core.commands"/>\r
-      <plugin id="org.eclipse.core.contenttype"/>\r
-      <plugin id="org.eclipse.core.databinding"/>\r
-      <plugin id="org.eclipse.core.expressions"/>\r
-      <plugin id="org.eclipse.core.jobs"/>\r
-      <plugin id="org.eclipse.core.runtime"/>\r
-      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>\r
-      <plugin id="org.eclipse.equinox.app"/>\r
-      <plugin id="org.eclipse.equinox.common"/>\r
-      <plugin id="org.eclipse.equinox.preferences"/>\r
-      <plugin id="org.eclipse.equinox.registry"/>\r
-      <plugin id="org.eclipse.help"/>\r
-      <plugin id="org.eclipse.jface"/>\r
-      <plugin id="org.eclipse.jface.databinding"/>\r
-      <plugin id="org.eclipse.jface.text"/>\r
-      <plugin id="org.eclipse.osgi"/>\r
-      <plugin id="org.eclipse.swt"/>\r
-      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>\r
-      <plugin id="org.eclipse.text"/>\r
-      <plugin id="org.eclipse.ui"/>\r
-      <plugin id="org.eclipse.ui.forms"/>\r
-      <plugin id="org.eclipse.ui.workbench"/>\r
-   </plugins>\r
-\r
-</product>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/a_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/a_no_bg.gif
deleted file mode 100644 (file)
index 2f54262..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/a_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add.gif
deleted file mode 100644 (file)
index 29c2aee..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg.gif
deleted file mode 100644 (file)
index 0dd4eab..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg2.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg2.gif
deleted file mode 100644 (file)
index dfbf68f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/add_no_bg2.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_16.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_16.gif
deleted file mode 100644 (file)
index 05626b1..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_32.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_32.gif
deleted file mode 100644 (file)
index b432f88..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/alt_window_32.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym.gif
deleted file mode 100644 (file)
index 2780f44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym_no_bg.gif
deleted file mode 100644 (file)
index 8c3d54b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/basionym_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept.gif
deleted file mode 100644 (file)
index 445cd44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept_no_bg.gif
deleted file mode 100644 (file)
index 362c109..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/concept_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/db.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/db.gif
deleted file mode 100644 (file)
index 1f3b8db..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/db.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/delete.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/delete.gif
deleted file mode 100644 (file)
index 559e462..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/delete.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.gif
deleted file mode 100644 (file)
index d857c6c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.ico b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.ico
deleted file mode 100644 (file)
index d4b6c2b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.ico and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn.gif
deleted file mode 100644 (file)
index ebab24c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn_no_bg.gif
deleted file mode 100644 (file)
index 02a6d38..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/heterosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym.gif
deleted file mode 100644 (file)
index abaf009..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym_no_bg.gif
deleted file mode 100644 (file)
index 05b399a..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homonym_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn.gif
deleted file mode 100644 (file)
index 143c881..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn_no_bg.gif
deleted file mode 100644 (file)
index 19575f7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/homosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied.gif
deleted file mode 100644 (file)
index 18fba08..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied_no_bg.gif
deleted file mode 100644 (file)
index dca3ff0..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/misapplied_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move.gif
deleted file mode 100644 (file)
index f43e9b9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move_no_bg.gif
deleted file mode 100644 (file)
index 2f2a3f0..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/move_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant.gif
deleted file mode 100644 (file)
index 14ade2f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant_no_bg.gif
deleted file mode 100644 (file)
index caf5430..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/orthovariant_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/rel_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/rel_no_bg.gif
deleted file mode 100644 (file)
index 77f03e7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/rel_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn.gif
deleted file mode 100644 (file)
index 1b627ce..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn_no_bg.gif
deleted file mode 100644 (file)
index f2370b4..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/repsyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/save.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/save.gif
deleted file mode 100644 (file)
index ad505a9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/save.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/text.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/text.gif
deleted file mode 100644 (file)
index 9312d7e..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/text.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/undo.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/undo.gif
deleted file mode 100644 (file)
index 3aeba19..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/undo.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown.gif
deleted file mode 100644 (file)
index 8c58c52..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown_no_bg.gif
deleted file mode 100644 (file)
index a6a784b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/icons/unknown_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/plugin.xml b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/plugin.xml
deleted file mode 100644 (file)
index 4dcea39..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<?eclipse version="3.2"?>\r
-<plugin>\r
-\r
-   <extension\r
-         id="application"\r
-         point="org.eclipse.core.runtime.applications">\r
-      <application>\r
-         <run\r
-               class="eu.etaxonomy.taxeditor.designproposal2.Application">\r
-         </run>\r
-      </application>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.perspectives">\r
-      <perspective\r
-            class="eu.etaxonomy.taxeditor.designproposal2.Perspective"\r
-            fixed="false"\r
-            id="eu.etaxonomy.taxeditor.designproposal2.perspective"\r
-            name="Perspective">\r
-      </perspective>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.views">\r
-      <view\r
-            name="Create Name"\r
-            class="eu.etaxonomy.taxeditor.designproposal2.view.CreateNameView"\r
-            id="eu.etaxonomy.taxeditor.designproposal2.view.createnameview">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal2.view.NameListView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal2.view.namelistview"\r
-            name="Name List View">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal2.view.LastNameView"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.lastnameview"\r
-            name="Last Name Created">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal2.view.EditorMockupView"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.editormockupview"\r
-            name="New ViewPart">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal2.view.DogView"\r
-            id="eu.etaxonomy.taxeditor.designproposal1.view.DogView"\r
-            name="New ViewPart">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.designproposal2.view.UndoView"\r
-            icon="icons/text.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal2.view.undoview"\r
-            name="Recent Actions">\r
-      </view>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.editors">\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.designproposal2.view.MultiPagePilosellaView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal2.view.mpetestview"\r
-            name="Multipart Test">\r
-      </editor>\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.designproposal2.view.NameEditorView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal2.view.nameeditorview"\r
-            name="New EditorPart">\r
-      </editor>\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.designproposal2.view.EmptyEditorView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.designproposal2.view.EmptyEditorView"\r
-            name="New EditorPart">\r
-      </editor>\r
-   </extension>\r
-   <extension\r
-         id="product"\r
-         point="org.eclipse.core.runtime.products">\r
-      <product\r
-            application="eu.etaxonomy.taxeditor.designproposal2.application"\r
-            name="EDIT Taxonomic Editor - Design Proposal 2">\r
-         <property\r
-               name="appName"\r
-               value="EDIT Taxonomic Editor - Design Proposal 1">\r
-         </property>\r
-         <property\r
-               name="aboutImage"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="aboutText"\r
-               value="Thanks for all the laughs!">\r
-         </property>\r
-         <property\r
-               name="windowImages"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-      </product>\r
-   </extension>\r
-\r
-</plugin>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/splash.bmp b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/splash.bmp
deleted file mode 100644 (file)
index 74c1225..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/splash.bmp and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/com/swtdesigner/ResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/com/swtdesigner/ResourceManager.java
deleted file mode 100644 (file)
index b8480f6..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-package com.swtdesigner;
-import java.io.File;
-import java.io.InputStream;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Method;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.jface.resource.CompositeImageDescriptor;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.*;
-
-/**
- * Utility class for managing OS resources associated with SWT/JFace controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class ResourceManager extends SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image descriptors to images
-        */
-    private static HashMap<ImageDescriptor, Image> m_DescriptorImageMap = new HashMap<ImageDescriptor, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-    
-    /**
-     * Returns an image descriptor stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image descriptor
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(Class<?> clazz, String path) {
-        return ImageDescriptor.createFromFile(clazz, path);
-    }
-
-    /**
-     * Returns an image descriptor stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(String path) {
-        try {
-            return ImageDescriptor.createFromURL((new File(path)).toURI().toURL());
-        } catch (MalformedURLException e) {
-            return null;
-        }
-    }
-
-    /**
-     * Returns an image based on the specified image descriptor
-     * @param descriptor ImageDescriptor The image descriptor for the image
-     * @return Image The image based on the specified image descriptor
-     */
-    public static Image getImage(ImageDescriptor descriptor) {
-        if (descriptor == null)
-            return null;
-        Image image = m_DescriptorImageMap.get(descriptor);
-        if (image == null) {
-            image = descriptor.createImage();
-            m_DescriptorImageMap.put(descriptor, image);
-        }
-        return image;
-    }
-
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       final Rectangle bid = baseImage.getBounds();
-                       final Rectangle did = decorator.getBounds();
-            final Point baseImageSize = new Point(bid.width, bid.height); 
-            CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() { 
-                protected void drawCompositeImage(int width, int height) { 
-                    drawImage(baseImage.getImageData(), 0, 0); 
-                    if (corner == TOP_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, 0); 
-                    } else if (corner == TOP_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, 0); 
-                    } else if (corner == BOTTOM_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, bid.height - did.height - 1); 
-                    } else if (corner == BOTTOM_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, bid.height - did.height - 1); 
-                    } 
-                } 
-                protected Point getSize() { 
-                    return baseImageSize; 
-                } 
-            }; 
-            result = compositImageDesc.createImage(); 
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-       SWTResourceManager.disposeImages();
-       //
-        for (Iterator<Image> I = m_DescriptorImageMap.values().iterator(); I.hasNext();)
-             I.next().dispose();
-        m_DescriptorImageMap.clear();
-    }
-
-    //////////////////////////////
-    // Plugin images support
-    //////////////////////////////
-
-    /**
-     * Maps URL to images
-     */
-    private static HashMap<URL, Image> m_URLImageMap = new HashMap<URL, Image>();
-
-    /**
-     * Retuns an image based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getPluginImage(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                if (m_URLImageMap.containsKey(url))
-                    return m_URLImageMap.get(url);
-                InputStream is = url.openStream();
-                Image image;
-                try {
-                    image = getImage(is);
-                    m_URLImageMap.put(url, image);
-                } finally {
-                    is.close();
-                }
-                return image;
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an image descriptor based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getPluginImageDescriptor(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                return ImageDescriptor.createFromURL(url);
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an URL based on a plugin and file path
-     * @param plugin Object The plugin containing the file path
-     * @param name String The file path
-     * @return URL The URL representing the file at the specified path
-     * @throws Exception
-     */
-       @SuppressWarnings("unchecked") //$NON-NLS-1$
-       private static URL getPluginImageURL(Object plugin, String name) throws Exception {
-               // try to work with 'plugin' as with OSGI BundleContext
-               try {
-                       Class bundleClass = Class.forName("org.osgi.framework.Bundle"); //$NON-NLS-1$
-                       Class bundleContextClass = Class.forName("org.osgi.framework.BundleContext"); //$NON-NLS-1$
-                       if (bundleContextClass.isAssignableFrom(plugin.getClass())) {
-                               Method getBundleMethod = bundleContextClass.getMethod("getBundle", new Class[]{}); //$NON-NLS-1$
-                               Object bundle = getBundleMethod.invoke(plugin, new Object[]{});
-                               //
-                               Class ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Class platformClass = Class.forName("org.eclipse.core.runtime.Platform"); //$NON-NLS-1$
-                               Method findMethod = platformClass.getMethod("find", new Class[]{bundleClass, ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(null, new Object[]{bundle, path});
-                       }
-               } catch (Throwable e) {
-               // Ignore any exceptions
-               }
-               // else work with 'plugin' as with usual Eclipse plugin
-               {
-                       Class pluginClass = Class.forName("org.eclipse.core.runtime.Plugin"); //$NON-NLS-1$
-                       if (pluginClass.isAssignableFrom(plugin.getClass())) {
-                               //
-                               Class ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Method findMethod = pluginClass.getMethod("find", new Class[]{ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(plugin, new Object[]{path});
-                       }
-               }
-               return null;
-       }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/com/swtdesigner/SWTResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/com/swtdesigner/SWTResourceManager.java
deleted file mode 100644 (file)
index f0b8891..0000000
+++ /dev/null
@@ -1,455 +0,0 @@
-package com.swtdesigner;
-import java.io.BufferedInputStream;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.CoolBar;
-import org.eclipse.swt.widgets.CoolItem;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Utility class for managing OS resources associated with SWT controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Color support
-    //////////////////////////////
-
-    /**
-     * Maps RGB values to colors
-     */
-    private static HashMap<RGB, Color> m_ColorMap = new HashMap<RGB, Color>();
-
-    /**
-     * Returns the system color matching the specific ID
-     * @param systemColorID int The ID value for the color
-     * @return Color The system color matching the specific ID
-     */
-    public static Color getColor(int systemColorID) {
-        Display display = Display.getCurrent();
-        return display.getSystemColor(systemColorID);
-    }
-
-    /**
-     * Returns a color given its red, green and blue component values
-     * @param r int The red component of the color
-     * @param g int The green component of the color
-     * @param b int The blue component of the color
-     * @return Color The color matching the given red, green and blue componet values
-     */
-    public static Color getColor(int r, int g, int b) {
-        return getColor(new RGB(r, g, b));
-    }
-
-    /**
-     * Returns a color given its RGB value
-     * @param rgb RGB The RGB value of the color
-     * @return Color The color matching the RGB value
-     */
-    public static Color getColor(RGB rgb) {
-        Color color = m_ColorMap.get(rgb);
-        if (color == null) {
-            Display display = Display.getCurrent();
-            color = new Color(display, rgb);
-            m_ColorMap.put(rgb, color);
-        }
-        return color;
-    }
-
-    /**
-     * Dispose of all the cached colors
-     */
-    public static void disposeColors() {
-        for (Iterator<Color> iter = m_ColorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_ColorMap.clear();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image names to images
-        */
-    private static HashMap<String, Image> m_ClassImageMap = new HashMap<String, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-
-    /**
-     * Returns an image encoded by the specified input stream
-     * @param is InputStream The input stream encoding the image data
-     * @return Image The image encoded by the specified input stream
-     */
-    protected static Image getImage(InputStream is) {
-        Display display = Display.getCurrent();
-        ImageData data = new ImageData(is);
-        if (data.transparentPixel > 0)
-            return new Image(display, data, data.getTransparencyMask());
-        return new Image(display, data);
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String path) {
-       return getImage("default", path); //$NON-NLS-1$
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param section The section to which belongs specified image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String section, String path) {
-        String key = section + '|' + SWTResourceManager.class.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-            try {
-                FileInputStream fis = new FileInputStream(path);
-                image = getImage(fis);
-                m_ClassImageMap.put(key, image);
-                fis.close();
-            } catch (Exception e) {
-               image = getMissingImage();
-               m_ClassImageMap.put(key, image);
-            }
-        }
-        return image;
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(Class<?> clazz, String path) {
-        String key = clazz.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-               try {
-                       if (path.length() > 0 && path.charAt(0) == '/') {
-                               String newPath = path.substring(1, path.length());
-                               image = getImage(new BufferedInputStream(clazz.getClassLoader().getResourceAsStream(newPath)));
-                       } else {
-                               image = getImage(clazz.getResourceAsStream(path));
-                       }
-                       m_ClassImageMap.put(key, image);
-               } catch (Exception e) {
-                       image = getMissingImage();
-                       m_ClassImageMap.put(key, image);
-               }
-        }
-        return image;
-    }
-
-    private static final int MISSING_IMAGE_SIZE = 10;
-       private static Image getMissingImage() {
-               Image image = new Image(Display.getCurrent(), MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               //
-               GC gc = new GC(image);
-               gc.setBackground(getColor(SWT.COLOR_RED));
-               gc.fillRectangle(0, 0, MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               gc.dispose();
-               //
-               return image;
-       }
-
-    /**
-     * Style constant for placing decorator image in top left corner of base image.
-     */
-    public static final int TOP_LEFT = 1;
-    /**
-     * Style constant for placing decorator image in top right corner of base image.
-     */
-    public static final int TOP_RIGHT = 2;
-    /**
-     * Style constant for placing decorator image in bottom left corner of base image.
-     */
-    public static final int BOTTOM_LEFT = 3;
-    /**
-     * Style constant for placing decorator image in bottom right corner of base image.
-     */
-    public static final int BOTTOM_RIGHT = 4;
-    
-    /**
-     * Returns an image composed of a base image decorated by another image
-     * @param baseImage Image The base image that should be decorated
-     * @param decorator Image The image to decorate the base image
-     * @return Image The resulting decorated image
-     */
-    public static Image decorateImage(Image baseImage, Image decorator) {
-       return decorateImage(baseImage, decorator, BOTTOM_RIGHT);
-    }
-    
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       Rectangle bid = baseImage.getBounds();
-                       Rectangle did = decorator.getBounds();
-                       result = new Image(Display.getCurrent(), bid.width, bid.height);
-                       GC gc = new GC(result);
-                       gc.drawImage(baseImage, 0, 0);
-                       //
-                       if (corner == TOP_LEFT) {
-                               gc.drawImage(decorator, 0, 0);
-                       } else if (corner == TOP_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, 0);
-                       } else if (corner == BOTTOM_LEFT) {
-                               gc.drawImage(decorator, 0, bid.height - did.height - 1);
-                       } else if (corner == BOTTOM_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, bid.height - did.height - 1);
-                       }
-                       //
-                       gc.dispose();
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-        for (Iterator<Image> I = m_ClassImageMap.values().iterator(); I.hasNext();)
-             I.next().dispose();
-        m_ClassImageMap.clear();
-        //
-        for (Iterator<HashMap<Image, Image>> I = m_ImageToDecoratorMap.values().iterator(); I.hasNext();) {
-                       HashMap<Image, Image> decoratedMap = I.next();
-                       for (Iterator<Image> J = decoratedMap.values().iterator(); J.hasNext();) {
-                               Image image = J.next();
-                               image.dispose();
-                       }
-               }
-    }
-
-    /**
-        * Dispose cached images in specified section
-        * @param section the section do dispose
-        */
-       public static void disposeImages(String section) {
-               for (Iterator<String> I = m_ClassImageMap.keySet().iterator(); I.hasNext();) {
-                       String key = I.next();
-                       if (!key.startsWith(section + '|'))
-                               continue;
-                       Image image = m_ClassImageMap.get(key);
-                       image.dispose();
-                       I.remove();
-               }
-       }
-
-    //////////////////////////////
-    // Font support
-    //////////////////////////////
-
-    /**
-     * Maps font names to fonts
-     */
-    private static HashMap<String, Font> m_FontMap = new HashMap<String, Font>();
-
-    /**
-     * Maps fonts to their bold versions
-     */
-    private static HashMap<Font, Font> m_FontToBoldFontMap = new HashMap<Font, Font>();
-
-    /**
-     * Returns a font based on its name, height and style
-     * @param name String The name of the font
-     * @param height int The height of the font
-     * @param style int The style of the font
-     * @return Font The font matching the name, height and style
-     */
-    public static Font getFont(String name, int height, int style) {
-       return getFont(name, height, style, false, false);
-    }
-
-
-    /**
-     * Returns a font based on its name, height and style. 
-     * Windows-specific strikeout and underline flags are also supported.
-     * @param name String The name of the font
-     * @param size int The size of the font
-     * @param style int The style of the font
-     * @param strikeout boolean The strikeout flag (warning: Windows only)
-     * @param underline boolean The underline flag (warning: Windows only)
-     * @return Font The font matching the name, height, style, strikeout and underline
-     */
-       public static Font getFont(String name, int size, int style, boolean strikeout, boolean underline) {
-               String fontName = name + '|' + size + '|' + style + '|' + strikeout + '|' + underline;
-        Font font = m_FontMap.get(fontName);
-        if (font == null) {
-               FontData fontData = new FontData(name, size, style);
-               if (strikeout || underline) {
-                       try {
-                               Class<?> logFontClass = Class.forName("org.eclipse.swt.internal.win32.LOGFONT"); //$NON-NLS-1$
-                               Object logFont = FontData.class.getField("data").get(fontData); //$NON-NLS-1$
-                               if (logFont != null && logFontClass != null) {
-                                       if (strikeout) {
-                                                       logFontClass.getField("lfStrikeOut").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                                       if (underline) {
-                                                       logFontClass.getField("lfUnderline").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                               }
-                       } catch (Throwable e) {
-                               System.err.println(
-                                       "Unable to set underline or strikeout" + " (probably on a non-Windows platform). " + e); //$NON-NLS-1$ //$NON-NLS-2$
-                       }
-               }
-               font = new Font(Display.getCurrent(), fontData);
-               m_FontMap.put(fontName, font);
-        }
-               return font;
-       }
-    
-
-    /**
-     * Return a bold version of the give font
-     * @param baseFont Font The font for whoch a bold version is desired
-     * @return Font The bold version of the give font
-     */
-    public static Font getBoldFont(Font baseFont) {
-        Font font = m_FontToBoldFontMap.get(baseFont);
-        if (font == null) {
-            FontData fontDatas[] = baseFont.getFontData();
-            FontData data = fontDatas[0];
-            font = new Font(Display.getCurrent(), data.getName(), data.getHeight(), SWT.BOLD);
-            m_FontToBoldFontMap.put(baseFont, font);
-        }
-        return font;
-    }
-
-    /**
-     * Dispose all of the cached fonts
-     */
-    public static void disposeFonts() {
-        for (Iterator<Font> iter = m_FontMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_FontMap.clear();
-    }
-
-       //////////////////////////////
-    // CoolBar support
-    //////////////////////////////
-
-    /**
-     * Fix the layout of the specified CoolBar
-     * @param bar CoolBar The CoolBar that shgoud be fixed
-     */
-    public static void fixCoolBarSize(CoolBar bar) {
-        CoolItem[] items = bar.getItems();
-        // ensure that each item has control (at least empty one)
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            if (item.getControl() == null)
-                item.setControl(new Canvas(bar, SWT.NONE) {
-                @Override
-                               public Point computeSize(int wHint, int hHint, boolean changed) {
-                    return new Point(20, 20);
-                }
-            });
-        }
-        // compute size for each item
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            Control control = item.getControl();
-            control.pack();
-            Point size = control.getSize();
-            item.setSize(item.computeSize(size.x, size.y));
-        }
-    }
-
-    //////////////////////////////
-    // Cursor support
-    //////////////////////////////
-
-    /**
-     * Maps IDs to cursors
-     */
-    private static HashMap<Integer, Cursor> m_IdToCursorMap = new HashMap<Integer, Cursor>();
-    /**
-     * Returns the system cursor matching the specific ID
-     * @param id int The ID value for the cursor
-     * @return Cursor The system cursor matching the specific ID
-     */
-    public static Cursor getCursor(int id) {
-        Integer key = new Integer(id);
-        Cursor cursor = m_IdToCursorMap.get(key);
-        if (cursor == null) {
-            cursor = new Cursor(Display.getDefault(), id);
-            m_IdToCursorMap.put(key, cursor);
-        }
-        return cursor;
-    }
-    /**
-     * Dispose all of the cached cursors
-     */
-    public static void disposeCursors() {
-        for (Iterator<Cursor> iter = m_IdToCursorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_IdToCursorMap.clear();
-    }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Activator.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Activator.java
deleted file mode 100644 (file)
index 3d0ecc2..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.ui.plugin.AbstractUIPlugin;\r
-import org.osgi.framework.BundleContext;\r
-\r
-//import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-\r
-\r
-/**\r
- * The activator class controls the plug-in life cycle\r
- */\r
-public class Activator extends AbstractUIPlugin {\r
-\r
-       // The plug-in ID\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.mvctest";\r
-\r
-       // The shared instance\r
-       private static Activator plugin;\r
-               \r
-//     private CdmApplicationController cdmApp = new CdmApplicationController();\r
-       \r
-       /**\r
-        * The constructor\r
-        */\r
-       public Activator() {\r
-       }\r
-\r
-       \r
-       /*\r
-        * (non-Javadoc)\r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)\r
-        */\r
-       public void start(BundleContext context) throws Exception {\r
-               super.start(context);\r
-               plugin = this;\r
-       }\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)\r
-        */\r
-       public void stop(BundleContext context) throws Exception {\r
-               plugin = null;\r
-               super.stop(context);\r
-       }\r
-\r
-       /**\r
-        * Returns the shared instance\r
-        *\r
-        * @return the shared instance\r
-        */\r
-       public static Activator getDefault() {\r
-               return plugin;\r
-       }\r
-\r
-       /**\r
-        * Returns an image descriptor for the image file at the given\r
-        * plug-in relative path\r
-        *\r
-        * @param path the path\r
-        * @return the image descriptor\r
-        */\r
-       public static ImageDescriptor getImageDescriptor(String path) {\r
-               return imageDescriptorFromPlugin(PLUGIN_ID, path);\r
-       }\r
-       \r
-       \r
-       public Image getImage(String key) {\r
-               return getImageRegistry().get(key);\r
-       }\r
-       \r
-       /**\r
-     * @return the objectList\r
-     */\r
-//    public CdmApplicationController getApplicationController() {\r
-//        return this.cdmApp;\r
-//    }        \r
-       \r
-               \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Application.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Application.java
deleted file mode 100644 (file)
index ac8561c..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2;
-
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * This class controls all aspects of the application's execution
- */
-public class Application implements IApplication {
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.IApplicationContext)
-        */
-       public Object start(IApplicationContext context) {
-               Display display = PlatformUI.createDisplay();
-               try {
-                       int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
-                       if (returnCode == PlatformUI.RETURN_RESTART) {
-                               return IApplication.EXIT_RESTART;
-                       }
-                       return IApplication.EXIT_OK;
-               } finally {
-                       display.dispose();
-               }
-       }
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#stop()
-        */
-       public void stop() {
-               final IWorkbench workbench = PlatformUI.getWorkbench();
-               if (workbench == null)
-                       return;
-               final Display display = workbench.getDisplay();
-               display.syncExec(new Runnable() {
-                       public void run() {
-                               if (!display.isDisposed())
-                                       workbench.close();
-                       }
-               });
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationActionBarAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationActionBarAdvisor.java
deleted file mode 100644 (file)
index c4c7e4d..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-
-import eu.etaxonomy.taxeditor.designproposal2.controller.OpenNameEditorAction;
-
-/**
- * An action bar advisor is responsible for creating, adding, and disposing of
- * the actions added to a workbench window. Each window will be populated with
- * new actions.
- */
-public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
-
-       // Actions - important to allocate these only in makeActions, and then use
-       // them
-       // in the fill methods. This ensures that the actions aren't recreated
-       // when fillActionBars is called with FILL_PROXY.
-       private IWorkbenchAction exitAction;
-       private OpenNameEditorAction newNameAction;
-
-       public ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {
-               super(configurer);
-       }
-
-       protected void makeActions(final IWorkbenchWindow window) {
-               // Creates the actions and registers them.
-               // Registering is needed to ensure that key bindings work.
-               // The corresponding commands keybindings are defined in the plugin.xml
-               // file.
-               // Registering also provides automatic disposal of the actions when
-               // the window is closed.
-
-               exitAction = ActionFactory.QUIT.create(window);
-               register(exitAction);
-               
-               newNameAction = new OpenNameEditorAction();
-               register(newNameAction);
-       }
-
-       protected void fillMenuBar(IMenuManager menuBar) {
-               MenuManager fileMenu = new MenuManager("&File",
-                               IWorkbenchActionConstants.M_FILE);
-               menuBar.add(fileMenu);
-               fileMenu.add(newNameAction);
-               fileMenu.add(exitAction);
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationWorkbenchAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationWorkbenchAdvisor.java
deleted file mode 100644 (file)
index d5694da..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2;
-
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchAdvisor;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
-
-       private static final String PERSPECTIVE_ID = "eu.etaxonomy.taxeditor.designproposal2.perspective";
-
-       public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(
-                       IWorkbenchWindowConfigurer configurer) {
-               return new ApplicationWorkbenchWindowAdvisor(configurer);
-       }
-
-       public String getInitialWindowPerspectiveId() {
-               return PERSPECTIVE_ID;
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationWorkbenchWindowAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/ApplicationWorkbenchWindowAdvisor.java
deleted file mode 100644 (file)
index 99f1ee1..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2;
-
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-//import eu.etaxonomy.taxeditor.prototype1.controller.PopulateNameListViewAction;
-
-public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor {
-
-       public ApplicationWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) {
-               super(configurer);
-       }
-
-       public ActionBarAdvisor createActionBarAdvisor(
-                       IActionBarConfigurer configurer) {
-               return new ApplicationActionBarAdvisor(configurer);
-       }
-
-       public void preWindowOpen() {
-               IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
-               configurer.setInitialSize(new Point(800, 600));
-               configurer.setShowCoolBar(false);
-               configurer.setShowStatusLine(false);
-               configurer.setTitle("EDIT Taxonomic Editor");
-       }
-       
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Perspective.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/Perspective.java
deleted file mode 100644 (file)
index 603ca11..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2;
-
-import org.eclipse.ui.IFolderLayout;
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPerspectiveFactory;
-import org.eclipse.ui.IPlaceholderFolderLayout;
-
-import eu.etaxonomy.taxeditor.designproposal2.view.NameListView;
-import eu.etaxonomy.taxeditor.designproposal2.view.UndoView;
-
-public class Perspective implements IPerspectiveFactory {
-
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal2.perspective";
-       
-       public void createInitialLayout(IPageLayout layout) {
-               String editorArea = layout.getEditorArea();
-               layout.addStandaloneView(NameListView.ID, false, IPageLayout.LEFT, 0.30f, editorArea);
-               layout.addView(UndoView.ID, IPageLayout.BOTTOM, 0.8f, editorArea);
-               layout.getViewLayout(NameListView.ID).setCloseable(false);
-               addFastViews(layout);
-       }
-       private void addFastViews(IPageLayout layout) {
-               System.currentTimeMillis();
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/controller/OpenNameEditorAction.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/controller/OpenNameEditorAction.java
deleted file mode 100644 (file)
index 3e267c5..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal2.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal2.model.NameEditorInput;\r
-import eu.etaxonomy.taxeditor.designproposal2.model.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal2.view.MultiPagePilosellaView;\r
-\r
-public class OpenNameEditorAction extends Action {\r
-\r
-       private TaxonName taxonname;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal2.controller.opennameeditoraction"; //$NON-NLS-1$\r
-       \r
-       public OpenNameEditorAction(TaxonName taxonname) {\r
-               this.taxonname = taxonname;\r
-       }\r
-\r
-       public OpenNameEditorAction() {\r
-//             INameService ns = Activator.getDefault().getApplicationController().getNameService();\r
-//             this.taxonname = ns.createTaxonName(null);\r
-               this.taxonname = new TaxonName();\r
-               this.taxonname.setName("new");\r
-               setId(ID);\r
-               setText("New taxon");\r
-       }\r
-\r
-       public OpenNameEditorAction(String name) {\r
-//             INameService ns = Activator.getDefault().getApplicationController().getNameService();\r
-//             this.taxonname = ns.createTaxonName(null);\r
-               this.taxonname = new TaxonName();\r
-               this.taxonname.setName(name);\r
-//             setId(ID);\r
-//             setText("New name");\r
-       }\r
-       \r
-       public void run() {\r
-               IEditorInput input = new NameEditorInput(taxonname);\r
-        try {\r
-//             Activator.getDefault().getWorkbench().getActiveWorkbenchWindow().\r
-//                     getActivePage().openEditor(input, NameEditorView.ID);\r
-               Activator.getDefault().getWorkbench().getActiveWorkbenchWindow().\r
-                       getActivePage().openEditor(input, MultiPagePilosellaView.ID);           \r
-               } catch (PartInitException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/controller/SaveNameAction.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/controller/SaveNameAction.java
deleted file mode 100644 (file)
index 4baa0ca..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal2.model.TaxonName;\r
-\r
-public class SaveNameAction extends Action {\r
-       TaxonName taxonname;\r
-       \r
-       public SaveNameAction(TaxonName taxonname) {\r
-               this.taxonname = taxonname;\r
-       }\r
-       \r
-       public void run() {\r
-//             Activator.getDefault().getApplicationController().getNameService().\r
-//                     saveTaxonName(taxonname);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/model/NameEditorInput.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/model/NameEditorInput.java
deleted file mode 100644 (file)
index 63c60b0..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.model;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IPersistableElement;\r
-\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-\r
-public class NameEditorInput implements IEditorInput {\r
-\r
-       private TaxonName taxonname;\r
-       \r
-       public NameEditorInput (TaxonName taxonname) {\r
-               this.taxonname = taxonname;\r
-       }\r
-       \r
-       public boolean exists() {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       public ImageDescriptor getImageDescriptor() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getName() {\r
-               return taxonname.getName();\r
-       }\r
-\r
-       public IPersistableElement getPersistable() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getToolTipText() {\r
-               return taxonname.getName();\r
-       }\r
-\r
-       public Object getAdapter(Class adapter) {\r
-\r
-               if (adapter == TaxonName.class) {\r
-                       return this.taxonname;\r
-               }\r
-               \r
-               return null;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/model/TaxonName.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/model/TaxonName.java
deleted file mode 100644 (file)
index 8959a87..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.model;\r
-\r
-public class TaxonName {\r
-       String name;\r
-\r
-       public String getName() {\r
-               return name;\r
-       }\r
-\r
-       public void setName(String name) {\r
-               this.name = name;\r
-       }\r
-       \r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/CarduusEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/CarduusEditorView.java
deleted file mode 100644 (file)
index ab9ed03..0000000
+++ /dev/null
@@ -1,478 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.TextViewer;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.PopupList;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.ControlAdapter;\r
-import org.eclipse.swt.events.ControlEvent;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.KeyListener;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.CoolBar;\r
-import org.eclipse.swt.widgets.CoolItem;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.ToolBar;\r
-import org.eclipse.swt.widgets.ToolItem;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal2.view.MySourceViewerConfig;\r
-import eu.etaxonomy.taxeditor.designproposal2.controller.SaveNameAction;\r
-import eu.etaxonomy.taxeditor.designproposal2.model.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal2.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal2.controller.OpenNameEditorAction;\r
-\r
-//public class CarduusEditorView extends EditorPart implements ICdmEventListener {\r
-public class CarduusEditorView extends EditorPart {\r
-\r
-       private Table table_1;\r
-       private Text carduusLSpText;\r
-       private StyledText styledText;\r
-       private TaxonName taxonname;\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal2.view.carduuseditorview"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               //\r
-               \r
-               \r
-//             txtPlay = new Text(container, SWT.BORDER);\r
-//             txtPlay.setCapture(true);\r
-//             final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);\r
-//             gd_txtPlay.heightHint = 96;\r
-//             txtPlay.setLayoutData(gd_txtPlay);\r
-////           txtPlay.addVerifyListener(new VerifyListener() {\r
-////                   @Override\r
-////                   public void verifyText(VerifyEvent e) {\r
-////                   e.doit = Character.isDigit(e.character);\r
-////               }           \r
-////           });\r
-//             txtPlay.addSelectionListener(new SelectionListener() {\r
-//\r
-//                     @Override\r
-//                     public void widgetDefaultSelected(SelectionEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//\r
-//                     @Override\r
-//                     public void widgetSelected(SelectionEvent e) {\r
-//                             System.out.println(e.toString());\r
-//                     }\r
-//                     \r
-//                     \r
-//             });\r
-//             \r
-//             \r
-//             txtPlay.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             System.out.println(e.character);\r
-//                             if (e.character == '=') {\r
-//                                     Shell shell = Activator.getDefault().getWorkbench().\r
-//                                             getActiveWorkbenchWindow().getShell();\r
-//                                     PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-////                                   Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-//                                     // Add the items to the list\r
-//                                     String[] OPTIONS = { "Create homo. syn.",\r
-//                                                     "Create hetero. syn.",\r
-//                                                     "Create mis. name",\r
-//                                                     "Create homonym"};\r
-//\r
-//                                     list.setItems(OPTIONS);\r
-//                                     \r
-//                                     // Open the list and get the selected item\r
-//                                     String selected = list.open(txtPlay.getBounds());\r
-//                                     \r
-//                                     // Print the item to the console\r
-//                                     System.out.println(selected);                                   \r
-//                             }\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//             });\r
-               parent.setLayout(new GridLayout());\r
-               Document doc = new Document("");\r
-\r
-               final Label taxonomicallyIncludedInLabel = new Label(parent, SWT.NONE);\r
-               taxonomicallyIncludedInLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));\r
-               taxonomicallyIncludedInLabel.setText("Higher taxon: \"Cardueae Cass.\"");\r
-\r
-               final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
-//             toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
-               itemSave.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemSave.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save.gif"));\r
-               itemSave.addSelectionListener(new SelectionListener() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               \r
-//                             taxonname.setGenus(txtGenus.getText());\r
-//                             taxonname.setSpecificEpithet(txtSpEpi.getText());\r
-                               \r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-               });\r
-\r
-               final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemMove.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemMove.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                       }\r
-               });\r
-               \r
-               final Menu menuMove = new Menu(toolBar);\r
-               menuMove.setData("x", null);\r
-               addDropDown(itemMove, menuMove);\r
-\r
-               final MenuItem moveTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               moveTaxonpilosellaMenuItem.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");\r
-\r
-               final MenuItem turnTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               turnTaxonpilosellaMenuItem.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");\r
-               \r
-//             });\r
-//             newItemToolItem.setText("New item");\r
-               itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-\r
-               final ToolItem itemDelete = new ToolItem(toolBar, SWT.NONE);\r
-               itemDelete.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemDelete.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-                               \r
-               final ToolItem separator1 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddRelationship.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/rel_no_bg.gif"));\r
-               \r
-               final Menu menuAddRel = new Menu(toolBar);\r
-               menuAddRel.setData("x", null);\r
-               addDropDown(itemAddRelationship, menuAddRel);\r
-\r
-               final MenuItem testMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               testMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               testMenuItem.setText("Add synonymy (type unknown)");\r
-\r
-               final MenuItem addHomotypicSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomotypicSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               addHomotypicSynonymMenuItem.setText("Add homotypic synonym");\r
-\r
-               final MenuItem addHeterotypicSynoynmMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHeterotypicSynoynmMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               addHeterotypicSynoynmMenuItem.setText("Add heterotypic synoynm");\r
-\r
-               final MenuItem addBasionymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addBasionymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               addBasionymMenuItem.setText("Add basionym");\r
-\r
-               final MenuItem addReplacedSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addReplacedSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               addReplacedSynonymMenuItem.setText("Add replaced synonym");\r
-\r
-               final MenuItem addHomonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               addHomonymMenuItem.setText("Add homonym");\r
-\r
-               final MenuItem addOrthographicVariantMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addOrthographicVariantMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               addOrthographicVariantMenuItem.setText("Add orthographic variant");\r
-\r
-               final MenuItem addMisappliedNameMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addMisappliedNameMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               addMisappliedNameMenuItem.setText("Add misapplied name");\r
-\r
-               final MenuItem addConceptRelationMenuItem_1 = new MenuItem(menuAddRel, SWT.CASCADE);\r
-               addConceptRelationMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               addConceptRelationMenuItem_1.setText("Add concept relation");\r
-\r
-               final Menu menu = new Menu(addConceptRelationMenuItem_1);\r
-               addConceptRelationMenuItem_1.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setText("congruent");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setSelection(true);\r
-               checkboxMenuItem_1.setText("included in");\r
-\r
-               final MenuItem checkboxMenuItem_2 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_2.setText("includes");\r
-\r
-               final MenuItem checkboxMenuItem_3 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_3.setText("overlaps");\r
-\r
-               final MenuItem checkboxMenuItem_4 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_4.setText("excludes");\r
-\r
-               final MenuItem checkboxMenuItem_5 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_5.setSelection(true);\r
-               checkboxMenuItem_5.setText("doubtful");\r
-               \r
-               final ToolItem separator2 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddTaxon = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddTaxon.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add_no_bg2.gif"));\r
-               itemAddTaxon.setToolTipText("Add new taxon");\r
-\r
-               final Menu menuAdd = new Menu(toolBar);\r
-               menuAdd.setData("x", null);\r
-               addDropDown(itemAddTaxon, menuAdd);\r
-\r
-               final MenuItem addTaxonToMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addTaxonToMenuItem.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final MenuItem addNewTaxonMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addNewTaxonMenuItem.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final Composite composite = new Composite(parent, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.horizontalSpacing = 3;\r
-               gridLayout_2.numColumns = 2;\r
-               composite.setLayout(gridLayout_2);\r
-\r
-               carduusLSpText = new Text(composite, SWT.WRAP);\r
-               carduusLSpText.setText("Carduus L., Sp. Pl.: 820. 1753");\r
-               carduusLSpText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
-               final GridData gd_carduusLSpText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               carduusLSpText.setLayoutData(gd_carduusLSpText);\r
-               carduusLSpText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               carduusLSpText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               carduusLSpText.setBackground(null);                             \r
-                       }\r
-\r
-               });\r
-\r
-               table_1 = new Table(composite, SWT.BORDER);\r
-               table_1.setLinesVisible(true);\r
-               table_1.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, true, true, 1, 2));\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn.setWidth(100);\r
-               newColumnTableColumn.setText("New column");\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(100);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem.setText(0, "Rank");\r
-               newItemTableItem.setText(1, "genus");\r
-               newItemTableItem.setText("Rank");\r
-               \r
-               final TableItem newItemTableItem_1 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Carduus");\r
-               newItemTableItem_1.setText(0, "Genus");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_2.setText(0, "Species epithet");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "L.");\r
-               newItemTableItem_3.setText(0, "Author team");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_4.setText("...");\r
-//             newItemTableItem_2.setText("Species epithet");\r
-//             newItemTableItem_1.setText("Genus");\r
-               //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               SourceViewer sourceviewer = new SourceViewer(composite, null, SWT.WRAP | SWT.FULL_SELECTION);\r
-               sourceviewer.setAnnotationHover(null);\r
-               styledText = sourceviewer.getTextWidget();\r
-               final GridData gd_styledText = new GridData(SWT.FILL, SWT.TOP, true, false);\r
-               gd_styledText.heightHint = 41;\r
-               gd_styledText.widthHint = 450;\r
-               styledText.setLayoutData(gd_styledText);\r
-               sourceviewer.setDocument(doc);\r
-               sourceviewer.configure(new MySourceViewerConfig());\r
-               sourceviewer.setTabsToSpacesConverter(null);\r
-\r
-               \r
-//             final Menu menu = new Menu(toolBar);\r
-//             addDropDown(newItemToolItem, menu);\r
-//             );\r
-               \r
-//             Action testAction = new OpenNameEditorAction();\r
-//             testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));\r
-//             testAction.setToolTipText("Add relation");\r
-//             toolBar.add(testAction);\r
-               \r
-               populateForm();         \r
-       }\r
-\r
-//     private void populateForm() {\r
-//             \r
-//             String fulltext = "";\r
-//             \r
-//             if (taxonname.getGenus() != null) {\r
-//                     fulltext = taxonname.getGenus();\r
-//             }\r
-//\r
-//             if (taxonname.getSpecificEpithet() != null) {\r
-//                     fulltext += " " + taxonname.getSpecificEpithet();\r
-//             }\r
-//\r
-//             if (taxonname.getAuthorship() != null) {\r
-//                     fulltext += " " + taxonname.getAuthorship();\r
-//             }\r
-//             \r
-////           txtPlay.setText(fulltext);\r
-////           txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");\r
-//             \r
-//             this.setPartName(taxonname.getName());\r
-//     }\r
-\r
-       private void populateForm() {\r
-               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-       }\r
-       \r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       public void propertyChange(PropertyChangeEvent evt) {\r
-//             TaxonName taxonname = (TaxonName)evt.getNewValue();\r
-               this.taxonname = (TaxonName)evt.getNewValue();\r
-               System.out.println(((TaxonName)evt.getNewValue()).getName());\r
-               populateForm();\r
-               \r
-               // for individual fields, do something like:\r
-               //      if (evt.getPropertyName().equalsIgnoreCase("genus"))\r
-               //              txtGenus.setText ...\r
-       }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-       \r
-       private static void addDropDown(final ToolItem item, final Menu menu) {\r
-               item.addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               if (event.detail == SWT.ARROW) {\r
-                                       Rectangle rect = item.getBounds();\r
-                                       Point pt = new Point(rect.x, rect.y + rect.height);\r
-                                       pt = item.getParent().toDisplay(pt);\r
-                                       menu.setLocation(pt.x, pt.y);\r
-                                       menu.setVisible(true);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/EditNameProperties.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/EditNameProperties.java
deleted file mode 100644 (file)
index 3082b83..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.dialogs.PropertyPage;\r
-\r
-public class EditNameProperties extends PropertyPage {\r
-\r
-       /**\r
-        * Create the property page\r
-        */\r
-       public EditNameProperties() {\r
-               super();\r
-       }\r
-\r
-       /**\r
-        * Create contents of the property page\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public Control createContents(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               //\r
-               return container;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/EmptyEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/EmptyEditorView.java
deleted file mode 100644 (file)
index 2eeb808..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-\r
-public class EmptyEditorView extends EditorPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal2.view.EmptyEditorView"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               //\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input)\r
-                       throws PartInitException {\r
-               // Initialize the editor part\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MoveDialogView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MoveDialogView.java
deleted file mode 100644 (file)
index f880e7e..0000000
+++ /dev/null
@@ -1,281 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.jface.dialogs.IDialogConstants;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal2.controller.OpenNameEditorAction;\r
-import eu.etaxonomy.taxeditor.designproposal2.Activator;\r
-\r
-public class MoveDialogView extends Dialog {\r
-\r
-       Text searchText;\r
-       \r
-       private Tree tree;\r
-       /**\r
-        * Create the dialog\r
-        * @param parentShell\r
-        */\r
-       public MoveDialogView(Shell parentShell) {\r
-               super(parentShell);\r
-       }\r
-\r
-       /**\r
-        * Create contents of the dialog\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected Control createDialogArea(Composite parent) {\r
-               parent.setRedraw(true);\r
-               Composite container = (Composite) super.createDialogArea(parent);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               container.setLayout(gridLayout);\r
-\r
-               final Label youHaveChosenLabel = new Label(container, SWT.WRAP);\r
-               final GridData gd_youHaveChosenLabel = new GridData(SWT.CENTER, SWT.FILL, true, false, 2, 1);\r
-               gd_youHaveChosenLabel.heightHint = 30;\r
-               youHaveChosenLabel.setLayoutData(gd_youHaveChosenLabel);\r
-               youHaveChosenLabel.setText("You have chosen to turn \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym. Please choose a new accepted name from one of the following options.");\r
-\r
-               final Group group_1 = new Group(container, SWT.NONE);\r
-               group_1.setLayout(new GridLayout());\r
-               final GridData gd_group_1 = new GridData(SWT.FILL, SWT.FILL, true, true);\r
-               gd_group_1.heightHint = 83;\r
-               group_1.setLayoutData(gd_group_1);\r
-\r
-               final Button chooseAcceptedNameButton = new Button(group_1, SWT.RADIO);\r
-               chooseAcceptedNameButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               chooseAcceptedNameButton.setText("Choose from taxonomic tree");\r
-\r
-               tree = new Tree(group_1, SWT.FULL_SELECTION | SWT.BORDER);\r
-               tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               tree.setItemCount(1);\r
-               tree.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDoubleClick(final MouseEvent e) {\r
-                               new OpenNameEditorAction("Pilosella").run();\r
-                       }\r
-               });\r
-\r
-               final TreeItem newItemTreeItem = new TreeItem(tree, SWT.NONE);\r
-               newItemTreeItem.setChecked(true);\r
-               newItemTreeItem.setText("Compositae Giseke");\r
-\r
-               final TreeItem newItemTreeItem_1 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_1.setItemCount(1);\r
-               newItemTreeItem_1.setText("Anthemideae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_2 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_2.setItemCount(1);\r
-               newItemTreeItem_2.setText("Arctotideae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_3 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_3.setItemCount(1);\r
-               newItemTreeItem_3.setText("Astereae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_4 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_4.setItemCount(1);\r
-               newItemTreeItem_4.setText("Calenduleae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_5 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_5.setItemCount(1);\r
-               newItemTreeItem_5.setText("Cardueae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_6 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_6.setText("Cichorieae Lam. & DC.");\r
-\r
-               final TreeItem newItemTreeItem_16 = new TreeItem(newItemTreeItem_6, SWT.NONE);\r
-               newItemTreeItem_16.setExpanded(true);\r
-               newItemTreeItem_16.setText("Pilosella Vaill.");\r
-\r
-               final TreeItem newItemTreeItem_17 = new TreeItem(newItemTreeItem_16, SWT.NONE);\r
-               newItemTreeItem_17.setText("Pilosella fuscoatra coll.");\r
-\r
-               final TreeItem newItemTreeItem_18 = new TreeItem(newItemTreeItem_17, SWT.NONE);\r
-               newItemTreeItem_18.setFont(SWTResourceManager.getFont("", 8, SWT.BOLD));\r
-               newItemTreeItem_18.setExpanded(true);\r
-               newItemTreeItem_18.setText("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-\r
-               final TreeItem newItemTreeItem_7 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_7.setItemCount(1);\r
-               newItemTreeItem_7.setText("Eupatorieae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_8 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_8.setItemCount(1);\r
-               newItemTreeItem_8.setText("Gnaphalieae Lecoq & Juillet");\r
-\r
-               final TreeItem newItemTreeItem_9 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_9.setItemCount(1);\r
-               newItemTreeItem_9.setText("Helenieae Lindl.");\r
-\r
-               final TreeItem newItemTreeItem_10 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_10.setItemCount(1);\r
-               newItemTreeItem_10.setText("Heliantheae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_11 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_11.setItemCount(1);\r
-               newItemTreeItem_11.setText("Inuleae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_12 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_12.setItemCount(1);\r
-               newItemTreeItem_12.setText("Mutisieae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_13 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_13.setItemCount(1);\r
-               newItemTreeItem_13.setText("Plucheeae Anderb.");\r
-\r
-               final TreeItem newItemTreeItem_14 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_14.setItemCount(1);\r
-               newItemTreeItem_14.setText("Senecioneae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_15 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_15.setItemCount(1);\r
-               newItemTreeItem_15.setText("Vernonieae Cass.");\r
-\r
-               final Composite composite = new Composite(container, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setLayout(new FillLayout(SWT.VERTICAL));\r
-               \r
-               final Group group = new Group(composite, SWT.NONE);\r
-               group.setLayout(new GridLayout());\r
-\r
-               final Button chooseAcceptedTaxonButton = new Button(group, SWT.RADIO);\r
-               chooseAcceptedTaxonButton.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                       }\r
-               });\r
-               chooseAcceptedTaxonButton.setText("Choose from recently viewed taxa");\r
-\r
-               \r
-               \r
-               \r
-               \r
-               Table table = new Table(group, SWT.BORDER);\r
-               table.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDoubleClick(final MouseEvent e) {\r
-                               new OpenNameEditorAction("Carduus").run();\r
-                       }\r
-               });\r
-               table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem.setText("Laphangium (Hilliard & B. L. Burtt) Tzvelev");\r
-\r
-               final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_1.setText("Carduus L.");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_2.setText("Carduus carpetanus Boiss. & Reut.");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_3.setText("Carduus kerneri Simonk.");\r
-\r
-               final TableItem newItemTableItem_5 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_5.setText("Senecio eboracensis R. J. Abbott & A. J. Lowe");\r
-\r
-               final TableItem newItemTableItem_6 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_6.setText("Senecio elegans L.");               \r
-               \r
-               final Group group_2 = new Group(composite, SWT.NONE);\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               group_2.setLayout(gridLayout_1);\r
-\r
-               final Button searchForNameButton = new Button(group_2, SWT.RADIO);\r
-               searchForNameButton.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));\r
-               searchForNameButton.setText("Search for name of accepted taxon");\r
-               new Label(group_2, SWT.NONE);\r
-               \r
-               searchText = new Text(group_2, SWT.BORDER);\r
-               searchText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               searchText.setText("Use \"*\" for wildcard searching");\r
-               searchText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               searchText.setForeground(SWTResourceManager.getColor(0,0,0));\r
-                               searchText.setText("");\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               if (searchText.getText() == "") {\r
-                                       searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                       searchText.setText("Use \"*\" for wildcard searching");                                 \r
-                               }\r
-                               \r
-                       }\r
-                       \r
-               });\r
-\r
-               final Button searchButton = new Button(group_2, SWT.NONE);\r
-               searchButton.setLayoutData(new GridData());\r
-               searchButton.setText("Search");\r
-\r
-               final Composite composite_1 = new Composite(container, SWT.NONE);\r
-               composite_1.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 2, 1));\r
-               composite_1.setLayout(new FillLayout());\r
-\r
-               final Label selectedTaxonLabel = new Label(composite_1, SWT.NONE);\r
-               selectedTaxonLabel.setText("Selected taxon: ");\r
-\r
-               final Label currentSelectionSenecioLabel = new Label(composite_1, SWT.RIGHT);\r
-               currentSelectionSenecioLabel.setFont(SWTResourceManager.getFont("", 9, SWT.BOLD));\r
-               currentSelectionSenecioLabel.setText("Senecio elegans L.");\r
-               new Label(container, SWT.NONE);\r
-               \r
-               \r
-               //\r
-               return container;\r
-       }\r
-\r
-       /**\r
-        * Create contents of the button bar\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected void createButtonsForButtonBar(Composite parent) {\r
-               createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,\r
-                               true);\r
-               createButton(parent, IDialogConstants.CANCEL_ID,\r
-                               IDialogConstants.CANCEL_LABEL, false);\r
-       }\r
-\r
-       /**\r
-        * Return the initial size of the dialog\r
-        */\r
-       @Override\r
-       protected Point getInitialSize() {\r
-               return new Point(700, 500);\r
-       }\r
-       protected void configureShell(Shell newShell) {\r
-               super.configureShell(newShell);\r
-               newShell.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/edit_16x16.ico"));\r
-               newShell.setText("Move \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MultiPagePilosellaView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MultiPagePilosellaView.java
deleted file mode 100644 (file)
index 4872ab9..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.MultiPageEditorPart;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal2.model.NameEditorInput;\r
-import eu.etaxonomy.taxeditor.designproposal2.model.TaxonName;\r
-\r
-public class MultiPagePilosellaView extends MultiPageEditorPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal2.view.mpetestview";\r
-       private TaxonName taxonname;\r
-       \r
-       @Override\r
-       protected void createPages() {\r
-               try {\r
-                       if (taxonname.getName() == "Carduus") {\r
-                               this.setPartName("Carduus L.");\r
-                               addPage(0, new CarduusEditorView(), new NameEditorInput(new TaxonName()));\r
-                       } else if (taxonname.getName() == "Pilosella") {\r
-                               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-                               addPage(0, new PilosellaEditorView(), new NameEditorInput(new TaxonName()));\r
-                       } else {\r
-                               this.setPartName("New taxon");\r
-                               addPage(0, new NameEditorView(), new NameEditorInput(new TaxonName()));                         \r
-                       }\r
-                       setPageText(0, "Name");\r
-\r
-                       addPage(1, new EmptyEditorView(), new NameEditorInput(new TaxonName()));\r
-                       setPageText(1, "Facts");\r
-                       \r
-                       addPage(2, new EmptyEditorView(), new NameEditorInput(new TaxonName()));\r
-                       setPageText(2, "Specimen");\r
-                       \r
-                       addPage(3, new EmptyEditorView(), new NameEditorInput(new TaxonName()));\r
-                       setPageText(3, "Geographic");\r
-                       \r
-               } catch (PartInitException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     System.out.println(taxonname.getCreatedWho());\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-       \r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MyCompletionProcessor.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MyCompletionProcessor.java
deleted file mode 100644 (file)
index ca9a24a..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.jface.text.ITextViewer;\r
-import org.eclipse.jface.text.contentassist.CompletionProposal;\r
-import org.eclipse.jface.text.contentassist.ContextInformation;\r
-import org.eclipse.jface.text.contentassist.ICompletionProposal;\r
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;\r
-import org.eclipse.jface.text.contentassist.IContextInformation;\r
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Image;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal2.Activator;\r
-\r
-public class MyCompletionProcessor implements IContentAssistProcessor {\r
-\r
-       protected final static String[] myProposals = { "Unknown synonymy", \r
-                                                       "Create homotypic synonym",\r
-                                                       "Create heterotypic synoynm",\r
-                                                       "Create basionym",\r
-                                                       "Create replaced synonym",\r
-                                                       "Create homonym",\r
-                                                       "Create orthographic variant",\r
-                                                       "Create misapplied name",\r
-                                                       "Create concept relation"};\r
-       protected final static String[] myIcons = { "icons/unknown.gif", \r
-                                                       "icons/homosyn.gif", \r
-                                                       "icons/heterosyn.gif",\r
-                                                       "icons/basionym.gif",\r
-                                                       "icons/repsyn.gif",\r
-                                                       "icons/homonym.gif",\r
-                                                       "icons/orthovariant.gif",\r
-                                                       "icons/misapplied.gif",\r
-                                                       "icons/concept.gif"};\r
-       protected final static String[] myContexts = { "To create a homotypic synonym, there are many things to consider. I could go on all day.",\r
-                                                       "Create homotypic synonym",\r
-                                                       "Create heterotypic synoynm",\r
-                                                       "Create basionym",\r
-                                                       "Create replaced synonym",\r
-                                                       "Create homonym",\r
-                                                       "Create orthographic variant",\r
-                                                       "Create misapplied name",\r
-                                                       "Create concept relation"};\r
-       \r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public ICompletionProposal[] computeCompletionProposals(\r
-               ITextViewer viewer, int documentOffset) {\r
-               String context = "Describe formatting / parsing of this rel. type.";\r
-//             Image img = ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown.gif");\r
-               ICompletionProposal[] result =\r
-                       new ICompletionProposal[myProposals.length];\r
-               for (int i = 0; i < myProposals.length; i++) {\r
-                     IContextInformation contextInfo = \r
-                                new ContextInformation(null, myProposals[i]+" Style");\r
-                       result[i] = new CompletionProposal(myProposals[i],documentOffset, 0, \r
-                                       myProposals[i].length(), ResourceManager.getPluginImage(Activator.getDefault(), myIcons[i]), \r
-                                       myProposals[i], contextInfo, context);\r
-\r
-               }\r
-               return result;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public char[] getCompletionProposalAutoActivationCharacters() {\r
-               return new char[] { '=', (char) SWT.CR };\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public char[] getContextInformationAutoActivationCharacters() {\r
-               return null;\r
-       }\r
-\r
-       // For Context information \r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public IContextInformationValidator getContextInformationValidator() {\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public IContextInformation[] computeContextInformation(\r
-               ITextViewer viewer,\r
-               int documentOffset) {\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public String getErrorMessage() {\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MyRuleScanner.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MyRuleScanner.java
deleted file mode 100644 (file)
index 2a1b2f5..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import org.eclipse.jface.text.TextAttribute;\r
-import org.eclipse.jface.text.rules.EndOfLineRule;\r
-import org.eclipse.jface.text.rules.IRule;\r
-import org.eclipse.jface.text.rules.IToken;\r
-import org.eclipse.jface.text.rules.RuleBasedScanner;\r
-import org.eclipse.jface.text.rules.SingleLineRule;\r
-import org.eclipse.jface.text.rules.Token;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-public class MyRuleScanner extends RuleBasedScanner {\r
-       private static Color TAG_COLOR= new Color(Display.getCurrent(), new RGB(200, 0, 0));\r
-       private static Color COMMENT_COLOR= new Color(Display.getCurrent(), new RGB(0, 200, 0));\r
-\r
-       public MyRuleScanner() {\r
-               IToken tagToken =\r
-                       new Token(new TextAttribute(TAG_COLOR));\r
-//                             new TextAttribute(TAG_COLOR,\r
-//                             null,\r
-//                             SWT.BOLD,\r
-//                             SWTResourceManager.getFont("Georgia", 11, SWT.NONE)));\r
-\r
-               IToken commentToken= new Token(new TextAttribute(COMMENT_COLOR));\r
-\r
-               IRule[] rules = new IRule[2];\r
-               //Add rule for processing instructions\r
-               rules[0] = new SingleLineRule("<myTag", "myTag>", tagToken);\r
-               rules[1] = new EndOfLineRule("//", commentToken); //$NON-NLS-1$\r
-               setRules(rules);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MySourceViewerConfig.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/MySourceViewerConfig.java
deleted file mode 100644 (file)
index dc3ea4a..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.TextAttribute;\r
-import org.eclipse.jface.text.contentassist.ContentAssistant;\r
-import org.eclipse.jface.text.contentassist.IContentAssistant;\r
-import org.eclipse.jface.text.presentation.IPresentationReconciler;\r
-import org.eclipse.jface.text.presentation.PresentationReconciler;\r
-import org.eclipse.jface.text.rules.DefaultDamagerRepairer;\r
-import org.eclipse.jface.text.rules.Token;\r
-import org.eclipse.jface.text.source.ISourceViewer;\r
-import org.eclipse.jface.text.source.SourceViewerConfiguration;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-public class MySourceViewerConfig extends SourceViewerConfiguration {\r
-       private MyRuleScanner scanner;\r
-       private static Color DEFAULT_TAG_COLOR =\r
-               new Color(Display.getCurrent(), new RGB(0, 0, 0));\r
-\r
-       public MySourceViewerConfig() {\r
-       }\r
-\r
-       protected MyRuleScanner getTagScanner() {\r
-               if (scanner == null) {\r
-                       scanner = new MyRuleScanner();\r
-                       scanner.setDefaultReturnToken(\r
-                               new Token(\r
-                                       new TextAttribute(DEFAULT_TAG_COLOR,\r
-                                       null,\r
-                                       0,\r
-                                       SWTResourceManager.getFont("Georgia", 11, SWT.BOLD | SWT.ITALIC))\r
-                               ));\r
-               }\r
-               return scanner;\r
-       }\r
-\r
-       /**\r
-        * Define reconciler for MyEditor\r
-        */\r
-       public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer) {\r
-               PresentationReconciler reconciler = new PresentationReconciler();\r
-               DefaultDamagerRepairer dr = new DefaultDamagerRepairer(getTagScanner());\r
-               reconciler.setDamager(dr, IDocument.DEFAULT_CONTENT_TYPE);\r
-               reconciler.setRepairer(dr, IDocument.DEFAULT_CONTENT_TYPE);\r
-               return reconciler;\r
-       }\r
-       \r
-       public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {\r
-\r
-               ContentAssistant assistant = new ContentAssistant();\r
-               assistant.setContentAssistProcessor(\r
-                       new MyCompletionProcessor(),\r
-                       IDocument.DEFAULT_CONTENT_TYPE);\r
-               assistant.enableAutoActivation(true);\r
-               assistant.setAutoActivationDelay(50);\r
-               assistant.setProposalPopupOrientation(\r
-                       IContentAssistant.PROPOSAL_OVERLAY);\r
-               assistant.setStatusLineVisible(true);\r
-               assistant.setStatusMessage("Create a nomenclatural or taxonomic relationship");\r
-               assistant.setProposalSelectorBackground(\r
-                               new Color(Display.getCurrent(), new RGB(255, 255, 255)));\r
-               assistant.setInformationControlCreator(\r
-                               getInformationControlCreator(sourceViewer)); // this is what pops up the yellow context box\r
-               return assistant;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/NameEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/NameEditorView.java
deleted file mode 100644 (file)
index d68341a..0000000
+++ /dev/null
@@ -1,503 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.KeyAdapter;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.ToolBar;\r
-import org.eclipse.swt.widgets.ToolItem;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal2.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal2.controller.SaveNameAction;\r
-import eu.etaxonomy.taxeditor.designproposal2.model.TaxonName;\r
-\r
-//public class NameEditorView extends EditorPart implements ICdmEventListener {\r
-public class NameEditorView extends EditorPart {\r
-\r
-       private Table table_1;\r
-       private Text text_3;\r
-       private StyledText styledText;\r
-       private TaxonName taxonname;\r
-       private Text clickHereToText;\r
-       \r
-       public boolean dirtyBoy = false;\r
-       String clickText;\r
-       \r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal2.view.nameeditorview"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               //\r
-               \r
-               \r
-//             txtPlay = new Text(container, SWT.BORDER);\r
-//             txtPlay.setCapture(true);\r
-//             final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);\r
-//             gd_txtPlay.heightHint = 96;\r
-//             txtPlay.setLayoutData(gd_txtPlay);\r
-////           txtPlay.addVerifyListener(new VerifyListener() {\r
-////                   @Override\r
-////                   public void verifyText(VerifyEvent e) {\r
-////                   e.doit = Character.isDigit(e.character);\r
-////               }           \r
-////           });\r
-//             txtPlay.addSelectionListener(new SelectionListener() {\r
-//\r
-//                     @Override\r
-//                     public void widgetDefaultSelected(SelectionEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//\r
-//                     @Override\r
-//                     public void widgetSelected(SelectionEvent e) {\r
-//                             System.out.println(e.toString());\r
-//                     }\r
-//                     \r
-//                     \r
-//             });\r
-//             \r
-//             \r
-//             txtPlay.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             System.out.println(e.character);\r
-//                             if (e.character == '=') {\r
-//                                     Shell shell = Activator.getDefault().getWorkbench().\r
-//                                             getActiveWorkbenchWindow().getShell();\r
-//                                     PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-////                                   Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-//                                     // Add the items to the list\r
-//                                     String[] OPTIONS = { "Create homo. syn.",\r
-//                                                     "Create hetero. syn.",\r
-//                                                     "Create mis. name",\r
-//                                                     "Create homonym"};\r
-//\r
-//                                     list.setItems(OPTIONS);\r
-//                                     \r
-//                                     // Open the list and get the selected item\r
-//                                     String selected = list.open(txtPlay.getBounds());\r
-//                                     \r
-//                                     // Print the item to the console\r
-//                                     System.out.println(selected);                                   \r
-//                             }\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//             });\r
-               parent.setLayout(new GridLayout());\r
-               Document doc = new Document("");\r
-\r
-               final Label taxonomicallyIncludedInLabel = new Label(parent, SWT.NONE);\r
-               taxonomicallyIncludedInLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));\r
-               taxonomicallyIncludedInLabel.setText(" ");\r
-\r
-               final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
-//             toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
-               itemSave.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemSave.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save.gif"));\r
-               itemSave.addSelectionListener(new SelectionListener() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               \r
-//                             taxonname.setGenus(txtGenus.getText());\r
-//                             taxonname.setSpecificEpithet(txtSpEpi.getText());\r
-                               \r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-               });\r
-\r
-               final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemMove.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemMove.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                       }\r
-               });\r
-               \r
-               final Menu menuMove = new Menu(toolBar);\r
-               addDropDown(itemMove, menuMove);\r
-\r
-               final MenuItem moveTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               moveTaxonpilosellaMenuItem.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");\r
-\r
-               final MenuItem turnTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               turnTaxonpilosellaMenuItem.setSelection(true);\r
-               turnTaxonpilosellaMenuItem.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");\r
-\r
-                               \r
-//             });\r
-//             newItemToolItem.setText("New item");\r
-               itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-\r
-               final ToolItem itemDelete = new ToolItem(toolBar, SWT.NONE);\r
-               itemDelete.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemDelete.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-                               \r
-               final ToolItem separator1 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddRelationship.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/rel_no_bg.gif"));\r
-               \r
-               final Menu menuAddRel = new Menu(toolBar);\r
-               menuAddRel.setData("x", null);\r
-               addDropDown(itemAddRelationship, menuAddRel);\r
-\r
-               final MenuItem testMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               testMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               testMenuItem.setText("Add synonymy (type unknown)");\r
-\r
-               final MenuItem addHomotypicSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomotypicSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               addHomotypicSynonymMenuItem.setText("Add homotypic synonym");\r
-\r
-               final MenuItem addHeterotypicSynoynmMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHeterotypicSynoynmMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               addHeterotypicSynoynmMenuItem.setText("Add heterotypic synoynm");\r
-\r
-               final MenuItem addBasionymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addBasionymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               addBasionymMenuItem.setText("Add basionym");\r
-\r
-               final MenuItem addReplacedSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addReplacedSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               addReplacedSynonymMenuItem.setText("Add replaced synonym");\r
-\r
-               final MenuItem addHomonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               addHomonymMenuItem.setText("Add homonym");\r
-\r
-               final MenuItem addOrthographicVariantMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addOrthographicVariantMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               addOrthographicVariantMenuItem.setText("Add orthographic variant");\r
-\r
-               final MenuItem addMisappliedNameMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addMisappliedNameMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               addMisappliedNameMenuItem.setText("Add misapplied name");\r
-\r
-               final MenuItem addConceptRelationMenuItem_1 = new MenuItem(menuAddRel, SWT.CASCADE);\r
-               addConceptRelationMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               addConceptRelationMenuItem_1.setText("Add concept relation");\r
-\r
-               final Menu menu = new Menu(addConceptRelationMenuItem_1);\r
-               addConceptRelationMenuItem_1.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setText("congruent");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setSelection(true);\r
-               checkboxMenuItem_1.setText("included in");\r
-\r
-               final MenuItem checkboxMenuItem_2 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_2.setText("includes");\r
-\r
-               final MenuItem checkboxMenuItem_3 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_3.setText("overlaps");\r
-\r
-               final MenuItem checkboxMenuItem_4 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_4.setText("excludes");\r
-\r
-               final MenuItem checkboxMenuItem_5 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_5.setSelection(true);\r
-               checkboxMenuItem_5.setText("doubtful");\r
-               \r
-               final ToolItem separator2 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddTaxon = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddTaxon.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add_no_bg2.gif"));\r
-               itemAddTaxon.setToolTipText("Add new taxon");\r
-\r
-               final Menu menuAdd = new Menu(toolBar);\r
-               menuAdd.setData("x", null);\r
-               addDropDown(itemAddTaxon, menuAdd);\r
-\r
-               final MenuItem addTaxonToMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addTaxonToMenuItem.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final MenuItem addNewTaxonMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addNewTaxonMenuItem.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final Composite composite = new Composite(parent, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.horizontalSpacing = 3;\r
-               gridLayout_2.numColumns = 2;\r
-               composite.setLayout(gridLayout_2);\r
-\r
-               clickText = "Click here to start entering accepted name or enter its individual fields in the property sheet to the right";\r
-               \r
-               clickHereToText = new Text(composite, SWT.WRAP);\r
-               clickHereToText.addKeyListener(new KeyAdapter() {\r
-                       public void keyPressed(final KeyEvent e) {\r
-                       }\r
-               });\r
-               clickHereToText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               clickHereToText.setText(clickText);\r
-               clickHereToText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.ITALIC));\r
-               final GridData gd_clickHereToText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_clickHereToText.widthHint = 426;\r
-               clickHereToText.setLayoutData(gd_clickHereToText);\r
-               clickHereToText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-//                             clickHereToText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                               if (!dirtyBoy) {\r
-                                       clickHereToText.setText("");\r
-                                       clickHereToText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
-                                       clickHereToText.setForeground(SWTResourceManager.getColor(0, 0, 0));\r
-                                       dirtyBoy = true;\r
-                                       firePropertyChange(PROP_DIRTY);\r
-                               }\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-//                             clickHereToText.setBackground(null);                            \r
-                               if (clickHereToText.getText() == "") {\r
-                                       clickHereToText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                       clickHereToText.setText(clickText);\r
-                                       clickHereToText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.ITALIC));\r
-                                       dirtyBoy = false;\r
-                               } else {\r
-                                       dirtyBoy = true;\r
-                               }\r
-                       }\r
-\r
-               });\r
-//             clickHereToText.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             dirtyBoy = true;\r
-//                             isDirty();\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//                     \r
-//             });\r
-\r
-               table_1 = new Table(composite, SWT.BORDER);\r
-               table_1.setLinesVisible(true);\r
-               table_1.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, true, true, 1, 2));\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn.setWidth(100);\r
-               newColumnTableColumn.setText("New column");\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(100);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem.setText(0, "Rank");\r
-               newItemTableItem.setText("Rank");\r
-               \r
-               final TableItem newItemTableItem_1 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_1.setText(0, "Genus");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_2.setText(0, "Species epithet");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_3.setText(0, "Author team");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_4.setText("...");\r
-//             newItemTableItem_1.setText("Genus");\r
-               //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               SourceViewer sourceviewer = new SourceViewer(composite, null, SWT.WRAP | SWT.FULL_SELECTION);\r
-               sourceviewer.setAnnotationHover(null);\r
-               styledText = sourceviewer.getTextWidget();\r
-               final GridData gd_styledText = new GridData(SWT.FILL, SWT.TOP, true, false);\r
-               gd_styledText.heightHint = 41;\r
-               gd_styledText.widthHint = 450;\r
-               styledText.setLayoutData(gd_styledText);\r
-               sourceviewer.setDocument(doc);\r
-               sourceviewer.configure(new MySourceViewerConfig());\r
-               sourceviewer.setTabsToSpacesConverter(null);\r
-\r
-               \r
-//             final Menu menu = new Menu(toolBar);\r
-//             addDropDown(newItemToolItem, menu);\r
-//             );\r
-               \r
-//             Action testAction = new OpenNameEditorAction();\r
-//             testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));\r
-//             testAction.setToolTipText("Add relation");\r
-//             toolBar.add(testAction);\r
-               \r
-               populateForm();         \r
-       }\r
-\r
-//     private void populateForm() {\r
-//             \r
-//             String fulltext = "";\r
-//             \r
-//             if (taxonname.getGenus() != null) {\r
-//                     fulltext = taxonname.getGenus();\r
-//             }\r
-//\r
-//             if (taxonname.getSpecificEpithet() != null) {\r
-//                     fulltext += " " + taxonname.getSpecificEpithet();\r
-//             }\r
-//\r
-//             if (taxonname.getAuthorship() != null) {\r
-//                     fulltext += " " + taxonname.getAuthorship();\r
-//             }\r
-//             \r
-////           txtPlay.setText(fulltext);\r
-////           txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");\r
-//             \r
-//             this.setPartName(taxonname.getName());\r
-//     }\r
-\r
-       private void populateForm() {\r
-               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-       }\r
-       \r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return dirtyBoy;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       public void propertyChange(PropertyChangeEvent evt) {\r
-//             TaxonName taxonname = (TaxonName)evt.getNewValue();\r
-               this.taxonname = (TaxonName)evt.getNewValue();\r
-               System.out.println(((TaxonName)evt.getNewValue()).getName());\r
-               populateForm();\r
-               \r
-               // for individual fields, do something like:\r
-               //      if (evt.getPropertyName().equalsIgnoreCase("genus"))\r
-               //              txtGenus.setText ...\r
-       }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-       \r
-       private static void addDropDown(final ToolItem item, final Menu menu) {\r
-               item.addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               if (event.detail == SWT.ARROW) {\r
-                                       Rectangle rect = item.getBounds();\r
-                                       Point pt = new Point(rect.x, rect.y + rect.height);\r
-                                       pt = item.getParent().toDisplay(pt);\r
-                                       menu.setLocation(pt.x, pt.y);\r
-                                       menu.setVisible(true);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/NameListView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/NameListView.java
deleted file mode 100644 (file)
index c4d45d5..0000000
+++ /dev/null
@@ -1,404 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.IStructuredContentProvider;\r
-import org.eclipse.jface.viewers.ITableLabelProvider;\r
-import org.eclipse.jface.viewers.LabelProvider;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.jface.viewers.TreeViewer;\r
-import org.eclipse.jface.viewers.Viewer;\r
-import org.eclipse.jface.viewers.ViewerLabel;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StackLayout;\r
-import org.eclipse.swt.events.FocusAdapter;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.layout.RowData;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.ExpandBar;\r
-import org.eclipse.swt.widgets.ExpandItem;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-//import eu.etaxonomy.cdm.api.service.INameService;\r
-//import eu.etaxonomy.cdm.event.ICdmEventListener;\r
-//import eu.etaxonomy.cdm.event.ICdmEventListenerRegistration;\r
-//import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.designproposal2.controller.OpenNameEditorAction;\r
-import eu.etaxonomy.taxeditor.designproposal2.Activator;\r
-\r
-//public class NameListView extends ViewPart implements ICdmEventListener {\r
-public class NameListView extends ViewPart {\r
-       private Text searchText;\r
-       private Table table;\r
-       private Composite composite;\r
-       private Tree tree;\r
-       private Composite taxTreeComposite = null;\r
-       private Composite recentNamesComposite = null;\r
-       private Composite searchComposite = null;       \r
-       private Composite top = null;\r
-       private ExpandBar expandBar = null;\r
-       private ExpandItem taxTreeExpandItem;\r
-       private ExpandItem recentNamesExpandItem;\r
-       private ExpandItem searchExpandItem;    \r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal2.view.namelistview"; //$NON-NLS-1$\r
-\r
-       \r
-       \r
-       /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               // TODO Auto-generated method stub\r
-               parent.setLayout(new FillLayout());\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.horizontalSpacing = 0;\r
-               gridLayout.marginWidth = 0;\r
-               gridLayout.marginHeight = 0;\r
-               gridLayout.verticalSpacing = 0; \r
-                               \r
-               top = new Composite(parent, SWT.NONE);\r
-               top.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               composite = new Composite(top, SWT.NONE);\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               composite.setLayout(gridLayout_1);\r
-               final Label lblDataSourceTitle = new Label(composite, SWT.NONE);\r
-               lblDataSourceTitle.setFont(SWTResourceManager.getFont("Arial", 14, SWT.BOLD));\r
-               lblDataSourceTitle.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDataSourceTitle.setAlignment(SWT.CENTER);\r
-               lblDataSourceTitle.setText(" Euro+Med");                \r
-               \r
-               final Label lblDbImg = new Label(composite, SWT.NONE);\r
-               lblDbImg.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));\r
-               lblDbImg.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDbImg.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/db.gif"));\r
-\r
-               final Menu menu = new Menu(lblDbImg);\r
-               lblDbImg.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setSelection(true);\r
-               checkboxMenuItem.setText("Euro+Med (mssql://128.14.101.12:80/europlusmed)");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setText("WP6 (mssql://128.14.101.13:80/wp6)");\r
-\r
-               final MenuItem palmWebora1922299480pwMenuItem = new MenuItem(menu, SWT.NONE);\r
-               palmWebora1922299480pwMenuItem.setText("Palm Web (ora://192.22.99.4:80/pw)");\r
-\r
-               new MenuItem(menu, SWT.SEPARATOR);\r
-\r
-               final MenuItem newDataSourceMenuItem = new MenuItem(menu, SWT.NONE);\r
-               newDataSourceMenuItem.setText("New data source ...");\r
-               \r
-               final Label lblDataSource = new Label(composite, SWT.NONE);\r
-               final GridData gd_lblDataSource = new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1);\r
-               gd_lblDataSource.heightHint = 16;\r
-               lblDataSource.setLayoutData(gd_lblDataSource);\r
-               lblDataSource.setFont(SWTResourceManager.getFont("Arial", 8, SWT.NONE));\r
-               lblDataSource.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDataSource.setAlignment(SWT.CENTER);\r
-               lblDataSource.setText("  mssql://128.14.101.12:80/europlusmed");\r
-\r
-               \r
-               createExpandBar();\r
-               top.setLayout(gridLayout);\r
-               top.setTabList(new Control[] {composite, expandBar});\r
-       }\r
-\r
-       /**\r
-        * This method initializes expandBar\r
-        * \r
-        */\r
-       private void createExpandBar() {\r
-               expandBar = new ExpandBar(top, SWT.V_SCROLL);\r
-               GridData gridData = new GridData();\r
-               gridData.horizontalAlignment = GridData.FILL;\r
-               gridData.grabExcessHorizontalSpace = true;\r
-               gridData.grabExcessVerticalSpace = true;\r
-               gridData.verticalAlignment = GridData.FILL;\r
-               expandBar.setLayoutData(gridData);\r
-               createNameListComposite();\r
-               createRecentNamesComposite();\r
-               createSearchComposite();\r
-               \r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();               \r
-               \r
-       }\r
-       \r
-       private void createNameListComposite() {\r
-\r
-\r
-               \r
-       }\r
-       \r
-       private void createRecentNamesComposite() {\r
-               taxTreeExpandItem = new ExpandItem(expandBar, SWT.NONE, 0);\r
-               taxTreeExpandItem.setExpanded(true);\r
-               taxTreeExpandItem.setHeight(200);\r
-               taxTreeExpandItem.setText("Taxonomic Tree");\r
-//                             IFileArrangerImages.IMG_HOME);\r
-//             nameListExpandItem.setImage(image);\r
-               \r
-               taxTreeComposite = new Composite(expandBar, SWT.NONE);\r
-               taxTreeComposite.setLayout(new FillLayout());\r
-               taxTreeComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               \r
-               taxTreeExpandItem.setControl(taxTreeComposite);\r
-\r
-               tree = new Tree(taxTreeComposite, SWT.FULL_SELECTION);\r
-               tree.setItemCount(1);\r
-               tree.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDoubleClick(final MouseEvent e) {\r
-                               new OpenNameEditorAction("Pilosella").run();\r
-                       }\r
-               });\r
-\r
-               final TreeItem newItemTreeItem = new TreeItem(tree, SWT.NONE);\r
-               newItemTreeItem.setChecked(true);\r
-               newItemTreeItem.setText("Compositae Giseke");\r
-\r
-               final TreeItem newItemTreeItem_1 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_1.setItemCount(1);\r
-               newItemTreeItem_1.setText("Anthemideae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_2 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_2.setItemCount(1);\r
-               newItemTreeItem_2.setText("Arctotideae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_3 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_3.setItemCount(1);\r
-               newItemTreeItem_3.setText("Astereae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_4 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_4.setItemCount(1);\r
-               newItemTreeItem_4.setText("Calenduleae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_5 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_5.setItemCount(1);\r
-               newItemTreeItem_5.setText("Cardueae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_6 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_6.setText("Cichorieae Lam. & DC.");\r
-\r
-               final TreeItem newItemTreeItem_16 = new TreeItem(newItemTreeItem_6, SWT.NONE);\r
-               newItemTreeItem_16.setExpanded(true);\r
-               newItemTreeItem_16.setText("Pilosella Vaill.");\r
-\r
-               final TreeItem newItemTreeItem_17 = new TreeItem(newItemTreeItem_16, SWT.NONE);\r
-               newItemTreeItem_17.setText("Pilosella fuscoatra coll.");\r
-\r
-               final TreeItem newItemTreeItem_18 = new TreeItem(newItemTreeItem_17, SWT.NONE);\r
-               newItemTreeItem_18.setFont(SWTResourceManager.getFont("", 8, SWT.BOLD));\r
-               newItemTreeItem_18.setExpanded(true);\r
-               newItemTreeItem_18.setText("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-\r
-               final TreeItem newItemTreeItem_7 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_7.setItemCount(1);\r
-               newItemTreeItem_7.setText("Eupatorieae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_8 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_8.setItemCount(1);\r
-               newItemTreeItem_8.setText("Gnaphalieae Lecoq & Juillet");\r
-\r
-               final TreeItem newItemTreeItem_9 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_9.setItemCount(1);\r
-               newItemTreeItem_9.setText("Helenieae Lindl.");\r
-\r
-               final TreeItem newItemTreeItem_10 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_10.setItemCount(1);\r
-               newItemTreeItem_10.setText("Heliantheae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_11 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_11.setItemCount(1);\r
-               newItemTreeItem_11.setText("Inuleae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_12 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_12.setItemCount(1);\r
-               newItemTreeItem_12.setText("Mutisieae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_13 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_13.setItemCount(1);\r
-               newItemTreeItem_13.setText("Plucheeae Anderb.");\r
-\r
-               final TreeItem newItemTreeItem_14 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_14.setItemCount(1);\r
-               newItemTreeItem_14.setText("Senecioneae Cass.");\r
-\r
-               final TreeItem newItemTreeItem_15 = new TreeItem(newItemTreeItem, SWT.NONE);\r
-               newItemTreeItem_15.setItemCount(1);\r
-               newItemTreeItem_15.setText("Vernonieae Cass.");\r
-               taxTreeComposite.setTabList(new Control[] {tree});\r
-               recentNamesExpandItem = new ExpandItem(expandBar, SWT.NONE, 1);\r
-               recentNamesExpandItem.setHeight(130);\r
-               recentNamesExpandItem.setExpanded(true);\r
-               recentNamesExpandItem.setText("Recently viewed names");\r
-               recentNamesComposite = new Composite(expandBar, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               recentNamesComposite.setLayout(gridLayout);\r
-\r
-               recentNamesExpandItem.setControl(recentNamesComposite);\r
-\r
-               table = new Table(recentNamesComposite, SWT.NONE);\r
-               table.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDoubleClick(final MouseEvent e) {\r
-                               new OpenNameEditorAction("Carduus").run();\r
-                       }\r
-               });\r
-               table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem.setText("Laphangium (Hilliard & B. L. Burtt) Tzvelev");\r
-\r
-               final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_1.setText("Carduus L.");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_2.setText("Carduus carpetanus Boiss. & Reut.");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_3.setText("Carduus kerneri Simonk.");\r
-\r
-               final TableItem newItemTableItem_5 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_5.setText("Senecio eboracensis R. J. Abbott & A. J. Lowe");\r
-\r
-               final TableItem newItemTableItem_6 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_6.setText("Senecio elegans L.");\r
-\r
-//             Image image = FileArrangerImages.getImageRegistry().get(\r
-//                             IFileArrangerImages.IMG_BOOKMARK);\r
-//             bookmarksExpandItem.setImage(image);\r
-       }\r
-\r
-       private void createSearchComposite() {\r
-               searchExpandItem = new ExpandItem(expandBar, SWT.NONE, 2);\r
-               searchExpandItem.setHeight(50);\r
-               searchExpandItem.setExpanded(true);\r
-               searchExpandItem.setText("Search");\r
-               searchComposite = new Composite(expandBar, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               searchComposite.setLayout(gridLayout);\r
-\r
-               searchExpandItem.setControl(searchComposite);\r
-\r
-               searchText = new Text(searchComposite, SWT.BORDER);\r
-               searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               searchText.setText("Use \"*\" for wildcard searching");\r
-               final GridData gd_useForText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               searchText.setLayoutData(gd_useForText);\r
-               searchText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               searchText.setForeground(SWTResourceManager.getColor(0,0,0));\r
-                               searchText.setText("");\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               if (searchText.getText() == "") {\r
-                                       searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                       searchText.setText("Use \"*\" for wildcard searching");                                 \r
-                               }\r
-                               \r
-                       }\r
-                       \r
-               });\r
-\r
-               final Button searchButton = new Button(searchComposite, SWT.NONE);\r
-               searchButton.setText("Search");\r
-\r
-//             final Label carduusLLabel = new Label(searchComposite, SWT.NONE);\r
-//             carduusLLabel.setLayoutData(gd_carduusLLabel);\r
-//             carduusLLabel.setText("Carduus L.");\r
-//\r
-//             final Label carduusCarpetanusBoissLabel = new Label(searchComposite, SWT.NONE);\r
-//             carduusCarpetanusBoissLabel.setLayoutData(gd_carduusCarpetanusBoissLabel);\r
-//             carduusCarpetanusBoissLabel.setText("Carduus carpetanus Boiss. & Reut.");\r
-\r
-//             Image image = FileArrangerImages.getImageRegistry().get(\r
-//                             IFileArrangerImages.IMG_FTP);\r
-//             ftpExpandItem.setImage(image);\r
-       }       \r
-       \r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-       \r
-       /**\r
-        * Refreshes a taxon name in the list\r
-        */\r
-//     public void refreshElement(TaxonName taxonname) {\r
-//     }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             System.out.println("here i am");\r
-//             refreshElement((TaxonName)arg0);\r
-//     }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/PilosellaEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/PilosellaEditorView.java
deleted file mode 100644 (file)
index a61284a..0000000
+++ /dev/null
@@ -1,671 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.MouseListener;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.ToolBar;\r
-import org.eclipse.swt.widgets.ToolItem;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal2.Activator;\r
-import eu.etaxonomy.taxeditor.designproposal2.controller.SaveNameAction;\r
-import eu.etaxonomy.taxeditor.designproposal2.model.TaxonName;\r
-\r
-public class PilosellaEditorView extends EditorPart {\r
-//public class PilosellaEditorView extends TextEditor {\r
-\r
-       private Text hieraciumFuscoatrumSubspText_1;\r
-       private Text hieraciumRubroonegenseNorrlText;\r
-       private Table table_1;\r
-       private Text text_3;\r
-       private Text hieraciumFuscoatrumSubspText;\r
-       private Text hieraciumAurantiacumSubspText;\r
-       private Text text_1;\r
-       private StyledText styledText;\r
-       private TaxonName taxonname;\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal2.view.pilosellaeditorview"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               //\r
-               \r
-               \r
-//             txtPlay = new Text(container, SWT.BORDER);\r
-//             txtPlay.setCapture(true);\r
-//             final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);\r
-//             gd_txtPlay.heightHint = 96;\r
-//             txtPlay.setLayoutData(gd_txtPlay);\r
-////           txtPlay.addVerifyListener(new VerifyListener() {\r
-////                   @Override\r
-////                   public void verifyText(VerifyEvent e) {\r
-////                   e.doit = Character.isDigit(e.character);\r
-////               }           \r
-////           });\r
-//             txtPlay.addSelectionListener(new SelectionListener() {\r
-//\r
-//                     @Override\r
-//                     public void widgetDefaultSelected(SelectionEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//\r
-//                     @Override\r
-//                     public void widgetSelected(SelectionEvent e) {\r
-//                             System.out.println(e.toString());\r
-//                     }\r
-//                     \r
-//                     \r
-//             });\r
-//             \r
-//             \r
-//             txtPlay.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             System.out.println(e.character);\r
-//                             if (e.character == '=') {\r
-//                                     Shell shell = Activator.getDefault().getWorkbench().\r
-//                                             getActiveWorkbenchWindow().getShell();\r
-//                                     PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-////                                   Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-//                                     // Add the items to the list\r
-//                                     String[] OPTIONS = { "Create homo. syn.",\r
-//                                                     "Create hetero. syn.",\r
-//                                                     "Create mis. name",\r
-//                                                     "Create homonym"};\r
-//\r
-//                                     list.setItems(OPTIONS);\r
-//                                     \r
-//                                     // Open the list and get the selected item\r
-//                                     String selected = list.open(txtPlay.getBounds());\r
-//                                     \r
-//                                     // Print the item to the console\r
-//                                     System.out.println(selected);                                   \r
-//                             }\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//             });\r
-               parent.setLayout(new GridLayout());\r
-               Document doc = new Document();\r
-\r
-               final Label taxonomicallyIncludedInLabel = new Label(parent, SWT.NONE);\r
-               taxonomicallyIncludedInLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));\r
-               taxonomicallyIncludedInLabel.setText("Higher taxon: \"Pilosella fuscoatra coll.\"");\r
-\r
-               final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
-//             toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
-               itemSave.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemSave.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save.gif"));\r
-               itemSave.addSelectionListener(new SelectionListener() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               \r
-//                             taxonname.setGenus(txtGenus.getText());\r
-//                             taxonname.setSpecificEpithet(txtSpEpi.getText());\r
-                               \r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new SaveNameAction(taxonname).run();\r
-                       }\r
-               });\r
-\r
-               final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemMove.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               \r
-               final Menu menuMove = new Menu(toolBar);\r
-               menuMove.setData("x", null);\r
-               addDropDown(itemMove, menuMove);\r
-\r
-               final MenuItem moveTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               moveTaxonpilosellaMenuItem.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");\r
-\r
-               final MenuItem turnTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               turnTaxonpilosellaMenuItem.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                               new MoveDialogView(getSite().getShell());\r
-//                             MessageDialog.openInformation(getSite().getShell(),"Readme Editor","View Action executed");                             \r
-                               MoveDialogView dialog = new MoveDialogView(getSite().getShell());\r
-                               dialog.open();                          \r
-                       }\r
-               });\r
-               turnTaxonpilosellaMenuItem.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");\r
-               \r
-//             });\r
-//             newItemToolItem.setText("New item");\r
-               itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-\r
-               final ToolItem itemDelete = new ToolItem(toolBar, SWT.NONE);\r
-               itemDelete.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemDelete.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-                               \r
-               final ToolItem separator1 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddRelationship.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/rel_no_bg.gif"));\r
-               \r
-               final Menu menuAddRel = new Menu(toolBar);\r
-               menuAddRel.setData("x", null);\r
-               addDropDown(itemAddRelationship, menuAddRel);\r
-\r
-               final MenuItem testMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               testMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               testMenuItem.setText("Add synonymy (type unknown)");\r
-\r
-               final MenuItem addHomotypicSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomotypicSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               addHomotypicSynonymMenuItem.setText("Add homotypic synonym");\r
-\r
-               final MenuItem addHeterotypicSynoynmMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHeterotypicSynoynmMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               addHeterotypicSynoynmMenuItem.setText("Add heterotypic synoynm");\r
-\r
-               final MenuItem addBasionymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addBasionymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               addBasionymMenuItem.setText("Add basionym");\r
-\r
-               final MenuItem addReplacedSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addReplacedSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               addReplacedSynonymMenuItem.setText("Add replaced synonym");\r
-\r
-               final MenuItem addHomonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               addHomonymMenuItem.setText("Add homonym");\r
-\r
-               final MenuItem addOrthographicVariantMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addOrthographicVariantMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               addOrthographicVariantMenuItem.setText("Add orthographic variant");\r
-\r
-               final MenuItem addMisappliedNameMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addMisappliedNameMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               addMisappliedNameMenuItem.setText("Add misapplied name");\r
-\r
-               final MenuItem addConceptRelationMenuItem_1 = new MenuItem(menuAddRel, SWT.CASCADE);\r
-               addConceptRelationMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               addConceptRelationMenuItem_1.setText("Add concept relation");\r
-\r
-               final Menu menu = new Menu(addConceptRelationMenuItem_1);\r
-               addConceptRelationMenuItem_1.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setText("congruent");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setSelection(true);\r
-               checkboxMenuItem_1.setText("included in");\r
-\r
-               final MenuItem checkboxMenuItem_2 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_2.setText("includes");\r
-\r
-               final MenuItem checkboxMenuItem_3 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_3.setText("overlaps");\r
-\r
-               final MenuItem checkboxMenuItem_4 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_4.setText("excludes");\r
-\r
-               final MenuItem checkboxMenuItem_5 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_5.setSelection(true);\r
-               checkboxMenuItem_5.setText("doubtful");\r
-               \r
-               final ToolItem separator2 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddTaxon = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddTaxon.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add_no_bg2.gif"));\r
-               itemAddTaxon.setToolTipText("Add new taxon");\r
-\r
-               final Menu menuAdd = new Menu(toolBar);\r
-               menuAdd.setData("x", null);\r
-               addDropDown(itemAddTaxon, menuAdd);\r
-\r
-               final MenuItem addTaxonToMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addTaxonToMenuItem.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final MenuItem addNewTaxonMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addNewTaxonMenuItem.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final Composite composite = new Composite(parent, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.horizontalSpacing = 3;\r
-               gridLayout_2.numColumns = 3;\r
-               composite.setLayout(gridLayout_2);\r
-\r
-               text_3 = new Text(composite, SWT.WRAP);\r
-               text_3.setText("Pilosella fuscoatra (Nägeli & Peter) Soják in Preslia 43: 184. 1971 ");\r
-               text_3.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
-               text_3.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
-               text_3.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               text_3.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               text_3.setBackground(null);                             \r
-                       }\r
-\r
-               });\r
-\r
-               table_1 = new Table(composite, SWT.BORDER);\r
-               table_1.setLinesVisible(true);\r
-               table_1.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, true, true, 1, 7));\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn.setWidth(100);\r
-               newColumnTableColumn.setText("New column");\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(100);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem.setText(0, "Rank");\r
-               newItemTableItem.setText(1, "species");\r
-               newItemTableItem.setText("Rank");\r
-               \r
-               final TableItem newItemTableItem_1 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Pilosella");\r
-               newItemTableItem_1.setText(0, "Genus");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_2.setText(1, "fuscoatra");\r
-               newItemTableItem_2.setText(0, "Species epithet");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "Nägeli & Peter");\r
-               newItemTableItem_3.setText(0, "Author team");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_4.setText("...");\r
-//             newItemTableItem_3.setText("Author team");\r
-//             newItemTableItem_2.setText("Species epithet");\r
-//             newItemTableItem_1.setText("Genus");\r
-\r
-               final Label labelWithMenu = new Label(composite, SWT.NONE);\r
-               labelWithMenu.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               labelWithMenu.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               final GridData gd_labelWithMenu = new GridData(SWT.LEFT, SWT.TOP, false, false);\r
-               labelWithMenu.setLayoutData(gd_labelWithMenu);\r
-               \r
-               text_1 = new Text(composite, SWT.WRAP);\r
-               final GridData gd_text_1 = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_text_1.widthHint = 300;\r
-               text_1.setLayoutData(gd_text_1);\r
-               text_1.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.BOLD | SWT.ITALIC));\r
-               text_1.setText("Hieracium fuscoatrum Nägeli & Peter, Hierac. Mitt.-Eur. 1: 315. 1885");\r
-               text_1.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               text_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               text_1.setBackground(null);                             \r
-                       }\r
-\r
-               });\r
-               \r
-\r
-               final Label label_1 = new Label(composite, SWT.NONE);\r
-               label_1.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               label_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               hieraciumAurantiacumSubspText = new Text(composite, SWT.WRAP);\r
-               final GridData gd_hieraciumAurantiacumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumAurantiacumSubspText.widthHint = 300;\r
-               hieraciumAurantiacumSubspText.setLayoutData(gd_hieraciumAurantiacumSubspText);\r
-               hieraciumAurantiacumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumAurantiacumSubspText.setText("Hieracium aurantiacum subsp. chaetodermum Pohle & Zahn in Allg. Bot. Z. Syst. 13: 110. 1907");\r
-               hieraciumAurantiacumSubspText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumAurantiacumSubspText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumAurantiacumSubspText.setBackground(null);                              \r
-                       }\r
-\r
-               });\r
-               \r
-\r
-               final Label label_2 = new Label(composite, SWT.NONE);\r
-               label_2.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_2.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               label_2.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-\r
-//             addDropDown(label_2, menuAddRel);\r
-               \r
-               hieraciumFuscoatrumSubspText = new Text(composite, SWT.WRAP);\r
-               final GridData gd_hieraciumFuscoatrumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumFuscoatrumSubspText.widthHint = 300;\r
-               hieraciumFuscoatrumSubspText.setLayoutData(gd_hieraciumFuscoatrumSubspText);\r
-               hieraciumFuscoatrumSubspText.setText("Hieracium fuscoatrum subsp. chaetodermum (Pohle & Zahn) Zahn in Engler, Pflanzenr. 82: 1267. 1923");\r
-               hieraciumFuscoatrumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumFuscoatrumSubspText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText.setBackground(null);                               \r
-                       }\r
-\r
-               });\r
-\r
-               final Label label = new Label(composite, SWT.NONE);\r
-               label.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               label.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-\r
-               hieraciumRubroonegenseNorrlText = new Text(composite, SWT.WRAP);\r
-               hieraciumRubroonegenseNorrlText.setText("Hieracium rubroonegense Norrl. in Acta Soc. Fauna Fl. Fenn. 26(7): 61. 1904");\r
-               hieraciumRubroonegenseNorrlText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumRubroonegenseNorrlText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumRubroonegenseNorrlText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumRubroonegenseNorrlText.setBackground(null);                            \r
-                       }\r
-\r
-               });             \r
-               final GridData gd_hieraciumRubroonegenseNorrlText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumRubroonegenseNorrlText.widthHint = 300;\r
-               hieraciumRubroonegenseNorrlText.setLayoutData(gd_hieraciumRubroonegenseNorrlText);\r
-\r
-               final Label label_3 = new Label(composite, SWT.NONE);\r
-               label_3.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_3.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               label_3.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               hieraciumFuscoatrumSubspText_1 = new Text(composite, SWT.WRAP);\r
-               hieraciumFuscoatrumSubspText_1.setText("Hieracium fuscoatrum subsp. rubroonegense (Norrl.) Zahn in Engler, Pflanzenr. 82: 1267. 1923");\r
-               hieraciumFuscoatrumSubspText_1.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumFuscoatrumSubspText_1.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText_1.setBackground(null);                             \r
-                       }\r
-\r
-               });     \r
-               final GridData gd_hieraciumFuscoatrumSubspText_1 = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumFuscoatrumSubspText_1.widthHint = 300;\r
-               hieraciumFuscoatrumSubspText_1.setLayoutData(gd_hieraciumFuscoatrumSubspText_1);\r
-               \r
-               final Label label_4 = new Label(composite, SWT.NONE);\r
-               label_4.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_4.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               label_4.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final Menu menu1 = new Menu(labelWithMenu);\r
-               labelWithMenu.setMenu(menu1);\r
-               labelWithMenu.addMouseListener(new MouseListener() {\r
-\r
-                       public void mouseDoubleClick(MouseEvent e) {\r
-                               // TODO Auto-generated method stub\r
-                               \r
-                       }\r
-\r
-                       public void mouseDown(MouseEvent e) {\r
-                               menu1.setVisible(true);\r
-                       }\r
-\r
-                       public void mouseUp(MouseEvent e) {\r
-                               // TODO Auto-generated method stub\r
-                               \r
-                       }\r
-                       \r
-               });\r
-\r
-               final MenuItem deletehieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               deletehieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-               deletehieraciumFuscoatrumMenuItem.setText("Delete \"Hieracium fuscoatrum Nägeli & Peter\" from this taxon");\r
-\r
-               new MenuItem(menu1, SWT.SEPARATOR);\r
-\r
-               final MenuItem moveMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               moveMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-               moveMenuItem.setText("Move \"Hieracium fuscoatrum Nägeli & Peter\" to another taxon");\r
-\r
-               final MenuItem makehieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               makehieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/a_no_bg.gif"));\r
-               makehieraciumFuscoatrumMenuItem.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into an accepted name");\r
-\r
-               new MenuItem(menu1, SWT.SEPARATOR);\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a synonym (type unknown)");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_1 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_1.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homotypic synonym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_2 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_2.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_2.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a heterotypic synoynm");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_3 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_3.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_3.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a basionym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_4 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_4.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_4.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a replaced synonym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_5 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_5.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_5.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homonym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_6 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_6.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_6.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a orthographic variant");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_7 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_7.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_7.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a misapplied name");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_8 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_8.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_8.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a concept relation");\r
-\r
-               SourceViewer sourceviewer = new SourceViewer(composite, null, SWT.WRAP | SWT.FULL_SELECTION);\r
-               sourceviewer.setAnnotationHover(null);\r
-               styledText = sourceviewer.getTextWidget();\r
-               final GridData gd_styledText = new GridData(SWT.FILL, SWT.TOP, true, false);\r
-               gd_styledText.heightHint = 41;\r
-               gd_styledText.widthHint = 450;\r
-               styledText.setLayoutData(gd_styledText);\r
-               sourceviewer.setDocument(doc);\r
-               sourceviewer.configure(new MySourceViewerConfig());\r
-//             sourceviewer.setTabsToSpacesConverter(null);\r
-\r
-               \r
-//             final Menu menu = new Menu(toolBar);\r
-//             addDropDown(newItemToolItem, menu);\r
-//             );\r
-               \r
-//             Action testAction = new OpenNameEditorAction();\r
-//             testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));\r
-//             testAction.setToolTipText("Add relation");\r
-//             toolBar.add(testAction);\r
-               \r
-               populateForm();         \r
-       }\r
-\r
-//     private void populateForm() {\r
-//             \r
-//             String fulltext = "";\r
-//             \r
-//             if (taxonname.getGenus() != null) {\r
-//                     fulltext = taxonname.getGenus();\r
-//             }\r
-//\r
-//             if (taxonname.getSpecificEpithet() != null) {\r
-//                     fulltext += " " + taxonname.getSpecificEpithet();\r
-//             }\r
-//\r
-//             if (taxonname.getAuthorship() != null) {\r
-//                     fulltext += " " + taxonname.getAuthorship();\r
-//             }\r
-//             \r
-////           txtPlay.setText(fulltext);\r
-////           txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");\r
-//             \r
-//             this.setPartName(taxonname.getName());\r
-//     }\r
-\r
-       private void populateForm() {\r
-               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-       }\r
-       \r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return true;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       public void propertyChange(PropertyChangeEvent evt) {\r
-//             TaxonName taxonname = (TaxonName)evt.getNewValue();\r
-               this.taxonname = (TaxonName)evt.getNewValue();\r
-               System.out.println(((TaxonName)evt.getNewValue()).getName());\r
-               populateForm();\r
-               \r
-               // for individual fields, do something like:\r
-               //      if (evt.getPropertyName().equalsIgnoreCase("genus"))\r
-               //              txtGenus.setText ...\r
-       }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-       \r
-       private static void addDropDown(final ToolItem item, final Menu menu) {\r
-               item.addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               if (event.detail == SWT.ARROW) {\r
-                                       Rectangle rect = item.getBounds();\r
-                                       Point pt = new Point(rect.x, rect.y + rect.height);\r
-                                       pt = item.getParent().toDisplay(pt);\r
-                                       menu.setLocation(pt.x, pt.y);\r
-                                       menu.setVisible(true);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/UndoView.java b/eclipseprojects/eu.etaxonomy.taxeditor.designproposal2/src/eu/etaxonomy/taxeditor/designproposal2/view/UndoView.java
deleted file mode 100644 (file)
index aaebad3..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-package eu.etaxonomy.taxeditor.designproposal2.view;\r
-\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.designproposal2.Activator;\r
-\r
-public class UndoView extends ViewPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.designproposal2.view.undoview"; //$NON-NLS-1$\r
-    private Table table;\r
-\r
-    /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               container.setLayout(new FillLayout(SWT.VERTICAL));\r
-\r
-               table = new Table(container, SWT.NONE);\r
-               table.getHorizontalBar().setVisible(false);\r
-               table.setLinesVisible(true);\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table, SWT.NONE);\r
-               newColumnTableColumn.setWidth(19);\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(1000);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem.setText(1, "Created taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Added fact (Distribution) \"California deciduous forest ...\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_2.setText(1, "Added fact (Distribution) \"Brazilian (Northerly region)\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "Moved taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_4.setText(1, "Added unknown syn. \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_5 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_5.setText(1, "Changed rel. type to homo. syn. for \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_6 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_6.setText(1, "Edited name \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_7 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_7.setText(new String[] {"Undo the last action"});\r
-               newItemTableItem_7.setImage(0, ResourceManager.getPluginImage(Activator.getDefault(), "icons/undo.gif"));\r
-               newItemTableItem_7.setText(1, "Deleted fact (Distribution) \"Brazilian (Northerly region)\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               //\r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();\r
-       }\r
-\r
-       /**\r
-        * Create the actions\r
-        */\r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.feature/.project b/eclipseprojects/eu.etaxonomy.taxeditor.feature/.project
deleted file mode 100644 (file)
index 6ff2de5..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<projectDescription>\r
-       <name>eu.etaxonomy.taxeditor.feature</name>\r
-       <comment></comment>\r
-       <projects>\r
-       </projects>\r
-       <buildSpec>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.FeatureBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-       </buildSpec>\r
-       <natures>\r
-               <nature>org.eclipse.pde.FeatureNature</nature>\r
-       </natures>\r
-</projectDescription>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.feature/build.properties b/eclipseprojects/eu.etaxonomy.taxeditor.feature/build.properties
deleted file mode 100644 (file)
index 82ab19c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-bin.includes = feature.xml\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.feature/feature.xml b/eclipseprojects/eu.etaxonomy.taxeditor.feature/feature.xml
deleted file mode 100644 (file)
index e3295b6..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<feature\r
-      id="eu.etaxonomy.taxeditor.feature"\r
-      label="EDIT Desktop Taxonomic Editor"\r
-      version="1.0.0"\r
-      provider-name="EDIT">\r
-\r
-   <description url="http://www.example.com/description">\r
-      [Enter Feature Description here.]\r
-   </description>\r
-\r
-   <copyright url="http://www.example.com/copyright">\r
-      [Enter Copyright Description here.]\r
-   </copyright>\r
-\r
-   <license url="http://www.example.com/license">\r
-      [Enter License Description here.]\r
-   </license>\r
-\r
-   <includes\r
-         id="org.eclipse.rcp"\r
-         version="0.0.0"/>\r
-\r
-   <plugin\r
-         id="eu.etaxonomy.taxeditor"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.equinox.launcher.win32.win32.x86"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         fragment="true"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.jface.text"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.ui"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.core.runtime"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.core.databinding"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.core.databinding.beans"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.jface.databinding"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.ui.forms"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.core.resources"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.ui.views"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.pde.source"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.ui.ide"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="eu.etaxonomy.cdmLibrary"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.ui.workbench.texteditor"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.core.filesystem"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.text"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.update.core"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.update.ui"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-   <plugin\r
-         id="org.eclipse.core.net"\r
-         download-size="0"\r
-         install-size="0"\r
-         version="0.0.0"\r
-         unpack="false"/>\r
-\r
-</feature>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/.classpath b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/.classpath
deleted file mode 100644 (file)
index 0215967..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<classpath>\r
-       <classpathentry kind="src" path="src"/>\r
-       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>\r
-       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>\r
-       <classpathentry kind="output" path="bin"/>\r
-</classpath>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/.project b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/.project
deleted file mode 100644 (file)
index e1d2f98..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<projectDescription>\r
-       <name>eu.etaxonomy.taxeditor.prototype1</name>\r
-       <comment></comment>\r
-       <projects>\r
-       </projects>\r
-       <buildSpec>\r
-               <buildCommand>\r
-                       <name>org.eclipse.jdt.core.javabuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.ManifestBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.SchemaBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-       </buildSpec>\r
-       <natures>\r
-               <nature>org.eclipse.pde.PluginNature</nature>\r
-               <nature>org.eclipse.jdt.core.javanature</nature>\r
-       </natures>\r
-</projectDescription>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/META-INF/MANIFEST.MF b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/META-INF/MANIFEST.MF
deleted file mode 100644 (file)
index 2e3095f..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Prototype 1 Plug-in
-Bundle-SymbolicName: eu.etaxonomy.taxeditor.prototype1;singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: eu.etaxonomy.taxeditor.prototype1.Activator
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.core.databinding,
- org.eclipse.core.databinding.beans,
- org.eclipse.jface.databinding,
- org.eclipse.jface.text,
- eu.etaxonomy.cdmLibrary
-Eclipse-LazyStart: true
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/Prototype1.product b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/Prototype1.product
deleted file mode 100644 (file)
index f76d0e9..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<?pde version="3.1"?>\r
-\r
-<product name="EDIT Taxonomic Editor - Prototype 1" id="eu.etaxonomy.taxeditor.prototype1.Prototype1" application="eu.etaxonomy.taxeditor.prototype1.application" useFeatures="false">\r
-\r
-   <aboutInfo>\r
-      <image path="/eu.etaxonomy.taxeditor.prototype1/icons/edit_16x16.gif"/>\r
-      <text>\r
-         Thanks for all the laughs!\r
-      </text>\r
-   </aboutInfo>\r
-\r
-   <configIni use="default"/>\r
-\r
-   <launcherArgs>\r
-      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>\r
-   </launcherArgs>\r
-\r
-   <windowImages i16="/eu.etaxonomy.taxeditor.prototype1/icons/edit_16x16.gif"/>\r
-\r
-\r
-   <launcher>\r
-      <solaris/>\r
-      <win useIco="true">\r
-         <bmp/>\r
-      </win>\r
-   </launcher>\r
-\r
-\r
-   <vm>\r
-   </vm>\r
-\r
-   <plugins>\r
-      <plugin id="com.ibm.icu"/>\r
-      <plugin id="com.swtdesigner.gwt.saf.browser" fragment="true"/>\r
-      <plugin id="eu.etaxonomy.cdmLibrary"/>\r
-      <plugin id="javax.servlet"/>\r
-      <plugin id="org.eclipse.core.commands"/>\r
-      <plugin id="org.eclipse.core.contenttype"/>\r
-      <plugin id="org.eclipse.core.databinding"/>\r
-      <plugin id="org.eclipse.core.expressions"/>\r
-      <plugin id="org.eclipse.core.jobs"/>\r
-      <plugin id="org.eclipse.core.runtime"/>\r
-      <plugin id="org.eclipse.core.runtime.compatibility.auth"/>\r
-      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>\r
-      <plugin id="org.eclipse.equinox.app"/>\r
-      <plugin id="org.eclipse.equinox.common"/>\r
-      <plugin id="org.eclipse.equinox.preferences"/>\r
-      <plugin id="org.eclipse.equinox.registry"/>\r
-      <plugin id="org.eclipse.help"/>\r
-      <plugin id="org.eclipse.jface"/>\r
-      <plugin id="org.eclipse.jface.databinding"/>\r
-      <plugin id="org.eclipse.osgi"/>\r
-      <plugin id="org.eclipse.osgi.services"/>\r
-      <plugin id="org.eclipse.swt"/>\r
-      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>\r
-      <plugin id="org.eclipse.ui"/>\r
-      <plugin id="org.eclipse.ui.forms"/>\r
-      <plugin id="org.eclipse.ui.workbench"/>\r
-   </plugins>\r
-\r
-</product>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Activator.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Activator.class
deleted file mode 100644 (file)
index 0876fa9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Activator.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application$1.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application$1.class
deleted file mode 100644 (file)
index 3f9e840..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application$1.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application.class
deleted file mode 100644 (file)
index 952435f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Application.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.class
deleted file mode 100644 (file)
index 8b176d9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.class
deleted file mode 100644 (file)
index 02136d9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.class
deleted file mode 100644 (file)
index 0d86e99..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Perspective.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Perspective.class
deleted file mode 100644 (file)
index 4438346..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/Perspective.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.class
deleted file mode 100644 (file)
index a64a487..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.class
deleted file mode 100644 (file)
index 7abb708..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.class
deleted file mode 100644 (file)
index 02def78..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView$1.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView$1.class
deleted file mode 100644 (file)
index d5b2c94..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView$1.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.class
deleted file mode 100644 (file)
index 13a9a13..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$1.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$1.class
deleted file mode 100644 (file)
index dba3412..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$1.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$2.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$2.class
deleted file mode 100644 (file)
index afb8c90..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView$2.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.class
deleted file mode 100644 (file)
index 5a39709..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$1.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$1.class
deleted file mode 100644 (file)
index 6839b86..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$1.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewContentProvider.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewContentProvider.class
deleted file mode 100644 (file)
index b326663..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewContentProvider.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewLabelProvider.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewLabelProvider.class
deleted file mode 100644 (file)
index 8679d9d..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView$ViewLabelProvider.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView.class b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView.class
deleted file mode 100644 (file)
index 6baddda..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/bin/eu/etaxonomy/taxeditor/prototype1/view/NameListView.class and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/build.properties b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/build.properties
deleted file mode 100644 (file)
index 78d73f7..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-source.. = src/\r
-output.. = bin/\r
-bin.includes = plugin.xml,\\r
-               META-INF/,\\r
-               .\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_16.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_16.gif
deleted file mode 100644 (file)
index 05626b1..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_32.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_32.gif
deleted file mode 100644 (file)
index b432f88..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/alt_window_32.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/basionym.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/basionym.gif
deleted file mode 100644 (file)
index 2780f44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/basionym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/concept.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/concept.gif
deleted file mode 100644 (file)
index 445cd44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/concept.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/edit_16x16.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/edit_16x16.gif
deleted file mode 100644 (file)
index d857c6c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/edit_16x16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/heterosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/heterosyn.gif
deleted file mode 100644 (file)
index ebab24c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/heterosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homonym.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homonym.gif
deleted file mode 100644 (file)
index 955c6ae..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homonym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homosyn.gif
deleted file mode 100644 (file)
index 143c881..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/homosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/misapplied.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/misapplied.gif
deleted file mode 100644 (file)
index 18fba08..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/misapplied.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/orthovariant.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/orthovariant.gif
deleted file mode 100644 (file)
index 14ade2f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/orthovariant.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/repsyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/repsyn.gif
deleted file mode 100644 (file)
index 1b627ce..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/repsyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/unknown.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/unknown.gif
deleted file mode 100644 (file)
index 8c58c52..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/icons/unknown.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/plugin.xml b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/plugin.xml
deleted file mode 100644 (file)
index a3be6e2..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<?eclipse version="3.2"?>\r
-<plugin>\r
-\r
-   <extension\r
-         id="application"\r
-         point="org.eclipse.core.runtime.applications">\r
-      <application>\r
-         <run\r
-               class="eu.etaxonomy.taxeditor.prototype1.Application">\r
-         </run>\r
-      </application>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.perspectives">\r
-      <perspective\r
-            class="eu.etaxonomy.taxeditor.prototype1.Perspective"\r
-            fixed="false"\r
-            id="eu.etaxonomy.mvctest.perspective"\r
-            name="Perspective">\r
-      </perspective>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.views">\r
-      <view\r
-            name="Create Name"\r
-            class="eu.etaxonomy.taxeditor.prototype1.view.CreateNameView"\r
-            id="eu.etaxonomy.mvctest.view">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.prototype1.view.NameListView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.mvctest.view.NameListView"\r
-            name="Name List View">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.prototype1.view.LastNameView"\r
-            id="eu.etaxonomy.mvctest.view.LastNameView"\r
-            name="Last Name Created">\r
-      </view>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.editors">\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.prototype1.view.NameEditorView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.prototype1.view.NameEditorView"\r
-            name="New EditorPart">\r
-      </editor>\r
-   </extension>\r
-   <extension\r
-         id="product"\r
-         point="org.eclipse.core.runtime.products">\r
-      <product\r
-            application="eu.etaxonomy.taxeditor.prototype1.application"\r
-            name="EDIT Taxonomic Editor - Prototype 1">\r
-         <property\r
-               name="appName"\r
-               value="EDITTaxonomicEditorPrototype1">\r
-         </property>\r
-         <property\r
-               name="aboutImage"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="aboutText"\r
-               value="Thanks for all the laughs!">\r
-         </property>\r
-         <property\r
-               name="windowImages"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-      </product>\r
-   </extension>\r
-   <extension\r
-         id="product1"\r
-         point="org.eclipse.core.runtime.products">\r
-      <product\r
-            application="eu.etaxonomy.taxeditor.prototype1.application"\r
-            name="EDIT Taxonomic Editor - Prototype 1">\r
-         <property\r
-               name="windowImages"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="aboutText"\r
-               value="Thanks for all the laughs!">\r
-         </property>\r
-         <property\r
-               name="aboutImage"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="appName"\r
-               value="EDIT Taxonomic Editor - Prototype 1">\r
-         </property>\r
-      </product>\r
-   </extension>\r
-   <extension\r
-         id="Prototype1"\r
-         point="org.eclipse.core.runtime.products">\r
-      <product\r
-            application="eu.etaxonomy.taxeditor.prototype1.application"\r
-            name="EDIT Taxonomic Editor - Prototype 1">\r
-         <property\r
-               name="windowImages"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="aboutText"\r
-               value="Thanks for all the laughs!">\r
-         </property>\r
-         <property\r
-               name="aboutImage"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="appName"\r
-               value="EDIT Taxonomic Editor - Prototype 1">\r
-         </property>\r
-      </product>\r
-   </extension>\r
-\r
-</plugin>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/com/swtdesigner/ResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/com/swtdesigner/ResourceManager.java
deleted file mode 100644 (file)
index b8480f6..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-package com.swtdesigner;
-import java.io.File;
-import java.io.InputStream;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Method;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.jface.resource.CompositeImageDescriptor;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.*;
-
-/**
- * Utility class for managing OS resources associated with SWT/JFace controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class ResourceManager extends SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image descriptors to images
-        */
-    private static HashMap<ImageDescriptor, Image> m_DescriptorImageMap = new HashMap<ImageDescriptor, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-    
-    /**
-     * Returns an image descriptor stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image descriptor
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(Class<?> clazz, String path) {
-        return ImageDescriptor.createFromFile(clazz, path);
-    }
-
-    /**
-     * Returns an image descriptor stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(String path) {
-        try {
-            return ImageDescriptor.createFromURL((new File(path)).toURI().toURL());
-        } catch (MalformedURLException e) {
-            return null;
-        }
-    }
-
-    /**
-     * Returns an image based on the specified image descriptor
-     * @param descriptor ImageDescriptor The image descriptor for the image
-     * @return Image The image based on the specified image descriptor
-     */
-    public static Image getImage(ImageDescriptor descriptor) {
-        if (descriptor == null)
-            return null;
-        Image image = m_DescriptorImageMap.get(descriptor);
-        if (image == null) {
-            image = descriptor.createImage();
-            m_DescriptorImageMap.put(descriptor, image);
-        }
-        return image;
-    }
-
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       final Rectangle bid = baseImage.getBounds();
-                       final Rectangle did = decorator.getBounds();
-            final Point baseImageSize = new Point(bid.width, bid.height); 
-            CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() { 
-                protected void drawCompositeImage(int width, int height) { 
-                    drawImage(baseImage.getImageData(), 0, 0); 
-                    if (corner == TOP_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, 0); 
-                    } else if (corner == TOP_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, 0); 
-                    } else if (corner == BOTTOM_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, bid.height - did.height - 1); 
-                    } else if (corner == BOTTOM_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, bid.height - did.height - 1); 
-                    } 
-                } 
-                protected Point getSize() { 
-                    return baseImageSize; 
-                } 
-            }; 
-            result = compositImageDesc.createImage(); 
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-       SWTResourceManager.disposeImages();
-       //
-        for (Iterator<Image> I = m_DescriptorImageMap.values().iterator(); I.hasNext();)
-             I.next().dispose();
-        m_DescriptorImageMap.clear();
-    }
-
-    //////////////////////////////
-    // Plugin images support
-    //////////////////////////////
-
-    /**
-     * Maps URL to images
-     */
-    private static HashMap<URL, Image> m_URLImageMap = new HashMap<URL, Image>();
-
-    /**
-     * Retuns an image based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getPluginImage(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                if (m_URLImageMap.containsKey(url))
-                    return m_URLImageMap.get(url);
-                InputStream is = url.openStream();
-                Image image;
-                try {
-                    image = getImage(is);
-                    m_URLImageMap.put(url, image);
-                } finally {
-                    is.close();
-                }
-                return image;
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an image descriptor based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getPluginImageDescriptor(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                return ImageDescriptor.createFromURL(url);
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an URL based on a plugin and file path
-     * @param plugin Object The plugin containing the file path
-     * @param name String The file path
-     * @return URL The URL representing the file at the specified path
-     * @throws Exception
-     */
-       @SuppressWarnings("unchecked") //$NON-NLS-1$
-       private static URL getPluginImageURL(Object plugin, String name) throws Exception {
-               // try to work with 'plugin' as with OSGI BundleContext
-               try {
-                       Class bundleClass = Class.forName("org.osgi.framework.Bundle"); //$NON-NLS-1$
-                       Class bundleContextClass = Class.forName("org.osgi.framework.BundleContext"); //$NON-NLS-1$
-                       if (bundleContextClass.isAssignableFrom(plugin.getClass())) {
-                               Method getBundleMethod = bundleContextClass.getMethod("getBundle", new Class[]{}); //$NON-NLS-1$
-                               Object bundle = getBundleMethod.invoke(plugin, new Object[]{});
-                               //
-                               Class ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Class platformClass = Class.forName("org.eclipse.core.runtime.Platform"); //$NON-NLS-1$
-                               Method findMethod = platformClass.getMethod("find", new Class[]{bundleClass, ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(null, new Object[]{bundle, path});
-                       }
-               } catch (Throwable e) {
-               // Ignore any exceptions
-               }
-               // else work with 'plugin' as with usual Eclipse plugin
-               {
-                       Class pluginClass = Class.forName("org.eclipse.core.runtime.Plugin"); //$NON-NLS-1$
-                       if (pluginClass.isAssignableFrom(plugin.getClass())) {
-                               //
-                               Class ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Method findMethod = pluginClass.getMethod("find", new Class[]{ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(plugin, new Object[]{path});
-                       }
-               }
-               return null;
-       }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/com/swtdesigner/SWTResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/com/swtdesigner/SWTResourceManager.java
deleted file mode 100644 (file)
index f0b8891..0000000
+++ /dev/null
@@ -1,455 +0,0 @@
-package com.swtdesigner;
-import java.io.BufferedInputStream;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.CoolBar;
-import org.eclipse.swt.widgets.CoolItem;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Utility class for managing OS resources associated with SWT controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Color support
-    //////////////////////////////
-
-    /**
-     * Maps RGB values to colors
-     */
-    private static HashMap<RGB, Color> m_ColorMap = new HashMap<RGB, Color>();
-
-    /**
-     * Returns the system color matching the specific ID
-     * @param systemColorID int The ID value for the color
-     * @return Color The system color matching the specific ID
-     */
-    public static Color getColor(int systemColorID) {
-        Display display = Display.getCurrent();
-        return display.getSystemColor(systemColorID);
-    }
-
-    /**
-     * Returns a color given its red, green and blue component values
-     * @param r int The red component of the color
-     * @param g int The green component of the color
-     * @param b int The blue component of the color
-     * @return Color The color matching the given red, green and blue componet values
-     */
-    public static Color getColor(int r, int g, int b) {
-        return getColor(new RGB(r, g, b));
-    }
-
-    /**
-     * Returns a color given its RGB value
-     * @param rgb RGB The RGB value of the color
-     * @return Color The color matching the RGB value
-     */
-    public static Color getColor(RGB rgb) {
-        Color color = m_ColorMap.get(rgb);
-        if (color == null) {
-            Display display = Display.getCurrent();
-            color = new Color(display, rgb);
-            m_ColorMap.put(rgb, color);
-        }
-        return color;
-    }
-
-    /**
-     * Dispose of all the cached colors
-     */
-    public static void disposeColors() {
-        for (Iterator<Color> iter = m_ColorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_ColorMap.clear();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image names to images
-        */
-    private static HashMap<String, Image> m_ClassImageMap = new HashMap<String, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-
-    /**
-     * Returns an image encoded by the specified input stream
-     * @param is InputStream The input stream encoding the image data
-     * @return Image The image encoded by the specified input stream
-     */
-    protected static Image getImage(InputStream is) {
-        Display display = Display.getCurrent();
-        ImageData data = new ImageData(is);
-        if (data.transparentPixel > 0)
-            return new Image(display, data, data.getTransparencyMask());
-        return new Image(display, data);
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String path) {
-       return getImage("default", path); //$NON-NLS-1$
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param section The section to which belongs specified image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String section, String path) {
-        String key = section + '|' + SWTResourceManager.class.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-            try {
-                FileInputStream fis = new FileInputStream(path);
-                image = getImage(fis);
-                m_ClassImageMap.put(key, image);
-                fis.close();
-            } catch (Exception e) {
-               image = getMissingImage();
-               m_ClassImageMap.put(key, image);
-            }
-        }
-        return image;
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(Class<?> clazz, String path) {
-        String key = clazz.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-               try {
-                       if (path.length() > 0 && path.charAt(0) == '/') {
-                               String newPath = path.substring(1, path.length());
-                               image = getImage(new BufferedInputStream(clazz.getClassLoader().getResourceAsStream(newPath)));
-                       } else {
-                               image = getImage(clazz.getResourceAsStream(path));
-                       }
-                       m_ClassImageMap.put(key, image);
-               } catch (Exception e) {
-                       image = getMissingImage();
-                       m_ClassImageMap.put(key, image);
-               }
-        }
-        return image;
-    }
-
-    private static final int MISSING_IMAGE_SIZE = 10;
-       private static Image getMissingImage() {
-               Image image = new Image(Display.getCurrent(), MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               //
-               GC gc = new GC(image);
-               gc.setBackground(getColor(SWT.COLOR_RED));
-               gc.fillRectangle(0, 0, MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               gc.dispose();
-               //
-               return image;
-       }
-
-    /**
-     * Style constant for placing decorator image in top left corner of base image.
-     */
-    public static final int TOP_LEFT = 1;
-    /**
-     * Style constant for placing decorator image in top right corner of base image.
-     */
-    public static final int TOP_RIGHT = 2;
-    /**
-     * Style constant for placing decorator image in bottom left corner of base image.
-     */
-    public static final int BOTTOM_LEFT = 3;
-    /**
-     * Style constant for placing decorator image in bottom right corner of base image.
-     */
-    public static final int BOTTOM_RIGHT = 4;
-    
-    /**
-     * Returns an image composed of a base image decorated by another image
-     * @param baseImage Image The base image that should be decorated
-     * @param decorator Image The image to decorate the base image
-     * @return Image The resulting decorated image
-     */
-    public static Image decorateImage(Image baseImage, Image decorator) {
-       return decorateImage(baseImage, decorator, BOTTOM_RIGHT);
-    }
-    
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       Rectangle bid = baseImage.getBounds();
-                       Rectangle did = decorator.getBounds();
-                       result = new Image(Display.getCurrent(), bid.width, bid.height);
-                       GC gc = new GC(result);
-                       gc.drawImage(baseImage, 0, 0);
-                       //
-                       if (corner == TOP_LEFT) {
-                               gc.drawImage(decorator, 0, 0);
-                       } else if (corner == TOP_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, 0);
-                       } else if (corner == BOTTOM_LEFT) {
-                               gc.drawImage(decorator, 0, bid.height - did.height - 1);
-                       } else if (corner == BOTTOM_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, bid.height - did.height - 1);
-                       }
-                       //
-                       gc.dispose();
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-        for (Iterator<Image> I = m_ClassImageMap.values().iterator(); I.hasNext();)
-             I.next().dispose();
-        m_ClassImageMap.clear();
-        //
-        for (Iterator<HashMap<Image, Image>> I = m_ImageToDecoratorMap.values().iterator(); I.hasNext();) {
-                       HashMap<Image, Image> decoratedMap = I.next();
-                       for (Iterator<Image> J = decoratedMap.values().iterator(); J.hasNext();) {
-                               Image image = J.next();
-                               image.dispose();
-                       }
-               }
-    }
-
-    /**
-        * Dispose cached images in specified section
-        * @param section the section do dispose
-        */
-       public static void disposeImages(String section) {
-               for (Iterator<String> I = m_ClassImageMap.keySet().iterator(); I.hasNext();) {
-                       String key = I.next();
-                       if (!key.startsWith(section + '|'))
-                               continue;
-                       Image image = m_ClassImageMap.get(key);
-                       image.dispose();
-                       I.remove();
-               }
-       }
-
-    //////////////////////////////
-    // Font support
-    //////////////////////////////
-
-    /**
-     * Maps font names to fonts
-     */
-    private static HashMap<String, Font> m_FontMap = new HashMap<String, Font>();
-
-    /**
-     * Maps fonts to their bold versions
-     */
-    private static HashMap<Font, Font> m_FontToBoldFontMap = new HashMap<Font, Font>();
-
-    /**
-     * Returns a font based on its name, height and style
-     * @param name String The name of the font
-     * @param height int The height of the font
-     * @param style int The style of the font
-     * @return Font The font matching the name, height and style
-     */
-    public static Font getFont(String name, int height, int style) {
-       return getFont(name, height, style, false, false);
-    }
-
-
-    /**
-     * Returns a font based on its name, height and style. 
-     * Windows-specific strikeout and underline flags are also supported.
-     * @param name String The name of the font
-     * @param size int The size of the font
-     * @param style int The style of the font
-     * @param strikeout boolean The strikeout flag (warning: Windows only)
-     * @param underline boolean The underline flag (warning: Windows only)
-     * @return Font The font matching the name, height, style, strikeout and underline
-     */
-       public static Font getFont(String name, int size, int style, boolean strikeout, boolean underline) {
-               String fontName = name + '|' + size + '|' + style + '|' + strikeout + '|' + underline;
-        Font font = m_FontMap.get(fontName);
-        if (font == null) {
-               FontData fontData = new FontData(name, size, style);
-               if (strikeout || underline) {
-                       try {
-                               Class<?> logFontClass = Class.forName("org.eclipse.swt.internal.win32.LOGFONT"); //$NON-NLS-1$
-                               Object logFont = FontData.class.getField("data").get(fontData); //$NON-NLS-1$
-                               if (logFont != null && logFontClass != null) {
-                                       if (strikeout) {
-                                                       logFontClass.getField("lfStrikeOut").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                                       if (underline) {
-                                                       logFontClass.getField("lfUnderline").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                               }
-                       } catch (Throwable e) {
-                               System.err.println(
-                                       "Unable to set underline or strikeout" + " (probably on a non-Windows platform). " + e); //$NON-NLS-1$ //$NON-NLS-2$
-                       }
-               }
-               font = new Font(Display.getCurrent(), fontData);
-               m_FontMap.put(fontName, font);
-        }
-               return font;
-       }
-    
-
-    /**
-     * Return a bold version of the give font
-     * @param baseFont Font The font for whoch a bold version is desired
-     * @return Font The bold version of the give font
-     */
-    public static Font getBoldFont(Font baseFont) {
-        Font font = m_FontToBoldFontMap.get(baseFont);
-        if (font == null) {
-            FontData fontDatas[] = baseFont.getFontData();
-            FontData data = fontDatas[0];
-            font = new Font(Display.getCurrent(), data.getName(), data.getHeight(), SWT.BOLD);
-            m_FontToBoldFontMap.put(baseFont, font);
-        }
-        return font;
-    }
-
-    /**
-     * Dispose all of the cached fonts
-     */
-    public static void disposeFonts() {
-        for (Iterator<Font> iter = m_FontMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_FontMap.clear();
-    }
-
-       //////////////////////////////
-    // CoolBar support
-    //////////////////////////////
-
-    /**
-     * Fix the layout of the specified CoolBar
-     * @param bar CoolBar The CoolBar that shgoud be fixed
-     */
-    public static void fixCoolBarSize(CoolBar bar) {
-        CoolItem[] items = bar.getItems();
-        // ensure that each item has control (at least empty one)
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            if (item.getControl() == null)
-                item.setControl(new Canvas(bar, SWT.NONE) {
-                @Override
-                               public Point computeSize(int wHint, int hHint, boolean changed) {
-                    return new Point(20, 20);
-                }
-            });
-        }
-        // compute size for each item
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            Control control = item.getControl();
-            control.pack();
-            Point size = control.getSize();
-            item.setSize(item.computeSize(size.x, size.y));
-        }
-    }
-
-    //////////////////////////////
-    // Cursor support
-    //////////////////////////////
-
-    /**
-     * Maps IDs to cursors
-     */
-    private static HashMap<Integer, Cursor> m_IdToCursorMap = new HashMap<Integer, Cursor>();
-    /**
-     * Returns the system cursor matching the specific ID
-     * @param id int The ID value for the cursor
-     * @return Cursor The system cursor matching the specific ID
-     */
-    public static Cursor getCursor(int id) {
-        Integer key = new Integer(id);
-        Cursor cursor = m_IdToCursorMap.get(key);
-        if (cursor == null) {
-            cursor = new Cursor(Display.getDefault(), id);
-            m_IdToCursorMap.put(key, cursor);
-        }
-        return cursor;
-    }
-    /**
-     * Dispose all of the cached cursors
-     */
-    public static void disposeCursors() {
-        for (Iterator<Cursor> iter = m_IdToCursorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_IdToCursorMap.clear();
-    }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Activator.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Activator.java
deleted file mode 100644 (file)
index 5c57bfd..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1;\r
-\r
-//import org.eclipse.core.databinding.DataBindingContext;\r
-//import org.eclipse.core.databinding.beans.BeansObservables;\r
-//import org.eclipse.core.databinding.observable.value.IObservableValue;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.ui.plugin.AbstractUIPlugin;\r
-import org.osgi.framework.BundleContext;\r
-\r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-import eu.etaxonomy.taxeditor.prototype1.model.ObjectList;\r
-\r
-/**\r
- * The activator class controls the plug-in life cycle\r
- */\r
-public class Activator extends AbstractUIPlugin {\r
-\r
-       // The plug-in ID\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.mvctest";\r
-\r
-       // The shared instance\r
-       private static Activator plugin;\r
-       \r
-       private CdmApplicationController cdmApp = new CdmApplicationController();\r
-       private ObjectList taxonList = new ObjectList();\r
-       private ObjectList recentNamesList = new ObjectList();\r
-               \r
-       /**\r
-        * The constructor\r
-        */\r
-       public Activator() {\r
-               taxonList.setObjectList(cdmApp.getNameService().getAllNames());\r
-       }\r
-\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)\r
-        */\r
-       public void start(BundleContext context) throws Exception {\r
-               super.start(context);\r
-               plugin = this;\r
-       }\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)\r
-        */\r
-       public void stop(BundleContext context) throws Exception {\r
-               plugin = null;\r
-               super.stop(context);\r
-       }\r
-\r
-       /**\r
-        * Returns the shared instance\r
-        *\r
-        * @return the shared instance\r
-        */\r
-       public static Activator getDefault() {\r
-               return plugin;\r
-       }\r
-\r
-       /**\r
-        * Returns an image descriptor for the image file at the given\r
-        * plug-in relative path\r
-        *\r
-        * @param path the path\r
-        * @return the image descriptor\r
-        */\r
-       public static ImageDescriptor getImageDescriptor(String path) {\r
-               return imageDescriptorFromPlugin(PLUGIN_ID, path);\r
-       }\r
-       \r
-       \r
-       public Image getImage(String key) {\r
-               return getImageRegistry().get(key);\r
-       }\r
-       \r
-       /**\r
-     * @return the objectList\r
-     */\r
-//    public CdmApplicationController getApplicationController() {\r
-//        return this.cdmApp;\r
-//    }        \r
-       \r
-       \r
-    /**\r
-     * @return the objectList\r
-     */\r
-    public ObjectList getTaxonList() {\r
-        return this.taxonList;\r
-    }\r
-\r
-       public ObjectList getRecentNamesList() {\r
-               return this.recentNamesList;\r
-       }       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Application.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Application.java
deleted file mode 100644 (file)
index 8b24049..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1;
-
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * This class controls all aspects of the application's execution
- */
-public class Application implements IApplication {
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.IApplicationContext)
-        */
-       public Object start(IApplicationContext context) {
-               Display display = PlatformUI.createDisplay();
-               try {
-                       int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
-                       if (returnCode == PlatformUI.RETURN_RESTART) {
-                               return IApplication.EXIT_RESTART;
-                       }
-                       return IApplication.EXIT_OK;
-               } finally {
-                       display.dispose();
-               }
-       }
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#stop()
-        */
-       public void stop() {
-               final IWorkbench workbench = PlatformUI.getWorkbench();
-               if (workbench == null)
-                       return;
-               final Display display = workbench.getDisplay();
-               display.syncExec(new Runnable() {
-                       public void run() {
-                               if (!display.isDisposed())
-                                       workbench.close();
-                       }
-               });
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.java
deleted file mode 100644 (file)
index 234b5cd..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-
-/**
- * An action bar advisor is responsible for creating, adding, and disposing of
- * the actions added to a workbench window. Each window will be populated with
- * new actions.
- */
-public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
-
-       // Actions - important to allocate these only in makeActions, and then use
-       // them
-       // in the fill methods. This ensures that the actions aren't recreated
-       // when fillActionBars is called with FILL_PROXY.
-       private IWorkbenchAction exitAction;
-
-       public ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {
-               super(configurer);
-       }
-
-       protected void makeActions(final IWorkbenchWindow window) {
-               // Creates the actions and registers them.
-               // Registering is needed to ensure that key bindings work.
-               // The corresponding commands keybindings are defined in the plugin.xml
-               // file.
-               // Registering also provides automatic disposal of the actions when
-               // the window is closed.
-
-               exitAction = ActionFactory.QUIT.create(window);
-               register(exitAction);
-       }
-
-       protected void fillMenuBar(IMenuManager menuBar) {
-               MenuManager fileMenu = new MenuManager("&File",
-                               IWorkbenchActionConstants.M_FILE);
-               menuBar.add(fileMenu);
-               fileMenu.add(exitAction);
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.java
deleted file mode 100644 (file)
index 3a8fd15..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1;
-
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchAdvisor;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
-
-       private static final String PERSPECTIVE_ID = "eu.etaxonomy.mvctest.perspective";
-
-       public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(
-                       IWorkbenchWindowConfigurer configurer) {
-               return new ApplicationWorkbenchWindowAdvisor(configurer);
-       }
-
-       public String getInitialWindowPerspectiveId() {
-               return PERSPECTIVE_ID;
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.java
deleted file mode 100644 (file)
index ebcb421..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1;
-
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-//import eu.etaxonomy.taxeditor.prototype1.controller.PopulateNameListViewAction;
-
-public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor {
-
-       public ApplicationWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) {
-               super(configurer);
-       }
-
-       public ActionBarAdvisor createActionBarAdvisor(
-                       IActionBarConfigurer configurer) {
-               return new ApplicationActionBarAdvisor(configurer);
-       }
-
-       public void preWindowOpen() {
-               IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
-               configurer.setInitialSize(new Point(800, 600));
-               configurer.setShowCoolBar(false);
-               configurer.setShowStatusLine(false);
-               configurer.setTitle("EDIT Taxonomic Editor");
-       }
-       
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Perspective.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/Perspective.java
deleted file mode 100644 (file)
index 103f56a..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1;
-
-import org.eclipse.ui.IFolderLayout;
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPerspectiveFactory;
-
-import eu.etaxonomy.taxeditor.prototype1.view.NameListView;
-
-public class Perspective implements IPerspectiveFactory {
-
-       public static final String ID = "eu.etaxonomy.mvctest.perspective";
-       
-       public void createInitialLayout(IPageLayout layout) {
-               String editorArea = layout.getEditorArea();
-               layout.addStandaloneView(NameListView.ID, false, IPageLayout.LEFT, 0.25f, editorArea);
-               // navigatorFolder.addView(LastNameView.ID);
-               layout.getViewLayout(NameListView.ID).setCloseable(false);
-               // navigatorFolder.addView(LastNameView.ID);
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.java
deleted file mode 100644 (file)
index 306e556..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-\r
-public class CreateNameAction extends Action {\r
-\r
-       private TaxonName tn;\r
-       \r
-       public CreateNameAction(String genus, String spEpithet) {\r
-               this.tn = new TaxonName();\r
-               this.tn.setGenus(genus);\r
-               this.tn.setSpecificEpithet(spEpithet);\r
-               this.tn.setFullName(genus + " " + spEpithet);\r
-               this.tn.setName(genus + " " + spEpithet);\r
-       }\r
-       \r
-       public void run() {\r
-               Activator.getDefault().getTaxonList().add(tn);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/DeleteNameAction.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/DeleteNameAction.java
deleted file mode 100644 (file)
index 55f4402..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-\r
-public class DeleteNameAction extends Action {\r
-\r
-       private TaxonName tn;\r
-       \r
-       public DeleteNameAction(TaxonName tn) {         \r
-               this.tn = tn;\r
-       }\r
-       \r
-       public void run() {\r
-               Activator.getDefault().getTaxonList().remove(tn);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.java
deleted file mode 100644 (file)
index c7b79ee..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\r
-import eu.etaxonomy.taxeditor.prototype1.model.NameEditorInput;\r
-import eu.etaxonomy.taxeditor.prototype1.view.NameEditorView;\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-\r
-public class OpenNameEditorAction extends Action {\r
-\r
-       private TaxonName taxonname;\r
-       \r
-       public OpenNameEditorAction(TaxonName taxonname) {\r
-               this.taxonname = taxonname;\r
-       }\r
-       \r
-       public void run() {\r
-               \r
-               Activator.getDefault().getRecentNamesList().add(this.taxonname);\r
-               \r
-               IEditorInput input = new NameEditorInput(taxonname);\r
-        try {\r
-               Activator.getDefault().getWorkbench().getActiveWorkbenchWindow().\r
-                       getActivePage().openEditor(input, NameEditorView.ID);\r
-               } catch (PartInitException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/SaveNameAction.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/controller/SaveNameAction.java
deleted file mode 100644 (file)
index c53ba41..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-\r
-public class SaveNameAction extends Action {\r
-       TaxonName taxonname;\r
-       \r
-       public SaveNameAction(TaxonName taxonname) {\r
-               taxonname.setName(taxonname.getGenus() + " " + taxonname.getSpecificEpithet());\r
-               this.taxonname = taxonname;\r
-       }\r
-       \r
-       public void run() {\r
-//             Activator.getDefault().getApplicationController().getNameService().\r
-//                     saveTaxonName(taxonname);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/AbstractModelObject.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/AbstractModelObject.java
deleted file mode 100644 (file)
index 8c78091..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.model;\r
-\r
-import java.beans.PropertyChangeListener;\r
-import java.beans.PropertyChangeSupport;\r
-\r
-public abstract class AbstractModelObject {\r
-       \r
-       protected final PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this);\r
-       public void addPropertyChangeListener(PropertyChangeListener listener) {\r
-               propertyChangeSupport.addPropertyChangeListener(listener);\r
-       }\r
-\r
-       public void addPropertyChangeListener(String propertyName,\r
-                       PropertyChangeListener listener) {\r
-               propertyChangeSupport.addPropertyChangeListener(propertyName, listener);\r
-       }\r
-\r
-       public void removePropertyChangeListener(PropertyChangeListener listener) {\r
-               propertyChangeSupport.removePropertyChangeListener(listener);\r
-       }\r
-\r
-       public void removePropertyChangeListener(String propertyName,\r
-                       PropertyChangeListener listener) {\r
-               propertyChangeSupport.removePropertyChangeListener(propertyName,\r
-                               listener);\r
-       }\r
-\r
-       protected void firePropertyChange(String propertyName, Object oldValue,\r
-                       Object newValue) {\r
-               propertyChangeSupport.firePropertyChange(propertyName, oldValue,\r
-                               newValue);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/NameEditorInput.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/NameEditorInput.java
deleted file mode 100644 (file)
index 337eddf..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.model;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IPersistableElement;\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-\r
-public class NameEditorInput implements IEditorInput {\r
-\r
-       private TaxonName taxonname;\r
-       \r
-       public NameEditorInput (TaxonName taxonname) {\r
-               this.taxonname = taxonname;\r
-       }\r
-       \r
-       public boolean exists() {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       public ImageDescriptor getImageDescriptor() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getName() {\r
-               return taxonname.getName();\r
-       }\r
-\r
-       public IPersistableElement getPersistable() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getToolTipText() {\r
-               return taxonname.getName();\r
-       }\r
-\r
-       public Object getAdapter(Class adapter) {\r
-\r
-               if (adapter == TaxonName.class) {\r
-                       return this.taxonname;\r
-               }\r
-               \r
-               return null;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.java
deleted file mode 100644 (file)
index 6c00740..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.model;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-\r
-public class ObjectList extends AbstractModelObject {\r
-    \r
-    private List/* <TaxonName> */objectList = new ArrayList();\r
-       \r
-       public void add(TaxonName tn) {\r
-       this.objectList.add(tn);\r
-       firePropertyChange("objectList", null, null); //$NON-NLS-1$\r
-       }\r
-    \r
-    public void remove(TaxonName tn) {\r
-        this.objectList.remove(tn);\r
-        firePropertyChange("objectList", null, null); //$NON-NLS-1$\r
-    }\r
-\r
-    public Object[] toArray() {\r
-        return (Object[]) this.objectList.toArray(new Object[this.objectList.size()]);\r
-    }\r
-\r
-       public List getObjectList() {\r
-               return objectList;\r
-       }\r
-\r
-       public void setObjectList(List objectList) {\r
-               this.objectList = objectList;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/TaxonName.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/model/TaxonName.java
deleted file mode 100644 (file)
index 3ca8ea7..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.model;\r
-\r
-public class TaxonName extends AbstractModelObject {\r
-       private String genus;\r
-       private String speciesEpithet;\r
-       private String authorship;\r
-       private String name;\r
-       public TaxonName (String genus,\r
-                               String speciesEpithet,\r
-                               String authorship) {\r
-               this.genus = genus;\r
-               this.speciesEpithet = speciesEpithet;\r
-               this.authorship = authorship;\r
-               setName();\r
-       }\r
-       public String getName() {\r
-               return name;\r
-       }\r
-       public void setName(String newName) {\r
-               String oldName = this.name;\r
-               this.name = newName;\r
-               firePropertyChange("name", oldName, newName);\r
-       }\r
-       public void setName() {\r
-               setName(this.genus + " " + this.speciesEpithet);\r
-       }\r
-       \r
-       public String getGenus() {\r
-               return genus;\r
-       }\r
-       public void setGenus(String genus) {\r
-               this.genus = genus;\r
-       }\r
-       public String getSpeciesEpithet() {\r
-               return speciesEpithet;\r
-       }\r
-       public void setSpeciesEpithet(String speciesEpithet) {\r
-               this.speciesEpithet = speciesEpithet;\r
-       }\r
-       public String getAuthorship() {\r
-               return authorship;\r
-       }\r
-       public void setAuthorship(String authorship) {\r
-               this.authorship = authorship;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.java
deleted file mode 100644 (file)
index 8077547..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.view;
-
-import org.eclipse.jface.action.IToolBarManager;
-import org.eclipse.jface.viewers.IStructuredContentProvider;
-import org.eclipse.jface.viewers.ITableLabelProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.SelectionAdapter;
-import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
-import org.eclipse.swt.widgets.Button;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.ISharedImages;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.part.ViewPart;
-
-import eu.etaxonomy.taxeditor.prototype1.controller.CreateNameAction;
-
-public class CreateNameView extends ViewPart {
-       private Text txtSpEpithet;
-       private Text txtGenus;
-       public static final String ID = "eu.etaxonomy.mvctest.view";
-
-       /**
-        * This is a callback that will allow us to create the viewer and initialize
-        * it.
-        */
-       public void createPartControl(Composite parent) {
-               final GridLayout gridLayout = new GridLayout();
-               gridLayout.numColumns = 2;
-               parent.setLayout(gridLayout);
-
-               final Label genusLabel = new Label(parent, SWT.NONE);
-               genusLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));
-               genusLabel.setText("Genus:");
-
-               txtGenus = new Text(parent, SWT.BORDER);
-               final GridData gd_txtGenus = new GridData(SWT.FILL, SWT.CENTER, true, false);
-               txtGenus.setLayoutData(gd_txtGenus);
-
-               final Label epithetLabel = new Label(parent, SWT.NONE);
-               epithetLabel.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));
-               epithetLabel.setText("Epithet:");
-
-               txtSpEpithet = new Text(parent, SWT.BORDER);
-               final GridData gd_txtSpEpithet = new GridData(SWT.FILL, SWT.CENTER, true, false);
-               txtSpEpithet.setLayoutData(gd_txtSpEpithet);
-               new Label(parent, SWT.NONE);
-
-               final Button saveNameButton = new Button(parent, SWT.NONE);
-               
-               saveNameButton.addListener(SWT.Selection, new Listener() {
-            public void handleEvent(Event event) {
-                new CreateNameAction(CreateNameView.this.txtGenus.getText(),
-                               CreateNameView.this.txtSpEpithet.getText()).run();
-            }
-        });            
-               
-               final GridData gd_saveNameButton = new GridData(SWT.RIGHT, SWT.CENTER, false, false);
-               saveNameButton.setLayoutData(gd_saveNameButton);
-               saveNameButton.setText("Save Name");
-               initializeToolBar();
-       }
-
-       /**
-        * Passing the focus request to the viewer's control.
-        */
-       public void setFocus() {
-       }
-       private void initializeToolBar() {
-               IToolBarManager toolBarManager = getViewSite().getActionBars().getToolBarManager();
-       }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/EditNameProperties.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/EditNameProperties.java
deleted file mode 100644 (file)
index 42f6645..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.view;\r
-\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.dialogs.PropertyPage;\r
-\r
-public class EditNameProperties extends PropertyPage {\r
-\r
-       /**\r
-        * Create the property page\r
-        */\r
-       public EditNameProperties() {\r
-               super();\r
-       }\r
-\r
-       /**\r
-        * Create contents of the property page\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public Control createContents(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               //\r
-               return container;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/GenericObservableMapCellLabelProvider.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/GenericObservableMapCellLabelProvider.java
deleted file mode 100644 (file)
index e353c0f..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.view;\r
-\r
-import java.text.MessageFormat;\r
-import java.util.Set;\r
-\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.map.IMapChangeListener;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.core.databinding.observable.map.MapChangeEvent;\r
-import org.eclipse.core.databinding.observable.value.IObservableValue;\r
-import org.eclipse.jface.databinding.swt.SWTObservables;\r
-import org.eclipse.jface.viewers.ColumnLabelProvider;\r
-import org.eclipse.jface.viewers.LabelProviderChangedEvent;\r
-import org.eclipse.jface.viewers.ViewerCell;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.Item;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-\r
-import eu.etaxonomy.taxeditor.prototype1.view.NameEditorView.Node;\r
-\r
-/**\r
- * @author tomson <tom.schindl@bestsolution.at>\r
- * @version $Revision: $ \r
- * @since 1.0\r
- *\r
- */\r
-public class GenericObservableMapCellLabelProvider extends ColumnLabelProvider {\r
-       /**\r
-        * Template text\r
-        */\r
-       private String templateText;\r
-\r
-       /**\r
-        * The attribute maps\r
-        */\r
-       private final IObservableMap[] attributeMaps;\r
-\r
-       /**\r
-        * Change listener to track changes\r
-        */\r
-       private IMapChangeListener mapChangeListener = new IMapChangeListener() {\r
-               public void handleMapChange(MapChangeEvent event) {\r
-                       Set affectedElements = event.diff.getChangedKeys();\r
-                       LabelProviderChangedEvent newEvent = new LabelProviderChangedEvent(\r
-                                       GenericObservableMapCellLabelProvider.this, affectedElements.toArray());\r
-                       fireLabelProviderChanged(newEvent);\r
-               }\r
-       };\r
-\r
-       private DataBindingContext bc;\r
-\r
-       /**\r
-        * @param attributeMap\r
-        * @param templateText \r
-        */\r
-       public GenericObservableMapCellLabelProvider(IObservableMap attributeMap,\r
-                       String templateText, DataBindingContext bc) {\r
-               this(new IObservableMap[] { attributeMap },templateText, bc);\r
-       }\r
-\r
-       /**\r
-        * @param attributeMaps\r
-        * @param templateText \r
-        */\r
-       public GenericObservableMapCellLabelProvider(IObservableMap[] attributeMaps,String templateText, DataBindingContext bc) {\r
-               this.attributeMaps = attributeMaps;\r
-               for (int i = 0; i < attributeMaps.length; i++) {\r
-                       attributeMaps[i].addMapChangeListener(mapChangeListener);\r
-               }\r
-               this.templateText = templateText;\r
-               this.bc = bc;\r
-       }\r
-\r
-       public void dispose() {\r
-               for (int i = 0; i < attributeMaps.length; i++) {\r
-                       attributeMaps[i].removeMapChangeListener(mapChangeListener);\r
-               }\r
-               super.dispose();\r
-       }\r
-\r
-       public Image getImage(Object element) {\r
-               return null;\r
-       }\r
-\r
-       public String getText(Object element) {\r
-               return ((Node) element).getValue();             \r
-       }\r
-       \r
-       public void update(ViewerCell cell) {\r
-                               \r
-               Object element = cell.getElement();\r
\r
-               cell.setText(getText(element));\r
-               Image image = getImage(element);\r
-               cell.setImage(image);\r
-               cell.setBackground(getBackground(element));\r
-               cell.setForeground(getForeground(element));\r
-               cell.setFont(getFont(element));\r
-\r
-               // bind model element to its corresponding cell \r
-               IObservableValue observeNodeValue = BeansObservables.observeValue((Node) element, "value");\r
-               IObservableValue observeCellValue = BeansObservables.observeValue(cell, "text");\r
-               bc.bindValue(observeNodeValue, observeCellValue, null, null);\r
-               \r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.java
deleted file mode 100644 (file)
index dab876c..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\r
-\r
-public class LastNameView extends ViewPart implements PropertyChangeListener {\r
-\r
-       public static final String ID = "eu.etaxonomy.mvctest.view.LastNameView"; //$NON-NLS-1$\r
-       private Label lblName;\r
-       /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               container.setLayout(gridLayout);\r
-\r
-               final Label theLastNameLabel = new Label(container, SWT.NONE);\r
-               theLastNameLabel.setText("The last name created was: ");\r
-\r
-               lblName = new Label(container, SWT.NONE);\r
-               lblName.setText("none yet");\r
-               lblName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));\r
-\r
-               \r
-               new Label(container, SWT.NONE);\r
-               //\r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();\r
-\r
-               Activator.getDefault().getTaxonList().addPropertyChangeListener(this);\r
-               \r
-       }\r
-\r
-       /**\r
-        * Create the actions\r
-        */\r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       public void propertyChange(PropertyChangeEvent evt) {\r
-               if (evt.getPropertyName().equalsIgnoreCase("ITEM_ADD")){\r
-                       TaxonName tn = (TaxonName)evt.getNewValue();\r
-                       lblName.setText( tn.getName());\r
-               }\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MyCompletionProcessor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MyCompletionProcessor.java
deleted file mode 100644 (file)
index 4448d5b..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.view;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.jface.text.ITextViewer;\r
-import org.eclipse.jface.text.contentassist.CompletionProposal;\r
-import org.eclipse.jface.text.contentassist.ContextInformation;\r
-import org.eclipse.jface.text.contentassist.ICompletionProposal;\r
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;\r
-import org.eclipse.jface.text.contentassist.IContextInformation;\r
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Image;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\r
-\r
-public class MyCompletionProcessor implements IContentAssistProcessor {\r
-\r
-       protected final static String[] myProposals = { "Unknown synonymy", \r
-                                                       "Create homotypic synonym",\r
-                                                       "Create heterotypic synoynm",\r
-                                                       "Create basionym",\r
-                                                       "Create replaced synonym",\r
-                                                       "Create homonym",\r
-                                                       "Create orthographic variant",\r
-                                                       "Create misapplied name",\r
-                                                       "Create concept relation"};\r
-       protected final static String[] myIcons = { "icons/unknown.gif", \r
-                                                       "icons/homosyn.gif", \r
-                                                       "icons/heterosyn.gif",\r
-                                                       "icons/basionym.gif",\r
-                                                       "icons/repsyn.gif",\r
-                                                       "icons/homonym.gif",\r
-                                                       "icons/orthovariant.gif",\r
-                                                       "icons/misapplied.gif",\r
-                                                       "icons/concept.gif"};\r
-       protected final static String[] myContexts = { "To create a homotypic synonym, there are many things to consider. I could go on all day.",\r
-                                                       "Create homotypic synonym",\r
-                                                       "Create heterotypic synoynm",\r
-                                                       "Create basionym",\r
-                                                       "Create replaced synonym",\r
-                                                       "Create homonym",\r
-                                                       "Create orthographic variant",\r
-                                                       "Create misapplied name",\r
-                                                       "Create concept relation"};\r
-       \r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public ICompletionProposal[] computeCompletionProposals(\r
-               ITextViewer viewer, int documentOffset) {\r
-//             Image img = ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown.gif");\r
-               ICompletionProposal[] result =\r
-                       new ICompletionProposal[myProposals.length];\r
-               for (int i = 0; i < myProposals.length; i++) {\r
-                     IContextInformation contextInfo = \r
-                                new ContextInformation(null, myProposals[i]+" Style");\r
-//                     result[i] = new CompletionProposal(myProposals[i],documentOffset, 0, \r
-//                                     myProposals[i].length(), ResourceManager.getPluginImage(Activator.getDefault(), myIcons[i]), \r
-//                                     myProposals[i], contextInfo, myContexts[i]);\r
-                       result[i] = new CompletionProposal("party",documentOffset, 0, \r
-                                       myProposals[i].length(), ResourceManager.getPluginImage(Activator.getDefault(), myIcons[i]), \r
-                                       myProposals[i], contextInfo, myContexts[i]);\r
-                       \r
-               }\r
-               return result;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public char[] getCompletionProposalAutoActivationCharacters() {\r
-               return new char[] { '=', (char) SWT.CR };\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public char[] getContextInformationAutoActivationCharacters() {\r
-               return null;\r
-       }\r
-\r
-       // For Context information \r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public IContextInformationValidator getContextInformationValidator() {\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public IContextInformation[] computeContextInformation(\r
-               ITextViewer viewer,\r
-               int documentOffset) {\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public String getErrorMessage() {\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MyRuleScanner.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MyRuleScanner.java
deleted file mode 100644 (file)
index 8e4d4dc..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.view;\r
-\r
-import org.eclipse.jface.text.TextAttribute;\r
-import org.eclipse.jface.text.rules.EndOfLineRule;\r
-import org.eclipse.jface.text.rules.IRule;\r
-import org.eclipse.jface.text.rules.IToken;\r
-import org.eclipse.jface.text.rules.RuleBasedScanner;\r
-import org.eclipse.jface.text.rules.SingleLineRule;\r
-import org.eclipse.jface.text.rules.Token;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-public class MyRuleScanner extends RuleBasedScanner {\r
-       private static Color TAG_COLOR= new Color(Display.getCurrent(), new RGB(200, 0, 0));\r
-       private static Color COMMENT_COLOR= new Color(Display.getCurrent(), new RGB(0, 200, 0));\r
-\r
-       public MyRuleScanner() {\r
-               IToken tagToken =\r
-                       new Token(\r
-                               new TextAttribute(TAG_COLOR));\r
-\r
-               IToken commentToken= new Token(new TextAttribute(COMMENT_COLOR));\r
-\r
-               IRule[] rules = new IRule[2];\r
-               //Add rule for processing instructions\r
-               rules[0] = new SingleLineRule("<myTag", "myTag>", tagToken);\r
-               rules[1] = (new EndOfLineRule("//", commentToken)); //$NON-NLS-1$\r
-               setRules(rules);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MySourceViewerConfig.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/MySourceViewerConfig.java
deleted file mode 100644 (file)
index 7bc5678..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.view;\r
-\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.TextAttribute;\r
-import org.eclipse.jface.text.contentassist.ContentAssistant;\r
-import org.eclipse.jface.text.contentassist.IContentAssistant;\r
-import org.eclipse.jface.text.presentation.IPresentationReconciler;\r
-import org.eclipse.jface.text.presentation.PresentationReconciler;\r
-import org.eclipse.jface.text.rules.DefaultDamagerRepairer;\r
-import org.eclipse.jface.text.rules.Token;\r
-import org.eclipse.jface.text.source.ISourceViewer;\r
-import org.eclipse.jface.text.source.SourceViewerConfiguration;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-public class MySourceViewerConfig extends SourceViewerConfiguration {\r
-       private MyRuleScanner scanner;\r
-       private static Color DEFAULT_TAG_COLOR =\r
-               new Color(Display.getCurrent(), new RGB(0, 0, 200));\r
-\r
-       public MySourceViewerConfig() {\r
-\r
-       }\r
-\r
-       protected MyRuleScanner getTagScanner() {\r
-               if (scanner == null) {\r
-                       scanner = new MyRuleScanner();\r
-                       scanner.setDefaultReturnToken(\r
-                               new Token(new TextAttribute(DEFAULT_TAG_COLOR)));\r
-               }\r
-               return scanner;\r
-       }\r
-\r
-       /**\r
-        * Define reconciler for MyEditor\r
-        */\r
-       public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer) {\r
-               PresentationReconciler reconciler = new PresentationReconciler();\r
-               DefaultDamagerRepairer dr = new DefaultDamagerRepairer(getTagScanner());\r
-               reconciler.setDamager(dr, IDocument.DEFAULT_CONTENT_TYPE);\r
-               reconciler.setRepairer(dr, IDocument.DEFAULT_CONTENT_TYPE);\r
-               return reconciler;\r
-       }\r
-       \r
-       public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {\r
-\r
-               ContentAssistant assistant = new ContentAssistant();\r
-               assistant.setContentAssistProcessor(\r
-                       new MyCompletionProcessor(),\r
-                       IDocument.DEFAULT_CONTENT_TYPE);\r
-               assistant.enableAutoActivation(true);\r
-               assistant.setAutoActivationDelay(50);\r
-               assistant.setProposalPopupOrientation(\r
-                       IContentAssistant.PROPOSAL_OVERLAY);\r
-               assistant.setStatusLineVisible(true);\r
-               assistant.setStatusMessage("Create a nomenclatural or taxonomic relationship");\r
-               assistant.setProposalSelectorBackground(\r
-                               new Color(Display.getCurrent(), new RGB(255, 255, 255)));\r
-               assistant.setInformationControlCreator(\r
-                               getInformationControlCreator(sourceViewer)); // this is what pops up the yellow context box\r
-               return assistant;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/NameEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/NameEditorView.java
deleted file mode 100644 (file)
index 2b7e3a9..0000000
+++ /dev/null
@@ -1,578 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.view;\r
-\r
-import java.beans.PropertyChangeListener;\r
-import java.beans.PropertyChangeSupport;\r
-import java.util.Vector;\r
-\r
-import org.eclipse.core.databinding.Binding;\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.core.databinding.UpdateValueStrategy;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.core.databinding.observable.value.IObservableValue;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.databinding.swt.SWTObservables;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.jface.viewers.ColumnLabelProvider;\r
-import org.eclipse.jface.viewers.EditingSupport;\r
-import org.eclipse.jface.viewers.ITreeContentProvider;\r
-import org.eclipse.jface.viewers.TextCellEditor;\r
-import org.eclipse.jface.viewers.TreeViewer;\r
-import org.eclipse.jface.viewers.TreeViewerColumn;\r
-import org.eclipse.jface.viewers.Viewer;\r
-import org.eclipse.jface.viewers.ViewerCell;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.prototype1.controller.CreateNameAction;\r
-import eu.etaxonomy.taxeditor.prototype1.controller.DeleteNameAction;\r
-import eu.etaxonomy.taxeditor.prototype1.controller.SaveNameAction;\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-\r
-public class NameEditorView extends EditorPart {\r
-\r
-       private Text se;\r
-       private Text g;\r
-       private Text txtGenus_1;\r
-       private TaxonName taxonname;\r
-       \r
-       private IObservableValue observeTxtGenus;\r
-       private IObservableValue observeTxtGenus_1;\r
-\r
-       private Text txtGenus;\r
-       private Text txtSpEpi;\r
-       private Text txtAuthor;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype1.view.NameEditorView"; //$NON-NLS-1$\r
-\r
-       private Vector nodes = new Vector();\r
-       private DataBindingContext bindingContext;\r
-       private Binding binding;\r
-       \r
-       private Node genusNode;\r
-       private IObservableValue observeGenusNode;\r
-       private TreeViewer treeViewer;\r
-       private TextCellEditor genusCellEditor;\r
-       private GenericObservableMapCellLabelProvider cellLabelProvider;\r
-       \r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-\r
-               bindingContext = new DataBindingContext();\r
-               \r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 3;\r
-               container.setLayout(gridLayout);\r
-\r
-               final Label liveUpdateLabel = new Label(container, SWT.NONE);\r
-               liveUpdateLabel.setFont(SWTResourceManager.getFont("", 10, SWT.BOLD));\r
-               final GridData gd_liveUpdateLabel = new GridData();\r
-               liveUpdateLabel.setLayoutData(gd_liveUpdateLabel);\r
-               new Label(container, SWT.NONE);\r
-               new Label(container, SWT.NONE);\r
-\r
-               final Label lblGenus = new Label(container, SWT.NONE);\r
-               lblGenus.setLayoutData(new GridData());\r
-               lblGenus.setText("Genus:");\r
-               new Label(container, SWT.NONE);\r
-\r
-               txtGenus = new Text(container, SWT.BORDER);\r
-               final GridData gd_txtGenus = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               txtGenus.setLayoutData(gd_txtGenus);\r
-\r
-               final Label lblSpEpi = new Label(container, SWT.NONE);\r
-               lblSpEpi.setLayoutData(new GridData());\r
-               lblSpEpi.setText("Sp. Epithet:");\r
-               new Label(container, SWT.NONE);\r
-\r
-               txtSpEpi = new Text(container, SWT.BORDER);\r
-               final GridData gd_txtSpEpi = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               txtSpEpi.setLayoutData(gd_txtSpEpi);\r
-\r
-               final Label lblAuthor = new Label(container, SWT.NONE);\r
-               lblAuthor.setLayoutData(new GridData());\r
-               lblAuthor.setText("Authorship:");\r
-               new Label(container, SWT.NONE);\r
-\r
-               txtAuthor = new Text(container, SWT.BORDER);\r
-               final GridData gd_txtAuthor = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               txtAuthor.setLayoutData(gd_txtAuthor);\r
-\r
-               final Composite container_1 = new Composite(container, SWT.NONE);\r
-               final GridData gd_container_1 = new GridData(SWT.FILL, SWT.CENTER, true, false, 4, 1);\r
-               gd_container_1.widthHint = 389;\r
-               container_1.setLayoutData(gd_container_1);\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               container_1.setLayout(gridLayout_1);\r
-\r
-               final Label liveUpdateLabel_1 = new Label(container_1, SWT.NONE);\r
-               final GridData gd_liveUpdateLabel_1 = new GridData();\r
-               liveUpdateLabel_1.setLayoutData(gd_liveUpdateLabel_1);\r
-               liveUpdateLabel_1.setFont(SWTResourceManager.getFont("", 10, SWT.BOLD));\r
-\r
-               // create tree\r
-               createTree(container_1);\r
-               \r
-               final Label lblGenus_1 = new Label(container_1, SWT.NONE);\r
-               lblGenus_1.setLayoutData(new GridData());\r
-               lblGenus_1.setText("Genus:");\r
-\r
-               txtGenus_1 = new Text(container_1, SWT.BORDER);\r
-               final GridData gd_txtGenus_1 = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               txtGenus_1.setLayoutData(gd_txtGenus_1);\r
-\r
-               final Button btnSaveName_1 = new Button(container_1, SWT.NONE);\r
-               btnSaveName_1.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               \r
-                               taxonname.setGenus(txtGenus.getText());\r
-                               taxonname.setSpecificEpithet(txtSpEpi.getText());\r
-                               \r
-                               new SaveNameAction(taxonname).run();\r
-                       }                       \r
-               });\r
-               final GridData gd_btnSaveName_1 = new GridData();\r
-               btnSaveName_1.setLayoutData(gd_btnSaveName_1);\r
-               btnSaveName_1.setText("Save Name");\r
-\r
-               final Button deleteNameButton = new Button(container_1, SWT.NONE);\r
-               deleteNameButton.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               new DeleteNameAction(taxonname).run();\r
-                               txtGenus.setEditable(false);\r
-                               txtSpEpi.setEditable(false);\r
-                               txtAuthor.setEditable(false);\r
-                               txtGenus_1.setEditable(false);\r
-                               btnSaveName_1.setEnabled(false);\r
-                               deleteNameButton.setEnabled(false);\r
-                       }\r
-               });\r
-               deleteNameButton.setText("Delete Name");\r
-\r
-               final Group newTaxonAreaGroup = new Group(container, SWT.NONE);\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.numColumns = 2;\r
-               newTaxonAreaGroup.setLayout(gridLayout_2);\r
-               newTaxonAreaGroup.setText("New taxon area");\r
-               final GridData gd_newTaxonAreaGroup = new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1);\r
-               newTaxonAreaGroup.setLayoutData(gd_newTaxonAreaGroup);\r
-\r
-               final Label gLabel = new Label(newTaxonAreaGroup, SWT.NONE);\r
-               gLabel.setLayoutData(new GridData());\r
-               gLabel.setText("G");\r
-\r
-               g = new Text(newTaxonAreaGroup, SWT.BORDER);\r
-               g.setText("Test");\r
-               g.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
-               final Label seLabel = new Label(newTaxonAreaGroup, SWT.NONE);\r
-               seLabel.setText("SE");\r
-\r
-               se = new Text(newTaxonAreaGroup, SWT.BORDER);\r
-               se.setText("me");\r
-               se.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               new Label(newTaxonAreaGroup, SWT.NONE);\r
-\r
-               final Button createNewNameButton = new Button(newTaxonAreaGroup, SWT.NONE);\r
-               createNewNameButton.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               new CreateNameAction(g.getText(),se.getText()).run();\r
-                       }                       \r
-               });\r
-               createNewNameButton.setText("Create New Name");\r
-\r
-               final Group group = new Group(container, SWT.NONE);\r
-               group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1));\r
-               group.setLayout(new GridLayout());\r
-\r
-               \r
-               \r
-//             txtPlay = new Text(container, SWT.BORDER);\r
-//             txtPlay.setCapture(true);\r
-//             final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);\r
-//             gd_txtPlay.heightHint = 96;\r
-//             txtPlay.setLayoutData(gd_txtPlay);\r
-////           txtPlay.addVerifyListener(new VerifyListener() {\r
-////                   @Override\r
-////                   public void verifyText(VerifyEvent e) {\r
-////                   e.doit = Character.isDigit(e.character);\r
-////               }           \r
-////           });\r
-//             txtPlay.addSelectionListener(new SelectionListener() {\r
-//\r
-//                     @Override\r
-//                     public void widgetDefaultSelected(SelectionEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//\r
-//                     @Override\r
-//                     public void widgetSelected(SelectionEvent e) {\r
-//                             System.out.println(e.toString());\r
-//                     }\r
-//                     \r
-//                     \r
-//             });\r
-//             \r
-//             \r
-//             txtPlay.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             System.out.println(e.character);\r
-//                             if (e.character == '=') {\r
-//                                     Shell shell = Activator.getDefault().getWorkbench().\r
-//                                             getActiveWorkbenchWindow().getShell();\r
-//                                     PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-////                                   Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-//                                     // Add the items to the list\r
-//                                     String[] OPTIONS = { "Create homo. syn.",\r
-//                                                     "Create hetero. syn.",\r
-//                                                     "Create mis. name",\r
-//                                                     "Create homonym"};\r
-//\r
-//                                     list.setItems(OPTIONS);\r
-//                                     \r
-//                                     // Open the list and get the selected item\r
-//                                     String selected = list.open(txtPlay.getBounds());\r
-//                                     \r
-//                                     // Print the item to the console\r
-//                                     System.out.println(selected);                                   \r
-//                             }\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//             });\r
-               \r
-               populateForm();         \r
-               initDataBindings();\r
-       }\r
-\r
-       private void createTree(Composite composite) {\r
-\r
-               popNodes();\r
-               \r
-               treeViewer = new TreeViewer(composite, SWT.BORDER | SWT.FULL_SELECTION);\r
-               final GridData gridData = new GridData(SWT.LEFT, SWT.FILL, false, true);\r
-               gridData.heightHint = 166;\r
-               treeViewer.getTree().setLayoutData(gridData);\r
-               treeViewer.getTree().setLinesVisible(true);\r
-               treeViewer.getTree().setHeaderVisible(false);\r
-//             TreeColumn[] tc = treeViewer.getTree().getColumns();\r
-                               \r
-               // create a column for field names\r
-               TreeViewerColumn column = new TreeViewerColumn(treeViewer, SWT.NONE);\r
-               column.getColumn().setWidth(200);\r
-               column.getColumn().setMoveable(true);\r
-               column.setLabelProvider(new ColumnLabelProvider() {\r
-                       public String getText(Object element) {\r
-                           return ((Node) element).getName();\r
-                       }\r
-               });\r
-               \r
-               final TextCellEditor textCellEditor = new TextCellEditor(treeViewer.getTree());\r
-               genusCellEditor = new TextCellEditor(treeViewer.getTree());\r
-               // create a column for field values             \r
-               column = new TreeViewerColumn(treeViewer, SWT.NONE);\r
-               column.getColumn().setWidth(200);\r
-               column.getColumn().setMoveable(true);\r
-               treeViewer.setContentProvider(new MyTreeContentProvider());\r
-                               \r
-               // how can i be sure i'm populating this correctly?\r
-               IObservableMap[] attributeMaps = BeansObservables.observeMaps(\r
-                               ((ObservableListContentProvider) treeViewer.getContentProvider()).getKnownElements(),\r
-                               Node.class, new String[] { "value" });\r
-               \r
-               cellLabelProvider = new GenericObservableMapCellLabelProvider(attributeMaps, null, bindingContext);\r
-               column.setLabelProvider(cellLabelProvider);\r
-\r
-               column.setEditingSupport(new EditingSupport(treeViewer) {\r
-                       \r
-                       @Override\r
-                       protected boolean canEdit(Object element) {\r
-                               return true;\r
-                       }\r
-\r
-                       @Override\r
-                       protected CellEditor getCellEditor(Object element) {\r
-                               if ((((Node) element).getName()) == "Genus")\r
-                                       return genusCellEditor;\r
-                               return textCellEditor;\r
-                       }\r
-\r
-                       @Override\r
-                       protected Object getValue(Object element) {\r
-//                             return ((Node) element).getValue();\r
-                               return (Node) element;\r
-                       }\r
-\r
-                       @Override\r
-                       protected void setValue(Object element, Object value) {\r
-                               ((Node) element).setValue(value.toString());\r
-                               treeViewer.update(element, null);\r
-                       }\r
-\r
-                       protected void initializeCellEditorValue(CellEditor cellEditor, ViewerCell cell) {\r
-                               Node node = (Node) getValue(cell.getElement());\r
-                               cellEditor.setValue(node.getValue());\r
-                               \r
-                               // is this the Genus? then databind!\r
-                               if ((node.getName() == "Genus")) {\r
-                                       \r
-                                       // this gets us successfully bound in one direction\r
-                                       bindingContext.bindValue(observeTxtGenus, \r
-                                                       SWTObservables.observeText(genusCellEditor.getControl(), SWT.Modify),  \r
-                                                       new UpdateValueStrategy(\r
-                                                                       UpdateValueStrategy.POLICY_CONVERT), null);\r
-                                       \r
-                               }\r
-                       }                       \r
-               });\r
-               treeViewer.setInput(nodes);\r
-                               \r
-       }\r
-       \r
-       \r
-       private void populateForm() {\r
-               \r
-               String fulltext = "";\r
-               \r
-               if (taxonname.getGenus() != null) {\r
-                       txtGenus.setText(taxonname.getGenus());\r
-                       txtGenus_1.setText(taxonname.getGenus());\r
-                       fulltext = taxonname.getGenus();\r
-               }\r
-\r
-               if (taxonname.getSpecificEpithet() != null) {\r
-                       txtSpEpi.setText(taxonname.getSpecificEpithet());\r
-                       fulltext += " " + taxonname.getSpecificEpithet();\r
-               }\r
-\r
-               if (taxonname.getAuthorship() != null) {\r
-                       txtAuthor.setText(taxonname.getAuthorship());\r
-                       fulltext += " " + taxonname.getAuthorship();\r
-               }\r
-                               \r
-               this.setPartName(taxonname.getName());\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-               } else {\r
-                       taxonname = null;\r
-               }\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-       protected DataBindingContext initDataBindings() {\r
-               observeTxtGenus = SWTObservables.observeText(txtGenus, SWT.Modify);\r
-               observeTxtGenus_1 = SWTObservables.observeText(txtGenus_1, SWT.Modify);\r
-               \r
-               observeGenusNode = BeansObservables.observeValue(genusNode, "value");\r
-               //\r
-               \r
-               bindingContext.bindValue(observeTxtGenus, observeGenusNode, null, null);\r
-               bindingContext.bindValue(observeTxtGenus_1, observeGenusNode, null, null);              \r
-               //\r
-               return bindingContext;\r
-       }\r
-\r
-\r
-       private void popNodes() {\r
-           Node category = new Node("Full name", taxonname.getName(), null);\r
-           nodes.add(category);\r
-       \r
-           genusNode = new Node("Genus", taxonname.getGenus(), category);\r
-           new Node("Species Epithet", taxonname.getSpecificEpithet(), category);\r
-       \r
-           category = new Node("Reference", "in aaa: xxx. yyyy", null);\r
-           nodes.add(category);\r
-                   \r
-           new Node("Publication", "aaa", category);\r
-           new Node("Detail", "xxx", category);\r
-           new Node("Year", "yyyy", category);                 \r
-       }\r
-       \r
-       class MyTreeContentProvider extends ObservableListContentProvider implements ITreeContentProvider{\r
-               public Object[] getChildren(Object parentElement) {\r
-                       Vector subcats = ((Node) parentElement).getSubCategories();\r
-                       return subcats == null ? new Object[0] : subcats.toArray();\r
-               }\r
-               \r
-               public Object getParent(Object element) {\r
-                       return ((Node) element).getParent();\r
-               }\r
-               \r
-               public boolean hasChildren(Object element) {\r
-                       return ((Node) element).getSubCategories() != null;\r
-               }\r
-               \r
-               public Object[] getElements(Object inputElement) {\r
-                       if (inputElement != null && inputElement instanceof Vector) {\r
-                               return ((Vector) inputElement).toArray();\r
-                       }\r
-                       return new Object[0];\r
-               }\r
-               \r
-               public void dispose() {\r
-               }\r
-               \r
-               public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {\r
-               }\r
-       }\r
-               class NameValPair {\r
-                       \r
-                       private String name;\r
-                       private String value;\r
-                       public String getName() {\r
-                               return name;\r
-                       }\r
-                       public void setName(String name) {\r
-                               this.name = name;\r
-                       }\r
-                       public String getValue() {\r
-                               return value;\r
-                       }\r
-                       public void setValue(String value) {\r
-                               this.value = value;\r
-                       }\r
-               }\r
-       \r
-               class Node {\r
-                         private NameValPair nameval = new NameValPair();\r
-       \r
-                         private Vector subCategories;\r
-       \r
-                         private Node parent;\r
-       \r
-                         public Node(String name, String value, Node parent) {\r
-                           this.nameval.setName(name);\r
-                           this.nameval.setValue(value);\r
-                           this.parent = parent;\r
-                           if (parent != null)\r
-                             parent.addSubCategory(this);\r
-                         }\r
-       \r
-                         public Vector getSubCategories() {\r
-                           return subCategories;\r
-                         }\r
-       \r
-                         private void addSubCategory(Node subcategory) {\r
-                           if (subCategories == null)\r
-                             subCategories = new Vector();\r
-                           if (!subCategories.contains(subcategory))\r
-                             subCategories.add(subcategory);\r
-                         }\r
-       \r
-                         public String getName() {\r
-                           return this.nameval.getName();\r
-                         }\r
-       \r
-                         public String getValue() {\r
-                                   return this.nameval.getValue();\r
-                                 }\r
-       \r
-                         public void setValue(String value) {\r
-                                       String oldValue = this.nameval.getValue();\r
-                                   this.nameval.setValue(value);\r
-                                       firePropertyChange("value", oldValue, value);\r
-                         }                       \r
-                         \r
-                         public Node getParent() {\r
-                           return parent;\r
-                         }\r
-                         \r
-                               private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(\r
-                                               this);\r
-\r
-                               public void addPropertyChangeListener(PropertyChangeListener listener) {\r
-                                       propertyChangeSupport.addPropertyChangeListener(listener);\r
-                               }\r
-\r
-                               public void addPropertyChangeListener(String propertyName,\r
-                                               PropertyChangeListener listener) {\r
-                                       propertyChangeSupport.addPropertyChangeListener(propertyName,\r
-                                                       listener);\r
-                               }\r
-\r
-                               public void removePropertyChangeListener(PropertyChangeListener listener) {\r
-                                       propertyChangeSupport.removePropertyChangeListener(listener);\r
-                               }\r
-\r
-                               public void removePropertyChangeListener(String propertyName,\r
-                                               PropertyChangeListener listener) {\r
-                                       propertyChangeSupport.removePropertyChangeListener(propertyName,\r
-                                                       listener);\r
-                               }\r
-\r
-                               protected void firePropertyChange(String propertyName, Object oldValue,\r
-                                               Object newValue) {\r
-                                       propertyChangeSupport.firePropertyChange(propertyName, oldValue,\r
-                                                       newValue);\r
-                               }\r
-                         \r
-                       }\r
-}      
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/NameListView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype1/src/eu/etaxonomy/taxeditor/prototype1/view/NameListView.java
deleted file mode 100644 (file)
index 6906956..0000000
+++ /dev/null
@@ -1,243 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype1.view;\r
-\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.Realm;\r
-import org.eclipse.core.databinding.observable.list.IObservableList;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.ExpandBar;\r
-import org.eclipse.swt.widgets.ExpandItem;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\r
-import eu.etaxonomy.taxeditor.prototype1.controller.OpenNameEditorAction;\r
-\r
-public class NameListView extends ViewPart {\r
-       private Table table;\r
-       private Table rnTable;  \r
-       private Composite nameListComposite = null;\r
-       private Composite recentNamesComposite = null;\r
-       private Composite searchComposite = null;       \r
-       private Composite top = null;\r
-       private ExpandBar expandBar = null;\r
-       private TableViewer viewer;\r
-       private TableViewer rnViewer;\r
-       private ExpandItem nameListExpandItem;\r
-       private ExpandItem recentNamesExpandItem;\r
-       private ExpandItem searchExpandItem;    \r
-       public static final String ID = "eu.etaxonomy.mvctest.view.NameListView"; //$NON-NLS-1$\r
-               \r
-       /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               \r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.horizontalSpacing = 0;\r
-               gridLayout.marginWidth = 0;\r
-               gridLayout.marginHeight = 0;\r
-               gridLayout.verticalSpacing = 0;\r
-               top = new Composite(parent, SWT.NONE);\r
-               createExpandBar();\r
-               top.setLayout(gridLayout);\r
-       }\r
-\r
-       /**\r
-        * This method initializes expandBar\r
-        * \r
-        */\r
-       private void createExpandBar() {\r
-               expandBar = new ExpandBar(top, SWT.NONE);\r
-               GridData gridData = new GridData();\r
-               gridData.horizontalAlignment = GridData.FILL;\r
-               gridData.grabExcessHorizontalSpace = true;\r
-               gridData.grabExcessVerticalSpace = true;\r
-               gridData.verticalAlignment = GridData.FILL;\r
-               expandBar.setLayoutData(gridData);\r
-               createNameListComposite();\r
-               createRecentNamesComposite();\r
-               createSearchComposite();\r
-               \r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();               \r
-               \r
-       }\r
-       \r
-       private void createNameListComposite() {\r
-               nameListExpandItem = new ExpandItem(expandBar, SWT.NONE, 0);\r
-               nameListExpandItem.setHeight(500);\r
-               \r
-               nameListExpandItem.setText("Name List");\r
-               nameListExpandItem.setExpanded(true);\r
-//             Image image = FileArrangerImages.getImageRegistry().get(\r
-//                             IFileArrangerImages.IMG_HOME);\r
-//             nameListExpandItem.setImage(image);\r
-               \r
-               nameListComposite = new Composite(expandBar, SWT.NONE);\r
-//             nameListExpandItem.setHeight(nameListComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT).y);\r
-               GridLayout layout = new GridLayout();\r
-               layout.verticalSpacing = 0;\r
-               layout.marginWidth = 0;\r
-               layout.marginHeight = 0;\r
-               layout.horizontalSpacing = 0;\r
-//             layout.marginLeft = layout.marginTop = layout.marginRight = layout.marginBottom = 10;\r
-//             layout.verticalSpacing = 5;\r
-               nameListComposite.setLayout(layout);\r
-               \r
-               viewer = new TableViewer(nameListComposite, SWT.H_SCROLL\r
-                               | SWT.V_SCROLL);\r
-               table = viewer.getTable();\r
-               final GridData gd_table = new GridData(SWT.FILL, SWT.FILL, true, true);\r
-//             gd_table.heightHint = 238;\r
-//             gd_table.widthHint = 443;\r
-               table.setLayoutData(gd_table);\r
-                               \r
-               viewer.addDoubleClickListener(new IDoubleClickListener(){\r
-\r
-                       public void doubleClick(DoubleClickEvent event) {                                                               \r
-                               TaxonName taxonname = null;\r
-                               try {\r
-                                       taxonname = (TaxonName) ((StructuredSelection)event.getSelection()).getFirstElement();\r
-                               }catch (Exception e){\r
-                                       e.printStackTrace();\r
-                                       taxonname = null;\r
-                               }\r
-                               new OpenNameEditorAction(taxonname).run();\r
-                       }\r
-               });             \r
-\r
-               nameListExpandItem.setControl(nameListComposite);\r
-               \r
-       }\r
-       \r
-       private void createRecentNamesComposite() {\r
-               recentNamesExpandItem = new ExpandItem(expandBar, SWT.NONE, 1);\r
-               recentNamesExpandItem.setHeight(200);\r
-               recentNamesExpandItem.setExpanded(true);\r
-               recentNamesExpandItem.setText("Recently viewed names");\r
-               recentNamesComposite = new Composite(expandBar, SWT.NONE);\r
-               GridLayout layout = new GridLayout();\r
-               layout.marginLeft = layout.marginTop = layout.marginRight = layout.marginBottom = 10;\r
-               layout.verticalSpacing = 5;\r
-               recentNamesComposite.setLayout(layout);\r
-//             recentNamesExpandItem.setHeight(recentNamesComposite.computeSize(\r
-//                             SWT.DEFAULT, SWT.DEFAULT).y);\r
-               \r
-               \r
-               rnViewer = new TableViewer(recentNamesComposite, SWT.H_SCROLL\r
-                               | SWT.V_SCROLL);\r
-               rnTable = rnViewer.getTable();\r
-               final GridData gd_table = new GridData(SWT.FILL, SWT.FILL, true, true);\r
-//             gd_table.heightHint = 238;\r
-//             gd_table.widthHint = 443;\r
-               rnTable.setLayoutData(gd_table);\r
-               \r
-               rnViewer.addDoubleClickListener(new IDoubleClickListener(){\r
-\r
-                       public void doubleClick(DoubleClickEvent event) {                                                               \r
-                               TaxonName taxonname = null;\r
-                               try {\r
-                                       taxonname = (TaxonName) ((StructuredSelection)event.getSelection()).getFirstElement();\r
-                               }catch (Exception e){\r
-                                       e.printStackTrace();\r
-                                       taxonname = null;\r
-                               }\r
-                               new OpenNameEditorAction(taxonname).run();\r
-                       }\r
-               });                             \r
-               \r
-               recentNamesExpandItem.setControl(recentNamesComposite);\r
-\r
-//             Image image = FileArrangerImages.getImageRegistry().get(\r
-//                             IFileArrangerImages.IMG_BOOKMARK);\r
-//             bookmarksExpandItem.setImage(image);\r
-       }\r
-\r
-       private void createSearchComposite() {\r
-               searchExpandItem = new ExpandItem(expandBar, SWT.NONE, 2);\r
-               searchExpandItem.setHeight(200);\r
-               searchExpandItem.setExpanded(true);\r
-               searchExpandItem.setText("Search");\r
-               searchComposite = new Composite(expandBar, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               searchComposite.setLayout(gridLayout);\r
-\r
-               searchExpandItem.setControl(searchComposite);\r
-               initDataBindings();\r
-\r
-//             Image image = FileArrangerImages.getImageRegistry().get(\r
-//                             IFileArrangerImages.IMG_FTP);\r
-//             ftpExpandItem.setImage(image);\r
-       }       \r
-       \r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-       \r
-       protected DataBindingContext initDataBindings() {\r
-               //\r
-               ObservableListContentProvider viewerContentProviderList = new ObservableListContentProvider();\r
-               viewer.setContentProvider(viewerContentProviderList);\r
-               //\r
-               IObservableMap[] viewerLabelProviderMaps = BeansObservables.observeMaps(viewerContentProviderList.getKnownElements(), TaxonName.class, new String[]{"name"});\r
-               viewer.setLabelProvider(new ObservableMapLabelProvider(viewerLabelProviderMaps));\r
-               //\r
-               IObservableList olObjectListObserveList = BeansObservables.observeList(Realm.getDefault(), Activator.getDefault().getTaxonList(), "objectList");\r
-               viewer.setInput(olObjectListObserveList);\r
-               \r
-               \r
-               ObservableListContentProvider rnViewerContentProviderList = new ObservableListContentProvider();\r
-               rnViewer.setContentProvider(rnViewerContentProviderList);\r
-               //\r
-               IObservableMap[] rnViewerLabelProviderMaps = BeansObservables.observeMaps(viewerContentProviderList.getKnownElements(), TaxonName.class, new String[]{"name"});\r
-               rnViewer.setLabelProvider(new ObservableMapLabelProvider(rnViewerLabelProviderMaps));\r
-               //\r
-               IObservableList rnObjectListObserveList = BeansObservables.observeList(Realm.getDefault(), Activator.getDefault().getRecentNamesList(), "objectList");\r
-               rnViewer.setInput(rnObjectListObserveList);             \r
-               \r
-               //\r
-               DataBindingContext bindingContext = new DataBindingContext();\r
-               //\r
-               //\r
-               return bindingContext;\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/.classpath b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/.classpath
deleted file mode 100644 (file)
index 0215967..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<classpath>\r
-       <classpathentry kind="src" path="src"/>\r
-       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>\r
-       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>\r
-       <classpathentry kind="output" path="bin"/>\r
-</classpath>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/.project b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/.project
deleted file mode 100644 (file)
index 9795c78..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<projectDescription>\r
-       <name>eu.etaxonomy.taxeditor.prototype2</name>\r
-       <comment></comment>\r
-       <projects>\r
-       </projects>\r
-       <buildSpec>\r
-               <buildCommand>\r
-                       <name>org.eclipse.jdt.core.javabuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.ManifestBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.SchemaBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-       </buildSpec>\r
-       <natures>\r
-               <nature>org.eclipse.pde.PluginNature</nature>\r
-               <nature>org.eclipse.jdt.core.javanature</nature>\r
-       </natures>\r
-</projectDescription>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/META-INF/MANIFEST.MF b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/META-INF/MANIFEST.MF
deleted file mode 100644 (file)
index d1deb00..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: Editor Prototype 2
-Bundle-SymbolicName: eu.etaxonomy.taxeditor.prototype2;singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: eu.etaxonomy.taxeditor.prototype2.Activator
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.core.databinding,
- org.eclipse.core.databinding.beans,
- org.eclipse.jface.databinding,
- org.eclipse.jface.text,
- org.eclipse.ui.forms,
- org.eclipse.core.resources,
- eu.etaxonomy.cdmLibrary
-Eclipse-LazyStart: true
-Export-Package: com.swtdesigner,
- eu.etaxonomy.taxeditor.prototype2,
- eu.etaxonomy.taxeditor.prototype2.controller,
- eu.etaxonomy.taxeditor.prototype2.model,
- eu.etaxonomy.taxeditor.prototype2.view
-Main-Class: eu.etaxonomy.taxeditor.designproposal1.Application
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/build.properties b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/build.properties
deleted file mode 100644 (file)
index b2ed4c9..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-source.. = src/\r
-output.. = bin/\r
-bin.includes = plugin.xml,\\r
-               META-INF/,\\r
-               .,\\r
-               icons/,\\r
-               splash.bmp,\\r
-               bin/,\\r
-               .project,\\r
-               .classpath,\\r
-               build.properties,\\r
-               eu.etaxonomy.taxeditor.prototype2.product\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/eu.etaxonomy.taxeditor.prototype2.product b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/eu.etaxonomy.taxeditor.prototype2.product
deleted file mode 100644 (file)
index 33b4320..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<?pde version="3.1"?>\r
-\r
-<product name="EDIT Taxonomic Editor - Design Proposal 1" id="eu.etaxonomy.taxeditor.designproposal1.product" application="eu.etaxonomy.taxeditor.designproposal1.application" useFeatures="false">\r
-\r
-   <aboutInfo>\r
-      <image path="icons/edit_16x16.gif"/>\r
-      <text>\r
-         Thanks for all the laughs!\r
-      </text>\r
-   </aboutInfo>\r
-\r
-   <configIni use="default"/>\r
-\r
-   <launcherArgs>\r
-      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts</vmArgsMac>\r
-   </launcherArgs>\r
-\r
-   <windowImages i16="icons/edit_16x16.gif"/>\r
-\r
-   <splash\r
-      location="eu.etaxonomy.taxeditor.designproposal1" />\r
-   <launcher name="EDIT Taxonomic Editor">\r
-      <solaris/>\r
-      <win useIco="true">\r
-         <ico path="/eu.etaxonomy.taxeditor.designproposal2/icons/edit_16x16.ico"/>\r
-         <bmp/>\r
-      </win>\r
-   </launcher>\r
-\r
-\r
-   <vm>\r
-      <windows type="jre">jre1.5.0_06</windows>\r
-   </vm>\r
-\r
-   <plugins>\r
-      <plugin id="com.ibm.icu"/>\r
-      <plugin id="eu.etaxonomy.taxeditor.designproposal1"/>\r
-      <plugin id="org.eclipse.core.commands"/>\r
-      <plugin id="org.eclipse.core.contenttype"/>\r
-      <plugin id="org.eclipse.core.databinding"/>\r
-      <plugin id="org.eclipse.core.expressions"/>\r
-      <plugin id="org.eclipse.core.jobs"/>\r
-      <plugin id="org.eclipse.core.runtime"/>\r
-      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>\r
-      <plugin id="org.eclipse.equinox.app"/>\r
-      <plugin id="org.eclipse.equinox.common"/>\r
-      <plugin id="org.eclipse.equinox.preferences"/>\r
-      <plugin id="org.eclipse.equinox.registry"/>\r
-      <plugin id="org.eclipse.help"/>\r
-      <plugin id="org.eclipse.jface"/>\r
-      <plugin id="org.eclipse.jface.databinding"/>\r
-      <plugin id="org.eclipse.jface.text"/>\r
-      <plugin id="org.eclipse.osgi"/>\r
-      <plugin id="org.eclipse.swt"/>\r
-      <plugin id="org.eclipse.swt.win32.win32.x86" fragment="true"/>\r
-      <plugin id="org.eclipse.text"/>\r
-      <plugin id="org.eclipse.ui"/>\r
-      <plugin id="org.eclipse.ui.forms"/>\r
-      <plugin id="org.eclipse.ui.workbench"/>\r
-   </plugins>\r
-\r
-</product>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/a_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/a_no_bg.gif
deleted file mode 100644 (file)
index 2f54262..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/a_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add.gif
deleted file mode 100644 (file)
index 29c2aee..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_edit.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_edit.gif
deleted file mode 100644 (file)
index 252d7eb..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_edit.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg.gif
deleted file mode 100644 (file)
index 0dd4eab..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg2.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg2.gif
deleted file mode 100644 (file)
index dfbf68f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/add_no_bg2.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_16.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_16.gif
deleted file mode 100644 (file)
index 05626b1..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_32.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_32.gif
deleted file mode 100644 (file)
index b432f88..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/alt_window_32.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym.gif
deleted file mode 100644 (file)
index 2780f44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym_no_bg.gif
deleted file mode 100644 (file)
index 8c3d54b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/basionym_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/change.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/change.gif
deleted file mode 100644 (file)
index d79c444..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/change.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept.gif
deleted file mode 100644 (file)
index 445cd44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept_no_bg.gif
deleted file mode 100644 (file)
index 362c109..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/concept_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/correction_change.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/correction_change.gif
deleted file mode 100644 (file)
index 068e18d..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/correction_change.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/db.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/db.gif
deleted file mode 100644 (file)
index 1f3b8db..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/db.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete.gif
deleted file mode 100644 (file)
index 559e462..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete_edit.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete_edit.gif
deleted file mode 100644 (file)
index b6922ac..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/delete_edit.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.gif
deleted file mode 100644 (file)
index d857c6c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.ico b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.ico
deleted file mode 100644 (file)
index d4b6c2b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/edit_16x16.ico and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn.gif
deleted file mode 100644 (file)
index ebab24c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn_no_bg.gif
deleted file mode 100644 (file)
index 02a6d38..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/heterosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym.gif
deleted file mode 100644 (file)
index abaf009..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym_no_bg.gif
deleted file mode 100644 (file)
index 05b399a..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homonym_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn.gif
deleted file mode 100644 (file)
index 143c881..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn_no_bg.gif
deleted file mode 100644 (file)
index 19575f7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/homosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/impl_co.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/impl_co.gif
deleted file mode 100644 (file)
index 98d914a..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/impl_co.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied.gif
deleted file mode 100644 (file)
index 18fba08..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied_no_bg.gif
deleted file mode 100644 (file)
index dca3ff0..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/misapplied_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move.gif
deleted file mode 100644 (file)
index f43e9b9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move_no_bg.gif
deleted file mode 100644 (file)
index 2f2a3f0..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/move_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant.gif
deleted file mode 100644 (file)
index 14ade2f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant_no_bg.gif
deleted file mode 100644 (file)
index caf5430..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/orthovariant_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/rel_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/rel_no_bg.gif
deleted file mode 100644 (file)
index 77f03e7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/rel_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn.gif
deleted file mode 100644 (file)
index 1b627ce..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn_no_bg.gif
deleted file mode 100644 (file)
index f2370b4..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/repsyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save.gif
deleted file mode 100644 (file)
index ad505a9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save_edit.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save_edit.gif
deleted file mode 100644 (file)
index 499dd0c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/save_edit.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/text.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/text.gif
deleted file mode 100644 (file)
index 9312d7e..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/text.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/undo.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/undo.gif
deleted file mode 100644 (file)
index 3aeba19..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/undo.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown.gif
deleted file mode 100644 (file)
index 8c58c52..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown_no_bg.gif
deleted file mode 100644 (file)
index a6a784b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/unknown_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/warn_tsk.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/warn_tsk.gif
deleted file mode 100644 (file)
index 14009e9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/icons/warn_tsk.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/plugin.xml b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/plugin.xml
deleted file mode 100644 (file)
index 3da848d..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<?eclipse version="3.2"?>\r
-<plugin>\r
-\r
-   <extension\r
-         id="application"\r
-         point="org.eclipse.core.runtime.applications">\r
-      <application>\r
-         <run\r
-               class="eu.etaxonomy.taxeditor.prototype2.Application">\r
-         </run>\r
-      </application>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.perspectives">\r
-      <perspective\r
-            class="eu.etaxonomy.taxeditor.prototype2.Perspective"\r
-            fixed="false"\r
-            id="eu.etaxonomy.taxeditor.prototype2.perspective"\r
-            name="Perspective">\r
-      </perspective>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.views">\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.prototype2.view.NameListView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.prototype2.view.namelistview"\r
-            name="Name List View">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.prototype2.view.UndoView"\r
-            icon="icons/text.gif"\r
-            id="eu.etaxonomy.taxeditor.prototype2.view.undoview"\r
-            name="Recent Actions">\r
-      </view>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.editors">\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.prototype2.view.MultiPageTaxonView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.prototype2.view.multipagetaxonview"\r
-            name="Multipart Test">\r
-      </editor>\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.prototype2.view.NameEditorView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.prototype2.view.nameeditorview"\r
-            name="New EditorPart">\r
-      </editor>\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.prototype2.view.EmptyEditorView"\r
-            id="eu.etaxonomy.taxeditor.prototype2.view.EmptyEditorView"\r
-            name="New EditorPart">\r
-      </editor>\r
-   </extension>\r
-   <extension\r
-         id="product"\r
-         point="org.eclipse.core.runtime.products">\r
-      <product\r
-            application="eu.etaxonomy.taxeditor.prototype2.application"\r
-            name="EDIT Taxonomic Editor - Prototype 2">\r
-         <property\r
-               name="appName"\r
-               value="EDIT Taxonomic Editor - Prototype 2">\r
-         </property>\r
-         <property\r
-               name="aboutImage"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="aboutText"\r
-               value="Thanks for all the laughs!">\r
-         </property>\r
-         <property\r
-               name="windowImages"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-      </product>\r
-   </extension>\r
-\r
-</plugin>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/splash.bmp b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/splash.bmp
deleted file mode 100644 (file)
index 74c1225..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/splash.bmp and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/com/swtdesigner/ResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/com/swtdesigner/ResourceManager.java
deleted file mode 100644 (file)
index b8480f6..0000000
+++ /dev/null
@@ -1,254 +0,0 @@
-package com.swtdesigner;
-import java.io.File;
-import java.io.InputStream;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Method;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.jface.resource.CompositeImageDescriptor;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.*;
-
-/**
- * Utility class for managing OS resources associated with SWT/JFace controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class ResourceManager extends SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image descriptors to images
-        */
-    private static HashMap<ImageDescriptor, Image> m_DescriptorImageMap = new HashMap<ImageDescriptor, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-    
-    /**
-     * Returns an image descriptor stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image descriptor
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(Class<?> clazz, String path) {
-        return ImageDescriptor.createFromFile(clazz, path);
-    }
-
-    /**
-     * Returns an image descriptor stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(String path) {
-        try {
-            return ImageDescriptor.createFromURL((new File(path)).toURI().toURL());
-        } catch (MalformedURLException e) {
-            return null;
-        }
-    }
-
-    /**
-     * Returns an image based on the specified image descriptor
-     * @param descriptor ImageDescriptor The image descriptor for the image
-     * @return Image The image based on the specified image descriptor
-     */
-    public static Image getImage(ImageDescriptor descriptor) {
-        if (descriptor == null)
-            return null;
-        Image image = m_DescriptorImageMap.get(descriptor);
-        if (image == null) {
-            image = descriptor.createImage();
-            m_DescriptorImageMap.put(descriptor, image);
-        }
-        return image;
-    }
-
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       final Rectangle bid = baseImage.getBounds();
-                       final Rectangle did = decorator.getBounds();
-            final Point baseImageSize = new Point(bid.width, bid.height); 
-            CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() { 
-                protected void drawCompositeImage(int width, int height) { 
-                    drawImage(baseImage.getImageData(), 0, 0); 
-                    if (corner == TOP_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, 0); 
-                    } else if (corner == TOP_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, 0); 
-                    } else if (corner == BOTTOM_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, bid.height - did.height - 1); 
-                    } else if (corner == BOTTOM_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, bid.height - did.height - 1); 
-                    } 
-                } 
-                protected Point getSize() { 
-                    return baseImageSize; 
-                } 
-            }; 
-            result = compositImageDesc.createImage(); 
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-       SWTResourceManager.disposeImages();
-       //
-        for (Iterator<Image> I = m_DescriptorImageMap.values().iterator(); I.hasNext();)
-             I.next().dispose();
-        m_DescriptorImageMap.clear();
-    }
-
-    //////////////////////////////
-    // Plugin images support
-    //////////////////////////////
-
-    /**
-     * Maps URL to images
-     */
-    private static HashMap<URL, Image> m_URLImageMap = new HashMap<URL, Image>();
-
-    /**
-     * Retuns an image based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getPluginImage(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                if (m_URLImageMap.containsKey(url))
-                    return m_URLImageMap.get(url);
-                InputStream is = url.openStream();
-                Image image;
-                try {
-                    image = getImage(is);
-                    m_URLImageMap.put(url, image);
-                } finally {
-                    is.close();
-                }
-                return image;
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an image descriptor based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getPluginImageDescriptor(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                return ImageDescriptor.createFromURL(url);
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an URL based on a plugin and file path
-     * @param plugin Object The plugin containing the file path
-     * @param name String The file path
-     * @return URL The URL representing the file at the specified path
-     * @throws Exception
-     */
-       @SuppressWarnings("unchecked") //$NON-NLS-1$
-       private static URL getPluginImageURL(Object plugin, String name) throws Exception {
-               // try to work with 'plugin' as with OSGI BundleContext
-               try {
-                       Class bundleClass = Class.forName("org.osgi.framework.Bundle"); //$NON-NLS-1$
-                       Class bundleContextClass = Class.forName("org.osgi.framework.BundleContext"); //$NON-NLS-1$
-                       if (bundleContextClass.isAssignableFrom(plugin.getClass())) {
-                               Method getBundleMethod = bundleContextClass.getMethod("getBundle", new Class[]{}); //$NON-NLS-1$
-                               Object bundle = getBundleMethod.invoke(plugin, new Object[]{});
-                               //
-                               Class ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Class platformClass = Class.forName("org.eclipse.core.runtime.Platform"); //$NON-NLS-1$
-                               Method findMethod = platformClass.getMethod("find", new Class[]{bundleClass, ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(null, new Object[]{bundle, path});
-                       }
-               } catch (Throwable e) {
-               // Ignore any exceptions
-               }
-               // else work with 'plugin' as with usual Eclipse plugin
-               {
-                       Class pluginClass = Class.forName("org.eclipse.core.runtime.Plugin"); //$NON-NLS-1$
-                       if (pluginClass.isAssignableFrom(plugin.getClass())) {
-                               //
-                               Class ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Method findMethod = pluginClass.getMethod("find", new Class[]{ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(plugin, new Object[]{path});
-                       }
-               }
-               return null;
-       }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/com/swtdesigner/SWTResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/com/swtdesigner/SWTResourceManager.java
deleted file mode 100644 (file)
index f0b8891..0000000
+++ /dev/null
@@ -1,455 +0,0 @@
-package com.swtdesigner;
-import java.io.BufferedInputStream;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.CoolBar;
-import org.eclipse.swt.widgets.CoolItem;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Utility class for managing OS resources associated with SWT controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Color support
-    //////////////////////////////
-
-    /**
-     * Maps RGB values to colors
-     */
-    private static HashMap<RGB, Color> m_ColorMap = new HashMap<RGB, Color>();
-
-    /**
-     * Returns the system color matching the specific ID
-     * @param systemColorID int The ID value for the color
-     * @return Color The system color matching the specific ID
-     */
-    public static Color getColor(int systemColorID) {
-        Display display = Display.getCurrent();
-        return display.getSystemColor(systemColorID);
-    }
-
-    /**
-     * Returns a color given its red, green and blue component values
-     * @param r int The red component of the color
-     * @param g int The green component of the color
-     * @param b int The blue component of the color
-     * @return Color The color matching the given red, green and blue componet values
-     */
-    public static Color getColor(int r, int g, int b) {
-        return getColor(new RGB(r, g, b));
-    }
-
-    /**
-     * Returns a color given its RGB value
-     * @param rgb RGB The RGB value of the color
-     * @return Color The color matching the RGB value
-     */
-    public static Color getColor(RGB rgb) {
-        Color color = m_ColorMap.get(rgb);
-        if (color == null) {
-            Display display = Display.getCurrent();
-            color = new Color(display, rgb);
-            m_ColorMap.put(rgb, color);
-        }
-        return color;
-    }
-
-    /**
-     * Dispose of all the cached colors
-     */
-    public static void disposeColors() {
-        for (Iterator<Color> iter = m_ColorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_ColorMap.clear();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image names to images
-        */
-    private static HashMap<String, Image> m_ClassImageMap = new HashMap<String, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-
-    /**
-     * Returns an image encoded by the specified input stream
-     * @param is InputStream The input stream encoding the image data
-     * @return Image The image encoded by the specified input stream
-     */
-    protected static Image getImage(InputStream is) {
-        Display display = Display.getCurrent();
-        ImageData data = new ImageData(is);
-        if (data.transparentPixel > 0)
-            return new Image(display, data, data.getTransparencyMask());
-        return new Image(display, data);
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String path) {
-       return getImage("default", path); //$NON-NLS-1$
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param section The section to which belongs specified image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String section, String path) {
-        String key = section + '|' + SWTResourceManager.class.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-            try {
-                FileInputStream fis = new FileInputStream(path);
-                image = getImage(fis);
-                m_ClassImageMap.put(key, image);
-                fis.close();
-            } catch (Exception e) {
-               image = getMissingImage();
-               m_ClassImageMap.put(key, image);
-            }
-        }
-        return image;
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(Class<?> clazz, String path) {
-        String key = clazz.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-               try {
-                       if (path.length() > 0 && path.charAt(0) == '/') {
-                               String newPath = path.substring(1, path.length());
-                               image = getImage(new BufferedInputStream(clazz.getClassLoader().getResourceAsStream(newPath)));
-                       } else {
-                               image = getImage(clazz.getResourceAsStream(path));
-                       }
-                       m_ClassImageMap.put(key, image);
-               } catch (Exception e) {
-                       image = getMissingImage();
-                       m_ClassImageMap.put(key, image);
-               }
-        }
-        return image;
-    }
-
-    private static final int MISSING_IMAGE_SIZE = 10;
-       private static Image getMissingImage() {
-               Image image = new Image(Display.getCurrent(), MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               //
-               GC gc = new GC(image);
-               gc.setBackground(getColor(SWT.COLOR_RED));
-               gc.fillRectangle(0, 0, MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               gc.dispose();
-               //
-               return image;
-       }
-
-    /**
-     * Style constant for placing decorator image in top left corner of base image.
-     */
-    public static final int TOP_LEFT = 1;
-    /**
-     * Style constant for placing decorator image in top right corner of base image.
-     */
-    public static final int TOP_RIGHT = 2;
-    /**
-     * Style constant for placing decorator image in bottom left corner of base image.
-     */
-    public static final int BOTTOM_LEFT = 3;
-    /**
-     * Style constant for placing decorator image in bottom right corner of base image.
-     */
-    public static final int BOTTOM_RIGHT = 4;
-    
-    /**
-     * Returns an image composed of a base image decorated by another image
-     * @param baseImage Image The base image that should be decorated
-     * @param decorator Image The image to decorate the base image
-     * @return Image The resulting decorated image
-     */
-    public static Image decorateImage(Image baseImage, Image decorator) {
-       return decorateImage(baseImage, decorator, BOTTOM_RIGHT);
-    }
-    
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       Rectangle bid = baseImage.getBounds();
-                       Rectangle did = decorator.getBounds();
-                       result = new Image(Display.getCurrent(), bid.width, bid.height);
-                       GC gc = new GC(result);
-                       gc.drawImage(baseImage, 0, 0);
-                       //
-                       if (corner == TOP_LEFT) {
-                               gc.drawImage(decorator, 0, 0);
-                       } else if (corner == TOP_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, 0);
-                       } else if (corner == BOTTOM_LEFT) {
-                               gc.drawImage(decorator, 0, bid.height - did.height - 1);
-                       } else if (corner == BOTTOM_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, bid.height - did.height - 1);
-                       }
-                       //
-                       gc.dispose();
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-        for (Iterator<Image> I = m_ClassImageMap.values().iterator(); I.hasNext();)
-             I.next().dispose();
-        m_ClassImageMap.clear();
-        //
-        for (Iterator<HashMap<Image, Image>> I = m_ImageToDecoratorMap.values().iterator(); I.hasNext();) {
-                       HashMap<Image, Image> decoratedMap = I.next();
-                       for (Iterator<Image> J = decoratedMap.values().iterator(); J.hasNext();) {
-                               Image image = J.next();
-                               image.dispose();
-                       }
-               }
-    }
-
-    /**
-        * Dispose cached images in specified section
-        * @param section the section do dispose
-        */
-       public static void disposeImages(String section) {
-               for (Iterator<String> I = m_ClassImageMap.keySet().iterator(); I.hasNext();) {
-                       String key = I.next();
-                       if (!key.startsWith(section + '|'))
-                               continue;
-                       Image image = m_ClassImageMap.get(key);
-                       image.dispose();
-                       I.remove();
-               }
-       }
-
-    //////////////////////////////
-    // Font support
-    //////////////////////////////
-
-    /**
-     * Maps font names to fonts
-     */
-    private static HashMap<String, Font> m_FontMap = new HashMap<String, Font>();
-
-    /**
-     * Maps fonts to their bold versions
-     */
-    private static HashMap<Font, Font> m_FontToBoldFontMap = new HashMap<Font, Font>();
-
-    /**
-     * Returns a font based on its name, height and style
-     * @param name String The name of the font
-     * @param height int The height of the font
-     * @param style int The style of the font
-     * @return Font The font matching the name, height and style
-     */
-    public static Font getFont(String name, int height, int style) {
-       return getFont(name, height, style, false, false);
-    }
-
-
-    /**
-     * Returns a font based on its name, height and style. 
-     * Windows-specific strikeout and underline flags are also supported.
-     * @param name String The name of the font
-     * @param size int The size of the font
-     * @param style int The style of the font
-     * @param strikeout boolean The strikeout flag (warning: Windows only)
-     * @param underline boolean The underline flag (warning: Windows only)
-     * @return Font The font matching the name, height, style, strikeout and underline
-     */
-       public static Font getFont(String name, int size, int style, boolean strikeout, boolean underline) {
-               String fontName = name + '|' + size + '|' + style + '|' + strikeout + '|' + underline;
-        Font font = m_FontMap.get(fontName);
-        if (font == null) {
-               FontData fontData = new FontData(name, size, style);
-               if (strikeout || underline) {
-                       try {
-                               Class<?> logFontClass = Class.forName("org.eclipse.swt.internal.win32.LOGFONT"); //$NON-NLS-1$
-                               Object logFont = FontData.class.getField("data").get(fontData); //$NON-NLS-1$
-                               if (logFont != null && logFontClass != null) {
-                                       if (strikeout) {
-                                                       logFontClass.getField("lfStrikeOut").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                                       if (underline) {
-                                                       logFontClass.getField("lfUnderline").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                               }
-                       } catch (Throwable e) {
-                               System.err.println(
-                                       "Unable to set underline or strikeout" + " (probably on a non-Windows platform). " + e); //$NON-NLS-1$ //$NON-NLS-2$
-                       }
-               }
-               font = new Font(Display.getCurrent(), fontData);
-               m_FontMap.put(fontName, font);
-        }
-               return font;
-       }
-    
-
-    /**
-     * Return a bold version of the give font
-     * @param baseFont Font The font for whoch a bold version is desired
-     * @return Font The bold version of the give font
-     */
-    public static Font getBoldFont(Font baseFont) {
-        Font font = m_FontToBoldFontMap.get(baseFont);
-        if (font == null) {
-            FontData fontDatas[] = baseFont.getFontData();
-            FontData data = fontDatas[0];
-            font = new Font(Display.getCurrent(), data.getName(), data.getHeight(), SWT.BOLD);
-            m_FontToBoldFontMap.put(baseFont, font);
-        }
-        return font;
-    }
-
-    /**
-     * Dispose all of the cached fonts
-     */
-    public static void disposeFonts() {
-        for (Iterator<Font> iter = m_FontMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_FontMap.clear();
-    }
-
-       //////////////////////////////
-    // CoolBar support
-    //////////////////////////////
-
-    /**
-     * Fix the layout of the specified CoolBar
-     * @param bar CoolBar The CoolBar that shgoud be fixed
-     */
-    public static void fixCoolBarSize(CoolBar bar) {
-        CoolItem[] items = bar.getItems();
-        // ensure that each item has control (at least empty one)
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            if (item.getControl() == null)
-                item.setControl(new Canvas(bar, SWT.NONE) {
-                @Override
-                               public Point computeSize(int wHint, int hHint, boolean changed) {
-                    return new Point(20, 20);
-                }
-            });
-        }
-        // compute size for each item
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            Control control = item.getControl();
-            control.pack();
-            Point size = control.getSize();
-            item.setSize(item.computeSize(size.x, size.y));
-        }
-    }
-
-    //////////////////////////////
-    // Cursor support
-    //////////////////////////////
-
-    /**
-     * Maps IDs to cursors
-     */
-    private static HashMap<Integer, Cursor> m_IdToCursorMap = new HashMap<Integer, Cursor>();
-    /**
-     * Returns the system cursor matching the specific ID
-     * @param id int The ID value for the cursor
-     * @return Cursor The system cursor matching the specific ID
-     */
-    public static Cursor getCursor(int id) {
-        Integer key = new Integer(id);
-        Cursor cursor = m_IdToCursorMap.get(key);
-        if (cursor == null) {
-            cursor = new Cursor(Display.getDefault(), id);
-            m_IdToCursorMap.put(key, cursor);
-        }
-        return cursor;
-    }
-    /**
-     * Dispose all of the cached cursors
-     */
-    public static void disposeCursors() {
-        for (Iterator<Cursor> iter = m_IdToCursorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_IdToCursorMap.clear();
-    }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Activator.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Activator.java
deleted file mode 100644 (file)
index 16d58fc..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2;\r
-\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.core.databinding.observable.set.WritableSet;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.ui.plugin.AbstractUIPlugin;\r
-import org.osgi.framework.BundleContext;\r
-\r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-import eu.etaxonomy.cdm.model.agent.Person;\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-\r
-/**\r
- * The activator class controls the plug-in life cycle\r
- */\r
-public class Activator extends AbstractUIPlugin {\r
-\r
-       /**\r
-        * The plug-in ID\r
-        */\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.prototype2.activator";\r
-       /**\r
-        * The shared instance\r
-        */     \r
-       private static Activator plugin;\r
-       /**\r
-        * All CDM services are called via the application controller\r
-        */\r
-       private CdmApplicationController cdmApp = new CdmApplicationController();\r
-       /**\r
-        * The dataset of taxa for this session\r
-        */\r
-       private WritableList observableTaxonTreeList = null;\r
-       /**\r
-        * Keeps track of which taxa have been edited\r
-        */\r
-       private WritableList observableRecentNamesList = null;\r
-       public WritableSet observableSynonymSet = null;\r
-       /**\r
-        * The constructor\r
-        */\r
-       public Activator() {\r
-//             BotanicalName botName = new BotanicalName(Rank.GENUS());\r
-//             botName.setTitleCache("Hieracium L.");\r
-//             botName.setUninomial("Hieracium");\r
-//             botName.setCombinationAuthorTeam(new Person());\r
-//             botName.getCombinationAuthorTeam().setTitleCache("L.");\r
-//             Taxon genusTaxon = new Taxon();\r
-//             genusTaxon.setName(botName);\r
-//             genusTaxon.setSec(null);\r
-//                             \r
-//             BotanicalName botSpecies = new BotanicalName(Rank.SPECIES());\r
-//             botSpecies.setTitleCache("Hieracium asturianum Pau");\r
-//             botSpecies.setUninomial("Hieracium");\r
-//             botSpecies.setSpecificEpithet("asturianum");\r
-//             botSpecies.setCombinationAuthorTeam(new Person());\r
-//             botSpecies.getCombinationAuthorTeam().setTitleCache("Pau");\r
-//             Taxon childTaxon = new Taxon();\r
-//             childTaxon.setName(botSpecies);\r
-//             childTaxon.setSec(null);\r
-//             childTaxon.setTaxonomicParent(genusTaxon, null, null);\r
-//\r
-//             BotanicalName botSpecies2= new BotanicalName(Rank.SPECIES());\r
-//             botSpecies2.setTitleCache("Hieracium wolffii Zahn");\r
-//             botSpecies2.setUninomial("Hieracium");\r
-//             botSpecies2.setSpecificEpithet("wolffii");\r
-//             botSpecies2.setCombinationAuthorTeam(new Person());\r
-//             botSpecies2.getCombinationAuthorTeam().setTitleCache("Zahn");\r
-//             Taxon childTaxon2 = new Taxon();\r
-//             childTaxon2.setName(botSpecies2);\r
-//             childTaxon2.setSec(null);\r
-//             childTaxon2.setTaxonomicParent(genusTaxon, null, null);\r
-//             \r
-//             cdmApp.getTaxonService().saveTaxon(genusTaxon);\r
-//             \r
-//             System.exit(-1);                \r
-       }\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)\r
-        */\r
-       public void start(BundleContext context) throws Exception {\r
-               super.start(context);\r
-               plugin = this;\r
-       }\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)\r
-        */\r
-       public void stop(BundleContext context) throws Exception {\r
-               plugin = null;\r
-               super.stop(context);\r
-       }\r
-\r
-       /**\r
-        * Returns the shared instance\r
-        *\r
-        * @return the shared instance\r
-        */\r
-       public static Activator getDefault() {\r
-               return plugin;\r
-       }\r
-\r
-       /**\r
-        * Returns an image descriptor for the image file at the given\r
-        * plug-in relative path\r
-        *\r
-        * @param path the path\r
-        * @return the image descriptor\r
-        */\r
-       public static ImageDescriptor getImageDescriptor(String path) {\r
-               return imageDescriptorFromPlugin(PLUGIN_ID, path);\r
-       }\r
-       \r
-       \r
-       public Image getImage(String key) {\r
-               return getImageRegistry().get(key);\r
-       }\r
-\r
-       public CdmApplicationController getCdmApp() {\r
-               return cdmApp;\r
-       }\r
-\r
-       public WritableList getObservableTaxonTreeList() {\r
-               if (observableTaxonTreeList == null) {\r
-                       observableTaxonTreeList = new WritableList();\r
-                       observableTaxonTreeList.addAll(cdmApp.getTaxonService().getRootTaxa(null));\r
-               }\r
-               return observableTaxonTreeList;\r
-       }\r
-       \r
-       public WritableList getObservableRecentNamesList() {\r
-               if (observableRecentNamesList == null) {\r
-                       observableRecentNamesList = new WritableList();\r
-               }\r
-               return observableRecentNamesList;\r
-       }\r
-\r
-       public WritableSet getObservableSynonymSet() {\r
-               if (observableSynonymSet == null) {\r
-                       observableSynonymSet = new WritableSet();\r
-               }               \r
-               return observableSynonymSet;            \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Application.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Application.java
deleted file mode 100644 (file)
index b06f391..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2;
-
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * This class controls all aspects of the application's execution
- */
-public class Application implements IApplication {
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.IApplicationContext)
-        */
-       public Object start(IApplicationContext context) {
-               Display display = PlatformUI.createDisplay();
-               try {
-                       int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
-                       if (returnCode == PlatformUI.RETURN_RESTART) {
-                               return IApplication.EXIT_RESTART;
-                       }
-                       return IApplication.EXIT_OK;
-               } finally {
-                       display.dispose();
-               }
-       }
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#stop()
-        */
-       public void stop() {
-               final IWorkbench workbench = PlatformUI.getWorkbench();
-               if (workbench == null)
-                       return;
-               final Display display = workbench.getDisplay();
-               display.syncExec(new Runnable() {
-                       public void run() {
-                               if (!display.isDisposed())
-                                       workbench.close();
-                       }
-               });
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationActionBarAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationActionBarAdvisor.java
deleted file mode 100644 (file)
index 5671997..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2;
-
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.actions.ActionFactory;
-import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionOpenNameEditor;
-
-/**
- * An action bar advisor is responsible for creating, adding, and disposing of
- * the actions added to a workbench window. Each window will be populated with
- * new actions.
- */
-public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
-
-       // Actions - important to allocate these only in makeActions, and then use
-       // them
-       // in the fill methods. This ensures that the actions aren't recreated
-       // when fillActionBars is called with FILL_PROXY.
-       private IWorkbenchAction exitAction;
-       private ActionOpenNameEditor newNameAction;
-
-       public ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {
-               super(configurer);
-       }
-
-       protected void makeActions(final IWorkbenchWindow window) {
-               // Creates the actions and registers them.
-               // Registering is needed to ensure that key bindings work.
-               // The corresponding commands keybindings are defined in the plugin.xml
-               // file.
-               // Registering also provides automatic disposal of the actions when
-               // the window is closed.
-
-               exitAction = ActionFactory.QUIT.create(window);
-               register(exitAction);
-               
-               newNameAction = new ActionOpenNameEditor();
-               register(newNameAction);
-       }
-
-       protected void fillMenuBar(IMenuManager menuBar) {
-               MenuManager fileMenu = new MenuManager("&File",
-                               IWorkbenchActionConstants.M_FILE);
-               menuBar.add(fileMenu);
-               fileMenu.add(newNameAction);
-               fileMenu.add(exitAction);
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationWorkbenchAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationWorkbenchAdvisor.java
deleted file mode 100644 (file)
index 70b9b97..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2;
-
-import org.eclipse.ui.application.IWorkbenchConfigurer;
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchAdvisor;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
-
-       private static final String PERSPECTIVE_ID = "eu.etaxonomy.taxeditor.prototype2.perspective";
-
-       public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(
-                       IWorkbenchWindowConfigurer configurer) {
-               return new ApplicationWorkbenchWindowAdvisor(configurer);
-       }
-
-       public String getInitialWindowPerspectiveId() {
-               return PERSPECTIVE_ID;
-       }
-       
-       public void initialize(IWorkbenchConfigurer configurer) {
-               super.initialize(configurer);
-               
-               // Remembers the user's layout and window size 
-               //  for the next time application is started
-               configurer.setSaveAndRestore(true);             
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationWorkbenchWindowAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/ApplicationWorkbenchWindowAdvisor.java
deleted file mode 100644 (file)
index 5b2648f..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2;
-
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-//import eu.etaxonomy.taxeditor.prototype1.controller.PopulateNameListViewAction;
-
-public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor {
-
-       public ApplicationWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) {
-               super(configurer);
-       }
-
-       public ActionBarAdvisor createActionBarAdvisor(
-                       IActionBarConfigurer configurer) {
-               return new ApplicationActionBarAdvisor(configurer);
-       }
-
-       public void preWindowOpen() {
-               IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
-               configurer.setInitialSize(new Point(800, 600));
-               configurer.setShowCoolBar(false);
-               configurer.setShowStatusLine(false);
-               configurer.setTitle("EDIT Taxonomic Editor");
-       }
-       
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Perspective.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/Perspective.java
deleted file mode 100644 (file)
index b3b7891..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2;
-
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPerspectiveFactory;
-
-import eu.etaxonomy.taxeditor.prototype2.view.NameListView;
-
-public class Perspective implements IPerspectiveFactory {
-
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.perspective";
-       
-       public void createInitialLayout(IPageLayout layout) {
-               String editorArea = layout.getEditorArea();
-               layout.addStandaloneView(NameListView.ID, false, IPageLayout.LEFT, 0.30f, editorArea);
-//             layout.addView(UndoView.ID, IPageLayout.BOTTOM, 0.8f, editorArea);
-               layout.getViewLayout(NameListView.ID).setCloseable(false);
-               addFastViews(layout);
-       }
-       private void addFastViews(IPageLayout layout) {
-               System.currentTimeMillis();
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionAddQuickName.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionAddQuickName.java
deleted file mode 100644 (file)
index f579352..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.ui.PlatformUI;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-import eu.etaxonomy.taxeditor.prototype2.view.NameListView;\r
-import eu.etaxonomy.taxeditor.prototype2.view.TaxonomicTreeViewer;\r
-\r
-/**\r
- * Open up a celleditor in the taxonomic tree \r
- *  to add a quickname to taxon\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class ActionAddQuickName extends Action {\r
-       Taxon parentTaxon;\r
-       \r
-       public ActionAddQuickName(Taxon parentTaxon) {\r
-               this.parentTaxon = parentTaxon;\r
-       }\r
-       \r
-       public void run() {\r
-       \r
-               // Create empty Taxon, add it to its parent\r
-               Taxon childTaxon = new Taxon();\r
-               childTaxon.setName(new BotanicalName(Rank.GENUS()));\r
-               \r
-               // TODO getTitleCache is currently returning "null", not null\r
-               //  hence its being set here - change!\r
-               childTaxon.getName().setTitleCache(null);\r
-               parentTaxon.addTaxonomicChild(childTaxon, null, null);\r
-               \r
-               // Add childTaxon to observable tree list, \r
-               //  causing it to appear in the tree\r
-               Activator.getDefault().getObservableTaxonTreeList().add(childTaxon);\r
-               \r
-               // Open new node\r
-               TaxonomicTreeViewer treeViewer = (TaxonomicTreeViewer) ((NameListView) PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().\r
-                               findView(NameListView.ID)).getTreeViewer(); \r
-               treeViewer.revealTaxon(childTaxon);\r
-               \r
-               // Put cursor in empty node\r
-               treeViewer.editElement(childTaxon, 0);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionAddSynonymToTaxon.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionAddSynonymToTaxon.java
deleted file mode 100644 (file)
index e7d9e51..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.TesterooWritableSet;\r
-\r
-/**\r
- * Add a new synonym to a taxon.\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class ActionAddSynonymToTaxon extends Action {\r
-       Taxon taxon;\r
-       Synonym synonym;\r
-       \r
-       public ActionAddSynonymToTaxon(Taxon taxon, Synonym synonym) {\r
-               this.taxon = taxon;\r
-               this.synonym = synonym;\r
-       }\r
-\r
-       public ActionAddSynonymToTaxon(Taxon taxon, String synonymNameCache) {\r
-               this.taxon = taxon;\r
-               this.synonym = new Synonym();\r
-               this.synonym.setName(BotanicalName.PARSED_NAME(synonymNameCache));\r
-       }       \r
-\r
-       public void run() {\r
-               taxon.addSynonym(synonym, SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF());\r
-//             taxon.removeSynonymRelation(synonym.getSynonymRelations()[0]);\r
-                               \r
-               TesterooWritableSet.getInstance().add(synonym);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionDeleteTaxon.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionDeleteTaxon.java
deleted file mode 100644 (file)
index 4dbdc2c..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-/**\r
- * Delete this taxon from the CDM\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class ActionDeleteTaxon extends Action {\r
-       Taxon taxon;\r
-       \r
-       public ActionDeleteTaxon(Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       public void run() {\r
-//             Activator.getDefault().getCdmApp().getTaxonService().saveTaxon(taxon);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionMoveTaxon.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionMoveTaxon.java
deleted file mode 100644 (file)
index ce0e23c..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-\r
-/**\r
- * Moves taxon in the taxonomic tree by assigning it a new parent\r
- *  and triggering observable tree list update\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class ActionMoveTaxon extends Action {\r
-       Taxon taxon;\r
-       Taxon newParentTaxon;\r
-       \r
-       public ActionMoveTaxon(Taxon taxon, Taxon newParentTaxon) {\r
-               this.taxon = taxon;\r
-               this.newParentTaxon = newParentTaxon;\r
-       }\r
-       \r
-       public void run() {\r
-               \r
-               // TODO Taxon.setParentTaxon(newParentTaxon)\r
-               taxon.setTaxonomicParent(newParentTaxon, null, null);\r
-               \r
-               // Trigger re-draw in list by removing then adding taxon\r
-               Activator.getDefault().getObservableTaxonTreeList().remove(taxon);                      \r
-               Activator.getDefault().getObservableTaxonTreeList().add(taxon);\r
-\r
-               // Save the taxon to the CDM\r
-               Activator.getDefault().getCdmApp().getTaxonService().saveTaxon(taxon);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionOpenNameEditor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionOpenNameEditor.java
deleted file mode 100644 (file)
index ad5e147..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-       package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.PlatformUI;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-import eu.etaxonomy.taxeditor.prototype2.model.NameEditorInput;\r
-import eu.etaxonomy.taxeditor.prototype2.view.MultiPageTaxonView;\r
-import eu.etaxonomy.taxeditor.prototype2.view.NameListView;\r
-import eu.etaxonomy.taxeditor.prototype2.view.TaxonomicTreeViewer;\r
-\r
-/**\r
- * Opens a name editor for an existing or new taxon\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class ActionOpenNameEditor extends Action {\r
-\r
-       private Taxon taxon;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.controller.opennameeditoraction"; //$NON-NLS-1$\r
-       \r
-       public ActionOpenNameEditor(Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-\r
-       public ActionOpenNameEditor() {\r
-\r
-               // the text for the menu item\r
-               setText("New taxon");\r
-               \r
-               setId(ID);\r
-               \r
-               this.taxon = new Taxon();\r
-               taxon.setName(new BotanicalName(Rank.GENUS()));\r
-               \r
-       }\r
-       \r
-       public void run() {\r
-\r
-               // If this is a non-empty taxon being opened for the first time,\r
-               //  add to recent names list            \r
-               if (taxon.getName().getTitleCache() != null &&\r
-                               !Activator.getDefault().getObservableRecentNamesList().contains(taxon))\r
-                       Activator.getDefault().getObservableRecentNamesList().add(0, taxon);\r
-               \r
-               // If this taxon is not visible in the tree, open node\r
-               ((TaxonomicTreeViewer) ((NameListView) PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().\r
-                               findView(NameListView.ID)).getTreeViewer()).revealTaxon(taxon);\r
-                               \r
-               IEditorInput input = new NameEditorInput(taxon);\r
-               try {\r
-                               Activator.getDefault().getWorkbench().getActiveWorkbenchWindow().\r
-                                       getActivePage().openEditor(input, MultiPageTaxonView.ID);\r
-                       } catch (PartInitException e) {\r
-                               // TODO Auto-generated catch block\r
-                               e.printStackTrace();\r
-                       }\r
-        \r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionOpenNewChildNameEditor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionOpenNewChildNameEditor.java
deleted file mode 100644 (file)
index 85f1dc8..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-/**\r
- * Opens a name editor for a new taxon with a parent taxon\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class ActionOpenNewChildNameEditor extends Action {\r
-\r
-       private Taxon taxon;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.controller.opennameeditoraction"; //$NON-NLS-1$\r
-       \r
-       public ActionOpenNewChildNameEditor(Taxon parentTaxon) {\r
-               \r
-               taxon = new Taxon();\r
-               taxon.setName(new BotanicalName(Rank.GENUS()));\r
-               \r
-               // TODO getTitleCache is currently returning "null", not null\r
-               //  hence its being set here - change!\r
-               taxon.getName().setTitleCache(null);\r
-               \r
-               parentTaxon.addTaxonomicChild(taxon, null, null);\r
-       }\r
-\r
-       public ActionOpenNewChildNameEditor() {\r
-               setId(ID);\r
-       }\r
-       \r
-       public void run() {\r
-               new ActionOpenNameEditor(taxon).run();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionPopulatePropertySheet.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionPopulatePropertySheet.java
deleted file mode 100644 (file)
index 5cfff72..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-\r
-/**\r
- * Open up a celleditor in the taxonomic tree \r
- *  to add a quickname to taxon\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class ActionPopulatePropertySheet extends Action {\r
-       TaxonNameBase name;\r
-       \r
-       public ActionPopulatePropertySheet(TaxonNameBase name) {\r
-               this.name = name;\r
-       }\r
-       \r
-       public void run() {\r
-       \r
-               \r
-               // Open new node\r
-//             System.out.println(PlatformUI.getWorkbench().getActiveWorkbenchWindow().\r
-//                             getActivePage().getActiveEditor().getSite().getPart()..getId());\r
-//             MultiPageTaxonView mptv;\r
-//             mptv.get\r
-               \r
-               \r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionRemoveTaxonFromTree.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionRemoveTaxonFromTree.java
deleted file mode 100644 (file)
index bb9f747..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-\r
-/**\r
- * Remove a Taxon from the tree without removing it from\r
- *  the CDM, i.e. when a temporary Taxon has been created for\r
- *  quickname\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class ActionRemoveTaxonFromTree extends Action {\r
-       Taxon taxon;\r
-       \r
-       public ActionRemoveTaxonFromTree(Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       public void run() {\r
-       \r
-               // Remove Taxon from taxon tree list\r
-               Activator.getDefault().getObservableTaxonTreeList().remove(taxon);\r
-               \r
-               taxon = null;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionSaveTaxon.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/ActionSaveTaxon.java
deleted file mode 100644 (file)
index bfd1df2..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-\r
-/**\r
- * Commit any changes to this taxon to the CDM\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class ActionSaveTaxon extends Action {\r
-       Taxon taxon;\r
-       \r
-       public ActionSaveTaxon(Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       public void run() {\r
-               \r
-               // If this is a new taxon, add it to the recent names list;\r
-               //  if it is already in the tree, remove then re-add it\r
-               //  to force a re-sort\r
-               if (!Activator.getDefault().getObservableTaxonTreeList().contains(taxon)) {\r
-                       Activator.getDefault().getObservableRecentNamesList().add(0, taxon);\r
-               } else {\r
-                       Activator.getDefault().getObservableTaxonTreeList().remove(taxon);\r
-               }                       \r
-               Activator.getDefault().getObservableTaxonTreeList().add(taxon);\r
-\r
-               // Save the taxon to the CDM\r
-               Activator.getDefault().getCdmApp().getTaxonService().saveTaxon(taxon);\r
-               \r
-               // Notify taxon listeners in case name has been updated \r
-               taxon.firePropertyChange("name", null, null);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/NameTransfer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/NameTransfer.java
deleted file mode 100644 (file)
index cc23293..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.swt.dnd.ByteArrayTransfer;\r
-import org.eclipse.swt.dnd.TransferData;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-\r
-/**\r
- * For drag and drop - a drag widget with this transfer type can only be dropped onto\r
- *  a drop widget with the same type.\r
- *    \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameTransfer extends ByteArrayTransfer {\r
-\r
-       private static final String TYPENAME = "name_type";\r
-       private static final int NAMETYPEID = registerType (TYPENAME);          \r
-       private static final NameTransfer INSTANCE = new NameTransfer();\r
-       \r
-       /*\r
-        * The object associated with this transfer event\r
-        */\r
-       private TaxonNameBase name;\r
-               \r
-       /*\r
-        * Returns the singleton\r
-        */\r
-       public static NameTransfer getInstance() {\r
-               return INSTANCE;\r
-       }\r
-       /*\r
-        * Set transfer data for local use\r
-        */\r
-       public void setName(TaxonNameBase name) {\r
-               this.name = name;\r
-       }\r
-       /*\r
-        * Returns the local transfer data\r
-        */\r
-       public TaxonNameBase getName() {\r
-               return name;\r
-       }\r
-       \r
-       /* \r
-        * The type ID is used to identify this transfer\r
-        */\r
-       @Override\r
-       protected int[] getTypeIds() {\r
-               return new int[] { NAMETYPEID };\r
-       }\r
-\r
-       @Override\r
-       protected String[] getTypeNames() {\r
-               return new String[] { TYPENAME } ;\r
-       }\r
-\r
-       @Override\r
-       protected void javaToNative(Object object, TransferData transferData) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See nativeToJava below\r
-               byte[] check = TYPENAME.getBytes();\r
-               super.javaToNative(check, transferData);\r
-       }\r
-\r
-       @Override\r
-       protected Object nativeToJava(TransferData transferData) {\r
-               Object result = super.nativeToJava(transferData);\r
-               if (isInvalidNativeType(result)) {\r
-                       throw new RuntimeException(); //$NON-NLS-1$\r
-               }\r
-               return name;\r
-       }\r
-       \r
-       private boolean isInvalidNativeType(Object result) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See javaToNative above\r
-               return !(result instanceof byte[])\r
-                               || !TYPENAME.equals(new String((byte[]) result));\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/SynonymRelationshipTransfer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/SynonymRelationshipTransfer.java
deleted file mode 100644 (file)
index 3220701..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.swt.dnd.ByteArrayTransfer;\r
-import org.eclipse.swt.dnd.TransferData;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-\r
-/**\r
- * For drag and drop - a drag widget with this transfer type \r
- *  can only be dropped onto a drop widget with the same type.\r
- *    \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class SynonymRelationshipTransfer extends ByteArrayTransfer {\r
-\r
-       private static final String RELATIONTYPENAME = "relation_type";\r
-       private static final int RELATIONTYPEID = registerType (RELATIONTYPENAME);              \r
-       private static final SynonymRelationshipTransfer INSTANCE = new SynonymRelationshipTransfer();\r
-       \r
-       /*\r
-        * The object associated with this transfer event\r
-        */\r
-       private SynonymRelationship synonymRelationship;\r
-               \r
-       /*\r
-        * Returns the singleton\r
-        */\r
-       public static SynonymRelationshipTransfer getInstance() {\r
-               return INSTANCE;\r
-       }\r
-       /*\r
-        * Set transfer data for local use\r
-        */\r
-       public void setSynonymRelationship(SynonymRelationship synonymRelationship) {\r
-               this.synonymRelationship = synonymRelationship;\r
-       }\r
-       /*\r
-        * Returns the local transfer data\r
-        */\r
-       public SynonymRelationship getSynonymRelationship() {\r
-               return synonymRelationship;\r
-       }\r
-       \r
-       /* \r
-        * The type ID is used to identify this transfer\r
-        */\r
-       @Override\r
-       protected int[] getTypeIds() {\r
-               return new int[] { RELATIONTYPEID };\r
-       }\r
-\r
-       @Override\r
-       protected String[] getTypeNames() {\r
-               return new String[] { RELATIONTYPENAME } ;\r
-       }\r
-\r
-       @Override\r
-       protected void javaToNative(Object object, TransferData transferData) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See nativeToJava below\r
-               byte[] check = RELATIONTYPENAME.getBytes();\r
-               super.javaToNative(check, transferData);\r
-       }\r
-\r
-       @Override\r
-       protected Object nativeToJava(TransferData transferData) {\r
-               Object result = super.nativeToJava(transferData);\r
-               if (isInvalidNativeType(result)) {\r
-                       throw new RuntimeException(); //$NON-NLS-1$\r
-               }\r
-               return synonymRelationship;\r
-       }\r
-       \r
-       private boolean isInvalidNativeType(Object result) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See javaToNative above\r
-               return !(result instanceof byte[])\r
-                               || !RELATIONTYPENAME.equals(new String((byte[]) result));\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/TaxonTransfer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/controller/TaxonTransfer.java
deleted file mode 100644 (file)
index 81d1966..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.controller;\r
-\r
-import org.eclipse.swt.dnd.ByteArrayTransfer;\r
-import org.eclipse.swt.dnd.TransferData;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-\r
-/**\r
- * For drag and drop - a drag widget with this transfer type can only be dropped onto\r
- *  a drop widget with the same type.\r
- *    \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class TaxonTransfer extends ByteArrayTransfer {\r
-\r
-       private static final String TAXONTYPENAME = "taxon_type";\r
-       private static final int TAXONTYPEID = registerType (TAXONTYPENAME);            \r
-       private static final TaxonTransfer INSTANCE = new TaxonTransfer();\r
-       \r
-       /*\r
-        * The object associated with this transfer event\r
-        */\r
-       private TaxonBase taxonBase;\r
-               \r
-       /*\r
-        * Returns the singleton\r
-        */\r
-       public static TaxonTransfer getInstance() {\r
-               return INSTANCE;\r
-       }\r
-       /*\r
-        * Set transfer data for local use\r
-        */\r
-       public void setTaxon(TaxonBase taxon) {\r
-               this.taxonBase = taxon;\r
-       }\r
-       /*\r
-        * Returns the local transfer data\r
-        */\r
-       public TaxonBase getTaxon() {\r
-               return taxonBase;\r
-       }\r
-       \r
-       /* \r
-        * The type ID is used to identify this transfer\r
-        */\r
-       @Override\r
-       protected int[] getTypeIds() {\r
-               return new int[] { TAXONTYPEID };\r
-       }\r
-\r
-       @Override\r
-       protected String[] getTypeNames() {\r
-               return new String[] { TAXONTYPENAME } ;\r
-       }\r
-\r
-       @Override\r
-       protected void javaToNative(Object object, TransferData transferData) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See nativeToJava below\r
-               byte[] check = TAXONTYPENAME.getBytes();\r
-               super.javaToNative(check, transferData);\r
-       }\r
-\r
-       @Override\r
-       protected Object nativeToJava(TransferData transferData) {\r
-               Object result = super.nativeToJava(transferData);\r
-               if (isInvalidNativeType(result)) {\r
-                       throw new RuntimeException(); //$NON-NLS-1$\r
-               }\r
-               return taxonBase;\r
-       }\r
-       \r
-       private boolean isInvalidNativeType(Object result) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See javaToNative above\r
-               return !(result instanceof byte[])\r
-                               || !TAXONTYPENAME.equals(new String((byte[]) result));\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/NameEditorInput.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/NameEditorInput.java
deleted file mode 100644 (file)
index a8398a1..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.model;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IPersistableElement;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-/**\r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameEditorInput implements IEditorInput {\r
-\r
-       private Taxon taxon;\r
-       \r
-       public NameEditorInput (Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       public boolean exists() {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       public ImageDescriptor getImageDescriptor() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getName() {\r
-               if (taxon.getName().getNameCache() == null)\r
-                       return "New taxon";\r
-               else\r
-                       return taxon.getName().getNameCache();\r
-       }\r
-\r
-       public IPersistableElement getPersistable() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getToolTipText() {\r
-               return getName();\r
-       }\r
-\r
-       public Object getAdapter(Class adapter) {\r
-\r
-               if (adapter == Taxon.class) {\r
-                       return this.taxon;\r
-               }\r
-               \r
-               return null;\r
-       }\r
-\r
-    /**\r
-     * Overrides equals to ensure that a taxon can only be edited by\r
-     *  one editor at a time.\r
-     * \r
-     * @return boolean\r
-     */\r
-       public boolean equals(Object obj) {             \r
-               if (this.taxon.equals(((NameEditorInput) obj).taxon))\r
-                       return true;\r
-               return false;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/NameTreeContentProvider.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/NameTreeContentProvider.java
deleted file mode 100644 (file)
index 45ae1ac..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.model;\r
-\r
-import java.util.Set;\r
-\r
-import org.eclipse.core.databinding.observable.Realm;\r
-import org.eclipse.core.databinding.observable.list.IListChangeListener;\r
-import org.eclipse.core.databinding.observable.list.IObservableList;\r
-import org.eclipse.core.databinding.observable.list.ListChangeEvent;\r
-import org.eclipse.core.databinding.observable.list.ListDiffEntry;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.core.databinding.observable.set.IObservableSet;\r
-import org.eclipse.core.databinding.observable.set.WritableSet;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.databinding.swt.SWTObservables;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.viewers.ITreeContentProvider;\r
-import org.eclipse.jface.viewers.Viewer;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.view.TaxonomicTreeViewer;\r
-\r
-/**\r
- * Adds tree functionality (get parent, get children) to ObservableListContentProvider;\r
- *  much code was copied almost in tact from parent class due to\r
- *  viewer type restrictions and private settings of variables and methods\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameTreeContentProvider extends ObservableListContentProvider \r
-               implements ITreeContentProvider {\r
-\r
-       public Object[] getChildren(Object parentElement) {\r
-               Set<Taxon> children = ((Taxon) parentElement).getTaxonomicChildren();\r
-               observableList.addAll(children);\r
-               return children == null ? new Object[0] : children.toArray();\r
-       }\r
-\r
-       public Object getParent(Object element) {\r
-               return ((Taxon) element).getTaxonomicParent();\r
-       }\r
-\r
-       public boolean hasChildren(Object element) {\r
-               return ((Taxon) element).hasTaxonomicChildren();\r
-       }\r
-       \r
-       private IObservableList observableList;\r
-\r
-       private Viewer viewer;\r
-\r
-       private IListChangeListener listener = new IListChangeListener() {\r
-               public void handleListChange(ListChangeEvent event) {\r
-                       if (viewer.getControl().isDisposed()) {\r
-                               return;\r
-                       }\r
-                       ListDiffEntry[] differences = event.diff.getDifferences();\r
-                       for (int i = 0; i < differences.length; i++) {\r
-                               ListDiffEntry entry = differences[i];\r
-                               \r
-                               if (entry.isAddition()) {\r
-                                       \r
-                                       knownElements.add(entry.getElement());\r
-               \r
-                                       ((TaxonomicTreeViewer) viewer).add(\r
-                                                       ((Taxon) entry.getElement()).getTaxonomicParent(), \r
-                                                       entry.getElement());\r
-                               } else {\r
-\r
-                                       knownElements.remove(entry.getElement());\r
-                                       \r
-                                       ((TaxonomicTreeViewer) viewer).remove(entry.getElement());\r
-                               }\r
-                       }\r
-               }\r
-       };\r
-\r
-       private IObservableSet knownElements;\r
-\r
-       /**\r
-        * \r
-        */\r
-       public NameTreeContentProvider() {\r
-               \r
-               Assert.isNotNull(Realm.getDefault());\r
-               \r
-               observableList = new WritableList(SWTObservables.getRealm(Display.getDefault()));\r
-               knownElements = new WritableSet(SWTObservables.getRealm(Display.getDefault()));\r
-       }\r
-\r
-       public Object[] getElements(Object inputElement) {\r
-               return observableList.toArray();\r
-       }\r
-\r
-       public void dispose() {\r
-               observableList.removeListChangeListener(listener);\r
-       }\r
-\r
-       public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {\r
-               this.viewer = viewer;\r
-\r
-               if (newInput != null && !(newInput instanceof IObservableList)) {\r
-                       throw new IllegalArgumentException(\r
-                                       "This content provider only works with input of type IObservableList"); //$NON-NLS-1$\r
-               }\r
-\r
-               setInput((IObservableList) newInput);\r
-       }\r
-\r
-       /**\r
-        * @param list\r
-        */\r
-       private void setInput(IObservableList list) {\r
-               \r
-               if (list == null) {\r
-                       list = new WritableList(SWTObservables.getRealm(Display.getDefault()));\r
-               }\r
-\r
-               if (observableList != null) {\r
-                       observableList.removeListChangeListener(listener);\r
-               }\r
-               \r
-               knownElements.clear();\r
-\r
-               observableList = list;\r
-               \r
-               knownElements.addAll(list);\r
-               \r
-\r
-               observableList.addListChangeListener(listener);\r
-       }\r
-\r
-       /**\r
-        * @return the set of elements known to this content provider. Label providers may track\r
-        * this set if they need to be notified about additions before the viewer sees the added\r
-        * element, and notified about removals after the element was removed from the viewer.\r
-        */\r
-       public IObservableSet getKnownElements() {\r
-               return knownElements;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/PropertySheetNode.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/model/PropertySheetNode.java
deleted file mode 100644 (file)
index 06aaa9f..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.model;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.eclipse.core.databinding.observable.value.IObservableValue;\r
-\r
-/**\r
- * \r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class PropertySheetNode {\r
-       \r
-       private boolean editable;\r
-       private List<PropertySheetNode> childProperties;\r
-       private PropertySheetNode parentProperty;\r
-       private String propertyField;\r
-       private String propertyValue;\r
-       private IObservableValue observeValue;\r
-       \r
-       public static boolean EDITABLE = true;\r
-       public static boolean NOT_EDITABLE = false;\r
-       \r
-       public PropertySheetNode(String field, String value, \r
-                       PropertySheetNode parent, boolean editable) {\r
-               this.propertyField = field;\r
-               this.propertyValue = value;\r
-               this.parentProperty = parent;\r
-               if (parent != null) parent.addChildProperty(this);\r
-               this.editable = editable;\r
-       }\r
-       \r
-       public PropertySheetNode(String field, IObservableValue observeValue, \r
-                       PropertySheetNode parent, boolean editable) {\r
-               this(field, (String) observeValue.getValue(), parent, editable);\r
-               this.observeValue = observeValue;\r
-       }\r
-       \r
-       private void addChildProperty(PropertySheetNode childProperty ) {\r
-               if (childProperties == null)\r
-                       childProperties = new ArrayList<PropertySheetNode>();\r
-               if (!childProperties.contains(childProperty))\r
-                       childProperties.add(childProperty);\r
-       }\r
-\r
-       public boolean isEditable() {\r
-               return editable;\r
-       }\r
-\r
-       public void setEditable(boolean editable) {\r
-               this.editable = editable;\r
-       }\r
-\r
-       public String getPropertyField() {\r
-               return propertyField;\r
-       }\r
-\r
-       public void setPropertyField(String propertyField) {\r
-               this.propertyField = propertyField;\r
-       }\r
-\r
-       public String getPropertyValue() {\r
-               if (observeValue != null)\r
-                       return (String) observeValue.getValue();\r
-               return propertyValue;\r
-       }\r
-\r
-       public void setPropertyValue(String propertyValue) {\r
-               this.propertyValue = propertyValue;\r
-       }\r
-\r
-       public List<PropertySheetNode> getChildProperties() {\r
-               return childProperties;\r
-       }\r
-\r
-       public void setChildProperties(List<PropertySheetNode> subProperties) {\r
-               this.childProperties = subProperties;\r
-       }\r
-\r
-       public PropertySheetNode getParentProperty() {\r
-               return parentProperty;\r
-       }\r
-\r
-       public void setParentProperty(PropertySheetNode parentProperty) {\r
-               this.parentProperty = parentProperty;\r
-       }       \r
-       \r
-       public IObservableValue getObserveValue() {\r
-               return this.observeValue;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/AcceptedNameViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/AcceptedNameViewer.java
deleted file mode 100644 (file)
index 67c32eb..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-public class AcceptedNameViewer extends NameViewer_ {\r
-\r
-       AcceptedNameViewer(TaxonName taxonName, DataBindingContext bindingContext,\r
-                       Composite parent) {\r
-               super(taxonName, bindingContext, parent);\r
-               setViewerLayout();\r
-       }\r
-       \r
-       private void setViewerLayout() {\r
-               styledText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
-               styledText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));                \r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/CarduusEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/CarduusEditorView.java
deleted file mode 100644 (file)
index ea780f6..0000000
+++ /dev/null
@@ -1,471 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.ToolBar;\r
-import org.eclipse.swt.widgets.ToolItem;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionSaveTaxon;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.MySourceViewerConfig;\r
-\r
-//public class CarduusEditorView extends EditorPart implements ICdmEventListener {\r
-public class CarduusEditorView extends EditorPart {\r
-\r
-       private Table table_1;\r
-       private Text carduusLSpText;\r
-       private StyledText styledText;\r
-       private TaxonName taxonname;\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.view.carduuseditorview"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               //\r
-               \r
-               \r
-//             txtPlay = new Text(container, SWT.BORDER);\r
-//             txtPlay.setCapture(true);\r
-//             final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);\r
-//             gd_txtPlay.heightHint = 96;\r
-//             txtPlay.setLayoutData(gd_txtPlay);\r
-////           txtPlay.addVerifyListener(new VerifyListener() {\r
-////                   @Override\r
-////                   public void verifyText(VerifyEvent e) {\r
-////                   e.doit = Character.isDigit(e.character);\r
-////               }           \r
-////           });\r
-//             txtPlay.addSelectionListener(new SelectionListener() {\r
-//\r
-//                     @Override\r
-//                     public void widgetDefaultSelected(SelectionEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//\r
-//                     @Override\r
-//                     public void widgetSelected(SelectionEvent e) {\r
-//                             System.out.println(e.toString());\r
-//                     }\r
-//                     \r
-//                     \r
-//             });\r
-//             \r
-//             \r
-//             txtPlay.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             System.out.println(e.character);\r
-//                             if (e.character == '=') {\r
-//                                     Shell shell = Activator.getDefault().getWorkbench().\r
-//                                             getActiveWorkbenchWindow().getShell();\r
-//                                     PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-////                                   Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-//                                     // Add the items to the list\r
-//                                     String[] OPTIONS = { "Create homo. syn.",\r
-//                                                     "Create hetero. syn.",\r
-//                                                     "Create mis. name",\r
-//                                                     "Create homonym"};\r
-//\r
-//                                     list.setItems(OPTIONS);\r
-//                                     \r
-//                                     // Open the list and get the selected item\r
-//                                     String selected = list.open(txtPlay.getBounds());\r
-//                                     \r
-//                                     // Print the item to the console\r
-//                                     System.out.println(selected);                                   \r
-//                             }\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//             });\r
-               parent.setLayout(new GridLayout());\r
-               Document doc = new Document("");\r
-\r
-               final Label taxonomicallyIncludedInLabel = new Label(parent, SWT.NONE);\r
-               taxonomicallyIncludedInLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));\r
-               taxonomicallyIncludedInLabel.setText("Higher taxon: \"Cardueae Cass.\"");\r
-\r
-               final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
-//             toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
-               itemSave.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemSave.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save.gif"));\r
-               itemSave.addSelectionListener(new SelectionListener() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               \r
-//                             taxonname.setGenus(txtGenus.getText());\r
-//                             taxonname.setSpecificEpithet(txtSpEpi.getText());\r
-                               \r
-                               new ActionSaveTaxon(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               new ActionSaveTaxon(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new ActionSaveTaxon(taxonname).run();\r
-                       }\r
-               });\r
-\r
-               final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemMove.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemMove.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                       }\r
-               });\r
-               \r
-               final Menu menuMove = new Menu(toolBar);\r
-               menuMove.setData("x", null);\r
-               addDropDown(itemMove, menuMove);\r
-\r
-               final MenuItem moveTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               moveTaxonpilosellaMenuItem.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");\r
-\r
-               final MenuItem turnTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               turnTaxonpilosellaMenuItem.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");\r
-               \r
-//             });\r
-//             newItemToolItem.setText("New item");\r
-               itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-\r
-               final ToolItem itemDelete = new ToolItem(toolBar, SWT.NONE);\r
-               itemDelete.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemDelete.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-                               \r
-               final ToolItem separator1 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddRelationship.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/rel_no_bg.gif"));\r
-               \r
-               final Menu menuAddRel = new Menu(toolBar);\r
-               menuAddRel.setData("x", null);\r
-               addDropDown(itemAddRelationship, menuAddRel);\r
-\r
-               final MenuItem testMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               testMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               testMenuItem.setText("Add synonymy (type unknown)");\r
-\r
-               final MenuItem addHomotypicSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomotypicSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               addHomotypicSynonymMenuItem.setText("Add homotypic synonym");\r
-\r
-               final MenuItem addHeterotypicSynoynmMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHeterotypicSynoynmMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               addHeterotypicSynoynmMenuItem.setText("Add heterotypic synoynm");\r
-\r
-               final MenuItem addBasionymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addBasionymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               addBasionymMenuItem.setText("Add basionym");\r
-\r
-               final MenuItem addReplacedSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addReplacedSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               addReplacedSynonymMenuItem.setText("Add replaced synonym");\r
-\r
-               final MenuItem addHomonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               addHomonymMenuItem.setText("Add homonym");\r
-\r
-               final MenuItem addOrthographicVariantMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addOrthographicVariantMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               addOrthographicVariantMenuItem.setText("Add orthographic variant");\r
-\r
-               final MenuItem addMisappliedNameMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addMisappliedNameMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               addMisappliedNameMenuItem.setText("Add misapplied name");\r
-\r
-               final MenuItem addConceptRelationMenuItem_1 = new MenuItem(menuAddRel, SWT.CASCADE);\r
-               addConceptRelationMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               addConceptRelationMenuItem_1.setText("Add concept relation");\r
-\r
-               final Menu menu = new Menu(addConceptRelationMenuItem_1);\r
-               addConceptRelationMenuItem_1.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setText("congruent");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setSelection(true);\r
-               checkboxMenuItem_1.setText("included in");\r
-\r
-               final MenuItem checkboxMenuItem_2 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_2.setText("includes");\r
-\r
-               final MenuItem checkboxMenuItem_3 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_3.setText("overlaps");\r
-\r
-               final MenuItem checkboxMenuItem_4 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_4.setText("excludes");\r
-\r
-               final MenuItem checkboxMenuItem_5 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_5.setSelection(true);\r
-               checkboxMenuItem_5.setText("doubtful");\r
-               \r
-               final ToolItem separator2 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddTaxon = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddTaxon.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add_no_bg2.gif"));\r
-               itemAddTaxon.setToolTipText("Add new taxon");\r
-\r
-               final Menu menuAdd = new Menu(toolBar);\r
-               menuAdd.setData("x", null);\r
-               addDropDown(itemAddTaxon, menuAdd);\r
-\r
-               final MenuItem addTaxonToMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addTaxonToMenuItem.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final MenuItem addNewTaxonMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addNewTaxonMenuItem.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final Composite composite = new Composite(parent, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.marginWidth = 0;\r
-               gridLayout_2.marginHeight = 0;\r
-//             gridLayout_2.horizontalSpacing = 3;\r
-               gridLayout_2.numColumns = 2;\r
-               composite.setLayout(gridLayout_2);\r
-\r
-               carduusLSpText = new Text(composite, SWT.WRAP);\r
-               carduusLSpText.setText("Carduus L., Sp. Pl.: 820. 1753");\r
-               carduusLSpText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
-               final GridData gd_carduusLSpText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_carduusLSpText.verticalIndent = 2;\r
-               gd_carduusLSpText.heightHint = 169;\r
-               gd_carduusLSpText.horizontalIndent = 2;\r
-               carduusLSpText.setLayoutData(gd_carduusLSpText);\r
-               carduusLSpText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               carduusLSpText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               carduusLSpText.setBackground(null);                             \r
-                       }\r
-\r
-               });\r
-\r
-               table_1 = new Table(composite, SWT.BORDER);\r
-               table_1.setLinesVisible(true);\r
-               table_1.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, true, true, 1, 2));\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn.setMoveable(true);\r
-               newColumnTableColumn.setWidth(100);\r
-               newColumnTableColumn.setText("New column");\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn_1.setMoveable(true);\r
-               newColumnTableColumn_1.setWidth(100);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem.setText(0, "Rank");\r
-               newItemTableItem.setText(1, "genus");\r
-               newItemTableItem.setText("Rank");\r
-               \r
-               final TableItem newItemTableItem_1 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Carduus");\r
-               newItemTableItem_1.setText(0, "Genus");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_2.setText(0, "Species epithet");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "L.");\r
-               newItemTableItem_3.setText(0, "Author team");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_4.setText("...");\r
-//             newItemTableItem_2.setText("Species epithet");\r
-//             newItemTableItem_1.setText("Genus");\r
-               //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               SourceViewer sourceviewer = new SourceViewer(composite, null, SWT.WRAP | SWT.FULL_SELECTION | SWT.SINGLE);\r
-               sourceviewer.setAnnotationHover(null);\r
-               styledText = sourceviewer.getTextWidget();\r
-               styledText.setIndent(2);\r
-               final GridData gd_styledText = new GridData(SWT.FILL, SWT.FILL, true, true);\r
-//             gd_styledText.heightHint = 41;\r
-//             gd_styledText.widthHint = 450;\r
-               styledText.setLayoutData(gd_styledText);\r
-               sourceviewer.setDocument(doc);\r
-               sourceviewer.configure(new MySourceViewerConfig());\r
-               sourceviewer.setTabsToSpacesConverter(null);\r
-\r
-               \r
-//             final Menu menu = new Menu(toolBar);\r
-//             addDropDown(newItemToolItem, menu);\r
-//             );\r
-               \r
-//             Action testAction = new ActionOpenNameEditor();\r
-//             testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));\r
-//             testAction.setToolTipText("Add relation");\r
-//             toolBar.add(testAction);\r
-               \r
-               populateForm();         \r
-       }\r
-\r
-//     private void populateForm() {\r
-//             \r
-//             String fulltext = "";\r
-//             \r
-//             if (taxonname.getGenus() != null) {\r
-//                     fulltext = taxonname.getGenus();\r
-//             }\r
-//\r
-//             if (taxonname.getSpecificEpithet() != null) {\r
-//                     fulltext += " " + taxonname.getSpecificEpithet();\r
-//             }\r
-//\r
-//             if (taxonname.getAuthorship() != null) {\r
-//                     fulltext += " " + taxonname.getAuthorship();\r
-//             }\r
-//             \r
-////           txtPlay.setText(fulltext);\r
-////           txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");\r
-//             \r
-//             this.setPartName(taxonname.getName());\r
-//     }\r
-\r
-       private void populateForm() {\r
-               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-       }\r
-       \r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       public void propertyChange(PropertyChangeEvent evt) {\r
-//             TaxonName taxonname = (TaxonName)evt.getNewValue();\r
-               this.taxonname = (TaxonName)evt.getNewValue();\r
-               System.out.println(((TaxonName)evt.getNewValue()).getName());\r
-               populateForm();\r
-               \r
-               // for individual fields, do something like:\r
-               //      if (evt.getPropertyName().equalsIgnoreCase("genus"))\r
-               //              txtGenus.setText ...\r
-       }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-       \r
-       private static void addDropDown(final ToolItem item, final Menu menu) {\r
-               item.addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               if (event.detail == SWT.ARROW) {\r
-                                       Rectangle rect = item.getBounds();\r
-                                       Point pt = new Point(rect.x, rect.y + rect.height);\r
-                                       pt = item.getParent().toDisplay(pt);\r
-                                       menu.setLocation(pt.x, pt.y);\r
-                                       menu.setVisible(true);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/EditNameProperties.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/EditNameProperties.java
deleted file mode 100644 (file)
index c537fb9..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.dialogs.PropertyPage;\r
-\r
-public class EditNameProperties extends PropertyPage {\r
-\r
-       /**\r
-        * Create the property page\r
-        */\r
-       public EditNameProperties() {\r
-               super();\r
-       }\r
-\r
-       /**\r
-        * Create contents of the property page\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public Control createContents(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               //\r
-               return container;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/EmptyEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/EmptyEditorView.java
deleted file mode 100644 (file)
index f92c622..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-\r
-public class EmptyEditorView extends EditorPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.view.EmptyEditorView"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               //\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input)\r
-                       throws PartInitException {\r
-               // Initialize the editor part\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/MoveDialogView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/MoveDialogView.java
deleted file mode 100644 (file)
index 5fe7da8..0000000
+++ /dev/null
@@ -1,243 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.jface.dialogs.IDialogConstants;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.jface.viewers.TreeViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-\r
-public class MoveDialogView extends Dialog {\r
-\r
-       private Text searchText;\r
-       private TaxonomicTreeViewer treeViewer;\r
-       private Label selectedTaxonNameLabel;\r
-       private Taxon taxon;\r
-       \r
-       private List<Button> buttons = new ArrayList<Button>();\r
-       \r
-       public int open(Taxon taxon) {\r
-               this.taxon = taxon;\r
-               return super.open();\r
-       }\r
-       /**\r
-        * Create the dialog\r
-        * @param parentShell\r
-        */\r
-       public MoveDialogView(Shell parentShell) {\r
-               super(parentShell);\r
-       }\r
-\r
-       /**\r
-        * Create contents of the dialog\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected Control createDialogArea(Composite parent) {\r
-               parent.setRedraw(true);\r
-               Composite container = (Composite) super.createDialogArea(parent);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               container.setLayout(gridLayout);\r
-\r
-               final Label youHaveChosenLabel = new Label(container, SWT.WRAP);\r
-               final GridData gd_youHaveChosenLabel = new GridData(SWT.LEFT, SWT.FILL, true, false, 2, 1);\r
-//             gd_youHaveChosenLabel.heightHint = 30;\r
-               youHaveChosenLabel.setLayoutData(gd_youHaveChosenLabel);\r
-//             youHaveChosenLabel.setText("You have chosen to turn \"" + taxon.getName().getNameCache() +\r
-//                             "\" into a synonym. Please choose a new accepted name from one of the following options.");\r
-               youHaveChosenLabel.setText("Choose a taxonomic parent for \"" + taxon.getName().getTitleCache() +\r
-               "\".");         \r
-\r
-               final Group group_1 = new Group(container, SWT.NONE);\r
-               group_1.setLayout(new GridLayout());\r
-               final GridData gd_group_1 = new GridData(SWT.FILL, SWT.FILL, true, true);\r
-               gd_group_1.heightHint = 83;\r
-               group_1.setLayoutData(gd_group_1);\r
-\r
-               final Button chooseAcceptedNameButton = new Button(group_1, SWT.RADIO);\r
-               buttons.add(chooseAcceptedNameButton);\r
-               chooseAcceptedNameButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               chooseAcceptedNameButton.setText("Choose from taxonomic tree");\r
-\r
-               treeViewer = new TaxonomicTreeViewer(group_1);\r
-               treeViewer.getTree().addFocusListener(new SelectButtonFocusListener(chooseAcceptedNameButton));\r
-               treeViewer.addDoubleClickListener(new SelectTaxonDoubleClickListener()); \r
-\r
-               final Composite composite = new Composite(container, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setLayout(new FillLayout(SWT.VERTICAL | SWT.HORIZONTAL));\r
-               \r
-               final Group group = new Group(composite, SWT.NONE);\r
-               group.setLayout(new GridLayout());\r
-\r
-               final Button chooseAcceptedTaxonButton = new Button(group, SWT.RADIO);\r
-               buttons.add(chooseAcceptedTaxonButton);\r
-               chooseAcceptedTaxonButton.setText("Choose from recently viewed taxa");\r
-\r
-               TableViewer recentNamesViewer = new RecentNamesTableViewer(group);\r
-               recentNamesViewer.addDoubleClickListener(new SelectTaxonDoubleClickListener());\r
-               recentNamesViewer.getTable().addFocusListener(new SelectButtonFocusListener(chooseAcceptedTaxonButton));\r
-               \r
-               final Group group_2 = new Group(composite, SWT.NONE);\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               group_2.setLayout(gridLayout_1);\r
-\r
-               final Button searchForNameButton = new Button(group_2, SWT.RADIO);\r
-               buttons.add(searchForNameButton);\r
-               searchForNameButton.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));\r
-               searchForNameButton.setText("Search for name of accepted taxon");\r
-               new Label(group_2, SWT.NONE);\r
-               \r
-               searchText = new Text(group_2, SWT.BORDER);\r
-               searchText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               searchText.setText("Use \"*\" for wildcard searching");\r
-               searchText.addFocusListener(new SelectButtonFocusListener(searchForNameButton) {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               selectButton(button);\r
-                               searchText.setForeground(SWTResourceManager.getColor(0,0,0));\r
-                               searchText.setText("");\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               if (searchText.getText() == "") {\r
-                                       searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                       searchText.setText("Use \"*\" for wildcard searching");                                 \r
-                               }\r
-                       }\r
-                       \r
-               });\r
-\r
-               final Button searchButton = new Button(group_2, SWT.NONE);\r
-               searchButton.setLayoutData(new GridData());\r
-               searchButton.setText("Search");\r
-\r
-               final Composite composite_1 = new Composite(container, SWT.NONE);\r
-               composite_1.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 2, 1));\r
-               composite_1.setLayout(new FillLayout());\r
-\r
-               new Label(composite_1, SWT.NONE).setText("Selected taxon: ");\r
-\r
-               selectedTaxonNameLabel = new Label(composite_1, SWT.RIGHT);\r
-               selectedTaxonNameLabel.setFont(SWTResourceManager.getFont("", 9, SWT.BOLD));\r
-               selectedTaxonNameLabel.setText("");\r
-               new Label(container, SWT.NONE);\r
-               \r
-               \r
-               //\r
-               initButtons();\r
-               \r
-               return container;\r
-       }\r
-\r
-       /**\r
-        * Create contents of the button bar\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected void createButtonsForButtonBar(Composite parent) {\r
-               createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,\r
-                               true);\r
-               createButton(parent, IDialogConstants.CANCEL_ID,\r
-                               IDialogConstants.CANCEL_LABEL, false);\r
-       }\r
-\r
-       private void initButtons() {\r
-               for ( Button button : buttons) {\r
-                       button.addSelectionListener(new SelectionAdapter() {\r
-                               public void widgetSelected(final SelectionEvent e) {\r
-                                       selectButton((Button) e.getSource());\r
-                               }\r
-                       });                     \r
-               }\r
-       }\r
-       \r
-       /**\r
-        * Since buttons are not in the same layout group, the others are not automatically \r
-        *  deselected when one is selected. This method takes care of that.\r
-        * @param button\r
-        */\r
-       private void selectButton(Button selectedButton) {\r
-               for ( Button button : buttons) {\r
-                       if (button == selectedButton)\r
-                               button.setSelection(true);\r
-                       else\r
-                               button.setSelection(false);\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * Return the initial size of the dialog\r
-        */\r
-       @Override\r
-       protected Point getInitialSize() {\r
-               return new Point(700, 500);\r
-       }\r
-       protected void configureShell(Shell newShell) {\r
-               super.configureShell(newShell);\r
-               newShell.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/edit_16x16.ico"));\r
-               newShell.setText("Choose parent taxon for \"" + taxon.getName().getTitleCache() +\r
-                               "\"");\r
-       }\r
-\r
-       class SelectButtonFocusListener implements FocusListener {\r
-\r
-               Button button; // the button that should be selected\r
-               \r
-               SelectButtonFocusListener(Button button) {\r
-                       this.button = button;\r
-               }\r
-               \r
-               public void focusGained(FocusEvent e) {\r
-                       selectButton(button);\r
-               }\r
-\r
-               public void focusLost(FocusEvent e) {                   \r
-               }\r
-               \r
-       }\r
-       \r
-       class SelectTaxonDoubleClickListener implements IDoubleClickListener {\r
-\r
-               public void doubleClick(DoubleClickEvent event) {                                                               \r
-//                     TaxonName taxonname = null;\r
-                       Taxon taxon = null;\r
-                       try {\r
-                               taxon = (Taxon) ((StructuredSelection)event.getSelection()).getFirstElement();\r
-                       }catch (Exception e){\r
-                               e.printStackTrace();\r
-                               taxon = null;\r
-                       }\r
-                       selectedTaxonNameLabel.setText(taxon.getName().getTitleCache());\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/MultiPageTaxonView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/MultiPageTaxonView.java
deleted file mode 100644 (file)
index 978fb31..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.MultiPageEditorPart;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-/**\r
- * \r
- * Generates the tabbed editor with Name view on top and tabs for\r
- *  "Facts", "Specimen", "Geography", etc.\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class MultiPageTaxonView extends MultiPageEditorPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.view.multipagetaxonview";\r
-       private Taxon taxon;\r
-       \r
-       @Override\r
-       protected void createPages() {\r
-               \r
-               try {\r
-                       addPage(0, new NameEditorView(), getEditorInput());\r
-                       setPageText(0, "Name");\r
-\r
-                       addPage(1, new NameEditorView(), getEditorInput());\r
-                       setPageText(1, "Descriptive");\r
-                       \r
-                       addPage(2, new NameEditorView(), getEditorInput());\r
-                       setPageText(2, "Concepts");\r
-                       \r
-                       addPage(3, new NameEditorView(), getEditorInput());\r
-                       setPageText(3, "Geographic");\r
-                       \r
-               } catch (PartInitException e) {                 \r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-               \r
-//             bindPartName();\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-               \r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               // Get taxon from editor input\r
-               if (input.getAdapter(Taxon.class) != null) {\r
-                       taxon = (Taxon) input.getAdapter(Taxon.class);\r
-               } else {\r
-                       taxon = null;\r
-               }\r
-\r
-               // Listen for name changes fired when taxon is saved; \r
-               //  change tab for this taxon editor accordingly\r
-               taxon.addPropertyChangeListener("name", new PropertyChangeListener() {\r
-                       public void propertyChange(PropertyChangeEvent e) {\r
-                               setPartName(taxon.getName().getTitleCache());\r
-                       }\r
-               });\r
-\r
-                // Any taxon that has been saved will by necessity have a name;\r
-                //  only a new taxon will not\r
-               if (taxon.getName().getTitleCache() == null)\r
-                       setPartName("New taxon");\r
-               else\r
-                       setPartName(taxon.getName().getTitleCache());\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameEditorView.java
deleted file mode 100644 (file)
index 60fbc44..0000000
+++ /dev/null
@@ -1,636 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.set.ISetChangeListener;\r
-import org.eclipse.core.databinding.observable.set.SetChangeEvent;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DropTarget;\r
-import org.eclipse.swt.dnd.DropTargetAdapter;\r
-import org.eclipse.swt.dnd.DropTargetEvent;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.MouseListener;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.CoolBar;\r
-import org.eclipse.swt.widgets.CoolItem;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Link;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.ToolBar;\r
-import org.eclipse.swt.widgets.ToolItem;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-import org.eclipse.ui.part.WorkbenchPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionDeleteTaxon;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionOpenNameEditor;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionOpenNewChildNameEditor;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionSaveTaxon;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.TaxonTransfer;\r
-import eu.etaxonomy.taxeditor.prototype2.model.PropertySheetNode;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.GroupComposite;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.NameComposite;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.TesterooWritableSet;\r
-import eu.etaxonomy.taxeditor.prototype2.view.propertysheetsupport.PropertySheetContentProvider;\r
-import eu.etaxonomy.taxeditor.prototype2.view.propertysheetsupport.PropertySheetValueEditingSupport;\r
-import eu.etaxonomy.taxeditor.prototype2.view.propertysheetsupport.PropertySheetValueLabelProvider;\r
-\r
-/**\r
- * TODO: user should always know what kind of name - BotanicalName,\r
- *        ZoologicalName, etc. - he will be editing when a new taxon\r
- *        is created\r
- *        \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameEditorView extends EditorPart {\r
-       /**\r
-        * The taxon the editor is editing \r
-        */\r
-       private Taxon taxon;\r
-       /**\r
-        * The higher taxon of the taxon the editor is editing \r
-        */\r
-       private Taxon higherTaxon = null;       \r
-       /**\r
-        * Shared listener that sets dirty state to true \r
-        *  when any registered property changes \r
-        */\r
-       private PropertyChangeListener taxonChangeListener = new PropertyChangeListener() {\r
-               public void propertyChange(PropertyChangeEvent arg0) {\r
-                       dirty = true;\r
-                       firePropertyChange(PROP_DIRTY);\r
-               }\r
-       };      \r
-       /**\r
-        * Arrays for the creation of synonyms - text and images \r
-        */\r
-       String [] relTypes = {"a synonym (type unknown)",\r
-                       "a homotypic synonym",\r
-                       "a heterotypic synoynm",\r
-                       "a basionym",\r
-                       "a replaced synonym",\r
-                       "a homonym",\r
-                       "an orthographic variant",\r
-                       "a misapplied name",\r
-                       "a concept relation"};\r
-       String [] relImgs = {"unknown_no_bg.gif",\r
-                       "homosyn_no_bg.gif",\r
-                       "heterosyn_no_bg.gif",\r
-                       "basionym_no_bg.gif",\r
-                       "repsyn_no_bg.gif",\r
-                       "homonym_no_bg.gif",\r
-                       "orthovariant_no_bg.gif",\r
-                       "misapplied_no_bg.gif",\r
-                       "concept_no_bg.gif"};\r
-       String [] conceptTypes = {"congruent","included in","includes","overlaps","excludes","doubtful"};\r
-       /**\r
-        * If true, show "save" prompt before closing editor \r
-        */\r
-       public boolean dirty = false;\r
-       String clickText;\r
-       \r
-       private Composite nameComposite;\r
-       private Composite contentComposite;\r
-       \r
-       private PropertySheetViewer propertySheetViewer;\r
-       private Composite parent;\r
-       \r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.view.nameeditorview"; //$NON-NLS-1$\r
-\r
-       public NameEditorView() {\r
-               \r
-       }\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-       \r
-               this.parent = parent;\r
-               parent.setLayout(new GridLayout());\r
-               parent.setRedraw(true);\r
-                               \r
-               \r
-               createHigherTaxon();\r
-               \r
-\r
-               final CoolBar coolBar = new CoolBar(parent, SWT.NONE);\r
-               new CoolItem(coolBar, SWT.PUSH).setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save_edit.gif"));\r
-               \r
-               final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
-//             toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
-               itemSave.setToolTipText("Save taxon");\r
-               itemSave.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save_edit.gif"));\r
-               itemSave.addSelectionListener(new SelectionListener() {\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               dirty = false;\r
-                               new ActionSaveTaxon(taxon).run();\r
-                       }\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               dirty = false;\r
-                               new ActionSaveTaxon(taxon).run();\r
-                       }\r
-               });\r
-\r
-               final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemMove.setToolTipText("Move taxon");\r
-               \r
-               final Menu menuMove = new Menu(toolBar);\r
-               addDropDown(itemMove, menuMove);\r
-\r
-               final MenuItem moveTaxonMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               moveTaxonMenuItem.setText("Move taxon to another higher taxon");\r
-               moveTaxonMenuItem.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                               new MoveDialogView(getSite().getShell());                               \r
-                               MoveDialogView dialog = new MoveDialogView(getSite().getShell());\r
-                               dialog.open(taxon);                             \r
-                       }\r
-               });\r
-\r
-               final MenuItem taxonToSynonymMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               taxonToSynonymMenuItem.setSelection(true);\r
-               taxonToSynonymMenuItem.setText("Turn taxon's accepted name into a synonym");            \r
-               taxonToSynonymMenuItem.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                               new MoveDialogView(getSite().getShell());                               \r
-                               MoveDialogView dialog = new MoveDialogView(getSite().getShell());\r
-                               dialog.open(taxon);                             \r
-                       }\r
-               });\r
-\r
-               itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/correction_change.gif"));\r
-\r
-               final ToolItem itemDelete = new ToolItem(toolBar, SWT.NONE);\r
-               itemDelete.setToolTipText("Delete taxon");\r
-               itemDelete.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete_edit.gif"));\r
-               itemDelete.addSelectionListener(new SelectionListener() {\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               // TODO Auto-generated method stub\r
-                               \r
-                       }\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new ActionDeleteTaxon(taxon).run();\r
-                       }\r
-               });\r
-                               \r
-               new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddRelationship.setToolTipText("Add nom. or tax. relation to taxon");               \r
-               itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/rel_no_bg.gif"));\r
-\r
-               /*\r
-                * Create menu to add relations to the taxon\r
-                */\r
-               final Menu menuAddRel = new Menu(toolBar);\r
-               addDropDown(itemAddRelationship, menuAddRel);\r
-\r
-               for (int i = 0; i < relTypes.length; i++) {\r
-                       final MenuItem menuItem;\r
-                       if (relTypes[i].contains("concept")) {\r
-                               menuItem = new MenuItem(menuAddRel, SWT.CASCADE);\r
-                               \r
-                               final Menu conceptMenu = new Menu(menuItem);\r
-                               menuItem.setMenu(conceptMenu);\r
-                               \r
-                               for (int j = 0; j < conceptTypes.length; j++) {\r
-                                       final MenuItem conceptMenuItem = new MenuItem(conceptMenu, SWT.CHECK);\r
-                                       conceptMenuItem.setText(conceptTypes[j]);\r
-                               }       \r
-                       } else {\r
-                               menuItem = new MenuItem(menuAddRel, SWT.NONE);                          \r
-                       }\r
-                       \r
-                       menuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/" + relImgs[i]));\r
-                       menuItem.setText("Add " + relTypes[i]);\r
-               }\r
-               \r
-               new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddTaxon = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddTaxon.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add_edit.gif"));\r
-               itemAddTaxon.setToolTipText("Add new taxon");\r
-\r
-               /*\r
-                *  drop-down to add new "included in" taxon\r
-                */             \r
-               final Menu menuAdd = new Menu(toolBar);\r
-               addDropDown(itemAddTaxon, menuAdd);\r
-\r
-               if (higherTaxon != null) {\r
-                       final MenuItem addToHigherTaxonItem = new MenuItem(menuAdd, SWT.NONE);\r
-                       addToHigherTaxonItem.setText("Add new taxon to \"" + higherTaxon.getName().getTitleCache() + "\"");\r
-                       addToHigherTaxonItem.addSelectionListener(new SelectionListener() {\r
-                               public void widgetDefaultSelected(SelectionEvent e) {\r
-                                       // TODO Auto-generated method stub\r
-                                       \r
-                               }\r
-                               public void widgetSelected(SelectionEvent e) {\r
-                                       new ActionOpenNewChildNameEditor(higherTaxon).run();\r
-                               }               \r
-                       });\r
-               }\r
-               final MenuItem addTaxonItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addTaxonItem.setText("Add new taxon to this taxon");\r
-               addTaxonItem.addSelectionListener(new SelectionListener() {\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               // TODO Auto-generated method stub\r
-                               \r
-                       }\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new ActionOpenNewChildNameEditor(taxon).run();\r
-                       }               \r
-               });\r
-\r
-               contentComposite = new Composite(parent, SWT.NONE);\r
-               contentComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               contentComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.marginHeight = 0;\r
-               gridLayout_2.marginWidth = 0;\r
-               gridLayout_2.numColumns = 2;\r
-               contentComposite.setLayout(gridLayout_2);\r
-               contentComposite.setRedraw(true);\r
-\r
-               \r
-               nameComposite = new Composite(contentComposite, SWT.NONE);\r
-               nameComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               nameComposite.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, true));\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.verticalSpacing = 10;\r
-               nameComposite.setLayout(gridLayout);            \r
-               nameComposite.setRedraw(true);\r
-               \r
-               \r
-//             clickText = "Click here to start entering accepted name or enter its individual fields in the property sheet to the right";\r
-//             NameViewer_ acceptedNameViewer = new AcceptedNameViewer(taxon, bindingContext, nameComposite);\r
-//             acceptedNameViewer.setBindingContext(bindingContext);\r
-//             acceptedNameViewer.configure(new NameViewerConfig());\r
-               \r
-               GroupComposite homoGroupComposite = new GroupComposite(nameComposite);\r
-               homoGroupComposite.setTaxon(taxon);\r
-               homoGroupComposite.setNameEditorView(this);\r
-               \r
-               new NameComposite(homoGroupComposite, taxon).setNameEditorView(this);\r
-               \r
-               TesterooWritableSet.getInstance().addSetChangeListener\r
-               (new ISetChangeListener() {\r
-                       public void handleSetChange(SetChangeEvent event) {\r
-                               for ( Object addition: event.diff.getAdditions()) {\r
-                                       if (addition instanceof Synonym)\r
-                                               createHeterotypicalGroup((Synonym) addition);\r
-                               }\r
-                               nameComposite.layout();\r
-                               contentComposite.layout();\r
-                       }\r
-               });\r
-               \r
-               // Listen for names being dragged outside of existing homotypic groups -\r
-               //  user wants to create a new group\r
-               // Drop functionality\r
-               Transfer[] types = new Transfer[] {TaxonTransfer.getInstance()};\r
-               int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_DEFAULT;\r
-               DropTarget target = new DropTarget(nameComposite, operations);\r
-               target.setTransfer(types);\r
-               target.addDropListener(dropTargetAdapter);\r
-               \r
-               /*\r
-                *  construct PropertySheetViewer, with bindings to model layer\r
-                */\r
-               propertySheetViewer = new PropertySheetViewer(contentComposite);\r
-               \r
-               propertySheetViewer.setContentProvider(\r
-                               new PropertySheetContentProvider());\r
-               propertySheetViewer.getPropertyValueColumn().setLabelProvider(\r
-                               new PropertySheetValueLabelProvider(propertySheetViewer));\r
-               propertySheetViewer.getPropertyValueColumn().setEditingSupport(\r
-                               new PropertySheetValueEditingSupport(propertySheetViewer));\r
-               \r
-               setPropertySheetNodes(taxon.getName());         \r
-       }\r
-       \r
-       /**\r
-        * Display hyperlinked higher taxon, if there is one\r
-        */\r
-       private void createHigherTaxon() {\r
-               Composite higherTaxonComposite = new Composite(parent, SWT.NONE);\r
-               higherTaxonComposite.setLayout(new FillLayout());\r
-               (new Label(higherTaxonComposite, SWT.NONE)).setText("Higher taxon:  ");\r
-               if (higherTaxon == null)\r
-                       (new Label(higherTaxonComposite, SWT.NONE)).setText("none");\r
-               else {\r
-                       Link higherTaxonLink = new Link(higherTaxonComposite, SWT.NONE);\r
-                       higherTaxonLink.setText("<a href=\"#\">" + higherTaxon.getName().getTitleCache() + "</a>");\r
-                       higherTaxonLink.addMouseListener(new MouseListener() {\r
-                               public void mouseDoubleClick(MouseEvent e) {\r
-                                       new ActionOpenNameEditor(higherTaxon).run();                                    \r
-                               }\r
-                               public void mouseDown(MouseEvent e) {\r
-                                       new ActionOpenNameEditor(higherTaxon).run();\r
-                               }\r
-                               public void mouseUp(MouseEvent e) {\r
-                               }               \r
-                       });\r
-               }               \r
-       }\r
-       public void setPropertySheetNodes(TaxonNameBase taxonname) {\r
-               propertySheetViewer.setInput(getPropertySheetNodes(taxonname));\r
-               propertySheetViewer.setExpandedState(fullTitleNode, true);\r
-       }\r
-\r
-       private SourceViewer createAcceptedName_() {\r
-               \r
-//             Method[] methods = BotanicalName.class.getMethods();\r
-//             for (int i = 0; i < methods.length; i++) {\r
-//                     System.out.println("Annotations:");\r
-//                     for (int j = 0; i < methods[j].getAnnotations().length; j++)\r
-//                             System.out.println("\t" + methods[i].getAnnotations()[j]);\r
-//                     System.out.println("Type: " + methods[i].getReturnType().toString());\r
-//                     System.out.println("Name:" + methods[i].getName());\r
-//                     System.out.println();\r
-//             }\r
-               // use annotations to find persistent methods\r
-               \r
-               \r
-//             PropertyDescriptor descriptor;\r
-//             try {\r
-//                     descriptor = new PropertyDescriptor("genus", taxonname.getClass());\r
-//                     try {\r
-//                             System.out.println("Property desc. test in createAcceptedName: " \r
-//                                             + descriptor.getReadMethod().invoke(taxonname, null));\r
-//                     } catch (IllegalArgumentException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-//                     } catch (IllegalAccessException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-//                     } catch (InvocationTargetException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-//                     }\r
-//             } catch (IntrospectionException e) {\r
-//                     // TODO Auto-generated catch block\r
-//                     e.printStackTrace();\r
-//             } \r
-               \r
-               final SourceViewer sourceViewer = new SourceViewer(nameComposite, null, 0); // createSourceViewer(taxon.getName());\r
-               \r
-               sourceViewer.getTextWidget().setLayoutData(\r
-                               new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
-               sourceViewer.getTextWidget().setFont(\r
-                               SWTResourceManager.getFont("Georgia", 12, SWT.NONE));           \r
-               \r
-               /*\r
-                *  if this is a new name, show text prompt to start entering data\r
-                */\r
-               if (taxon.getName().getNameCache() == null) {\r
-                       clickText = "Click here to start entering accepted name or enter individual fields in the property sheet to the right";\r
-                       \r
-                       sourceViewer.getTextWidget().setText(clickText);\r
-                       sourceViewer.getTextWidget().setFont(SWTResourceManager.getFont("Georgia", 12, SWT.ITALIC));\r
-                       sourceViewer.getTextWidget().setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                       sourceViewer.getTextWidget().addFocusListener(new FocusListener() {\r
-                               public void focusGained(FocusEvent e) {\r
-                                       if (!dirty) {\r
-                                               sourceViewer.getTextWidget().setText("");\r
-                                               sourceViewer.getTextWidget().setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
-                                               sourceViewer.getTextWidget().setForeground(SWTResourceManager.getColor(0, 0, 0));\r
-//                                             dirty = true;\r
-//                                             firePropertyChange(PROP_DIRTY);\r
-                                       }\r
-                               }\r
-                               public void focusLost(FocusEvent e) {                           \r
-                                       if (sourceViewer.getTextWidget().getText() == "") {\r
-                                               sourceViewer.getTextWidget().setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                               sourceViewer.getTextWidget().setText(clickText);\r
-                                               sourceViewer.getTextWidget().setFont(SWTResourceManager.getFont("Georgia", 12, SWT.ITALIC));\r
-                                               dirty = false;\r
-                                       } else {\r
-                                               dirty = true;\r
-                                       }\r
-                               }\r
-                       });             \r
-               }\r
-               \r
-               return sourceViewer;\r
-       }\r
-       \r
-\r
-\r
-       /**\r
-        * Creates the drop-down menu next to every synonym for changing relationship type\r
-        * \r
-        * @param label\r
-        * @param name\r
-        */\r
-//     private void createRelationMenu(Control control, BotanicalName name) {\r
-       private void createRelationMenu(final Label label) {\r
-               \r
-               final Menu menu = new Menu(label);\r
-               label.setMenu(menu);\r
-               \r
-               // context menu usually only shows up w/ right menu click -\r
-               //  this listener lets the left click activate it as well\r
-               label.addMouseListener(new MouseListener() {\r
-                       public void mouseDown(MouseEvent e) {\r
-                               menu.setVisible(true);\r
-                       }\r
-                       public void mouseDoubleClick(MouseEvent e) { }\r
-                       public void mouseUp(MouseEvent e) {     }\r
-               });\r
-               \r
-               createRelationMenuItem(menu, "delete_edit.gif", "Delete synonym from this taxon");\r
-               createRelationMenuItem(menu, "correction_change.gif", "Move synonym to another taxon");\r
-               \r
-               new MenuItem(menu, SWT.SEPARATOR);\r
-               \r
-               for (int i= 0; i < relTypes.length; i++) {\r
-                       final String relImg = relImgs[i];\r
-                       String relText = "Turn this synonym into " + relTypes[i];\r
-                       createRelationMenuItem(menu, relImg, relText).addSelectionListener(new SelectionListener() {\r
-                               public void widgetDefaultSelected(SelectionEvent e) {   \r
-                               }\r
-                               public void widgetSelected(SelectionEvent e) {\r
-                                       label.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/" + relImg));      \r
-                               }\r
-                       });\r
-               }\r
-       }\r
-       \r
-       private MenuItem createRelationMenuItem(Menu menu, String img, String text) {\r
-               final MenuItem menuItem = new MenuItem(menu, SWT.NONE);\r
-               menuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/" + img));\r
-               menuItem.setText(text);\r
-               return menuItem;\r
-       }\r
-               \r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-               \r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(Taxon.class) != null) {\r
-                       taxon = (Taxon) input.getAdapter(Taxon.class);\r
-               } else {\r
-                       \r
-                       taxon = null;\r
-               }\r
-               \r
-               // Get parent taxon\r
-               if (taxon.getTaxonomicParent() != null)\r
-                               higherTaxon = taxon.getTaxonomicParent();\r
-               \r
-               // Register listeners for any change in accepted name or set of relations\r
-               taxon.getName().addPropertyChangeListener("titleCache", taxonChangeListener);\r
-               taxon.addPropertyChangeListener("synonyms", taxonChangeListener);\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-               \r
-       }\r
-\r
-       PropertySheetNode fullTitleNode;\r
-       /**\r
-        * @param taxonName\r
-        * @return\r
-        */\r
-       private List<PropertySheetNode> getPropertySheetNodes(TaxonNameBase taxonName) {\r
-                               \r
-               BotanicalName botName = (BotanicalName) taxonName;\r
-                               \r
-               List<PropertySheetNode> propertySheetNodes = new ArrayList<PropertySheetNode>();\r
-               fullTitleNode = new PropertySheetNode("Full Title", BeansObservables.observeValue(botName, "titleCache"), \r
-                               null, PropertySheetNode.EDITABLE);\r
-               propertySheetNodes.add(fullTitleNode);\r
-                               \r
-               // Note: only top-level nodes are "add"-ed - otherwise, they are\r
-               //  instantiated with their parent node\r
-               if (botName.getRank() == null) botName.setRank(Rank.GENUS());\r
-               new PropertySheetNode("Rank", botName.getRank().getLabel(), \r
-                               fullTitleNode, PropertySheetNode.NOT_EDITABLE);         \r
-               new PropertySheetNode("Genus", BeansObservables.observeValue(botName, "uninomial"), \r
-                               fullTitleNode, PropertySheetNode.EDITABLE);\r
-               new PropertySheetNode("Species Epithet", BeansObservables.observeValue(botName, "specificEpithet"), \r
-                               fullTitleNode, PropertySheetNode.EDITABLE);\r
-               \r
-               String author = \r
-                       botName.getCombinationAuthorTeam() == null ? "" : \r
-                               botName.getCombinationAuthorTeam().getTitleCache();\r
-               new PropertySheetNode("Author", author, \r
-                               fullTitleNode, PropertySheetNode.NOT_EDITABLE);\r
-\r
-               return propertySheetNodes;\r
-       }\r
-       \r
-       @Override\r
-       public boolean isDirty() {\r
-               return dirty;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-       \r
-       private static void addDropDown(final ToolItem item, final Menu menu) {\r
-               item.addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               if (event.detail == SWT.ARROW) {\r
-                                       Rectangle rect = item.getBounds();\r
-                                       Point pt = new Point(rect.x, rect.y + rect.height);\r
-                                       pt = item.getParent().toDisplay(pt);\r
-                                       menu.setLocation(pt.x, pt.y);\r
-                                       menu.setVisible(true);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-       \r
-       private void createHeterotypicalGroup(Synonym heterosyn) {\r
-\r
-               GroupComposite heteroGroupComposite = new GroupComposite(nameComposite);\r
-               heteroGroupComposite.setTaxon(taxon);\r
-               heteroGroupComposite.setNameEditorView(this);\r
-               \r
-               NameComposite nameComposite = new NameComposite(heteroGroupComposite, heterosyn, taxon);\r
-               nameComposite.setNameEditorView(this);\r
-               nameComposite.setFocus();\r
-       }\r
-       \r
-       /**\r
-        * Creates a new homotypic group when a name composite is dropped outside of all existing\r
-        *  homotypic groups \r
-        */\r
-       DropTargetAdapter dropTargetAdapter = new DropTargetAdapter() {\r
-               \r
-               public void drop(DropTargetEvent event) {\r
-                       \r
-                       Synonym synonym = (Synonym) event.data; \r
-                       \r
-                       GroupComposite homotypicGroupComposite = new GroupComposite(nameComposite);\r
-                       homotypicGroupComposite.setTaxon(taxon);\r
-                       homotypicGroupComposite.setNameEditorView(NameEditorView.this);\r
-                       \r
-                       new NameComposite(homotypicGroupComposite, synonym, taxon).setFocus();\r
-                       \r
-                       NameEditorView.this.contentComposite.layout();\r
-               }               \r
-       };      \r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameListView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameListView.java
deleted file mode 100644 (file)
index 1f55295..0000000
+++ /dev/null
@@ -1,241 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.jface.viewers.TreeViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.ExpandBar;\r
-import org.eclipse.swt.widgets.ExpandItem;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-\r
-/**\r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameListView extends ViewPart {\r
-       \r
-       private Text searchText;\r
-       private Composite composite;\r
-       private Composite taxTreeComposite = null;\r
-       private Composite recentNamesComposite = null;\r
-       private Composite searchComposite = null;       \r
-       private Composite top = null;\r
-       private ExpandBar expandBar = null;\r
-       private ExpandItem taxTreeExpandItem;\r
-       private ExpandItem recentNamesExpandItem;\r
-       private ExpandItem searchExpandItem;\r
-       private TableViewer recentNamesViewer;  \r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.view.namelistview"; //$NON-NLS-1$\r
-\r
-       private TreeViewer treeViewer;\r
-       \r
-       /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               \r
-               parent.setLayout(new FillLayout());\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.horizontalSpacing = 0;\r
-               gridLayout.marginWidth = 0;\r
-               gridLayout.marginHeight = 0;\r
-               gridLayout.verticalSpacing = 0; \r
-                               \r
-               top = new Composite(parent, SWT.NONE);\r
-               top.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               composite = new Composite(top, SWT.NONE);\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               composite.setLayout(gridLayout_1);\r
-               final Label lblDataSourceTitle = new Label(composite, SWT.NONE);\r
-               lblDataSourceTitle.setFont(SWTResourceManager.getFont("Arial", 14, SWT.BOLD));\r
-               lblDataSourceTitle.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDataSourceTitle.setAlignment(SWT.CENTER);\r
-               lblDataSourceTitle.setText(" Euro+Med");                \r
-               \r
-               final Label lblDbImg = new Label(composite, SWT.NONE);\r
-               lblDbImg.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));\r
-               lblDbImg.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDbImg.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/db.gif"));\r
-\r
-               final Menu menu = new Menu(lblDbImg);\r
-               lblDbImg.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setSelection(true);\r
-               checkboxMenuItem.setText("Euro+Med (mssql://128.14.101.12:80/europlusmed)");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setText("WP6 (mssql://128.14.101.13:80/wp6)");\r
-\r
-               final MenuItem palmWebora1922299480pwMenuItem = new MenuItem(menu, SWT.NONE);\r
-               palmWebora1922299480pwMenuItem.setText("Palm Web (ora://192.22.99.4:80/pw)");\r
-\r
-               new MenuItem(menu, SWT.SEPARATOR);\r
-\r
-               final MenuItem newDataSourceMenuItem = new MenuItem(menu, SWT.NONE);\r
-               newDataSourceMenuItem.setText("New data source ...");\r
-               \r
-               final Label lblDataSource = new Label(composite, SWT.NONE);\r
-               final GridData gd_lblDataSource = new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1);\r
-               gd_lblDataSource.heightHint = 16;\r
-               lblDataSource.setLayoutData(gd_lblDataSource);\r
-               lblDataSource.setFont(SWTResourceManager.getFont("Arial", 8, SWT.NONE));\r
-               lblDataSource.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDataSource.setAlignment(SWT.CENTER);\r
-               lblDataSource.setText("  mssql://128.14.101.12:80/europlusmed");\r
-\r
-               createExpandBar();\r
-               top.setLayout(gridLayout);\r
-               top.setTabList(new Control[] {composite, expandBar});\r
-       }\r
-\r
-       /**\r
-        * This method initializes expandBar\r
-        * \r
-        */\r
-       private void createExpandBar() {\r
-               expandBar = new ExpandBar(top, SWT.V_SCROLL);\r
-               GridData gridData = new GridData();\r
-               gridData.horizontalAlignment = GridData.FILL;\r
-               gridData.grabExcessHorizontalSpace = true;\r
-               gridData.grabExcessVerticalSpace = true;\r
-               gridData.verticalAlignment = GridData.FILL;\r
-               expandBar.setLayoutData(gridData);\r
-               createNameListComposite();\r
-               createRecentNamesComposite();\r
-               createSearchComposite();\r
-               \r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();\r
-               \r
-       }\r
-       \r
-       private void createNameListComposite() {\r
-               taxTreeExpandItem = new ExpandItem(expandBar, SWT.NONE, 0);\r
-               taxTreeExpandItem.setExpanded(true);\r
-               taxTreeExpandItem.setHeight(200);\r
-               taxTreeExpandItem.setText("Taxonomic Tree");\r
-               \r
-               taxTreeComposite = new Composite(expandBar, SWT.NONE);\r
-               taxTreeComposite.setLayout(new FillLayout());\r
-               taxTreeComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               \r
-               taxTreeExpandItem.setControl(taxTreeComposite);\r
-\r
-               treeViewer = new TaxonomicTreeViewer(taxTreeComposite);\r
-       }\r
-       \r
-       private void createRecentNamesComposite() {\r
-               recentNamesExpandItem = new ExpandItem(expandBar, SWT.NONE, 1);\r
-               recentNamesExpandItem.setHeight(130);\r
-               recentNamesExpandItem.setExpanded(true);\r
-               recentNamesExpandItem.setText("Recently viewed names");\r
-               recentNamesComposite = new Composite(expandBar, SWT.NONE);\r
-               recentNamesComposite.setLayout(new GridLayout());\r
-\r
-               recentNamesExpandItem.setControl(recentNamesComposite);\r
-\r
-               recentNamesViewer = new RecentNamesTableViewer(recentNamesComposite);\r
-       }\r
-\r
-       private void createSearchComposite() {\r
-               searchExpandItem = new ExpandItem(expandBar, SWT.NONE, 2);\r
-               searchExpandItem.setHeight(50);\r
-               searchExpandItem.setExpanded(true);\r
-               searchExpandItem.setText("Search");\r
-               searchComposite = new Composite(expandBar, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               searchComposite.setLayout(gridLayout);\r
-\r
-               searchExpandItem.setControl(searchComposite);\r
-\r
-               searchText = new Text(searchComposite, SWT.BORDER);\r
-               searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               searchText.setText("Use \"*\" for wildcard searching");\r
-               final GridData gd_useForText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               searchText.setLayoutData(gd_useForText);\r
-               searchText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               searchText.setForeground(SWTResourceManager.getColor(0,0,0));\r
-                               searchText.setText("");\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               if (searchText.getText() == "") {\r
-                                       searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                       searchText.setText("Use \"*\" for wildcard searching");                                 \r
-                               }\r
-                               \r
-                       }\r
-                       \r
-               });\r
-\r
-               final Button searchButton = new Button(searchComposite, SWT.NONE);\r
-               searchButton.setText("Search");\r
-\r
-//             Image image = FileArrangerImages.getImageRegistry().get(\r
-//                             IFileArrangerImages.IMG_FTP);\r
-//             ftpExpandItem.setImage(image);\r
-       }       \r
-       \r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       /**\r
-        * Expose TreeViewer, i.e. to manipulate tree nodes\r
-        * @return\r
-        */\r
-       public TreeViewer getTreeViewer() {\r
-               return treeViewer;\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameViewer.java
deleted file mode 100644 (file)
index 4c35a0e..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import java.util.Iterator;\r
-\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.Position;\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.jface.text.source.AnnotationModel;\r
-import org.eclipse.jface.text.source.AnnotationPainter;\r
-import org.eclipse.jface.text.source.IAnnotationAccess;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.AnnotationMarkerAccess;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.ErrorAnnotation;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.WarningAnnotation;\r
-\r
-/**\r
- * SourceViewer implementation called by NameEditorView.\r
- *  \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameViewer extends SourceViewer {\r
-       \r
-       public NameViewer(Composite parent) {\r
-               super(parent, null, SWT.WRAP | SWT.MULTI | SWT.RESIZE);\r
-                               \r
-               // Set name viewer's text to name cache\r
-               this.setDocument(new Document(""), new AnnotationModel());\r
-                               \r
-               // Annotations section\r
-               IAnnotationAccess fAnnotationAccess = new AnnotationMarkerAccess();\r
-               \r
-               // To paint the annotations\r
-               AnnotationPainter annotationPainter = new AnnotationPainter(this, fAnnotationAccess);\r
-\r
-               // Add ability to paint red squigglies\r
-               annotationPainter.addAnnotationType(ErrorAnnotation.ERROR_TYPE);\r
-               annotationPainter.setAnnotationTypeColor(ErrorAnnotation.ERROR_TYPE, \r
-                               new Color(Display.getDefault(), ErrorAnnotation.ERROR_RGB));\r
-\r
-               // Add ability to paint yellow squigglies\r
-               annotationPainter.addAnnotationType(WarningAnnotation.WARNING_TYPE);\r
-               annotationPainter.setAnnotationTypeColor(WarningAnnotation.WARNING_TYPE, \r
-                               new Color(Display.getDefault(), WarningAnnotation.WARNING_RGB));                \r
-               \r
-               this.addPainter(annotationPainter);\r
-       }\r
-\r
-       public void setShowError(boolean hasProblem) {\r
-                       \r
-               String text = this.getTextWidget().getText();\r
-               \r
-               Iterator<Annotation> annotations = this.getAnnotationModel().getAnnotationIterator();\r
-               while (annotations.hasNext()) {\r
-                       Annotation annotation = annotations.next(); \r
-                       if (annotation.getType().equals(ErrorAnnotation.ERROR_TYPE))\r
-                               this.getAnnotationModel().removeAnnotation(annotation);\r
-               }\r
-               \r
-               // Failed attempt to get multi-line squigglies drawn\r
-               if (hasProblem && text.length() > 0) {\r
-                       for (int i = 1; i <= this.getTextWidget().getLineCount(); i++) {\r
-                               this.getAnnotationModel().addAnnotation(\r
-                                               new ErrorAnnotation(i, "Could not parse name."), \r
-                                               new Position(0, text.length()));\r
-                       }\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameViewer_.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/NameViewer_.java
deleted file mode 100644 (file)
index 79c3f19..0000000
+++ /dev/null
@@ -1,424 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import java.beans.PropertyChangeListener;\r
-import java.beans.PropertyChangeSupport;\r
-import java.util.List;\r
-import java.util.Scanner;\r
-\r
-import org.eclipse.core.databinding.Binding;\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.value.IObservableValue;\r
-import org.eclipse.core.resources.IMarker;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.text.BadLocationException;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.IDocumentPartitioner;\r
-import org.eclipse.jface.text.ITypedRegion;\r
-import org.eclipse.jface.text.Position;\r
-import org.eclipse.jface.text.TypedRegion;\r
-import org.eclipse.jface.text.rules.DefaultPartitioner;\r
-import org.eclipse.jface.text.rules.FastPartitioner;\r
-import org.eclipse.jface.text.rules.IPartitionTokenScanner;\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.jface.text.source.AnnotationModel;\r
-import org.eclipse.jface.text.source.AnnotationPainter;\r
-import org.eclipse.jface.text.source.IAnnotationAccess;\r
-import org.eclipse.jface.text.source.IAnnotationAccessExtension;\r
-import org.eclipse.jface.text.source.ImageUtilities;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyleRange;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.KeyAdapter;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.GC;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.widgets.Canvas;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.AnnotationMarkerAccess;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.ErrorAnnotation;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.NamePartitionScanner_;\r
-\r
-/**\r
- * Creates zero-length fieldPartitions for Genus, Specific Epithet, etc., then fills them\r
- *  as data is added. \r
- *  \r
- * Partition data are bound to their respective model properties.\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-/**\r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameViewer_ extends SourceViewer {\r
-       \r
-       final Document document;\r
-       final IDocumentPartitioner partitioner;\r
-       private TaxonName taxonName;\r
-       private DataBindingContext bindingContext;\r
-       protected Composite parent;\r
-       \r
-       private BoundPartition[] fieldPartitions;\r
-       \r
-       StyledText styledText;\r
-\r
-    // error identifiers, images and colors\r
-    public static String ERROR_TYPE = "error.type";\r
-    public static Image ERROR_IMAGE;\r
-    public static final RGB ERROR_RGB = new RGB(255, 0, 0);\r
-    \r
-    // annotation model\r
-    private AnnotationModel fAnnotationModel = new AnnotationModel();    \r
-       \r
-       NameViewer_(TaxonName taxonName, DataBindingContext bindingContext, Composite parent) {\r
-               super(parent, null, SWT.WRAP | SWT.MULTI | SWT.RESIZE); // null -> no vertical ruler\r
-               \r
-               this.taxonName = taxonName;\r
-               this.bindingContext = bindingContext;\r
-               this.parent = parent;\r
-                               \r
-        Assert.isNotNull(bindingContext,\r
-               "NameViewer_'s binding context must be explicitly set.");\r
-               \r
-               fieldPartitions = new BoundPartition[] {\r
-                               new BoundPartition("genus", SWT.ITALIC),\r
-                               new BoundPartition("specificEpithet", SWT.BOLD)\r
-               };\r
-               \r
-               document = new Document(taxonName.getGenus() + " " + taxonName.getSpecificEpithet());\r
-               \r
-               partitioner = new NamePartitioner(new NamePartitionScanner_(),\r
-                               NamePartitionScanner_.PARTITION_TYPES);\r
-               \r
-               partitioner.connect(document);\r
-               document.setDocumentPartitioner(partitioner);\r
-\r
-               this.setDocument(document, fAnnotationModel); // put this back in nameeditorview so that it functions more like TextViewer\r
-                       \r
-               styledText = this.getTextWidget();\r
-//             styledText.setIndent(8);\r
-               styledText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               ((StyledText) e.widget).setBackground((Display.getCurrent().getSystemColor(SWT.COLOR_GRAY)));\r
-                               \r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               ((StyledText) e.widget).setBackground((Display.getCurrent().getSystemColor(SWT.COLOR_WHITE)));\r
-                       }\r
-                       \r
-               });\r
-               \r
-               // annotations section\r
-               IAnnotationAccess fAnnotationAccess = new AnnotationMarkerAccess();\r
-               \r
-               // to paint the annotations\r
-        AnnotationPainter ap = new AnnotationPainter(this, fAnnotationAccess);\r
-        ap.addAnnotationType(ERROR_TYPE);\r
-        ap.setAnnotationTypeColor(ERROR_TYPE, new Color(Display.getDefault(), ERROR_RGB));\r
-\r
-        // this will draw the squigglies under the text\r
-        this.addPainter(ap);\r
-        \r
-        // add an annotation\r
-        ErrorAnnotation errorAnnotation = new ErrorAnnotation(1, "Learn how to spell \"text!\"");\r
-\r
-        // lets underline the word "texst"\r
-        fAnnotationModel.addAnnotation(errorAnnotation, new Position(1, 5));\r
-                               \r
-       };\r
-\r
-       \r
-       /**\r
-        * Separate out properties that are different for accepted and related names \r
-        */\r
-       private void setViewerLayoutExtras() {\r
-               styledText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
-               styledText.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));                \r
-       }\r
-\r
-       public void setBindingContext(DataBindingContext bindingContext) {\r
-               this.bindingContext = bindingContext;\r
-       }\r
-       \r
-       class NamePartitioner extends FastPartitioner {\r
-\r
-               List<ITypedRegion> wordPartitions;\r
-\r
-               public NamePartitioner(IPartitionTokenScanner scanner,\r
-                               String[] legalContentTypes) {\r
-                       super(scanner, legalContentTypes);\r
-               }\r
-               \r
-               public ITypedRegion[] computePartitioning(int offset, int length, boolean includeZeroLengthPartitions) {\r
-\r
-                       int fieldIndex = 0;\r
-                       \r
-//                     System.out.print("Start re-partition at: " + offset + " -");\r
-//                     for (int i = 0; i < fieldPartitions.length; i++) {\r
-//                             System.out.print(" " + fieldPartitions[i].getOffset());\r
-//                     }\r
-//                     System.out.println();\r
-//                                             \r
-//                     // find where the affected partitions begin\r
-//                     while (fieldPartitions[fieldIndex].getOffset() < offset) {\r
-//                             System.out.println(fieldPartitions[fieldIndex].getOffset() + " " + offset);\r
-//                             fieldIndex++;\r
-//                     }\r
-                       \r
-//                     ITypedRegion[] regions = super.computePartitioning(offset, document.getLength() - offset, \r
-//                                     includeZeroLengthPartitions);\r
-                       ITypedRegion[] regions = super.computePartitioning(0, document.getLength(), \r
-                                       includeZeroLengthPartitions);   \r
-                       \r
-                       for (int i = 0; i < regions.length; i++) {\r
-                               if (regions[i].getType() == NamePartitionScanner_.SINGLE_WORD) {\r
-                                       // for now, assign first word to first fieldPartition, etc.\r
-                                       fieldPartitions[fieldIndex].setRegion(regions[i]);\r
-                                       fieldIndex++;\r
-                               }\r
-                       }       \r
-                       \r
-                       // put zero-length regions in remaining fieldPartitions \r
-                       for (int i = fieldIndex; i < fieldPartitions.length; i++) {\r
-                               fieldPartitions[fieldIndex].setRegion(\r
-                                               new TypedRegion(document.getLength(), 0, \r
-                                                               NamePartitionScanner_.SINGLE_WORD));\r
-                       } \r
-                       return regions;\r
-               }\r
-               \r
-               \r
-               public void connect(IDocument document, boolean delayInitialise)\r
-               {\r
-                       super.connect(document, delayInitialise);\r
-//                     computePartitioning(0, document.getLength(), false);\r
-               }               \r
-       }\r
-       \r
-       class BoundPartition {\r
-               private ITypedRegion region;\r
-               private Binding binding;\r
-               private String field; // the name field to track\r
-               private String value; // the current value in this partition\r
-               private int length;\r
-               private int offset;\r
-               private StyleRange style = new StyleRange();\r
-                               \r
-               BoundPartition (String field) {\r
-                       this.field = field;\r
-                       this.length = 0;\r
-                       this.offset = 0;\r
-                       \r
-                       bindPartition();\r
-               }\r
-\r
-               BoundPartition (String field, int fontStyle) {\r
-                       this(field);\r
-                       style.fontStyle = fontStyle;\r
-               }\r
-               \r
-               private void bindPartition() {\r
-                       IObservableValue observePartitionValue =\r
-                                       BeansObservables.observeValue(this, "text");\r
-                       IObservableValue observeModelValue =\r
-                                       BeansObservables.observeValue(taxonName, field);                        \r
-                       this.binding = bindingContext.bindValue(\r
-                                       observePartitionValue, observeModelValue, \r
-                                       null, null);    \r
-               }\r
-               \r
-               public void setRegion (ITypedRegion region) {\r
-                       this.region = region;\r
-                       this.length = region.getLength();\r
-                       this.offset = region.getOffset();\r
-                                               \r
-                       String oldValue = this.value; \r
-                       try {\r
-                               this.value = document.get(this.offset, this.length);\r
-                       } catch (BadLocationException e) {\r
-                               // TODO Auto-generated catch block\r
-                               e.printStackTrace();\r
-                       }\r
-                       firePropertyChange("text",oldValue,this.value);\r
-\r
-                       this.style.start = this.offset;\r
-                       this.style.length = this.length;\r
-                       styledText.setStyleRange(this.style);\r
-               }\r
-               \r
-               public int getLength () {\r
-                       return this.length;\r
-               }\r
-               \r
-               public int getOffset () {\r
-                       return this.offset;\r
-               }\r
-               \r
-               public void setText(String newText) {\r
-                       try {\r
-                               document.replace(region.getOffset(), region.getLength(), newText);\r
-                       } catch (BadLocationException e) {\r
-                               // TODO Auto-generated catch block\r
-                               e.printStackTrace();\r
-                       }\r
-               }\r
-               \r
-               public String getText() {\r
-                       return this.value;\r
-               }\r
-               \r
-               protected final PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this);\r
-               public void addPropertyChangeListener(PropertyChangeListener listener) {\r
-                       propertyChangeSupport.addPropertyChangeListener(listener);\r
-               }\r
-\r
-               public void addPropertyChangeListener(String propertyName,\r
-                               PropertyChangeListener listener) {\r
-                       propertyChangeSupport.addPropertyChangeListener(propertyName, listener);\r
-               }\r
-\r
-               public void removePropertyChangeListener(PropertyChangeListener listener) {\r
-                       propertyChangeSupport.removePropertyChangeListener(listener);\r
-               }\r
-\r
-               public void removePropertyChangeListener(String propertyName,\r
-                               PropertyChangeListener listener) {\r
-                       propertyChangeSupport.removePropertyChangeListener(propertyName,\r
-                                       listener);\r
-               }\r
-\r
-               protected void firePropertyChange(String propertyName, Object oldValue,\r
-                               Object newValue) {\r
-                       propertyChangeSupport.firePropertyChange(propertyName, oldValue,\r
-                                       newValue);\r
-               }\r
-\r
-//             public StyleRange getStyle() {\r
-//                     return style;\r
-//             }\r
-//\r
-//             public void setStyle(StyleRange style) {\r
-//                     this.style = style;\r
-//             }\r
-       }\r
-       \r
-//    class AnnotationMarkerAccess implements IAnnotationAccess, IAnnotationAccessExtension {\r
-//        public Object getType(Annotation annotation) {\r
-//            return annotation.getType();\r
-//        }\r
-//\r
-//        public boolean isMultiLine(Annotation annotation) {\r
-//            return true;\r
-//        }\r
-//\r
-//        public boolean isTemporary(Annotation annotation) {\r
-//            return !annotation.isPersistent();\r
-//        }\r
-//\r
-//        public String getTypeLabel(Annotation annotation) {\r
-//            if (annotation instanceof ErrorAnnotation)\r
-//                return "Errors";\r
-//\r
-//            return null;\r
-//        }\r
-//\r
-//        public int getLayer(Annotation annotation) {\r
-//            if (annotation instanceof ErrorAnnotation)\r
-//                return ((ErrorAnnotation)annotation).getLayer();\r
-//\r
-//            return 0;\r
-//        }\r
-//\r
-//        public void paint(Annotation annotation, GC gc, Canvas canvas, Rectangle bounds) {\r
-//            ImageUtilities.drawImage(((ErrorAnnotation)annotation).getImage(), \r
-//                     gc, canvas, bounds, SWT.CENTER, SWT.TOP);\r
-//        }\r
-//\r
-//        public boolean isPaintable(Annotation annotation) {\r
-//            if (annotation instanceof ErrorAnnotation)\r
-//                return ((ErrorAnnotation)annotation).getImage() != null;\r
-//\r
-//            return false;\r
-//        }\r
-//\r
-//        public boolean isSubtype(Object annotationType, Object potentialSupertype) {\r
-//            if (annotationType.equals(potentialSupertype))\r
-//                return true;\r
-//\r
-//            return false;\r
-//\r
-//        }\r
-//\r
-//        public Object[] getSupertypes(Object annotationType) {\r
-//            return new Object[0];\r
-//        }\r
-//    }\r
-    \r
-    // one error annotation\r
-//    class ErrorAnnotation extends Annotation {\r
-//        private IMarker marker;\r
-//        private String text;\r
-//        private int line;\r
-//        private Position position;\r
-//\r
-//        public ErrorAnnotation(IMarker marker) {\r
-//            this.marker = marker;\r
-//        }\r
-//\r
-//        public ErrorAnnotation(int line, String text) {\r
-//            super(ERROR_TYPE, true, null);\r
-//            this.marker = null;\r
-//            this.line = line;\r
-//            this.text = text;\r
-//        }\r
-//\r
-//        public IMarker getMarker() {\r
-//            return marker;\r
-//        }\r
-//\r
-//        public int getLine() {\r
-//            return line;\r
-//        }\r
-//\r
-//        public String getText() {\r
-//            return text;\r
-//        }\r
-//\r
-//        public Image getImage() {\r
-//            return ERROR_IMAGE;\r
-//        }\r
-//\r
-//        public int getLayer() {\r
-//            return 3;\r
-//        }\r
-//\r
-//        public String getType() {\r
-//            return ERROR_TYPE;\r
-//        }\r
-//\r
-//        public Position getPosition() {\r
-//            return position;\r
-//        }\r
-//\r
-//        public void setPosition(Position position) {\r
-//            this.position = position;\r
-//        }\r
-//    }    \r
-    \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/PilosellaEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/PilosellaEditorView.java
deleted file mode 100644 (file)
index e288ba1..0000000
+++ /dev/null
@@ -1,651 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.ToolBar;\r
-import org.eclipse.swt.widgets.ToolItem;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionSaveTaxon;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.MySourceViewerConfig;\r
-\r
-//public class PilosellaEditorView extends EditorPart implements ICdmEventListener {\r
-public class PilosellaEditorView extends EditorPart {\r
-\r
-       private Text hieraciumFuscoatrumSubspText_1;\r
-       private Text hieraciumRubroonegenseNorrlText;\r
-       private Table table_1;\r
-       private Text text_3;\r
-       private Text hieraciumFuscoatrumSubspText;\r
-       private Text hieraciumAurantiacumSubspText;\r
-       private Text text_1;\r
-       private StyledText styledText;\r
-       private TaxonName taxonname;\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.view.pilosellaeditorview"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               //\r
-               \r
-               \r
-//             txtPlay = new Text(container, SWT.BORDER);\r
-//             txtPlay.setCapture(true);\r
-//             final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);\r
-//             gd_txtPlay.heightHint = 96;\r
-//             txtPlay.setLayoutData(gd_txtPlay);\r
-////           txtPlay.addVerifyListener(new VerifyListener() {\r
-////                   @Override\r
-////                   public void verifyText(VerifyEvent e) {\r
-////                   e.doit = Character.isDigit(e.character);\r
-////               }           \r
-////           });\r
-//             txtPlay.addSelectionListener(new SelectionListener() {\r
-//\r
-//                     @Override\r
-//                     public void widgetDefaultSelected(SelectionEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//\r
-//                     @Override\r
-//                     public void widgetSelected(SelectionEvent e) {\r
-//                             System.out.println(e.toString());\r
-//                     }\r
-//                     \r
-//                     \r
-//             });\r
-//             \r
-//             \r
-//             txtPlay.addKeyListener(new KeyListener() {\r
-//\r
-//                     public void keyPressed(KeyEvent e) {\r
-//                             System.out.println(e.character);\r
-//                             if (e.character == '=') {\r
-//                                     Shell shell = Activator.getDefault().getWorkbench().\r
-//                                             getActiveWorkbenchWindow().getShell();\r
-//                                     PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-////                                   Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);\r
-//                                     \r
-//                                     // Add the items to the list\r
-//                                     String[] OPTIONS = { "Create homo. syn.",\r
-//                                                     "Create hetero. syn.",\r
-//                                                     "Create mis. name",\r
-//                                                     "Create homonym"};\r
-//\r
-//                                     list.setItems(OPTIONS);\r
-//                                     \r
-//                                     // Open the list and get the selected item\r
-//                                     String selected = list.open(txtPlay.getBounds());\r
-//                                     \r
-//                                     // Print the item to the console\r
-//                                     System.out.println(selected);                                   \r
-//                             }\r
-//                             \r
-//                     }\r
-//\r
-//                     public void keyReleased(KeyEvent e) {\r
-//                             // TODO Auto-generated method stub\r
-//                             \r
-//                     }\r
-//             });\r
-               parent.setLayout(new GridLayout());\r
-               Document doc = new Document("");\r
-\r
-               final Label taxonomicallyIncludedInLabel = new Label(parent, SWT.NONE);\r
-               taxonomicallyIncludedInLabel.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));\r
-               taxonomicallyIncludedInLabel.setText("Higher taxon: \"Pilosella fuscoatra coll.\"");\r
-\r
-               final ToolBar toolBar = new ToolBar(parent, SWT.NONE);\r
-//             toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final ToolItem itemSave = new ToolItem(toolBar, SWT.PUSH);\r
-               itemSave.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemSave.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/save.gif"));\r
-               itemSave.addSelectionListener(new SelectionListener() {\r
-                       public void mouseDown(final MouseEvent e) {\r
-                               \r
-//                             taxonname.setGenus(txtGenus.getText());\r
-//                             taxonname.setSpecificEpithet(txtSpEpi.getText());\r
-                               \r
-                               new ActionSaveTaxon(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               new ActionSaveTaxon(taxonname).run();\r
-                       }\r
-\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               new ActionSaveTaxon(taxonname).run();\r
-                       }\r
-               });\r
-\r
-               final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemMove.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               \r
-               final Menu menuMove = new Menu(toolBar);\r
-               menuMove.setData("x", null);\r
-               addDropDown(itemMove, menuMove);\r
-\r
-               final MenuItem moveTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               moveTaxonpilosellaMenuItem.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");\r
-\r
-               final MenuItem turnTaxonpilosellaMenuItem = new MenuItem(menuMove, SWT.NONE);\r
-               turnTaxonpilosellaMenuItem.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(final SelectionEvent e) {\r
-                               new MoveDialogView(getSite().getShell());\r
-//                             MessageDialog.openInformation(getSite().getShell(),"Readme Editor","View Action executed");                             \r
-                               MoveDialogView dialog = new MoveDialogView(getSite().getShell());\r
-                               dialog.open();                          \r
-                       }\r
-               });\r
-               turnTaxonpilosellaMenuItem.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");\r
-               \r
-//             });\r
-//             newItemToolItem.setText("New item");\r
-               itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-\r
-               final ToolItem itemDelete = new ToolItem(toolBar, SWT.NONE);\r
-               itemDelete.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemDelete.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-                               \r
-               final ToolItem separator1 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddRelationship.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/rel_no_bg.gif"));\r
-               \r
-               final Menu menuAddRel = new Menu(toolBar);\r
-               menuAddRel.setData("x", null);\r
-               addDropDown(itemAddRelationship, menuAddRel);\r
-\r
-               final MenuItem testMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               testMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               testMenuItem.setText("Add synonymy (type unknown)");\r
-\r
-               final MenuItem addHomotypicSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomotypicSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               addHomotypicSynonymMenuItem.setText("Add homotypic synonym");\r
-\r
-               final MenuItem addHeterotypicSynoynmMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHeterotypicSynoynmMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               addHeterotypicSynoynmMenuItem.setText("Add heterotypic synoynm");\r
-\r
-               final MenuItem addBasionymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addBasionymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               addBasionymMenuItem.setText("Add basionym");\r
-\r
-               final MenuItem addReplacedSynonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addReplacedSynonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               addReplacedSynonymMenuItem.setText("Add replaced synonym");\r
-\r
-               final MenuItem addHomonymMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addHomonymMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               addHomonymMenuItem.setText("Add homonym");\r
-\r
-               final MenuItem addOrthographicVariantMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addOrthographicVariantMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               addOrthographicVariantMenuItem.setText("Add orthographic variant");\r
-\r
-               final MenuItem addMisappliedNameMenuItem = new MenuItem(menuAddRel, SWT.NONE);\r
-               addMisappliedNameMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               addMisappliedNameMenuItem.setText("Add misapplied name");\r
-\r
-               final MenuItem addConceptRelationMenuItem_1 = new MenuItem(menuAddRel, SWT.CASCADE);\r
-               addConceptRelationMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               addConceptRelationMenuItem_1.setText("Add concept relation");\r
-\r
-               final Menu menu = new Menu(addConceptRelationMenuItem_1);\r
-               addConceptRelationMenuItem_1.setMenu(menu);\r
-\r
-               final MenuItem checkboxMenuItem = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem.setText("congruent");\r
-\r
-               final MenuItem checkboxMenuItem_1 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_1.setSelection(true);\r
-               checkboxMenuItem_1.setText("included in");\r
-\r
-               final MenuItem checkboxMenuItem_2 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_2.setText("includes");\r
-\r
-               final MenuItem checkboxMenuItem_3 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_3.setText("overlaps");\r
-\r
-               final MenuItem checkboxMenuItem_4 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_4.setText("excludes");\r
-\r
-               final MenuItem checkboxMenuItem_5 = new MenuItem(menu, SWT.CHECK);\r
-               checkboxMenuItem_5.setSelection(true);\r
-               checkboxMenuItem_5.setText("doubtful");\r
-               \r
-               final ToolItem separator2 = new ToolItem(toolBar, SWT.SEPARATOR);\r
-\r
-               final ToolItem itemAddTaxon = new ToolItem(toolBar, SWT.DROP_DOWN);\r
-               itemAddTaxon.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add_no_bg2.gif"));\r
-               itemAddTaxon.setToolTipText("Add new taxon");\r
-\r
-               final Menu menuAdd = new Menu(toolBar);\r
-               menuAdd.setData("x", null);\r
-               addDropDown(itemAddTaxon, menuAdd);\r
-\r
-               final MenuItem addTaxonToMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addTaxonToMenuItem.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final MenuItem addNewTaxonMenuItem = new MenuItem(menuAdd, SWT.NONE);\r
-               addNewTaxonMenuItem.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final Composite composite = new Composite(parent, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.horizontalSpacing = 3;\r
-               gridLayout_2.numColumns = 3;\r
-               composite.setLayout(gridLayout_2);\r
-\r
-               text_3 = new Text(composite, SWT.WRAP);\r
-               text_3.setText("Pilosella fuscoatra (Nägeli & Peter) Soják in Preslia 43: 184. 1971 ");\r
-               text_3.setFont(SWTResourceManager.getFont("Georgia", 12, SWT.NONE));\r
-               text_3.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
-               text_3.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               text_3.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               text_3.setBackground(null);                             \r
-                       }\r
-\r
-               });\r
-\r
-               table_1 = new Table(composite, SWT.BORDER);\r
-               table_1.setLinesVisible(true);\r
-               table_1.setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, true, true, 1, 7));\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn.setWidth(100);\r
-               newColumnTableColumn.setText("New column");\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table_1, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(100);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem.setText(0, "Rank");\r
-               newItemTableItem.setText(1, "species");\r
-               newItemTableItem.setText("Rank");\r
-               \r
-               final TableItem newItemTableItem_1 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Pilosella");\r
-               newItemTableItem_1.setText(0, "Genus");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_2.setText(1, "fuscoatra");\r
-               newItemTableItem_2.setText(0, "Species epithet");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "Nägeli & Peter");\r
-               newItemTableItem_3.setText(0, "Author team");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table_1, SWT.BORDER);\r
-               newItemTableItem_4.setText("...");\r
-//             newItemTableItem_3.setText("Author team");\r
-//             newItemTableItem_2.setText("Species epithet");\r
-//             newItemTableItem_1.setText("Genus");\r
-\r
-               final Label labelWithMenu = new Label(composite, SWT.NONE);\r
-               labelWithMenu.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               labelWithMenu.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               final GridData gd_labelWithMenu = new GridData(SWT.LEFT, SWT.TOP, false, false);\r
-               labelWithMenu.setLayoutData(gd_labelWithMenu);\r
-               \r
-               text_1 = new Text(composite, SWT.WRAP);\r
-               final GridData gd_text_1 = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_text_1.widthHint = 300;\r
-               text_1.setLayoutData(gd_text_1);\r
-               text_1.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               text_1.setText("Hieracium fuscoatrum Nägeli & Peter, Hierac. Mitt.-Eur. 1: 315. 1885");\r
-               text_1.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               text_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               text_1.setBackground(null);                             \r
-                       }\r
-\r
-               });\r
-               \r
-\r
-               final Label label_1 = new Label(composite, SWT.NONE);\r
-               label_1.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               label_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               hieraciumAurantiacumSubspText = new Text(composite, SWT.WRAP);\r
-               final GridData gd_hieraciumAurantiacumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumAurantiacumSubspText.widthHint = 300;\r
-               hieraciumAurantiacumSubspText.setLayoutData(gd_hieraciumAurantiacumSubspText);\r
-               hieraciumAurantiacumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumAurantiacumSubspText.setText("Hieracium aurantiacum subsp. chaetodermum Pohle & Zahn in Allg. Bot. Z. Syst. 13: 110. 1907");\r
-               hieraciumAurantiacumSubspText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumAurantiacumSubspText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumAurantiacumSubspText.setBackground(null);                              \r
-                       }\r
-\r
-               });\r
-               \r
-\r
-               final Label label_2 = new Label(composite, SWT.NONE);\r
-               label_2.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_2.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               label_2.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-\r
-               hieraciumFuscoatrumSubspText = new Text(composite, SWT.WRAP);\r
-               final GridData gd_hieraciumFuscoatrumSubspText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumFuscoatrumSubspText.widthHint = 300;\r
-               hieraciumFuscoatrumSubspText.setLayoutData(gd_hieraciumFuscoatrumSubspText);\r
-               hieraciumFuscoatrumSubspText.setText("Hieracium fuscoatrum subsp. chaetodermum (Pohle & Zahn) Zahn in Engler, Pflanzenr. 82: 1267. 1923");\r
-               hieraciumFuscoatrumSubspText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumFuscoatrumSubspText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText.setBackground(null);                               \r
-                       }\r
-\r
-               });\r
-\r
-               final Label label = new Label(composite, SWT.NONE);\r
-               label.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               label.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-\r
-               hieraciumRubroonegenseNorrlText = new Text(composite, SWT.WRAP);\r
-               hieraciumRubroonegenseNorrlText.setText("Hieracium rubroonegense Norrl. in Acta Soc. Fauna Fl. Fenn. 26(7): 61. 1904");\r
-               hieraciumRubroonegenseNorrlText.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumRubroonegenseNorrlText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumRubroonegenseNorrlText.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumRubroonegenseNorrlText.setBackground(null);                            \r
-                       }\r
-\r
-               });             \r
-               final GridData gd_hieraciumRubroonegenseNorrlText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumRubroonegenseNorrlText.widthHint = 300;\r
-               hieraciumRubroonegenseNorrlText.setLayoutData(gd_hieraciumRubroonegenseNorrlText);\r
-\r
-               final Label label_3 = new Label(composite, SWT.NONE);\r
-               label_3.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_3.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               label_3.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               hieraciumFuscoatrumSubspText_1 = new Text(composite, SWT.WRAP);\r
-               hieraciumFuscoatrumSubspText_1.setText("Hieracium fuscoatrum subsp. rubroonegense (Norrl.) Zahn in Engler, Pflanzenr. 82: 1267. 1923");\r
-               hieraciumFuscoatrumSubspText_1.setFont(SWTResourceManager.getFont("Georgia", 11, SWT.NONE));\r
-               hieraciumFuscoatrumSubspText_1.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText_1.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WIDGET_LIGHT_SHADOW));\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               hieraciumFuscoatrumSubspText_1.setBackground(null);                             \r
-                       }\r
-\r
-               });     \r
-               final GridData gd_hieraciumFuscoatrumSubspText_1 = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_hieraciumFuscoatrumSubspText_1.widthHint = 300;\r
-               hieraciumFuscoatrumSubspText_1.setLayoutData(gd_hieraciumFuscoatrumSubspText_1);\r
-               \r
-               final Label label_4 = new Label(composite, SWT.NONE);\r
-               label_4.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));\r
-               label_4.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               label_4.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));\r
-\r
-               final Menu menu1 = new Menu(labelWithMenu);\r
-               labelWithMenu.setMenu(menu1);\r
-\r
-               final MenuItem deletehieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               deletehieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/delete.gif"));\r
-               deletehieraciumFuscoatrumMenuItem.setText("Delete \"Hieracium fuscoatrum Nägeli & Peter\" from this taxon");\r
-\r
-               new MenuItem(menu1, SWT.SEPARATOR);\r
-\r
-               final MenuItem moveMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               moveMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move_no_bg.gif"));\r
-               moveMenuItem.setText("Move \"Hieracium fuscoatrum Nägeli & Peter\" to another taxon");\r
-\r
-               final MenuItem makehieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               makehieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/a_no_bg.gif"));\r
-               makehieraciumFuscoatrumMenuItem.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into an accepted name");\r
-\r
-               new MenuItem(menu1, SWT.SEPARATOR);\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a synonym (type unknown)");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_1 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_1.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_1.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homotypic synonym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_2 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_2.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_2.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a heterotypic synoynm");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_3 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_3.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/basionym_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_3.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a basionym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_4 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_4.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/repsyn_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_4.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a replaced synonym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_5 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_5.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homonym_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_5.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homonym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_6 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_6.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/orthovariant_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_6.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a orthographic variant");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_7 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_7.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/misapplied_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_7.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a misapplied name");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_8 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_8.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/concept_no_bg.gif"));\r
-               turnhieraciumFuscoatrumMenuItem_8.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a concept relation");\r
-\r
-               SourceViewer sourceviewer = new SourceViewer(composite, null, SWT.WRAP | SWT.FULL_SELECTION);\r
-               sourceviewer.setAnnotationHover(null);\r
-               styledText = sourceviewer.getTextWidget();\r
-               final GridData gd_styledText = new GridData(SWT.FILL, SWT.TOP, true, false);\r
-               gd_styledText.heightHint = 41;\r
-               gd_styledText.widthHint = 450;\r
-               styledText.setLayoutData(gd_styledText);\r
-               sourceviewer.setDocument(doc);\r
-               sourceviewer.configure(new MySourceViewerConfig());\r
-               sourceviewer.setTabsToSpacesConverter(null);\r
-\r
-               \r
-//             final Menu menu = new Menu(toolBar);\r
-//             addDropDown(newItemToolItem, menu);\r
-//             );\r
-               \r
-//             Action testAction = new ActionOpenNameEditor();\r
-//             testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));\r
-//             testAction.setToolTipText("Add relation");\r
-//             toolBar.add(testAction);\r
-               \r
-               populateForm();         \r
-       }\r
-\r
-//     private void populateForm() {\r
-//             \r
-//             String fulltext = "";\r
-//             \r
-//             if (taxonname.getGenus() != null) {\r
-//                     fulltext = taxonname.getGenus();\r
-//             }\r
-//\r
-//             if (taxonname.getSpecificEpithet() != null) {\r
-//                     fulltext += " " + taxonname.getSpecificEpithet();\r
-//             }\r
-//\r
-//             if (taxonname.getAuthorship() != null) {\r
-//                     fulltext += " " + taxonname.getAuthorship();\r
-//             }\r
-//             \r
-////           txtPlay.setText(fulltext);\r
-////           txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");\r
-//             \r
-//             this.setPartName(taxonname.getName());\r
-//     }\r
-\r
-       private void populateForm() {\r
-               this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");\r
-       }\r
-       \r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-\r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(TaxonName.class) != null) {\r
-                       taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
-//                     taxonname.addCdmEventListener(this);\r
-               } else {\r
-                       \r
-                       taxonname = null;\r
-               }\r
-               \r
-               setSite(site);\r
-               setInput(input);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return true;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       public void propertyChange(PropertyChangeEvent evt) {\r
-//             TaxonName taxonname = (TaxonName)evt.getNewValue();\r
-               this.taxonname = (TaxonName)evt.getNewValue();\r
-               System.out.println(((TaxonName)evt.getNewValue()).getName());\r
-               populateForm();\r
-               \r
-               // for individual fields, do something like:\r
-               //      if (evt.getPropertyName().equalsIgnoreCase("genus"))\r
-               //              txtGenus.setText ...\r
-       }\r
-\r
-//     public void onDelete(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-\r
-       public void onInsert(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void onLoad(Object arg0) {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-//     public void onUpdate(ICdmEventListenerRegistration arg0) {\r
-//             // TODO Auto-generated method stub\r
-//             \r
-//     }\r
-       \r
-       private static void addDropDown(final ToolItem item, final Menu menu) {\r
-               item.addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               if (event.detail == SWT.ARROW) {\r
-                                       Rectangle rect = item.getBounds();\r
-                                       Point pt = new Point(rect.x, rect.y + rect.height);\r
-                                       pt = item.getParent().toDisplay(pt);\r
-                                       menu.setLocation(pt.x, pt.y);\r
-                                       menu.setVisible(true);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/PropertySheetViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/PropertySheetViewer.java
deleted file mode 100644 (file)
index 0aff100..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.jface.viewers.ColumnLabelProvider;\r
-import org.eclipse.jface.viewers.TreeViewer;\r
-import org.eclipse.jface.viewers.TreeViewerColumn;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Listener;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.model.PropertySheetNode;\r
-\r
-/**\r
- * Creates a tree viewer with two columns, one for field names the other\r
- *  for their values. Note: labels and editing support for values column,\r
- *  content provider and input for viewer must be set by the calling method \r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class PropertySheetViewer extends TreeViewer {\r
-\r
-       final private TreeViewerColumn propertyFieldColumn;\r
-       private TreeViewerColumn propertyValueColumn;\r
-       private DataBindingContext bindingContext = new DataBindingContext();\r
-       \r
-       public PropertySheetViewer(Composite parent) {\r
-               // Note: SWT.FULL_SELECTION hides lines connecting nodes\r
-               super(parent, SWT.BORDER | SWT.FULL_SELECTION);\r
-\r
-               this.getTree().setLayoutData(new GridData(SWT.RIGHT, SWT.FILL, false, true));\r
-//             this.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));\r
-               \r
-               // create a column for property fields\r
-               propertyFieldColumn = new TreeViewerColumn(this, SWT.NONE);\r
-               propertyFieldColumn.getColumn().setMoveable(true);\r
-               propertyFieldColumn.setLabelProvider(new ColumnLabelProvider() {\r
-                       public String getText(Object element) {\r
-                           return ((PropertySheetNode) element).getPropertyField();\r
-                       }\r
-               });\r
-                               \r
-               // create a column for property values          \r
-               propertyValueColumn = new TreeViewerColumn(this, SWT.NONE);\r
-               propertyValueColumn.getColumn().setMoveable(true);\r
-               \r
-               this.getTree().setLinesVisible(true);\r
-               this.getTree().setHeaderVisible(true);\r
-//             this.getTree().getVerticalBar().setEnabled(true);\r
-               this.getTree().getVerticalBar().setEnabled(false);\r
-               \r
-               this.getTree().setSize(200, 300);\r
-               propertyValueColumn.getColumn().setWidth(100);\r
-               propertyFieldColumn.getColumn().setWidth(100);\r
-               \r
-//             try {\r
-//                     TableColumnLayout layout = new TableColumnLayout();\r
-//                     this.getTree().setLayout(layout);\r
-//                     \r
-//                     layout.setColumnData( propertyFieldColumn.getColumn(), new ColumnWeightData( 30 ) );\r
-//                     layout.setColumnData( propertyValueColumn.getColumn(), new ColumnWeightData( 60 ) );\r
-//             } catch (RuntimeException e) {\r
-//                     // TODO Auto-generated catch block\r
-//                     e.printStackTrace();\r
-//             }\r
-               \r
-               propertyFieldColumn.getColumn().addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               propertyFieldColumn.getColumn().pack();\r
-                       }\r
-               });\r
-               propertyValueColumn.getColumn().addListener(SWT.Selection, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               propertyValueColumn.getColumn().pack();\r
-                       }\r
-               });             \r
-               this.getTree().addListener(SWT.MeasureItem, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-//                             event.width *= 2;       \r
-                       }\r
-               });\r
-               \r
-       }\r
-\r
-       public TreeViewerColumn getPropertyFieldColumn() {\r
-               return propertyFieldColumn;\r
-       }\r
-\r
-       public TreeViewerColumn getPropertyValueColumn() {\r
-               return propertyValueColumn;\r
-       }\r
-\r
-       public DataBindingContext getBindingContext() {\r
-               return bindingContext;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/RecentNamesTableViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/RecentNamesTableViewer.java
deleted file mode 100644 (file)
index bcb93eb..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionOpenNameEditor;\r
-\r
-public class RecentNamesTableViewer extends TableViewer {\r
-\r
-       public RecentNamesTableViewer(Composite parent) {\r
-               super(parent, SWT.H_SCROLL | SWT.V_SCROLL);\r
-               this.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               \r
-               // Add content provider\r
-               ObservableListContentProvider rnViewerContentProviderList = new ObservableListContentProvider();\r
-               this.setContentProvider(rnViewerContentProviderList);\r
-               \r
-               // Label provider that listens for changes to name cache\r
-               IObservableMap[] rnViewerLabelProviderMaps = BeansObservables.observeMaps(rnViewerContentProviderList.\r
-                               getKnownElements(), Taxon.class, new String[]{"name"});\r
-               this.setLabelProvider(new ObservableMapLabelProvider(rnViewerLabelProviderMaps) {\r
-                       \r
-                       /*\r
-                        * JFace databinding syntax makes it to difficult to retrieve\r
-                        *      Taxon.getName().getNameCache, so override function that returns\r
-                        *  label\r
-                        * \r
-                        *  (non-Javadoc)\r
-                        * @see org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider#getColumnText(java.lang.Object, int)\r
-                        */\r
-                       public String getColumnText(Object element, int columnIndex) {\r
-                               return ((Taxon) element).getName().getTitleCache();\r
-                       }                       \r
-               });\r
-               \r
-               // Listens for new taxa opened for editing\r
-               this.setInput(Activator.getDefault().getObservableRecentNamesList());\r
-               \r
-               // On double click, open name editor\r
-               this.addDoubleClickListener(new IDoubleClickListener(){\r
-\r
-                       public void doubleClick(DoubleClickEvent event) {                                                               \r
-                               Taxon taxon = null;\r
-                               try {\r
-                                       taxon = (Taxon) ((StructuredSelection)event.getSelection()).getFirstElement();\r
-                               }catch (Exception e){\r
-                                       e.printStackTrace();\r
-                                       taxon = null;\r
-                               }\r
-                               new ActionOpenNameEditor(taxon).run();\r
-                       }\r
-               });\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/RelatedNameViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/RelatedNameViewer.java
deleted file mode 100644 (file)
index 639bf79..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Label;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-\r
-public class RelatedNameViewer extends NameViewer_ {\r
-\r
-       Control ctlChooseRelType;\r
-       \r
-       RelatedNameViewer(TaxonName taxonName, DataBindingContext bindingContext,\r
-                       Composite parent) {\r
-               super(taxonName, bindingContext, parent);\r
-               setViewerLayout();\r
-       }\r
-       \r
-       private void setViewerLayout() {\r
-               \r
-               ctlChooseRelType = new Label(parent, SWT.NONE);\r
-               ctlChooseRelType.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1));\r
-               ctlChooseRelType.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               ((Label) ctlChooseRelType).setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown_no_bg.gif"));\r
-               \r
-               styledText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));\r
-               styledText.setFont(SWTResourceManager.getFont("Georgia", 10, SWT.NONE));\r
-               styledText.setIndent(12);\r
-       }\r
-\r
-       public Control getCtlChooseRelType() {\r
-               return ctlChooseRelType;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/TaxonomicTreeViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/TaxonomicTreeViewer.java
deleted file mode 100644 (file)
index 8ad6ce3..0000000
+++ /dev/null
@@ -1,485 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.ICellEditorListener;\r
-import org.eclipse.jface.viewers.ICellModifier;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TextCellEditor;\r
-import org.eclipse.jface.viewers.TreeViewer;\r
-import org.eclipse.jface.viewers.ViewerComparator;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DragSource;\r
-import org.eclipse.swt.dnd.DragSourceEvent;\r
-import org.eclipse.swt.dnd.DragSourceListener;\r
-import org.eclipse.swt.dnd.DropTarget;\r
-import org.eclipse.swt.dnd.DropTargetAdapter;\r
-import org.eclipse.swt.dnd.DropTargetEvent;\r
-import org.eclipse.swt.dnd.TextTransfer;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.events.MenuAdapter;\r
-import org.eclipse.swt.events.MenuEvent;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Item;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-import org.eclipse.ui.PlatformUI;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionAddQuickName;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionMoveTaxon;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionOpenNameEditor;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionOpenNewChildNameEditor;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionRemoveTaxonFromTree;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionSaveTaxon;\r
-import eu.etaxonomy.taxeditor.prototype2.model.NameTreeContentProvider;\r
-\r
-/**\r
- * Taxon tree viewer which responds to events within individual taxa.\r
- * \r
- * Good overview of TreeViewer: \r
- *   http://www.eclipse.org/articles/Article-TreeViewer/TreeViewerArticle.htm\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class TaxonomicTreeViewer extends TreeViewer {\r
-       \r
-       /**\r
-        * Creates a lazy-loading taxonomic tree that is sorted by TitleCache,\r
-        *  and which listens for name changes and new taxa\r
-        *  \r
-        * @param parent\r
-        */\r
-       public TaxonomicTreeViewer(Composite parent) {\r
-               \r
-               // SW.VIRTUAL causes nodes to be loaded on-demand, improving performance\r
-               super(parent, SWT.VIRTUAL);\r
-\r
-               // Tree settings\r
-               final Tree tree = this.getTree();\r
-               tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true));\r
-               tree.setLinesVisible(false);\r
-               tree.setHeaderVisible(false);\r
-               \r
-               createContent();        \r
-               createDoubleClickListener();\r
-               createRightClickListener();\r
-               createQuickAdd();\r
-               createDragAndDrop();\r
-               createToolTips();\r
-       }\r
-       \r
-       /**\r
-        * Tool tips are used to show warnings; there is no tooltip mechanism for\r
-        *  individual tree items out-of-the-bo, so tipListener belows builds one\r
-        */\r
-       private void createToolTips() {\r
-               Tree tree = this.getTree();\r
-               \r
-               // Disable native tooltip\r
-               tree.setToolTipText ("");\r
-               \r
-               tree.addListener (SWT.Dispose, tipListener);\r
-               tree.addListener (SWT.KeyDown, tipListener);\r
-               tree.addListener (SWT.MouseMove, tipListener);\r
-               tree.addListener (SWT.MouseHover, tipListener);\r
-       }\r
-\r
-       /**\r
-        * Add drag and drop functionality\r
-        */\r
-       private void createDragAndDrop() {\r
-               final Tree tree = this.getTree();\r
-               Transfer[] types = new Transfer[] {TextTransfer.getInstance()};\r
-               int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK;\r
-               \r
-               final DragSource source = new DragSource (tree, operations);\r
-               source.setTransfer(types);\r
-               final TreeItem[] dragSourceItem = new TreeItem[1];\r
-               source.addDragListener (new DragSourceListener () {\r
-                       public void dragStart(DragSourceEvent event) {\r
-                               TreeItem[] selection = tree.getSelection();\r
-                               if (selection.length > 0) {\r
-                                       event.doit = true;\r
-                                       dragSourceItem[0] = selection[0];\r
-                               } else {\r
-                                       event.doit = false;\r
-                               }\r
-                       }\r
-                       public void dragSetData (DragSourceEvent event) {\r
-                               event.data = dragSourceItem[0].getText();\r
-                       }\r
-                       public void dragFinished(DragSourceEvent event) {\r
-                               if (event.detail == DND.DROP_MOVE)\r
-                                       dragSourceItem[0].dispose();\r
-                               dragSourceItem[0] = null; // should this be put into above conditional clause?\r
-                                       \r
-                       }\r
-               });\r
-\r
-               DropTarget target = new DropTarget(tree, operations);\r
-               target.setTransfer(types);\r
-               target.addDropListener (new DropTargetAdapter() {\r
-                       Display display = PlatformUI.getWorkbench().getDisplay();\r
-                       public void dragOver(DropTargetEvent event) {\r
-                               event.feedback = DND.FEEDBACK_EXPAND | DND.FEEDBACK_SCROLL;\r
-                               if (event.item != null) {\r
-                                       TreeItem item = (TreeItem)event.item;\r
-                                       Point pt = display.map(null, tree, event.x, event.y);\r
-                                       Rectangle bounds = item.getBounds();\r
-                                       if (pt.y < bounds.y + bounds.height/3) {\r
-                                               event.feedback |= DND.FEEDBACK_INSERT_BEFORE;\r
-                                       } else if (pt.y > bounds.y + 2*bounds.height/3) {\r
-                                               event.feedback |= DND.FEEDBACK_INSERT_AFTER;\r
-                                       } else {\r
-                                               event.feedback |= DND.FEEDBACK_SELECT;\r
-                                       }\r
-                               }\r
-                       }\r
-                       public void drop(DropTargetEvent event) {\r
-                               \r
-                               if (event.data == null) {\r
-                                       event.detail = DND.DROP_NONE;\r
-                                       return;\r
-                               }\r
-                               Taxon taxon = (Taxon) dragSourceItem[0].getData();\r
-                               Taxon parentTaxon = (Taxon) event.item.getData();\r
-                               \r
-                               new ActionMoveTaxon(taxon, parentTaxon).run();\r
-                               \r
-                               // TODO choose appropriate parentTaxon depending on where in tree,\r
-                               //  esp. BETWEEN entries, taxon is dragged\r
-                               \r
-//                             if (event.item == null) {\r
-//                                     // not sure which case this is ...\r
-//                                     TreeItem item = new TreeItem(tree, SWT.NONE);\r
-//                                     item.setText("unclear");\r
-//                             } else {\r
-//                                     TreeItem item = (TreeItem)event.item;\r
-//                                     Point pt = display.map(null, tree, event.x, event.y);\r
-//                                     Rectangle bounds = item.getBounds();\r
-//                                     TreeItem parent = item.getParentItem();\r
-//                                     System.out.println(((Taxon) parent.getData()).getName().getNameCache());\r
-//                                     if (parent != null) {\r
-//                                             TreeItem[] items = parent.getItems();\r
-//                                             int index = 0;\r
-//                                             for (int i = 0; i < items.length; i++) {\r
-//                                                     if (items[i] == item) {\r
-//                                                             index = i;\r
-//                                                             break;\r
-//                                                     }\r
-//                                             }\r
-//                                             if (pt.y < bounds.y + bounds.height/3) {\r
-//                                                     TreeItem newItem = new TreeItem(parent, SWT.NONE, index);\r
-//                                                     newItem.setText(text);\r
-//                                             } else if (pt.y > bounds.y + 2*bounds.height/3) {\r
-//                                                     TreeItem newItem = new TreeItem(parent, SWT.NONE, index+1);\r
-//                                                     newItem.setText(text);\r
-//                                             } else {\r
-//                                                     TreeItem newItem = new TreeItem(item, SWT.NONE);\r
-//                                                     newItem.setText(text);\r
-//                                             }\r
-//                                             \r
-//                                     } else {\r
-//                                             System.out.println("y");\r
-//                                             TreeItem[] items = tree.getItems();\r
-//                                             int index = 0;\r
-//                                             for (int i = 0; i < items.length; i++) {\r
-//                                                     if (items[i] == item) {\r
-//                                                             index = i;\r
-//                                                             break;\r
-//                                                     }\r
-//                                             }\r
-//                                             if (pt.y < bounds.y + bounds.height/3) {\r
-//                                                     TreeItem newItem = new TreeItem(tree, SWT.NONE, index);\r
-//                                                     newItem.setText(text);\r
-//                                             } else if (pt.y > bounds.y + 2*bounds.height/3) {\r
-//                                                     TreeItem newItem = new TreeItem(tree, SWT.NONE, index+1);\r
-//                                                     newItem.setText(text);\r
-//                                             } else {\r
-//                                                     TreeItem newItem = new TreeItem(item, SWT.NONE);\r
-//                                                     newItem.setText(text);\r
-//                                             }\r
-//                                     }\r
-//                             }\r
-                       }\r
-               });             \r
-       }\r
-\r
-       /**\r
-        * Taxa with no NameCache - i.e. added with quick name -\r
-        *  can be edited in place in the tax. tree\r
-        */\r
-       private void createQuickAdd() {\r
-               \r
-               final Tree tree = this.getTree();\r
-               final TextCellEditor taxTreeNodeEditor = new TextCellEditor(tree);\r
-               taxTreeNodeEditor.addListener(new ICellEditorListener() {\r
-                       public void applyEditorValue() {}\r
-                       public void cancelEditor() {\r
-                               // user has pressed ESC - transfer focus to parent item,\r
-                               //  remove taxon from tree\r
-                               Taxon taxon = (Taxon) tree.getSelection()[0].getData();\r
-                               tree.setSelection(tree.getSelection()[0].getParentItem());\r
-                               new ActionRemoveTaxonFromTree(taxon).run();\r
-                       }\r
-                       public void editorValueChanged(boolean oldValidState,\r
-                                       boolean newValidState) {}\r
-               });\r
-               \r
-               this.setCellEditors(new CellEditor[] {taxTreeNodeEditor});\r
-               this.setColumnProperties(new String[] {"col1"});\r
-               this.setCellModifier(new ICellModifier() {\r
-                       public boolean canModify(Object element, String property) {\r
-                               // If name element has not been initialized,\r
-                               //  this is a taxon added with QuickAdd\r
-                               if (((Taxon) element).getName().getTitleCache() == null)\r
-                                       return true;\r
-                               return false;\r
-                       }\r
-                       public Object getValue(Object element, String property) {\r
-                               // If this node is editable, TitleCache is by definition empty\r
-                               return "";\r
-                       }\r
-                       public void modify(Object element, String property, Object value) {\r
-                               \r
-                               // Get Taxon object from TreeItem\r
-                               Taxon taxon = (Taxon)((Item) element).getData();\r
-                               \r
-                               if (((String) value).equals("")) {\r
-                                       // Remove temporary Taxon from tree\r
-                                       tree.setSelection(tree.getSelection()[0].getParentItem());\r
-                                       new ActionRemoveTaxonFromTree(taxon).run();     \r
-                                       \r
-                               } else {\r
-                                       // Set Taxon's TitleCache, save it to CDM\r
-                                       taxon.getName().setTitleCache((String) value);\r
-                                       new ActionSaveTaxon(taxon).run();\r
-                               }\r
-                       }\r
-               });\r
-               \r
-       }\r
-\r
-       /**\r
-        * On double click, open name editor\r
-        */\r
-       private void createDoubleClickListener() {\r
-               this.addDoubleClickListener(new IDoubleClickListener(){\r
-\r
-                       public void doubleClick(DoubleClickEvent event) {                                                               \r
-                               Taxon taxon = null;\r
-                               try {\r
-                                       taxon = (Taxon) ((StructuredSelection)event.getSelection()).getFirstElement();\r
-                               }catch (Exception e){\r
-                                       e.printStackTrace();\r
-                                       taxon = null;\r
-                               }\r
-                               new ActionOpenNameEditor(taxon).run();\r
-                       }\r
-               });             \r
-       }\r
-\r
-       /**\r
-        * Make right-click menu for tree nodes\r
-        */\r
-       private void createRightClickListener() {\r
-               \r
-               final Tree tree = this.getTree();\r
-               final Menu menu = new Menu(tree); \r
-               tree.setMenu(menu);\r
-               menu.addMenuListener(new MenuAdapter() {\r
-                       public void menuShown(MenuEvent e) {\r
-                               \r
-                               // Get rid of existing menu items -\r
-                               //  same menu is re-used for all nodes\r
-                               MenuItem[] items = menu.getItems();\r
-                               for (int i = 0; i < items.length; i++) {\r
-                                       ((MenuItem) items[i]).dispose();\r
-                               }\r
-                               \r
-                               // Get Taxon associated with this node\r
-                               final Taxon taxon = (Taxon) tree.getSelection()[0].getData();\r
-                               System.out.println("open " + taxon.toString());\r
-                               \r
-                               // Add menu item to edit Taxon\r
-                               MenuItem itemEditTaxon = new MenuItem(menu, SWT.NONE);\r
-                               itemEditTaxon.setText("Edit taxon");\r
-                               itemEditTaxon.addSelectionListener(new SelectionListener() {\r
-                                       public void widgetDefaultSelected(SelectionEvent e) {}\r
-                                       public void widgetSelected(SelectionEvent e) {\r
-                                               new ActionOpenNameEditor(taxon).run();\r
-                                       }\r
-                               });\r
-\r
-                               new MenuItem(menu, SWT.SEPARATOR);\r
-                               \r
-                               // Add menu item to add a child node\r
-                               MenuItem itemAddChildTaxon = new MenuItem(menu, SWT.NONE);\r
-                               itemAddChildTaxon.setText("Add child taxon");\r
-                               itemAddChildTaxon.addSelectionListener(new SelectionListener() {\r
-                                       public void widgetDefaultSelected(SelectionEvent e) {}\r
-                                       public void widgetSelected(SelectionEvent e) {\r
-                                               new ActionOpenNewChildNameEditor(taxon).run();\r
-                                       }\r
-                               });\r
-                               \r
-                               // Add menu item to add a child node with edit name in place                            \r
-                               MenuItem itemQuickAdd = new MenuItem(menu, SWT.NONE);\r
-                               itemQuickAdd.setText("Add child taxon with quick name");\r
-                               itemQuickAdd.addSelectionListener(new SelectionListener() {\r
-                                       public void widgetDefaultSelected(SelectionEvent e) {}\r
-                                       public void widgetSelected(SelectionEvent e) {\r
-                                               new ActionAddQuickName(taxon).run();                                            \r
-                                       }\r
-                               });\r
-                       }\r
-               });\r
-       }\r
-       \r
-       /**\r
-        * Set up content providers and viewer input\r
-        */\r
-       private void createContent() {\r
-               // Use custom content provider extended to add tree node retrieval\r
-               ObservableListContentProvider viewerContentProviderList = new NameTreeContentProvider();\r
-               this.setContentProvider(viewerContentProviderList);\r
-                               \r
-               // Label provider that listens for changes to name cache\r
-               IObservableMap[] viewerLabelProviderMaps = BeansObservables.observeMaps(viewerContentProviderList.getKnownElements(), \r
-                               Taxon.class, new String[]{"name"});\r
-               this.setLabelProvider(new ObservableMapLabelProvider(viewerLabelProviderMaps) {\r
-                       /* \r
-                        * TODO only show warning if there is something taxonomically amiss \r
-                        * \r
-                        * @see org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider#getColumnImage(java.lang.Object, int)\r
-                        */\r
-                       public Image getColumnImage(Object element, int columnIndex) {\r
-                               if (((Taxon) element).getName().getHasProblem())\r
-                                       return ResourceManager.getPluginImage(Activator.getDefault(), "icons/warn_tsk.gif");\r
-                               return null;\r
-                       }\r
-                       /*\r
-                        * JFace databinding syntax makes it to difficult to retrieve\r
-                        *      Taxon.getName().getNameCache, so override function that returns\r
-                        *  label\r
-                        * \r
-                        *  (non-Javadoc)\r
-                        * @see org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider#getColumnText(java.lang.Object, int)\r
-                        */\r
-                       public String getColumnText(Object element, int columnIndex) {\r
-                               return ((Taxon) element).getName().getTitleCache();\r
-                       }                               \r
-               });\r
-               \r
-               // TaxonTreeList added to every time a node is opened with its\r
-               //  children, or when a new taxon is added\r
-               this.setInput(Activator.getDefault().getObservableTaxonTreeList());\r
-               \r
-               // Sort according to "getColumnText" above, i.e. by NameCache\r
-               this.setComparator(new ViewerComparator());\r
-       }\r
-\r
-       /**\r
-        * If taxon node in the tree is hidden, open and select it\r
-        * \r
-        * @param taxon\r
-        */\r
-       public void revealTaxon(Taxon taxon) {\r
-               this.setSelection(new StructuredSelection(taxon), true);\r
-               this.reveal(taxon);\r
-       }\r
-       \r
-       // Implement a "fake" tooltip\r
-       final Listener labelListener = new Listener () {\r
-               public void handleEvent (Event event) {\r
-                       Label label = (Label)event.widget;\r
-                       Shell shell = label.getShell ();\r
-                       switch (event.type) {\r
-                               case SWT.MouseDown:\r
-                                       Event e = new Event ();\r
-                                       e.item = (TableItem) label.getData ("_TABLEITEM");\r
-                                       // Assuming table is single select, set the selection as if\r
-                                       // the mouse down event went through to the table\r
-                                       Tree tree = TaxonomicTreeViewer.this.getTree();\r
-                                       tree.setSelection(new TreeItem [] {(TreeItem) e.item});\r
-                                       tree.notifyListeners (SWT.Selection, e);\r
-                                       shell.dispose ();\r
-                                       tree.setFocus();\r
-                                       break;\r
-                               case SWT.MouseExit:\r
-                                       shell.dispose ();\r
-                                       break;\r
-                       }\r
-               }\r
-       };      \r
-       \r
-       Listener tipListener = new Listener () {\r
-               Shell tip = null;\r
-               Label label = null;\r
-               public void handleEvent (Event event) {\r
-                       switch (event.type) {\r
-                               case SWT.Dispose:\r
-                               case SWT.KeyDown:\r
-                               case SWT.MouseMove: {\r
-                                       if (tip == null) break;\r
-                                       tip.dispose ();\r
-                                       tip = null;\r
-                                       label = null;\r
-                                       break;\r
-                               }\r
-                               case SWT.MouseHover: {\r
-                                       Item item = TaxonomicTreeViewer.this.getItemAt(new Point(event.x, event.y));\r
-                                       if (item != null) {\r
-                                               if (tip != null  && !tip.isDisposed ()) tip.dispose ();\r
-                                               tip = new Shell (Display.getCurrent(), SWT.ON_TOP | SWT.NO_FOCUS | SWT.TOOL);\r
-                                               tip.setBackground (Display.getCurrent().getSystemColor (SWT.COLOR_INFO_BACKGROUND));\r
-                                               FillLayout layout = new FillLayout ();\r
-                                               layout.marginWidth = 2;\r
-                                               tip.setLayout (layout);\r
-                                               label = new Label (tip, SWT.NONE);\r
-                                               label.setForeground (Display.getCurrent().getSystemColor (SWT.COLOR_INFO_FOREGROUND));\r
-                                               label.setBackground (Display.getCurrent().getSystemColor (SWT.COLOR_INFO_BACKGROUND));\r
-                                               label.setData ("_TABLEITEM", item);\r
-//                                             label.setText (item.getText ());\r
-                                               label.setText ("Joe mama");\r
-                                               label.addListener (SWT.MouseExit, labelListener);\r
-                                               label.addListener (SWT.MouseDown, labelListener);\r
-                                               Point size = tip.computeSize (SWT.DEFAULT, SWT.DEFAULT);\r
-                                               Rectangle rect = ((TreeItem) item).getBounds (0);\r
-                                               Point pt = TaxonomicTreeViewer.this.getTree().toDisplay (rect.x, rect.y);\r
-                                               tip.setBounds (pt.x, pt.y, size.x, size.y);\r
-                                               tip.setVisible (true);\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-       };\r
-       \r
-}\r
-\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/Testeroo.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/Testeroo.java
deleted file mode 100644 (file)
index 7a59741..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.observable.set.ISetChangeListener;\r
-import org.eclipse.core.databinding.observable.set.SetChangeEvent;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DropTarget;\r
-import org.eclipse.swt.dnd.DropTargetAdapter;\r
-import org.eclipse.swt.dnd.DropTargetEvent;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Shell;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.TaxonTransfer;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.GroupComposite;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.NameComposite;\r
-import eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport.TesterooWritableSet;\r
-\r
-public class Testeroo {\r
-\r
-       private static final Logger logger = Logger.getLogger(Testeroo.class);\r
-       \r
-       protected Shell shell;\r
-       /**\r
-        * Launch the application\r
-        * @param args\r
-        */\r
-       public static void main(String[] args) {\r
-               try {\r
-                       Testeroo window = new Testeroo();\r
-                       window.open();\r
-               } catch (Exception e) {\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Open the window\r
-        */\r
-       public void open() {\r
-               final Display display = Display.getDefault();\r
-               createContents(display);\r
-               shell.open();\r
-               shell.layout();\r
-               while (!shell.isDisposed()) {\r
-                       if (!display.readAndDispatch())\r
-                               display.sleep();\r
-               }\r
-       }\r
-       Taxon taxon;\r
-       Composite composite;\r
-       /**\r
-        * Create contents of the window\r
-        */\r
-       protected void createContents(Display display) {\r
-               if (logger.isDebugEnabled()){  logger.debug("Creating contents" );}\r
-                               \r
-               shell = new Shell();\r
-               shell.setLayout(new FillLayout());\r
-               shell.setSize(500, 375);\r
-               shell.setText("SWT Application");\r
-               \r
-               composite = new Composite(shell, SWT.NONE);\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.verticalSpacing = 10;\r
-               composite.setLayout(gridLayout);\r
-               composite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               \r
-               taxon = new Taxon();\r
-               taxon.setName(BotanicalName.PARSED_NAME("Accepted name"));\r
-                               \r
-               GroupComposite homoGroupComposite = new GroupComposite(composite);\r
-               homoGroupComposite.setTaxon(taxon);\r
-               \r
-               new NameComposite(homoGroupComposite, taxon);\r
-               \r
-               Synonym homosyn = new Synonym();\r
-               \r
-               homosyn.setName(BotanicalName.PARSED_NAME("Homotypic synonym"));\r
-               taxon.addSynonym(homosyn, SynonymRelationshipType.HOMOTYPIC_SYNONYM_OF());\r
-               new NameComposite(homoGroupComposite, homosyn, taxon);\r
-       \r
-               homoGroupComposite.drawRect();\r
-               \r
-               createSynAndHetGroup("Heterotypic synonym 1");\r
-               createSynAndHetGroup("Heterotypic synonym 2");\r
-               createSynAndHetGroup("Heterotypic synonym 3");\r
-               createSynAndHetGroup("Heterotypic synonym 4");\r
-\r
-               TesterooWritableSet.getInstance().addSetChangeListener\r
-               (new ISetChangeListener() {\r
-                       public void handleSetChange(SetChangeEvent event) {\r
-                               for ( Object addition: event.diff.getAdditions()) {\r
-                                       if (addition instanceof Synonym)\r
-                                               createHeterotypicalGroup((Synonym) addition);\r
-                               }\r
-                               composite.layout();\r
-                       }\r
-               });\r
-               \r
-               // Drop functionality\r
-               Transfer[] types = new Transfer[] {TaxonTransfer.getInstance()};\r
-               int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_DEFAULT;\r
-               DropTarget target = new DropTarget(composite, operations);\r
-               target.setTransfer(types);\r
-               target.addDropListener(dropTargetAdapter);\r
-               \r
-               composite.addListener(SWT.Modify, new Listener() {\r
-\r
-                       public void handleEvent(Event event) {\r
-                               System.out.println("!");\r
-                               \r
-                       }\r
-\r
-                       \r
-               });\r
-                               \r
-       }\r
-       \r
-       private void createSynAndHetGroup(String synonymNameCache) {\r
-               Synonym heterosyn = new Synonym();\r
-               heterosyn.setName(BotanicalName.PARSED_NAME(synonymNameCache)); \r
-               taxon.addSynonym(heterosyn, SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF());\r
-                               \r
-               createHeterotypicalGroup(heterosyn);\r
-       }\r
-       \r
-       private void createHeterotypicalGroup(Synonym heterosyn) {\r
-\r
-               GroupComposite heteroGroupComposite = new GroupComposite(composite);\r
-               heteroGroupComposite.setTaxon(taxon);\r
-               \r
-               new NameComposite(heteroGroupComposite, heterosyn, taxon).setFocus();\r
-\r
-               heteroGroupComposite.layout();\r
-               heteroGroupComposite.drawRect();\r
-               heteroGroupComposite.layout();\r
-       }\r
-       \r
-       DropTargetAdapter dropTargetAdapter = new DropTargetAdapter() {\r
-               \r
-               public void drop(DropTargetEvent event) {\r
-                       \r
-                       Synonym synonym = \r
-                                       (Synonym) event.data; \r
-                       \r
-                       GroupComposite heteroGroupComposite = new GroupComposite(composite);\r
-                       heteroGroupComposite.setTaxon(taxon);\r
-                       \r
-                       new NameComposite(heteroGroupComposite, synonym, taxon).setFocus();\r
-                       \r
-                       Testeroo.this.composite.layout();\r
-               }               \r
-       };\r
-}\r
-\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/UndoView.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/UndoView.java
deleted file mode 100644 (file)
index ec566f1..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view;\r
-\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.PaintEvent;\r
-import org.eclipse.swt.events.PaintListener;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Canvas;\r
-import org.eclipse.swt.widgets.Combo;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.FileDialog;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.List;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.ui.part.ViewPart;\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-\r
-public class UndoView extends ViewPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.prototype2.view.undoview"; //$NON-NLS-1$\r
-    private Table table;\r
-\r
-    /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               container.setLayout(new FillLayout(SWT.VERTICAL));\r
-\r
-               table = new Table(container, SWT.NONE);\r
-               table.getHorizontalBar().setVisible(false);\r
-               table.setLinesVisible(true);\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table, SWT.NONE);\r
-               newColumnTableColumn.setWidth(19);\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(1000);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem.setText(1, "Created taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Added fact (Distribution) \"California deciduous forest ...\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_2.setText(1, "Added fact (Distribution) \"Brazilian (Northerly region)\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "Moved taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_4.setText(1, "Added unknown syn. \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_5 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_5.setText(1, "Changed rel. type to homo. syn. for \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_6 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_6.setText(1, "Edited name \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_7 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_7.setText(new String[] {"Undo the last action"});\r
-               newItemTableItem_7.setImage(0, ResourceManager.getPluginImage(Activator.getDefault(), "icons/undo.gif"));\r
-               newItemTableItem_7.setText(1, "Deleted fact (Distribution) \"Brazilian (Northerly region)\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               //\r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();\r
-       }\r
-\r
-       /**\r
-        * Create the actions\r
-        */\r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/AnnotationMarkerAccess.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/AnnotationMarkerAccess.java
deleted file mode 100644 (file)
index c0de001..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.jface.text.source.IAnnotationAccess;\r
-import org.eclipse.jface.text.source.IAnnotationAccessExtension;\r
-import org.eclipse.jface.text.source.ImageUtilities;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.GC;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.widgets.Canvas;\r
-\r
-public class AnnotationMarkerAccess implements IAnnotationAccess, IAnnotationAccessExtension {\r
-    public Object getType(Annotation annotation) {\r
-        return annotation.getType();\r
-    }\r
-\r
-    public boolean isMultiLine(Annotation annotation) {\r
-        return true;\r
-    }\r
-\r
-    public boolean isTemporary(Annotation annotation) {\r
-        return !annotation.isPersistent();\r
-    }\r
-\r
-    public String getTypeLabel(Annotation annotation) {\r
-        if (annotation instanceof ErrorAnnotation)\r
-            return "Errors";\r
-\r
-        return null;\r
-    }\r
-\r
-    public int getLayer(Annotation annotation) {\r
-        if (annotation instanceof ErrorAnnotation)\r
-            return ((ErrorAnnotation)annotation).getLayer();\r
-\r
-        return 0;\r
-    }\r
-\r
-    public void paint(Annotation annotation, GC gc, Canvas canvas, Rectangle bounds) {\r
-        ImageUtilities.drawImage(((ErrorAnnotation)annotation).getImage(), \r
-                       gc, canvas, bounds, SWT.CENTER, SWT.TOP);\r
-    }\r
-\r
-    public boolean isPaintable(Annotation annotation) {\r
-        if (annotation instanceof ErrorAnnotation)\r
-            return ((ErrorAnnotation)annotation).getImage() != null;\r
-\r
-        return false;\r
-    }\r
-\r
-    public boolean isSubtype(Object annotationType, Object potentialSupertype) {\r
-        if (annotationType.equals(potentialSupertype))\r
-            return true;\r
-\r
-        return false;\r
-\r
-    }\r
-\r
-    public Object[] getSupertypes(Object annotationType) {\r
-        return new Object[0];\r
-    }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/CompositeRectangle.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/CompositeRectangle.java
deleted file mode 100644 (file)
index 0e80114..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.GC;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-public class CompositeRectangle {\r
-\r
-       GC gc;\r
-       Rectangle rectangle;\r
-       Composite composite;\r
-       \r
-       CompositeRectangle(Composite composite, Color color) {\r
-               this.gc = new GC(composite);\r
-               this.composite = composite;\r
-               draw(color);\r
-       }\r
-\r
-       public void draw(Color color) {\r
-               this.rectangle = composite.getClientArea();\r
-               gc.setForeground(color);\r
-               gc.drawRectangle(rectangle.x, rectangle.y, rectangle.width - 1, rectangle.height - 1);\r
-       }\r
-       \r
-       public void dispose() {\r
-               gc.dispose();\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/ErrorAnnotation.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/ErrorAnnotation.java
deleted file mode 100644 (file)
index ff0bb9d..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.core.resources.IMarker;\r
-import org.eclipse.jface.text.Position;\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.RGB;\r
-\r
-public class ErrorAnnotation extends Annotation {\r
-    private IMarker marker;\r
-    private String text;\r
-    private int line;\r
-    private Position position;\r
-\r
-    // error identifiers, images and colors\r
-    public static String ERROR_TYPE = "error.type";\r
-    public static Image ERROR_IMAGE;\r
-    public static final RGB ERROR_RGB = new RGB(255, 0, 0);    \r
-    \r
-    public ErrorAnnotation(IMarker marker) {\r
-        this.marker = marker;\r
-    }\r
-\r
-    public ErrorAnnotation(int line, String text) {\r
-        super(ERROR_TYPE, true, null);\r
-        this.marker = null;\r
-        this.line = line;\r
-        this.text = text;\r
-    }\r
-\r
-    public IMarker getMarker() {\r
-        return marker;\r
-    }\r
-\r
-    public int getLine() {\r
-        return line;\r
-    }\r
-\r
-    public String getText() {\r
-        return text;\r
-    }\r
-\r
-    public Image getImage() {\r
-        return ERROR_IMAGE;\r
-    }\r
-\r
-    public int getLayer() {\r
-        return 3;\r
-    }\r
-\r
-    public String getType() {\r
-        return ERROR_TYPE;\r
-    }\r
-\r
-    public Position getPosition() {\r
-        return position;\r
-    }\r
-\r
-    public void setPosition(Position position) {\r
-        this.position = position;\r
-    }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/GroupComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/GroupComposite.java
deleted file mode 100644 (file)
index 4df09bc..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DropTarget;\r
-import org.eclipse.swt.dnd.DropTargetAdapter;\r
-import org.eclipse.swt.dnd.DropTargetEvent;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.graphics.GC;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Listener;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.TaxonTransfer;\r
-import eu.etaxonomy.taxeditor.prototype2.view.NameEditorView;\r
-\r
-public class GroupComposite extends Composite {\r
-       \r
-       Taxon taxon;\r
-       Rectangle rectangle;\r
-       HomotypicalGroup homotypicalGroup;\r
-       boolean acceptedGroup;\r
-       private NameEditorView nameEditorView;\r
-       \r
-       public void setTaxon(Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       public GroupComposite(Composite parent) {\r
-               super(parent, SWT.NONE);\r
-               \r
-               // Graphic layout of composite\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.verticalSpacing = 0;\r
-               gridLayout.marginHeight = 3;\r
-               this.setLayout(gridLayout);\r
-               this.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));\r
-               this.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-                                       \r
-//             this.addListener(SWT.Resize, new Listener() {\r
-//                     public void handleEvent(Event event) {\r
-//                             GC gc = new GC(GroupComposite.this);\r
-//                             rectangle = GroupComposite.this.getClientArea();\r
-//                             gc.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_BLACK));\r
-//                             gc.drawRectangle(rectangle.x, rectangle.y, rectangle.width - 1, rectangle.height - 1);\r
-//                             System.out.println(rectangle.height);\r
-//                     }\r
-//             });             \r
-               \r
-               // Drop functionality\r
-               Transfer[] types = new Transfer[] {TaxonTransfer.getInstance()};\r
-               int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_DEFAULT;\r
-               DropTarget target = new DropTarget(this, operations);\r
-               target.setTransfer(types);\r
-               target.addDropListener(new DropTargetAdapter() {\r
-                                               \r
-                       public void dragEnter(DropTargetEvent event) {\r
-                               \r
-                               \r
-                               \r
-//                             for (Control child : GroupComposite.this.getChildren()) {\r
-//                                     if (child.getClass() != NameComposite.class) continue;\r
-////                                   System.out.println(child.getClass() + " " + event.data.getClass());\r
-//                                     \r
-//                                     if (((NameComposite) child).getName() == TaxonTransfer.getInstance().getTaxon().getName()) {\r
-//                                             event.detail = DND.DROP_NONE;\r
-//                                             return;\r
-//                                     }\r
-//                             }\r
-                               \r
-//                             if (((NameComposite) event.widget).getParent() == GroupComposite.this)\r
-//                                     event.detail = DND.DROP_NONE;\r
-//                             rectangle = GroupComposite.this.getClientArea();\r
-//                             GC gc = new GC(GroupComposite.this);\r
-//                             rectangle = GroupComposite.this.getClientArea();\r
-//                             gc.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_BLACK));\r
-//                             gc.drawRectangle(rectangle.x, rectangle.y, rectangle.width - 1, rectangle.height - 1);\r
-                               \r
-//                             rectangle.draw(Display.getDefault().getSystemColor\r
-//                                             (SWT.COLOR_BLACK));\r
-                       }\r
-                       \r
-                       public void dragLeave(DropTargetEvent event) {\r
-//                             rectangle.draw(Display.getDefault().getSystemColor\r
-//                                             (SWT.COLOR_GRAY));\r
-                       }\r
-                       \r
-                       public void drop(DropTargetEvent event) {\r
-                               Synonym synonym = (Synonym) event.data; \r
-                               \r
-                               GroupComposite dropTargetComposite = \r
-                                       (GroupComposite) ((DropTarget) \r
-                                                       event.getSource()).getControl();\r
-                               \r
-                               new NameComposite(dropTargetComposite, synonym, taxon).\r
-                                               setNameEditorView(dropTargetComposite.getNameEditorView());\r
-                       }\r
-               });\r
-       }\r
-       \r
-       public void drawRect() {\r
-               GC gc = new GC(this);\r
-               Rectangle rect = this.getClientArea();\r
-               gc.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_GREEN));\r
-               gc.drawRectangle(rect.x, rect.y, rect.width - 2, rect.height - 2);              \r
-       }\r
-\r
-       public HomotypicalGroup getHomotypicalGroup() {\r
-               return homotypicalGroup;\r
-       }\r
-\r
-       public void setHomotypicalGroup(HomotypicalGroup homotypicalGroup) {\r
-               this.homotypicalGroup = homotypicalGroup;\r
-       }\r
-       \r
-       public boolean isAcceptedGroup() {\r
-               return acceptedGroup;\r
-       }\r
-       \r
-       public void setAcceptedGroup(boolean acceptedGroup) {\r
-               this.acceptedGroup = acceptedGroup;\r
-       }\r
-\r
-       public void setNameEditorView(NameEditorView nameEditorView) {\r
-               this.nameEditorView = nameEditorView;\r
-       }\r
-       \r
-       public NameEditorView getNameEditorView() {\r
-               return nameEditorView;\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MyCompletionProcessor.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MyCompletionProcessor.java
deleted file mode 100644 (file)
index 1b4c03e..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.jface.text.ITextViewer;\r
-import org.eclipse.jface.text.contentassist.CompletionProposal;\r
-import org.eclipse.jface.text.contentassist.ContextInformation;\r
-import org.eclipse.jface.text.contentassist.ICompletionProposal;\r
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;\r
-import org.eclipse.jface.text.contentassist.IContextInformation;\r
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Image;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.Activator;\r
-\r
-public class MyCompletionProcessor implements IContentAssistProcessor {\r
-\r
-       protected final static String[] myProposals = { "Unknown synonymy", \r
-                                                       "Create homotypic synonym",\r
-                                                       "Create heterotypic synoynm",\r
-                                                       "Create basionym",\r
-                                                       "Create replaced synonym",\r
-                                                       "Create homonym",\r
-                                                       "Create orthographic variant",\r
-                                                       "Create misapplied name",\r
-                                                       "Create concept relation"};\r
-       protected final static String[] myIcons = { "icons/unknown.gif", \r
-                                                       "icons/homosyn.gif", \r
-                                                       "icons/heterosyn.gif",\r
-                                                       "icons/basionym.gif",\r
-                                                       "icons/repsyn.gif",\r
-                                                       "icons/homonym.gif",\r
-                                                       "icons/orthovariant.gif",\r
-                                                       "icons/misapplied.gif",\r
-                                                       "icons/concept.gif"};\r
-       protected final static String[] myContexts = { "To create a homotypic synonym, there are many things to consider. I could go on all day.",\r
-                                                       "Create homotypic synonym",\r
-                                                       "Create heterotypic synoynm",\r
-                                                       "Create basionym",\r
-                                                       "Create replaced synonym",\r
-                                                       "Create homonym",\r
-                                                       "Create orthographic variant",\r
-                                                       "Create misapplied name",\r
-                                                       "Create concept relation"};\r
-       \r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public ICompletionProposal[] computeCompletionProposals(\r
-               ITextViewer viewer, int documentOffset) {\r
-               String context = "Describe formatting / parsing of this rel. type.";\r
-//             Image img = ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown.gif");\r
-               ICompletionProposal[] result =\r
-                       new ICompletionProposal[myProposals.length];\r
-               for (int i = 0; i < myProposals.length; i++) {\r
-                     IContextInformation contextInfo = \r
-                                new ContextInformation(null, myProposals[i]+" Style");\r
-                       result[i] = new CompletionProposal(myProposals[i],documentOffset, 0, \r
-                                       myProposals[i].length(), ResourceManager.getPluginImage(Activator.getDefault(), myIcons[i]), \r
-                                       myProposals[i], contextInfo, context);\r
-\r
-               }\r
-               return result;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public char[] getCompletionProposalAutoActivationCharacters() {\r
-               return new char[] { '=', (char) SWT.CR };\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public char[] getContextInformationAutoActivationCharacters() {\r
-               return null;\r
-       }\r
-\r
-       // For Context information \r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public IContextInformationValidator getContextInformationValidator() {\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public IContextInformation[] computeContextInformation(\r
-               ITextViewer viewer,\r
-               int documentOffset) {\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * Method declared on IContentAssistProcessor\r
-        */\r
-       public String getErrorMessage() {\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MyRuleScanner.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MyRuleScanner.java
deleted file mode 100644 (file)
index a0b7638..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.jface.text.TextAttribute;\r
-import org.eclipse.jface.text.rules.EndOfLineRule;\r
-import org.eclipse.jface.text.rules.IRule;\r
-import org.eclipse.jface.text.rules.IToken;\r
-import org.eclipse.jface.text.rules.RuleBasedScanner;\r
-import org.eclipse.jface.text.rules.SingleLineRule;\r
-import org.eclipse.jface.text.rules.Token;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-public class MyRuleScanner extends RuleBasedScanner {\r
-       private static Color TAG_COLOR= new Color(Display.getCurrent(), new RGB(200, 0, 0));\r
-       private static Color COMMENT_COLOR= new Color(Display.getCurrent(), new RGB(0, 200, 0));\r
-\r
-       public MyRuleScanner() {\r
-               IToken tagToken =\r
-                       new Token(\r
-                               new TextAttribute(TAG_COLOR));\r
-\r
-               IToken commentToken= new Token(new TextAttribute(COMMENT_COLOR));\r
-\r
-               IRule[] rules = new IRule[2];\r
-               //Add rule for processing instructions\r
-               rules[0] = new SingleLineRule("<myTag", "myTag>", tagToken);\r
-               rules[1] = (new EndOfLineRule("//", commentToken)); //$NON-NLS-1$\r
-               setRules(rules);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MySourceViewerConfig.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/MySourceViewerConfig.java
deleted file mode 100644 (file)
index c088e98..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.TextAttribute;\r
-import org.eclipse.jface.text.contentassist.ContentAssistant;\r
-import org.eclipse.jface.text.contentassist.IContentAssistant;\r
-import org.eclipse.jface.text.presentation.IPresentationReconciler;\r
-import org.eclipse.jface.text.presentation.PresentationReconciler;\r
-import org.eclipse.jface.text.rules.DefaultDamagerRepairer;\r
-import org.eclipse.jface.text.rules.Token;\r
-import org.eclipse.jface.text.source.ISourceViewer;\r
-import org.eclipse.jface.text.source.SourceViewerConfiguration;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-public class MySourceViewerConfig extends SourceViewerConfiguration {\r
-       private MyRuleScanner scanner;\r
-       private static Color DEFAULT_TAG_COLOR =\r
-               new Color(Display.getCurrent(), new RGB(0, 0, 200));\r
-\r
-       public MySourceViewerConfig() {\r
-\r
-       }\r
-\r
-       protected MyRuleScanner getTagScanner() {\r
-               if (scanner == null) {\r
-                       scanner = new MyRuleScanner();\r
-                       scanner.setDefaultReturnToken(\r
-                               new Token(new TextAttribute(DEFAULT_TAG_COLOR)));\r
-               }\r
-               return scanner;\r
-       }\r
-\r
-       /**\r
-        * Define reconciler for MyEditor\r
-        */\r
-       public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer) {\r
-               PresentationReconciler reconciler = new PresentationReconciler();\r
-               DefaultDamagerRepairer dr = new DefaultDamagerRepairer(getTagScanner());\r
-               reconciler.setDamager(dr, IDocument.DEFAULT_CONTENT_TYPE);\r
-               reconciler.setRepairer(dr, IDocument.DEFAULT_CONTENT_TYPE);\r
-               return reconciler;\r
-       }\r
-       \r
-       public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {\r
-\r
-               ContentAssistant assistant = new ContentAssistant();\r
-               assistant.setContentAssistProcessor(\r
-                       new MyCompletionProcessor(),\r
-                       IDocument.DEFAULT_CONTENT_TYPE);\r
-               assistant.enableAutoActivation(true);\r
-               assistant.setAutoActivationDelay(50);\r
-               assistant.setProposalPopupOrientation(\r
-                       IContentAssistant.PROPOSAL_OVERLAY);\r
-               assistant.setStatusLineVisible(true);\r
-               assistant.setStatusMessage("Create a nomenclatural or taxonomic relationship");\r
-               assistant.setProposalSelectorBackground(\r
-                               new Color(Display.getCurrent(), new RGB(255, 255, 255)));\r
-               assistant.setInformationControlCreator(\r
-                               getInformationControlCreator(sourceViewer)); // this is what pops up the yellow context box\r
-               return assistant;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameComposite.java
deleted file mode 100644 (file)
index 2ff088b..0000000
+++ /dev/null
@@ -1,336 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.text.Position;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DragSource;\r
-import org.eclipse.swt.dnd.DragSourceEvent;\r
-import org.eclipse.swt.dnd.DragSourceListener;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.events.FocusAdapter;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.ModifyEvent;\r
-import org.eclipse.swt.events.ModifyListener;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.MouseListener;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionPopulatePropertySheet;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.TaxonTransfer;\r
-import eu.etaxonomy.taxeditor.prototype2.view.NameEditorView;\r
-import eu.etaxonomy.taxeditor.prototype2.view.NameViewer;\r
-\r
-public class NameComposite extends Composite {\r
-       \r
-       public static final int ACCEPTED = 0;\r
-       public static final int HOMOTYPIC_SYNONYM = 1;\r
-       public static final int HETEROTYPIC_SYNONYM = 2;\r
-       \r
-       Label relationLabel;\r
-       Synonym synonym;\r
-       Taxon taxon;\r
-       int compositeType;\r
-       NameViewer nameViewer;\r
-       boolean initialized = false;\r
-\r
-       /**\r
-        * Temporary procedure until ability to get accepted taxon\r
-        *  from synonym is implemented\r
-        *  \r
-        * @param parent\r
-        * @param synonym\r
-        * @param taxon\r
-        */\r
-       public NameComposite(Composite parent, Synonym synonym, Taxon taxon) {\r
-               super(parent, SWT.NONE);\r
-               \r
-               this.taxon = taxon;\r
-               this.synonym = synonym;\r
-\r
-               // Either initialize group composite, \r
-               //  or assume its homotypic group\r
-               if (parent instanceof GroupComposite) {\r
-                       \r
-                       if (((GroupComposite) parent).isAcceptedGroup())\r
-                               this.compositeType = HOMOTYPIC_SYNONYM;\r
-                       else\r
-                               this.compositeType = HETEROTYPIC_SYNONYM;                       \r
-                       \r
-                       if (((GroupComposite) parent).getHomotypicalGroup() == null) \r
-                               ((GroupComposite) parent).setHomotypicalGroup(\r
-                                               synonym.getName().getHomotypicalGroup());\r
-                       else\r
-                               synonym.getName().setHomotypicalGroup(\r
-                                               ((GroupComposite) parent).getHomotypicalGroup());\r
-               }               \r
-               \r
-               createNameComposite();          \r
-       }\r
-       \r
-       public NameComposite(Composite parent, Synonym synonym) {\r
-               super(parent, SWT.NONE);\r
-                \r
-               this.synonym = synonym;\r
-//             this.taxon = (Taxon) synonym.getAcceptedTaxa().toArray()[0];\r
-\r
-               // Either initialize group composite, \r
-               //  or assume its homotypic group\r
-               if (parent instanceof GroupComposite) {\r
-                       \r
-                       if (((GroupComposite) parent).isAcceptedGroup())\r
-                               this.compositeType = HOMOTYPIC_SYNONYM;\r
-                       else\r
-                               this.compositeType = HETEROTYPIC_SYNONYM;\r
-                       \r
-                       if (((GroupComposite) parent).getHomotypicalGroup() == null) \r
-                               ((GroupComposite) parent).setHomotypicalGroup(\r
-                                               synonym.getName().getHomotypicalGroup());\r
-                       else\r
-                               synonym.getName().setHomotypicalGroup(\r
-                                               ((GroupComposite) parent).getHomotypicalGroup());\r
-               }                               \r
-               \r
-               createNameComposite();\r
-       }\r
-\r
-       public NameComposite(Composite parent, Taxon taxon) {\r
-               super(parent, SWT.NONE);\r
-                               \r
-               this.taxon = taxon;\r
-               this.compositeType = ACCEPTED;\r
-               \r
-               // Initialize homotypic group component\r
-               if (parent instanceof GroupComposite) {\r
-                                               \r
-                       ((GroupComposite) parent).setHomotypicalGroup(\r
-                                       taxon.getName().getHomotypicalGroup());\r
-                       ((GroupComposite) parent).setAcceptedGroup(true);\r
-               }\r
-                       \r
-               createNameComposite();\r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       public void createNameComposite() {\r
-\r
-               Assert.isNotNull(taxon);\r
-               \r
-               // Graphic layout of composite\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.verticalSpacing = 0;\r
-               gridLayout.marginWidth = 5;\r
-               gridLayout.marginHeight = 5;\r
-               gridLayout.horizontalSpacing = 5;\r
-               gridLayout.numColumns = (compositeType == ACCEPTED? 1: 2);\r
-               this.setLayout(gridLayout);\r
-               this.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               this.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               if (compositeType != ACCEPTED) {\r
-//                     relationLabel.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));    \r
-                       relationLabel = new Label(this, SWT.NONE);\r
-                       relationLabel.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false));                                     \r
-                       relationLabel.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-                       \r
-                       if (this.compositeType == HOMOTYPIC_SYNONYM)\r
-                               relationLabel.setImage(SWTResourceManager.getImage(NameComposite.class, "homosyn_no_bg.gif"));\r
-//                             relationLabel.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/homosyn_no_bg.gif"));\r
-                       else\r
-                               relationLabel.setImage(SWTResourceManager.getImage(NameComposite.class, "heterosyn_no_bg.gif"));\r
-//                             relationLabel.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/heterosyn_no_bg.gif"));\r
-               }\r
-               nameViewer = new NameViewer(this);      \r
-               nameViewer.getTextWidget().setLayoutData(\r
-                               new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               nameViewer.getTextWidget().setFont(\r
-                               SWTResourceManager.getFont("Georgia", \r
-                                               (compositeType == ACCEPTED? 12 : 10), \r
-                                               SWT.NONE));     \r
-               \r
-               // Add verify listener to check for line breaks\r
-               nameViewer.getTextWidget().addVerifyListener(\r
-                               new NameViewerVerifyListener(taxon));\r
-               \r
-               // Listen for changes to name\r
-               nameViewer.getTextWidget().addModifyListener(new ModifyListener () {\r
-                       public void modifyText(ModifyEvent e) {\r
-                               if (initialized) {\r
-                                       String text = ((StyledText) e.widget).getText();\r
-                                       setName(BotanicalName.PARSED_NAME(text));\r
-                               }\r
-                       }\r
-               });\r
-\r
-               // Listen for focus to send this name to the property sheet\r
-               nameViewer.getTextWidget().addFocusListener(new FocusAdapter () {\r
-                       public void focusGained(FocusEvent e) {\r
-                               \r
-                               if (nameEditorView != null)\r
-                                       nameEditorView.setPropertySheetNodes(getName());\r
-                       }\r
-               });\r
-               \r
-               // Listen for user selecting text\r
-               nameViewer.getTextWidget().addSelectionListener(new SelectionListener() {\r
-\r
-                       public void widgetDefaultSelected(SelectionEvent e) {\r
-                               // TODO Auto-generated method stub\r
-                               \r
-                       }\r
-\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               // e.x = start, y = e.finish - strange but true\r
-//                             nameViewer.getAnnotationModel().addAnnotation(\r
-//                                             new WarningAnnotation(0, "Could not parse name."), \r
-//                                             new Position(e.x, e.y - e.x));\r
-                       }\r
-                       \r
-               });\r
-               \r
-               \r
-               // Put name into name viewer, show error if parsed incorrectly\r
-               nameViewer.getTextWidget().setText(getName().getTitleCache() == null ? "" : getName().getTitleCache());\r
-               nameViewer.setShowError(getName().getHasProblem());\r
-               \r
-               // Put cursor at end of name viewer\r
-               nameViewer.getTextWidget().setCaretOffset(\r
-                               nameViewer.getTextWidget().getText().length());\r
-               \r
-               // Set composite to initialized - any new input will now be parsed\r
-               initialized = true;\r
-               \r
-               // Add drag functionality to synonyms only\r
-               if (compositeType == ACCEPTED) return;\r
-               \r
-               // make menu temp\r
-               createTempMenu();\r
-               \r
-               // **************** DRAG FUNCTIONALITY **************** //\r
-               Transfer[] types = new Transfer[] {TaxonTransfer.getInstance()};\r
-               int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK;\r
-               \r
-               // Make composite draggable\r
-               DragSource dragComposite = new DragSource (this, operations);\r
-               dragComposite.setTransfer(types);\r
-               dragComposite.addDragListener(dragSourceListener);\r
-\r
-               // Make relation label draggable        \r
-               DragSource dragLabel = new DragSource (relationLabel, operations);\r
-               dragLabel.setTransfer(types);\r
-               dragLabel.addDragListener(dragSourceListener);\r
-       }\r
-               \r
-       /**\r
-        * Shared drag listener which destroys the NameComposite after the drag\r
-        *  gesture is completed.\r
-        */\r
-       DragSourceListener dragSourceListener = new DragSourceListener () {\r
-               \r
-               CompositeRectangle rectangle;\r
-               \r
-               public void dragStart(DragSourceEvent event) {\r
-\r
-                       rectangle = new CompositeRectangle(NameComposite.this,\r
-                                       Display.getDefault().getSystemColor(SWT.COLOR_GRAY));\r
-                       \r
-                       event.doit = true;\r
-               }\r
-               public void dragSetData (DragSourceEvent event) {\r
-                       TaxonTransfer.getInstance().setTaxon(synonym);\r
-               }\r
-               public void dragFinished(DragSourceEvent event) {\r
-                       if (event.detail == DND.DROP_MOVE) {\r
-                               Composite parent = NameComposite.this.getParent();\r
-                               Composite grandParent = parent.getParent();\r
-                               \r
-//                             rectangle.dispose();\r
-                               NameComposite.this.dispose();\r
-                               \r
-                               // If this was the last child in its homo. group,\r
-                               //  drop the group from the interface \r
-                               if (parent.getChildren().length == 0)\r
-                                       parent.dispose();\r
-                               else\r
-                                       // Only used if we're dropping it on its current homo. group\r
-                                       parent.layout();\r
-                               \r
-                               grandParent.layout();\r
-                       }\r
-               }\r
-       };\r
-       private NameEditorView nameEditorView;\r
-       \r
-       public void setName(TaxonNameBase name) {\r
-               (compositeType == ACCEPTED? taxon : synonym).setName(name);\r
-               nameViewer.setShowError(name.getHasProblem());\r
-       }\r
-       \r
-       public TaxonNameBase getName() {\r
-               return (compositeType == ACCEPTED? taxon : synonym).getName();                          \r
-       }\r
-\r
-       public void setNameEditorView(NameEditorView nameEditorView) {\r
-               this.nameEditorView = nameEditorView;           \r
-       }\r
-       \r
-       private void createTempMenu() {\r
-               final Menu menu1 = new Menu(relationLabel);\r
-               relationLabel.setMenu(menu1);\r
-               relationLabel.addMouseListener(new MouseListener() {\r
-\r
-                       public void mouseDoubleClick(MouseEvent e) {\r
-                               // TODO Auto-generated method stub\r
-                               \r
-                       }\r
-\r
-                       public void mouseDown(MouseEvent e) {\r
-                               menu1.setVisible(true);\r
-                       }\r
-\r
-                       public void mouseUp(MouseEvent e) {\r
-                               // TODO Auto-generated method stub\r
-                               \r
-                       }\r
-                       \r
-               });\r
-\r
-               final MenuItem deletehieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               deletehieraciumFuscoatrumMenuItem.setText("Delete \"Hieracium wolffii subsp. trichotranssilvanicum\" from this taxon");\r
-\r
-               new MenuItem(menu1, SWT.SEPARATOR);\r
-\r
-               final MenuItem moveMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               moveMenuItem.setText("Make \"Hieracium wolffii subsp. trichotranssilvanicum\" the accepted name of a new taxon");\r
-\r
-               final MenuItem makehieraciumFuscoatrumMenuItem = new MenuItem(menu1, SWT.NONE);\r
-               makehieraciumFuscoatrumMenuItem.setText("Make \"Hieracium wolffii subsp. trichotranssilvanicum\" the accepted name of this taxon");\r
-\r
-               new MenuItem(menu1, SWT.SEPARATOR);\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_3 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_3.setText("Turn \"Hieracium wolffii subsp. trichotranssilvanicum\" into a basionym");\r
-\r
-               final MenuItem turnhieraciumFuscoatrumMenuItem_4 = new MenuItem(menu1, SWT.NONE);\r
-               turnhieraciumFuscoatrumMenuItem_4.setText("...");\r
-       }\r
-\r
-       \r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDamagerRepairer.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDamagerRepairer.java
deleted file mode 100644 (file)
index 1e10e2a..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.jface.text.DocumentEvent;\r
-import org.eclipse.jface.text.IRegion;\r
-import org.eclipse.jface.text.ITypedRegion;\r
-import org.eclipse.jface.text.rules.DefaultDamagerRepairer;\r
-import org.eclipse.jface.text.rules.ITokenScanner;\r
-\r
-public class NameDamagerRepairer extends DefaultDamagerRepairer {\r
-\r
-       public NameDamagerRepairer(ITokenScanner scanner) {\r
-               super(scanner);\r
-       }\r
-       \r
-       public IRegion getDamageRegion(ITypedRegion partition, DocumentEvent e, boolean documentPartitioningChanged) {\r
-               \r
-               System.out.println("documentPartitioningChanged: " + documentPartitioningChanged);\r
-               \r
-               return super.getDamageRegion(partition, e, documentPartitioningChanged);\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDocument.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDocument.java
deleted file mode 100644 (file)
index 4fa4dd3..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.jface.text.Document;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-\r
-\r
-/**\r
- * Extends Document to associate a TaxonName\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameDocument extends Document {\r
-\r
-       private TaxonNameBase taxonName = new BotanicalName(Rank.SPECIES());\r
-\r
-       public NameDocument (String initialContent) {\r
-               super(initialContent);\r
-       }\r
-       \r
-       public NameDocument (TaxonNameBase taxonName) {\r
-               this("");\r
-               this.taxonName = taxonName;\r
-       }\r
-       \r
-       public NameDocument () {\r
-               this("");\r
-       }\r
-\r
-       public TaxonNameBase getTaxonName() {\r
-               return taxonName;\r
-       }\r
-\r
-       public void setTaxonName(TaxonNameBase taxonName) {\r
-               this.taxonName = taxonName;\r
-       }       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDocumentListener.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameDocumentListener.java
deleted file mode 100644 (file)
index a2d75b8..0000000
+++ /dev/null
@@ -1,145 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import java.util.Scanner;\r
-\r
-import org.eclipse.jface.text.BadLocationException;\r
-import org.eclipse.jface.text.DocumentEvent;\r
-import org.eclipse.jface.text.IDocumentListener;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.ModifyEvent;\r
-import org.eclipse.swt.events.ModifyListener;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.view.NameEditorView;\r
-\r
-/**\r
- * This listener catches all line breaks other than carriage\r
- *  returns at end-of-line, and creates new name viewers,\r
- *  for instance, if user pastes a block of taxon information.  \r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameDocumentListener implements IDocumentListener {\r
-\r
-       \r
-       /**\r
-        * the View on which createdRelatedName gets called in case of line breaks \r
-        */\r
-       private NameEditorView nameEditorView;\r
-       /**\r
-        * the Control after which any new related names are created  \r
-        */     \r
-       private Control control;\r
-       /**\r
-        * the Composite that is resized after any change  \r
-        */     \r
-       private Composite parent;\r
-       \r
-       public NameDocumentListener(NameEditorView nameEditorView, Control control,\r
-                       Composite parent) {\r
-               this.nameEditorView = nameEditorView;\r
-               this.control = control;\r
-               this.parent = parent;\r
-       }\r
-\r
-       public void documentAboutToBeChanged(DocumentEvent e) {\r
-\r
-               String text = e.getText();\r
-               System.out.println("b4: " + e.getText());\r
-               \r
-               e.fText = "yo";\r
-               System.out.println("aft: " + e.getText());\r
-               \r
-//             int length = e.getLength();\r
-//             int offset = e.getOffset();\r
-//             int docLength = e.getDocument().getLength(); // length of doc BEFORE insert\r
-//                             \r
-//             if (text.contains(System.getProperty("line.separator"))) {\r
-//                     \r
-//                     if (offset < docLength) {\r
-                       // remove text following insert from document,\r
-                       //  add to insert text   \r
-//                             try {\r
-//                                     text += e.getDocument().get(offset, docLength - offset);\r
-//                                     e.getDocument().replace(offset, docLength - offset, "");\r
-//                             } catch (BadLocationException e1) {\r
-//                                     System.out.println(e1.getMessage());\r
-//                                     e1.printStackTrace();\r
-//                             }\r
-//                     }       \r
-//                                             \r
-//                     \r
-//                     \r
-//                     Scanner scanner = new Scanner( text );\r
-//                     scanner.useDelimiter (System.getProperty("line.separator"));\r
-//                     \r
-//                     StyledText SText = (StyledText) control;\r
-//                     nameEditorView.createRelatedName(SText, "test");\r
-//                     StyledText lastSText = null;\r
-//                     while (scanner.hasNext()) {\r
-//                             if (lastSText == null)\r
-//                                     e.getDocument().set(scanner.next());\r
-//                             else\r
-//                                     SText = nameEditorView.createRelatedName(SText, scanner.next()).\r
-//                                                     getTextWidget();\r
-//                             lastSText = SText;\r
-//                     }       \r
-//                     \r
-//                     SText.setFocus();\r
-//                     \r
-//                     // put cursor at EOL of last sourceviewer\r
-//                     SText.setCaretOffset(SText.getText().length()); \r
-//                     \r
-//             }\r
-               \r
-       }\r
-       \r
-       public void documentChanged(DocumentEvent event) {\r
-               \r
-//             System.out.println("Offset: " + event.getOffset());\r
-//             System.out.println("Get: " + event.getDocument().get());\r
-\r
-               String text = event.getDocument().get();\r
-                               \r
-               if (text.endsWith(System.getProperty("line.separator"))) {\r
-                       event.getDocument().set(text.trim());\r
-                       nameEditorView.createRelatedName(control,"help");\r
-               }\r
-//             \r
-//             int breakOffset = text.indexOf(System.getProperty("line.separator"));\r
-//             if (breakOffset > -1) {\r
-//                     try {\r
-//                             event.getDocument().replace(breakOffset, text.length() - breakOffset, "");\r
-//                     } catch (BadLocationException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             System.out.println(e.getMessage());\r
-//                             e.printStackTrace();\r
-//                     }\r
-//             }\r
-\r
-//             if (event.getDocument().get().contains(System.getProperty("line.separator"))) {\r
-//                     Scanner scanner = new Scanner(event.getDocument().get());\r
-//                     scanner.useDelimiter (System.getProperty("line.separator"));\r
-//                     try {\r
-//                             event.getDocument().replace(\r
-//                                             0, event.getDocument().get().length(), scanner.next());\r
-//                     } catch (BadLocationException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-//                     }\r
-////           document.set(scanner.next());\r
-//             \r
-//                     while (scanner.hasNext()) {\r
-//                             System.out.println("Create new relname with: " + scanner.next());\r
-//                     }\r
-//             }               \r
-               \r
-               // re-draw parent in case text controls need re-sizing -\r
-               //  could also be the case if databinding has modified text\r
-//             nameEditorView.createRelatedName(control,"help");\r
-               \r
-//             parent.getParent().layout();            \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitionScanner.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitionScanner.java
deleted file mode 100644 (file)
index 6f96cde..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.rules.IPartitionTokenScanner;\r
-import org.eclipse.jface.text.rules.IToken;\r
-import org.eclipse.jface.text.rules.Token;\r
-\r
-\r
-public class NamePartitionScanner implements IPartitionTokenScanner {\r
-       \r
-       public final static String GENUS = "genus";\r
-       public final static String SPECIFIC_EPITHET = "specificEpithet";\r
-       public final static String EVERYTHING_ELSE = "everythingElse";\r
-       \r
-       public final static String[] PARTITION_TYPES = {GENUS, SPECIFIC_EPITHET, EVERYTHING_ELSE};\r
-       \r
-       private NameDocument document;\r
-       private int offset;\r
-       private int currentOffset;\r
-       private int length;\r
-       private TaxonName taxonName;\r
-               \r
-       String [] words;\r
-       int index;\r
-       private String[] words2;\r
-       \r
-       private String text;\r
-       \r
-       public NamePartitionScanner() {\r
-       }\r
-       \r
-       public void setPartialRange(IDocument document, int offset, int length,\r
-                       String contentType, int partitionOffset) {\r
-\r
-               System.out.println("--->\t" + offset + "\n\t" + length\r
-                                + "\n\t" + contentType + "\n\t" + partitionOffset);\r
-               \r
-               Assert.isTrue(document instanceof NameDocument, "NamePartitionScanner can only scan a NameDocument.");\r
-               this.document = (NameDocument) document;\r
-\r
-               text = document.get();\r
-                               \r
-               // check whether this is the initial scan\r
-               if (this.taxonName == null) {\r
-                       \r
-                       this.taxonName = this.document.getTaxonName();\r
-                       \r
-                       // is this a pre-existing taxon name? \r
-                       if (this.taxonName.getGenus() != null) {\r
-                               \r
-                               // map all partition types to their respective taxon name properties\r
-                               words = new String [] {this.taxonName.getGenus(), this.taxonName.getSpecificEpithet()};\r
-                               this.document.set(this.taxonName.getGenus() + " " + this.taxonName.getSpecificEpithet());\r
-                               \r
-                       }\r
-               } else if (text.length() > 0) {\r
-                       \r
-                       // does text contain line breaks?\r
-//                     if (text.contains(System.getProperty("line.separator"))) {\r
-//                             Scanner scanner = new Scanner(text);\r
-//                             scanner.useDelimiter (System.getProperty("line.separator"));\r
-//                             \r
-////                           document.set(scanner.next());\r
-//                             \r
-//                             while (scanner.hasNext()) {\r
-//                                     System.out.println("Create new relname with: " + scanner.next());\r
-//                             }\r
-//                     }\r
-                       \r
-                       // only scan first line if there are line breaks in the text\r
-//                     Scanner scanner = new Scanner(text);\r
-//                     scanner.useDelimiter (System.getProperty("line.separator"));\r
-//                     text = scanner.next();\r
-                       // TODO replace with regexp pattern matching\r
-                       words = text.split("\\s");\r
-               }\r
-               \r
-//             System.out.println("setPartialRange:\n\t" + offset + "\n\t" + length + "\n\t" + contentType + "\n\t" + partitionOffset);\r
-\r
-               this.index = 0;\r
-               this.currentOffset = 0;\r
-       }\r
-\r
-       public int getTokenLength() {           \r
-               return this.length;\r
-       }\r
-\r
-       public int getTokenOffset() {\r
-               return this.offset;\r
-       }\r
-\r
-       public IToken nextToken() {\r
-               IToken token;\r
-               if (index == words.length || index == PARTITION_TYPES.length) {\r
-                       token = Token.EOF;\r
-                       System.out.println("EOFMOFO" + text);\r
-               } else {\r
-                       token = new Token(PARTITION_TYPES[index]);\r
-                       this.length = words[index].length();\r
-                       this.offset = this.currentOffset;\r
-                       \r
-               }\r
-               \r
-               index++;\r
-               currentOffset += this.length + 1; \r
-                       \r
-               return token;\r
-       }\r
-\r
-       public void setRange(IDocument document, int offset, int  length) {\r
-               setPartialRange(document, offset, length, null, -1);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitionScanner_.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitionScanner_.java
deleted file mode 100644 (file)
index 275aded..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.jface.text.rules.ICharacterScanner;\r
-import org.eclipse.jface.text.rules.IPredicateRule;\r
-import org.eclipse.jface.text.rules.IToken;\r
-import org.eclipse.jface.text.rules.IWordDetector;\r
-import org.eclipse.jface.text.rules.RuleBasedPartitionScanner;\r
-import org.eclipse.jface.text.rules.Token;\r
-import org.eclipse.jface.text.rules.WordRule;\r
-\r
-public class NamePartitionScanner_ extends RuleBasedPartitionScanner {\r
-       public final static String SINGLE_WORD = "__single_word";\r
-       public final static String[] PARTITION_TYPES = {SINGLE_WORD}; \r
-       \r
-       public NamePartitionScanner_()\r
-               {\r
-               super();\r
-                               \r
-               IPredicateRule[] rules = new IPredicateRule[1];\r
-               \r
-               IToken word = new Token(SINGLE_WORD);\r
-               rules[0] = new WordPredicateRule (word);\r
-               \r
-               setPredicateRules(rules);\r
-       }\r
-       \r
-       class WordPredicateRule extends WordRule implements IPredicateRule {\r
-\r
-               private IToken fSuccessToken;\r
-               \r
-               public WordPredicateRule(IToken successToken) {\r
-                       super(new IWordDetector() {\r
-                               \r
-                               public boolean isWordPart(char c) {\r
-                                       return !Character.isWhitespace(c);\r
-                               }\r
-       \r
-                               public boolean isWordStart(char c) {\r
-                                       return !Character.isWhitespace(c);\r
-                               }\r
-                               \r
-                       });\r
-                       this.fSuccessToken = successToken;\r
-               }\r
-\r
-               public IToken evaluate(ICharacterScanner scanner, boolean resume) {\r
-                       return super.evaluate(scanner);\r
-               }\r
-               \r
-               public IToken evaluate(ICharacterScanner scanner) {\r
-                       \r
-                       StringBuffer fBuffer = new StringBuffer();\r
-                       \r
-                       int c = scanner.read();\r
-                       if (c != ICharacterScanner.EOF && fDetector.isWordStart((char) c)) {\r
-                               if (fColumn == UNDEFINED || (fColumn == scanner.getColumn() - 1)) {\r
-\r
-                                       fBuffer.setLength(0);\r
-                                       do {\r
-                                               fBuffer.append((char) c);\r
-                                               c= scanner.read();\r
-                                       } while (c != ICharacterScanner.EOF && fDetector.isWordPart((char) c));\r
-                                       scanner.unread();\r
-\r
-                                       return fSuccessToken;\r
-                               }\r
-                       }\r
-\r
-                       scanner.unread();\r
-                       return Token.UNDEFINED;\r
-               }\r
-               \r
-\r
-               public IToken getSuccessToken() {\r
-                       return fSuccessToken;\r
-               }\r
-               \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitioner.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitioner.java
deleted file mode 100644 (file)
index bc98ded..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import java.util.Scanner;\r
-\r
-import org.eclipse.jface.text.BadLocationException;\r
-import org.eclipse.jface.text.BadPositionCategoryException;\r
-import org.eclipse.jface.text.DocumentEvent;\r
-import org.eclipse.jface.text.IRegion;\r
-import org.eclipse.jface.text.ITypedRegion;\r
-import org.eclipse.jface.text.rules.FastPartitioner;\r
-import org.eclipse.jface.text.rules.IPartitionTokenScanner;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.widgets.Control;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.view.NameEditorView;\r
-\r
-public class NamePartitioner extends FastPartitioner {\r
-\r
-       private NameEditorView nameEditorView;\r
-       private Control precedingControl;\r
-\r
-       public NamePartitioner(IPartitionTokenScanner scanner,\r
-                       String[] legalContentTypes, \r
-                       NameEditorView nameEditorView, Control precedingControl) { \r
-               super(scanner, legalContentTypes);\r
-               this.nameEditorView = nameEditorView;\r
-               this.precedingControl = precedingControl;\r
-       }\r
-       \r
-       protected void initialize() {\r
-               \r
-               // if there is unparsed text, put it in the document's taxonname\r
-//             fDocument.addPosition(new Position());\r
-               \r
-               super.initialize();\r
-               try {\r
-                       System.out.println(this.getPositions().length + " positions in new sourceviewer");\r
-               } catch (BadPositionCategoryException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-       \r
-       public IRegion documentChanged2_(DocumentEvent e) {\r
-\r
-               System.out.println("we're in");\r
-               \r
-               String text = e.getText();\r
-               int length = e.getLength();\r
-               int offset = e.getOffset();\r
-               int docLength = e.getDocument().getLength(); // length of doc BEFORE insert\r
-               \r
-               if (text.contains(System.getProperty("line.separator"))) {\r
-                       if (offset < docLength) {\r
-                       // remove text following insert from document,\r
-                       //  add to insert text   \r
-                               try {\r
-                                       text += e.getDocument().get(offset, docLength - offset);\r
-                                       e.getDocument().replace(offset, docLength - offset, "");\r
-                               } catch (BadLocationException e1) {\r
-                                       System.out.println(e1.getMessage());\r
-                                       e1.printStackTrace();\r
-                               }\r
-                       }       \r
-                       \r
-                       Scanner scanner = new Scanner( text );\r
-                       scanner.useDelimiter (System.getProperty("line.separator"));\r
-                       \r
-                       StyledText SText = (StyledText) precedingControl;\r
-                       nameEditorView.createRelatedName(SText, "test");\r
-                       StyledText lastSText = null;\r
-                       while (scanner.hasNext()) {\r
-                               if (lastSText == null)\r
-                                       e.getDocument().set(scanner.next());\r
-                               else\r
-                                       SText = nameEditorView.createRelatedName(SText, scanner.next()).\r
-                                                       getTextWidget();\r
-                               lastSText = SText;\r
-                       }       \r
-                       \r
-                       SText.setFocus();\r
-                       \r
-                       // put cursor at EOL of last sourceviewer\r
-                       SText.setCaretOffset(SText.getText().length()); \r
-                       \r
-                       return null;\r
-               } \r
-               \r
-//             System.out.println("we made it this far");\r
-               \r
-               return super.documentChanged2(e);\r
-       }\r
-       \r
-       public ITypedRegion[] computePartitioning(int offset, int length, boolean includeZeroLengthPartitions) {\r
-               System.out.println("computePartitioning called\n\t" + offset + "\n\t" + length + "\n\t" + includeZeroLengthPartitions);\r
-               return super.computePartitioning(offset, length, includeZeroLengthPartitions);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitioner__.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NamePartitioner__.java
deleted file mode 100644 (file)
index ff98f26..0000000
+++ /dev/null
@@ -1,141 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import java.beans.PropertyDescriptor;\r
-import java.lang.reflect.Field;\r
-\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.value.IObservableValue;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.text.BadLocationException;\r
-import org.eclipse.jface.text.BadPositionCategoryException;\r
-import org.eclipse.jface.text.DocumentEvent;\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.IDocumentPartitioner;\r
-import org.eclipse.jface.text.ITypedRegion;\r
-import org.eclipse.jface.text.TypedPosition;\r
-import org.eclipse.jface.text.rules.FastPartitioner;\r
-import org.eclipse.jface.text.rules.IPartitionTokenScanner;\r
-\r
-\r
-public class NamePartitioner__ implements IDocumentPartitioner {\r
-\r
-       private static final String NAME_CONTENT_TYPES_CATEGORY = "__name_content_types_category";\r
-       /**\r
-        * The position category this partitioner uses to store the document's partitioning information.\r
-        */\r
-       private final String fPositionCategory;\r
-       private NameDocument fDocument;\r
-       private String[] contentTypes = {"genus","specificEpithet"};\r
-       \r
-       public NamePartitioner__() {\r
-               fPositionCategory = NAME_CONTENT_TYPES_CATEGORY + hashCode();\r
-       }\r
-\r
-       public ITypedRegion[] computePartitioning(int offset, int length) {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public void connect(IDocument document) {\r
-               Assert.isTrue(document instanceof NameDocument, \r
-                               "NamePartitioner__ requires a NameDocument");\r
-               this.fDocument = (NameDocument) document;\r
-               this.fDocument.addPositionCategory(fPositionCategory);\r
-               \r
-               TaxonName tn = fDocument.getTaxonName();\r
-               \r
-               if (tn == null) {\r
-                       // find matching pattern to init TaxonName\r
-                       \r
-                       document.get(); \r
-               } else {\r
-                       // construct partitions from TaxonName\r
-                                               \r
-                       try {\r
-                               TypedPosition[] positions = new TypedPosition[contentTypes.length];\r
-                               int offset = 0;\r
-                               String text = "";\r
-                               \r
-                               for (int i = 0; i < contentTypes.length; i++) {\r
-                                       String field = contentTypes[i];\r
-                                       \r
-                                       IObservableValue observeValue = BeansObservables.observeValue(tn, field);\r
-                                       \r
-                                       String value = (String) observeValue.getValue();\r
-                                       int length = value.length();\r
-                                                                               \r
-                                       TypedPosition p = new TypedPosition(offset, length, field);\r
-                                       positions[i] = p;\r
-                                       \r
-                                       offset += length + 1;\r
-                                       text += value + " ";    \r
-                               }\r
-                               fDocument.set(text);\r
-                               for (int i = 0; i < positions.length; i++)\r
-                                       fDocument.addPosition(fPositionCategory, positions[i]);\r
-//                     } catch (BadLocationException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-//                     } catch (SecurityException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-//                     } catch (NoSuchFieldException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-//                     } catch (IllegalArgumentException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-//                     } catch (IllegalAccessException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-//                     } catch (BadPositionCategoryException e) {\r
-//                             // TODO Auto-generated catch block\r
-//                             e.printStackTrace();\r
-                       } catch (Exception e) {\r
-                               e.printStackTrace();\r
-                               System.out.println(e.getMessage());\r
-                       }\r
-               }\r
-       }\r
-\r
-       public void disconnect() {\r
-               // TODO Auto-generated method stub\r
-               \r
-       }\r
-\r
-       public void documentAboutToBeChanged(DocumentEvent event) {\r
-               System.out.println("You are here: " + getContentType(event.fOffset));\r
-//             System.out.println("You are here: " + event.fOffset);\r
-       }\r
-\r
-       public boolean documentChanged(DocumentEvent event) {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       public String getContentType(int offset) {\r
-               ITypedRegion region = null;\r
-               try {\r
-                       region = fDocument.getPartition(offset);\r
-               } catch (BadLocationException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-               return region.getType();\r
-       }\r
-\r
-       public String[] getLegalContentTypes() {\r
-               return contentTypes;\r
-       }\r
-\r
-       public ITypedRegion getPartition(int offset) {\r
-               ITypedRegion region = null;\r
-               try {\r
-                       region = fDocument.getPartition(offset);\r
-               } catch (BadLocationException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-               return region;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerConfig.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerConfig.java
deleted file mode 100644 (file)
index ce5d5f1..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.jface.text.presentation.IPresentationReconciler;\r
-import org.eclipse.jface.text.presentation.PresentationReconciler;\r
-import org.eclipse.jface.text.rules.DefaultDamagerRepairer;\r
-import org.eclipse.jface.text.source.ISourceViewer;\r
-import org.eclipse.jface.text.source.SourceViewerConfiguration;\r
-\r
-public class NameViewerConfig extends SourceViewerConfiguration {\r
-\r
-       /** \r
-        * Whenever a change is made to the document, a notification is sent to the \r
-        *  IPresentationDamager for each content type in the affected area of the document. \r
-        *  The IPresentationDamager in turn returns an IRegion indicating the area of the \r
-        *  document which needs to be rebuilt as a result of the change. This information is \r
-        *  then passed on to the IPresentationRepairer, which is responsible for reapplying \r
-        *  the textual presentation for the affected region.\r
-        *  \r
-        *  This all probably sounds quite complicated. Fortunately you probably won't ever need \r
-        *  to implement any of these classes yourself. JFace Text provides a \r
-        *  DefaultDamagerRepairer which does the job both of the IPresentationDamager and the \r
-        *  IPresentationRepairer. It also provides a PresentationReconciler class which performs \r
-        *  the co-ordination role we described earlier.\r
-        *  \r
-        *  ...\r
-        *  \r
-        *  If you understand document partitioning then you are in a very good position to understand \r
-        *  syntax highlighting in a JFace Text application. Essentially, syntax highlighting involves \r
-        *  dividing a region into tokens, each of which has its own text display attributes. The \r
-        *  standard mechanism for doing this also involves the use of the already familiar tokens, \r
-        *  scanners and rules.\r
-        *   \r
-        **/  \r
-       public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer)\r
-       {\r
-           PresentationReconciler reconciler = new PresentationReconciler();\r
-           \r
-           DefaultDamagerRepairer dr = new NameDamagerRepairer(new NamePartitionScanner());\r
-//         reconciler.setDamager(dr, "genus");\r
-//         reconciler.setRepairer(dr, "genus");            \r
-           \r
-           return reconciler;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerKeyListener.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerKeyListener.java
deleted file mode 100644 (file)
index 2946ef1..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.KeyListener;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionAddSynonymToTaxon;\r
-\r
-/**\r
- * The only purpose of this listener is to catch carriage returns\r
- *  at end-of-line, and create new empty name viewers.\r
- *  \r
- * Carriage returns in the middle of a line are caught by\r
- *  NameViewerModifyListener. \r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameViewerKeyListener implements KeyListener {\r
-\r
-       private Taxon taxon;\r
-       \r
-       public NameViewerKeyListener(Taxon taxon) {\r
-               \r
-               Assert.isNotNull(taxon);\r
-               this.taxon = taxon;\r
-       }\r
-\r
-       public void keyPressed(KeyEvent e) {\r
-               StyledText sText = (StyledText) e.widget;\r
-                               \r
-               // If user has pressed carriage return at EOL,\r
-               //  the modifyListener doesn't catch it -\r
-               //  make new source viewer\r
-               if (e.character == SWT.CR && \r
-                               sText.getCaretOffset() == sText.getText().length()) {\r
-                       new ActionAddSynonymToTaxon(taxon, "").run();\r
-               }\r
-       }\r
-       public void keyReleased(KeyEvent e) { }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerModifyListener.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerModifyListener.java
deleted file mode 100644 (file)
index 2b83f60..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import java.util.Scanner;\r
-\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.ModifyEvent;\r
-import org.eclipse.swt.events.ModifyListener;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionAddSynonymToTaxon;\r
-\r
-/**\r
- * This listener catches all line breaks other than carriage\r
- *  returns at end-of-line, and creates new name viewers,\r
- *  for instance, if user pastes a block of taxon information.  \r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameViewerModifyListener implements ModifyListener {\r
-\r
-       private Taxon taxon;\r
-       \r
-       public NameViewerModifyListener(Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-\r
-       public void modifyText(ModifyEvent e) {\r
-\r
-               StyledText sText = (StyledText) e.widget;\r
-               NameComposite nameComposite = (NameComposite) sText.getParent();\r
-                               \r
-               // User has copy-pasted multi-line text - \r
-               //  split it into new source viewers\r
-               if (sText.getText().contains("\r") || sText.getText().contains("\n")) {\r
-                       \r
-                       Scanner scanner = new Scanner( sText.getText() );\r
-                       scanner.useDelimiter (System.getProperty("line.separator"));\r
-\r
-                       nameComposite.getName().setTitleCache(scanner.next());\r
-                       while (scanner.hasNext())\r
-                               new ActionAddSynonymToTaxon(taxon, scanner.next()).run();                               \r
-                       \r
-                       // Put cursor at EOL of original sourceviewer\r
-                       sText.setFocus();\r
-                       sText.setCaretOffset(sText.getText().length());\r
-                       return;\r
-               }\r
-                               \r
-               // Text now contains no line breaks - parse it and send it to the name composite\r
-               nameComposite.getName().setTitleCache(sText.getText());\r
-//             nameComposite.setName(BotanicalName.PARSED_NAME(sText.getText()));\r
-               \r
-//             ITaxonNameParser<BotanicalName> parser = TaxonNameParserBotanicalNameImpl.NEW_INSTANCE();       \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerVerifyListener.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/NameViewerVerifyListener.java
deleted file mode 100644 (file)
index 944dd6d..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import java.util.Scanner;\r
-\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.VerifyEvent;\r
-import org.eclipse.swt.events.VerifyListener;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.prototype2.controller.ActionAddSynonymToTaxon;\r
-\r
-/**\r
- * Checks text entered into a name viewer for line breaks, creates\r
- *  new synonyms accordingly\r
- * \r
- * @author p.ciardelli\r
- */\r
-public class NameViewerVerifyListener implements VerifyListener {\r
-       \r
-       private Taxon taxon;\r
-\r
-       NameViewerVerifyListener(Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       /* \r
-        * Checks for 3 conditions of name viewer text:\r
-        *   1) no line breaks in text\r
-        *   2) line break at the end of the text\r
-        *   3) line break in the middle of the text\r
-        *   \r
-        * (non-Javadoc)\r
-        * @see org.eclipse.swt.events.VerifyListener#verifyText(org.eclipse.swt.events.VerifyEvent)\r
-        */\r
-       public void verifyText(VerifyEvent e) {\r
-                               \r
-               String verifyText = e.text;\r
-               \r
-               StyledText styledText = (StyledText)e.widget;\r
-               String widgetText = styledText.getText(); \r
-               int cursorPosition = styledText.getCaretOffset();\r
-               \r
-               // Is there a line break in verifyText?\r
-               if (!verifyText.contains(System.getProperty("line.separator")))\r
-                       // Parse text normally\r
-                       return;\r
-               \r
-               // Don't add verifyText without further processing\r
-               e.doit = false;\r
-               \r
-               // If user has entered return at the end of the line,\r
-               //  make a new, empty synonym\r
-               if (widgetText.length() == cursorPosition &&\r
-                               verifyText.equals(System.getProperty("line.separator"))) {\r
-                       new ActionAddSynonymToTaxon(taxon, "").run();\r
-                       return;\r
-               }\r
-               \r
-               // Concatenate old and new texts\r
-               String textForSplitting = widgetText.substring(0, cursorPosition) \r
-                               + verifyText\r
-                               + widgetText.substring(cursorPosition);\r
-               \r
-               // Split on line breaks\r
-               Scanner scanner = new Scanner( textForSplitting );\r
-               scanner.useDelimiter (System.getProperty("line.separator"));\r
-               \r
-               // Put first string into name viewer\r
-               styledText.setText(scanner.next());     \r
-               \r
-               // Start new synonyms with the rest\r
-               while (scanner.hasNext())\r
-                       new ActionAddSynonymToTaxon(taxon, scanner.next()).run();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/SimpleNamePartitioner.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/SimpleNamePartitioner.java
deleted file mode 100644 (file)
index a2a5b21..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import java.util.Scanner;\r
-\r
-import org.eclipse.jface.text.BadLocationException;\r
-import org.eclipse.jface.text.DocumentEvent;\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.IDocumentPartitioner;\r
-import org.eclipse.jface.text.ITypedRegion;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.widgets.Control;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.view.NameEditorView;\r
-\r
-public class SimpleNamePartitioner implements IDocumentPartitioner {\r
-\r
-       private NameEditorView nameEditorView;\r
-       private Control precedingControl;\r
-       \r
-       public SimpleNamePartitioner(NameEditorView nameEditorView, Control precedingControl) {\r
-               this.nameEditorView = nameEditorView;\r
-               this.precedingControl = precedingControl;               \r
-       }\r
-       \r
-       public ITypedRegion[] computePartitioning(int offset, int length) {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public void connect(IDocument document) {\r
-               // TODO Auto-generated method stub\r
-\r
-       }\r
-\r
-       public void disconnect() {\r
-               // TODO Auto-generated method stub\r
-\r
-       }\r
-\r
-       public void documentAboutToBeChanged(DocumentEvent e) {\r
-\r
-               String text = e.getText();\r
-               int length = e.getLength();\r
-               int offset = e.getOffset();\r
-               int docLength = e.getDocument().getLength(); // length of doc BEFORE insert\r
-               \r
-               if (text.contains(System.getProperty("line.separator"))) {\r
-                       if (offset < docLength) {\r
-       //               remove text following insert from document,\r
-       //                add to insert text     \r
-                               try {\r
-                                       text += e.getDocument().get(offset, docLength - offset);\r
-                                       e.getDocument().replace(offset, docLength - offset, "");\r
-                               } catch (BadLocationException e1) {\r
-                                       System.out.println(e1.getMessage());\r
-                                       e1.printStackTrace();\r
-                               }\r
-                       }       \r
-                       \r
-                       Scanner scanner = new Scanner( text );\r
-                       scanner.useDelimiter (System.getProperty("line.separator"));\r
-                       \r
-                       StyledText SText = (StyledText) precedingControl;\r
-                       nameEditorView.createRelatedName(SText, "test");\r
-                       StyledText lastSText = null;\r
-                       while (scanner.hasNext()) {\r
-                               if (lastSText == null)\r
-                                       e.getDocument().set(scanner.next());\r
-                               else\r
-                                       SText = nameEditorView.createRelatedName(SText, scanner.next()).\r
-                                                       getTextWidget();\r
-                               lastSText = SText;\r
-                       }       \r
-                       \r
-                       SText.setFocus();\r
-                       \r
-                       // put cursor at EOL of last sourceviewer\r
-                       SText.setCaretOffset(SText.getText().length()); \r
-               }\r
-       }\r
-\r
-       public boolean documentChanged(DocumentEvent event) {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       public String getContentType(int offset) {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String[] getLegalContentTypes() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public ITypedRegion getPartition(int offset) {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/TesterooWritableSet.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/TesterooWritableSet.java
deleted file mode 100644 (file)
index 48b3ecc..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.core.databinding.observable.set.WritableSet;\r
-import org.eclipse.jface.databinding.swt.SWTObservables;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-public class TesterooWritableSet extends WritableSet {\r
-       private static final TesterooWritableSet INSTANCE = new TesterooWritableSet();\r
-       \r
-       public static TesterooWritableSet getInstance() {\r
-               return INSTANCE;\r
-       }\r
-       \r
-       public TesterooWritableSet() {\r
-               super(SWTObservables.getRealm(Display.getDefault()));\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/WarningAnnotation.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/WarningAnnotation.java
deleted file mode 100644 (file)
index 92f89d2..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.nameviewersupport;\r
-\r
-import org.eclipse.core.resources.IMarker;\r
-import org.eclipse.jface.text.Position;\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.RGB;\r
-\r
-public class WarningAnnotation extends Annotation {\r
-    private IMarker marker;\r
-    private String text;\r
-    private int line;\r
-    private Position position;\r
-\r
-    // error identifiers, images and colors\r
-    public static String WARNING_TYPE = "warning.type";\r
-    public static Image WARNING_IMAGE;\r
-    public static final RGB WARNING_RGB = new RGB(244, 200, 45);    \r
-    \r
-    public WarningAnnotation(IMarker marker) {\r
-        this.marker = marker;\r
-    }\r
-\r
-    public WarningAnnotation(int line, String text) {\r
-        super(WARNING_TYPE, true, null);\r
-        this.marker = null;\r
-        this.line = line;\r
-        this.text = text;\r
-    }\r
-\r
-    public IMarker getMarker() {\r
-        return marker;\r
-    }\r
-\r
-    public int getLine() {\r
-        return line;\r
-    }\r
-\r
-    public String getText() {\r
-        return text;\r
-    }\r
-\r
-    public Image getImage() {\r
-        return WARNING_IMAGE;\r
-    }\r
-\r
-    public int getLayer() {\r
-        return 3;\r
-    }\r
-\r
-    public String getType() {\r
-        return WARNING_TYPE;\r
-    }\r
-\r
-    public Position getPosition() {\r
-        return position;\r
-    }\r
-\r
-    public void setPosition(Position position) {\r
-        this.position = position;\r
-    }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/heterosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/heterosyn_no_bg.gif
deleted file mode 100644 (file)
index 02a6d38..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/heterosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/homosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/homosyn_no_bg.gif
deleted file mode 100644 (file)
index 19575f7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/nameviewersupport/homosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetContentProvider.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetContentProvider.java
deleted file mode 100644 (file)
index 3d46e42..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.propertysheetsupport;\r
-\r
-import java.util.List;\r
-\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.viewers.ITreeContentProvider;\r
-import org.eclipse.jface.viewers.Viewer;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.model.PropertySheetNode;\r
-\r
-public class PropertySheetContentProvider extends ObservableListContentProvider implements ITreeContentProvider {\r
-\r
-       public Object[] getChildren(Object parentElement) {\r
-               List<PropertySheetNode> children = ((PropertySheetNode) parentElement).getChildProperties();\r
-               return children == null? new Object[0] : children.toArray();\r
-       }\r
-\r
-       public Object getParent(Object element) {\r
-               return ((PropertySheetNode) element).getParentProperty();\r
-       }\r
-\r
-       public boolean hasChildren(Object element) {\r
-               return ((PropertySheetNode) element).getChildProperties() != null;\r
-       }\r
-       \r
-       public Object[] getElements(Object inputElement) {\r
-               if (inputElement != null && inputElement instanceof List) {\r
-                       return ((List) inputElement).toArray();\r
-               }\r
-               return new Object[0];\r
-       }\r
-\r
-       public void dispose() {\r
-       }\r
-\r
-       public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetValueEditingSupport.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetValueEditingSupport.java
deleted file mode 100644 (file)
index ec08a6a..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.propertysheetsupport;\r
-\r
-import java.util.TreeMap;\r
-\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.core.databinding.UpdateValueStrategy;\r
-import org.eclipse.core.databinding.observable.value.IObservableValue;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.databinding.swt.SWTObservables;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.jface.viewers.EditingSupport;\r
-import org.eclipse.jface.viewers.TextCellEditor;\r
-import org.eclipse.jface.viewers.ViewerCell;\r
-import org.eclipse.swt.SWT;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.model.PropertySheetNode;\r
-import eu.etaxonomy.taxeditor.prototype2.view.PropertySheetViewer;\r
-\r
-public class PropertySheetValueEditingSupport extends EditingSupport {\r
-\r
-       private TreeMap<String,CellEditor> cellEditors;\r
-       private PropertySheetViewer viewer;\r
-       private DataBindingContext bindingContext;\r
-                       \r
-       public PropertySheetValueEditingSupport(PropertySheetViewer viewer) {\r
-               super(viewer);\r
-               this.viewer = viewer;\r
-               this.bindingContext = viewer.getBindingContext();\r
-               this.cellEditors = new TreeMap<String, CellEditor>();\r
-       }               \r
-       \r
-       protected boolean canEdit(Object element) {\r
-               return ((PropertySheetNode) element).isEditable();\r
-       }\r
-\r
-       protected CellEditor getCellEditor(Object element) {\r
-               String elementString = element.toString();\r
-               if (cellEditors.get(elementString) == null)\r
-                       cellEditors.put(elementString, new TextCellEditor(viewer.getTree()));\r
-               return cellEditors.get(elementString);\r
-       }\r
-\r
-       protected Object getValue(Object element) {\r
-               return (PropertySheetNode) element;\r
-       }\r
-\r
-       protected void setValue(Object element, Object value) {\r
-               ((PropertySheetNode) element).setPropertyValue(value.toString());\r
-               this.getViewer().update(element, null);\r
-       }\r
-\r
-       protected void initializeCellEditorValue(CellEditor cellEditor, ViewerCell cell) {\r
-               PropertySheetNode node = (PropertySheetNode) getValue(cell.getElement());\r
-               \r
-               // an empty string instead of a null makes the field editable\r
-               cellEditor.setValue(node.getPropertyValue() == null ? "" : node.getPropertyValue());\r
-               \r
-               // if node element is observing a value, bind it to its TreeItem\r
-               IObservableValue observeNodeValue = node.getObserveValue();\r
-               if (observeNodeValue != null) {\r
-                       \r
-               Assert.isNotNull(bindingContext,\r
-               "Editing support: PropertySheetViewer's binding context must be explicitly set.");\r
-                       \r
-                       IObservableValue observeCellValue = SWTObservables.observeText(cellEditor.getControl(), SWT.Modify);\r
-                       bindingContext.bindValue(observeNodeValue, observeCellValue,\r
-                                       new UpdateValueStrategy(UpdateValueStrategy.POLICY_CONVERT), null);\r
-                       \r
-               }\r
-       }               \r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetValueLabelProvider.java b/eclipseprojects/eu.etaxonomy.taxeditor.prototype2/src/eu/etaxonomy/taxeditor/prototype2/view/propertysheetsupport/PropertySheetValueLabelProvider.java
deleted file mode 100644 (file)
index cbc58d1..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-package eu.etaxonomy.taxeditor.prototype2.view.propertysheetsupport;\r
-\r
-import org.eclipse.core.databinding.DataBindingContext;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.value.IObservableValue;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.viewers.ColumnLabelProvider;\r
-import org.eclipse.jface.viewers.ViewerCell;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-\r
-import eu.etaxonomy.taxeditor.prototype2.model.PropertySheetNode;\r
-import eu.etaxonomy.taxeditor.prototype2.view.PropertySheetViewer;\r
-\r
-/**\r
- * \r
- * Borrowed from tomson <tom.schindl@bestsolution.at>'s GenericObservableMapCellLabelProvider\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class PropertySheetValueLabelProvider extends ColumnLabelProvider {\r
-       \r
-       private DataBindingContext bindingContext;\r
-\r
-       public PropertySheetValueLabelProvider(PropertySheetViewer viewer) {\r
-               this.bindingContext = viewer.getBindingContext();\r
-       }\r
-\r
-       public Image getImage(Object element) {\r
-               return null;\r
-       }\r
-\r
-       public String getText(Object element) {\r
-               return (String) ((PropertySheetNode) element).getPropertyValue();\r
-       }\r
-                       \r
-       public void update(ViewerCell cell) {\r
-       \r
-               Object element = cell.getElement();\r
-               cell.setText(getText(element));\r
-               Image image = getImage(element);\r
-               cell.setImage(image);\r
-               cell.setBackground(getBackground(element));\r
-               cell.setForeground(getForeground(element));\r
-               cell.setFont(getFont(element));\r
-\r
-               // if node element is observing a value, bind it to its TreeItem\r
-               IObservableValue observeNodeValue = ((PropertySheetNode) element).getObserveValue();\r
-               if (observeNodeValue != null) {\r
-                       \r
-               Assert.isNotNull(bindingContext,\r
-                    "Label provider: PropertySheetViewer's binding context must be explicitly set.");\r
-               \r
-               TreeItemColumnBean itemColumn = new TreeItemColumnBean((TreeItem) cell.getItem(),1);\r
-                       IObservableValue observeCellValue = BeansObservables.observeValue(itemColumn, "text");\r
-                       bindingContext.bindValue(observeCellValue, observeNodeValue, null, null);\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * TreeItem returns column texts by index, i.e. getText(1) - this is a wrapper which \r
-        *  allows BeansObservables to observe value with getText / setText\r
-        **/\r
-       class TreeItemColumnBean {\r
-\r
-               TreeItem item;\r
-               int index;\r
-               \r
-               TreeItemColumnBean(TreeItem item, int index) {\r
-                       this.item = item;\r
-                       this.index = index;\r
-               }\r
-\r
-               public String getText() {\r
-                       return item.getText(index);\r
-               }\r
-\r
-               public void setText(String string) {\r
-                       item.setText(index, string);\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/.classpath b/eclipseprojects/eu.etaxonomy.taxeditor/.classpath
deleted file mode 100644 (file)
index 1fa3e68..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-       <classpathentry kind="src" path="src"/>
-       <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/.project b/eclipseprojects/eu.etaxonomy.taxeditor/.project
deleted file mode 100644 (file)
index 4b68c1f..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<projectDescription>\r
-       <name>eu.etaxonomy.taxeditor</name>\r
-       <comment></comment>\r
-       <projects>\r
-       </projects>\r
-       <buildSpec>\r
-               <buildCommand>\r
-                       <name>org.eclipse.jdt.core.javabuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.ManifestBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-               <buildCommand>\r
-                       <name>org.eclipse.pde.SchemaBuilder</name>\r
-                       <arguments>\r
-                       </arguments>\r
-               </buildCommand>\r
-       </buildSpec>\r
-       <natures>\r
-               <nature>org.eclipse.pde.PluginNature</nature>\r
-               <nature>org.eclipse.jdt.core.javanature</nature>\r
-       </natures>\r
-</projectDescription>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/META-INF/MANIFEST.MF b/eclipseprojects/eu.etaxonomy.taxeditor/META-INF/MANIFEST.MF
deleted file mode 100644 (file)
index ecff57d..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: EDIT Desktop Taxonomic Editor
-Bundle-SymbolicName: eu.etaxonomy.taxeditor;singleton:=true
-Bundle-Version: 1.0.0
-Bundle-Activator: eu.etaxonomy.taxeditor.TaxEditorPlugin
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.core.databinding,
- org.eclipse.core.databinding.beans,
- org.eclipse.jface.databinding,
- org.eclipse.jface.text,
- org.eclipse.ui.forms,
- org.eclipse.core.resources,
- org.eclipse.ui.views,
- org.eclipse.ui.ide,
- org.eclipse.ui.workbench.texteditor,
- org.eclipse.ui.editors,
- org.eclipse.core.expressions;bundle-version="3.4.0",
- eu.etaxonomy.cdmLibrary;bundle-version="2.0.0"
-Eclipse-LazyStart: true
-Export-Package: com.swtdesigner,
- eu.etaxonomy.taxeditor,
- eu.etaxonomy.taxeditor.actions,
- eu.etaxonomy.taxeditor.editor,
- eu.etaxonomy.taxeditor.model
-Main-Class: eu.etaxonomy.taxeditor.Application
-Import-Package: junit.framework,
- org.junit
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/build.properties b/eclipseprojects/eu.etaxonomy.taxeditor/build.properties
deleted file mode 100644 (file)
index 79facc5..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-source.. = src/\r
-output.. = bin/\r
-bin.includes = plugin.xml,\\r
-               META-INF/,\\r
-               .,\\r
-               icons/,\\r
-               splash.bmp,\\r
-               bin/,\\r
-               log4j.properties,\\r
-               eu.etaxonomy.taxeditor.product,\\r
-               build.properties,\\r
-               plugin_customization.ini\r
-src.includes = log4j.properties\r
-jars.compile.order = .\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/eu.etaxonomy.taxeditor.product b/eclipseprojects/eu.etaxonomy.taxeditor/eu.etaxonomy.taxeditor.product
deleted file mode 100644 (file)
index b5311f5..0000000
+++ /dev/null
@@ -1,377 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?pde version="3.4"?>
-
-<product name="%productName" id="eu.etaxonomy.taxeditor.product" application="eu.etaxonomy.taxeditor.application" useFeatures="true">
-
-   <aboutInfo>
-      <text>
-         %productBlurb
-      </text>
-   </aboutInfo>
-
-   <configIni use="default">
-   </configIni>
-
-   <launcherArgs>
-   </launcherArgs>
-
-   <windowImages i16="/eu.etaxonomy.taxeditor/icons/edit_16x16.gif"/>
-
-   <splash
-      startupProgressRect="0,280,455,15"
-      startupMessageRect="7,220,441,20"
-      startupForegroundColor="C8D5EA" />
-   <launcher name="Taxonomic Editor">
-      <solaris/>
-      <win useIco="false">
-         <bmp
-            winSmallLow="/eu.etaxonomy.taxeditor/icons/256color_16x16.bmp"/>
-      </win>
-   </launcher>
-
-
-   <vm>
-      <macos>org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.launching.macosx.MacOSXType/JVM 1.5.0 (MacOS X Default)</macos>
-   </vm>
-
-   <plugins>
-      <plugin id="ExampleViewer"/>
-      <plugin id="com.ibm.etools.emf.event"/>
-      <plugin id="com.ibm.icu"/>
-      <plugin id="com.ibm.icu.source"/>
-      <plugin id="com.instantiations.common.core"/>
-      <plugin id="com.instantiations.common.help"/>
-      <plugin id="com.instantiations.common.ui"/>
-      <plugin id="com.instantiations.css"/>
-      <plugin id="com.instantiations.designer.databinding"/>
-      <plugin id="com.instantiations.eclipse.debug"/>
-      <plugin id="com.instantiations.eclipse.startup"/>
-      <plugin id="com.instantiations.eclipse.ui"/>
-      <plugin id="com.instantiations.eclipse.util"/>
-      <plugin id="com.instantiations.j2ee"/>
-      <plugin id="com.instantiations.tools"/>
-      <plugin id="com.jcraft.jsch"/>
-      <plugin id="com.opnworks.tableviewer.example"/>
-      <plugin id="com.picosoft.keytool"/>
-      <plugin id="com.swtdesigner"/>
-      <plugin id="com.swtdesigner.fragment.jdt.core"/>
-      <plugin id="com.swtdesigner.gwt"/>
-      <plugin id="com.swtdesigner.gwt.ie"/>
-      <plugin id="com.swtdesigner.gwt.moz"/>
-      <plugin id="com.swtdesigner.gwt.saf"/>
-      <plugin id="com.swtdesigner.gwt.saf.browser"/>
-      <plugin id="com.swtdesigner.help"/>
-      <plugin id="com.swtdesigner.layout.group"/>
-      <plugin id="com.swtdesigner.layout.group.designer"/>
-      <plugin id="com.swtdesigner.properties.java5"/>
-      <plugin id="eu.etaxonomy.cdmLibrary"/>
-      <plugin id="eu.etaxonomy.taxeditor"/>
-      <plugin id="eu.etaxonomy.taxeditor.designproposal1"/>
-      <plugin id="eu.etaxonomy.taxeditor.webstarttest"/>
-      <plugin id="javax.servlet"/>
-      <plugin id="javax.servlet.jsp"/>
-      <plugin id="javax.servlet.jsp.source"/>
-      <plugin id="javax.servlet.source"/>
-      <plugin id="mview"/>
-      <plugin id="org.apache.ant"/>
-      <plugin id="org.apache.ant.source"/>
-      <plugin id="org.apache.commons.el"/>
-      <plugin id="org.apache.commons.el.source"/>
-      <plugin id="org.apache.commons.logging"/>
-      <plugin id="org.apache.commons.logging.source"/>
-      <plugin id="org.apache.jasper"/>
-      <plugin id="org.apache.jasper.source"/>
-      <plugin id="org.apache.lucene"/>
-      <plugin id="org.apache.lucene.analysis"/>
-      <plugin id="org.apache.lucene.analysis.source"/>
-      <plugin id="org.apache.lucene.source"/>
-      <plugin id="org.eclipse.ant.core"/>
-      <plugin id="org.eclipse.ant.ui"/>
-      <plugin id="org.eclipse.compare"/>
-      <plugin id="org.eclipse.compare.examples"/>
-      <plugin id="org.eclipse.compare.examples.xml"/>
-      <plugin id="org.eclipse.core.boot"/>
-      <plugin id="org.eclipse.core.commands"/>
-      <plugin id="org.eclipse.core.contenttype"/>
-      <plugin id="org.eclipse.core.databinding"/>
-      <plugin id="org.eclipse.core.databinding.beans"/>
-      <plugin id="org.eclipse.core.expressions"/>
-      <plugin id="org.eclipse.core.filebuffers"/>
-      <plugin id="org.eclipse.core.filesystem"/>
-      <plugin id="org.eclipse.core.filesystem.win32.x86"/>
-      <plugin id="org.eclipse.core.jobs"/>
-      <plugin id="org.eclipse.core.net"/>
-      <plugin id="org.eclipse.core.resources"/>
-      <plugin id="org.eclipse.core.resources.compatibility" fragment="true"/>
-      <plugin id="org.eclipse.core.resources.win32"/>
-      <plugin id="org.eclipse.core.runtime"/>
-      <plugin id="org.eclipse.core.runtime.compatibility"/>
-      <plugin id="org.eclipse.core.runtime.compatibility.auth"/>
-      <plugin id="org.eclipse.core.runtime.compatibility.registry" fragment="true"/>
-      <plugin id="org.eclipse.core.variables"/>
-      <plugin id="org.eclipse.cvs"/>
-      <plugin id="org.eclipse.cvs.source"/>
-      <plugin id="org.eclipse.debug.core"/>
-      <plugin id="org.eclipse.debug.ui"/>
-      <plugin id="org.eclipse.draw2d"/>
-      <plugin id="org.eclipse.draw2d.doc.isv"/>
-      <plugin id="org.eclipse.emf"/>
-      <plugin id="org.eclipse.emf.activities"/>
-      <plugin id="org.eclipse.emf.ant"/>
-      <plugin id="org.eclipse.emf.cheatsheets"/>
-      <plugin id="org.eclipse.emf.codegen"/>
-      <plugin id="org.eclipse.emf.codegen.ecore"/>
-      <plugin id="org.eclipse.emf.codegen.ecore.ui"/>
-      <plugin id="org.eclipse.emf.codegen.ui"/>
-      <plugin id="org.eclipse.emf.common"/>
-      <plugin id="org.eclipse.emf.common.ui"/>
-      <plugin id="org.eclipse.emf.commonj.sdo"/>
-      <plugin id="org.eclipse.emf.converter"/>
-      <plugin id="org.eclipse.emf.doc"/>
-      <plugin id="org.eclipse.emf.ecore"/>
-      <plugin id="org.eclipse.emf.ecore.change"/>
-      <plugin id="org.eclipse.emf.ecore.change.edit"/>
-      <plugin id="org.eclipse.emf.ecore.edit"/>
-      <plugin id="org.eclipse.emf.ecore.editor"/>
-      <plugin id="org.eclipse.emf.ecore.sdo"/>
-      <plugin id="org.eclipse.emf.ecore.sdo.doc"/>
-      <plugin id="org.eclipse.emf.ecore.sdo.edit"/>
-      <plugin id="org.eclipse.emf.ecore.sdo.editor"/>
-      <plugin id="org.eclipse.emf.ecore.sdo.source"/>
-      <plugin id="org.eclipse.emf.ecore.xmi"/>
-      <plugin id="org.eclipse.emf.edit"/>
-      <plugin id="org.eclipse.emf.edit.ui"/>
-      <plugin id="org.eclipse.emf.examples"/>
-      <plugin id="org.eclipse.emf.examples.library"/>
-      <plugin id="org.eclipse.emf.examples.library.edit"/>
-      <plugin id="org.eclipse.emf.examples.library.editor"/>
-      <plugin id="org.eclipse.emf.exporter"/>
-      <plugin id="org.eclipse.emf.exporter.html"/>
-      <plugin id="org.eclipse.emf.importer"/>
-      <plugin id="org.eclipse.emf.importer.ecore"/>
-      <plugin id="org.eclipse.emf.importer.java"/>
-      <plugin id="org.eclipse.emf.importer.rose"/>
-      <plugin id="org.eclipse.emf.java"/>
-      <plugin id="org.eclipse.emf.java.edit"/>
-      <plugin id="org.eclipse.emf.java.editor"/>
-      <plugin id="org.eclipse.emf.mapping"/>
-      <plugin id="org.eclipse.emf.mapping.ecore2ecore"/>
-      <plugin id="org.eclipse.emf.mapping.ecore2ecore.editor"/>
-      <plugin id="org.eclipse.emf.mapping.ecore2xml"/>
-      <plugin id="org.eclipse.emf.mapping.ecore2xml.ui"/>
-      <plugin id="org.eclipse.emf.mapping.ui"/>
-      <plugin id="org.eclipse.emf.mapping.xsd2ecore"/>
-      <plugin id="org.eclipse.emf.mapping.xsd2ecore.editor"/>
-      <plugin id="org.eclipse.emf.source"/>
-      <plugin id="org.eclipse.equinox.app"/>
-      <plugin id="org.eclipse.equinox.common"/>
-      <plugin id="org.eclipse.equinox.http.jetty"/>
-      <plugin id="org.eclipse.equinox.http.registry"/>
-      <plugin id="org.eclipse.equinox.http.servlet"/>
-      <plugin id="org.eclipse.equinox.jsp.jasper"/>
-      <plugin id="org.eclipse.equinox.jsp.jasper.registry"/>
-      <plugin id="org.eclipse.equinox.launcher"/>
-      <plugin id="org.eclipse.equinox.launcher.win32.win32.x86"/>
-      <plugin id="org.eclipse.equinox.preferences"/>
-      <plugin id="org.eclipse.equinox.registry"/>
-      <plugin id="org.eclipse.gef"/>
-      <plugin id="org.eclipse.gef.doc.isv"/>
-      <plugin id="org.eclipse.gef.examples.flow"/>
-      <plugin id="org.eclipse.gef.examples.logic"/>
-      <plugin id="org.eclipse.gef.examples.shapes"/>
-      <plugin id="org.eclipse.gef.examples.source"/>
-      <plugin id="org.eclipse.gef.examples.text"/>
-      <plugin id="org.eclipse.gef.source"/>
-      <plugin id="org.eclipse.help"/>
-      <plugin id="org.eclipse.help.appserver"/>
-      <plugin id="org.eclipse.help.base"/>
-      <plugin id="org.eclipse.help.ui"/>
-      <plugin id="org.eclipse.help.webapp"/>
-      <plugin id="org.eclipse.jdt"/>
-      <plugin id="org.eclipse.jdt.apt.core"/>
-      <plugin id="org.eclipse.jdt.apt.pluggable.core"/>
-      <plugin id="org.eclipse.jdt.apt.ui"/>
-      <plugin id="org.eclipse.jdt.compiler.apt" fragment="true"/>
-      <plugin id="org.eclipse.jdt.compiler.tool" fragment="true"/>
-      <plugin id="org.eclipse.jdt.core"/>
-      <plugin id="org.eclipse.jdt.core.manipulation"/>
-      <plugin id="org.eclipse.jdt.debug"/>
-      <plugin id="org.eclipse.jdt.debug.ui"/>
-      <plugin id="org.eclipse.jdt.doc.isv"/>
-      <plugin id="org.eclipse.jdt.doc.user"/>
-      <plugin id="org.eclipse.jdt.junit"/>
-      <plugin id="org.eclipse.jdt.junit.runtime"/>
-      <plugin id="org.eclipse.jdt.junit4.runtime"/>
-      <plugin id="org.eclipse.jdt.launching"/>
-      <plugin id="org.eclipse.jdt.source"/>
-      <plugin id="org.eclipse.jdt.ui"/>
-      <plugin id="org.eclipse.jdt.ui.examples.projects"/>
-      <plugin id="org.eclipse.jem"/>
-      <plugin id="org.eclipse.jem.beaninfo"/>
-      <plugin id="org.eclipse.jem.proxy"/>
-      <plugin id="org.eclipse.jem.sdk"/>
-      <plugin id="org.eclipse.jem.source"/>
-      <plugin id="org.eclipse.jem.ui"/>
-      <plugin id="org.eclipse.jem.util"/>
-      <plugin id="org.eclipse.jem.workbench"/>
-      <plugin id="org.eclipse.jface"/>
-      <plugin id="org.eclipse.jface.databinding"/>
-      <plugin id="org.eclipse.jface.examples.databinding"/>
-      <plugin id="org.eclipse.jface.text"/>
-      <plugin id="org.eclipse.jsch.core"/>
-      <plugin id="org.eclipse.jsch.ui"/>
-      <plugin id="org.eclipse.ltk.core.refactoring"/>
-      <plugin id="org.eclipse.ltk.ui.refactoring"/>
-      <plugin id="org.eclipse.mylar"/>
-      <plugin id="org.eclipse.mylar.bugzilla.core"/>
-      <plugin id="org.eclipse.mylar.bugzilla.ui"/>
-      <plugin id="org.eclipse.mylar.context.core"/>
-      <plugin id="org.eclipse.mylar.context.ui"/>
-      <plugin id="org.eclipse.mylar.doc"/>
-      <plugin id="org.eclipse.mylar.ide"/>
-      <plugin id="org.eclipse.mylar.java"/>
-      <plugin id="org.eclipse.mylar.jira.core"/>
-      <plugin id="org.eclipse.mylar.jira.ui"/>
-      <plugin id="org.eclipse.mylar.monitor.core"/>
-      <plugin id="org.eclipse.mylar.monitor.ui"/>
-      <plugin id="org.eclipse.mylar.monitor.usage"/>
-      <plugin id="org.eclipse.mylar.resources"/>
-      <plugin id="org.eclipse.mylar.tasks.core"/>
-      <plugin id="org.eclipse.mylar.tasks.ui"/>
-      <plugin id="org.eclipse.mylar.tasks.web"/>
-      <plugin id="org.eclipse.mylar.team"/>
-      <plugin id="org.eclipse.mylar.trac.core"/>
-      <plugin id="org.eclipse.mylar.trac.ui"/>
-      <plugin id="org.eclipse.mylar.web"/>
-      <plugin id="org.eclipse.mylyn"/>
-      <plugin id="org.eclipse.mylyn.compatibility"/>
-      <plugin id="org.eclipse.mylyn.context.core"/>
-      <plugin id="org.eclipse.mylyn.context.ui"/>
-      <plugin id="org.eclipse.mylyn.help.ui"/>
-      <plugin id="org.eclipse.mylyn.ide.ui"/>
-      <plugin id="org.eclipse.mylyn.java.ui"/>
-      <plugin id="org.eclipse.mylyn.monitor.core"/>
-      <plugin id="org.eclipse.mylyn.monitor.ui"/>
-      <plugin id="org.eclipse.mylyn.resources.ui"/>
-      <plugin id="org.eclipse.mylyn.tasks.core"/>
-      <plugin id="org.eclipse.mylyn.tasks.ui"/>
-      <plugin id="org.eclipse.mylyn.trac.core"/>
-      <plugin id="org.eclipse.mylyn.trac.ui"/>
-      <plugin id="org.eclipse.mylyn.web.core"/>
-      <plugin id="org.eclipse.mylyn.web.ui"/>
-      <plugin id="org.eclipse.osgi"/>
-      <plugin id="org.eclipse.osgi.services"/>
-      <plugin id="org.eclipse.osgi.util"/>
-      <plugin id="org.eclipse.pde"/>
-      <plugin id="org.eclipse.pde.build"/>
-      <plugin id="org.eclipse.pde.core"/>
-      <plugin id="org.eclipse.pde.doc.user"/>
-      <plugin id="org.eclipse.pde.junit.runtime"/>
-      <plugin id="org.eclipse.pde.runtime"/>
-      <plugin id="org.eclipse.pde.source"/>
-      <plugin id="org.eclipse.pde.ui"/>
-      <plugin id="org.eclipse.pde.ui.templates"/>
-      <plugin id="org.eclipse.platform"/>
-      <plugin id="org.eclipse.platform.doc.isv"/>
-      <plugin id="org.eclipse.platform.doc.user"/>
-      <plugin id="org.eclipse.platform.source"/>
-      <plugin id="org.eclipse.platform.source.win32.win32.x86"/>
-      <plugin id="org.eclipse.rcp"/>
-      <plugin id="org.eclipse.rcp.source"/>
-      <plugin id="org.eclipse.rcp.source.win32.win32.x86"/>
-      <plugin id="org.eclipse.sdk"/>
-      <plugin id="org.eclipse.sdk.examples"/>
-      <plugin id="org.eclipse.sdk.examples.source"/>
-      <plugin id="org.eclipse.sdk.examples.source.win32.win32.x86"/>
-      <plugin id="org.eclipse.search"/>
-      <plugin id="org.eclipse.swt"/>
-      <plugin id="org.eclipse.swt.examples"/>
-      <plugin id="org.eclipse.swt.examples.browser"/>
-      <plugin id="org.eclipse.swt.examples.browser.demos"/>
-      <plugin id="org.eclipse.swt.examples.controls"/>
-      <plugin id="org.eclipse.swt.examples.launcher"/>
-      <plugin id="org.eclipse.swt.examples.layouts"/>
-      <plugin id="org.eclipse.swt.examples.ole.win32"/>
-      <plugin id="org.eclipse.swt.examples.paint"/>
-      <plugin id="org.eclipse.swt.layout.grouplayout"/>
-      <plugin id="org.eclipse.swt.widgets.baseline"/>
-      <plugin id="org.eclipse.swt.win32.win32.x86"/>
-      <plugin id="org.eclipse.team.core"/>
-      <plugin id="org.eclipse.team.cvs.core"/>
-      <plugin id="org.eclipse.team.cvs.ssh"/>
-      <plugin id="org.eclipse.team.cvs.ssh2"/>
-      <plugin id="org.eclipse.team.cvs.ui"/>
-      <plugin id="org.eclipse.team.examples.filesystem"/>
-      <plugin id="org.eclipse.team.ui"/>
-      <plugin id="org.eclipse.text"/>
-      <plugin id="org.eclipse.tomcat"/>
-      <plugin id="org.eclipse.ui"/>
-      <plugin id="org.eclipse.ui.browser"/>
-      <plugin id="org.eclipse.ui.cheatsheets"/>
-      <plugin id="org.eclipse.ui.console"/>
-      <plugin id="org.eclipse.ui.editors"/>
-      <plugin id="org.eclipse.ui.examples.contributions"/>
-      <plugin id="org.eclipse.ui.examples.fieldassist"/>
-      <plugin id="org.eclipse.ui.examples.javaeditor"/>
-      <plugin id="org.eclipse.ui.examples.multipageeditor"/>
-      <plugin id="org.eclipse.ui.examples.propertysheet"/>
-      <plugin id="org.eclipse.ui.examples.readmetool"/>
-      <plugin id="org.eclipse.ui.examples.undo"/>
-      <plugin id="org.eclipse.ui.examples.views.properties.tabbed.article"/>
-      <plugin id="org.eclipse.ui.externaltools"/>
-      <plugin id="org.eclipse.ui.forms"/>
-      <plugin id="org.eclipse.ui.forms.article"/>
-      <plugin id="org.eclipse.ui.ide"/>
-      <plugin id="org.eclipse.ui.ide.application"/>
-      <plugin id="org.eclipse.ui.intro"/>
-      <plugin id="org.eclipse.ui.intro.universal"/>
-      <plugin id="org.eclipse.ui.navigator"/>
-      <plugin id="org.eclipse.ui.navigator.resources"/>
-      <plugin id="org.eclipse.ui.net"/>
-      <plugin id="org.eclipse.ui.presentations.r21"/>
-      <plugin id="org.eclipse.ui.views"/>
-      <plugin id="org.eclipse.ui.views.properties.tabbed"/>
-      <plugin id="org.eclipse.ui.win32"/>
-      <plugin id="org.eclipse.ui.workbench"/>
-      <plugin id="org.eclipse.ui.workbench.compatibility" fragment="true"/>
-      <plugin id="org.eclipse.ui.workbench.texteditor"/>
-      <plugin id="org.eclipse.update.configurator"/>
-      <plugin id="org.eclipse.update.core"/>
-      <plugin id="org.eclipse.update.core.win32"/>
-      <plugin id="org.eclipse.update.scheduler"/>
-      <plugin id="org.eclipse.update.ui"/>
-      <plugin id="org.eclipse.ve"/>
-      <plugin id="org.eclipse.ve.cde"/>
-      <plugin id="org.eclipse.ve.doc"/>
-      <plugin id="org.eclipse.ve.java.core"/>
-      <plugin id="org.eclipse.ve.jfc"/>
-      <plugin id="org.eclipse.ve.propertysheet"/>
-      <plugin id="org.eclipse.ve.sdk"/>
-      <plugin id="org.eclipse.ve.source"/>
-      <plugin id="org.eclipse.ve.swt"/>
-      <plugin id="org.eclipse.xsd"/>
-      <plugin id="org.eclipse.xsd.cheatsheets"/>
-      <plugin id="org.eclipse.xsd.doc"/>
-      <plugin id="org.eclipse.xsd.ecore.exporter"/>
-      <plugin id="org.eclipse.xsd.ecore.importer"/>
-      <plugin id="org.eclipse.xsd.edit"/>
-      <plugin id="org.eclipse.xsd.editor"/>
-      <plugin id="org.eclipse.xsd.example"/>
-      <plugin id="org.eclipse.xsd.source"/>
-      <plugin id="org.junit"/>
-      <plugin id="org.junit.source"/>
-      <plugin id="org.junit4"/>
-      <plugin id="org.mortbay.jetty"/>
-      <plugin id="org.mortbay.jetty.source"/>
-      <plugin id="org.tigris.subversion.javahl.win32"/>
-      <plugin id="org.tigris.subversion.subclipse.core"/>
-      <plugin id="org.tigris.subversion.subclipse.doc"/>
-      <plugin id="org.tigris.subversion.subclipse.ui"/>
-      <plugin id="testeroo"/>
-   </plugins>
-
-   <features>
-      <feature id="eu.etaxonomy.taxeditor.feature" version="1.0.0"/>
-   </features>
-
-</product>
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_16x16.bmp b/eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_16x16.bmp
deleted file mode 100644 (file)
index 2c40016..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_16x16.bmp and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_32x32.bmp b/eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_32x32.bmp
deleted file mode 100644 (file)
index 9eaf52c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_32x32.bmp and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_48x48.bmp b/eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_48x48.bmp
deleted file mode 100644 (file)
index 9bc72cf..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/256color_48x48.bmp and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/EDIT-logo.jpg b/eclipseprojects/eu.etaxonomy.taxeditor/icons/EDIT-logo.jpg
deleted file mode 100644 (file)
index b660a99..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/EDIT-logo.jpg and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/Thumbs.db b/eclipseprojects/eu.etaxonomy.taxeditor/icons/Thumbs.db
deleted file mode 100644 (file)
index 9282c47..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/Thumbs.db and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/a_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/a_no_bg.gif
deleted file mode 100644 (file)
index 2f54262..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/a_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted.gif
deleted file mode 100644 (file)
index c41bb9c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted_small.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted_small.gif
deleted file mode 100644 (file)
index 69aec9f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/accepted_small.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/add.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/add.gif
deleted file mode 100644 (file)
index 29c2aee..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/add.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/add_edit.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/add_edit.gif
deleted file mode 100644 (file)
index 252d7eb..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/add_edit.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg.gif
deleted file mode 100644 (file)
index 0dd4eab..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg2.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg2.gif
deleted file mode 100644 (file)
index dfbf68f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/add_no_bg2.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_16.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_16.gif
deleted file mode 100644 (file)
index 05626b1..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_32.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_32.gif
deleted file mode 100644 (file)
index b432f88..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/alt_window_32.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/autonym_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/autonym_no_bg.gif
deleted file mode 100644 (file)
index b7cdc65..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/autonym_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym.gif
deleted file mode 100644 (file)
index 2780f44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym_no_bg.gif
deleted file mode 100644 (file)
index 8c3d54b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/basionym_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/change.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/change.gif
deleted file mode 100644 (file)
index d79c444..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/change.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/close_view.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/close_view.gif
deleted file mode 100644 (file)
index 1aca259..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/close_view.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/concept.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/concept.gif
deleted file mode 100644 (file)
index 445cd44..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/concept.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/concept_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/concept_no_bg.gif
deleted file mode 100644 (file)
index 362c109..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/concept_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/correction_change.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/correction_change.gif
deleted file mode 100644 (file)
index 068e18d..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/correction_change.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/db.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/db.gif
deleted file mode 100644 (file)
index 1f3b8db..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/db.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/delete.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/delete.gif
deleted file mode 100644 (file)
index 559e462..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/delete.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/delete_edit.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/delete_edit.gif
deleted file mode 100644 (file)
index b6922ac..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/delete_edit.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.gif
deleted file mode 100644 (file)
index d857c6c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.ico b/eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.ico
deleted file mode 100644 (file)
index d4b6c2b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/edit_16x16.ico and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/error_co.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/error_co.gif
deleted file mode 100644 (file)
index 119dccc..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/error_co.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/file_obj.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/file_obj.gif
deleted file mode 100644 (file)
index 6b86d07..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/file_obj.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/form_banner.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/form_banner.gif
deleted file mode 100644 (file)
index aebc0b2..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/form_banner.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/garland_logo.png b/eclipseprojects/eu.etaxonomy.taxeditor/icons/garland_logo.png
deleted file mode 100644 (file)
index b158ad0..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/garland_logo.png and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/help_topic.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/help_topic.gif
deleted file mode 100644 (file)
index 9bdd516..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/help_topic.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn.gif
deleted file mode 100644 (file)
index ebab24c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_no_bg.gif
deleted file mode 100644 (file)
index 85e9b1d..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_original_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_original_no_bg.gif
deleted file mode 100644 (file)
index 02a6d38..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/heterosyn_original_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym.gif
deleted file mode 100644 (file)
index abaf009..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym_no_bg.gif
deleted file mode 100644 (file)
index 05b399a..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homonym_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn.gif
deleted file mode 100644 (file)
index 143c881..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_no_bg.gif
deleted file mode 100644 (file)
index 19575f7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_original_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_original_no_bg.gif
deleted file mode 100644 (file)
index 8d21d86..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/homosyn_original_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.ico b/eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.ico
deleted file mode 100644 (file)
index 7e8fd37..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.ico and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.png b/eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.png
deleted file mode 100644 (file)
index 98b8c98..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/icon.png and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/large_image.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/large_image.gif
deleted file mode 100644 (file)
index c5c94ee..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/large_image.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/linkto_help.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/linkto_help.gif
deleted file mode 100644 (file)
index 86550fe..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/linkto_help.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied.gif
deleted file mode 100644 (file)
index 18fba08..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied_no_bg.gif
deleted file mode 100644 (file)
index dca3ff0..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/misapplied_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/move.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/move.gif
deleted file mode 100644 (file)
index f43e9b9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/move.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/move_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/move_no_bg.gif
deleted file mode 100644 (file)
index 2f2a3f0..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/move_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/new_child.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/new_child.gif
deleted file mode 100644 (file)
index 4b98a62..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/new_child.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/newprj_wiz.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/newprj_wiz.gif
deleted file mode 100644 (file)
index dc7d3a7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/newprj_wiz.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/open.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/open.gif
deleted file mode 100644 (file)
index 51e703b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/open.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant.gif
deleted file mode 100644 (file)
index 14ade2f..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant_no_bg.gif
deleted file mode 100644 (file)
index caf5430..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/orthovariant_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/quick_add.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/quick_add.gif
deleted file mode 100644 (file)
index 98d914a..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/quick_add.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_error_obj.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_error_obj.gif
deleted file mode 100644 (file)
index 07a1054..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_error_obj.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_warning_obj.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_warning_obj.gif
deleted file mode 100644 (file)
index 1f0002b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/quickfix_warning_obj.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/rel_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/rel_no_bg.gif
deleted file mode 100644 (file)
index 77f03e7..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/rel_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn.gif
deleted file mode 100644 (file)
index 1b627ce..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn_no_bg.gif
deleted file mode 100644 (file)
index f2370b4..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/repsyn_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/sample.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/sample.gif
deleted file mode 100644 (file)
index 34fb3c9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/sample.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/save.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/save.gif
deleted file mode 100644 (file)
index ad505a9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/save.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/save_edit.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/save_edit.gif
deleted file mode 100644 (file)
index 499dd0c..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/save_edit.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/swap.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/swap.gif
deleted file mode 100644 (file)
index 049cac6..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/swap.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/swap2.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/swap2.gif
deleted file mode 100644 (file)
index b2fa4ce..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/swap2.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/tax_to_syn.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/tax_to_syn.gif
deleted file mode 100644 (file)
index 4cd1f61..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/tax_to_syn.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/text.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/text.gif
deleted file mode 100644 (file)
index 9312d7e..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/text.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/th_horizontal.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/th_horizontal.gif
deleted file mode 100644 (file)
index f4c14a4..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/th_horizontal.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/th_vertical.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/th_vertical.gif
deleted file mode 100644 (file)
index f685839..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/th_vertical.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/undo.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/undo.gif
deleted file mode 100644 (file)
index 3aeba19..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/undo.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown.gif
deleted file mode 100644 (file)
index 8c58c52..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown_no_bg.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown_no_bg.gif
deleted file mode 100644 (file)
index a6a784b..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/unknown_no_bg.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/icons/warn_tsk.gif b/eclipseprojects/eu.etaxonomy.taxeditor/icons/warn_tsk.gif
deleted file mode 100644 (file)
index 14009e9..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/icons/warn_tsk.gif and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/log4j.properties b/eclipseprojects/eu.etaxonomy.taxeditor/log4j.properties
deleted file mode 100644 (file)
index 2f29d72..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-### ************ APPENDER ***********************************###\r
-\r
-### direct log messages to stdout ###\r
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender\r
-log4j.appender.stdout.Target=System.out\r
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout\r
-log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n\r
-\r
-### direct messages to file hibernate.log ###\r
-log4j.appender.file=org.apache.log4j.FileAppender\r
-log4j.appender.file.File=taxeditor.log\r
-log4j.appender.file.layout=org.apache.log4j.PatternLayout\r
-log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n\r
-\r
-### ************* LOG LEVELS *********************************###\r
-\r
-### set log levels - for more verbose logging change 'info' to 'debug' ###\r
-### levels: error, warn, debug, info\r
-log4j.rootLogger=FATAL, stdout\r
-\r
-### set directory-specific levels below\r
-log4j.logger.eu.etaxonomy.taxeditor = DEBUG \r
-\r
-\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/plugin.xml b/eclipseprojects/eu.etaxonomy.taxeditor/plugin.xml
deleted file mode 100644 (file)
index a920a63..0000000
+++ /dev/null
@@ -1,702 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<?eclipse version="3.2"?>\r
-<plugin>\r
-\r
-   <extension\r
-         id="application"\r
-         point="org.eclipse.core.runtime.applications">\r
-      <application\r
-            cardinality="singleton-global"\r
-            icon="icons/256color_48x48.bmp"\r
-            thread="main"\r
-            visible="true">\r
-         <run\r
-               class="eu.etaxonomy.taxeditor.Application">\r
-         </run>\r
-      </application>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.perspectives">\r
-      <perspective\r
-            class="eu.etaxonomy.taxeditor.FreetextPropertiesPerspective"\r
-            fixed="true"\r
-            id="eu.etaxonomy.taxeditor.perspective.freetextproperties"\r
-            name="Show Properties">\r
-      </perspective>\r
-      <perspective\r
-            class="eu.etaxonomy.taxeditor.SideBySidePerspective"\r
-            fixed="true"\r
-            id="eu.etaxonomy.taxeditor.perspective.sidebyside"\r
-            name="Hide Properties">\r
-      </perspective>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.views">\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.navigation.TaxonomicTreeView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.navigation.taxonomictreeview"\r
-            name="Taxonomic Tree">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.navigation.RecentNamesView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.navigation.recentnamesview"\r
-            name="Recent Names">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.navigation.SearchView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.navigation.searchview"\r
-            name="Search">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.navigation.FavoritesView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.navigation.favoritesview"\r
-            name="Favorites">\r
-      </view>\r
-      <view\r
-            class="eu.etaxonomy.taxeditor.editor.UndoView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.view.undoview"\r
-            name="Recent Actions">\r
-      </view>\r
-      <view\r
-            allowMultiple="true"\r
-            class="eu.etaxonomy.taxeditor.navigation.SearchResultView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.navigation.searchresultview"\r
-            name="Search Result">\r
-      </view>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.editors">\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.editor.multipagetaxonview"\r
-            name="Multitabbed Taxon Editor">\r
-      </editor>\r
-      <editor\r
-            class="eu.etaxonomy.taxeditor.editor.EmptyEditorView"\r
-            icon="icons/edit_16x16.gif"\r
-            id="eu.etaxonomy.taxeditor.view.EmptyEditorView"\r
-            name="New EditorPart">\r
-      </editor>\r
-   </extension>\r
-   <extension\r
-         id="eu.etaxonomy.taxeditor.product"\r
-         name="Taxonomic Editor"\r
-         point="org.eclipse.core.runtime.products">\r
-      <product\r
-            application="eu.etaxonomy.taxeditor.application"\r
-            description="Taxonomic Editor"\r
-            name="EDIT Taxonomic Editor">\r
-         <property\r
-               name="appName"\r
-               value="EDIT Taxonomic Editor">\r
-         </property>\r
-         <property\r
-               name="aboutImage"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="aboutText"\r
-               value="Thanks for all the laughs!">\r
-         </property>\r
-         <property\r
-               name="windowImages"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-      </product>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.preferencePages">\r
-      <page\r
-            class="eu.etaxonomy.taxeditor.preference.TaxonomicPreferences"\r
-            id="eu.etaxonomy.taxeditor.preferences.taxonomic"\r
-            name="Taxonomic">\r
-      </page>\r
-      <page\r
-            category="eu.etaxonomy.taxeditor.preferences.taxonomic"\r
-            class="eu.etaxonomy.taxeditor.preference.NomenclaturalCodePreferences"\r
-            id="eu.etaxonomy.taxeditor.preferences.nomenclatural"\r
-            name="Nomenclatural Code">\r
-      </page>\r
-      <page\r
-            class="eu.etaxonomy.taxeditor.preference.CdmPreferences"\r
-            id="eu.etaxonomy.taxeditor.preferences.cdm"\r
-            name="CDM Datastore">\r
-      </page>      \r
-      <page\r
-               category="eu.etaxonomy.taxeditor.preferences.cdm"\r
-            class="eu.etaxonomy.taxeditor.preference.InitializeDbPreferences"\r
-            id="eu.etaxonomy.taxeditor.preferences.initdb"\r
-            name="Initialize Datastore">\r
-      </page>\r
-      <page\r
-            class="eu.etaxonomy.taxeditor.preference.DescriptionPreferences"\r
-            id="eu.etaxonomy.taxeditor.preferences.description"\r
-            name="Description">\r
-      </page>      \r
-      <page\r
-               category="eu.etaxonomy.taxeditor.preferences.description"\r
-            class="eu.etaxonomy.taxeditor.preference.FeaturePreferences"\r
-            id="eu.etaxonomy.taxeditor.preferences.feature"\r
-            name="Preferred Features">\r
-      </page>\r
-      <page\r
-            category="eu.etaxonomy.taxeditor.preferences.taxonomic"\r
-            class="eu.etaxonomy.taxeditor.preference.RankMenuPreferences"\r
-            id="eu.etaxonomy.taxeditor.preferences.ranks"\r
-            name="Preferred Ranks">\r
-      </page>\r
-   </extension>\r
-   <!--extension\r
-         point="org.eclipse.ui.bindings">\r
-               <key\r
-                     sequence="M1+N"\r
-                     commandId="eu.etaxonomy.taxeditor.actions.opennameeditoractiondef"\r
-                     schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">\r
-               </key>\r
-   </extension-->\r
-   <extension\r
-         point="org.eclipse.ui.menus">\r
-      <menuContribution\r
-            locationURI="menu:org.eclipse.ui.main.menu">\r
-         <menu\r
-               id="org.eclipse.ui.main.menu.file"\r
-               label="File">\r
-            <command\r
-                  commandId="eu.etaxonomy.taxeditor.newTaxon"\r
-                  label="Add new taxon"\r
-                  style="push">\r
-            </command>\r
-            <separator\r
-                  name="eu.etaxonomy.taxeditor.ui.file.separator1"\r
-                  visible="true">\r
-            </separator>\r
-            <command\r
-                  commandId="org.eclipse.ui.file.close"\r
-                  label="Close"\r
-                  style="push">\r
-            </command>\r
-            <command\r
-                  commandId="org.eclipse.ui.file.closeAll"\r
-                  label="Close All"\r
-                  style="push">\r
-            </command>\r
-            <separator\r
-                  name="eu.etaxonomy.taxeditor.ui.file.separator2"\r
-                  visible="true">\r
-            </separator>\r
-            <command\r
-                  commandId="eu.etaxonomy.taxeditor.saveAll"\r
-                  icon="icons/save_edit.gif"\r
-                  label="Save All"\r
-                  style="push">\r
-            </command>\r
-            <separator\r
-                  name="eu.etaxonomy.taxeditor.ui.file.separator3"\r
-                  visible="true">\r
-            </separator>\r
-            <menu\r
-                  label="Import">\r
-               <command\r
-                     commandId="eu.etaxonomy.taxeditor.import"\r
-                     label="ABCD 2.06"\r
-                     style="push">\r
-               </command>\r
-               <command\r
-                     commandId="eu.etaxonomy.taxeditor.import"\r
-                     label="TcsXML 1.1"\r
-                     style="push">\r
-               </command>\r
-               <command\r
-                     commandId="eu.etaxonomy.taxeditor.import"\r
-                     label="CDM 1.0 XML"\r
-                     style="push">\r
-               </command>\r
-            </menu>\r
-            <menu\r
-                  label="Export">\r
-               <command\r
-                     commandId="eu.etaxonomy.taxeditor.export"\r
-                     label="ABCD 2.06"\r
-                     style="push">\r
-               </command>\r
-               <command\r
-                     commandId="eu.etaxonomy.taxeditor.export"\r
-                     label="TcsXML 1.1"\r
-                     style="push">\r
-               </command>\r
-               <command\r
-                     commandId="eu.etaxonomy.taxeditor.export"\r
-                     label="CDM 1.0 XML"\r
-                     style="push">\r
-               </command>\r
-            </menu>\r
-            <!--<command\r
-                  commandId="eu.etaxonomy.taxeditor.noCmdYet"\r
-                  label="Import"\r
-                  style="push">\r
-            </command>\r
-            <command\r
-                  commandId="eu.etaxonomy.taxeditor.noCmdYet"\r
-                  label="Export"\r
-                  style="push">\r
-            </command>-->\r
-            <separator\r
-                  name="eu.etaxonomy.taxeditor.ui.file.separator4"\r
-                  visible="true">\r
-            </separator>\r
-            <command\r
-                  commandId="org.eclipse.ui.file.exit"\r
-                  label="Exit"\r
-                  style="push">\r
-            </command>\r
-         </menu>\r
-      </menuContribution>\r
-      <menuContribution\r
-            locationURI="menu:org.eclipse.ui.main.menu">\r
-         <menu\r
-               id="org.eclipse.ui.main.menu.edit"\r
-               label="Edit">\r
-            <command\r
-                  commandId="org.eclipse.ui.edit.undo"\r
-                  label="Undo">\r
-            </command>\r
-            <command\r
-                  commandId="org.eclipse.ui.edit.redo"\r
-                  label="Redo"\r
-                  style="push">\r
-            </command>\r
-            <separator\r
-                  name="eu.etaxonomy.taxeditor.ui.edit.separator1"\r
-                  visible="true">\r
-            </separator>\r
-            <command\r
-                  commandId="org.eclipse.ui.edit.cut"\r
-                  label="Cut"\r
-                  style="push">\r
-            </command>\r
-            <command\r
-                  commandId="org.eclipse.ui.edit.copy"\r
-                  label="Copy"\r
-                  style="push">\r
-            </command>\r
-            <command\r
-                  commandId="org.eclipse.ui.edit.paste"\r
-                  label="Paste"\r
-                  style="push">\r
-            </command>\r
-            <separator\r
-                  name="eu.etaxonomy.taxeditor.ui.edit.separator2"\r
-                  visible="true">\r
-            </separator>\r
-            <command\r
-                  commandId="org.eclipse.ui.edit.delete"\r
-                  label="Delete"\r
-                  style="push">\r
-            </command>\r
-         </menu>\r
-      </menuContribution>\r
-      <menuContribution\r
-            locationURI="menu:org.eclipse.ui.main.menu">\r
-         <menu\r
-               id="eu.etaxonomy.taxeditor.ui.taxonMenu"\r
-               label="Taxon">\r
-            <visibleWhen\r
-                  checkEnabled="true">\r
-               <reference\r
-                     definitionId="nameEditorActive_CURRENTLY_DISABLED">\r
-               </reference>\r
-            </visibleWhen>\r
-            <command\r
-                  commandId="eu.etaxonomy.taxeditor.editor.name.createHeterotypicSynoym"\r
-                  label="Create Heterotypic Synonym"\r
-                  style="push">\r
-            </command>\r
-            <command\r
-                  commandId="eu.etaxonomy.taxeditor.editor.name.createHomotypicSynoym"\r
-                  label="Create Homotypic Synonym"\r
-                  style="push">\r
-            </command>\r
-            <separator\r
-                  name="separator1"\r
-                  visible="true">\r
-            </separator>\r
-         </menu>\r
-      </menuContribution>\r
-      <menuContribution\r
-            locationURI="menu:org.eclipse.ui.main.menu">\r
-         <menu\r
-               id="org.eclipse.ui.main.menu.window"\r
-               label="Window">\r
-            <command\r
-                  commandId="org.eclipse.ui.window.preferences"\r
-                  label="Preferences"\r
-                  style="push">\r
-            </command>\r
-         </menu>\r
-      </menuContribution>\r
-      <menuContribution\r
-            locationURI="menu:org.eclipse.ui.main.menu">\r
-         <menu\r
-               id="org.eclipse.ui.main.menu.help"\r
-               label="Help">\r
-            <command\r
-                  commandId="org.eclipse.ui.help.helpContents"\r
-                  label="Help Contents"\r
-                  style="push">\r
-            </command>\r
-            <separator\r
-                  name="eu.etaxonomy.taxeditor.ui.help.separator1"\r
-                  visible="true">\r
-            </separator>\r
-            <command\r
-                  commandId="org.eclipse.ui.update.findAndInstallUpdates"\r
-                  label="Software Updates..."\r
-                  style="push">\r
-            </command>\r
-            <separator\r
-                  name="eu.etaxonomy.taxeditor.ui.help.separator2"\r
-                  visible="true">\r
-            </separator>\r
-            <command\r
-                  commandId="org.eclipse.ui.help.aboutAction"\r
-                  label="About Taxonomic Editor">\r
-            </command>\r
-         </menu>\r
-      </menuContribution>\r
-      <menuContribution\r
-            locationURI="popup:eu.etaxonomy.taxeditor.navigation.taxonomictreeview">\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.ui.openTaxon"\r
-               label="Edit Taxon"\r
-               style="push">\r
-         </command>\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.ui.addTaxon"\r
-               label="Create Child Taxon"\r
-               style="push">\r
-         </command>\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.command22"\r
-               label="Add child taxon with quick name"\r
-               style="push">\r
-         </command>\r
-         <separator\r
-               name="separator1"\r
-               visible="true">\r
-         </separator>\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.ui.deleteTaxon"\r
-               label="Delete Taxon from Tree"\r
-               style="push">\r
-         </command>\r
-      </menuContribution>\r
-      <menuContribution\r
-            locationURI="popup:eu.etaxonomy.taxeditor.editor.multipagetaxonview">\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.editor.name.createHeterotypicSynoym"\r
-               label="Create Heterotypic Synonym"\r
-               style="push">\r
-         </command>\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.editor.name.createHomotypicSynoym"\r
-               label="Create Homotypic Synonym"\r
-               style="push">\r
-         </command>\r
-         <separator\r
-               name="eu.etaxonomy.taxeditor.separator1"\r
-               visible="true">\r
-         </separator>\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.editor.name.createMisappliedName"\r
-               label="Create Misapplied Name"\r
-               style="push">\r
-         </command>\r
-         <menu\r
-               id="eu.etaxonomy.taxeditor.ui.conceptRelations"\r
-               label="Create Concept Relation">\r
-            <command\r
-                  commandId="eu.etaxonomy.taxeditor.command9"\r
-                  label="test"\r
-                  style="push">\r
-            </command>\r
-         </menu>\r
-         <separator\r
-               name="eu.etaxonomy.taxeditor.separator2"\r
-               visible="true">\r
-         </separator>\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.moveTaxon"\r
-               label="Move"\r
-               style="push">\r
-         </command>\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.editor.swapTaxonSynonym"\r
-               label="Change"\r
-               style="push">\r
-         </command>\r
-         <separator\r
-               name="eu.etaxonomy.taxeditor.separator3"\r
-               visible="true">\r
-         </separator>\r
-         <command\r
-               commandId="eu.etaxonomy.taxeditor.ui.addTaxon"\r
-               label="Create Child Taxon"\r
-               style="push">\r
-         </command>\r
-      </menuContribution>\r
-      <menuContribution\r
-            locationURI="popup:org.eclipse.ui.popup.any">\r
-         <menu\r
-               id="eu.etaxonomy.taxeditor.editor.name.menu"\r
-               label="Taxon Context Menu">\r
-         </menu>\r
-      </menuContribution>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.commands">\r
-      <command\r
-            categoryId="org.eclipse.ui.category.file"\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.EditNewTaxonHandler"\r
-            id="eu.etaxonomy.taxeditor.newTaxon"\r
-            name="New Taxon">\r
-      </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.EditTaxonHandler"\r
-            id="eu.etaxonomy.taxeditor.ui.openTaxon"\r
-            name="Open Taxon">\r
-      </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.DeleteTaxonHandler"\r
-            id="eu.etaxonomy.taxeditor.ui.deleteTaxon"\r
-            name="Delete Taxon">\r
-      </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.AddTaxonomicChildHandler"\r
-            id="eu.etaxonomy.taxeditor.ui.addTaxon"\r
-            name="Add Taxon">\r
-      </command>\r
-      <command\r
-            categoryId="org.eclipse.ui.category.file"\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.SaveAllHandler"\r
-            id="eu.etaxonomy.taxeditor.saveAll"\r
-            name="Save All">\r
-      </command>\r
-      <category\r
-            description="Name editor commands"\r
-            id="eu.etaxonomy.taxeditor.editor.name.category"\r
-            name="Name editor">\r
-      </category>\r
-      <command\r
-            categoryId="eu.etaxonomy.taxeditor.editor.name.category"\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.CreateHeterotypicSynonymHandler"\r
-            id="eu.etaxonomy.taxeditor.editor.name.createHeterotypicSynoym"\r
-            name="Create Heterotypic Synonym">\r
-      </command>\r
-      <command\r
-            categoryId="eu.etaxonomy.taxeditor.editor.name.category"\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.CreateHomotypicSynonymHandler"\r
-            id="eu.etaxonomy.taxeditor.editor.name.createHomotypicSynoym"\r
-            name="Create Homotypic Synonym">\r
-      </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.CreateMisappliedNameHandler"\r
-            id="eu.etaxonomy.taxeditor.editor.name.createMisappliedName"\r
-            name="Create Misapplied Name">\r
-      </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.MoveTaxonHandler"\r
-            id="eu.etaxonomy.taxeditor.moveTaxon"\r
-            name="Move Taxon">\r
-      </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.SwapTaxonSynonymHandler"\r
-            id="eu.etaxonomy.taxeditor.editor.swapTaxonSynonym"\r
-            name="Swap Taxon Synonym">\r
-      </command>\r
-      <command\r
-            defaultHandler="org.eclipse.ui.internal.handlers.ToggleCoolbarHandler"\r
-            id="eu.etaxonomy.taxeditor.toggleCoolBar"\r
-            name="Toggle Coolbar">\r
-      </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.ImportHandler"\r
-            id="eu.etaxonomy.taxeditor.import"\r
-            name="Import">\r
-      </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.handlers.ExportHandler"\r
-            id="eu.etaxonomy.taxeditor.export"\r
-            name="Export">\r
-      </command>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.handlers">\r
-      <handler\r
-            class="eu.etaxonomy.taxeditor.handlers.EditTaxonHandler"\r
-            commandId="eu.etaxonomy.taxeditor.ui.open">\r
-      </handler>\r
-      <handler\r
-            class="eu.etaxonomy.taxeditor.handlers.EditNewTaxonHandler"\r
-            commandId="org.eclipse.ui.newWizard">\r
-      </handler>\r
-      \r
-           <handler\r
-           class="eu.etaxonomy.taxeditor.handlers.SaveAllHandler"\r
-           commandId="org.eclipse.ui.file.save">\r
-               <!--activeWhen>\r
-                   <with variable="activePartId">\r
-                       <equals value="eu.etaxonomy.taxeditor.tests.view" />\r
-                   </with>\r
-               </activeWhen-->         \r
-           </handler>      \r
-      \r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.core.expressions.definitions">\r
-      <definition\r
-            id="nameEditorActive">\r
-         <with\r
-               variable="activeEditorId">\r
-            <equals\r
-                  value="eu.etaxonomy.taxeditor.editor.multipagetaxonview">\r
-            </equals>\r
-         </with>\r
-      </definition>\r
-   </extension>\r
-   <extension\r
-         id="TaxEditorProduct"\r
-         point="org.eclipse.core.runtime.products">\r
-      <product\r
-            application="eu.etaxonomy.taxeditor.application"\r
-            name="%productName">\r
-         <property\r
-               name="windowImages"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="aboutText"\r
-               value="%productBlurb">\r
-         </property>\r
-         <property\r
-               name="startupForegroundColor"\r
-               value="C8D5EA">\r
-         </property>\r
-         <property\r
-               name="startupProgressRect"\r
-               value="0,280,455,15">\r
-         </property>\r
-         <property\r
-               name="startupMessageRect"\r
-               value="7,220,441,20">\r
-         </property>\r
-         <property\r
-               name="preferenceCustomization"\r
-               value="plugin_customization.ini">\r
-         </property>\r
-         <property\r
-               name="appName"\r
-               value="%productName">\r
-         </property>\r
-      </product>\r
-   </extension>\r
-   <extension\r
-         id="product"\r
-         point="org.eclipse.core.runtime.products">\r
-      <product\r
-            application="eu.etaxonomy.taxeditor.application"\r
-            name="%productName">\r
-         <property\r
-               name="windowImages"\r
-               value="icons/edit_16x16.gif">\r
-         </property>\r
-         <property\r
-               name="aboutText"\r
-               value="%productBlurb">\r
-         </property>\r
-         <property\r
-               name="startupForegroundColor"\r
-               value="C8D5EA">\r
-         </property>\r
-         <property\r
-               name="startupProgressRect"\r
-               value="0,280,455,15">\r
-         </property>\r
-         <property\r
-               name="startupMessageRect"\r
-               value="7,220,441,20">\r
-         </property>\r
-         <property\r
-               name="preferenceCustomization"\r
-               value="plugin_customization.ini">\r
-         </property>\r
-      </product>\r
-   </extension>\r
-   <!--extension\r
-         point="org.eclipse.ui.bindings">\r
-      <key\r
-            commandId="eu.etaxonomy.taxeditor.saveAll"\r
-            contextId="org.eclipse.ui.contexts.dialogAndWindow"\r
-            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"\r
-            sequence="Ctrl+S">\r
-      </key>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.actionSets">\r
-      <actionSet\r
-            id="org.eclipse.ui.main.menu.file"\r
-            label="File Menu Actions"\r
-            visible="true">\r
-         <action\r
-               definitionId="eu.etaxonomy.taxeditor.saveAll"\r
-               id="eu.etaxonomy.taxeditor.action.saveAll"\r
-               label="Save All"\r
-               style="push">\r
-         </action>\r
-      </actionSet>\r
-   </extension-->\r
-   <!--extension\r
-         point="org.eclipse.ui.commands">\r
-      <command\r
-            id="eu.etaxonomy.taxeditor.actions.opennameeditoractiondef"\r
-            name="name">\r
-      </command>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.handlers">\r
-      <handler\r
-            commandId="eu.etaxonomy.taxeditor.handler1">\r
-      </handler>\r
-   </extension>\r
-   <extension\r
-         point="org.eclipse.ui.newWizards">\r
-   </extension-->\r
-   <extension point="org.eclipse.ui.menus">\r
-         <menuContribution\r
-            locationURI="popup:eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor">\r
-                <separator\r
-                      name="separator1"\r
-                      visible="true">\r
-                </separator>\r
-                <command commandId="org.eclipse.jdt.ui.edit.text.java.correction.assist.proposals" />\r
-      </menuContribution>\r
-   </extension>\r
-       <extension point="org.eclipse.ui.handlers">\r
-           <handler\r
-           class="eu.etaxonomy.taxeditor.tests.QuickFixHandler"\r
-           commandId="org.eclipse.jdt.ui.edit.text.java.correction.assist.proposals">\r
-              <!-- this handler might only be used to open a problem view -->\r
-               <activeWhen>\r
-                   <with variable="activePartId">\r
-                       <equals value="eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor" />\r
-                   </with>\r
-               </activeWhen>           \r
-           </handler>\r
-       </extension>   
-</plugin>\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/plugin_customization.ini b/eclipseprojects/eu.etaxonomy.taxeditor/plugin_customization.ini
deleted file mode 100644 (file)
index ecdf68e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.ui/SHOW_PROGRESS_ON_STARTUP = true\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/splash.bmp b/eclipseprojects/eu.etaxonomy.taxeditor/splash.bmp
deleted file mode 100644 (file)
index 74c1225..0000000
Binary files a/eclipseprojects/eu.etaxonomy.taxeditor/splash.bmp and /dev/null differ
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/com/swtdesigner/ResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/com/swtdesigner/ResourceManager.java
deleted file mode 100644 (file)
index 8e42686..0000000
+++ /dev/null
@@ -1,269 +0,0 @@
-package com.swtdesigner;
-import java.io.File;
-import java.io.InputStream;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.Method;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.jface.resource.CompositeImageDescriptor;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.graphics.*;
-
-/**
- * Utility class for managing OS resources associated with SWT/JFace controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class ResourceManager extends SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image descriptors to images
-        */
-    private static HashMap<ImageDescriptor, Image> m_DescriptorImageMap = new HashMap<ImageDescriptor, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-    
-    /**
-     * Returns an image descriptor stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image descriptor
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(Class<?> clazz, String path) {
-        return ImageDescriptor.createFromFile(clazz, path);
-    }
-
-    /**
-     * Returns an image descriptor stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getImageDescriptor(String path) {
-        try {
-            return ImageDescriptor.createFromURL((new File(path)).toURI().toURL());
-        } catch (MalformedURLException e) {
-            return null;
-        }
-    }
-
-    /**
-     * Returns an image based on the specified image descriptor
-     * @param descriptor ImageDescriptor The image descriptor for the image
-     * @return Image The image based on the specified image descriptor
-     */
-    public static Image getImage(ImageDescriptor descriptor) {
-        if (descriptor == null)
-            return null;
-        Image image = m_DescriptorImageMap.get(descriptor);
-        if (image == null) {
-            image = descriptor.createImage();
-            m_DescriptorImageMap.put(descriptor, image);
-        }
-        return image;
-    }
-
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       final Rectangle bid = baseImage.getBounds();
-                       final Rectangle did = decorator.getBounds();
-            final Point baseImageSize = new Point(bid.width, bid.height); 
-            CompositeImageDescriptor compositImageDesc = new CompositeImageDescriptor() { 
-                protected void drawCompositeImage(int width, int height) { 
-                    drawImage(baseImage.getImageData(), 0, 0); 
-                    if (corner == TOP_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, 0); 
-                    } else if (corner == TOP_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, 0); 
-                    } else if (corner == BOTTOM_LEFT) { 
-                        drawImage(decorator.getImageData(), 0, bid.height - did.height - 1); 
-                    } else if (corner == BOTTOM_RIGHT) { 
-                        drawImage(decorator.getImageData(), bid.width - did.width - 1, bid.height - did.height - 1); 
-                    } 
-                } 
-                protected Point getSize() { 
-                    return baseImageSize; 
-                } 
-            }; 
-            result = compositImageDesc.createImage(); 
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-       SWTResourceManager.disposeImages();
-       // dispose ImageDescriptor images
-       {
-               for (Iterator<Image> I = m_DescriptorImageMap.values().iterator(); I.hasNext();)
-                       I.next().dispose();
-               m_DescriptorImageMap.clear();
-       }
-       // dispose plugin images
-       {
-               for (Iterator<Image> I = m_URLImageMap.values().iterator(); I.hasNext();)
-                       I.next().dispose();
-               m_URLImageMap.clear();
-       }
-       // dispose decorated images
-               for (Iterator<HashMap<Image, Image>> I = m_ImageToDecoratorMap.values().iterator(); I.hasNext();) {
-                       HashMap<Image, Image> decoratedMap = I.next();
-                       for (Iterator<Image> J = decoratedMap.values().iterator(); J.hasNext();) {
-                               Image decoratedImage = J.next();
-                               decoratedImage.dispose();
-                       }
-               }
-    }
-
-    //////////////////////////////
-    // Plugin images support
-    //////////////////////////////
-
-    /**
-     * Maps URL to images
-     */
-    private static HashMap<URL, Image> m_URLImageMap = new HashMap<URL, Image>();
-
-    /**
-     * Retuns an image based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getPluginImage(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                if (m_URLImageMap.containsKey(url))
-                    return m_URLImageMap.get(url);
-                InputStream is = url.openStream();
-                Image image;
-                try {
-                    image = getImage(is);
-                    m_URLImageMap.put(url, image);
-                } finally {
-                    is.close();
-                }
-                return image;
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an image descriptor based on a plugin and file path
-     * @param plugin Object The plugin containing the image
-     * @param name String The path to th eimage within the plugin
-     * @return ImageDescriptor The image descriptor stored in the file at the specified path
-     */
-    public static ImageDescriptor getPluginImageDescriptor(Object plugin, String name) {
-        try {
-            try {
-                URL url = getPluginImageURL(plugin, name);
-                return ImageDescriptor.createFromURL(url);
-            } catch (Throwable e) {
-               // Ignore any exceptions
-            }
-        } catch (Throwable e) {
-               // Ignore any exceptions
-        }
-        return null;
-    }
-
-    /**
-     * Retuns an URL based on a plugin and file path
-     * @param plugin Object The plugin containing the file path
-     * @param name String The file path
-     * @return URL The URL representing the file at the specified path
-     * @throws Exception
-     */
-       private static URL getPluginImageURL(Object plugin, String name) throws Exception {
-               // try to work with 'plugin' as with OSGI BundleContext
-               try {
-                       Class<?> bundleClass = Class.forName("org.osgi.framework.Bundle"); //$NON-NLS-1$
-                       Class<?> bundleContextClass = Class.forName("org.osgi.framework.BundleContext"); //$NON-NLS-1$
-                       if (bundleContextClass.isAssignableFrom(plugin.getClass())) {
-                               Method getBundleMethod = bundleContextClass.getMethod("getBundle", new Class[0]); //$NON-NLS-1$
-                               Object bundle = getBundleMethod.invoke(plugin, new Object[0]);
-                               //
-                               Class<?> ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class<?> pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor<?> pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Class<?> platformClass = Class.forName("org.eclipse.core.runtime.Platform"); //$NON-NLS-1$
-                               Method findMethod = platformClass.getMethod("find", new Class[]{bundleClass, ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(null, new Object[]{bundle, path});
-                       }
-               } catch (Throwable e) {
-               // Ignore any exceptions
-               }
-               // else work with 'plugin' as with usual Eclipse plugin
-               {
-                       Class<?> pluginClass = Class.forName("org.eclipse.core.runtime.Plugin"); //$NON-NLS-1$
-                       if (pluginClass.isAssignableFrom(plugin.getClass())) {
-                               //
-                               Class<?> ipathClass = Class.forName("org.eclipse.core.runtime.IPath"); //$NON-NLS-1$
-                               Class<?> pathClass = Class.forName("org.eclipse.core.runtime.Path"); //$NON-NLS-1$
-                               Constructor<?> pathConstructor = pathClass.getConstructor(new Class[]{String.class});
-                               Object path = pathConstructor.newInstance(new Object[]{name});
-                               //
-                               Method findMethod = pluginClass.getMethod("find", new Class[]{ipathClass}); //$NON-NLS-1$
-                               return (URL) findMethod.invoke(plugin, new Object[]{path});
-                       }
-               }
-               return null;
-       }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/com/swtdesigner/SWTResourceManager.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/com/swtdesigner/SWTResourceManager.java
deleted file mode 100644 (file)
index 4d4f812..0000000
+++ /dev/null
@@ -1,460 +0,0 @@
-package com.swtdesigner;
-import java.io.BufferedInputStream;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.util.HashMap;
-import java.util.Iterator;
-
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Color;
-import org.eclipse.swt.graphics.Cursor;
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.FontData;
-import org.eclipse.swt.graphics.GC;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.swt.graphics.RGB;
-import org.eclipse.swt.graphics.Rectangle;
-import org.eclipse.swt.widgets.Canvas;
-import org.eclipse.swt.widgets.Control;
-import org.eclipse.swt.widgets.CoolBar;
-import org.eclipse.swt.widgets.CoolItem;
-import org.eclipse.swt.widgets.Display;
-
-/**
- * Utility class for managing OS resources associated with SWT controls such as
- * colors, fonts, images, etc.
- * 
- * !!! IMPORTANT !!! Application code must explicitly invoke the <code>dispose()</code>
- * method to release the operating system resources managed by cached objects
- * when those objects and OS resources are no longer needed (e.g. on
- * application shutdown)
- * 
- * This class may be freely distributed as part of any application or plugin.
- * <p>
- * Copyright (c) 2003 - 2005, Instantiations, Inc. <br>All Rights Reserved
- * 
- * @author scheglov_ke
- * @author Dan Rubel
- */
-public class SWTResourceManager {
-
-    /**
-     * Dispose of cached objects and their underlying OS resources. This should
-     * only be called when the cached objects are no longer needed (e.g. on
-     * application shutdown)
-     */
-    public static void dispose() {
-        disposeColors();
-        disposeFonts();
-        disposeImages();
-        disposeCursors();
-    }
-
-    //////////////////////////////
-    // Color support
-    //////////////////////////////
-
-    /**
-     * Maps RGB values to colors
-     */
-    private static HashMap<RGB, Color> m_ColorMap = new HashMap<RGB, Color>();
-
-    /**
-     * Returns the system color matching the specific ID
-     * @param systemColorID int The ID value for the color
-     * @return Color The system color matching the specific ID
-     */
-    public static Color getColor(int systemColorID) {
-        Display display = Display.getCurrent();
-        return display.getSystemColor(systemColorID);
-    }
-
-    /**
-     * Returns a color given its red, green and blue component values
-     * @param r int The red component of the color
-     * @param g int The green component of the color
-     * @param b int The blue component of the color
-     * @return Color The color matching the given red, green and blue componet values
-     */
-    public static Color getColor(int r, int g, int b) {
-        return getColor(new RGB(r, g, b));
-    }
-
-    /**
-     * Returns a color given its RGB value
-     * @param rgb RGB The RGB value of the color
-     * @return Color The color matching the RGB value
-     */
-    public static Color getColor(RGB rgb) {
-        Color color = m_ColorMap.get(rgb);
-        if (color == null) {
-            Display display = Display.getCurrent();
-            color = new Color(display, rgb);
-            m_ColorMap.put(rgb, color);
-        }
-        return color;
-    }
-
-    /**
-     * Dispose of all the cached colors
-     */
-    public static void disposeColors() {
-        for (Iterator<Color> iter = m_ColorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_ColorMap.clear();
-    }
-
-    //////////////////////////////
-    // Image support
-    //////////////////////////////
-
-       /**
-        * Maps image names to images
-        */
-    private static HashMap<String, Image> m_ClassImageMap = new HashMap<String, Image>();
-
-       /**
-        * Maps images to image decorators
-        */
-    private static HashMap<Image, HashMap<Image, Image>> m_ImageToDecoratorMap = new HashMap<Image, HashMap<Image, Image>>();
-
-    /**
-     * Returns an image encoded by the specified input stream
-     * @param is InputStream The input stream encoding the image data
-     * @return Image The image encoded by the specified input stream
-     */
-    protected static Image getImage(InputStream is) {
-        Display display = Display.getCurrent();
-        ImageData data = new ImageData(is);
-        if (data.transparentPixel > 0)
-            return new Image(display, data, data.getTransparencyMask());
-        return new Image(display, data);
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String path) {
-       return getImage("default", path); //$NON-NLS-1$
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path
-     * @param section The section to which belongs specified image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(String section, String path) {
-        String key = section + '|' + SWTResourceManager.class.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-            try {
-                FileInputStream fis = new FileInputStream(path);
-                image = getImage(fis);
-                m_ClassImageMap.put(key, image);
-                fis.close();
-            } catch (Exception e) {
-               image = getMissingImage();
-               m_ClassImageMap.put(key, image);
-            }
-        }
-        return image;
-    }
-
-    /**
-     * Returns an image stored in the file at the specified path relative to the specified class
-     * @param clazz Class The class relative to which to find the image
-     * @param path String The path to the image file
-     * @return Image The image stored in the file at the specified path
-     */
-    public static Image getImage(Class<?> clazz, String path) {
-        String key = clazz.getName() + '|' + path;
-        Image image = m_ClassImageMap.get(key);
-        if (image == null) {
-               try {
-                       if (path.length() > 0 && path.charAt(0) == '/') {
-                               String newPath = path.substring(1, path.length());
-                               image = getImage(new BufferedInputStream(clazz.getClassLoader().getResourceAsStream(newPath)));
-                       } else {
-                               image = getImage(clazz.getResourceAsStream(path));
-                       }
-                       m_ClassImageMap.put(key, image);
-               } catch (Exception e) {
-                       image = getMissingImage();
-                       m_ClassImageMap.put(key, image);
-               }
-        }
-        return image;
-    }
-
-    private static final int MISSING_IMAGE_SIZE = 10;
-       private static Image getMissingImage() {
-               Image image = new Image(Display.getCurrent(), MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               //
-               GC gc = new GC(image);
-               gc.setBackground(getColor(SWT.COLOR_RED));
-               gc.fillRectangle(0, 0, MISSING_IMAGE_SIZE, MISSING_IMAGE_SIZE);
-               gc.dispose();
-               //
-               return image;
-       }
-
-    /**
-     * Style constant for placing decorator image in top left corner of base image.
-     */
-    public static final int TOP_LEFT = 1;
-    /**
-     * Style constant for placing decorator image in top right corner of base image.
-     */
-    public static final int TOP_RIGHT = 2;
-    /**
-     * Style constant for placing decorator image in bottom left corner of base image.
-     */
-    public static final int BOTTOM_LEFT = 3;
-    /**
-     * Style constant for placing decorator image in bottom right corner of base image.
-     */
-    public static final int BOTTOM_RIGHT = 4;
-    
-    /**
-     * Returns an image composed of a base image decorated by another image
-     * @param baseImage Image The base image that should be decorated
-     * @param decorator Image The image to decorate the base image
-     * @return Image The resulting decorated image
-     */
-    public static Image decorateImage(Image baseImage, Image decorator) {
-       return decorateImage(baseImage, decorator, BOTTOM_RIGHT);
-    }
-    
-    /**
-        * Returns an image composed of a base image decorated by another image
-        * @param baseImage Image The base image that should be decorated
-        * @param decorator Image The image to decorate the base image
-        * @param corner The corner to place decorator image
-        * @return Image The resulting decorated image
-        */
-       public static Image decorateImage(final Image baseImage, final Image decorator, final int corner) {
-               HashMap<Image, Image> decoratedMap = m_ImageToDecoratorMap.get(baseImage);
-               if (decoratedMap == null) {
-                       decoratedMap = new HashMap<Image, Image>();
-                       m_ImageToDecoratorMap.put(baseImage, decoratedMap);
-               }
-               Image result = decoratedMap.get(decorator);
-               if (result == null) {
-                       Rectangle bid = baseImage.getBounds();
-                       Rectangle did = decorator.getBounds();
-                       result = new Image(Display.getCurrent(), bid.width, bid.height);
-                       GC gc = new GC(result);
-                       gc.drawImage(baseImage, 0, 0);
-                       //
-                       if (corner == TOP_LEFT) {
-                               gc.drawImage(decorator, 0, 0);
-                       } else if (corner == TOP_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, 0);
-                       } else if (corner == BOTTOM_LEFT) {
-                               gc.drawImage(decorator, 0, bid.height - did.height - 1);
-                       } else if (corner == BOTTOM_RIGHT) {
-                               gc.drawImage(decorator, bid.width - did.width - 1, bid.height - did.height - 1);
-                       }
-                       //
-                       gc.dispose();
-                       decoratedMap.put(decorator, result);
-               }
-               return result;
-       }
-
-    /**
-     * Dispose all of the cached images
-     */
-    public static void disposeImages() {
-        for (Iterator<Image> I = m_ClassImageMap.values().iterator(); I.hasNext();)
-             I.next().dispose();
-        m_ClassImageMap.clear();
-        //
-        for (Iterator<HashMap<Image, Image>> I = m_ImageToDecoratorMap.values().iterator(); I.hasNext();) {
-                       HashMap<Image, Image> decoratedMap = I.next();
-                       for (Iterator<Image> J = decoratedMap.values().iterator(); J.hasNext();) {
-                               Image image = J.next();
-                               image.dispose();
-                       }
-               }
-    }
-
-    /**
-        * Dispose cached images in specified section
-        * @param section the section do dispose
-        */
-       public static void disposeImages(String section) {
-               for (Iterator<String> I = m_ClassImageMap.keySet().iterator(); I.hasNext();) {
-                       String key = I.next();
-                       if (!key.startsWith(section + '|'))
-                               continue;
-                       Image image = m_ClassImageMap.get(key);
-                       image.dispose();
-                       I.remove();
-               }
-       }
-
-    //////////////////////////////
-    // Font support
-    //////////////////////////////
-
-    /**
-     * Maps font names to fonts
-     */
-    private static HashMap<String, Font> m_FontMap = new HashMap<String, Font>();
-
-    /**
-     * Maps fonts to their bold versions
-     */
-    private static HashMap<Font, Font> m_FontToBoldFontMap = new HashMap<Font, Font>();
-
-    /**
-     * Returns a font based on its name, height and style
-     * @param name String The name of the font
-     * @param height int The height of the font
-     * @param style int The style of the font
-     * @return Font The font matching the name, height and style
-     */
-    public static Font getFont(String name, int height, int style) {
-       return getFont(name, height, style, false, false);
-    }
-
-
-    /**
-     * Returns a font based on its name, height and style. 
-     * Windows-specific strikeout and underline flags are also supported.
-     * @param name String The name of the font
-     * @param size int The size of the font
-     * @param style int The style of the font
-     * @param strikeout boolean The strikeout flag (warning: Windows only)
-     * @param underline boolean The underline flag (warning: Windows only)
-     * @return Font The font matching the name, height, style, strikeout and underline
-     */
-       public static Font getFont(String name, int size, int style, boolean strikeout, boolean underline) {
-               String fontName = name + '|' + size + '|' + style + '|' + strikeout + '|' + underline;
-        Font font = m_FontMap.get(fontName);
-        if (font == null) {
-               FontData fontData = new FontData(name, size, style);
-               if (strikeout || underline) {
-                       try {
-                               Class<?> logFontClass = Class.forName("org.eclipse.swt.internal.win32.LOGFONT"); //$NON-NLS-1$
-                               Object logFont = FontData.class.getField("data").get(fontData); //$NON-NLS-1$
-                               if (logFont != null && logFontClass != null) {
-                                       if (strikeout) {
-                                                       logFontClass.getField("lfStrikeOut").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                                       if (underline) {
-                                                       logFontClass.getField("lfUnderline").set(logFont, new Byte((byte) 1)); //$NON-NLS-1$
-                                               }
-                               }
-                       } catch (Throwable e) {
-                               System.err.println(
-                                       "Unable to set underline or strikeout" + " (probably on a non-Windows platform). " + e); //$NON-NLS-1$ //$NON-NLS-2$
-                       }
-               }
-               font = new Font(Display.getCurrent(), fontData);
-               m_FontMap.put(fontName, font);
-        }
-               return font;
-       }
-    
-
-    /**
-     * Return a bold version of the give font
-     * @param baseFont Font The font for whoch a bold version is desired
-     * @return Font The bold version of the give font
-     */
-    public static Font getBoldFont(Font baseFont) {
-        Font font = m_FontToBoldFontMap.get(baseFont);
-        if (font == null) {
-            FontData fontDatas[] = baseFont.getFontData();
-            FontData data = fontDatas[0];
-            font = new Font(Display.getCurrent(), data.getName(), data.getHeight(), SWT.BOLD);
-            m_FontToBoldFontMap.put(baseFont, font);
-        }
-        return font;
-    }
-
-    /**
-     * Dispose all of the cached fonts
-     */
-    public static void disposeFonts() {
-               // clear fonts
-        for (Iterator<Font> iter = m_FontMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_FontMap.clear();
-               // clear bold fonts
-        for (Iterator<Font> iter = m_FontToBoldFontMap.values().iterator(); iter.hasNext();)
-               iter.next().dispose();
-        m_FontToBoldFontMap.clear();
-    }
-
-       //////////////////////////////
-    // CoolBar support
-    //////////////////////////////
-
-    /**
-     * Fix the layout of the specified CoolBar
-     * @param bar CoolBar The CoolBar that shgoud be fixed
-     */
-    public static void fixCoolBarSize(CoolBar bar) {
-        CoolItem[] items = bar.getItems();
-        // ensure that each item has control (at least empty one)
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            if (item.getControl() == null)
-                item.setControl(new Canvas(bar, SWT.NONE) {
-                @Override
-                               public Point computeSize(int wHint, int hHint, boolean changed) {
-                    return new Point(20, 20);
-                }
-            });
-        }
-        // compute size for each item
-        for (int i = 0; i < items.length; i++) {
-            CoolItem item = items[i];
-            Control control = item.getControl();
-            control.pack();
-            Point size = control.getSize();
-            item.setSize(item.computeSize(size.x, size.y));
-        }
-    }
-
-    //////////////////////////////
-    // Cursor support
-    //////////////////////////////
-
-    /**
-     * Maps IDs to cursors
-     */
-    private static HashMap<Integer, Cursor> m_IdToCursorMap = new HashMap<Integer, Cursor>();
-    /**
-     * Returns the system cursor matching the specific ID
-     * @param id int The ID value for the cursor
-     * @return Cursor The system cursor matching the specific ID
-     */
-    public static Cursor getCursor(int id) {
-        Integer key = new Integer(id);
-        Cursor cursor = m_IdToCursorMap.get(key);
-        if (cursor == null) {
-            cursor = new Cursor(Display.getDefault(), id);
-            m_IdToCursorMap.put(key, cursor);
-        }
-        return cursor;
-    }
-    /**
-     * Dispose all of the cached cursors
-     */
-    public static void disposeCursors() {
-        for (Iterator<Cursor> iter = m_IdToCursorMap.values().iterator(); iter.hasNext();)
-             iter.next().dispose();
-        m_IdToCursorMap.clear();
-    }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/Application.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/Application.java
deleted file mode 100644 (file)
index 49ae782..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-package eu.etaxonomy.taxeditor;
-
-import org.apache.log4j.Logger;
-import org.eclipse.equinox.app.IApplication;
-import org.eclipse.equinox.app.IApplicationContext;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IWorkbench;
-import org.eclipse.ui.PlatformUI;
-
-/**
- * This class controls all aspects of the application's execution
- * 
- * but thorws errors on osx
- */
-public class Application implements IApplication {
-       private static final Logger logger = Logger.getLogger(Application.class);
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.IApplicationContext)
-        */
-       public Object start(IApplicationContext context) {
-               Display display = PlatformUI.createDisplay();
-               try {
-                       int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
-                       if (returnCode == PlatformUI.RETURN_RESTART) {
-                               return IApplication.EXIT_RESTART;
-                       }
-                       return IApplication.EXIT_OK;
-               } finally {
-                       display.dispose();
-               }
-       }
-
-       /* (non-Javadoc)
-        * @see org.eclipse.equinox.app.IApplication#stop()
-        */
-       public void stop() {
-               final IWorkbench workbench = PlatformUI.getWorkbench();
-               if (workbench == null)
-                       return;
-               final Display display = workbench.getDisplay();
-               display.syncExec(new Runnable() {
-                       public void run() {
-                               if (!display.isDisposed())
-                                       workbench.close();
-                       }
-               });
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationActionBarAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationActionBarAdvisor.java
deleted file mode 100644 (file)
index b493d79..0000000
+++ /dev/null
@@ -1,199 +0,0 @@
-/**
-* Copyright (C) 2007 EDIT
-* 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.
-*/
-
-package eu.etaxonomy.taxeditor;
-
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.MenuManager;
-import org.eclipse.jface.action.Separator;
-import org.eclipse.ui.IWorkbenchActionConstants;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-
-import eu.etaxonomy.taxeditor.actions.TaxEditorActionFactory;
-import eu.etaxonomy.taxeditor.actions.io.ExportAction;
-import eu.etaxonomy.taxeditor.controller.GlobalController;
-
-/**
- * An action bar advisor is responsible for creating, adding, and disposing of
- * the actions added to a workbench window. Each window will be populated with
- * new actions.
- * 
- * @author p.ciardelli
- * @created 02.06.2008
- * @version 1.0
- */
-public class ApplicationActionBarAdvisor extends ActionBarAdvisor {
-       private static final Logger logger = Logger
-                       .getLogger(ApplicationActionBarAdvisor.class);
-
-       private List<IAction> importActionList;
-
-       private IAction exportJaxbAction;
-
-
-       public ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {
-               super(configurer);
-       }
-       
-       protected void makeActions(final IWorkbenchWindow window) {
-               GlobalController.setStatusLineManager(getActionBarConfigurer().getStatusLineManager());
-       }
-
-       protected void fillMenuBar(IMenuManager menuBar) {
-       }
-       
-       
-       // Actions - important to allocate these only in makeActions, and then use
-       // them in the fill methods. This ensures that the actions aren't recreated
-       // when fillActionBars is called with FILL_PROXY.
-//     private IWorkbenchAction exitAction;
-//     private IWorkbenchAction saveAction;
-//     private IWorkbenchAction preferencesAction;
-//     private IWorkbenchAction undoAction;
-//     private IWorkbenchAction redoAction;
-//     
-//     private IAction newNameAction;
-
-
-       @Deprecated
-       protected void _makeActions(final IWorkbenchWindow window) {
-               // Creates the actions and registers them.
-               // Registering is needed to ensure that key bindings work.
-               // The corresponding commands keybindings are defined in the plugin.xml
-               // file.
-               // Registering also provides automatic disposal of the actions when
-               // the window is closed.
-               
-               GlobalController.setStatusLineManager(getActionBarConfigurer().getStatusLineManager());
-               
-               // File menu actions
-               register(TaxEditorActionFactory.NEW.create(window));
-               register(TaxEditorActionFactory.SAVE.create(window));
-               register(TaxEditorActionFactory.QUIT.create(window));
-               
-               // Edit menu actions
-               register(TaxEditorActionFactory.UNDO.create(window));
-               register(TaxEditorActionFactory.REDO.create(window));
-               register(TaxEditorActionFactory.CUT.create(window));
-               register(TaxEditorActionFactory.COPY.create(window));
-               register(TaxEditorActionFactory.PASTE.create(window));
-               register(TaxEditorActionFactory.DELETE.create(window));
-               
-               // Window menu actions
-               register(TaxEditorActionFactory.PREFERENCES.create(window));
-               
-               // Help menu actions
-               register(TaxEditorActionFactory.ABOUT.create(window));
-               
-               
-               
-               makeImportActions();
-               
-               exportJaxbAction = new ExportAction(ExportAction.JAXB);
-               register(exportJaxbAction);
-       }
-
-       @Deprecated
-       private void makeImportActions() {
-               
-//             importActionList = new ArrayList<IAction>();
-//             
-//             for (ImportWrapper wrapper : ImportWrapper.list()) {
-//                     IAction importAction = new ImportAction(wrapper);
-//                     register(importAction);
-//                     importActionList.add(importAction);             
-//             }
-       }
-       
-       @Deprecated
-       private MenuManager FILE_MENU(){
-               MenuManager fileMenu = new MenuManager("&File",
-                               IWorkbenchActionConstants.M_FILE);
-               
-               // Create submenu for imports
-               MenuManager importMenu = new MenuManager("Import ...", null);
-               
-               // Create submenu for exports
-               MenuManager exportMenu = new MenuManager("Export as ...", null);
-       
-               // Populate file menu
-               fileMenu.add(getAction(TaxEditorActionFactory.NEW.getId()));
-               fileMenu.add(getAction(TaxEditorActionFactory.SAVE.getId()));
-               fileMenu.add(new Separator());
-               fileMenu.add(importMenu);
-               fileMenu.add(exportMenu);
-               fileMenu.add(new Separator());
-               fileMenu.add(getAction(TaxEditorActionFactory.QUIT.getId()));
-               
-               // Populate submenu for imports
-               for (IAction importAction : importActionList) {
-                       importMenu.add(importAction);
-               }
-
-               // Populate submenu for exports
-               exportMenu.add(exportJaxbAction);
-               
-               return fileMenu;
-       }
-
-       @Deprecated
-       private MenuManager EDIT_MENU() {
-
-               MenuManager editMenu = new MenuManager("&Edit", IWorkbenchActionConstants.M_EDIT);
-               
-               editMenu.add(getAction(TaxEditorActionFactory.UNDO.getId()));
-               editMenu.add(getAction(TaxEditorActionFactory.REDO.getId()));
-               editMenu.add(new Separator());
-               editMenu.add(getAction(TaxEditorActionFactory.CUT.getId()));
-               editMenu.add(getAction(TaxEditorActionFactory.COPY.getId()));
-               editMenu.add(getAction(TaxEditorActionFactory.PASTE.getId()));
-               editMenu.add(new Separator());
-               editMenu.add(getAction(TaxEditorActionFactory.DELETE.getId()));
-               
-               return editMenu;
-       }
-
-       @Deprecated
-       private MenuManager WINDOW_MENU() {
-               MenuManager windowMenu = new MenuManager("&Window",
-                               IWorkbenchActionConstants.M_WINDOW);
-
-               windowMenu.add(getAction(TaxEditorActionFactory.PREFERENCES.getId()));
-               
-               return windowMenu;
-       }
-       
-       @Deprecated
-       private MenuManager HELP_MENU(){
-               MenuManager helpMenu = new MenuManager("&Help",
-                               IWorkbenchActionConstants.M_HELP);
-               
-               helpMenu.add(getAction(TaxEditorActionFactory.ABOUT.getId()));
-               
-               return helpMenu;
-       }
-
-       @Deprecated
-       protected void _fillMenuBar(IMenuManager menuBar) {
-               
-               menuBar.add(FILE_MENU());
-               
-               menuBar.add(EDIT_MENU());
-               
-               menuBar.add(WINDOW_MENU());
-               
-               menuBar.add(HELP_MENU());
-       }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationWorkbenchAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationWorkbenchAdvisor.java
deleted file mode 100644 (file)
index a34eb46..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-package eu.etaxonomy.taxeditor;
-
-import org.eclipse.ui.application.IWorkbenchConfigurer;
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchAdvisor;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-public class ApplicationWorkbenchAdvisor extends WorkbenchAdvisor {
-
-       private static final String PERSPECTIVE_ID = "eu.etaxonomy.taxeditor.perspective.freetextproperties";
-
-       public WorkbenchWindowAdvisor createWorkbenchWindowAdvisor(
-                       IWorkbenchWindowConfigurer configurer) {
-               return new ApplicationWorkbenchWindowAdvisor(configurer);
-       }
-
-       public String getInitialWindowPerspectiveId() {
-               return PERSPECTIVE_ID;
-       }
-       
-       public void initialize(IWorkbenchConfigurer configurer) {
-               super.initialize(configurer);
-                               
-               // Remembers the user's view layout, window size, window location etc.
-               //  for the next time application is started
-               
-               // IMPORTANT as we don not have a mechanism to open views via a menu
-               // at the moment this has to be set to false everytime a new view is added,
-               // otherwise the view will not show because it is not stored in the memento
-               configurer.setSaveAndRestore(false);            
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationWorkbenchWindowAdvisor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ApplicationWorkbenchWindowAdvisor.java
deleted file mode 100644 (file)
index 90e88d1..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/**
-* Copyright (C) 2007 EDIT
-* 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.
-*/
-
-package eu.etaxonomy.taxeditor;
-
-import org.apache.log4j.Logger;
-import org.eclipse.jface.dialogs.Dialog;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.window.Window;
-import org.eclipse.swt.graphics.Point;
-import org.eclipse.ui.application.ActionBarAdvisor;
-import org.eclipse.ui.application.IActionBarConfigurer;
-import org.eclipse.ui.application.IWorkbenchWindowConfigurer;
-import org.eclipse.ui.application.WorkbenchWindowAdvisor;
-
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
-import eu.etaxonomy.taxeditor.controller.GlobalController;
-import eu.etaxonomy.taxeditor.controller.PreferencesController;
-import eu.etaxonomy.taxeditor.preference.InitNomenclaturalCodePrefDialog;
-
-/** 
- * @author p.ciardelli
- * @created 15.05.2008
- * @version 1.0
- */
-public class ApplicationWorkbenchWindowAdvisor extends WorkbenchWindowAdvisor {
-       private static final Logger logger = Logger.getLogger(ApplicationWorkbenchWindowAdvisor.class);
-       
-       public ApplicationWorkbenchWindowAdvisor(IWorkbenchWindowConfigurer configurer) {
-               super(configurer);
-       }
-
-       public ActionBarAdvisor createActionBarAdvisor(
-                       IActionBarConfigurer configurer) {
-               return new ApplicationActionBarAdvisor(configurer);
-       }
-
-       public void preWindowOpen() {
-               IWorkbenchWindowConfigurer configurer = getWindowConfigurer();
-               configurer.setInitialSize(new Point(963, 637));
-               configurer.setShowCoolBar(false);
-               configurer.setShowStatusLine(true);
-               configurer.setShowPerspectiveBar(true);
-               configurer.setTitle("EDIT Taxonomic Editor");
-       }
-       
-       public void postWindowOpen() {
-               checkNomenclaturalCode();
-       }
-       
-       private void checkNomenclaturalCode() {
-               
-               // First time Editor is opened, no nomenclatural code has been set
-               if (PreferencesController.getPreferredNomenclaturalCode() == null) {
-
-                       // Query user re: preferred nom. code
-                       Dialog dialog = new InitNomenclaturalCodePrefDialog(GlobalController.getShell());
-                       int returnCode = dialog.open();
-                       
-                       // Short message confirming user's choice
-                       String code = PreferencesController.getPreferredNomenclaturalCodeAsString();
-                       MessageDialog.openInformation(GlobalController.getShell(), "Nomenclatural code set", 
-                                       "The following has been set as your preferred nomenclatural code:\n\n\t" + 
-                                       code + "\n\nYou can change the botanical code at any time in the \"Preferences\" menu.");
-               }               
-       }
-       
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/FreetextPropertiesPerspective.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/FreetextPropertiesPerspective.java
deleted file mode 100644 (file)
index 485ba0b..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/**
-* Copyright (C) 2007 EDIT
-* 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.
-*/
-
-package eu.etaxonomy.taxeditor;
-
-import org.apache.log4j.Logger;
-import org.eclipse.ui.IFolderLayout;
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPerspectiveFactory;
-
-import eu.etaxonomy.taxeditor.navigation.RecentNamesView;
-import eu.etaxonomy.taxeditor.navigation.SearchView;
-import eu.etaxonomy.taxeditor.navigation.TaxonomicTreeView;
-
-/**
- * @author p.ciardelli
- * @created 15.05.2008
- * @version 1.0
- */
-public class FreetextPropertiesPerspective implements IPerspectiveFactory {
-       private static final Logger logger = Logger.getLogger(FreetextPropertiesPerspective.class);
-       /*
-        * To remember the user's layout and window sizes for the next time they 
-        *  start your application, add configurer.setSaveAndRestore(true); to the 
-        *  initialize() method of WorkbenchAdvisor.
-        *  
-        *  IMPORTANT:
-        *  If you set configurer.setSaveAndRestore(true) and you are adding a new view 
-        *  to the perspective make sure you set it to false for at least one start. 
-        *  Otherwise the new view will not show.
-        *  
-        */
-       
-       public static final String ID = "eu.etaxonomy.taxeditor.perspective.freetextproperties";
-       
-       public void createInitialLayout(IPageLayout layout) {
-               String editorArea = layout.getEditorArea();
-               
-               // Note: plug-in org.eclipse.ui.ide necessary for 
-               //  IPageLayout.ID_PROBLEM_VIEW ("org.eclipse.ui.views.ProblemView") to run
-//             layout.addView(IPageLayout.ID_PROBLEM_VIEW, IPageLayout.BOTTOM, 0.8f, editorArea);              
-               
-               IFolderLayout folderLayoutLeft = layout.createFolder("leftfolder", IPageLayout.LEFT, 0.3f, editorArea);
-               
-               folderLayoutLeft.addView(TaxonomicTreeView.ID);
-               folderLayoutLeft.addView(SearchView.ID);
-               
-               IFolderLayout folderLayoutBottomLeft = layout.createFolder("bottomleftfolder", IPageLayout.BOTTOM, 0.75f, "leftfolder");
-               folderLayoutBottomLeft.addView(RecentNamesView.ID);
-//             folderLayoutBottomLeft.addView(FavoritesView.ID);
-               
-               IFolderLayout folderLayoutRight = layout.createFolder("rightfolder", IPageLayout.RIGHT, 0.5f, editorArea);              
-               folderLayoutRight.addView(IPageLayout.ID_PROP_SHEET);
-////           folderLayoutRight.addView(IPageLayout.ID_PROBLEM_VIEW);
-               
-               layout.getViewLayout(IPageLayout.ID_PROP_SHEET).setCloseable(false);
-               layout.getViewLayout(IPageLayout.ID_PROP_SHEET);
-               layout.getViewLayout(TaxonomicTreeView.ID).setCloseable(false);         
-               
-               layout.setFixed(false);
-               
-//             layout.createPlaceholderFolder(folderId, relationship, ratio, refId);
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ITaxEditorConstants.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/ITaxEditorConstants.java
deleted file mode 100644 (file)
index 831b7ac..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor;\r
-\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 20.05.2008\r
- * @version 1.0\r
- */\r
-public class ITaxEditorConstants {\r
-       \r
-       /* ***************************************************************************************\r
-                       ICONS\r
-       ************************************************************************************** */\r
-       public static final String EDIT_ICON = "edit_icon";\r
-       public static final String WARNING_ICON = "warning_icon";\r
-       public static final String BLACK_SQUARE_ICON = "black_square_icon";\r
-       public static final String HOMOTYPIC_SYN_ICON = "homotypic_syn_icon";\r
-       public static final String HOMOTYPIC_SYN_ORIGINAL_ICON = "homotypic_syn_original_icon";\r
-       public static final String HETEROTYPIC_SYN_ICON = "heterotypic_syn_icon";\r
-       public static final String HETEROTYPIC_SYN_ORIGINAL_ICON = "heterotypic_syn_original_icon";\r
-       public static final String MISAPPLIED_NAME_ICON = "misapplied_icon";\r
-       public static final String CONCEPT_ICON = "concept_icon";\r
-       public static final String AUTONYM_ICON = "autonym_icon";\r
-       public static final String BASIONYM_ICON = "basionym_icon";\r
-       public static final String ORTHOGRAPHIC_VARIANT_ICON = "orthographic_variants_icon";\r
-       public static final String DB_ICON = "db_icon";\r
-       public static final String MOVE_ICON = "move_icon";\r
-       public static final String ACTIVE_DELETE_ICON = "active_delete_icon";\r
-       public static final String SYNONYM_TO_TAXON_ICON = "synoynm_to_taxon_icon";\r
-       public static final String OPEN_TAXON_ICON = "open_taxon_icon";\r
-       public static final String ADD_CHILD_TAXON_ICON = "add_taxon_icon";\r
-       public static final String SWAP_SYNONYM_AND_TAXON_ICON = "swap_syn_and_tax_icon";\r
-       public static final String QUICK_ADD_ICON = "quick_add_icon";\r
-       public static final String TAXON_TO_SYNONYM_ICON = "tax_to_syn_icon";\r
-       public static final String ERROR_ANNOTATION_ICON = "error_annotation_icon";\r
-       public static final String EDIT_BITMAP_ICON = "edit_bitmap_icon";\r
-\r
-       /* ***************************************************************************************\r
-                       PREFERENCES\r
-        ************************************************************************************** */\r
-       public static final String CODE_PREFERENCE = "code";\r
-//     public static final NomenclaturalCode CODE_PREFERENCE_ICBN = NomenclaturalCode.ICBN();\r
-//     public static final NomenclaturalCode CODE_PREFERENCE_ICZN = NomenclaturalCode.ICZN();\r
-//     public static final NomenclaturalCode DEFAULT_CODE_PREFERENCE = CODE_PREFERENCE_ICZN;\r
-       public static final String CODE_PREFERENCE_ICBN = "ICBN";\r
-       public static final String CODE_PREFERENCE_ICZN = "ICZN";\r
-       public static final String DEFAULT_CODE_PREFERENCE = CODE_PREFERENCE_ICBN;\r
-       public static final String INITIALIZED = "initialized";\r
-       public static final String INITIALIZE_W_TESTDATA = "init_w_testdata";\r
-\r
-       /* ***************************************************************************************\r
-                       STRINGS\r
-        ************************************************************************************** */\r
-       public static final String MISAPPLIED_NAME = "misappliedname";\r
-       public static final String BASIONYM = "basionym";\r
-       public static final String SYNONYM = "synonym";\r
-       public static final String HOMOTYPIC_SYNONYM = "homotypic_synonym";\r
-       public static final String HETEROTYPIC_SYNONYM = "heterotypic_synonym";\r
-       public static final String NAMERELATION = "namerelation";\r
-       public static final String TAXON = "taxon";\r
-       public static final String HOMOTYPIC_GROUP = "homotypicgroup";\r
-       public static final String QUICK_NAME_TAXON = "quick_name_taxon";\r
-       public static final String PROPERTY_SHEET_CHANGE = "property_sheet_change";\r
-       public static final String REFRESH_NAMEVIEWER = "refresh_name_viewer";\r
-\r
-       /* ***************************************************************************************\r
-               FONTS\r
-       ************************************************************************************** */       \r
-       public static final String MENU_ITEM_ITALICS_FONT = "menu_item_italics_font";\r
-       public static final String ACCEPTED_TAXON_FONT = "accepted_taxon_font";\r
-       public static final String SYNONYM_FONT = "synonym_font";\r
-       public static final String MISAPPLIEDNAME_FONT = "misappliedname_font";\r
-       public static final String CONCEPT_FONT = "concept_font";\r
-       public static final String DATASOURCE_FONT = "datasource_font";\r
-       public static final String CHOOSE_NAME_TEXT_FONT = "choose_name_text_font";\r
-       public static final String DEFAULT_PROMPT_FONT = "default_prompt_font";\r
-\r
-       /* ***************************************************************************************\r
-               COLORS\r
-        ************************************************************************************** */\r
-       public static final String GROUP_GRAY_BKG_COLOR = "group_gray_background_color";\r
-       public static final String PROP_SHEET_RED = "property_sheet_red";\r
-       \r
-       /* ***************************************************************************************\r
-               PREFERENCES\r
-        ************************************************************************************** */\r
-       public static final String FEATURE_PREFERENCE = "feature_preference";\r
-       public static final String RANK_PREFERENCE = "rank_preference";\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/Messages.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/Messages.java
deleted file mode 100644 (file)
index 3d369b1..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-\r
-package eu.etaxonomy.taxeditor;\r
-\r
-import java.util.MissingResourceException;\r
-import java.util.ResourceBundle;\r
-import org.apache.log4j.Logger;\r
-\r
-public class Messages {\r
-       private static final Logger logger = Logger.getLogger(Messages.class);\r
-\r
-       private static final String BUNDLE_NAME = "eu.etaxonomy.taxeditor.messages"; //$NON-NLS-1$\r
-\r
-       private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle\r
-                       .getBundle(BUNDLE_NAME);\r
-\r
-       private Messages() {\r
-       }\r
-\r
-       public static String getString(String key) {\r
-               try {\r
-                       return RESOURCE_BUNDLE.getString(key);\r
-               } catch (MissingResourceException e) {\r
-                       return '!' + key + '!';\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/SideBySidePerspective.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/SideBySidePerspective.java
deleted file mode 100644 (file)
index e75c16c..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-package eu.etaxonomy.taxeditor;
-
-import org.eclipse.ui.IFolderLayout;
-import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPerspectiveFactory;
-
-import eu.etaxonomy.taxeditor.navigation.FavoritesView;
-import eu.etaxonomy.taxeditor.navigation.RecentNamesView;
-import eu.etaxonomy.taxeditor.navigation.SearchView;
-import eu.etaxonomy.taxeditor.navigation.TaxonomicTreeView;
-
-public class SideBySidePerspective implements IPerspectiveFactory {
-
-       /*
-        * To remember the user's layout and window sizes for the next time they 
-        *  start your application, add configurer.setSaveAndRestore(true); to the 
-        *  initialize() method of WorkbenchAdvisor.
-        */
-       
-       public static final String ID = "eu.etaxonomy.taxeditor.perspective.sidebyside";
-       
-       public void createInitialLayout(IPageLayout layout) {
-               String editorArea = layout.getEditorArea();
-               
-               // Note: plug-in org.eclipse.ui.ide necessary for 
-               //  IPageLayout.ID_PROBLEM_VIEW ("org.eclipse.ui.views.ProblemView") to run
-//             layout.addView(IPageLayout.ID_PROBLEM_VIEW, IPageLayout.BOTTOM, 0.8f, editorArea);              
-               
-               IFolderLayout folderLayoutLeft = layout.createFolder("leftfolder", IPageLayout.LEFT, 0.3f, editorArea);
-               folderLayoutLeft.addView(TaxonomicTreeView.ID);
-//             folderLayoutLeft.addView(SearchView.ID);
-               
-               IFolderLayout folderLayoutBottomLeft = layout.createFolder("bottomleftfolder", IPageLayout.BOTTOM, 0.75f, "leftfolder");
-               folderLayoutBottomLeft.addView(RecentNamesView.ID);
-//             folderLayoutBottomLeft.addView(FavoritesView.ID);
-               
-               layout.getViewLayout(TaxonomicTreeView.ID).setCloseable(false); 
-       }
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/TaxEditorPlugin.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/TaxEditorPlugin.java
deleted file mode 100644 (file)
index d68bfde..0000000
+++ /dev/null
@@ -1,407 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor;\r
-\r
-import java.net.URL;\r
-import java.util.HashMap;\r
-import java.util.Locale;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.runtime.FileLocator;\r
-import org.eclipse.core.runtime.IPath;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.MultiStatus;\r
-import org.eclipse.core.runtime.Path;\r
-import org.eclipse.core.runtime.Status;\r
-import org.eclipse.jface.dialogs.ErrorDialog;\r
-import org.eclipse.jface.resource.FontRegistry;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.jface.resource.ImageRegistry;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.graphics.FontData;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.ui.plugin.AbstractUIPlugin;\r
-import org.eclipse.ui.views.properties.PropertySheetPage;\r
-import org.osgi.framework.BundleContext;\r
-\r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-import eu.etaxonomy.cdm.database.DataSourceNotFoundException;\r
-import eu.etaxonomy.cdm.database.DbSchemaValidation;\r
-import eu.etaxonomy.cdm.database.ICdmDataSource;\r
-import eu.etaxonomy.cdm.model.common.init.TermNotFoundException;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.datasource.CdmDataSourceRepository;\r
-import eu.etaxonomy.taxeditor.datasource.CdmTransactionController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-/**\r
- * The class controlling the plug-in life cycle.\r
- * </p>\r
- * <ul>\r
- *     <li>Initializes datastore as necessary.</li>\r
- *     <li>Initializes CDM application controller.</li>\r
- *     <li>Initializes default preferences.</li>\r
- *     <li>Stores registries for colors, fonts, images.</li>\r
- * </ul>\r
- * \r
- * @author p.ciardelli\r
- * @created 15.05.2008\r
- * @version 1.0\r
- */\r
-public class TaxEditorPlugin extends AbstractUIPlugin {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxEditorPlugin.class);\r
-\r
-       /**\r
-        * The plug-in ID\r
-        */\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.plugin";\r
-       /**\r
-        * The shared instance\r
-        */\r
-       private static TaxEditorPlugin plugin;\r
-\r
-//     private DbSchemaValidation dbSchemaValidation = DbSchemaValidation.VALIDATE;\r
-       private DbSchemaValidation dbSchemaValidation = DbSchemaValidation.UPDATE;\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * \r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)\r
-        */\r
-       public void start(BundleContext context) throws Exception {\r
-               \r
-               super.start(context);\r
-               plugin = this;\r
-                               \r
-               // Check whether this is the first time the application has ever been run\r
-               checkInitialExecution();\r
-               \r
-               // Initialize application controller\r
-               initApplicationController();\r
-               \r
-               // Start a transaction\r
-               CdmTransactionController.startTransaction();\r
-               \r
-               // Forgot what this is ...\r
-               Locale locale = new Locale("en", "", "icbn");\r
-               Locale.setDefault(locale);\r
-       }\r
-\r
-       \r
-       /*\r
-        * (non-Javadoc)\r
-        * \r
-        * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)\r
-        */\r
-       public void stop(BundleContext context) throws Exception {\r
-               CdmTransactionController.commitTransaction();\r
-               plugin = null;\r
-               super.stop(context);\r
-               \r
-               disposeColors();\r
-       }\r
-       \r
-       /**\r
-        * Returns the shared instance\r
-        * \r
-        * @return the shared instance\r
-        */\r
-       public static TaxEditorPlugin getDefault() {\r
-               return plugin;\r
-       }\r
-\r
-       private void checkInitialExecution() {\r
-               \r
-               // Check in the prefs store whether the application (i.e. its default\r
-               //      data source) has been initialized\r
-               boolean initialized = false;\r
-               if (getPreferenceStore().contains(ITaxEditorConstants.INITIALIZED)) {\r
-                       initialized = getPreferenceStore().getBoolean(\r
-                                       ITaxEditorConstants.INITIALIZED);\r
-               }\r
-       \r
-               // If not ...\r
-               if (!initialized) {\r
-                       \r
-                       // ... set validation to CREATE\r
-                       logger.warn("Initializing datastore");\r
-                       dbSchemaValidation = DbSchemaValidation.CREATE;\r
-                       \r
-                       // ... and note in prefs that application has been initialized\r
-                       getPreferenceStore().setValue(ITaxEditorConstants.INITIALIZED, true);\r
-               }\r
-       }\r
-       \r
-       /***************************************************************************\r
-        * CDM SERVICES\r
-        **************************************************************************/\r
-\r
-       /**\r
-        * All CDM services are called via the application controller\r
-        */\r
-       private CdmApplicationController applicationController;\r
-\r
-       private CdmApplicationController initApplicationController() {\r
-               \r
-               // Get the "current" - i.e. most recently used - data source\r
-               ICdmDataSource cdmDatasource = CdmDataSourceRepository.getDefault().\r
-                               getCurrentDataSource();\r
-               \r
-               // Initialize the controller with the data source\r
-               try {\r
-                       applicationController = CdmApplicationController.NewInstance(cdmDatasource, dbSchemaValidation);\r
-               } catch (DataSourceNotFoundException e) {\r
-                       // TODO user-friendly failure here\r
-                       e.printStackTrace();\r
-               } catch (TermNotFoundException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-               \r
-               // Set application controller for objects that use it \r
-               CdmTransactionController.setApplicationController(applicationController);\r
-               CdmDataSourceRepository.getDefault().setCdmApplicationController(applicationController);\r
-               CdmSessionDataRepository.getDefault().setApplicationController(applicationController);\r
-               \r
-//             // Terms have to be initialized explicitly as of now\r
-//             logger.warn("MAC Workaround enabled!!");\r
-//             DefaultTermInitializer vocabularyStore = new DefaultTermInitializer();\r
-//             vocabularyStore.initialize();\r
-               \r
-               return applicationController;\r
-       }\r
-       \r
-       public CdmApplicationController getApplicationController() {\r
-               if (applicationController == null) {\r
-                       throw new IllegalStateException("CdmApplicationController not yet set.");\r
-               }\r
-               return applicationController;\r
-       }\r
-\r
-       /***************************************************************************\r
-        * IMAGE REGISTRY\r
-        **************************************************************************/\r
-       public ImageDescriptor getImageDescriptor(String key) {\r
-               return getImageRegistry().getDescriptor(key);\r
-       }\r
-\r
-       public Image getImage(String key) {\r
-               return getImageRegistry().get(key);\r
-       }\r
-\r
-       /**\r
-        * Gets an image for the given URL. Adds the image to the registry as needed.\r
-        * \r
-        * @param url\r
-        * @return\r
-        */\r
-       public Image getImage(URL url) {                \r
-               \r
-               String key = url.toString();\r
-               ImageRegistry registry = getImageRegistry();\r
-\r
-               Image image = registry.get(key);\r
-               \r
-               if (image == null) {\r
-                       ImageDescriptor desc = ImageDescriptor.createFromURL(url);\r
-                       \r
-//                     logger.warn(ImageDescriptor.getMissingImageDescriptor().getClass());\r
-//                     logger.warn(desc.getClass());\r
-//                     \r
-//                     if (ImageDescriptor.getMissingImageDescriptor().equals(desc)) {\r
-//                             logger.warn("img not found");\r
-//                     }\r
-                       \r
-                       registry.put(key, desc);\r
-                       try {\r
-                               image = registry.get(key);\r
-                       } catch (Exception e) {\r
-                               // TODO Auto-generated catch block\r
-                               e.printStackTrace();\r
-                       }\r
-               }\r
-               \r
-               return image;\r
-       }\r
-       \r
-       protected void initializeImageRegistry(ImageRegistry registry) {\r
-               registerImage(registry, ITaxEditorConstants.EDIT_ICON, "edit_16x16.ico");\r
-               registerImage(registry, ITaxEditorConstants.WARNING_ICON,\r
-                               "warn_tsk.gif");\r
-               registerImage(registry, ITaxEditorConstants.BLACK_SQUARE_ICON,\r
-                               "accepted_small.gif");\r
-               registerImage(registry, ITaxEditorConstants.HOMOTYPIC_SYN_ICON,\r
-                               "homosyn_no_bg.gif");\r
-               registerImage(registry,\r
-                               ITaxEditorConstants.HOMOTYPIC_SYN_ORIGINAL_ICON,\r
-                               "homosyn_original_no_bg.gif");\r
-               registerImage(registry, ITaxEditorConstants.HETEROTYPIC_SYN_ICON,\r
-                               "heterosyn_no_bg.gif");\r
-               registerImage(registry,\r
-                               ITaxEditorConstants.HETEROTYPIC_SYN_ORIGINAL_ICON,\r
-                               "heterosyn_original_no_bg.gif");\r
-               registerImage(registry, ITaxEditorConstants.MISAPPLIED_NAME_ICON,\r
-                               "misapplied_no_bg.gif");\r
-               registerImage(registry, ITaxEditorConstants.CONCEPT_ICON,\r
-                               "concept_no_bg.gif");\r
-               registerImage(registry, ITaxEditorConstants.AUTONYM_ICON,\r
-                               "autonym_no_bg.gif");\r
-               registerImage(registry, ITaxEditorConstants.BASIONYM_ICON,\r
-                               "basionym_no_bg.gif");\r
-               registerImage(registry, ITaxEditorConstants.ORTHOGRAPHIC_VARIANT_ICON,\r
-                               "orthovariant_no_bg.gif");\r
-               registerImage(registry, ITaxEditorConstants.DB_ICON, "db.gif");\r
-               registerImage(registry, ITaxEditorConstants.MOVE_ICON,\r
-                               "correction_change.gif");\r
-               registerImage(registry, ITaxEditorConstants.ACTIVE_DELETE_ICON,\r
-                               "delete_edit.gif");\r
-               registerImage(registry, ITaxEditorConstants.SYNONYM_TO_TAXON_ICON,\r
-                               "change.gif");\r
-               registerImage(registry, ITaxEditorConstants.OPEN_TAXON_ICON, "open.gif");\r
-               registerImage(registry, ITaxEditorConstants.ADD_CHILD_TAXON_ICON,\r
-                               "new_child.gif");\r
-               registerImage(registry,\r
-                               ITaxEditorConstants.SWAP_SYNONYM_AND_TAXON_ICON, "swap2.gif");\r
-               registerImage(registry, ITaxEditorConstants.QUICK_ADD_ICON,\r
-                               "quick_add.gif");\r
-               registerImage(registry, ITaxEditorConstants.TAXON_TO_SYNONYM_ICON,\r
-                               "tax_to_syn.gif");\r
-               registerImage(registry, ITaxEditorConstants.ERROR_ANNOTATION_ICON,\r
-                               "error_co.gif");\r
-               registerImage(registry, ITaxEditorConstants.EDIT_BITMAP_ICON,\r
-                               "256color_16x16.bmp");\r
-       }\r
-\r
-       private void registerImage(ImageRegistry registry, String key,\r
-                       String fileName) {\r
-               try {\r
-                       IPath path = new Path("icons/" + fileName); //$NON-NLS-1$\r
-                       URL url = FileLocator.find(getBundle(), path, null);\r
-                       if (url != null) {\r
-                               ImageDescriptor desc = ImageDescriptor.createFromURL(url);\r
-                               registry.put(key, desc);\r
-                       }\r
-               } catch (Exception e) {\r
-               }\r
-       }\r
-       \r
-\r
-       /***************************************************************************\r
-        * FONT REGISTRY\r
-        **************************************************************************/\r
-       private FontRegistry fontRegistry;\r
-\r
-       private FontRegistry getFontRegistry() {\r
-               if (fontRegistry == null) {\r
-                       fontRegistry = new FontRegistry(Display.getCurrent());\r
-\r
-                       fontRegistry.put(ITaxEditorConstants.DATASOURCE_FONT,\r
-                                       new FontData[] { new FontData("Arial", 8, SWT.NONE) });\r
-                       fontRegistry.put(ITaxEditorConstants.MENU_ITEM_ITALICS_FONT,\r
-                                       new FontData[] { new FontData("Arial", 9, SWT.ITALIC) });\r
-                       fontRegistry.put(ITaxEditorConstants.ACCEPTED_TAXON_FONT,\r
-                                       new FontData[] { new FontData("Georgia", 12, SWT.NONE) });\r
-                       fontRegistry.put(ITaxEditorConstants.SYNONYM_FONT,\r
-                                       new FontData[] { new FontData("Georgia", 10, SWT.NONE) });\r
-                       fontRegistry.put(ITaxEditorConstants.MISAPPLIEDNAME_FONT,\r
-                                       new FontData[] { new FontData("Georgia", 10, SWT.NONE) });\r
-                       fontRegistry.put(ITaxEditorConstants.CONCEPT_FONT,\r
-                                       new FontData[] { new FontData("Georgia", 10, SWT.NONE) });\r
-                       fontRegistry.put(ITaxEditorConstants.CHOOSE_NAME_TEXT_FONT,\r
-                                       new FontData[] { new FontData("Arial", 12, SWT.BOLD) });\r
-                       fontRegistry.put(ITaxEditorConstants.DEFAULT_PROMPT_FONT,\r
-                                       new FontData[] { new FontData("Georgia", 10, SWT.ITALIC) });                    \r
-               }\r
-               return fontRegistry;\r
-       }\r
-\r
-       public Font getFont(String key) {\r
-               return getFontRegistry().get(key);\r
-       }\r
-\r
-       /**\r
-        * @param font\r
-        */\r
-       public Font italicizeFont(Font font) {\r
-               FontData fontData = font.getFontData()[0];\r
-               fontData.setStyle(fontData.getStyle() | SWT.ITALIC);\r
-               Font italFont = new Font(Display.getDefault(), fontData);\r
-               \r
-               int i = 0;\r
-               String fontName = "italic";\r
-               Set keySet = fontRegistry.getKeySet();\r
-               while (keySet.contains(fontName + i)) {\r
-                       i++;\r
-               }\r
-               fontRegistry.put(fontName + i, italFont.getFontData());\r
-               \r
-               return italFont;\r
-       }\r
-\r
-       /***************************************************************************\r
-        * COLOR MAP\r
-        **************************************************************************/\r
-       private static HashMap<String, Color> colorRegistry;\r
-       \r
-       public Color getColor(String key) {\r
-               return getColorRegistry().get(key);\r
-       }\r
-       \r
-       private HashMap<String, Color> getColorRegistry() {\r
-               if (colorRegistry == null) {\r
-                        colorRegistry = new HashMap<String, Color>();\r
-                        \r
-                        colorRegistry.put(ITaxEditorConstants.GROUP_GRAY_BKG_COLOR,\r
-                                        new Color(null, 240, 240, 240));\r
-                        colorRegistry.put(ITaxEditorConstants.PROP_SHEET_RED,\r
-                                        new Color(null, 255, 0, 0));                    \r
-               }\r
-               return colorRegistry;\r
-       }\r
-       \r
-       private void disposeColors() {\r
-               if (colorRegistry == null) {\r
-                       return;\r
-               }\r
-        for (Color color : colorRegistry.values()) {\r
-               color.dispose();\r
-        }\r
-        colorRegistry.clear();\r
-       }\r
-\r
-       /***************************************************************************\r
-        * PROPERTY SHEET\r
-        **************************************************************************/\r
-       \r
-       private Tree propertySheetTree;\r
-       \r
-       public void setPropertySheetTree(Tree tree) {\r
-               this.propertySheetTree = tree;\r
-       }\r
-       \r
-       public Tree getPropertySheetTree() {\r
-               return propertySheetTree;\r
-       }\r
-\r
-       private PropertySheetPage propertySheetPage;\r
-       \r
-       public void setPropertySheetPage(PropertySheetPage page) {\r
-               this.propertySheetPage = page;\r
-       }\r
-       \r
-       public PropertySheetPage getPropertySheetPage() {\r
-               return propertySheetPage;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/NameTransfer.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/NameTransfer.java
deleted file mode 100644 (file)
index d190f95..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-package eu.etaxonomy.taxeditor.actions;\r
-\r
-import org.eclipse.swt.dnd.ByteArrayTransfer;\r
-import org.eclipse.swt.dnd.TransferData;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-\r
-/**\r
- * For drag and drop - a drag widget with this transfer type can only be dropped onto\r
- *  a drop widget with the same type.\r
- *    \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameTransfer extends ByteArrayTransfer {\r
-\r
-       private static final String TYPENAME = "name_type";\r
-       private static final int NAMETYPEID = registerType (TYPENAME);          \r
-       private static final NameTransfer INSTANCE = new NameTransfer();\r
-       \r
-       /*\r
-        * The object associated with this transfer event\r
-        */\r
-       private TaxonNameBase name;\r
-               \r
-       /*\r
-        * Returns the singleton\r
-        */\r
-       public static NameTransfer getInstance() {\r
-               return INSTANCE;\r
-       }\r
-       /*\r
-        * Set transfer data for local use\r
-        */\r
-       public void setName(TaxonNameBase name) {\r
-               this.name = name;\r
-       }\r
-       /*\r
-        * Returns the local transfer data\r
-        */\r
-       public TaxonNameBase getName() {\r
-               return name;\r
-       }\r
-       \r
-       /* \r
-        * The type ID is used to identify this transfer\r
-        */\r
-       @Override\r
-       protected int[] getTypeIds() {\r
-               return new int[] { NAMETYPEID };\r
-       }\r
-\r
-       @Override\r
-       protected String[] getTypeNames() {\r
-               return new String[] { TYPENAME } ;\r
-       }\r
-\r
-       @Override\r
-       protected void javaToNative(Object object, TransferData transferData) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See nativeToJava below\r
-               byte[] check = TYPENAME.getBytes();\r
-               super.javaToNative(check, transferData);\r
-       }\r
-\r
-       @Override\r
-       protected Object nativeToJava(TransferData transferData) {\r
-               Object result = super.nativeToJava(transferData);\r
-               if (isInvalidNativeType(result)) {\r
-                       throw new RuntimeException(); //$NON-NLS-1$\r
-               }\r
-               return name;\r
-       }\r
-       \r
-       private boolean isInvalidNativeType(Object result) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See javaToNative above\r
-               return !(result instanceof byte[])\r
-                               || !TYPENAME.equals(new String((byte[]) result));\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/SaveAllAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/SaveAllAction.java
deleted file mode 100644 (file)
index ed76c61..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-/**
- * Copyright (C) 2007 EDIT
- * 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.
- */
-
-package eu.etaxonomy.taxeditor.actions;
-
-import org.apache.log4j.Logger;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkbenchWindowActionDelegate;
-
-import eu.etaxonomy.cdm.model.taxon.Taxon;
-import eu.etaxonomy.taxeditor.actions.cdm.SaveTaxonAction;
-import eu.etaxonomy.taxeditor.controller.EditorController;
-import eu.etaxonomy.taxeditor.datasource.CdmTransactionController;
-import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;
-import eu.etaxonomy.taxeditor.model.CdmUtil;
-
-/**
- * Calls <code>MultiPageTaxonEditor.doSave()</code> method for all
- * open <code>MultiPageTaxonEditor</code>s. Commits universal transaction,
- * then opens a new one.
- * 
- * @see IWorkbenchWindowActionDelegate
- * 
- * @author p.ciardelli
- * @created 07.10.2008
- * @version 1.0
- */
-public class SaveAllAction implements IWorkbenchWindowActionDelegate {
-       private static final Logger logger = Logger.getLogger(SaveAllAction.class);
-
-       private IWorkbenchWindow window;
-       /**
-        * The constructor.
-        */
-       public SaveAllAction() {
-       }
-
-       /**
-        * The action has been activated. The argument of the
-        * method represents the 'real' action sitting
-        * in the workbench UI.
-        * @see IWorkbenchWindowActionDelegate#run
-        */
-       public void run(IAction action) {
-
-               EditorController.setSaving(true);
-               
-               // Get all open windows
-               for (IEditorPart taxonEditor : EditorController.getOpenEditors()) {
-
-                       // Save the dirty ones
-                       if (taxonEditor.isDirty()) {
-                               IEditorInput input = taxonEditor.getEditorInput();
-                               if (input.getAdapter(Taxon.class) != null) {
-                                       Taxon taxon = (Taxon) input.getAdapter(Taxon.class);
-                                       new SaveTaxonAction(taxon).run();
-                                       if (taxonEditor instanceof MultiPageTaxonEditor) {
-                                               ((MultiPageTaxonEditor) taxonEditor).setDirtyExtern(false);
-                                       }
-                               }
-                       }
-               }
-
-               // Commit the transaction       
-               CdmTransactionController.commitTransaction();
-       
-               // Force library objects to be associated with new transaction
-               CdmSessionDataRepository.getDefault().clearNonTaxonData();
-               
-               // Start a new transaction
-               CdmTransactionController.startTransaction();
-               
-               // Put all open taxa in the new transaction
-               CdmTransactionController.addSessionTaxaToTransaction();
-               
-               EditorController.setSaving(false);
-               // TODO: delete undoHistory
-       }
-
-       /**
-        * Selection in the workbench has been changed. We 
-        * can change the state of the 'real' action here
-        * if we want, but this can only happen after 
-        * the delegate has been created.
-        * @see IWorkbenchWindowActionDelegate#selectionChanged
-        */
-       public void selectionChanged(IAction action, ISelection selection) {
-       }
-
-       /**
-        * We can use this method to dispose of any system
-        * resources we previously allocated.
-        * @see IWorkbenchWindowActionDelegate#dispose
-        */
-       public void dispose() {
-       }
-
-       /**
-        * We will cache window object in order to
-        * be able to provide parent shell for the message dialog.
-        * @see IWorkbenchWindowActionDelegate#init
-        */
-       public void init(IWorkbenchWindow window) {
-               this.window = window;
-       }
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/SynonymRelationshipTransfer.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/SynonymRelationshipTransfer.java
deleted file mode 100644 (file)
index 87a0ac9..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-package eu.etaxonomy.taxeditor.actions;\r
-\r
-import org.eclipse.swt.dnd.ByteArrayTransfer;\r
-import org.eclipse.swt.dnd.TransferData;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-\r
-/**\r
- * For drag and drop - a drag widget with this transfer type \r
- *  can only be dropped onto a drop widget with the same type.\r
- *    \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class SynonymRelationshipTransfer extends ByteArrayTransfer {\r
-\r
-       private static final String RELATIONTYPENAME = "relation_type";\r
-       private static final int RELATIONTYPEID = registerType (RELATIONTYPENAME);              \r
-       private static final SynonymRelationshipTransfer INSTANCE = new SynonymRelationshipTransfer();\r
-       \r
-       /*\r
-        * The object associated with this transfer event\r
-        */\r
-       private SynonymRelationship synonymRelationship;\r
-               \r
-       /*\r
-        * Returns the singleton\r
-        */\r
-       public static SynonymRelationshipTransfer getInstance() {\r
-               return INSTANCE;\r
-       }\r
-       /*\r
-        * Set transfer data for local use\r
-        */\r
-       public void setSynonymRelationship(SynonymRelationship synonymRelationship) {\r
-               this.synonymRelationship = synonymRelationship;\r
-       }\r
-       /*\r
-        * Returns the local transfer data\r
-        */\r
-       public SynonymRelationship getSynonymRelationship() {\r
-               return synonymRelationship;\r
-       }\r
-       \r
-       /* \r
-        * The type ID is used to identify this transfer\r
-        */\r
-       @Override\r
-       protected int[] getTypeIds() {\r
-               return new int[] { RELATIONTYPEID };\r
-       }\r
-\r
-       @Override\r
-       protected String[] getTypeNames() {\r
-               return new String[] { RELATIONTYPENAME } ;\r
-       }\r
-\r
-       @Override\r
-       protected void javaToNative(Object object, TransferData transferData) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See nativeToJava below\r
-               byte[] check = RELATIONTYPENAME.getBytes();\r
-               super.javaToNative(check, transferData);\r
-       }\r
-\r
-       @Override\r
-       protected Object nativeToJava(TransferData transferData) {\r
-               Object result = super.nativeToJava(transferData);\r
-               if (isInvalidNativeType(result)) {\r
-                       throw new RuntimeException(); //$NON-NLS-1$\r
-               }\r
-               return synonymRelationship;\r
-       }\r
-       \r
-       private boolean isInvalidNativeType(Object result) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See javaToNative above\r
-               return !(result instanceof byte[])\r
-                               || !RELATIONTYPENAME.equals(new String((byte[]) result));\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/TaxEditorActionFactory.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/TaxEditorActionFactory.java
deleted file mode 100644 (file)
index b2d9ec8..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.IWorkbenchWindow;\r
-import org.eclipse.ui.actions.ActionFactory;\r
-import org.eclipse.ui.actions.NewWizardAction;\r
-import org.eclipse.ui.actions.ActionFactory.IWorkbenchAction;\r
-\r
-import eu.etaxonomy.taxeditor.actions.ui.OpenTaxonEditorAction;\r
-\r
-/**\r
- * This class is an extension to the standard ActionFactory. Any useful\r
- * functionality already implemented in ActionFactory may be used or \r
- * overwritten by more suitable implementations.\r
- * \r
- * @author n.hoffmann\r
- * @created 03.02.2009\r
- * @version 1.0\r
- */\r
-public abstract class TaxEditorActionFactory extends ActionFactory {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxEditorActionFactory.class);\r
-       \r
-    /**\r
-     * Workbench action (id "new"): Opens the new wizard dialog. This action maintains\r
-     * its enablement state.\r
-     */\r
-    public static final ActionFactory NEW = new ActionFactory("new") {//$NON-NLS-1$\r
-        \r
-        /* (non-Javadoc)\r
-         * @see org.eclipse.ui.actions.ActionFactory#create(org.eclipse.ui.IWorkbenchWindow)\r
-         */\r
-        public IWorkbenchAction create(IWorkbenchWindow window) {\r
-            if (window == null) {\r
-                throw new IllegalArgumentException();\r
-            }\r
-            IWorkbenchAction action = new OpenTaxonEditorAction();\r
-            action.setId(getId());\r
-            return action;\r
-        }\r
-    };\r
-       \r
-    /**\r
-     * Creates a new workbench action factory with the given id.\r
-     * \r
-     * @param actionId\r
-     *            the id of actions created by this action factory\r
-     */\r
-    protected TaxEditorActionFactory(String actionId) {\r
-        super(actionId);\r
-    }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/TaxonTransfer.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/TaxonTransfer.java
deleted file mode 100644 (file)
index ee3f2f9..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-package eu.etaxonomy.taxeditor.actions;\r
-\r
-import org.eclipse.swt.dnd.ByteArrayTransfer;\r
-import org.eclipse.swt.dnd.TransferData;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-\r
-/**\r
- * For drag and drop - a drag widget with this transfer type can only be dropped onto\r
- *  a drop widget with the same type.\r
- *    \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class TaxonTransfer extends ByteArrayTransfer {\r
-\r
-       private static final String TAXONTYPENAME = "taxon_type";\r
-       private static final int TAXONTYPEID = registerType (TAXONTYPENAME);            \r
-       private static final TaxonTransfer INSTANCE = new TaxonTransfer();\r
-       \r
-       /*\r
-        * The object associated with this transfer event\r
-        */\r
-       private TaxonBase taxonBase;\r
-               \r
-       /*\r
-        * Returns the singleton\r
-        */\r
-       public static TaxonTransfer getInstance() {\r
-               return INSTANCE;\r
-       }\r
-       /*\r
-        * Set transfer data for local use\r
-        */\r
-       public void setTaxon(TaxonBase taxon) {\r
-               this.taxonBase = taxon;\r
-       }\r
-       /*\r
-        * Returns the local transfer data\r
-        */\r
-       public TaxonBase getTaxon() {\r
-               return taxonBase;\r
-       }\r
-       \r
-       /* \r
-        * The type ID is used to identify this transfer\r
-        */\r
-       @Override\r
-       protected int[] getTypeIds() {\r
-               return new int[] { TAXONTYPEID };\r
-       }\r
-\r
-       @Override\r
-       protected String[] getTypeNames() {\r
-               return new String[] { TAXONTYPENAME } ;\r
-       }\r
-\r
-       @Override\r
-       protected void javaToNative(Object object, TransferData transferData) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See nativeToJava below\r
-               byte[] check = TAXONTYPENAME.getBytes();\r
-               super.javaToNative(check, transferData);\r
-       }\r
-\r
-       @Override\r
-       protected Object nativeToJava(TransferData transferData) {\r
-               Object result = super.nativeToJava(transferData);\r
-               if (isInvalidNativeType(result)) {\r
-                       throw new RuntimeException(); //$NON-NLS-1$\r
-               }\r
-               return taxonBase;\r
-       }\r
-       \r
-       private boolean isInvalidNativeType(Object result) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See javaToNative above\r
-               return !(result instanceof byte[])\r
-                               || !TAXONTYPENAME.equals(new String((byte[]) result));\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/UndoableAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/UndoableAction.java
deleted file mode 100644 (file)
index 0940553..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.AbstractOperation;\r
-import org.eclipse.core.commands.operations.IOperationHistory;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 09.06.2008\r
- * @version 1.0\r
- */\r
-public abstract class UndoableAction extends Action {\r
-       private static final Logger logger = Logger.getLogger(UndoableAction.class);\r
-       \r
-       protected IUndoableOperation operation;\r
-       private String text;\r
-       \r
-       protected UndoableAction(String text, ImageDescriptor image) {\r
-               super(text);\r
-               setImageDescriptor(image);\r
-               this.text = text;\r
-               \r
-               operation = new UndoableOperation();\r
-       }\r
-       \r
-       \r
-       public void run() {     \r
-               IOperationHistory operationHistory = GlobalController.getOperationHistory();\r
-               IUndoContext undoContext = GlobalController.getWorkbenchUndoContext();\r
-               operation.addContext(undoContext);\r
-               try {\r
-                       operationHistory.execute(operation, null, null);\r
-                       operationHistory.add(operation);\r
-               } catch (ExecutionException e) {\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-       \r
-       protected abstract IStatus executeOperation();\r
-       protected abstract IStatus redoOperation();\r
-       protected abstract IStatus undoOperation();\r
-       \r
-       class UndoableOperation extends AbstractOperation {\r
-\r
-               public UndoableOperation() {\r
-                       super("'" + text + "'");\r
-               }\r
-\r
-               @Override\r
-               public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                               throws ExecutionException {\r
-                       return executeOperation();\r
-               }\r
-\r
-               @Override\r
-               public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                               throws ExecutionException {\r
-                       return redoOperation();\r
-               }\r
-\r
-               @Override\r
-               public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                               throws ExecutionException {\r
-                       return undoOperation();\r
-               }\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/WidgetTransfer.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/WidgetTransfer.java
deleted file mode 100644 (file)
index f03ce70..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-package eu.etaxonomy.taxeditor.actions;\r
-\r
-import org.eclipse.swt.dnd.ByteArrayTransfer;\r
-import org.eclipse.swt.dnd.TransferData;\r
-import org.eclipse.swt.widgets.Widget;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-\r
-/**\r
- * For drag and drop - a drag widget with this transfer type can only be dropped onto\r
- *  a drop widget with the same type.\r
- *    \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class WidgetTransfer extends ByteArrayTransfer {\r
-\r
-       private static final String WIDGETTYPENAME = "widget_type";\r
-       private static final int WIDGETTYPEID = registerType (WIDGETTYPENAME);          \r
-       private static final WidgetTransfer INSTANCE = new WidgetTransfer();\r
-       \r
-       /*\r
-        * The object associated with this transfer event\r
-        */\r
-       private Widget widget;\r
-               \r
-       /*\r
-        * Returns the singleton\r
-        */\r
-       public static WidgetTransfer getInstance() {\r
-               return INSTANCE;\r
-       }\r
-       /*\r
-        * Set transfer data for local use\r
-        */\r
-       public void setWidget(Widget widget) {\r
-               this.widget = widget;\r
-       }\r
-       /*\r
-        * Returns the local transfer data\r
-        */\r
-       public Widget getWidget() {\r
-               return widget;\r
-       }\r
-       \r
-       /* \r
-        * The type ID is used to identify this transfer\r
-        */\r
-       @Override\r
-       protected int[] getTypeIds() {\r
-               return new int[] { WIDGETTYPEID };\r
-       }\r
-\r
-       @Override\r
-       protected String[] getTypeNames() {\r
-               return new String[] { WIDGETTYPENAME } ;\r
-       }\r
-\r
-       @Override\r
-       protected void javaToNative(Object object, TransferData transferData) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See nativeToJava below\r
-               byte[] check = WIDGETTYPENAME.getBytes();\r
-               super.javaToNative(check, transferData);\r
-       }\r
-\r
-       @Override\r
-       protected Object nativeToJava(TransferData transferData) {\r
-               Object result = super.nativeToJava(transferData);\r
-               if (isInvalidNativeType(result)) {\r
-                       throw new RuntimeException(); //$NON-NLS-1$\r
-               }\r
-               return widget;\r
-       }\r
-       \r
-       private boolean isInvalidNativeType(Object result) {\r
-               // No encoding needed since this is a hardcoded string read and written\r
-               // in the same process.\r
-               // See javaToNative above\r
-               return !(result instanceof byte[])\r
-                               || !WIDGETTYPENAME.equals(new String((byte[]) result));\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/CreateNameRelationAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/CreateNameRelationAction.java
deleted file mode 100644 (file)
index b8a47e4..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.actions.cdm;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 05.06.2008\r
- * @version 1.0\r
- */\r
-public class CreateNameRelationAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateNameRelationAction.class);\r
-\r
-       private TaxonNameBase fromName;\r
-       private NameRelationshipType type;\r
-       private TaxonNameBase toName;\r
-\r
-       public CreateNameRelationAction(TaxonNameBase fromName,\r
-                       NameRelationshipType type, TaxonNameBase toName) {\r
-               this.fromName = fromName;\r
-               this.type = type;\r
-               this.toName = toName;\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-               toName.addRelationshipFromName(fromName, type, null);\r
-               logger.warn("firing property change");\r
-               firePropertyChange(ITaxEditorConstants.NAMERELATION, "old", "new");\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/DeleteNameRelationAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/DeleteNameRelationAction.java
deleted file mode 100644 (file)
index 10292f6..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.cdm;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameRelationship;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 06.06.2008\r
- * @version 1.0\r
- */\r
-public class DeleteNameRelationAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DeleteNameRelationAction.class);\r
-\r
-       private TaxonNameBase name;\r
-       private NameRelationship relation;\r
-       \r
-       public DeleteNameRelationAction(TaxonNameBase name, NameRelationship relation) {\r
-               this.name = name;\r
-               this.relation = relation;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               name.removeNameRelationship(relation);\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/DeleteTaxonAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/DeleteTaxonAction.java
deleted file mode 100644 (file)
index e61c0e0..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.actions.cdm;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 14.05.2008\r
- * @version 1.0\r
- */\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IOperationHistory;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.DeleteTaxonOperation;\r
-\r
-/**\r
- * Delete this taxon from the CDM\r
- * \r
- * @author p.ciardelli\r
- * \r
- * @deprecated\r
- */\r
-public class DeleteTaxonAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DeleteTaxonAction.class);\r
-\r
-       private static String text = "Delete taxon from tree";\r
-       private ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageDescriptor(ITaxEditorConstants.ACTIVE_DELETE_ICON);\r
-\r
-       private IUndoContext undoContext;\r
-       \r
-       Taxon taxon;\r
-\r
-       public DeleteTaxonAction() {\r
-               super(text);\r
-               setImageDescriptor(image);\r
-               \r
-               undoContext = GlobalController.getWorkbenchUndoContext();\r
-       }\r
-\r
-       @Deprecated\r
-       public DeleteTaxonAction(Taxon taxon) {\r
-               this();\r
-\r
-               this.taxon = taxon;\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-               IUndoableOperation operation = new DeleteTaxonOperation\r
-                               (this.getText(), undoContext, taxon);\r
-\r
-               GlobalController.executeOperation(operation);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/MoveTaxonAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/MoveTaxonAction.java
deleted file mode 100644 (file)
index d3d85c4..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.cdm;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.viewers.ISelection;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.navigation.TaxonomicTreeViewer;\r
-\r
-/**\r
- * Moves taxon in the taxonomic tree by assigning it a new parent\r
- *  and triggering observable tree list update\r
- * \r
- * @author p.ciardelli\r
- * @created 06.05.2008\r
- * @version 1.0\r
- */\r
-public class MoveTaxonAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(MoveTaxonAction.class);\r
-\r
-       Taxon taxon;\r
-       Taxon newParentTaxon;\r
-       Taxon oldParentTaxon;\r
-       \r
-       public MoveTaxonAction(Taxon taxon, Taxon newParentTaxon) {\r
-               \r
-               this.taxon = taxon;\r
-               this.newParentTaxon = newParentTaxon;\r
-               \r
-               // Save old parent taxon for undo\r
-               this.oldParentTaxon = taxon.getTaxonomicParent();\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               CdmSessionDataRepository.getDefault().\r
-                               setTaxonomicParent(taxon, newParentTaxon);              \r
-               new SaveTaxonAction(taxon).run();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/SaveTaxonAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/SaveTaxonAction.java
deleted file mode 100644 (file)
index 7e22555..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-package eu.etaxonomy.taxeditor.actions.cdm;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * Commit any changes to this taxon to the CDM\r
- * \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class SaveTaxonAction extends Action {\r
-       private static final Logger logger = Logger.getLogger(SaveTaxonAction.class);\r
-       \r
-       private Taxon taxon;\r
-       \r
-       public SaveTaxonAction(Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               \r
-               // Save the taxon to the CDM\r
-               CdmSessionDataRepository.getDefault().saveTaxon(taxon);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/SwapSynonymAndTaxonAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/cdm/SwapSynonymAndTaxonAction.java
deleted file mode 100644 (file)
index b1d2a53..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.cdm;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.ui.IEditorPart;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 09.06.2008\r
- * @version 1.0\r
- */\r
-public class SwapSynonymAndTaxonAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(SwapSynonymAndTaxonAction.class);\r
-       \r
-       private static String text = "Make synonym accepted name for this taxon";\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageDescriptor(ITaxEditorConstants.SYNONYM_TO_TAXON_ICON);\r
-\r
-       private Synonym synonym;\r
-       private Taxon taxon;\r
-\r
-       public SwapSynonymAndTaxonAction(){\r
-               super(text, image);\r
-       }\r
-       \r
-       public SwapSynonymAndTaxonAction(Taxon taxon, Synonym synonym) {\r
-               this();\r
-               this.synonym = synonym;\r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               \r
-               // TODO: Call a taxon service method similar to makeTaxonSynonym()\r
-               // instead of implementing the logic here\r
-               \r
-               try {\r
-                       IEditorPart oldEditor = EditorController.getEditorByTaxon(taxon);\r
-                       if (oldEditor.isDirty()) {\r
-                               if (!MessageDialog.openConfirm(GlobalController.getShell(), "Save before proceeding", \r
-                                               "All changes must be saved before proceeding with this action.\n\n" +\r
-                                               "Press \"OK\" to save and continue, or \"Cancel\" to cancel this action.")) {\r
-                                       return;\r
-                               }\r
-                               oldEditor.doSave(null);\r
-                       }\r
-               } catch (PartInitException e) {\r
-                       e.printStackTrace();\r
-                       MessageDialog.openError(GlobalController.getShell(), "Error", "Error swapping synonym and taxon");\r
-                       return;\r
-               }\r
-               \r
-               taxon.removeSynonym(synonym);\r
-               \r
-               Taxon parentTaxon = taxon.getTaxonomicParent();\r
-               Taxon newTaxon = Taxon.NewInstance(synonym.getName(), taxon.getSec());\r
-               newTaxon.setTaxonomicParent(parentTaxon, null, null);\r
-               \r
-               Synonym newSynonym = Synonym.NewInstance(taxon.getName(), taxon.getSec());\r
-                       \r
-               if (CdmUtil.isNameHomotypic(newSynonym.getName(), newTaxon)) {\r
-                       newTaxon.addSynonym(newSynonym, SynonymRelationshipType.HOMOTYPIC_SYNONYM_OF());\r
-               } else {\r
-                       newTaxon.addSynonym(newSynonym, SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF());                      \r
-               }\r
-               \r
-               //      Move the other synonyms from old accepted taxon to new accepted taxon\r
-               for (Synonym synonym: taxon.getSynonyms()) {\r
-                       SynonymRelationshipType synRelType = SynonymRelationshipType.HOMOTYPIC_SYNONYM_OF();\r
-                       if (CdmUtil.isNameHomotypic(synonym.getName(), newTaxon) != true) {\r
-                               synRelType = SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF();\r
-                       }\r
-                       newTaxon.addSynonym(synonym, synRelType);\r
-                       taxon.removeSynonym(synonym);\r
-               }\r
-               \r
-               // Move misapplied names\r
-               for (Taxon misappliedNameTaxon: taxon.getMisappliedNames()) {\r
-                       newTaxon.addMisappliedName(misappliedNameTaxon, \r
-                                       misappliedNameTaxon.getName().getCitation(), \r
-                                       ""); //TODO: Set the microcitation\r
-                       taxon.removeTaxon(misappliedNameTaxon, TaxonRelationshipType.MISAPPLIED_NAME_FOR());\r
-               }\r
-               \r
-               // Move descriptions\r
-               for(TaxonDescription taxDescription : taxon.getDescriptions()){\r
-                       newTaxon.addDescription(taxDescription);\r
-                       taxon.removeDescription(taxDescription);\r
-               }\r
-               \r
-               firePropertyChange(ITaxEditorConstants.TAXON, null, newTaxon);\r
-       }       \r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/images/AddImageAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/images/AddImageAction.java
deleted file mode 100644 (file)
index f8639c9..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.images;\r
-\r
-import java.net.URL;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.images.AddImageOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 31.03.2009\r
- * @version 1.0\r
- */\r
-public class AddImageAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AddImageAction.class);\r
-       \r
-       private static final String text = "Create new image"; //$NON-NLS-1$\r
-//     private static final ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-//                     .getImageDescriptor(ITaxEditorConstants.ADD_CHILD_TAXON_ICON);\r
-       private static final ImageDescriptor image = null;\r
-       \r
-       private Taxon taxon;\r
-       private URL url;\r
-       \r
-       /**\r
-        * \r
-        */\r
-       private AddImageAction() {\r
-               super(text, image);\r
-       }\r
-       \r
-       /**\r
-        * @param taxon\r
-        * @param url\r
-        */\r
-       public AddImageAction(Taxon taxon) {\r
-               this();\r
-               \r
-               this.taxon = taxon;\r
-       }\r
-\r
-       public void run() {\r
-               IUndoableOperation operation = new AddImageOperation\r
-                               (this.getText(), EditorController.getUndoContext(taxon), taxon);\r
-               \r
-               GlobalController.executeOperation(operation);                           \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/images/RemoveImageAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/images/RemoveImageAction.java
deleted file mode 100644 (file)
index fac87c2..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.images;\r
-\r
-import java.net.URL;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.images.RemoveImageOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 31.03.2009\r
- * @version 1.0\r
- */\r
-public class RemoveImageAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RemoveImageAction.class);\r
-       \r
-       private static final String text = "Remove image from taxon"; //$NON-NLS-1$\r
-       private static final ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageDescriptor(ITaxEditorConstants.ACTIVE_DELETE_ICON);    \r
-       \r
-       private Taxon taxon;\r
-       private URL url;\r
-       \r
-       /**\r
-        * \r
-        */\r
-       private RemoveImageAction() {\r
-               super(text, image);\r
-       }\r
-       \r
-       /**\r
-        * @param taxon\r
-        * @param url\r
-        */\r
-       public RemoveImageAction(Taxon taxon, URL url) {\r
-               this();\r
-               \r
-               this.taxon = taxon;\r
-               this.url = url;\r
-       }\r
-\r
-       public void run() {\r
-               IUndoableOperation operation = new RemoveImageOperation\r
-                               (this.getText(), EditorController.getUndoContext(taxon), taxon, url);\r
-               \r
-               GlobalController.executeOperation(operation);                           \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/io/ExportAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/io/ExportAction.java
deleted file mode 100644 (file)
index ad3edff..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.io;\r
-\r
-import java.io.File;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.FileDialog;\r
-\r
-import eu.etaxonomy.cdm.database.ICdmDataSource;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.datasource.CdmDataSourceRepository;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 05.11.2008\r
- * @version 1.0\r
- */\r
-public class ExportAction extends Action {\r
-       private static final Logger logger = Logger.getLogger(ExportAction.class);\r
-\r
-       private static String text = "Export as ...";\r
-       private ImageDescriptor image = null;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.actions.io.exportaction"; //$NON-NLS-1$\r
-\r
-       public static final String JAXB = "JAXB";\r
-\r
-       private FileDialog dialog;\r
-       private File file;\r
-\r
-       private String exportType;\r
-       \r
-       public ExportAction() {\r
-               super(text);\r
-               setImageDescriptor(image);\r
-               setId(ID);\r
-       }\r
-\r
-       public ExportAction(String exportType) {\r
-               this();\r
-               \r
-               this.exportType = exportType;\r
-               setText(exportType);\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-\r
-               // Use same title "Export FORMAT" for all message dialogs\r
-               String title = "Export " + getText();\r
-               \r
-               // Get file from user\r
-               dialog = new FileDialog(GlobalController.getShell(), SWT.SAVE);\r
-               dialog.setFileName("export.xml");\r
-               String filePath = dialog.open();\r
-               file = new File(filePath);              \r
-               \r
-               // Get current data source\r
-               ICdmDataSource source = CdmDataSourceRepository.getDefault().getCurrentDataSource();\r
-               \r
-               // Format file path \r
-               String destination = null;\r
-//                     destination = file.toURI().toURL().toString();\r
-               destination = file.toString();\r
-               \r
-               // TODO i/o has changed drastically in cdmlib. \r
-//             JaxbExportConfigurator configurator = JaxbExportConfigurator.NewInstance(source, destination);\r
-//             CdmDefaultExport<JaxbExportConfigurator> jaxbExport = \r
-//                             new CdmDefaultExport<JaxbExportConfigurator>();\r
-               \r
-               // Start export\r
-//             boolean isSuccessfulExport = jaxbExport.invoke(configurator);\r
-//             \r
-//             // Tell user whether import was a success or a dismal failure\r
-//             if (isSuccessfulExport) {\r
-//                     MessageDialog.openInformation(GlobalController.getShell(), title, "Export successful");\r
-//             } else {\r
-//                     MessageDialog.openError(GlobalController.getShell(), title, "Export was unsuccessful.");\r
-//             }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/io/ImportAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/io/ImportAction.java
deleted file mode 100644 (file)
index b4657c6..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.io;\r
-\r
-import java.io.File;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.swt.widgets.FileDialog;\r
-\r
-import eu.etaxonomy.cdm.database.ICdmDataSource;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.datasource.CdmDataSourceRepository;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 05.11.2008\r
- * @version 1.0\r
- */\r
-public class ImportAction extends Action {\r
-       private static final Logger logger = Logger.getLogger(ImportAction.class);\r
-\r
-       private static String text = "Import ...";\r
-       private ImageDescriptor image = null;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.actions.io.importaction"; //$NON-NLS-1$\r
-\r
-       private FileDialog dialog;\r
-       private File file;\r
-//     private ImportWrapper importWrapper;\r
-       \r
-       private ImportAction() {\r
-               super(text);\r
-               setImageDescriptor(image);\r
-               setId(ID);\r
-       }\r
-\r
-//     public ImportAction(ImportWrapper importWrapper) {\r
-//             this();\r
-//             \r
-//             this.importWrapper = importWrapper;\r
-//             setText(importWrapper.getLabel());\r
-//     }\r
-\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-\r
-               // Use same title "Import FORMAT" for all message dialogs\r
-               String title = "Import " + getText();\r
-               \r
-               // Make sure user is aware of the implications of an import\r
-               boolean doProceed = MessageDialog.openConfirm(GlobalController.getShell(), title, \r
-                               "Import may require a great deal of time and system resources.\n\n" +\r
-                               "Are you sure you would like to proceed?");\r
-               if (!doProceed) {\r
-                       return;\r
-               }\r
-               \r
-               // Get file from user\r
-               dialog = new FileDialog(GlobalController.getShell());\r
-               String filePath = dialog.open();\r
-               file = new File(filePath);\r
-                                               \r
-               // Get current data source\r
-               ICdmDataSource destination = CdmDataSourceRepository.getDefault().getCurrentDataSource();\r
-               \r
-               // Get plugin application controller - from Anahit\r
-//             CdmApplicationController app = TaxEditorPlugin.getDefault().getCdmApp();\r
-//             TaxEditorPlugin.getDefault().commitTransaction();\r
-//             TaxEditorPlugin.getDefault().getCdmApp().close();\r
-               \r
-               // Format file path \r
-               String source = null;\r
-               try {\r
-                       source = file.toURI().toURL().toString();\r
-                       //source = file.toString();\r
-               } catch (/*MalformedURL*/Exception e) {\r
-                       MessageDialog.openError(GlobalController.getShell(), title, "File could not be read.");\r
-                       return;\r
-               }\r
-               \r
-               // Start import\r
-//             boolean isSuccessfulImport = importWrapper.invoke(source, destination, null);\r
-//             \r
-//             // Tell user whether import was a success or a dismal failure\r
-//             if (isSuccessfulImport) {\r
-//                     MessageDialog.openInformation(GlobalController.getShell(), title, "Import successful");\r
-//                     TreeController.getTreeViewer().refresh();\r
-//             } else {\r
-//                     MessageDialog.openError(GlobalController.getShell(), title, "Import was unsuccessful.");\r
-//             }\r
-               \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeConceptRelationAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeConceptRelationAction.java
deleted file mode 100644 (file)
index e24f2b5..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.ChangeConceptRelationOperation;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateConceptRelationOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 03.02.2009\r
- * @version 1.0\r
- */\r
-public class ChangeConceptRelationAction extends Action {\r
-\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeConceptRelationAction.class);\r
-\r
-       private static String text = "Change concept relation";\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageRegistry().getDescriptor(ITaxEditorConstants.CONCEPT_ICON);\r
-\r
-       private Taxon relatedTaxon;\r
-\r
-       private Taxon taxon;\r
-\r
-       private TaxonRelationshipType taxonRelationshipType;\r
-\r
-       private ChangeConceptRelationAction(){\r
-               super(text, image);\r
-       }\r
-       \r
-       public ChangeConceptRelationAction(Taxon taxon, Taxon relatedTaxon,\r
-                       TaxonRelationshipType taxonRelationshipType) {\r
-               this();\r
-               this.setText(taxonRelationshipType.getLabel());\r
-               this.taxon = taxon;\r
-               this.relatedTaxon = relatedTaxon;\r
-               this.taxonRelationshipType = taxonRelationshipType;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               IUndoableOperation operation = new ChangeConceptRelationOperation(\r
-                               "Create concept relation '" + taxonRelationshipType.getLabel() + "'", \r
-                               EditorController.getUndoContext(taxon), taxon, relatedTaxon, taxonRelationshipType);\r
-               \r
-               GlobalController.executeOperation(operation);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeSynonymToConceptRelationAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeSynonymToConceptRelationAction.java
deleted file mode 100644 (file)
index 1aad0b1..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.ChangeSynonymToConceptOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 02.02.2009\r
- * @version 1.0\r
- */\r
-public class ChangeSynonymToConceptRelationAction extends Action {\r
-\r
-\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeSynonymToConceptRelationAction.class);\r
-       \r
-       private static String text = "Change synonym to concept relation"; //$NON-NLS-1$\r
-       \r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                               .getImageDescriptor(ITaxEditorConstants.CONCEPT_ICON);\r
-\r
-       private Synonym synonym;\r
-\r
-       private Taxon taxon;\r
-       \r
-       private ChangeSynonymToConceptRelationAction() {\r
-               super(text, image);\r
-       }\r
-       \r
-       public ChangeSynonymToConceptRelationAction(Taxon taxon, Synonym synonym) {\r
-               this();\r
-               this.taxon = taxon;\r
-               this.synonym = synonym;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               IUndoableOperation operation = new ChangeSynonymToConceptOperation\r
-                               (this.getText(), EditorController.getUndoContext(taxon), taxon, synonym);\r
-               \r
-               GlobalController.executeOperation(operation);                   \r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeSynonymToMisapplicationAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/ChangeSynonymToMisapplicationAction.java
deleted file mode 100644 (file)
index 6ab9c00..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.ChangeSynonymToMisappliedNameOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 02.02.2009\r
- * @version 1.0\r
- */\r
-public class ChangeSynonymToMisapplicationAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeSynonymToMisapplicationAction.class);\r
-       \r
-       private static String text = "Change synonym to misapplied name"; //$NON-NLS-1$\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageDescriptor(ITaxEditorConstants.MISAPPLIED_NAME_ICON);\r
-\r
-       private Synonym synonym;\r
-\r
-       private Taxon taxon;\r
-       \r
-       private ChangeSynonymToMisapplicationAction(){\r
-               super(text, image);\r
-       }\r
-       \r
-       public ChangeSynonymToMisapplicationAction(Taxon taxon, Synonym synonym){\r
-               this();\r
-               this.taxon = taxon;\r
-               this.synonym = synonym;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               IUndoableOperation operation = new ChangeSynonymToMisappliedNameOperation\r
-                               (this.getText(), EditorController.getUndoContext(taxon), taxon, synonym);\r
-               \r
-               GlobalController.executeOperation(operation);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateAutonymAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateAutonymAction.java
deleted file mode 100644 (file)
index b616990..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 02.02.2009\r
- * @version 1.0\r
- */\r
-public class CreateAutonymAction extends Action {\r
-       private static final Logger logger = Logger.getLogger(CreateAutonymAction.class);\r
-\r
-       private static String text = "Create autonym";\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageRegistry().getDescriptor(ITaxEditorConstants.AUTONYM_ICON);\r
-\r
-       public CreateAutonymAction(){\r
-               super(text, image);\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run(){\r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               \r
-               logger.warn("Not implemented yet!");\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateConceptRelationAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateConceptRelationAction.java
deleted file mode 100644 (file)
index 9c7c3cb..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateConceptRelationOperation;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateMisappliedNameOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 21.01.2009\r
- * @version 1.0\r
- */\r
-public class CreateConceptRelationAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateConceptRelationAction.class);\r
-       \r
-       private static String text = "Create concept relation";\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageRegistry().getDescriptor(ITaxEditorConstants.CONCEPT_ICON);\r
-\r
-       private TaxonRelationshipType taxonRelationshipType;\r
-\r
-       public CreateConceptRelationAction(TaxonRelationshipType taxonRelationshipType) {\r
-               super(text, image);\r
-               this.taxonRelationshipType = taxonRelationshipType;\r
-               setText(taxonRelationshipType.getLabel());\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               \r
-               IUndoableOperation operation = new CreateConceptRelationOperation(\r
-                               "Create concept relation '" + taxonRelationshipType.getLabel() + "'", \r
-                               EditorController.getUndoContext(taxon), taxon, taxonRelationshipType);\r
-               \r
-               GlobalController.executeOperation(operation);\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateHeterotypicSynonymAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateHeterotypicSynonymAction.java
deleted file mode 100644 (file)
index a13285a..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateMisappliedNameOperation;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateSynonymInNewGroupOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 02.02.2009\r
- * @version 1.0\r
- */\r
-public class CreateHeterotypicSynonymAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateHeterotypicSynonymAction.class);\r
-\r
-       private static String text = "Create heterotypic synonym";\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageRegistry().getDescriptor(ITaxEditorConstants.HETEROTYPIC_SYN_ICON);\r
-       \r
-       public CreateHeterotypicSynonymAction(){\r
-               super(text, image);\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               \r
-               IUndoableOperation operation = new CreateSynonymInNewGroupOperation(getText(), \r
-                               EditorController.getUndoContext(taxon), taxon, "");\r
-               \r
-               GlobalController.executeOperation(operation);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateMisappliedNameAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateMisappliedNameAction.java
deleted file mode 100644 (file)
index 5a4b8e1..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateMisappliedNameOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 21.01.2009\r
- * @version 1.0\r
- */\r
-public class CreateMisappliedNameAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateMisappliedNameAction.class);\r
-       \r
-       private static String text = "Create misapplied name";\r
-       private ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageRegistry().getDescriptor(ITaxEditorConstants.MISAPPLIED_NAME_ICON);\r
-\r
-       public CreateMisappliedNameAction() {\r
-               super(text);\r
-               setImageDescriptor(image);\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               \r
-               IUndoableOperation operation = new CreateMisappliedNameOperation(getText(), \r
-                               EditorController.getUndoContext(taxon), taxon);\r
-               \r
-               GlobalController.executeOperation(operation);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateNewTaxonFromSynonymAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateNewTaxonFromSynonymAction.java
deleted file mode 100644 (file)
index e7f07a3..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.ChangeSynonymToTaxonOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 02.02.2009\r
- * @version 1.0\r
- */\r
-public class CreateNewTaxonFromSynonymAction extends Action {\r
-\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateNewTaxonFromSynonymAction.class);\r
-       \r
-       private static final String text = "Use synonym name to make a new taxon"; //$NON-NLS-1$\r
-       private static final ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                               .getImageDescriptor(ITaxEditorConstants.SYNONYM_TO_TAXON_ICON);\r
-\r
-       private Synonym synonym;\r
-\r
-       private Taxon taxon;\r
-\r
-       private CreateNewTaxonFromSynonymAction() {\r
-               super(text, image);\r
-       }\r
-       \r
-       public CreateNewTaxonFromSynonymAction(Taxon taxon, Synonym synonym) {\r
-               this();\r
-               this.taxon = taxon;\r
-               this.synonym = synonym;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               IUndoableOperation operation = new ChangeSynonymToTaxonOperation\r
-                               (this.getText(), EditorController.getUndoContext(taxon), taxon, synonym);\r
-               \r
-               GlobalController.executeOperation(operation);                   \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateSynonymInGroupAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateSynonymInGroupAction.java
deleted file mode 100644 (file)
index 8ec6f8f..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateSynonymInExisitingHomotypicalGroupOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 02.02.2009\r
- * @version 1.0\r
- */\r
-public class CreateSynonymInGroupAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateSynonymInGroupAction.class);\r
-       private static String text = "Create synonym in homotypical group";\r
-       private ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageRegistry().getDescriptor(ITaxEditorConstants.HOMOTYPIC_SYN_ICON);\r
-       \r
-       public CreateSynonymInGroupAction(){\r
-               super(text);\r
-               setImageDescriptor(image);              \r
-       }\r
-       \r
-       @Deprecated\r
-       public void run(){\r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               HomotypicalGroup group = taxon.getHomotypicGroup();\r
-               \r
-               IUndoableOperation operation = new CreateSynonymInExisitingHomotypicalGroupOperation(getText(), \r
-                               EditorController.getUndoContext(taxon), taxon, group, "");\r
-               \r
-               GlobalController.executeOperation(operation);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateTaxonomicallyIncludedTaxonAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/CreateTaxonomicallyIncludedTaxonAction.java
deleted file mode 100644 (file)
index 4337706..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.name.CdmParserController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 02.02.2009\r
- * @version 1.0\r
- */\r
-public class CreateTaxonomicallyIncludedTaxonAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateTaxonomicallyIncludedTaxonAction.class);\r
-\r
-       private static String text = "Create taxonomically included taxon";\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageRegistry().getDescriptor(ITaxEditorConstants.BLACK_SQUARE_ICON);\r
-\r
-       public CreateTaxonomicallyIncludedTaxonAction(){\r
-               super(text, image);\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run(){\r
-               \r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               // Create a new taxon with an empty name\r
-               TaxonNameBase childName = \r
-                               CdmParserController.parseFullReference("", null, null);\r
-               Taxon childTaxon = Taxon.NewInstance(childName, CdmSessionDataRepository.getDefault().getDefaultSec());\r
-                               \r
-               // Add the newly created taxon to the actual open taxon\r
-               taxon.addTaxonomicChild(childTaxon, null, null);\r
-               \r
-               // Open a new editor window for the new taxon\r
-               EditorController.open(childTaxon);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/MakeBasionymAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/MakeBasionymAction.java
deleted file mode 100644 (file)
index b97139d..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.MakeSynonymGroupBasionymOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 03.02.2009\r
- * @version 1.0\r
- */\r
-public class MakeBasionymAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(MakeBasionymAction.class);\r
-       \r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-               .getImageDescriptor(ITaxEditorConstants.BASIONYM_ICON);\r
-       \r
-       private Taxon taxon;\r
-       private Synonym synonym;\r
-       \r
-       public MakeBasionymAction(Taxon taxon, Synonym synonym){\r
-               String text = Messages.getString("AddBasionymCompositeAction.0", synonym.getName());\r
-               this.setText(text);\r
-               this.setImageDescriptor(image);\r
-               \r
-               this.taxon = taxon;\r
-               this.synonym = synonym;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               IUndoableOperation operation = new MakeSynonymGroupBasionymOperation\r
-                               (this.getText(), EditorController.getUndoContext(taxon), taxon, synonym);\r
-               \r
-               GlobalController.executeOperation(operation);           \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/Messages.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/Messages.java
deleted file mode 100644 (file)
index 079ee60..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import java.util.Locale;\r
-import java.util.MissingResourceException;\r
-import java.util.ResourceBundle;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 09.10.2008\r
- * @version 1.0\r
- */\r
-public class Messages {\r
-       private static final Logger logger = Logger.getLogger(Messages.class);\r
-       private static final String BUNDLE_NAME = "eu.etaxonomy.taxeditor.actions.name.messages"; //$NON-NLS-1$\r
-\r
-       private static final ResourceBundle RESOURCE_BUNDLE = ResourceBundle\r
-                       .getBundle(BUNDLE_NAME, Locale.getDefault());\r
-\r
-       private Messages() {\r
-       }\r
-\r
-       public static String getString(String key) {\r
-               try {\r
-                       return RESOURCE_BUNDLE.getString(PreferencesController.concatCodeMessageSuffix(key));\r
-               } catch (MissingResourceException e1) {\r
-                       try {\r
-                               return RESOURCE_BUNDLE.getString(key);\r
-                       } catch (MissingResourceException e2) {\r
-                               return '!' + key + '!';\r
-                       }       \r
-               }\r
-       }\r
-\r
-       public static String getString(String key, TaxonNameBase name) {\r
-               if (name instanceof BotanicalName) {\r
-                       key += "." + ITaxEditorConstants.CODE_PREFERENCE_ICBN;\r
-               } else if (name instanceof ZoologicalName) {\r
-                       key += "." + ITaxEditorConstants.CODE_PREFERENCE_ICZN;\r
-               } else {\r
-                       getString(key);\r
-               }\r
-               try {\r
-                       return RESOURCE_BUNDLE.getString(key);\r
-               } catch (MissingResourceException e2) {\r
-                       return '!' + key + '!';\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/RemoveConceptAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/RemoveConceptAction.java
deleted file mode 100644 (file)
index 9c9f8ac..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.RemoveConceptRelationOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 03.02.2009\r
- * @version 1.0\r
- */\r
-public class RemoveConceptAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RemoveConceptAction.class);\r
-       \r
-       private static String text = "Remove concept relation from taxon"; //$NON-NLS-1$\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageDescriptor(ITaxEditorConstants.ACTIVE_DELETE_ICON);\r
-\r
-       private TaxonRelationshipType relationshipType;\r
-\r
-       private Taxon relatedTaxon;\r
-\r
-       private Taxon taxon;\r
-       \r
-       private RemoveConceptAction(){\r
-               super(text, image);\r
-       }\r
-\r
-       public RemoveConceptAction(Taxon taxon, Taxon relatedTaxon,\r
-                       TaxonRelationshipType relationshipType) {\r
-               this();\r
-               this.taxon = taxon;\r
-               this.relatedTaxon = relatedTaxon;\r
-               this.relationshipType = relationshipType;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               IUndoableOperation operation = new RemoveConceptRelationOperation\r
-                               (this.getText(), EditorController.getUndoContext(taxon), taxon, relatedTaxon, relationshipType);\r
-               \r
-               GlobalController.executeOperation(operation);\r
-       }\r
-\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/RemoveSynonymAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/RemoveSynonymAction.java
deleted file mode 100644 (file)
index 29940ce..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.RemoveSynonymOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 02.02.2009\r
- * @version 1.0\r
- */\r
-public class RemoveSynonymAction extends Action {\r
-\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RemoveSynonymAction.class);\r
-       \r
-       private static final String text = "Remove synonym from taxon"; //$NON-NLS-1$\r
-       private static final ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageDescriptor(ITaxEditorConstants.ACTIVE_DELETE_ICON);\r
-\r
-       private Synonym synonym;\r
-\r
-       private Taxon taxon;\r
-       \r
-       private RemoveSynonymAction() {\r
-               super(text, image);\r
-       }\r
-       \r
-       public RemoveSynonymAction(Taxon taxon, Synonym synonym) {\r
-               this();\r
-               this.taxon = taxon;\r
-               this.synonym = synonym;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               IUndoableOperation operation = new RemoveSynonymOperation\r
-                               (this.getText(), EditorController.getUndoContext(taxon), taxon, synonym);\r
-               \r
-               GlobalController.executeOperation(operation);                           \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/UnmakeBasionymAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/UnmakeBasionymAction.java
deleted file mode 100644 (file)
index 4e9ff41..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.UnmakeSynonymGroupBasionymOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 03.02.2009\r
- * @version 1.0\r
- */\r
-public class UnmakeBasionymAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(UnmakeBasionymAction.class);\r
-       \r
-       \r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-               .getImageDescriptor(ITaxEditorConstants.BASIONYM_ICON);\r
-       \r
-       private Taxon taxon;\r
-       private Synonym synonym;\r
-       \r
-       public UnmakeBasionymAction(Taxon taxon, Synonym synonym){\r
-               String text = Messages.getString("RemoveBasionymCompositeAction.0", synonym.getName());  //$NON-NLS-1$\r
-               this.setText(text);\r
-               this.setImageDescriptor(image);\r
-               this.taxon = taxon;\r
-               this.synonym = synonym;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               IUndoableOperation operation = new UnmakeSynonymGroupBasionymOperation\r
-                               (this.getText(), EditorController.getUndoContext(taxon), taxon, synonym);\r
-               \r
-               GlobalController.executeOperation(operation);                           \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/messages.properties b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/name/messages.properties
deleted file mode 100644 (file)
index 597445a..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-AddBasionymCompositeAction.0.ICBN=Set as basionym for homotypical group\r
-AddBasionymCompositeAction.0.ICZN=Set as original combination for homotypical group\r
-RemoveBasionymCompositeAction.0.ICBN=Remove as basionym for homotypical group\r
-RemoveBasionymCompositeAction.0.ICZN=Remove as original combination for homotypical group\r
-SynonymComposite.0=asdflkjasdlkfjs\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/ChangeTaxonToSynonymAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/ChangeTaxonToSynonymAction.java
deleted file mode 100644 (file)
index ba785ee..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.actions.ui;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.ChangeTaxonToSynonymOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 26.05.2008\r
- * @version 1.0\r
- */\r
-public class ChangeTaxonToSynonymAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeTaxonToSynonymAction.class);\r
-\r
-       private static String text = "Change this taxon to a synonym";\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageRegistry().getDescriptor(ITaxEditorConstants.TAXON_TO_SYNONYM_ICON);\r
-\r
-       private Taxon taxon;\r
-\r
-       public ChangeTaxonToSynonymAction() {\r
-               super(text, image);\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               \r
-               IUndoableOperation operation = new ChangeTaxonToSynonymOperation(getText(), \r
-                               GlobalController.getWorkbenchUndoContext(), taxon);\r
-               \r
-               GlobalController.executeOperation(operation);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/MoveTaxonDialogAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/MoveTaxonDialogAction.java
deleted file mode 100644 (file)
index 5bbbfa7..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.actions.ui;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorPart;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.actions.cdm.MoveTaxonAction;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.SelectTaxonDialog;\r
-import eu.etaxonomy.taxeditor.model.NameEditorInput;\r
-import eu.etaxonomy.taxeditor.operations.MoveTaxonOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 26.05.2008\r
- * @version 1.0\r
- */\r
-public class MoveTaxonDialogAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(MoveTaxonDialogAction.class);\r
-\r
-       private static String text = "Move this taxon to a new parent";\r
-       private static ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageRegistry().getDescriptor(ITaxEditorConstants.MOVE_ICON);\r
-\r
-       public MoveTaxonDialogAction() {\r
-               super(text, image);\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-               \r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               IEditorPart editor = null;\r
-               \r
-\r
-               // TODO? Prompt user "Would you like to save?" before showing dialog\r
-               // "Cancel" cancels action - "No" does not\r
-               if (EditorController.save(taxon, true) == false) {\r
-                       return;\r
-               }\r
-               \r
-               // Get destination taxon from dialog\r
-               SelectTaxonDialog dialog = new SelectTaxonDialog(GlobalController.getShell(), \r
-                                                                               SelectTaxonDialog.TAXON_TO_NEW_PARENT);\r
-               Taxon destinationTaxon = dialog.open(taxon);\r
-               \r
-               // Abort action if user cancelled dialog without choosing a taxon\r
-               if (destinationTaxon == null) {\r
-                       return;\r
-               }\r
-                               \r
-               // Move taxon in CDM\r
-               IUndoableOperation operation = new MoveTaxonOperation(this.getText(), \r
-                               GlobalController.getWorkbenchUndoContext(), taxon, destinationTaxon);\r
-               \r
-               GlobalController.executeOperation(operation);\r
-               \r
-               // For some reason, old parent is not getting the hint that one of its children is gone\r
-//             new SaveTaxonAction(oldParent).run();\r
-//             new SaveTaxonAction(destinationTaxon).run();\r
-               \r
-               editor.doSave(null);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNameRelationWizardAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNameRelationWizardAction.java
deleted file mode 100644 (file)
index ae6cb10..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.actions.ui;\r
-\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.jface.wizard.Wizard;\r
-import org.eclipse.jface.wizard.WizardDialog;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameRelationship;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.propertysheet.namerelations.wizard.NameRelationWizard;\r
-import eu.etaxonomy.taxeditor.propertysheet.namerelations.wizard.NameRelationWizardModel;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 04.06.2008\r
- * @version 1.0\r
- */\r
-public class OpenNameRelationWizardAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(OpenNameRelationWizardAction.class);\r
-\r
-       private static String text = "Create name relation ...";\r
-//     private ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-//                     .getImageDescriptor(ITaxEditorConstants.ACTIVE_DELETE_ICON);\r
-       private ImageDescriptor image = null;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.actions.opennamerelationswizard"; //$NON-NLS-1$\r
-\r
-       private NameRelationWizardModel relationModel;\r
-\r
-       private OpenNameRelationWizardAction() {\r
-               super(text);\r
-               setImageDescriptor(image);\r
-               setId(ID);\r
-       }\r
-\r
-       public OpenNameRelationWizardAction(TaxonNameBase name) {\r
-               this();\r
-               \r
-               this.relationModel = new NameRelationWizardModel(name);\r
-       }\r
-\r
-       public OpenNameRelationWizardAction(TaxonNameBase name,\r
-                       List<NameRelationship> nameRelationsList) {\r
-               this(name);\r
-               \r
-               this.relationModel.setNameRelationsList(nameRelationsList); \r
-       }\r
-\r
-       public OpenNameRelationWizardAction(TaxonNameBase name,\r
-                       NameRelationship relation) {\r
-               this(name);\r
-               \r
-               this.relationModel.setRelation(relation);\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-               if (relationModel.getBaseName() == null) {\r
-                       return;\r
-               }\r
-               \r
-               Wizard wizard = new NameRelationWizard(relationModel);\r
-               \r
-               WizardDialog dialog = new WizardDialog(GlobalController.getShell(), wizard);\r
-               dialog.create();\r
-               dialog.open();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNameRelationsListWizardAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNameRelationsListWizardAction.java
deleted file mode 100644 (file)
index b4a04c8..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.actions.ui;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.jface.wizard.Wizard;\r
-import org.eclipse.jface.wizard.WizardDialog;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.propertysheet.namerelations.wizard.NameRelationsListWizard;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 04.06.2008\r
- * @version 1.0\r
- */\r
-public class OpenNameRelationsListWizardAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(OpenNameRelationsListWizardAction.class);\r
-\r
-       private static String text = "Create name relation ...";\r
-       private ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageDescriptor(ITaxEditorConstants.ACTIVE_DELETE_ICON);\r
-//     private ImageDescriptor image = null;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.actions.opennamerelationswizard"; //$NON-NLS-1$\r
-\r
-       private TaxonNameBase name;\r
-\r
-       private OpenNameRelationsListWizardAction() {\r
-               super(text);\r
-               setImageDescriptor(image);\r
-               setId(ID);\r
-       }\r
-\r
-       public OpenNameRelationsListWizardAction(TaxonNameBase name) {\r
-               this();\r
-\r
-               this.name = name;\r
-       }\r
-\r
-       @Deprecated\r
-       public void run() {\r
-               if (name == null) {\r
-                       return;\r
-               }\r
-               Wizard wizard = new NameRelationsListWizard(name);\r
-\r
-               // Instantiates the wizard container with the wizard and opens it\r
-               WizardDialog dialog = new WizardDialog(GlobalController.getShell(), wizard);\r
-               dialog.create();\r
-               dialog.open();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNewTaxonEditorAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenNewTaxonEditorAction.java
deleted file mode 100644 (file)
index 344c29e..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.ui;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-import eu.etaxonomy.taxeditor.datasource.CdmDataSourceRepository;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * Opens a name editor for a new, uninitialized taxon. \r
- * \r
- * @author p.ciardelli\r
- * @created 02.06.2008\r
- * @version 1.0\r
- * @deprecated\r
- */\r
-public class OpenNewTaxonEditorAction extends Action {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(OpenNewTaxonEditorAction.class);\r
-\r
-       private static String textRootTaxon = "Add root taxon";\r
-       private static String textChildTaxon = "Add child taxon";\r
-       private ImageDescriptor imageChildTaxon = TaxEditorPlugin.getDefault()\r
-                       .getImageDescriptor(ITaxEditorConstants.ADD_CHILD_TAXON_ICON);\r
-\r
-       private Taxon taxon;\r
-       private Taxon parentTaxon = null;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.actions.opennameeditoraction"; //$NON-NLS-1$\r
-       \r
-       public OpenNewTaxonEditorAction() {\r
-               super(textRootTaxon);\r
-               setId(ID);\r
-       }\r
-       \r
-       @Deprecated\r
-       public OpenNewTaxonEditorAction(Taxon parentTaxon) {\r
-               this();\r
-\r
-               setText(textChildTaxon);\r
-               setImageDescriptor(imageChildTaxon);\r
-               \r
-               this.parentTaxon = parentTaxon;\r
-       }\r
-       \r
-       @Deprecated\r
-       public void run() {\r
-               \r
-               NonViralName name = PreferencesController.getInstanceOfPreferredNameClass();\r
-               taxon = Taxon.NewInstance(name, null);\r
-                               \r
-               if (parentTaxon == null) {\r
-                       taxon = Taxon.NewInstance(name, \r
-                                               CdmSessionDataRepository.getDefault().getDefaultSec());\r
-               } else {\r
-                       taxon = Taxon.NewInstance(name, \r
-                                               parentTaxon.getSec());\r
-                       parentTaxon.addTaxonomicChild(taxon, null, null);\r
-               }\r
-               \r
-               // Open editor for new taxon\r
-               EditorController.openUnitializedChildTaxon(taxon);\r
-                               \r
-               //new OpenTaxonEditorAction(taxon).run();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenTaxonEditorAction.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/actions/ui/OpenTaxonEditorAction.java
deleted file mode 100644 (file)
index ec7be1c..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.actions.ui;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.ui.IWorkbenchWindow;\r
-import org.eclipse.ui.actions.ActionFactory;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-\r
-/**\r
- * Opens a taxon editor for an existing taxon.\r
- * \r
- * FIXME this action is broken and actually throws lots of hibernate exceptions\r
- * \r
- * @author p.ciardelli\r
- * @created 02.06.2008\r
- * @version 1.0\r
- * @deprecated\r
- */\r
-public class OpenTaxonEditorAction extends Action implements ActionFactory.IWorkbenchAction {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(OpenTaxonEditorAction.class);\r
-\r
-       private static String editTaxonText = "Edit taxon";\r
-       private static String newTaxonText = "Add new taxon";\r
-       private ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                       .getImageDescriptor(ITaxEditorConstants.OPEN_TAXON_ICON);\r
-\r
-       private IWorkbenchWindow window;\r
-       \r
-       private Taxon taxon;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.actions.opennameeditoraction"; //$NON-NLS-1$\r
-       \r
-       @Deprecated\r
-       public OpenTaxonEditorAction(Taxon taxon) {\r
-               this();\r
-               \r
-               this.taxon = taxon;\r
-               if (taxon != null) {\r
-                       setText(editTaxonText);\r
-               }\r
-       }\r
-\r
-       @Deprecated\r
-       public OpenTaxonEditorAction() {\r
-               super(newTaxonText);\r
-               setImageDescriptor(image);\r
-               setId(ID);\r
-       }\r
-       \r
-       @Override\r
-       @Deprecated\r
-       public void run() {\r
-               \r
-       EditorController.open(taxon);\r
-               \r
-               // For clients who re-use the same instance of this class, \r
-               //      taxon is re-initalized to ensure a new Taxon is opened every time\r
-               taxon = null;\r
-       }\r
-\r
-       public void dispose() {\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/EditorController.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/EditorController.java
deleted file mode 100644 (file)
index 8ce7a33..0000000
+++ /dev/null
@@ -1,411 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.controller;\r
-\r
-import java.util.HashMap;\r
-import java.util.HashSet;\r
-import java.util.Map;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IOperationHistory;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorPart;\r
-import org.eclipse.ui.IEditorReference;\r
-import org.eclipse.ui.IWorkbenchPage;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.taxeditor.datasource.CdmTransactionController;\r
-import eu.etaxonomy.taxeditor.editor.AbstractTaxonEditor;\r
-import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;\r
-import eu.etaxonomy.taxeditor.editor.TemporaryTaxon;\r
-import eu.etaxonomy.taxeditor.editor.description.TaxonDescriptionEditor;\r
-import eu.etaxonomy.taxeditor.editor.images.TaxonImagesEditor;\r
-import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.model.NameEditorInput;\r
-import eu.etaxonomy.taxeditor.navigation.RecentNamesView;\r
-import eu.etaxonomy.taxeditor.navigation.TaxonomicTreeViewer;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 20.01.2009\r
- * @version 1.0\r
- */\r
-public class EditorController {\r
-       private static final Logger logger = Logger.getLogger(EditorController.class);\r
-\r
-       private static Map<Taxon, TaxonNameEditor> taxonNameEditors;\r
-       private static Map<Taxon, TaxonDescriptionEditor> taxonDescriptionEditors;\r
-\r
-       private static boolean isSaving = false;\r
-\r
-       private static HashMap<Taxon, TaxonImagesEditor> taxonImagesEditors;\r
-       \r
-       private static IWorkbenchPage getActivePage(){\r
-               return GlobalController.getActivePage();\r
-       }\r
-       \r
-       /**\r
-        * @param input\r
-        * @return\r
-        * @throws PartInitException\r
-        */\r
-       private static IEditorPart getEditorByInput(IEditorInput input)\r
-                       throws PartInitException {\r
-               for (IEditorReference reference : getActivePage().getEditorReferences()) {\r
-                       if (reference.getEditorInput().equals(input)) {\r
-                               IEditorPart editor = reference.getEditor(false);\r
-                               return editor;\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       public static boolean closeAll() {\r
-               for (IEditorPart editor : getOpenEditors()) {\r
-                       if (!getActivePage().closeEditor(editor, true)) {\r
-                               return false;\r
-                       }\r
-               }\r
-               return true;\r
-       }\r
-\r
-       public static IEditorPart getEditorByTaxon(Taxon taxon)\r
-                       throws PartInitException {\r
-               IEditorInput input = new NameEditorInput(taxon);\r
-               return getEditorByInput(input);\r
-       }\r
-\r
-       /**\r
-        * @param input\r
-        * @param editorId\r
-        * @return \r
-        * @throws PartInitException\r
-        */\r
-       private static IEditorPart open(IEditorInput input, String editorId)\r
-                       throws PartInitException {\r
-               return getActivePage().openEditor(input, editorId);\r
-       }\r
-\r
-       /** \r
-        * Open a taxon editor for the given taxon. If the taxon has been saved before, it is\r
-        * considered initialized, and opening its editor will give it an entry in the list\r
-        * of recent names and open its node in the tree. \r
-        * \r
-        * @param taxon\r
-        * @param isInitialized\r
-        * @return\r
-        */\r
-       public static IEditorPart open(Taxon taxon, boolean isInitialized){\r
-               \r
-               if (isInitialized) {\r
-                       \r
-                       TaxonomicTreeViewer treeViewer = TreeController.getTreeViewer(); \r
-                       if (treeViewer != null) {\r
-                               treeViewer.revealTaxon(taxon);\r
-                       }\r
-                       \r
-                       RecentNamesView.addRecentName(taxon);                   \r
-               }\r
-               \r
-               IEditorInput input = new NameEditorInput(taxon);\r
-               \r
-               try {\r
-                       return open(input, MultiPageTaxonEditor.ID);\r
-               } catch (PartInitException e) {\r
-                       logger.error("Error opening editor.", e);\r
-               }\r
-               return null;\r
-       }\r
-       \r
-       public static IEditorPart open(Taxon taxon){\r
-               \r
-//             TemporaryTaxon taxonCopy = TemporaryTaxon.newInstance(taxon);\r
-               Taxon taxonCopy = getEditorTaxon(taxon);\r
-               \r
-               return open(getEditorTaxon(taxon), true);\r
-       }\r
-       \r
-       /**\r
-        * @param taxon\r
-        * @return\r
-        */\r
-       private static Taxon getEditorTaxon(Taxon taxon) {\r
-               return (Taxon) CdmUtil.getTaxonService().getTaxonByUuid(taxon.getUuid());\r
-       }\r
-\r
-       /**\r
-        * An unitialized taxon is one that hasn't been saved yet. As such, it should appear in neither\r
-        * the list of recent names nor in the taxonomic tree when opened.\r
-        * \r
-        * @param taxon\r
-        * @return\r
-        */\r
-       public static IEditorPart openUnitializedChildTaxon(Taxon parentTaxon) {\r
-               \r
-               TaxonNameBase name = PreferencesController.getInstanceOfPreferredNameClass();\r
-               Taxon taxon = Taxon.NewInstance(name, parentTaxon.getSec());\r
-               parentTaxon.addTaxonomicChild(taxon, null, null);\r
-               \r
-               return open(taxon, false);\r
-       }\r
-\r
-       /**\r
-        * An unitialized taxon is one that hasn't been saved yet. As such, it should appear in neither\r
-        * the list of recent names nor in the taxonomic tree when opened.\r
-        * \r
-        * @param taxon\r
-        * @return\r
-        */\r
-       public static IEditorPart openUnitializedRootTaxon() {\r
-               \r
-               TaxonNameBase name = PreferencesController.getInstanceOfPreferredNameClass();\r
-               Taxon taxon = Taxon.NewInstance(name, \r
-                               CdmSessionDataRepository.getDefault().getDefaultSec());\r
-               \r
-               return open(taxon, false);\r
-       }\r
-       \r
-       public static IEditorPart openTaxonEditor(TaxonBase taxonBase) {\r
-\r
-               Taxon taxon = null;\r
-               if (taxonBase instanceof Synonym) {\r
-                       // TODO: in case of pro parte synonym or any other where we might have multiple\r
-                       // accepted taxa we have to provide a mechanism that can deal with that\r
-                       // TODO set focus to the synonym\r
-                       taxon = (Taxon) ((Synonym) taxonBase).getAcceptedTaxa().toArray()[0];\r
-               } else {\r
-                       taxon = (Taxon) taxonBase;\r
-               }\r
-\r
-               // Open a taxon editor\r
-               return EditorController.open(taxon);\r
-       }\r
-\r
-       /**\r
-        * Redraws an open editor if it exists for the given taxon\r
-        * \r
-        * @param taxon\r
-        * @return\r
-        */\r
-       public static boolean redraw(Taxon taxon){\r
-//             return redraw(EditorController.getNameEditor(taxon)) &&\r
-//                             redraw(EditorController.getDescriptionEditor(taxon));\r
-               \r
-               boolean returnCode = redraw(EditorController.getNameEditor(taxon)) &&\r
-                               redraw(EditorController.getDescriptionEditor(taxon)) &&\r
-                               redraw(EditorController.getImageEditor(taxon));\r
-               getActiveEditor().setFocus();\r
-               return returnCode;\r
-       }\r
-\r
-       private static boolean redraw(AbstractTaxonEditor editor) {     \r
-               if(editor == null || editor.redraw()){\r
-                       \r
-//                     if (getActiveEditor().setFocus())\r
-//                     getActivePage()\r
-                       \r
-                       // Mark editor as changed and unsaved\r
-                       editor.setDirty();      \r
-                       return true;    \r
-               }       \r
-               return false;           \r
-       }\r
-       \r
-       /**\r
-        * @param taxon\r
-        * @param save\r
-        */\r
-       public static void close(Taxon taxon, boolean save) {\r
-               IEditorPart editor;\r
-               try {\r
-                       editor = getEditorByTaxon(taxon);\r
-                       close(editor, save);\r
-               } catch (PartInitException e) {\r
-                       logger.error("Error closing taxon editor", e);\r
-               }\r
-               \r
-       }\r
-\r
-       /**\r
-        * @param editor\r
-        * @param save\r
-        * @throws PartInitException\r
-        */\r
-       private static void close(IEditorPart editor, boolean save)\r
-                       throws PartInitException {\r
-               if (editor != null) {\r
-                       getActivePage().closeEditor(editor, save);\r
-               }\r
-       }\r
-\r
-       public static boolean save(Taxon taxon, boolean confirm) {\r
-               IEditorPart editor = null;\r
-               try {\r
-                       editor = getEditorByTaxon(taxon);\r
-               } catch (PartInitException e) {\r
-                       logger.error("Error saving taxon.", e);\r
-               }\r
-               if (editor != null) {\r
-                       return GlobalController.getActivePage().saveEditor(editor, confirm);\r
-               }\r
-               return false;\r
-       }\r
-\r
-       public static void saveAll(){\r
-               setSaving(true);\r
-               \r
-               // Get all open windows\r
-               for (IEditorPart taxonEditor : getOpenEditors()) {\r
-       \r
-                       // Save the dirty ones\r
-                       if (taxonEditor.isDirty()) {\r
-                               \r
-                               \r
-                               IEditorInput input = taxonEditor.getEditorInput();\r
-                               if (input.getAdapter(Taxon.class) != null) {\r
-                                       Taxon taxon = (Taxon) input.getAdapter(Taxon.class);\r
-                                       CdmSessionDataRepository.getDefault().saveTaxon(taxon);\r
-                                       if (taxonEditor instanceof MultiPageTaxonEditor) {\r
-                                               ((MultiPageTaxonEditor) taxonEditor).setDirtyExtern(false);\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-       \r
-               // Commit the transaction       \r
-               CdmTransactionController.commitTransaction();\r
-       \r
-               // Force library objects to be associated with new transaction\r
-               CdmSessionDataRepository.getDefault().clearNonTaxonData();\r
-               \r
-               // Start a new transaction\r
-               CdmTransactionController.startTransaction();\r
-               \r
-               // Put all open taxa in the new transaction\r
-               CdmTransactionController.addSessionTaxaToTransaction();\r
-               \r
-               setSaving(false);\r
-               // TODO: delete undoHistory\r
-       }\r
-\r
-       public static void setSaving(boolean isSaving) {\r
-               EditorController.isSaving = isSaving;\r
-       }\r
-\r
-       public static boolean isSaving() {\r
-               return isSaving;\r
-       }\r
-\r
-       public static void addNameEditor(\r
-                       Taxon taxon, TaxonNameEditor taxonNameEditor) {\r
-               if (taxonNameEditors == null) {\r
-                       taxonNameEditors = new HashMap<Taxon, TaxonNameEditor>();\r
-               }\r
-               taxonNameEditors.put(taxon, taxonNameEditor);\r
-       }\r
-\r
-       public static TaxonNameEditor getNameEditor(Taxon taxon) {\r
-               if (taxonNameEditors == null) {\r
-                       return null;\r
-               }\r
-               return taxonNameEditors.get(taxon);\r
-       }\r
-\r
-       public static void addDescriptionEditor(\r
-                       Taxon taxon, TaxonDescriptionEditor taxonDescriptionEditor) {\r
-               if (taxonDescriptionEditors == null) {\r
-                       taxonDescriptionEditors = new HashMap<Taxon, TaxonDescriptionEditor>();\r
-               }\r
-               taxonDescriptionEditors.put(taxon, taxonDescriptionEditor);\r
-       }\r
-\r
-       public static TaxonDescriptionEditor getDescriptionEditor(Taxon taxon) {\r
-               if (taxonDescriptionEditors == null) {\r
-                       return null;\r
-               }\r
-               return taxonDescriptionEditors.get(taxon);\r
-       }\r
-       \r
-       /**\r
-        * Returns a set of all currently open \r
-        * <code>MultiPageTaxonEditor</code>s.\r
-        * \r
-        * @return\r
-        */\r
-       public static Set<IEditorPart> getOpenEditors() {\r
-               \r
-               Set<IEditorPart> taxonEditors = new HashSet<IEditorPart>();\r
-               \r
-               for (IEditorReference reference : getActivePage().getEditorReferences()) {\r
-                       IEditorPart editor = reference.getEditor(false);\r
-                       if (editor instanceof MultiPageTaxonEditor) {\r
-                               taxonEditors.add(editor);\r
-                       }\r
-               }\r
-               return taxonEditors;\r
-       }\r
-       \r
-       /**\r
-        * Returns the currently active taxon editor\r
-        * \r
-        * @return the taxon editor that has focus\r
-        */\r
-       public static MultiPageTaxonEditor getActiveEditor(){\r
-               if(getActivePage().getActiveEditor() instanceof MultiPageTaxonEditor){\r
-                       return (MultiPageTaxonEditor) getActivePage().getActiveEditor();\r
-               }\r
-               return null;\r
-       }\r
-\r
-       public static IUndoContext getUndoContext(Taxon taxon) {\r
-                       // TODO make this taxon name editor specific\r
-       //              return getTaxonNameEditor(taxon).getUndoContext();\r
-                       return getUndoContext();\r
-       }\r
-\r
-       public static IUndoContext getUndoContext() {\r
-               return IOperationHistory.GLOBAL_UNDO_CONTEXT;\r
-       }\r
-\r
-       /**\r
-        * @param taxon\r
-        * @return\r
-        */\r
-       public static TaxonImagesEditor getImageEditor(Taxon taxon) {\r
-               if (taxonImagesEditors == null) {\r
-                       return null;\r
-               }\r
-               return taxonImagesEditors.get(taxon);\r
-       }\r
-\r
-       /**\r
-        * @param taxon\r
-        * @param taxonImagesEditor\r
-        */\r
-       public static void addImagesEditor(Taxon taxon,\r
-                       TaxonImagesEditor taxonImagesEditor) {\r
-               if (taxonImagesEditors == null) {\r
-                       taxonImagesEditors = new HashMap<Taxon, TaxonImagesEditor>();\r
-               }\r
-               taxonImagesEditors.put(taxon, taxonImagesEditor);\r
-       }\r
-\r
-\r
-       \r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/GlobalController.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/GlobalController.java
deleted file mode 100644 (file)
index 3d084f5..0000000
+++ /dev/null
@@ -1,230 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.controller;\r
-\r
-import java.net.URL;\r
-import java.util.List;\r
-import java.util.Set;\r
-import java.util.SortedSet;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IOperationHistory;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.Status;\r
-import org.eclipse.jface.action.IStatusLineManager;\r
-import org.eclipse.jface.dialogs.ErrorDialog;\r
-import org.eclipse.jface.window.Window;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.ui.IViewPart;\r
-import org.eclipse.ui.IWorkbenchPage;\r
-import org.eclipse.ui.IWorkbenchPart;\r
-import org.eclipse.ui.ide.undo.WorkspaceUndoUtil;\r
-import org.eclipse.ui.operations.IWorkbenchOperationSupport;\r
-\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.editor.images.UrlDialog;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * A collection of useful methods related to the UI.\r
- * \r
- * @author p.ciardelli\r
- * @created 27.05.2008\r
- * @version 1.0\r
- */\r
-public class GlobalController {\r
-       private static final Logger logger = Logger.getLogger(GlobalController.class);\r
-\r
-       private static List<Feature> preferredFeatureSet;\r
-       private static Set<Rank> preferredRankSet;\r
-       \r
-       /**\r
-        * @return\r
-        */\r
-       public static IWorkbenchPage getActivePage() {\r
-               return TaxEditorPlugin.getDefault().getWorkbench()\r
-                               .getActiveWorkbenchWindow().getActivePage();\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       public static IWorkbenchPart getActivePart() {\r
-               return getActivePage().getActivePart();\r
-       }\r
-       \r
-       /**\r
-        * @return\r
-        */\r
-       public static Shell getShell() {\r
-               return TaxEditorPlugin.getDefault().getWorkbench()\r
-                               .getActiveWorkbenchWindow().getShell();\r
-       }\r
-\r
-       public static IViewPart getViewById(String id) {\r
-               return TaxEditorPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().\r
-                               getActivePage().findView(id);\r
-       }\r
-       \r
-\r
-       public static IWorkbenchOperationSupport getOperationSupport() {\r
-               return TaxEditorPlugin.getDefault().getWorkbench().\r
-                               getOperationSupport();\r
-       }\r
-       \r
-       public static IOperationHistory getOperationHistory() {\r
-//             if (operationHistory == null) {\r
-////                   operationHistory = getOperationSupport().getOperationHistory();\r
-//                     operationHistory = OperationHistoryFactory.getOperationHistory();\r
-//             }\r
-//             return operationHistory;\r
-               return getOperationSupport().getOperationHistory();\r
-       }\r
-\r
-       public static IUndoContext getWorkbenchUndoContext() {\r
-               // TODO make this more specific than GLOBAL_UNDO_CONTEXT\r
-//             return getOperationSupport().getUndoContext();\r
-               return IOperationHistory.GLOBAL_UNDO_CONTEXT;\r
-       }\r
-\r
-       public static void setStatusMessage(String msg) {\r
-               PropertySheetController.getPropertySheet().getViewSite().getActionBars().getStatusLineManager().setMessage(msg); \r
-       }\r
-\r
-       /**\r
-        * Get the type's label out of the session's name relations vocabulary, not directly\r
-        * from the object. \r
-        * \r
-        * @param type\r
-        * @return\r
-        */\r
-       public static String getNameRelationTypeLabel(NameRelationshipType type) {\r
-               boolean isZoological = \r
-                       PreferencesController.getPreferredNomenclaturalCode() \r
-                                       == NomenclaturalCode.ICZN ?     true : false;\r
-               return getNameRelationTypeLabel(type, isZoological);\r
-       }\r
-       \r
-       public static String getNameRelationTypeLabel(NameRelationshipType type, boolean isZoological) {\r
-\r
-               SortedSet<NameRelationshipType> vocab = \r
-                               CdmSessionDataRepository.getDefault().getNameRelationshipTypes();\r
-               for (NameRelationshipType type1 : vocab) {\r
-                       if (type1.equals(type)) {\r
-                               \r
-                               if (isZoological && \r
-                                               type1.equals(NameRelationshipType.BASIONYM())) {\r
-                                       return "original combination for";\r
-                               } else {\r
-                                       return type1.getLabel();\r
-                               }\r
-                       }\r
-               }\r
-               return "";\r
-       }\r
-\r
-       /**\r
-        * Get the inverse representation of the type out of the session's \r
-        * name relations vocabulary, not directly from the object. \r
-        * \r
-        * @param type\r
-        * @return\r
-        */\r
-       public static String getNameRelationInverseTypeLabel(NameRelationshipType type) {\r
-               boolean isZoological = \r
-                       PreferencesController.getPreferredNomenclaturalCode() \r
-                                       == NomenclaturalCode.ICZN ?     true : false;\r
-               return getNameRelationInverseTypeLabel(type, isZoological);\r
-       }\r
-       \r
-       public static String getNameRelationInverseTypeLabel(NameRelationshipType type, boolean isZoological) {\r
-               SortedSet<NameRelationshipType> vocab = \r
-                               CdmSessionDataRepository.getDefault().getNameRelationshipTypes();\r
-               for (NameRelationshipType type1 : vocab) {\r
-                       if (type1.equals(type)) {\r
-                               return type1.getInverseLabel();\r
-                       }\r
-               }\r
-               return "";\r
-       }\r
-       \r
-       private static IStatusLineManager statusLineManager;\r
-\r
-       public static void setStatusLineManager(IStatusLineManager manager) {\r
-               statusLineManager = manager;\r
-       }\r
-\r
-       public static void setStatusLine(String message) {\r
-               statusLineManager.setMessage(message);\r
-       }\r
-       \r
-       public static IProgressMonitor getStatusLineProgressMonitor() {\r
-               statusLineManager.setCancelEnabled(false);\r
-               return statusLineManager.getProgressMonitor();\r
-       }\r
-\r
-       public static List<Feature> getPreferredFeatures() {\r
-               return preferredFeatureSet;\r
-       }\r
-\r
-       public static void setPreferredFeatures(List<Feature> preferredFeatureSet) {\r
-               GlobalController.preferredFeatureSet = preferredFeatureSet;\r
-       }\r
-\r
-       public static Set<Rank> getPreferredRanks() {\r
-               return preferredRankSet;\r
-       }\r
-\r
-       public static void setPreferredRanks(Set<Rank> preferredRankSet) {\r
-               GlobalController.preferredRankSet = preferredRankSet;\r
-       }\r
-\r
-       public static void addPreferredRank(Rank rank) {\r
-               preferredRankSet.add(rank);\r
-       }\r
-\r
-       public static void addPreferredFeature(Feature feature) {\r
-               GlobalController.preferredFeatureSet.add(feature);              \r
-       }\r
-       \r
-       public static void executeOperation(IUndoableOperation operation){\r
-               try {\r
-                       IStatus status = getOperationHistory().execute(operation, getStatusLineProgressMonitor(),\r
-                                                               WorkspaceUndoUtil.getUIInfoAdapter(getShell()));\r
-                       String statusString = status.equals(Status.OK_STATUS) ? "completed" : "cancelled";\r
-                       setStatusLine(operation.getLabel() + " " + statusString + ".");\r
-               } catch (ExecutionException e) {\r
-                       logger.error("Error executing operation: " + operation.getLabel(), e);\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * Displays exception details in a dialog. Only shows first line in stack trace.\r
-        *<p>\r
-        *To show entire stack trace, implement following: \r
-        * http://rubenlaguna.com/wp/2007/07/25/eclipse-error-reporting-exception-stacktrace-details/\r
-        */\r
-       public static void openError(Exception exception) {\r
-               IStatus status = new Status(IStatus.ERROR, TaxEditorPlugin.PLUGIN_ID, \r
-                               "Joe mama", exception); \r
-               ErrorDialog.openError(GlobalController.getShell(), \r
-                               "Could not init application controller", \r
-                               "Could not init application controller", \r
-                               status);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/PreferencesController.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/PreferencesController.java
deleted file mode 100644 (file)
index 7acbf93..0000000
+++ /dev/null
@@ -1,270 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.controller;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Collections;\r
-import java.util.HashMap;\r
-import java.util.HashSet;\r
-import java.util.List;\r
-import java.util.Map;\r
-import java.util.Set;\r
-import java.util.SortedSet;\r
-import java.util.TreeMap;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.preference.IPreferenceStore;\r
-\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 05.12.2008\r
- * @version 1.0\r
- */\r
-public class PreferencesController {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(PreferencesController.class);\r
-\r
-\r
-       public static void setNomenclaturalCode(String preferredCode) {\r
-               getPrefStore().setValue(ITaxEditorConstants.CODE_PREFERENCE, preferredCode);\r
-       }\r
-       \r
-       public static void setDefaultNomenclaturalCode() {\r
-               setNomenclaturalCode(ITaxEditorConstants.DEFAULT_CODE_PREFERENCE);\r
-       }\r
-\r
-       public static String getPreferredNomenclaturalCodeAsString() {\r
-               String nameCodePreference = getNameCodePreference();\r
-               \r
-               if (nameCodePreference.equals(ITaxEditorConstants.CODE_PREFERENCE_ICBN)) {\r
-                       return "International Code of Botanical Nomenclature (ICBN)";\r
-               } else if (nameCodePreference.equals(ITaxEditorConstants.CODE_PREFERENCE_ICZN)) {\r
-                       return "International Code of Zoological Nomenclature (ICZN)";\r
-               }\r
-               return null;\r
-       }\r
-       \r
-       /**\r
-        * @return\r
-        */\r
-       public static NomenclaturalCode getPreferredNomenclaturalCode() {\r
-       \r
-               String nameCodePreference = getNameCodePreference();\r
-                               \r
-               if (nameCodePreference.equals(ITaxEditorConstants.CODE_PREFERENCE_ICBN)) {\r
-                       return NomenclaturalCode.ICBN;\r
-               } else if (nameCodePreference.equals(ITaxEditorConstants.CODE_PREFERENCE_ICZN)) {\r
-                       return NomenclaturalCode.ICZN;\r
-               }\r
-               return null;\r
-       }\r
-       \r
-       private static String getNameCodePreference() {\r
-               return getPrefStore().getString(ITaxEditorConstants.CODE_PREFERENCE);\r
-       }\r
-\r
-       /**\r
-        * Returns a <code>Set</code> of the <code>Feature</code>s that the user has chosen\r
-        * to have shown in preferences.\r
-        * </p>\r
-        * <p>\r
-        * <code>Feature</code>s are shown unless otherwise specified.\r
-        * </p>\r
-        * @return\r
-        */\r
-       public static List<Feature> getPreferredFeatures() {\r
-               \r
-               // Initialize preferredFeatureSet as necessary\r
-               if (GlobalController.getPreferredFeatures() == null) {\r
-                               \r
-                       GlobalController.setPreferredFeatures(new ArrayList<Feature>());\r
-                       for (Feature feature : CdmSessionDataRepository.getDefault().getFeatures()) {\r
-                       \r
-                               // If the feature is set to show, add it to preferredFeatureSet\r
-                               if (PreferencesController.getFeaturePreference(feature)) {\r
-                                       GlobalController.addPreferredFeature(feature);\r
-                               }\r
-                               \r
-                       }\r
-               }\r
-               return GlobalController.getPreferredFeatures();\r
-       }\r
-\r
-       /**\r
-        * True if <code>Feature</code> is set to "show" in preferences.\r
-        * \r
-        * @param feature\r
-        * @return\r
-        */\r
-       public static boolean getFeaturePreference(Feature feature) {\r
-               \r
-               String preferenceKey = getPreferenceKey(feature);\r
-               \r
-               // If feature does not yet have a pref, set it to true\r
-               if (!PreferencesController.getPrefStore().contains(preferenceKey)) {\r
-                       PreferencesController.getPrefStore().setDefault(preferenceKey, true);\r
-               }\r
-               \r
-               return PreferencesController.getPrefStore().getBoolean(preferenceKey);\r
-       }\r
-\r
-       /**\r
-        * Set the show state of a <code>Feature</code> in the \r
-        * <code>PreferenceStore</code>.\r
-        * <p>\r
-        * Also sets <code>preferredFeatureSet</code> to null to force it be\r
-        * re-populated the next time {@link getPreferredFeatures} is called.\r
-        * \r
-        * @param feature\r
-        * @param show\r
-        */\r
-       public static void setFeaturePreference(Feature feature, boolean show) {\r
-               GlobalController.setPreferredFeatures(null);\r
-               PreferencesController.getPrefStore().setValue(PreferencesController.getPreferenceKey(feature), show);\r
-       }\r
-\r
-       public static IPreferenceStore getPrefStore() {\r
-               return TaxEditorPlugin.getDefault().getPreferenceStore();\r
-       }\r
-\r
-       /**\r
-        * Construct a unique key using <code>Feature</code>'s <code>Uuid</code>\r
-        * \r
-        * @param feature\r
-        * @return\r
-        */\r
-       private static String getPreferenceKey(Feature feature) {\r
-               return ITaxEditorConstants.FEATURE_PREFERENCE \r
-                               . concat(".")\r
-                               . concat(feature.getUuid().toString());\r
-       }\r
-\r
-       /**\r
-        * Returns a <code>Set</code> of the <code>Rank</code>s that the user has chosen\r
-        * to have shown in preferences.\r
-        * </p>\r
-        * <p>\r
-        * <code>Rank</code>s are shown unless otherwise specified.\r
-        * </p>\r
-        * @return\r
-        */\r
-       public static Set<Rank> getPreferredRanks() {\r
-               \r
-               // Initialize preferredRankSet as necessary\r
-               if (GlobalController.getPreferredRanks() == null) {\r
-                       \r
-                       GlobalController.setPreferredRanks(new HashSet<Rank>());        \r
-                                               \r
-                       SortedSet<Rank> ranks = CdmSessionDataRepository.getDefault().getRanks();\r
-                       if (ranks != null) {\r
-                       \r
-                               for (Rank rank : CdmSessionDataRepository.getDefault().getRanks()) {\r
-                                       \r
-                                       // If the feature is set to show, add it to preferredFeatureSet\r
-                                       if (PreferencesController.getRankPreference(rank)) {\r
-                                               GlobalController.addPreferredRank(rank);\r
-                                       }\r
-                               }\r
-                       } // else { TODO: error message\r
-                       \r
-               }\r
-               return GlobalController.getPreferredRanks();\r
-       }\r
-\r
-       /**\r
-        * True if <code>Rank</code> is set to "show" in preferences.\r
-        * \r
-        * @param rank\r
-        * @return\r
-        */\r
-       public static boolean getRankPreference(Rank rank) {\r
-               \r
-               String preferenceKey = PreferencesController.getPreferenceKey(rank);\r
-               \r
-               // If rank does not yet have a pref, set it to true\r
-               if (!getPrefStore().contains(preferenceKey)) {\r
-                       getPrefStore().setDefault(preferenceKey, true);\r
-               }\r
-               \r
-               return getPrefStore().getBoolean(preferenceKey);\r
-       }\r
-\r
-       /**\r
-        * Set the show state of a <code>Rank</code> in the \r
-        * <code>PreferenceStore</code>.\r
-        * <p>\r
-        * Also sets <code>preferredRankSet</code> to null to force it be\r
-        * re-populated the next time {@link getPreferredRanks} is called.\r
-        * \r
-        * @param rank\r
-        * @param show\r
-        */     \r
-       public static void setRankPreference(Rank rank, boolean show) {\r
-               GlobalController.setPreferredRanks(null);\r
-               getPrefStore().setValue(PreferencesController.getPreferenceKey(rank), show);\r
-               \r
-       }\r
-\r
-       /**\r
-        * Construct a unique key using <code>Rank</code>'s <code>Uuid</code>\r
-        * \r
-        * @param feature\r
-        * @return\r
-        */\r
-       private static String getPreferenceKey(Rank rank) {\r
-               return ITaxEditorConstants.RANK_PREFERENCE \r
-                               . concat(".")\r
-                               . concat(rank.getUuid().toString());\r
-       }\r
-\r
-       /**\r
-        * Returns a new name object that conforms to the nomenclatural\r
-        * code specified in user preferences. \r
-        * \r
-        * @return\r
-        */\r
-       public static NonViralName getInstanceOfPreferredNameClass() {\r
-               NomenclaturalCode code = getPreferredNomenclaturalCode();\r
-               \r
-               // Check whether name code preference needs to be initialized\r
-               if (code == null) {\r
-                       setDefaultNomenclaturalCode();\r
-               }\r
-               \r
-               if (code.equals(NomenclaturalCode.ICBN)) {\r
-                       return BotanicalName.NewInstance(null);\r
-               } else if (code.equals(NomenclaturalCode.ICZN)) {\r
-                       return ZoologicalName.NewInstance(null);                        \r
-               }\r
-               return NonViralName.NewInstance(null);\r
-       }\r
-\r
-       /**\r
-        * Appends the code (i.e. ICBN or ICZN) specified in the user preferences\r
-        * to a string. The result is separated by a period: "<code>key.ICBN</code>".\r
-        * \r
-        * @param key\r
-        * @return\r
-        */\r
-       public static String concatCodeMessageSuffix(String key) {\r
-               String code = getNameCodePreference();\r
-               return key + "." + code;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/PropertySheetController.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/PropertySheetController.java
deleted file mode 100644 (file)
index 83cd427..0000000
+++ /dev/null
@@ -1,180 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.controller;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-import org.eclipse.ui.IActionBars;\r
-import org.eclipse.ui.IPageLayout;\r
-import org.eclipse.ui.IViewPart;\r
-import org.eclipse.ui.IViewReference;\r
-import org.eclipse.ui.views.properties.PropertySheet;\r
-import org.eclipse.ui.views.properties.PropertySheetPage;\r
-\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.propertysheet.EditorPropertySheetEntry;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 20.01.2009\r
- * @version 1.0\r
- */\r
-public class PropertySheetController {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(PropertySheetController.class);\r
-\r
-       public static IViewPart getPropertySheet() {\r
-               for (IViewReference reference : GlobalController.getActivePage().getViewReferences()) {\r
-                       if (reference.getId().equals(IPageLayout.ID_PROP_SHEET)) {\r
-                               logger.warn(reference.getView(false).getSite().getPart().getTitle());\r
-                               return reference.getView(false);\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       /**\r
-        * By default, property sheet has buttons in the toolbar for \r
-        * "Show advanced properties" and "Show categories".\r
-        * <p>\r
-        * This is confusing for the user, hence a method to remove them\r
-        * until such time as advanced properties or categories are implemented.\r
-        */\r
-       public static void hidePropertySheetToolbar() {\r
-               PropertySheet propertySheet = (PropertySheet) getPropertySheet();\r
-               IActionBars actionBars = propertySheet.getViewSite().getActionBars();\r
-               actionBars.getToolBarManager().removeAll();\r
-               actionBars.getMenuManager().removeAll();\r
-       }\r
-\r
-       /**\r
-                * The property sheet listener ensures only property sheets\r
-                *      with data cause the Property Sheet to be updated.\r
-                */\r
-               public static void addPropertySheetInputListener() {\r
-                       IViewPart propertySheet = getPropertySheet();\r
-       //              propertySheet.get\r
-                       PropertySheet ps = (PropertySheet) propertySheet;\r
-       //              ps.addPartPropertyListener(listener)\r
-       //              ps.addPropertyListener(l)\r
-               }\r
-\r
-       public static void setPropertySheetTree(Tree tree) {\r
-               TaxEditorPlugin.getDefault().setPropertySheetTree(tree);                \r
-       }\r
-\r
-       public static Tree getPropertySheetTree() {\r
-               return TaxEditorPlugin.getDefault().getPropertySheetTree();             \r
-       }\r
-\r
-       public static void setPropertySheetPage(PropertySheetPage page) {\r
-               TaxEditorPlugin.getDefault().setPropertySheetPage(page);\r
-       }\r
-\r
-       public static PropertySheetPage getPropertySheetPage() {\r
-               return TaxEditorPlugin.getDefault().getPropertySheetPage();     \r
-       }\r
-\r
-       /**\r
-        *              UiUtil.paintPropertySheetRow(P_DATEPUBLISHED, new Color(Display.getDefault(), WarningAnnotation.WARNING_RGB), true);\r
-        *              UiUtil.unpaintPropertySheetRow(P_DATEPUBLISHED);\r
-        * \r
-        * @param id\r
-        * @param color\r
-        * @param doPaintChildren\r
-        */\r
-       public static void paintPropertySheetRow(String id, Color color, boolean doPaintChildren) {\r
-               \r
-               // Catch null property sheet name\r
-               if (id == null) {\r
-                       return;\r
-               }\r
-               \r
-               // Catch uninit'ed property sheet tree\r
-               if (getPropertySheetTree() == null) {\r
-                       return;\r
-               }\r
-               \r
-               paintPropertySheetRow(id, color, doPaintChildren, getPropertySheetTree());\r
-       }\r
-\r
-       private static void paintPropertySheetRow(String id, Color color, boolean doPaintChildren, Object treeOrItem) {\r
-               \r
-               // Init items w zero-length array\r
-               TreeItem[] items = new TreeItem[]{};\r
-               \r
-               // Get child items depending to class\r
-               if (treeOrItem instanceof Tree) {\r
-                       items = ((Tree) treeOrItem).getItems();\r
-               }\r
-               if (treeOrItem instanceof TreeItem) {\r
-                       items = ((TreeItem) treeOrItem).getItems();\r
-               }\r
-               \r
-               // If array hasn't been populated by the above, return\r
-               if (items.length == 0) {\r
-                       return;\r
-               }\r
-       \r
-               // Prop. sheet id's take the form "01:xxxx" for sorting - truncate\r
-               id = EditorPropertySheetEntry.truncateDisplayName(id);\r
-               \r
-               // Iterate through child items\r
-               for (TreeItem item : items) {\r
-       \r
-                       // Item found, paint it\r
-                       if (id.equals(item.getText())) {\r
-                               paintItem(item, color, doPaintChildren);\r
-                               return;\r
-                       }                       \r
-       \r
-                       // Recursively search for item to paint in child items\r
-                       if (item.getItemCount() > 0) {\r
-                               paintPropertySheetRow(id, color, doPaintChildren, item);\r
-                       }\r
-               }       \r
-       }\r
-\r
-       public static void unpaintPropertySheetRow(String id) {\r
-               \r
-               // Catch uninit'ed property sheet tree\r
-               if (getPropertySheetTree() == null) {\r
-                       return;\r
-               }\r
-               \r
-               // Get tree's background color to "unpaint"\r
-               Color color = getPropertySheetTree().getBackground();\r
-               \r
-               paintPropertySheetRow(id, color, true);\r
-       }\r
-\r
-       /**\r
-        * Note: children are only painted if submenu has already been created, i.e. opened once.\r
-        * \r
-        * @param item\r
-        * @param color\r
-        * @param doPaintChildren\r
-        */\r
-       public static void paintItem(TreeItem item, Color color, boolean doPaintChildren) {\r
-               \r
-               // Paint the item\r
-               item.setBackground(color);\r
-               \r
-               // Recursively paint child items if requested\r
-               if (doPaintChildren) {\r
-                       for (TreeItem childItem : item.getItems()) {\r
-                               paintItem(childItem, color, doPaintChildren);\r
-                       }\r
-               }\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/SearchController.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/SearchController.java
deleted file mode 100644 (file)
index 633717f..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.controller;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.IViewPart;\r
-import org.eclipse.ui.IWorkbenchPage;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.taxeditor.navigation.SearchResult;\r
-import eu.etaxonomy.taxeditor.navigation.SearchResultView;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 20.01.2009\r
- * @version 1.0\r
- */\r
-public class SearchController {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(SearchController.class);\r
-       private static String srv = "";\r
-\r
-       public static void openSearchResultsView(SearchResult searchResult) {\r
-               srv += "1";\r
-               logger.info("Opening search results window " + srv);\r
-               try {\r
-                       IViewPart resultsView = GlobalController.getActivePage().showView(SearchResultView.ID, \r
-                                       srv, IWorkbenchPage.VIEW_VISIBLE);\r
-                       ((SearchResultView) resultsView).setResult(searchResult);\r
-               } catch (PartInitException e) {\r
-                       logger.error("Error opening search result.", e);\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/TreeController.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/controller/TreeController.java
deleted file mode 100644 (file)
index 5dd750e..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.controller;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.jface.viewers.ISelection;\r
-import org.eclipse.jface.viewers.TreeSelection;\r
-import org.eclipse.ui.IViewPart;\r
-import org.eclipse.ui.handlers.HandlerUtil;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.navigation.TaxonomicTreeView;\r
-import eu.etaxonomy.taxeditor.navigation.TaxonomicTreeViewer;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 20.01.2009\r
- * @version 1.0\r
- */\r
-public class TreeController {\r
-       private static final Logger logger = Logger.getLogger(TreeController.class);\r
-       private static IViewPart treeView;\r
-\r
-       /**\r
-        * Returns the <code>TaxonomicTreeViewer</code> used for navigation. Not to \r
-        * be confused with the window that contains it, <code>TaxonomicTreeView</code>. \r
-        * \r
-        * @return\r
-        */\r
-       public static TaxonomicTreeViewer getTreeViewer() {\r
-               TaxonomicTreeView view = getTreeView();\r
-               if (view == null) {\r
-                       return null;\r
-               }\r
-               return view.getTreeViewer();\r
-       }\r
-\r
-       /**\r
-        * @see eu.etaxonomy.taxeditor.navigation.TaxonomicTreeView#createTreeViewer()\r
-        * \r
-        * @return\r
-        */\r
-       public static TaxonomicTreeViewer createTreeViewer() {\r
-               TaxonomicTreeView view = getTreeView();\r
-               if (view == null) {\r
-                       return null;\r
-               }\r
-               return view.createTreeViewer();\r
-       }\r
-\r
-       /**\r
-        * Returns the <code>TaxonomicTreeView</code> containing the \r
-        * <code>TaxonomicTreeViewer</code> used for navigation. \r
-        * \r
-        * @return\r
-        */     \r
-       public static TaxonomicTreeView getTreeView() {\r
-               if (treeView == null) {\r
-                       treeView = GlobalController.getViewById(TaxonomicTreeView.ID);\r
-                       if (!(treeView instanceof TaxonomicTreeView)) {\r
-                               treeView = null;\r
-                       }\r
-               }\r
-               return (TaxonomicTreeView) treeView;\r
-       }\r
-       \r
-       \r
-       /**\r
-        * Returns the selected taxon for referencing in context menus\r
-        * \r
-        * @param event \r
-        * @return\r
-        */\r
-       public static Taxon getCurrentSelection(ExecutionEvent event){\r
-               \r
-               ISelection menuSelection = HandlerUtil.getActiveMenuSelection(event);\r
-               \r
-               // The selection should always be a tree selection since we are in the \r
-               // taxonomic tree view. Just in case this will be used in another spot.\r
-               if(menuSelection instanceof TreeSelection){\r
-                       Taxon taxon = (Taxon) ((TreeSelection) menuSelection).getFirstElement();\r
-                       logger.debug("Selected taxon: " + taxon);\r
-                       return taxon;\r
-               }\r
-               return null;\r
-       }\r
-       \r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmDataSourceDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmDataSourceDialog.java
deleted file mode 100644 (file)
index 3db8f42..0000000
+++ /dev/null
@@ -1,644 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.datasource;\r
-\r
-import java.util.ArrayList;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.jface.dialogs.IDialogConstants;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.jface.viewers.ArrayContentProvider;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.IStructuredSelection;\r
-import org.eclipse.jface.viewers.LabelProvider;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.CCombo;\r
-import org.eclipse.swt.events.ModifyEvent;\r
-import org.eclipse.swt.events.ModifyListener;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import eu.etaxonomy.cdm.common.CdmUtils;\r
-import eu.etaxonomy.cdm.database.CdmDataSource;\r
-import eu.etaxonomy.cdm.database.CdmPersistentDataSource;\r
-import eu.etaxonomy.cdm.database.DatabaseTypeEnum;\r
-import eu.etaxonomy.cdm.database.ICdmDataSource;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-/**\r
- * List of database types comes from {@link eu.etaxonomy.cdm.database.DatabaseTypeEnum}.\r
- * \r
- * @author p.ciardelli\r
- * @created 11.12.2008\r
- * @version 1.0\r
- */\r
-public class CdmDataSourceDialog extends Dialog {\r
-       private static final Logger logger = Logger.getLogger(CdmDataSourceDialog.class);\r
-       \r
-       private Text portText;\r
-       private Text serverText;\r
-       private Text passwordText;\r
-       private Text databaseNameText;\r
-       private Text datasourceNameText;\r
-       private CCombo databaseTypeCombo;\r
-       private Text usernameText;\r
-       \r
-       private Composite container;\r
-       private Composite editDatasourceComposite;\r
-       private Group authenticationGroup;\r
-       private Group locationGroup;\r
-       private Button saveButton;\r
-       private Composite dbConfigComposite;\r
-\r
-       private ArrayList<DatabaseTypeEnum> databaseTypes;\r
-       private ICdmDataSource dataSource = null;\r
-\r
-       private TableViewer dataSourceViewer;\r
-\r
-       private Button btnEdit;\r
-\r
-       private Button btnRemove;\r
-\r
-       private ICdmDataSource selectedDataSource;\r
-\r
-       private Shell parentShell;\r
-\r
-       /**\r
-        * Any time user modifies datasource properties, force a save or a cancel\r
-        */\r
-       ModifyListener modifyListener = new ModifyListener() {\r
-               public void modifyText(ModifyEvent e) {\r
-                       forceUserToSave(true);\r
-               }\r
-       };\r
-       \r
-       /**\r
-        * Create the dialog\r
-        * @param parentShell\r
-        */\r
-       public CdmDataSourceDialog(Shell parentShell) {\r
-               super(parentShell);\r
-               this.parentShell = parentShell;\r
-       }\r
-       \r
-       protected void configureShell(Shell shell) {\r
-               super.configureShell(shell);\r
-               shell.setText("Edit Data Sources");\r
-       }\r
-       \r
-       /**\r
-        * Create contents of the dialog\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected Control createDialogArea(Composite parent) {\r
-               \r
-               // Create top-level composite \r
-               container = (Composite) super.createDialogArea(parent);\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 5;\r
-               container.setLayout(gridLayout);\r
-\r
-               // Create buttons to edit list\r
-               btnEdit = new Button(container, SWT.NONE);\r
-               btnEdit.setText("Edit ...");\r
-               btnEdit.setEnabled(false);\r
-               btnEdit.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-//                             if (getSelectedTypeDesignation() != null) {     \r
-//                                     createTypeDesignationWizard(getSelectedTypeDesignation());\r
-//                             }\r
-                               if (getSelectedDataSource() != null) {\r
-                                       showDatasource(getSelectedDataSource());\r
-                               }\r
-                       }\r
-               });\r
-\r
-               btnRemove = new Button(container, SWT.NONE);\r
-               btnRemove.setText("Remove");\r
-               btnRemove.setEnabled(false);\r
-               btnRemove.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               if (getSelectedDataSource() != null) {\r
-                                       removeDataSource(getSelectedDataSource());\r
-                                       setSelectedDataSource(null);\r
-                               }\r
-                       }\r
-               });\r
-               \r
-               final Button btnAdd = new Button(container, SWT.NONE);\r
-               final GridData gd_btnAdd = new GridData(SWT.RIGHT, SWT.CENTER, true,\r
-                               false);\r
-               btnAdd.setLayoutData(gd_btnAdd);\r
-               btnAdd.setText("Add ...");\r
-               btnAdd.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               showNewDatasource();\r
-                       }\r
-               });\r
-               \r
-               // Create viewer for datasource list\r
-               dataSourceViewer = new TableViewer(container, SWT.BORDER);\r
-               GridData viewerLayout = new GridData(SWT.LEFT, SWT.FILL, false, true, 3, 1);\r
-               viewerLayout.widthHint = 162;\r
-               dataSourceViewer.getTable().setLayoutData(viewerLayout);\r
-               \r
-               // Set providers for datasource list\r
-               dataSourceViewer.setContentProvider(new ArrayContentProvider());\r
-               dataSourceViewer.setLabelProvider(new LabelProvider() {\r
-                       public String getText(Object element) {\r
-                               if (element instanceof ICdmDataSource) {\r
-                                       return ((ICdmDataSource) element).getName();\r
-                               } \r
-                               return super.getText(element);\r
-                       }\r
-               });\r
-               \r
-               // Add data sources to viewer           \r
-               refreshDataSourceViewer();\r
-               \r
-               // Double-clicking on a dataSource in the viewer puts it in the editable area\r
-               dataSourceViewer.addDoubleClickListener(new IDoubleClickListener() {\r
-                       public void doubleClick(DoubleClickEvent event) {\r
-                               \r
-                               Object dataSource = \r
-                                               ((IStructuredSelection) event.getSelection()).\r
-                                               getFirstElement();\r
-                               \r
-                               if (dataSource instanceof ICdmDataSource) {\r
-                                       \r
-                                       // Existing datasource\r
-                                       showDatasource((ICdmDataSource) dataSource);\r
-                               } else {\r
-                                       \r
-                                       // New datasource\r
-                                       showDatasource(null);\r
-                               }\r
-                       }\r
-               });\r
-               \r
-               // Create "remove datasource" rt-click menu\r
-               Table dataSourceControl = dataSourceViewer.getTable();\r
-               final MenuManager manager = new MenuManager();\r
-               final Menu menu = manager.createContextMenu(dataSourceControl);\r
-               dataSourceControl.setMenu(menu);\r
-               \r
-               // Add right-click menu to delete datasources\r
-               dataSourceControl.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-\r
-                               setEnableTypeDesignationButtons(true);\r
-                               \r
-                               // Get content of widget's data field\r
-                               if (e.item.getData() instanceof ICdmDataSource) {\r
-                                       setSelectedDataSource((ICdmDataSource) e.item.getData());                                       \r
-                               }\r
-                               \r
-                               \r
-                               // Clear menu\r
-//                             manager.removeAll();\r
-                                       \r
-                               // Only persistent data sources can be removed -\r
-                               //      H2 database and "New datasource" entry remain untouched\r
-//                             if (data instanceof CdmPersistentDataSource) {\r
-//                                     manager.add(new RemoveDataSourceAction((CdmPersistentDataSource) data));\r
-//                             }\r
-                       }\r
-               });\r
-\r
-               // Create editDatasourceComposite to display a dataSource's name and type\r
-               editDatasourceComposite = new Composite(container, SWT.NONE);\r
-               GridData datasourceGridData = new GridData(SWT.FILL, SWT.TOP, true, true);\r
-               editDatasourceComposite.setLayoutData(datasourceGridData);\r
-               GridLayout datasourceLayout = new GridLayout();\r
-               datasourceLayout.numColumns = 2;\r
-               editDatasourceComposite.setLayout(datasourceLayout);\r
-               \r
-               // Create label and input for dataSource name\r
-               Label datasourceNameLabel = new Label(editDatasourceComposite, SWT.NONE);\r
-               datasourceNameLabel.setText("Datasource Name:");\r
-               datasourceNameText = new Text(editDatasourceComposite, SWT.BORDER);\r
-               datasourceNameText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
-               // Create label and dropdown for database type          \r
-               Label databaseTypeLabel = new Label(editDatasourceComposite, SWT.NONE);\r
-               databaseTypeLabel.setText("Database Type:");\r
-               databaseTypeCombo = new CCombo(editDatasourceComposite, SWT.BORDER);\r
-               GridData comboLayout = new GridData(SWT.FILL, SWT.CENTER, false, false);\r
-               databaseTypeCombo.setLayoutData(comboLayout);\r
-               populateComboBoxItems();        \r
-               \r
-               // Create listener to display database type-specific config options\r
-               databaseTypeCombo.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               \r
-                               // Get database type at the selected index\r
-                               DatabaseTypeEnum type = databaseTypes.get(databaseTypeCombo.getSelectionIndex());\r
-                               \r
-                               // Display type-specific input fields\r
-                               showDatabaseConfig(dataSource, type);\r
-                       }\r
-               });\r
-               \r
-               // Hide editable fields until a dataSource is chosen\r
-               editDatasourceComposite.setVisible(false);\r
-               \r
-               return container;\r
-       }\r
-\r
-       /**\r
-        * \r
-        */\r
-       protected void showNewDatasource() {\r
-               showDatasource(null);\r
-       }\r
-\r
-       /**\r
-        * @param selectedDataSource\r
-        */\r
-       protected void removeDataSource(ICdmDataSource dataSource) {\r
-               \r
-               if (dataSource instanceof CdmPersistentDataSource) {\r
-               \r
-                       // Delete from persistent data sources\r
-                       CdmDataSourceRepository.getDefault().delete((CdmPersistentDataSource) dataSource);\r
-               \r
-                       // Refresh list of data sources to reflect changes\r
-                       refreshDataSourceViewer();\r
-               \r
-               } else {\r
-                       MessageDialog.openInformation(parentShell, "Data source not persistent", \r
-                                       "This data source cannot be removed. Only persistent data sources can be removed.");\r
-               }\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       protected ICdmDataSource getSelectedDataSource() {\r
-               return selectedDataSource;\r
-       }\r
-\r
-       /**\r
-        * \r
-        */\r
-       protected void setSelectedDataSource(ICdmDataSource selectedDataSource) {\r
-               this.selectedDataSource = selectedDataSource;\r
-       }\r
-\r
-       /**\r
-        * @param enabled\r
-        */\r
-       protected void setEnableTypeDesignationButtons(boolean enabled) {\r
-               btnEdit.setEnabled(enabled);\r
-               btnRemove.setEnabled(enabled);\r
-       }\r
-\r
-       private void showDatasource(ICdmDataSource dataSource) {\r
-               \r
-               // Put dataSource in field\r
-               this.dataSource = dataSource;\r
-               \r
-               // Make editable fields visible\r
-               editDatasourceComposite.setVisible(true);\r
-               \r
-               // Remove any existing db config data\r
-               removeDbConfigFields();\r
-               \r
-               // Populate name and database type if this is a non-null dataSource\r
-               if (dataSource != null) {\r
-                       datasourceNameText.setText(dataSource.getName());\r
-                       datasourceNameText.setEnabled(false);\r
-                       selectDatabaseType(dataSource.getDatabaseType());\r
-                       databaseTypeCombo.setEnabled(false);\r
-               } else {\r
-                       datasourceNameText.setText("");\r
-                       datasourceNameText.setEnabled(true);\r
-                       databaseTypeCombo.setText(""); // for some reason, .deselectAll and .clearSelection don't work as advertised\r
-                       databaseTypeCombo.setEnabled(true);\r
-               }\r
-               \r
-       }\r
-       \r
-       private void showDatabaseConfig(ICdmDataSource dataSource, DatabaseTypeEnum type) {\r
-               if (type.equals(DatabaseTypeEnum.MySQL)) {\r
-                       createMySqlForm(dataSource);\r
-               } else {\r
-                       // TODO Intrusive - change to text\r
-                       MessageDialog.openInformation(GlobalController.getShell(), "Database not yet implemented", \r
-                                       "Creation or editing of datasources using a(n) '" + type.getName() + "' database not yet implemented.");\r
-               }\r
-       }\r
-       \r
-       private void selectDatabaseType(DatabaseTypeEnum type) {\r
-               \r
-               int i = 0;\r
-               \r
-               // Go through types list until match is found\r
-               for (DatabaseTypeEnum typeInList : databaseTypes ) {\r
-                       if (typeInList.equals(type)) {\r
-                               \r
-                               // Set combo to the type\r
-                               databaseTypeCombo.select(i);\r
-                               break;\r
-                       }\r
-                       i++;\r
-               }\r
-               \r
-               // Display type-specific input fields\r
-               showDatabaseConfig(dataSource, type);\r
-               \r
-//             // If we're this far, database type was not in the list \r
-//             MessageDialog.openInformation(UiUtil.getShell(), "Database not yet implemented", \r
-//                             "This dataSource expects a database type '" + type.getName() + \r
-//                             "', which is not in the Taxonomic Editor's list of expected databases.");\r
-       }\r
-       \r
-       private void populateComboBoxItems() {\r
-               \r
-               // Init DB types\r
-               if (databaseTypes == null) {\r
-                       databaseTypes = new ArrayList<DatabaseTypeEnum>();\r
-               }\r
-               \r
-               // Add types to the type drop-down and to the types collection\r
-               for (DatabaseTypeEnum type : DatabaseTypeEnum.getAllTypes()) {\r
-                       databaseTypeCombo.add(type.getName());\r
-                       databaseTypes.add(type);\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Create contents of the button bar\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected void createButtonsForButtonBar(Composite parent) {\r
-               createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,\r
-                               true);\r
-               createButton(parent, IDialogConstants.CANCEL_ID,\r
-                               IDialogConstants.CANCEL_LABEL, false);\r
-       }\r
-\r
-       /**\r
-        * Return the initial size of the dialog\r
-        */\r
-       @Override\r
-       protected Point getInitialSize() {\r
-               return new Point(500, 375);\r
-       }\r
-\r
-       private void removeDbConfigFields() {\r
-               // Init db config area by removing all children\r
-               if (dbConfigComposite != null) {\r
-                       for (Control child : dbConfigComposite.getChildren()) {\r
-                               child.dispose();\r
-                       }\r
-               }\r
-       }\r
-       \r
-       private void createH2Form() {\r
-               \r
-       }\r
-       \r
-       private void createMySqlForm(final ICdmDataSource dataSource) {\r
-\r
-               // Create composite for db config as necessary\r
-               if (dbConfigComposite == null) {\r
-                       dbConfigComposite = new Composite(editDatasourceComposite, SWT.NONE);\r
-                       dbConfigComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));\r
-                       GridLayout formLayout = new GridLayout();\r
-                       formLayout.numColumns = 2;\r
-                       dbConfigComposite.setLayout(formLayout);\r
-               }\r
-               \r
-               // Create group composite for authentication data\r
-               authenticationGroup = new Group(dbConfigComposite, SWT.NONE);\r
-               authenticationGroup.setText("Authentication");\r
-               authenticationGroup.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
-               GridLayout authenticationLayout = new GridLayout();\r
-               authenticationLayout.numColumns = 2;\r
-               authenticationGroup.setLayout(authenticationLayout);\r
-\r
-               // Create database name label\r
-               Label databaseNameLabel = new Label(authenticationGroup, SWT.NONE);\r
-               databaseNameLabel.setText("Database Name:");\r
-\r
-               // Create database name input\r
-               databaseNameText = new Text(authenticationGroup, SWT.BORDER);\r
-               databaseNameText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
-               // Create username label\r
-               Label usernameLabel = new Label(authenticationGroup, SWT.NONE);\r
-               usernameLabel.setText("User Name:");\r
-\r
-               // Create username input\r
-               usernameText = new Text(authenticationGroup, SWT.BORDER);\r
-               usernameText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               \r
-               // Create password label\r
-               Label passwordLabel = new Label(authenticationGroup, SWT.NONE);\r
-               passwordLabel.setText("Password:");\r
-\r
-               // Create password input\r
-               passwordText = new Text(authenticationGroup, SWT.BORDER);\r
-               passwordText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
-//             // Create save password label\r
-//             Label savePasswordLabel = new Label(authenticationGroup, SWT.NONE);\r
-//             savePasswordLabel.setText("Save password:");\r
-//\r
-//             // Create save password checkbox\r
-//             Button button = new Button(authenticationGroup, SWT.CHECK);\r
-\r
-               // Create group composite for location data \r
-               locationGroup = new Group(dbConfigComposite, SWT.NONE);\r
-               locationGroup.setText("Location");\r
-               locationGroup.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
-               GridLayout locationLayout = new GridLayout();\r
-               locationLayout.numColumns = 2;\r
-               locationGroup.setLayout(locationLayout);\r
-\r
-               // Create host label\r
-               Label serverLabel = new Label(locationGroup, SWT.NONE);\r
-               serverLabel.setText("Host:");\r
-\r
-               // Create host input\r
-               serverText = new Text(locationGroup, SWT.BORDER);\r
-               serverText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
-               // Create port label\r
-               Label portLabel = new Label(locationGroup, SWT.NONE);\r
-               portLabel.setText("Port:");\r
-\r
-               // Create port input\r
-               portText = new Text(locationGroup, SWT.BORDER);\r
-               portText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
-               // Create composite for buttons\r
-               Composite buttonComposite = new Composite(dbConfigComposite, SWT.NONE);\r
-               buttonComposite.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, true, false));\r
-               GridLayout buttonLayout = new GridLayout();\r
-               buttonLayout.numColumns = 2;\r
-               buttonComposite.setLayout(buttonLayout);\r
-               \r
-               // Create test connection button\r
-               Button testButton = new Button(buttonComposite, SWT.NONE);\r
-               testButton.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));\r
-               testButton.setText("Test connection");\r
-               \r
-               // Test connection when button is pressed\r
-               testButton.addMouseListener(new MouseAdapter() {\r
-                       public void mouseUp(MouseEvent e) {\r
-                               testDbConfig();\r
-                       }\r
-               });\r
-               \r
-               // Create save button\r
-               saveButton = new Button(buttonComposite, SWT.NONE);\r
-               GridData saveButtonLayout = new GridData(SWT.RIGHT, SWT.CENTER, false, false);\r
-               saveButtonLayout.widthHint = 76;\r
-               saveButton.setLayoutData(saveButtonLayout);\r
-               saveButton.setText("Save");\r
-               saveButton.setEnabled(false);\r
-               \r
-               // Save data to datasource on mouse click\r
-               saveButton.addMouseListener(new MouseAdapter() {\r
-                       public void mouseUp(MouseEvent e) {\r
-                               saveDbConfig();\r
-                       }\r
-               });\r
-                               \r
-               // Populate fields with datasource data\r
-               if (dataSource != null) {\r
-                       databaseNameText.setText(CdmUtils.Nz(dataSource.getDatabase()));\r
-                       passwordText.setText(CdmUtils.Nz(dataSource.getPassword()));\r
-                       usernameText.setText(CdmUtils.Nz(dataSource.getUsername()));\r
-                       serverText.setText(CdmUtils.Nz(dataSource.getServer()));\r
-                       portText.setText(String.valueOf(dataSource.getPort()));                 \r
-               }\r
-               \r
-               // Listen for changes to any input fields in order to toggle Save / OK\r
-               databaseNameText.addModifyListener(modifyListener);\r
-               usernameText.addModifyListener(modifyListener);\r
-               passwordText.addModifyListener(modifyListener);\r
-               serverText.addModifyListener(modifyListener);\r
-               portText.addModifyListener(modifyListener);\r
-               forceUserToSave(false);\r
-               \r
-               // Redraw\r
-               container.layout(true, true);\r
-       }\r
-\r
-       /**\r
-        * @param mustSave\r
-        */\r
-       private void forceUserToSave(boolean mustSave) {\r
-               saveButton.setEnabled(mustSave);\r
-               getButton(IDialogConstants.OK_ID).setEnabled(!mustSave);\r
-       }\r
-\r
-       private void testDbConfig() {\r
-               \r
-               ICdmDataSource dataSource = CdmDataSource.NewMySqlInstance(\r
-                               serverText.getText(),\r
-                               databaseNameText.getText(),\r
-                               getPort(), \r
-                               usernameText.getText(), \r
-                               passwordText.getText());\r
-               if (dataSource.testConnection()) {\r
-                       MessageDialog.openConfirm(GlobalController.getShell(), "Test successful", "Test successful");\r
-               } else {\r
-                       MessageDialog.openWarning(GlobalController.getShell(), "Test unsuccessful", "Test unsuccessful");                       \r
-               }\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       private int getPort() {\r
-               try {\r
-                       return Integer.valueOf(portText.getText());\r
-               } catch (NumberFormatException e) {\r
-                       portText.setText("");\r
-                       return -1;\r
-               }\r
-       }\r
-\r
-       private void saveDbConfig() {\r
-               \r
-               // Get field values\r
-               DatabaseTypeEnum databaseType = databaseTypes.get(databaseTypeCombo.getSelectionIndex());\r
-               String dataSourceName = datasourceNameText.getText();\r
-               String server = serverText.getText();\r
-               String database = databaseNameText.getText();\r
-               String username = usernameText.getText(); \r
-               String password = passwordText.getText();\r
-               Integer port = getPort(); // new Integer(portText.getText());\r
-               \r
-               // Remove data source in case it already exists\r
-               if (dataSource != null) {\r
-                       removeDataSource(dataSource);\r
-               }\r
-               \r
-               if (port > 0) {\r
-                       // Save with port\r
-                       CdmDataSourceRepository.getDefault().save (\r
-                                       dataSourceName, \r
-                                       databaseType, \r
-                                       server, \r
-                                       database, \r
-                                       port, \r
-                                       username, \r
-                                       password);                      \r
-               } else {\r
-                       // Save without port\r
-                       CdmDataSourceRepository.getDefault().save (\r
-                                       dataSourceName, \r
-                                       databaseType, \r
-                                       server, \r
-                                       database,\r
-                                       username, \r
-                                       password);                      \r
-               }\r
-               \r
-               // Refresh list of data sources to reflect changes\r
-               refreshDataSourceViewer();\r
-               forceUserToSave(false);\r
-       }\r
-       \r
-       private void refreshDataSourceViewer() {\r
-               \r
-               // Populate the list with saved datasources and an entry for "new dataSource"\r
-               dataSourceViewer.setInput(\r
-                               CdmDataSourceRepository.getDefault().getAll());\r
-       }\r
-       \r
-       public boolean close() {\r
-               return super.close();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmDataSourceRepository.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmDataSourceRepository.java
deleted file mode 100644 (file)
index 3d8ff7f..0000000
+++ /dev/null
@@ -1,217 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.datasource;\r
-\r
-import java.lang.reflect.InvocationTargetException;\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.dialogs.ProgressMonitorDialog;\r
-import org.eclipse.jface.operation.IRunnableWithProgress;\r
-\r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-import eu.etaxonomy.cdm.database.CdmDataSource;\r
-import eu.etaxonomy.cdm.database.CdmPersistentDataSource;\r
-import eu.etaxonomy.cdm.database.DatabaseTypeEnum;\r
-import eu.etaxonomy.cdm.database.DbSchemaValidation;\r
-import eu.etaxonomy.cdm.database.ICdmDataSource;\r
-import eu.etaxonomy.cdm.model.common.init.TermNotFoundException;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.controller.TreeController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-public class CdmDataSourceRepository implements ICdmDataSourceRepository {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CdmDataSourceRepository.class);\r
-       \r
-       private static ICdmDataSource currentDataSource;\r
-       private static ICdmDataSourceRepository repository;\r
-       private List<ICdmDataSource> dataSources;\r
-       private CdmApplicationController cdmAppController;\r
-       \r
-       public static ICdmDataSourceRepository getDefault() {\r
-               if (repository == null) {\r
-                       repository = new CdmDataSourceRepository();\r
-                       \r
-                       // Create datasource for local H2 database\r
-                       ICdmDataSource h2DataSource = CdmDataSource.NewH2EmbeddedInstance(\r
-                                       "cdm", "sa", "");\r
-                       repository.add(h2DataSource);\r
-                                               \r
-                       // Add stored datasources to repository\r
-                       for (ICdmDataSource dataSource : CdmPersistentDataSource.getAllDataSources()) {\r
-                               repository.add(dataSource);\r
-                       }\r
-                       \r
-                       // Get default datasource\r
-                       ICdmDataSource defaultDataSource = CdmPersistentDataSource.NewDefaultInstance();\r
-                       \r
-                       // If none specified, use local H2 database \r
-                       if (defaultDataSource == null) {\r
-                               defaultDataSource = h2DataSource;\r
-                       }\r
-                       \r
-                       // Set repository's current datasource\r
-                       repository.setCurrentDataSource(defaultDataSource);\r
-                       \r
-//                     defaultDataSource = CdmPersistentDataSource.save("mysql_cichorieae", DatabaseTypeEnum.MySQL, "87.106.88.177", "cdm_edit_cichorieae", 80, "edit", "R3m0teAt80");\r
-//                     CdmDataSource mySqlDataSource = CdmDataSource.NewMySqlInstance(\r
-//                                     "87.106.88.177", "cdm_edit_cichorieae", 80, "edit", "R3m0teAt80");\r
-               }\r
-               return repository;\r
-       }\r
-\r
-       \r
-       public boolean add(ICdmDataSource dataSource) {\r
-               return getDataSources().add(dataSource);\r
-       }\r
-\r
-\r
-       \r
-       public boolean delete(CdmPersistentDataSource dataSource) {\r
-               CdmPersistentDataSource.delete(dataSource);\r
-               return remove(dataSource);\r
-       }\r
-\r
-       \r
-       public boolean remove(ICdmDataSource dataSource) {\r
-               return getDataSources().remove(dataSource);\r
-       }\r
-       \r
-       \r
-       public List<ICdmDataSource> getAll() {\r
-               return getDataSources();\r
-       }\r
-               \r
-       \r
-       public ICdmDataSource getCurrentDataSource() {\r
-               if (currentDataSource == null) {\r
-                       throw new IllegalStateException("Current data source not set.");\r
-               }\r
-               return currentDataSource;\r
-       }\r
-\r
-       \r
-       public boolean setCurrentDataSource(ICdmDataSource dataSource) {\r
-               if (currentDataSource != null) {\r
-                       if (!changeDataSource(dataSource)) {\r
-                               return false;\r
-                       }\r
-               }\r
-               currentDataSource = dataSource;\r
-               return true;\r
-       }\r
-\r
-       \r
-       public void setCdmApplicationController(\r
-                       CdmApplicationController cdmAppController) {\r
-               this.cdmAppController = cdmAppController;               \r
-       }\r
-       \r
-       private CdmApplicationController getCdmAppController() {\r
-               if (cdmAppController == null) {\r
-                       throw new IllegalStateException("CdmApplicationController not set.");\r
-               }\r
-               return cdmAppController;\r
-       }\r
-       \r
-       private List<ICdmDataSource> getDataSources() {\r
-               if (dataSources == null) {\r
-                       dataSources = new ArrayList<ICdmDataSource>();\r
-               }\r
-               return dataSources;\r
-       }\r
-               \r
-       private boolean changeDataSource(final ICdmDataSource dataSource) {\r
-\r
-               // Close all open editors before showing progress monitor\r
-               if (!EditorController.closeAll()) {\r
-                       \r
-                       // User has canceled operation   \r
-                       return false;\r
-               }\r
-               \r
-               try {\r
-                       IRunnableWithProgress op = new IRunnableWithProgress() {\r
-\r
-                               \r
-                               public void run(IProgressMonitor monitor)\r
-                                               throws InvocationTargetException, InterruptedException {\r
-                               \r
-                                       // Start the progress bar with 25 steps\r
-                                       monitor.beginTask("Changing to a new datasource ...", 25);\r
-                               \r
-                                       // Clear all session variables\r
-                                       CdmSessionDataRepository.getDefault().clearNonTaxonData();\r
-                                       monitor.worked(1);\r
-                                       \r
-                                       // Clear session taxa\r
-                                       CdmSessionDataRepository.getDefault().clearTaxonData();\r
-                                       monitor.worked(1);\r
-                                       \r
-                                       CdmTransactionController.commitTransaction();\r
-                                       monitor.worked(1);\r
-                                                                               \r
-                                       try {\r
-//                                             getCdmAppController().changeDataSource(dataSource);\r
-                                               getCdmAppController().changeDataSource(dataSource, DbSchemaValidation.UPDATE);\r
-                                       } catch (TermNotFoundException e) {\r
-                                               // TODO Auto-generated catch block\r
-                                               e.printStackTrace();\r
-                                       }\r
-                                       monitor.worked(10);\r
-                                       \r
-                                       CdmTransactionController.startTransaction();\r
-                                       monitor.worked(1);\r
-                                                                               \r
-                                       // Get session root taxa\r
-                                       // TODO get listener in tree content provider to take care of this\r
-                                       TreeController.getTreeViewer().setInput(\r
-                                                       CdmSessionDataRepository.getDefault().getRootTaxa());\r
-                                                       \r
-                                       monitor.worked(11);\r
-                                                                               \r
-                                       monitor.done();\r
-                               }\r
-                               \r
-                       };\r
-                       new ProgressMonitorDialog(GlobalController.getShell()).run(false, true, op);\r
-               } catch (InvocationTargetException e) {\r
-                       e.printStackTrace();\r
-                       return false;\r
-               } catch (InterruptedException e) {\r
-                       e.printStackTrace();\r
-                       return false;\r
-               } \r
-               return true;\r
-       }\r
-\r
-       \r
-       public CdmPersistentDataSource save(String dataSourceName, DatabaseTypeEnum databaseType,\r
-                       String server, String database, int port, String username,\r
-                       String password) {\r
-               CdmPersistentDataSource dataSource = CdmPersistentDataSource.save(\r
-                               dataSourceName, databaseType, server, database, port, username, password);\r
-               add(dataSource);\r
-               return dataSource;\r
-       }\r
-       \r
-       \r
-       public CdmPersistentDataSource save(String dataSourceName, DatabaseTypeEnum databaseType,\r
-                       String server, String database, String username, String password) {\r
-               CdmPersistentDataSource dataSource = CdmPersistentDataSource.save(\r
-                               dataSourceName, databaseType, server, database, username, password);\r
-               add(dataSource);\r
-               return dataSource;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmTransactionController.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/CdmTransactionController.java
deleted file mode 100644 (file)
index 2564741..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.datasource;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.springframework.transaction.TransactionStatus;\r
-\r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 16.12.2008\r
- * @version 1.0\r
- */\r
-public class CdmTransactionController {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CdmTransactionController.class);\r
-       \r
-       private static CdmApplicationController applicationController;\r
-       private static TransactionStatus txStatus;\r
-       private CdmTransactionController controller;\r
-               \r
-       public static void startTransaction() {\r
-               \r
-               txStatus = getCdmAppController().startTransaction();\r
-               \r
-               // Workaround - nom statii were causing a lazy loading error\r
-               List<NomenclaturalStatusType> list = new ArrayList<NomenclaturalStatusType>();\r
-               list.add(NomenclaturalStatusType.SUPERFLUOUS());\r
-               list.add(NomenclaturalStatusType.NUDUM());\r
-               list.add(NomenclaturalStatusType.ILLEGITIMATE());\r
-               list.add(NomenclaturalStatusType.INVALID());\r
-               list.add(NomenclaturalStatusType.CONSERVED());\r
-               list.add(NomenclaturalStatusType.ALTERNATIVE());\r
-               list.add(NomenclaturalStatusType.REJECTED());\r
-               list.add(NomenclaturalStatusType.REJECTED_PROP());\r
-               list.add(NomenclaturalStatusType.PROVISIONAL());\r
-               list.add(NomenclaturalStatusType.SUBNUDUM());\r
-               list.add(NomenclaturalStatusType.OPUS_UTIQUE_OPPR());\r
-               list.add(NomenclaturalStatusType.AMBIGUOUS());\r
-               list.add(NomenclaturalStatusType.DOUBTFUL());\r
-               list.add(NomenclaturalStatusType.CONFUSUM());\r
-               list.add(NomenclaturalStatusType.UTIQUE_REJECTED());\r
-               list.add(NomenclaturalStatusType.CONSERVED_PROP());\r
-               list.add(NomenclaturalStatusType.LEGITIMATE());\r
-               list.add(NomenclaturalStatusType.NOVUM());\r
-               list.add(NomenclaturalStatusType.ORTHOGRAPHY_CONSERVED());\r
-               list.add(NomenclaturalStatusType.SANCTIONED());\r
-               list.add(NomenclaturalStatusType.COMBINATION_INVALID());\r
-               list.add(NomenclaturalStatusType.VALID());\r
-               for (NomenclaturalStatusType status : list){\r
-                       //applicationController.getTermService().saveTerm(status);\r
-               }\r
-       }\r
-\r
-       public static void commitTransaction() {\r
-               \r
-               // Make sure transaction exists\r
-               if (txStatus == null) {\r
-                       throw new IllegalStateException("Transaction was NULL - be sure to call startTransaction first.");\r
-               }\r
-               \r
-               getCdmAppController().commitTransaction(txStatus);              \r
-               txStatus = null;\r
-       }\r
-       \r
-       public static void setApplicationController(CdmApplicationController applicationController) {\r
-               CdmTransactionController.applicationController = applicationController;\r
-       }\r
-       \r
-       private static CdmApplicationController getCdmAppController() {\r
-               \r
-               // Make sure the app controller has been set\r
-               if (applicationController == null) {\r
-                       throw new IllegalStateException("CdmApplicationController not yet set.");\r
-               }\r
-               return applicationController;\r
-       }\r
-\r
-       public static void addTaxonToTransaction(Taxon taxon) {\r
-               CdmUtil.getTaxonService().saveTaxon(taxon);\r
-       }\r
-       \r
-       public static void addSessionTaxaToTransaction() {\r
-               CdmUtil.getTaxonService().saveTaxonAll(\r
-                               CdmSessionDataRepository.getDefault().getAllTaxa());\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/ICdmDataSourceRepository.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/ICdmDataSourceRepository.java
deleted file mode 100644 (file)
index 0990b36..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.datasource;\r
-\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-import eu.etaxonomy.cdm.database.CdmPersistentDataSource;\r
-import eu.etaxonomy.cdm.database.DatabaseTypeEnum;\r
-import eu.etaxonomy.cdm.database.ICdmDataSource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 11.12.2008\r
- * @version 1.0\r
- */\r
-public interface ICdmDataSourceRepository {\r
-       \r
-       /**\r
-        * Get a list of all CDM dataSources associated\r
-        * with this session of the Taxonomic Editor, persistent\r
-        * or otherwise.\r
-        * \r
-        * @return\r
-        */\r
-       public List<ICdmDataSource> getAll();\r
-       \r
-       /**\r
-        * Add <code>dataSource</code> to the list of all\r
-        * CDM dataSources associated with this session\r
-        * of the Taxonomic Editor. \r
-        * \r
-        * @param dataSource\r
-        * @return\r
-        */\r
-       public boolean add(ICdmDataSource dataSource);\r
-       \r
-       /**\r
-        * If <code>dataSourceName</code> already exists as persistent CDM\r
-        * dataSources, it is updated with parameter values.\r
-        * <p>\r
-        * If it does not exist, <code>dataSource</code> will be created. \r
-        * \r
-        * @param dataSourceName\r
-        * @param databaseType\r
-        * @param server\r
-        * @param database\r
-        * @param port\r
-        * @param username\r
-        * @param password\r
-        * @return\r
-        */\r
-       public CdmPersistentDataSource save(String dataSourceName, DatabaseTypeEnum databaseType, String server, String database, \r
-                       int port, String username, String password);\r
-\r
-       /**\r
-        * Almost identical to {@link #save(String,DatabaseTypeEnum,String,String,int,String,String)}, \r
-        * except it does not take a <code>port</code>.\r
-        * \r
-        * @param dataSourceName\r
-        * @param databaseType\r
-        * @param server\r
-        * @param database\r
-        * @param username\r
-        * @param password\r
-        * @return\r
-        */\r
-       public CdmPersistentDataSource save(String dataSourceName, DatabaseTypeEnum databaseType, String server, String database, \r
-                       String username, String password);\r
-       \r
-       /**\r
-        * Remove <code>dataSource</code> from the list of all\r
-        * CDM dataSources associated with this session\r
-        * of the Taxonomic Editor. \r
-        * \r
-        * @param dataSource\r
-        * @return\r
-        */     \r
-       public boolean remove(ICdmDataSource dataSource);\r
-\r
-       /**\r
-        * Remove <code>dataSource</code> from the list of all\r
-        * <i>persistent</i> CDM dataSources associated with this \r
-        * Taxonomic Editor.\r
-        *  \r
-        * @param dataSource\r
-        * @return\r
-        */\r
-       public boolean delete(CdmPersistentDataSource dataSource);\r
-       \r
-       /**\r
-        * All data source operations run through a <code>CdmApplicationController</code>.\r
-        * \r
-        * @param cdmAppController\r
-        */\r
-       public void setCdmApplicationController(CdmApplicationController cdmAppController);\r
-       \r
-       /**\r
-        * Get the data source currently associated with this\r
-        * Taxonomic Editor.\r
-        * \r
-        * @return\r
-        */\r
-       public ICdmDataSource getCurrentDataSource();\r
-       \r
-       /**\r
-        * Set <code>dataSource</code> as this Taxonomic Editor's\r
-        * current data source.\r
-        * \r
-        * @param dataSource\r
-        * @return\r
-        */\r
-       public boolean setCurrentDataSource(ICdmDataSource dataSource);\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/RegisterDatabaseDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/datasource/RegisterDatabaseDialog.java
deleted file mode 100644 (file)
index 306302e..0000000
+++ /dev/null
@@ -1,158 +0,0 @@
-package eu.etaxonomy.taxeditor.datasource;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.dialogs.IDialogConstants;\r
-import org.eclipse.jface.dialogs.TitleAreaDialog;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-public class RegisterDatabaseDialog extends TitleAreaDialog {\r
-       private Text txtPort;\r
-       private Text txtHost;\r
-       private Text txtPassword;\r
-       private Text txtLoginName;\r
-       private Table table;\r
-       private Text txtName;\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RegisterDatabaseDialog.class);\r
-\r
-       /**\r
-        * Create the dialog\r
-        * @param parentShell\r
-        */\r
-       public RegisterDatabaseDialog(Shell parentShell) {\r
-               super(parentShell);\r
-       }\r
-\r
-       /**\r
-        * Create contents of the dialog\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected Control createDialogArea(Composite parent) {\r
-               Composite area = (Composite) super.createDialogArea(parent);\r
-               Composite container = new Composite(area, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 3;\r
-               container.setLayout(gridLayout);\r
-               container.setLayoutData(new GridData(GridData.FILL_BOTH));\r
-\r
-               final Label lblName = new Label(container, SWT.NONE);\r
-               lblName.setText("Profile Name:");\r
-\r
-               txtName = new Text(container, SWT.BORDER);\r
-               final GridData gd_txtName = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               txtName.setLayoutData(gd_txtName);\r
-\r
-               final Composite rightPanel = new Composite(container, SWT.NONE);\r
-               final GridData gd_rightPanel = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 3);\r
-               rightPanel.setLayoutData(gd_rightPanel);\r
-               rightPanel.setLayout(new GridLayout());\r
-\r
-               final Group authenticationGroup = new Group(rightPanel, SWT.NONE);\r
-               authenticationGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               authenticationGroup.setText("Authentication");\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               authenticationGroup.setLayout(gridLayout_1);\r
-\r
-               final Label lblLoginName = new Label(authenticationGroup, SWT.NONE);\r
-               lblLoginName.setText("Login Name:");\r
-\r
-               txtLoginName = new Text(authenticationGroup, SWT.BORDER);\r
-               final GridData gd_txtLoginName = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               txtLoginName.setLayoutData(gd_txtLoginName);\r
-\r
-               final Label lblPassword = new Label(authenticationGroup, SWT.NONE);\r
-               lblPassword.setText("Password:");\r
-\r
-               txtPassword = new Text(authenticationGroup, SWT.BORDER);\r
-               final GridData gd_txtPassword = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               txtPassword.setLayoutData(gd_txtPassword);\r
-\r
-               final Label lblSavePassword = new Label(authenticationGroup, SWT.NONE);\r
-               lblSavePassword.setText("Save Password:");\r
-\r
-               final Button btnSavePassword = new Button(authenticationGroup, SWT.CHECK);\r
-\r
-               final Group locationGroup = new Group(rightPanel, SWT.NONE);\r
-               locationGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               locationGroup.setText("Location");\r
-               final GridLayout gridLayout_2 = new GridLayout();\r
-               gridLayout_2.numColumns = 2;\r
-               locationGroup.setLayout(gridLayout_2);\r
-\r
-               final Label lblHost = new Label(locationGroup, SWT.NONE);\r
-               lblHost.setText("Host:");\r
-\r
-               txtHost = new Text(locationGroup, SWT.BORDER);\r
-               final GridData gd_txtHost = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               txtHost.setLayoutData(gd_txtHost);\r
-\r
-               final Label portLabel = new Label(locationGroup, SWT.NONE);\r
-               portLabel.setText("Port: <1521>");\r
-\r
-               txtPort = new Text(locationGroup, SWT.BORDER);\r
-               final GridData gd_txtPort = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               txtPort.setLayoutData(gd_txtPort);\r
-\r
-               final Composite composite = new Composite(rightPanel, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));\r
-               final GridLayout gridLayout_3 = new GridLayout();\r
-               gridLayout_3.numColumns = 2;\r
-               composite.setLayout(gridLayout_3);\r
-\r
-               final Button button = new Button(composite, SWT.NONE);\r
-               button.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));\r
-               button.setText("button1");\r
-\r
-               final Button button_1 = new Button(composite, SWT.NONE);\r
-               button_1.setText("button2");\r
-\r
-               final Button btnTestConnection = new Button(rightPanel, SWT.NONE);\r
-               final GridData gd_btnTestConnection = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               btnTestConnection.setLayoutData(gd_btnTestConnection);\r
-               btnTestConnection.setText("Test Connection");\r
-\r
-               final Label lblDatabase = new Label(container, SWT.NONE);\r
-               lblDatabase.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));\r
-               lblDatabase.setText("Database:");\r
-\r
-               final TableViewer dbTable = new TableViewer(container, SWT.BORDER);\r
-               table = dbTable.getTable();\r
-               table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));\r
-               //\r
-               return area;\r
-       }\r
-\r
-       /**\r
-        * Create contents of the button bar\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected void createButtonsForButtonBar(Composite parent) {\r
-               createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,\r
-                               true);\r
-               createButton(parent, IDialogConstants.CANCEL_ID,\r
-                               IDialogConstants.CANCEL_LABEL, false);\r
-       }\r
-\r
-       /**\r
-        * Return the initial size of the dialog\r
-        */\r
-       @Override\r
-       protected Point getInitialSize() {\r
-               return new Point(500, 375);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/AbstractTaxonEditor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/AbstractTaxonEditor.java
deleted file mode 100644 (file)
index 538d5a1..0000000
+++ /dev/null
@@ -1,376 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import java.util.HashSet;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.ObjectUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IStatusLineManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.jface.viewers.ISelectionProvider;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.ui.IActionBars;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.IPartListener2;\r
-import org.eclipse.ui.IWorkbenchPage;\r
-import org.eclipse.ui.IWorkbenchPartReference;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.actions.ActionFactory;\r
-import org.eclipse.ui.forms.ManagedForm;\r
-import org.eclipse.ui.forms.widgets.ScrolledForm;\r
-import org.eclipse.ui.forms.widgets.TableWrapLayout;\r
-import org.eclipse.ui.operations.RedoActionHandler;\r
-import org.eclipse.ui.operations.UndoActionHandler;\r
-import org.eclipse.ui.part.EditorPart;\r
-import org.eclipse.ui.views.properties.IPropertySheetPage;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertySheetPage;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.controller.PropertySheetController;\r
-import eu.etaxonomy.taxeditor.propertysheet.EditorPropertySheetEntry;\r
-\r
-/**\r
- * The abstract editor for displaying a category of <code>Taxon</code> data, corresponding\r
- * to the tabs ("Name", "Descriptive", etc.) at the bottom of a <code>Taxon</code> view. Implements\r
- * <code>IAdaptable</code> in order to display properties of the objects whose UI elements have focus. \r
- * <p>\r
- * Implementing classes can choose to show an object in the property sheet when the\r
- * <code>AbstractTaxonEditor</code> gets focus, by passing the object to the method\r
- * <code>setDefaultPropertySheetObject</code>, for instance, in the method<code>init</code>.\r
- * </p>\r
- * @author p.ciardelli\r
- * @created 10.09.2008\r
- * @version 1.0\r
- */\r
-public abstract class AbstractTaxonEditor extends EditorPart implements\r
-               IAdaptable {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AbstractTaxonEditor.class);\r
-\r
-       private Taxon taxon;\r
-       \r
-       /**\r
-        * When this <code>EditorPart</code> gets focus, the data structure of \r
-        * <code>defaultPropertyObject</code> is displayed in the property sheet.\r
-        */\r
-       \r
-       protected ManagedForm managedForm;\r
-       protected ScrolledForm scrolledForm; \r
-       protected Composite parent;\r
-       protected ISelectionProvider provider;\r
-       protected IUndoContext undoContext;\r
-\r
-       protected IHasPropertySource selectedObject;\r
-\r
-       protected Composite partComposite;\r
-       protected GroupedComposite firstGroupedComposite;\r
-\r
-       protected Object selectedData;\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.EditorPart#doSave(org.eclipse.core.runtime.IProgressMonitor)\r
-        */\r
-       public void doSave(IProgressMonitor monitor) {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.EditorPart#doSaveAs()\r
-        */\r
-       public void doSaveAs() {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.EditorPart#init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput)\r
-        */\r
-       public void init(IEditorSite site, IEditorInput input)\r
-                       throws PartInitException {\r
-               \r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                               "Invalid Input: Must be IFileEditorInput");\r
-               \r
-               if (input.getAdapter(Taxon.class) != null) {\r
-                       taxon = (Taxon) input.getAdapter(Taxon.class);\r
-               } else {\r
-                       throw new PartInitException(\r
-                               "Invalid Input: Taxon cannot be null");\r
-               }\r
-\r
-               setSite(site);\r
-               setInput(input);\r
-               \r
-               this.provider = new SimpleSelectionProvider();\r
-               this.getSite().setSelectionProvider(provider);\r
-       }\r
-\r
-       private void initUndoContext() {                \r
-               undoContext = new ObjectUndoContext(this); \r
-               // getEditorSite returns multipageeditor, NOT this\r
-               // UndoActionHandler expects a IWorkbenchPartSite\r
-\r
-//             UndoActionHandler undoHandler = new UndoActionHandler(getEditorSite(), undoContext);\r
-//             IActionBars actionBars = getEditorSite().getActionBars();\r
-               UndoActionHandler undoHandler = new UndoActionHandler(getSite(), undoContext);\r
-               RedoActionHandler redoHandler = new RedoActionHandler(getSite(), undoContext);\r
-               IActionBars actionBars = getEditorSite().getActionBars();\r
-               actionBars.setGlobalActionHandler(ActionFactory.UNDO.getId(), undoHandler);\r
-               actionBars.setGlobalActionHandler(ActionFactory.REDO.getId(), redoHandler);\r
-       }\r
-       \r
-       public IUndoContext getUndoContext() {\r
-               return undoContext;\r
-       }\r
-       \r
-       /**\r
-        * If there is a default property sheet object with a corresponding property source class, \r
-        * display it in the property sheet. Otherwise, empty the property sheet with an empty\r
-        * <code>StructuredSelection</code>.\r
-        * \r
-        * @param selectedObject\r
-        */\r
-       protected void setSelection(IHasPropertySource selectedObject) {\r
-                               \r
-               // Unpaint last selection - last selection will only be unpainted\r
-               //      when something else on this page is selected\r
-               if (this.selectedObject instanceof GroupedComposite) {\r
-                       ((GroupedComposite) this.selectedObject).unpaintBorder();\r
-               }\r
-               \r
-               // Set the selection to this editor's selected object\r
-               this.selectedObject = selectedObject;\r
-               \r
-               if (selectedObject instanceof Composite) {\r
-                       this.selectedData = ((Composite) selectedObject).getData();\r
-               }\r
-               \r
-               // Get the selection's property source, pass it to the selection provider\r
-               IPropertySource propertySource = null;\r
-               if (selectedObject != null) {\r
-                       propertySource = selectedObject.getPropertySource();\r
-               }\r
-               if (propertySource == null) {\r
-                       provider.setSelection(new StructuredSelection());\r
-               } else {\r
-                       provider.setSelection(new StructuredSelection(propertySource));\r
-               }\r
-               \r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.EditorPart#isDirty()\r
-        */\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.EditorPart#isSaveAsAllowed()\r
-        */\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)\r
-        */\r
-       public void createPartControl(Composite composite) {\r
-\r
-               this.partComposite = composite;\r
-               \r
-               initUndoContext();\r
-               \r
-               createManagedForm(composite);\r
-       }\r
-       \r
-       protected void createManagedForm(Composite composite) {\r
-               \r
-               managedForm = new ManagedForm(composite) {\r
-                       public void dirtyStateChanged() {\r
-                               firePropertyChange(PROP_DIRTY);\r
-                       }\r
-                       public boolean setInput(Object input) {\r
-                               if (input instanceof IHasPropertySource) {\r
-                                       setSelection((IHasPropertySource)input);\r
-                               }\r
-                               return super.setInput(input); \r
-                       } \r
-               };\r
-               scrolledForm = managedForm.getForm();\r
-               parent = scrolledForm.getBody();\r
-                               \r
-//             Taxon taxon = getTaxon();\r
-               parent.setData(taxon);\r
-               \r
-               parent.setLayout(new TableWrapLayout());                \r
-               parent.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-       }\r
-       \r
-       @SuppressWarnings("unchecked")\r
-       public Object getAdapter(Class type) {\r
-           if (type == IPropertySheetPage.class) {\r
-               \r
-               PropertySheetPage page = new PropertySheetPage() {\r
-                   public void makeContributions(IMenuManager menuManager,\r
-                           IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {\r
-                       super.makeContributions(menuManager, toolBarManager, statusLineManager);\r
-                   \r
-                       // Remove "Show categories", "Show advanced properties", "Restore default value"\r
-                       toolBarManager.removeAll();\r
-                       menuManager.removeAll();\r
-                   }\r
-                   \r
-                   public Control getControl() {\r
-                       Control control = super.getControl();\r
-                       \r
-                       // Save the property sheet tree for easy access as needed\r
-                       if (!control.isDisposed()) {\r
-                               if (control instanceof Tree) {\r
-                                       PropertySheetController.setPropertySheetTree((Tree) control);\r
-                               }\r
-                       }\r
-                       return control;\r
-                   }\r
-               };              \r
-               \r
-               // Try out PartListener to intercept selections\r
-               IWorkbenchPage activePage = GlobalController.getActivePage();\r
-//             IWorkbenchPart active = activePage.getActivePart();\r
-               IPartListener2 partListener = new IPartListener2() {\r
-\r
-                               \r
-                               public void partActivated(IWorkbenchPartReference partRef) {\r
-                                       // Fires for every part\r
-//                                     logger.warn(partRef.getTitle());\r
-                               }\r
-\r
-                               \r
-                               public void partBroughtToTop(IWorkbenchPartReference partRef) {\r
-                                       // TODO Auto-generated method stub\r
-                                       \r
-                               }\r
-\r
-                               \r
-                               public void partClosed(IWorkbenchPartReference partRef) {\r
-                                       // TODO Auto-generated method stub\r
-                                       \r
-                               }\r
-\r
-                               \r
-                               public void partDeactivated(IWorkbenchPartReference partRef) {\r
-                                       // TODO Auto-generated method stub\r
-                                       \r
-                               }\r
-\r
-                               \r
-                               public void partHidden(IWorkbenchPartReference partRef) {\r
-                                       // TODO Auto-generated method stub\r
-                                       \r
-                               }\r
-\r
-                               \r
-                               public void partInputChanged(IWorkbenchPartReference partRef) {\r
-//                                     logger.warn("part input changed");\r
-                               }\r
-\r
-                               \r
-                               public void partOpened(IWorkbenchPartReference partRef) {\r
-                                       // TODO Auto-generated method stub\r
-                                       \r
-                               }\r
-\r
-                               \r
-                               public void partVisible(IWorkbenchPartReference partRef) {\r
-                                       // TODO Auto-generated method stub\r
-                                       \r
-                               }\r
-                       \r
-               };\r
-               activePage.addPartListener(partListener);\r
-\r
-               PropertySheetController.setPropertySheetPage(page);\r
-               \r
-               EditorPropertySheetEntry entry = new EditorPropertySheetEntry(taxon);\r
-               page.setRootEntry(entry);\r
-               page.refresh();\r
-               \r
-               return page;\r
-           }\r
-           return super.getAdapter(type);\r
-       }\r
-       \r
-       protected Taxon getTaxon() {\r
-               return taxon;\r
-       }\r
-       \r
-       public void setDirty() {\r
-               managedForm.dirtyStateChanged();\r
-       }\r
-\r
-       public boolean redraw() {\r
-               this.selectedObject = null;\r
-               managedForm.getForm().dispose();                \r
-               createManagedForm(partComposite);\r
-               \r
-               setFocus();\r
-               \r
-               return true;\r
-       }\r
-       \r
-       public void setFocus(){\r
-               \r
-               GroupedComposite focusComposite = null;\r
-               if (selectedData == null) {\r
-                       focusComposite = firstGroupedComposite;\r
-               } else {\r
-                       for (Composite composite : getAllComposites()) {\r
-                               if (selectedData.equals(composite.getData()) && composite instanceof GroupedComposite) {\r
-                                       setSelection((GroupedComposite) composite);\r
-                                       ((GroupedComposite) composite).drawBorder();\r
-                                       break;\r
-                               }\r
-                       }\r
-               }\r
-               \r
-               if (focusComposite != null) {\r
-                       setSelection(focusComposite);\r
-                       focusComposite.drawBorder();\r
-               }\r
-       }\r
-       \r
-       protected HashSet<Composite> getAllComposites(){\r
-               HashSet<Composite> composites = new HashSet<Composite>();\r
-               composites.add(parent);\r
-               composites.addAll(getComposites(parent));\r
-               return composites;\r
-       }\r
-       \r
-       \r
-       private HashSet<Composite> getComposites(Composite composite){\r
-               HashSet<Composite> composites = new HashSet<Composite>();\r
-               for(Control child : composite.getChildren()){\r
-                       if(child instanceof Composite){\r
-                               composites.add((Composite)child);\r
-                               composites.addAll(getComposites((Composite)child));\r
-                       }\r
-               } \r
-               return composites;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/CompositeBorderDecorator.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/CompositeBorderDecorator.java
deleted file mode 100644 (file)
index 7bbad6a..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.forms.widgets.FormToolkit;\r
-import org.eclipse.ui.forms.widgets.ScrolledForm;\r
-\r
-/**\r
- * Draws a border on a Composite on an IManagedForm when it gets focus, \r
- *  undraws it when the Composite loses focus.\r
- *  \r
- * @author p.ciardelli\r
- *\r
- */\r
-public class CompositeBorderDecorator implements FocusListener {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CompositeBorderDecorator.class);     \r
-               \r
-       private FormToolkit toolkit;\r
-       private ScrolledForm scrolledForm;\r
-       private Composite borderedComposite;\r
-       \r
-       /**\r
-        * If true, the <code>borderedComposite</code>'s border is erased when\r
-        * it loses focus.\r
-        */\r
-       private boolean doLoseFocus = true;\r
-\r
-       public CompositeBorderDecorator(Composite composite, IManagedForm form) {\r
-                               \r
-               this.borderedComposite = composite;\r
-               this.toolkit = form.getToolkit();\r
-               this.scrolledForm = form.getForm();\r
-               \r
-               // Make sure composite retains its color scheme after being adapted to toolkit\r
-               Color backgroundColor = composite.getBackground();\r
-               \r
-               toolkit.adapt(composite);\r
-               \r
-               composite.setBackground(backgroundColor);\r
-               \r
-       }\r
-       \r
-       \r
-       public void focusGained(FocusEvent e) {\r
-               paintBorder();\r
-       }\r
-\r
-       \r
-       public void focusLost(FocusEvent e) {\r
-               if (doLoseFocus) {\r
-                       unpaintBorder();\r
-               }\r
-       }\r
-       \r
-       public void setBorderedComposite(Composite borderedComposite) {\r
-               this.borderedComposite = borderedComposite;\r
-       }\r
-       \r
-       /**\r
-        * If this is set to true, border will disappear when focus is lost.\r
-        * Otherwise, it will remain until explicitly erased. \r
-        * \r
-        * @param doLoseFocus\r
-        */\r
-       public void setLoseFocus(boolean doLoseFocus) {\r
-               this.doLoseFocus = doLoseFocus;\r
-       }\r
-       \r
-       /**\r
-        * Removes the border from <code>borderedComposite</code>.\r
-        */\r
-       public void unpaintBorder() {\r
-               paintBorder(null);              \r
-       }\r
-       \r
-       /**\r
-        * Adds a border to <code>borderedComposite</code>.\r
-        */\r
-       public void paintBorder() {\r
-               paintBorder(FormToolkit.TEXT_BORDER);\r
-       }\r
-       \r
-       private void paintBorder(String border) {               \r
-               borderedComposite.setData(FormToolkit.KEY_DRAW_BORDER, border);\r
-               toolkit.paintBordersFor(borderedComposite.getParent());\r
-               scrolledForm.reflow(false);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ContextMenu.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ContextMenu.java
deleted file mode 100644 (file)
index 49a69df..0000000
+++ /dev/null
@@ -1,148 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.action.GroupMarker;\r
-import org.eclipse.jface.action.IMenuListener;\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.jface.action.Separator;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.ui.IWorkbenchActionConstants;\r
-\r
-/**\r
- * Creates a menu that is opened by right-clicking on a <code>Control</code>.\r
- * <p>\r
- * Note that menu items are added anew each time the menu is opened.\r
- * </p>\r
- * \r
- * @author p.ciardelli\r
- * @created 26.05.2008\r
- * @version 1.0\r
- */\r
-public class ContextMenu {\r
-       private static final Logger logger = Logger.getLogger(ContextMenu.class);\r
-       \r
-       private Control control;\r
-       private Menu menu;\r
-       private MenuManager menuManager;\r
-       private List actions;\r
-       private String label;\r
-       \r
-       /**\r
-        * Constructor for top-level menu items.\r
-        * \r
-        * @param control\r
-        */\r
-       public ContextMenu(Control control) {\r
-               this.control = control;\r
-               \r
-               // TODO rewrite class to override Menu\r
-               \r
-               createContextMenu();\r
-       }\r
-\r
-       public ContextMenu(String label) {\r
-               this.label = label;\r
-               \r
-               createContextMenu();\r
-       }\r
-       \r
-       public MenuManager getMenuManager() {\r
-               return menuManager;\r
-       }\r
-       \r
-       private void createContextMenu() {\r
-               if (control != null) {\r
-                       menuManager = new MenuManager();\r
-                       menu = menuManager.createContextMenu(control);\r
-                       control.setMenu(menu);\r
-               } else {\r
-                       menuManager = new MenuManager(label);\r
-               }\r
-               \r
-               menuManager.setRemoveAllWhenShown(true);\r
-               menuManager.addMenuListener(new IMenuListener() {\r
-                       public void menuAboutToShow(IMenuManager manager) {\r
-                               for (Object action : getActions()) {\r
-                                       if (action instanceof Action) {\r
-                                               manager.add((Action) action);\r
-                                       }\r
-                                       if (action instanceof Separator) {\r
-                                               manager.add((Separator) action);\r
-                                       }\r
-                                       if (action instanceof MenuManager) {\r
-                                               manager.add((MenuManager) action);\r
-                                       }\r
-                               }\r
-                               manager.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));\r
-                       }\r
-               });\r
-       }\r
-       \r
-       private List getActions() {\r
-               if (actions == null) {\r
-                       actions = new ArrayList();\r
-               }\r
-               return actions;\r
-       }\r
-       \r
-       public void addAction(Action action) {\r
-               getActions().add(action);\r
-       }\r
-\r
-       public void removeAction(Action action) {\r
-               getActions().remove(action);\r
-       }\r
-       \r
-       public void addSeparator() {\r
-               getActions().add(new Separator());\r
-       }\r
-\r
-       public void addSubmenu(MenuManager submenu) {\r
-               getActions().add(submenu);\r
-       }\r
-       \r
-       public void setMenuManager(MenuManager menuManager){\r
-               if(control == null){\r
-                       logger.warn("No control set for context menu");\r
-               }else{\r
-                       this.menuManager = menuManager;\r
-                       menu = menuManager.createContextMenu(control);\r
-                       control.setMenu(menu);\r
-                       \r
-                       menuManager.addMenuListener(new IMenuListener() {\r
-                               public void menuAboutToShow(IMenuManager manager) {\r
-                                       for (Object action : getActions()) {\r
-                                               if (action instanceof Action) {\r
-                                                       manager.add((Action) action);\r
-                                               }\r
-                                               if (action instanceof Separator) {\r
-                                                       manager.add((Separator) action);\r
-                                               }\r
-                                               if (action instanceof MenuManager) {\r
-                                                       manager.add((MenuManager) action);\r
-                                               }\r
-                                       }\r
-                               }\r
-                       });     \r
-               }\r
-       }\r
-\r
-       public Menu getMenu() {\r
-               return menu;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/EmptyEditorView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/EmptyEditorView.java
deleted file mode 100644 (file)
index 4bd009b..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.EditorPart;\r
-\r
-public class EmptyEditorView extends EditorPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.editor.EmptyEditorView"; //$NON-NLS-1$\r
-\r
-       /**\r
-        * Create contents of the editor part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               //\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               // Do the Save operation\r
-       }\r
-\r
-       @Override\r
-       public void doSaveAs() {\r
-               // Do the Save As operation\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input)\r
-                       throws PartInitException {\r
-               // Initialize the editor part\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/EmptyTextViewerPrompt.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/EmptyTextViewerPrompt.java
deleted file mode 100644 (file)
index 3f9c558..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.text.DocumentEvent;\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.IDocumentListener;\r
-import org.eclipse.jface.text.TextViewer;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.DisposeEvent;\r
-import org.eclipse.swt.events.DisposeListener;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.graphics.Font;\r
-\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-\r
-/**\r
- * Displays a message such as "Click here to start entering\r
- * data" when <code>document</code> is empty.\r
- * \r
- * @author p.ciardelli\r
- * @created 15.09.2008\r
- * @version 1.0\r
- */\r
-public class EmptyTextViewerPrompt implements IDocumentListener {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(EmptyTextViewerPrompt.class);\r
-       \r
-       private IDocument document;\r
-       private StyledText textControl;\r
-       private String prompt;\r
-       private FocusListener focusListener = null;\r
-\r
-       private Font textFont;\r
-       private Font promptFont = TaxEditorPlugin.getDefault()\r
-                       .getFont(ITaxEditorConstants.DEFAULT_PROMPT_FONT);\r
-       \r
-       public EmptyTextViewerPrompt(TextViewer textViewer, String prompt) {\r
-\r
-               this.document = textViewer.getDocument();\r
-               this.textControl = textViewer.getTextWidget();\r
-               this.prompt = prompt;\r
-\r
-               this.textFont = textControl.getFont();\r
-               \r
-               documentChanged(null);          \r
-       }\r
-\r
-       /**\r
-        * Override <code>prompt</code>'s default font. \r
-        * \r
-        * @param font\r
-        */\r
-       public void setPromptFont(Font font) {\r
-               this.promptFont = font;\r
-       }\r
-       \r
-       /**\r
-        * Adds a focus listener to the <code>textControl</code>, which hides \r
-        * the <code>prompt</code> if the cursor is in the <code>textControl</code>, \r
-        * and shows it if the cursor is elsewhere.  \r
-        */\r
-       private void createPrompt() {\r
-               \r
-               textControl.setFont(promptFont);\r
-               document.set(prompt);\r
-\r
-               focusListener = new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               if (document.get().equals(prompt)) {\r
-                                       textControl.setFont(textFont);\r
-                                       document.set("");\r
-                               }\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               if (document.getLength() == 0) {\r
-                                       textControl.setFont(promptFont);\r
-                                       document.set(prompt);\r
-                               }\r
-                       }\r
-                       \r
-               };\r
-               textControl.addFocusListener(focusListener);\r
-               textControl.addDisposeListener(new DisposeListener() {\r
-\r
-                       \r
-                       public void widgetDisposed(DisposeEvent e) {\r
-                               focusListener = null;\r
-                       }\r
-                       \r
-               });\r
-       }\r
-       \r
-       /**\r
-        * Removes focus listener from <code>textControl</code>, turning off\r
-        * the showing of <code>prompt</code>.\r
-        */\r
-       private void removePrompt() {\r
-               if (focusListener != null) {\r
-                       textControl.removeFocusListener(focusListener);\r
-                       focusListener = null;\r
-               }\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.IDocumentListener#documentAboutToBeChanged(org.eclipse.jface.text.DocumentEvent)\r
-        */\r
-       public void documentAboutToBeChanged(DocumentEvent event) {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.IDocumentListener#documentChanged(org.eclipse.jface.text.DocumentEvent)\r
-        */\r
-       public void documentChanged(DocumentEvent event) {\r
-               \r
-               if (document.get().equals(prompt)) {\r
-                       return;\r
-               }\r
-               \r
-               if (document.getLength() == 0) {\r
-                       createPrompt();\r
-               } else {\r
-                       removePrompt();\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ErrorAnnotation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ErrorAnnotation.java
deleted file mode 100644 (file)
index 8b9b7d5..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.eclipse.core.resources.IMarker;\r
-import org.eclipse.jface.text.Position;\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.jface.text.source.IAnnotationPresentation;\r
-import org.eclipse.swt.graphics.GC;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.widgets.Canvas;\r
-\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-\r
-public class ErrorAnnotation extends Annotation implements IAnnotationPresentation {\r
-    private IMarker marker;\r
-    private String text;\r
-    private int line;\r
-    private Position position;\r
-\r
-    // error identifiers, images and colors\r
-    public static String ERROR_TYPE = "error.type";\r
-    public static Image ERROR_IMAGE = TaxEditorPlugin.getDefault().getImage(ITaxEditorConstants.ACTIVE_DELETE_ICON);\r
-    public static final RGB ERROR_RGB = new RGB(255, 0, 0);    \r
-    \r
-    public ErrorAnnotation(IMarker marker) {\r
-        this.marker = marker;\r
-    }\r
-\r
-    public ErrorAnnotation(int line, String text) {\r
-       super(ERROR_TYPE, false, text);\r
-        this.marker = null;\r
-        this.line = line;\r
-        this.text = text;\r
-    }\r
-\r
-    public IMarker getMarker() {\r
-        return marker;\r
-    }\r
-\r
-    public int getLine() {\r
-        return line;\r
-    }\r
-\r
-    public String getText() {\r
-        return text;\r
-    }\r
-\r
-    public int getLayer() {\r
-        return DEFAULT_LAYER;\r
-    }\r
-\r
-    public String getType() {\r
-        return ERROR_TYPE;\r
-    }\r
-\r
-    public Position getPosition() {\r
-        return position;\r
-    }\r
-\r
-    public void setPosition(Position position) {\r
-        this.position = position;\r
-    }\r
-\r
-       \r
-       public void paint(GC gc, Canvas canvas, Rectangle bounds) {\r
-               Point canvasSize= canvas.getSize();\r
-\r
-               int x= 0;\r
-               int y= bounds.y;\r
-               int w= canvasSize.x;\r
-               int h= bounds.height;\r
-\r
-               if (y + h > canvasSize.y)\r
-                       h= canvasSize.y - y;\r
-\r
-               if (y < 0) {\r
-                       h= h + y;\r
-                       y= 0;\r
-               }\r
-\r
-               if (h <= 0)\r
-                       return;\r
-\r
-               Image image = TaxEditorPlugin\r
-                                                       .getDefault().getImage(ITaxEditorConstants.ERROR_ANNOTATION_ICON);\r
-               \r
-               Rectangle r = image.getBounds();\r
-               \r
-               int destX = x + w - r.width;\r
-               int destY = y + h - r.height;\r
-               \r
-               gc.drawImage(image, 0, 0, r.width, r.height, destX, destY, r.width, r.height);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/FreeTextElementFactory.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/FreeTextElementFactory.java
deleted file mode 100644 (file)
index 5501c76..0000000
+++ /dev/null
@@ -1,401 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import java.net.URL;\r
-import java.util.HashMap;\r
-import java.util.Map;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.forms.ManagedForm;\r
-\r
-import eu.etaxonomy.cdm.model.description.CommonTaxonName;\r
-import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.editor.description.CommonNameComposite;\r
-import eu.etaxonomy.taxeditor.editor.description.DescriptionElementComposite;\r
-import eu.etaxonomy.taxeditor.editor.description.DescriptionFeatureGroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.description.DescriptionGroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.description.DescriptionLabelComposite;\r
-import eu.etaxonomy.taxeditor.editor.images.ImageComposite;\r
-import eu.etaxonomy.taxeditor.editor.images.ImagesGroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.images.TaxonHasNoImagesComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.AcceptedNameComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.ConceptComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.ConceptGroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.HomotypicalGroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.MisappliedGroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.MisappliedNameComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.SynonymComposite;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 08.01.2009\r
- * @version 1.0\r
- */\r
-public class FreeTextElementFactory implements IFreeTextElementFactory {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(FreeTextElementFactory.class);\r
-       \r
-       private static IFreeTextElementFactory factory;\r
-       \r
-       private Map<Taxon, IManagedForm> nameForms;\r
-       private Map<Taxon, IManagedForm> descriptionForms;\r
-\r
-       private HashMap<Taxon, IManagedForm> imagesForms;\r
-       \r
-       public static IFreeTextElementFactory getDefault() {\r
-               if (factory == null) {\r
-                       factory = new FreeTextElementFactory();\r
-               }\r
-               return factory;\r
-       }\r
-       \r
-       public Composite createAcceptedTaxon(IManagedForm form, Taxon taxon) {\r
-               \r
-               // Put the taxon's form in the form map\r
-               Assert.isNotNull(form, "A non-null IManagedForm must be provided.");\r
-               getTaxonNameForms().put(taxon, form);\r
-               \r
-               // Create a homotypic group composite for the accepted taxon\r
-               HomotypicalGroup group = taxon.getHomotypicGroup();\r
-               Assert.isNotNull(group, "Taxon does not have a homotypic group");\r
-               Composite groupComposite = createHomotypicalGroup(taxon, group);\r
-                               \r
-               // Create a name composite for the accepted taxon\r
-               Composite acceptedNameComposite =\r
-                               new AcceptedNameComposite(groupComposite, form, taxon);\r
-       \r
-               // Return the name composite\r
-               return acceptedNameComposite;\r
-       }\r
-       \r
-       public Composite createSynonym(Taxon taxon, Synonym synonym) {\r
-               \r
-               // Get the taxon's form\r
-               IManagedForm form = getNameForm(taxon);\r
-               Assert.isNotNull(form, "No IManagedForm has been provided for the synonym's accepted taxon.");\r
-               \r
-               // Get the synonym's homotypic group\r
-               HomotypicalGroup group = synonym.getHomotypicGroup();\r
-               Assert.isNotNull(group, "Synonym does not have a homotypic group");\r
-               \r
-               // If the group doesn't yet have a composite, create one and add it to the repository\r
-               Composite groupComposite = \r
-                               EditorController.getNameEditor(taxon).getHomotypicGroup(group);\r
-               if (groupComposite == null) {\r
-                       groupComposite = createHomotypicalGroup(taxon, group);\r
-               }\r
-                               \r
-               // Create a synonym composite in the homotypic group\r
-               Composite synonymComposite = \r
-                               new SynonymComposite(groupComposite, form, taxon, synonym);\r
-                               \r
-               return synonymComposite;\r
-       }\r
-       \r
-       \r
-       public Composite createMisappliedName(Taxon taxon, Taxon misappliedName) {\r
-\r
-               // Get the taxon's form\r
-               IManagedForm form = getNameForm(taxon);\r
-               Assert.isNotNull(form, "No IManagedForm has been provided for the synonym's accepted taxon.");\r
-                               \r
-               // If there is no composite for misapplied names, \r
-               //      create one and add it to the repository\r
-               Composite groupComposite = \r
-                               EditorController.getNameEditor(taxon).getMisappliedGroup();\r
-               if (groupComposite == null) {\r
-                       groupComposite = createMisappliedGroup(taxon);\r
-               }\r
-               \r
-               // Create the name's composite\r
-               Composite composite = new MisappliedNameComposite\r
-                               (groupComposite, form, taxon, misappliedName);\r
-               \r
-               return composite;\r
-       }\r
-       \r
-       \r
-       public Composite createMisappliedGroup(Taxon taxon) {\r
-               \r
-               // Get the taxon's form\r
-               IManagedForm form = getNameForm(taxon);\r
-               Assert.isNotNull(form, "No IManagedForm has been provided for the misapplied group's accepted taxon.");\r
-\r
-               // Create the group composite\r
-               Composite groupComposite = new MisappliedGroupComposite(getTopLevelComposite(form), taxon);\r
-               groupComposite.addFocusListener(new CompositeBorderDecorator(groupComposite, form));\r
-               \r
-               // Put the group composite before concept group composite, if any\r
-               Composite conceptGroupComposite = \r
-                       EditorController.getNameEditor(taxon).getConceptGroup();\r
-               if (conceptGroupComposite != null) {\r
-                       groupComposite.moveAbove(conceptGroupComposite);\r
-               }\r
-               \r
-               return groupComposite;\r
-       }\r
-       \r
-       public Composite createHomotypicalGroup(Taxon taxon, HomotypicalGroup group) {\r
-\r
-               // Get the taxon's form\r
-               IManagedForm form = getNameForm(taxon);\r
-               Assert.isNotNull(form, "No IManagedForm has been provided for the homotypical group's accepted taxon.");\r
-\r
-               // Create the group composite\r
-               Composite groupComposite = new HomotypicalGroupComposite(getTopLevelComposite(form), taxon, group);\r
-               groupComposite.addFocusListener(new CompositeBorderDecorator(groupComposite, form));            \r
-                               \r
-               return groupComposite;\r
-       }\r
-\r
-       private Map<Taxon, IManagedForm> getTaxonNameForms() {\r
-               if (nameForms == null) {\r
-                       nameForms = new HashMap<Taxon, IManagedForm>();\r
-               }\r
-               return nameForms;\r
-       }\r
-       \r
-       private IManagedForm getNameForm(Taxon taxon) {\r
-               return getTaxonNameForms().get(taxon);\r
-       }\r
-               \r
-       private Composite getTopLevelComposite(IManagedForm form) {\r
-               return form.getForm().getBody();\r
-       }\r
-\r
-       \r
-       public Composite createConcept(Taxon taxon, TaxonRelationship relationship) {\r
-               // Get the taxon's form\r
-               IManagedForm form = getNameForm(taxon);\r
-               Assert.isNotNull(form, "No IManagedForm has been provided for the synonym's accepted taxon.");\r
-                               \r
-               // If there is no composite for misapplied names, \r
-               //      create one and add it to the repository\r
-               Composite groupComposite = \r
-                               EditorController.getNameEditor(taxon).getConceptGroup();\r
-               if (groupComposite == null) {\r
-                       groupComposite = createConceptGroup(taxon);\r
-               }\r
-               \r
-               // Create the name's composite\r
-               Composite composite = ConceptComposite.getNewInstance(groupComposite, form, \r
-                                                                       taxon, relationship);\r
-                               \r
-               return composite;\r
-       }\r
-\r
-       \r
-       public Composite createConceptGroup(Taxon taxon) {\r
-               \r
-               // Get the taxon's form\r
-               IManagedForm form = getNameForm(taxon);\r
-               Assert.isNotNull(form, "No IManagedForm has been provided for the concept group's accepted taxon.");\r
-\r
-               // Create the group composite\r
-               Composite groupComposite = new ConceptGroupComposite(getTopLevelComposite(form), taxon);\r
-               groupComposite.addFocusListener(new CompositeBorderDecorator(groupComposite, form));\r
-               \r
-               // Put the group composite after misapplied group composite, if any\r
-               Composite misappliedGroupComposite = \r
-                       EditorController.getNameEditor(taxon).getMisappliedGroup();\r
-               if (misappliedGroupComposite != null) {\r
-                       groupComposite.moveBelow(misappliedGroupComposite);\r
-               }\r
-               \r
-               return groupComposite;\r
-\r
-       }\r
-\r
-       \r
-       public Composite createDescriptionLabel(IManagedForm form, Taxon taxon,\r
-                       TaxonDescription description) {\r
-               \r
-               // Put the taxon's form in the form map if no other description has done so\r
-               Assert.isNotNull(form, "A non-null IManagedForm must be provided.");\r
-               getTaxonDescriptionForms().put(taxon, form);\r
-               \r
-               // Create a group composite for the description\r
-               Composite groupComposite = createDescriptionGroup(taxon, description);\r
-                               \r
-               // Create label composite\r
-               Composite labelComposite =\r
-                               new DescriptionLabelComposite(groupComposite, form, description);\r
-       \r
-               // Return the label composite\r
-               return labelComposite;\r
-       }\r
-\r
-       \r
-       public Composite createDescriptionElement(Taxon taxon, TaxonDescription description,\r
-                       DescriptionElementBase element) {\r
-               \r
-               // Get the taxon's form\r
-               IManagedForm form = getDescriptionForm(taxon);\r
-               Assert.isNotNull(form, "No IManagedForm has been provided for the element's taxon.");\r
-\r
-               // Get the element's feature\r
-               Feature feature = element.getFeature();\r
-               Assert.isNotNull(feature, "Element does not have a feature.");\r
-                                                       \r
-               // If the feature doesn't yet have a composite, create one and add it to the repository\r
-               Composite groupComposite = EditorController.getDescriptionEditor(taxon)\r
-                                                                               .getDescriptionFeatureGroup(description, feature);\r
-               if (groupComposite == null) {\r
-                       groupComposite = createDescriptionFeatureGroup(taxon, description, feature);\r
-               }\r
-                               \r
-               // Create an element composite in the feature group according to its type\r
-               Composite elementComposite = null;\r
-               if (element.isInstanceOf(CommonTaxonName.class)) {\r
-                       elementComposite =\r
-                                       new CommonNameComposite(groupComposite, form, (CommonTaxonName) element);\r
-               } else {\r
-                       elementComposite = \r
-                                       new DescriptionElementComposite(groupComposite, form, element);\r
-               }\r
-                               \r
-               return elementComposite;\r
-       }\r
-\r
-       \r
-       public Composite createDescriptionGroup(Taxon taxon,\r
-                       TaxonDescription description) {\r
-               \r
-               // Get the taxon's form\r
-               IManagedForm form = getDescriptionForm(taxon);\r
-               Assert.isNotNull(form, "No IManagedForm has been provided for the description's taxon.");\r
-\r
-               // Create the group composite\r
-               GroupComposite groupComposite = new DescriptionGroupComposite(getTopLevelComposite(form), taxon, description);\r
-               groupComposite.addFocusListener(new CompositeBorderDecorator(groupComposite, form));\r
-               groupComposite.setDroppable(false);\r
-                               \r
-               return groupComposite;\r
-       }\r
-               \r
-       \r
-       public Composite createDescriptionFeatureGroup(Taxon taxon,\r
-                       TaxonDescription description, Feature feature) {\r
-\r
-               // Get the taxon's form\r
-               IManagedForm form = getDescriptionForm(taxon);\r
-               Assert.isNotNull(form, "No IManagedForm has been provided for the feature's taxon.");\r
-               \r
-               // Description label should be created before adding features\r
-               Composite descriptionGroupComposite = \r
-                       EditorController.getDescriptionEditor(taxon).getDescriptionGroup(description);\r
-               Assert.isNotNull(descriptionGroupComposite, \r
-                               "Description group must be created - usually by creating its label - before adding features.");\r
-               \r
-               // Create the group composite\r
-               Composite groupComposite = new DescriptionFeatureGroupComposite\r
-                                                                               (descriptionGroupComposite, taxon, description, feature);\r
-               groupComposite.addFocusListener(new CompositeBorderDecorator(groupComposite, form));    \r
-               \r
-               return groupComposite;          \r
-       }\r
-       \r
-       private Map<Taxon, IManagedForm> getTaxonDescriptionForms() {\r
-               if (descriptionForms == null) {\r
-                       descriptionForms = new HashMap<Taxon, IManagedForm>();\r
-               }\r
-               return descriptionForms;\r
-       }\r
-       \r
-\r
-       private IManagedForm getDescriptionForm(Taxon taxon) {\r
-               return getTaxonDescriptionForms().get(taxon);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.IFreeTextElementFactory#createImageElement(org.eclipse.ui.forms.ManagedForm, eu.etaxonomy.cdm.model.taxon.Taxon, java.net.URL)\r
-        */\r
-       public Composite createImageElement(ManagedForm form, Taxon taxon, URL url) {\r
-                               \r
-               // Get the taxon's form\r
-               Assert.isNotNull(form, "A non-null IManagedForm must be provided.");\r
-\r
-               // Get the group composite for all images\r
-               GroupComposite groupComposite = \r
-                               EditorController.getImageEditor(taxon).getImageGroup();\r
-               if (groupComposite == null) {\r
-                       groupComposite = createImagesGroup(taxon, form);\r
-               }\r
-               \r
-               // Create the image composite\r
-               GroupedComposite imageComposite = new ImageComposite(groupComposite, form, taxon, url);\r
-               imageComposite.addFocusListener(new CompositeBorderDecorator(imageComposite, form));\r
-                               \r
-               return imageComposite;\r
-       }\r
-\r
-       /**\r
-        * @param taxon\r
-        * @param form2 \r
-        * @return\r
-        */\r
-       private GroupComposite createImagesGroup(Taxon taxon, ManagedForm form) {\r
-\r
-               // Create the group composite\r
-               GroupComposite groupComposite = new ImagesGroupComposite(getTopLevelComposite(form), taxon);            \r
-                               \r
-               return groupComposite;\r
-       }\r
-\r
-       /**\r
-        * @param taxon\r
-        * @return\r
-        */\r
-       private IManagedForm getImagesForm(Taxon taxon) {\r
-               return getTaxonImagesForms().get(taxon);\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       private Map<Taxon, IManagedForm> getTaxonImagesForms() {\r
-               if (imagesForms == null) {\r
-                       imagesForms = new HashMap<Taxon, IManagedForm>();\r
-               }\r
-               return imagesForms;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.IFreeTextElementFactory#createTaxonHasNoImagesElement(org.eclipse.ui.forms.ManagedForm, eu.etaxonomy.cdm.model.taxon.Taxon)\r
-        */\r
-       public Composite createTaxonHasNoImagesElement(ManagedForm form,\r
-                       Taxon taxon) {\r
-               // Get the taxon's form\r
-               Assert.isNotNull(form, "A non-null IManagedForm must be provided.");\r
-\r
-               // Get the group composite for all images\r
-               GroupComposite groupComposite = \r
-                               EditorController.getImageEditor(taxon).getImageGroup();\r
-               if (groupComposite == null) {\r
-                       groupComposite = createImagesGroup(taxon, form);\r
-               }\r
-               \r
-               // Create the image composite\r
-               GroupedComposite imageComposite = new TaxonHasNoImagesComposite(groupComposite, form, taxon);\r
-                               \r
-               return imageComposite;          \r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupComposite.java
deleted file mode 100644 (file)
index 742d114..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DropTarget;\r
-import org.eclipse.swt.dnd.DropTargetAdapter;\r
-import org.eclipse.swt.dnd.DropTargetEvent;\r
-import org.eclipse.swt.dnd.DropTargetListener;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.ui.forms.widgets.TableWrapData;\r
-import org.eclipse.ui.forms.widgets.TableWrapLayout;\r
-\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.actions.WidgetTransfer;\r
-import eu.etaxonomy.taxeditor.editor.name.ConceptComposite;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 25.06.2008\r
- * @version 1.0\r
- */\r
-public class GroupComposite extends Composite {\r
-       private static final Logger logger = Logger.getLogger(GroupComposite.class);\r
-       \r
-       private DropTarget target;\r
-       private DropTargetListener dropListener;\r
-               \r
-       public GroupComposite(Composite parent) {\r
-               super(parent, SWT.NONE);\r
-\r
-               // Graphic layout of composite\r
-               this.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB));\r
-               this.setLayout(new TableWrapLayout());\r
-               Color groupBackgroundColor = TaxEditorPlugin.getDefault().\r
-                               getColor(ITaxEditorConstants.GROUP_GRAY_BKG_COLOR);\r
-               this.setBackground(groupBackgroundColor);\r
-\r
-               // Drop functionality\r
-               this.setDroppable(true);\r
-       }\r
-       \r
-       public void setDroppable(boolean droppable) {\r
-               if (droppable) {\r
-                       Transfer[] types = new Transfer[] {WidgetTransfer.getInstance()};       \r
-                       int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_DEFAULT;\r
-                       target = new DropTarget(this, operations);\r
-                       target.setTransfer(types);\r
-                       dropListener = new DropTargetAdapter() {\r
-                                                       \r
-                               public void dragEnter(DropTargetEvent event) {\r
-                                       GroupComposite.this.notifyListeners(SWT.FocusIn, null);\r
-                               }\r
-                               \r
-                               public void dragLeave(DropTargetEvent event) {\r
-                                       GroupComposite.this.notifyListeners(SWT.FocusOut, null);\r
-                               }\r
-                               \r
-                               public void drop(DropTargetEvent event) {\r
-                                                                       \r
-                                       if (event.data instanceof GroupedComposite) {\r
-                                               \r
-                                               final GroupedComposite composite = (GroupedComposite) event.data;\r
-                                               if (composite.getDragSource() != null) {\r
-                                                       \r
-                                                       // Make sure composite is not being dropped onto its current parent\r
-                                                       if ( isDroppable(composite) && ! composite.getParent().equals(GroupComposite.this)) {\r
-                                                               \r
-                                                               // Change parent at end of drag event\r
-                                                               composite.getDragSource().addListener(DND.DragEnd, new Listener() {\r
-                                                                       \r
-                                                                       public void handleEvent(Event event) {\r
-                                                                               composite.setParent(GroupComposite.this);\r
-                                                                       }\r
-                                                               });\r
-                                                       }                                                       \r
-                                               }\r
-                                       }\r
-                               }\r
-                       };\r
-                       target.addDropListener(dropListener);                   \r
-               } else {\r
-                       if (dropListener != null) {\r
-                               target.removeDropListener(dropListener);\r
-                       }\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * Checks whether a GroupedComposite is allowed to be dropped on this.\r
-        * \r
-        * @param composite\r
-        * @return\r
-        */\r
-       protected boolean isDroppable(GroupedComposite composite) {\r
-               return true;\r
-       }\r
-\r
-       public void dispose() {\r
-               \r
-               if (target != null) {\r
-                       target.removeDropListener(dropListener);\r
-                       target.dispose();\r
-               }\r
-                               \r
-               super.dispose();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupCompositeLabel.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupCompositeLabel.java
deleted file mode 100644 (file)
index 027a301..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.ui.forms.widgets.TableWrapData;\r
-import org.eclipse.ui.forms.widgets.TableWrapLayout;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 10.09.2008\r
- * @version 1.0\r
- */\r
-public class GroupCompositeLabel extends Composite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(GroupCompositeLabel.class);\r
-\r
-       public GroupCompositeLabel(Composite parent, String labelText) {\r
-               super(parent, SWT.NONE);\r
-               \r
-               // TODO move to group composite?\r
-               \r
-               TableWrapLayout tableWrapLayout = new TableWrapLayout();\r
-               tableWrapLayout.horizontalSpacing = 1;\r
-               tableWrapLayout.rightMargin = 10;\r
-               tableWrapLayout.leftMargin = 10;\r
-               tableWrapLayout.bottomMargin = 1;\r
-               tableWrapLayout.topMargin = 1;\r
-               tableWrapLayout.verticalSpacing = 1;\r
-               setLayout(tableWrapLayout);\r
-               setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB, TableWrapData.MIDDLE));\r
-               \r
-               // Add the label\r
-               final Label label = new Label(this, SWT.NONE);\r
-               label.setText(labelText.toUpperCase());\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupedComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/GroupedComposite.java
deleted file mode 100644 (file)
index 270e953..0000000
+++ /dev/null
@@ -1,581 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.TextViewer;\r
-import org.eclipse.jface.window.DefaultToolTip;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DragSource;\r
-import org.eclipse.swt.dnd.DragSourceAdapter;\r
-import org.eclipse.swt.dnd.DragSourceEvent;\r
-import org.eclipse.swt.dnd.DragSourceListener;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.events.ControlAdapter;\r
-import org.eclipse.swt.events.ControlEvent;\r
-import org.eclipse.swt.events.ControlListener;\r
-import org.eclipse.swt.events.FocusAdapter;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.graphics.GC;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.forms.widgets.TableWrapData;\r
-import org.eclipse.ui.forms.widgets.TableWrapLayout;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.actions.WidgetTransfer;\r
-import eu.etaxonomy.taxeditor.editor.name.NameViewer;\r
-\r
-/** \r
- * Formats <code>GroupedComposite</code> with cosmetic and layout properties specific to the\r
- * Editor. This should be used to maintain a consistent look and feel for all Editor \r
- * freetext area components, such as DescriptionElementComposite.\r
- * <p>\r
- * Requires an <code>IManagedForm</code>, whose <code>input</code> is set to the contents\r
- * of {@link #getData()} when the <code>GroupedComposite</code> gets focus, i.e. to\r
- * populate the property sheet with the data.\r
- * </p>\r
- * <p>\r
- * The <code>IManagedForm</code> is also required to have a <code>Taxon</code> in its \r
- * own <code>getData()</code>.\r
- * </p> \r
- * <p>\r
- * The <code>IManagedForm</code> can also used for drawing borders by calling the method \r
- * <code>createBorderSupport()</code>.\r
- * </p>\r
- * @author p.ciardelli\r
- * @created 02.06.2008\r
- * @version 1.0\r
- */\r
-abstract public class GroupedComposite extends Composite implements IHasPropertySource {       \r
-       private static final Logger logger = Logger.getLogger(GroupedComposite.class);\r
-       \r
-       protected NameViewer textViewer;\r
-       protected IManagedForm managedForm;\r
-       private Label nonEditableInfoLabel;\r
-       private DefaultToolTip nonEditableInfoHover;\r
-       \r
-       protected Taxon taxon;\r
-       \r
-       private CompositeBorderDecorator borderDecorator;       \r
-       private FocusListener focusListener;\r
-       private LineBreakListener lineBreakListener;\r
-       private ParseListener parseListener;\r
-\r
-       private String emptyViewerPrompt;\r
-       \r
-       /**\r
-        * @param parent\r
-        * @param managedForm\r
-        */\r
-       public GroupedComposite(Composite parent, IManagedForm managedForm) {\r
-               super(parent, SWT.NONE);\r
-                               \r
-               this.managedForm = managedForm;\r
-               \r
-               Object formData = managedForm.getForm().getBody().getData();\r
-               Assert.isTrue(formData instanceof Taxon, \r
-                               "Managed form must have a Taxon in its data field.");\r
-               taxon = (Taxon) formData;\r
-\r
-               createControl();\r
-       }\r
-                       \r
-       protected void createControl() {\r
-               setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB));\r
-               TableWrapLayout layout = new TableWrapLayout();\r
-               layout.leftMargin = 0;\r
-               layout.topMargin = 0;\r
-               layout.bottomMargin = 0;\r
-               layout.verticalSpacing = 0;\r
-               setLayout(layout);\r
-               \r
-               Color groupBackgroundColor = TaxEditorPlugin.getDefault().\r
-                               getColor(ITaxEditorConstants.GROUP_GRAY_BKG_COLOR);\r
-               setBackground(groupBackgroundColor);\r
-       }\r
-\r
-       protected void createLineWrapSupport() {\r
-               if (textViewer instanceof NameViewer) {\r
-                       new LineWrapSupport(textViewer, managedForm);\r
-               } else {\r
-                       logger.warn("Can't create line wrap support because textViewer has not been initialized.");\r
-               }\r
-       }\r
-       \r
-       public Taxon getTaxon() {\r
-               return taxon;\r
-       }\r
-       \r
-       protected void createTextViewer() {\r
-               textViewer = new NameViewer(this);\r
-               \r
-               focusListener = new FocusAdapter() {\r
-                       public void focusGained(FocusEvent e) {\r
-                               setFocus();\r
-                       }\r
-               };\r
-               \r
-               textViewer.getTextWidget().addFocusListener(focusListener);\r
-       }\r
-       \r
-       /**\r
-        * @param icon\r
-        */\r
-       public void setIcon(Image icon) {\r
-               if (textViewer instanceof NameViewer) {\r
-                       textViewer.setIcon(icon);\r
-               } else {\r
-                       logger.warn("Can't set icon because textViewer has not been initialized.");\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * @param indent\r
-        */\r
-       public void setIndent(int indent) {\r
-               if (getLayout() instanceof TableWrapLayout) {\r
-                       TableWrapLayout layout = ((TableWrapLayout) getLayout());\r
-                       layout.leftMargin = indent;\r
-                       this.setLayout(layout);\r
-               } else {\r
-                       logger.warn("Couldn't indent - composite's layout must be TableWrapLayout.");\r
-               }\r
-       }       \r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.swt.widgets.Composite#setFocus()\r
-        */\r
-       public boolean setFocus() {\r
-               setSelection();\r
-               return true;\r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       protected void setSelection() {\r
-               managedForm.setInput(this);\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.swt.widgets.Control#setFont(org.eclipse.swt.graphics.Font)\r
-        */\r
-       public void setFont(Font font) {\r
-               if (textViewer != null) {\r
-                       textViewer.getTextWidget().setFont(font);\r
-               } else {\r
-                       logger.warn("Can't set font because textViewer has not been initalized.");\r
-               }\r
-       }\r
-       \r
-       public TextViewer getTextViewer() {\r
-               return textViewer;\r
-       }\r
-       \r
-       /**\r
-        * If <code>textViewer</code> has already been set, it will show a \r
-        * <code>prompt</code> along the lines of "Click here to start entering data" \r
-        * when empty.\r
-        * \r
-        * @param prompt\r
-        */\r
-       public void createEmptyViewerPrompt(final String prompt) {\r
-               \r
-               emptyViewerPrompt = prompt;\r
-               \r
-               Assert.isNotNull(textViewer);\r
-//             new EmptyTextViewerPrompt(getTextViewer(), prompt);\r
-                \r
-               final StyledText textControl = textViewer.getTextWidget();\r
-               final IDocument document = textViewer.getDocument();\r
-               final Font promptFont = TaxEditorPlugin.getDefault()\r
-                               .getFont(ITaxEditorConstants.DEFAULT_PROMPT_FONT);\r
-               setFocusListener(new FocusListener() {\r
-                       \r
-                       public void focusGained(FocusEvent e) { \r
-                               if (document.get().equals(prompt)) {\r
-                                       textControl.setFont(getViewerFont());\r
-                                       document.set("");\r
-                               }\r
-                       }\r
-                       \r
-                       public void focusLost(FocusEvent e) {\r
-                               if (document.getLength() == 0) {\r
-                                       initEmptyText();\r
-                               }\r
-                       }\r
-               });\r
-               textControl.addFocusListener(getFocusListener());\r
-               \r
-               if (document.getLength() == 0) {\r
-                       textControl.setFont(promptFont);\r
-                       document.set(prompt);\r
-               }\r
-       }\r
-\r
-\r
-       abstract protected Font getViewerFont();\r
-\r
-       protected void initEmptyText() {\r
-               textViewer.getTextWidget().setFont(\r
-                               TaxEditorPlugin.getDefault()\r
-                                       .getFont(ITaxEditorConstants.DEFAULT_PROMPT_FONT));\r
-               \r
-               textViewer.getDocument().set(getEmptyTextPrompt());\r
-       }\r
-\r
-       protected String getEmptyTextPrompt() {\r
-               if (emptyViewerPrompt == null) {\r
-                       emptyViewerPrompt = "Click to edit";\r
-               }\r
-               return emptyViewerPrompt;\r
-       }\r
-\r
-       private void setFocusListener(FocusListener focusListener) {\r
-               this.focusListener = focusListener;\r
-       }\r
-\r
-       private FocusListener getFocusListener() {\r
-               return focusListener;\r
-       }\r
-               \r
-       /**\r
-        * \r
-        */\r
-       public void createBorderSupport() {\r
-               \r
-               if (textViewer == null) {\r
-                       logger.warn("Could not create border support - getTextViewer() returned null.");\r
-               } else {\r
-                       borderDecorator = new CompositeBorderDecorator(\r
-                                       textViewer.getTextWidget(), managedForm);               \r
-                       borderDecorator.setLoseFocus(false);\r
-                       textViewer.getTextWidget().addFocusListener(borderDecorator);\r
-               }\r
-       }\r
-       \r
-       protected void setBorderDecorator(CompositeBorderDecorator borderDecorator) {\r
-               this.borderDecorator = borderDecorator;\r
-       }\r
-       \r
-       protected CompositeBorderDecorator getBorderDecorator() {\r
-               return borderDecorator;\r
-       }       \r
-       \r
-       public void drawBorder() {\r
-               if (borderDecorator != null) {\r
-                       borderDecorator.paintBorder();\r
-               }\r
-       }\r
-\r
-       /**\r
-        * @param isDirty\r
-        */\r
-       protected void setDirty(boolean isDirty) {\r
-               managedForm.dirtyStateChanged();\r
-       }\r
-               \r
-       protected ContextMenu createContextMenu() {\r
-               if (textViewer != null) {\r
-                       ContextMenu contextMenu = new ContextMenu(textViewer.getRulerControl());\r
-                       textViewer.getTextWidget().setMenu(contextMenu.getMenu());\r
-                       return contextMenu;\r
-               } else {\r
-                       logger.warn("Can't create menu because textViewer has not been initalized.");\r
-                       return null;\r
-               }\r
-       }\r
-       \r
-       public void unpaintBorder() {\r
-               if (borderDecorator != null) {\r
-                       borderDecorator.unpaintBorder();\r
-               }\r
-       }\r
-       \r
-       private Control draggableControl;\r
-       private DragSource dragSource;\r
-       \r
-       protected void setDraggableControl(Control control) {\r
-               draggableControl = control;\r
-       }\r
-\r
-       public DragSource getDragSource() {\r
-               return dragSource;\r
-       }\r
-       \r
-       public void setIsDraggable(boolean draggable) {\r
-\r
-               if (draggable) {\r
-\r
-                       if (dragSource != null) {\r
-                               // Already initialized\r
-                               return;\r
-                       }\r
-\r
-                       if (draggableControl == null) {\r
-                               throw new NullPointerException(\r
-                                               "Draggable control must be set to add draggability");\r
-                       }\r
-                       \r
-                       Transfer[] types = new Transfer[] { WidgetTransfer.getInstance() };                     \r
-                       int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK;\r
-\r
-                       dragSource = new DragSource(draggableControl, operations);\r
-                       dragSource.setTransfer(types);\r
-                       dragSource.addDragListener(dragSourceListener);\r
-\r
-               } else {\r
-                       dragSource = null;\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Drag listener which passes the Composite as the data in a drag event.\r
-        */\r
-       DragSourceListener dragSourceListener = new DragSourceAdapter() {\r
-\r
-               public void dragStart(DragSourceEvent event) {\r
-                       if (textViewer != null) {\r
-                               textViewer.getTextWidget().setFocus();\r
-                       }\r
-                       event.doit = true;\r
-               }\r
-               \r
-               public void dragSetData(DragSourceEvent event) {\r
-                       WidgetTransfer.getInstance().setWidget(GroupedComposite.this);\r
-               }\r
-       };\r
-\r
-       private String nonEditableText;\r
-       ControlListener nonEditableResizeListener = new ControlAdapter() {\r
-               \r
-               int width = 0;\r
-               \r
-               public void controlResized(ControlEvent e) {\r
-                       if (nonEditableInfoLabel.getBounds().width == width) {\r
-                               return;\r
-                       }\r
-                       width = nonEditableInfoLabel.getBounds().width;\r
-                       if (nonEditableInfoLabel.getBounds().width > 0) {\r
-                               nonEditableInfoLabel.setText(\r
-                                               Dialog.shortenText(nonEditableText.toUpperCase(), \r
-                                               nonEditableInfoLabel));\r
-                       }\r
-               }\r
-       };\r
-\r
-       private String nonEditableHoverText;\r
-\r
-       private LabelEllipsisListener nonEditableLabelEllipsisListener;\r
-                       \r
-       /**\r
-        * nonEditableInfo is a label displayed underneath a GroupedComposite's \r
-        * input field. For instance, NameComposites display things like name relations,\r
-        * sec. references, etc. here.\r
-        * \r
-        * @param info\r
-        */\r
-       public void setNonEditableInfo(String info) {\r
-               // TODO non editable info should only be drawn once, when everything else is drawn\r
-               info = info.toUpperCase();\r
-               if (nonEditableInfoLabel == null) {\r
-                       nonEditableText = info;\r
-                       nonEditableHoverText = info;\r
-                       \r
-                       nonEditableInfoLabel = new Label(this, SWT.NONE);\r
-                       TableWrapData layoutData = new TableWrapData(TableWrapData.FILL_GRAB, TableWrapData.TOP);\r
-                       // Set indent to viewer ruler's width \r
-                       if (textViewer != null && textViewer.getRulerControl() != null) {\r
-                               // TODO right justify\r
-                               layoutData.indent = NameViewer.RULER_WIDTH;\r
-                       }\r
-                       nonEditableInfoLabel.setLayoutData(layoutData);\r
-                       \r
-\r
-                       \r
-                       nonEditableLabelEllipsisListener = new LabelEllipsisListener(nonEditableInfoLabel) {\r
-                               @Override\r
-                               public String getLabelText() {\r
-                                       return nonEditableText.toUpperCase();\r
-                               }\r
-                       }; \r
-                       nonEditableInfoLabel.addControlListener(nonEditableLabelEllipsisListener);\r
-                       \r
-                       nonEditableInfoHover = new DefaultToolTip(nonEditableInfoLabel);\r
-                       nonEditableInfoHover.setRespectDisplayBounds(true);\r
-                       \r
-               } else {\r
-                       nonEditableText += ", " + info;\r
-                       nonEditableHoverText += "\n" + info;\r
-                       \r
-               }\r
-               nonEditableInfoHover.setText(nonEditableHoverText);\r
-       }\r
-       \r
-       /**\r
-        * If the user entering text requires parsing, call this method and override\r
-        * the method parse().\r
-        */\r
-       protected void createParser() {\r
-               if (textViewer != null) {\r
-                       parseListener = new ParseListener() {\r
-                               @Override\r
-                               public void parse(String text) {\r
-                                       GroupedComposite.this.parse(text);\r
-                               }\r
-                       };\r
-                       textViewer.getTextWidget().addModifyListener(parseListener);\r
-               } else {\r
-                       logger.warn("Can't create parser because textViewer has not been initalized.");\r
-               }\r
-       }\r
-\r
-       protected void parse(String text) {\r
-               logger.warn("No parse method defined for this composite.");\r
-       }\r
-       \r
-       /**\r
-        * If the user hitting carriage return should cause something to happen -\r
-        * i.e. the creation of a new composite - call this method and override\r
-        * the method handleSplitText().\r
-        */\r
-       protected void createLineBreakListener() {\r
-               if (textViewer != null) {\r
-                       lineBreakListener = new LineBreakListener() {\r
-                               @Override\r
-                               public void handleSplitText(String text) {\r
-                                       GroupedComposite.this.handleSplitText(text);    \r
-                               }\r
-                       };\r
-                       \r
-                       textViewer.getTextWidget().addVerifyListener(lineBreakListener);\r
-                       textViewer.getTextWidget().addKeyListener(lineBreakListener);\r
-               } else {\r
-                       logger.warn("Can't create line break listener because textViewer has not been initalized.");\r
-               }\r
-       }\r
-       \r
-       protected void handleSplitText(String text) {\r
-               logger.warn("No handleSplitText method defined for this composite.");\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.name.GroupedComposite#dispose()\r
-        */\r
-       public void dispose () {\r
-               \r
-               if (dragSource != null) {\r
-                       dragSource.removeDragListener(dragSourceListener);\r
-               }               \r
-               \r
-               if (textViewer != null) {\r
-                       StyledText textWidget = textViewer.getTextWidget();\r
-               \r
-                       if (focusListener != null) {\r
-                               textWidget.removeFocusListener(focusListener);\r
-                       }\r
-                       \r
-                       if (parseListener != null) {\r
-                               textWidget.removeModifyListener(parseListener);\r
-                       }\r
-                       \r
-                       if (lineBreakListener != null) {\r
-                               textWidget.removeVerifyListener(lineBreakListener);\r
-                               textWidget.removeKeyListener(lineBreakListener);\r
-                       }\r
-                       \r
-                       if (borderDecorator != null) {\r
-                               textWidget.removeFocusListener(borderDecorator);\r
-                       }\r
-               }\r
-               \r
-               if (nonEditableInfoLabel != null && nonEditableLabelEllipsisListener != null) {\r
-                       nonEditableInfoLabel.removeControlListener(nonEditableLabelEllipsisListener);\r
-               }\r
-\r
-               super.dispose();\r
-       }\r
-       \r
-       public static final String ELLIPSIS = "...";\r
-       \r
-       /**\r
-        * @param textValue\r
-        * @param control\r
-        * @return\r
-        * @see org.eclipse.jface.dialogs.Dialog#shortenText(String, Control)\r
-        */\r
-       public static String shortenText(String textValue, Control control) {\r
-               if (textValue == null) {\r
-                       return null;\r
-               }\r
-               GC gc = new GC(control);\r
-               int maxWidth = control.getBounds().width;\r
-               int maxExtent = gc.textExtent(textValue).x;\r
-               if (maxExtent < maxWidth) {\r
-                       gc.dispose();\r
-                       return textValue;\r
-               }\r
-               int length = textValue.length();\r
-               int charsToClip = Math.round(0.95f*length * (1 - ((float)maxWidth/maxExtent)));\r
-               \r
-               int end = length - charsToClip;\r
-               while (end > 0) {\r
-                       String s1 = textValue.substring(0, end);\r
-                       String s = s1 + ELLIPSIS;\r
-                       int l = gc.textExtent(s).x;\r
-                       if (l < maxWidth) {\r
-                               gc.dispose();\r
-                               return s;\r
-                       }\r
-                       end--;\r
-               }\r
-               gc.dispose();\r
-               return textValue;\r
-               \r
-       }\r
-       \r
-       abstract class LabelEllipsisListener extends ControlAdapter {\r
-               \r
-               private Label label;\r
-               int width = 0;\r
-\r
-               LabelEllipsisListener(Label label) {\r
-                       this.label = label;\r
-               }\r
-               \r
-               abstract public String getLabelText();\r
-               \r
-               public void controlResized(ControlEvent e) {\r
-                       if (label.getBounds().width == width) {\r
-                               return;\r
-                       }\r
-                       width = label.getBounds().width;\r
-                       if (label.getBounds().width > 0) {\r
-                               label.setText(\r
-//                                             Dialog.shortenText(getLabelText(), label));\r
-                                               shortenText(getLabelText(), label));\r
-                       }\r
-               }\r
-       }\r
-} 
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/IFreeTextElementFactory.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/IFreeTextElementFactory.java
deleted file mode 100644 (file)
index 446989a..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import java.net.URL;\r
-\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.forms.ManagedForm;\r
-\r
-import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
-\r
-/** \r
- * @author p.ciardelli\r
- * @created 08.01.2009\r
- * @version 1.0\r
- */\r
-public interface IFreeTextElementFactory {\r
-\r
-       /* Taxon name editor elements */\r
-       \r
-       public Composite createAcceptedTaxon(IManagedForm form, Taxon taxon);\r
-       \r
-       public Composite createSynonym(Taxon taxon, Synonym synonym);\r
-\r
-       public Composite createMisappliedName(Taxon taxon, Taxon misappliedName);\r
-       \r
-       public Composite createHomotypicalGroup(Taxon taxon, HomotypicalGroup group);\r
-       \r
-       public Composite createMisappliedGroup(Taxon taxon);\r
-       \r
-       public Composite createConceptGroup(Taxon taxon);\r
-\r
-       public Composite createConcept(Taxon taxon, TaxonRelationship relationship);\r
-       \r
-       /* Taxon description editor elements */\r
-       \r
-       public Composite createDescriptionLabel(IManagedForm form, Taxon taxon, TaxonDescription description);\r
-       \r
-       public Composite createDescriptionElement(Taxon taxon, TaxonDescription description, DescriptionElementBase element);\r
-       \r
-       public Composite createDescriptionGroup(Taxon taxon, TaxonDescription description);\r
-       \r
-       public Composite createDescriptionFeatureGroup(Taxon taxon, TaxonDescription description, Feature feature);\r
-\r
-       public Composite createImageElement(ManagedForm managedForm, Taxon taxon, URL url);\r
-\r
-       public Composite createTaxonHasNoImagesElement(ManagedForm managedForm, Taxon taxon);\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/IHasPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/IHasPropertySource.java
deleted file mode 100644 (file)
index 1172880..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 21.11.2008\r
- * @version 1.0\r
- */\r
-public interface IHasPropertySource {\r
-       public IPropertySource getPropertySource();\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineBreakListener.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineBreakListener.java
deleted file mode 100644 (file)
index 0f63607..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Collection;\r
-import java.util.Scanner;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.KeyListener;\r
-import org.eclipse.swt.events.VerifyEvent;\r
-import org.eclipse.swt.events.VerifyListener;\r
-\r
-/**\r
- * Checks text entered into a StyledText widget for line breaks, sends\r
- * split text to abstract method handleSplitText().\r
- *  <p>\r
- * VerifyListener interface methods break up the text into lines. Each line is sent individually\r
- * to the handleSplitText() method when the KeyListener interface method keyReleased() is called. \r
- * This is because if the StyledText widget is disposed before the key is released, an SWT \r
- * exception occurs.\r
- * <p>\r
- * The listener should be set on the StyledText widget as follows:\r
- * <code><pre>\r
- *             StyledText styledText = new SourceViewer().getTextWidget();                     \r
- *             LineBreakListener lineBreakListener = new LineBreakListener() {\r
- *                     public void handleSplitText(String text) {\r
- *                             ... some operation ...\r
- *                     }\r
- *             };\r
- *             \r
- *             styledText.addVerifyListener(lineBreakListener);\r
- *             styledText.addKeyListener(lineBreakListener);\r
- * </pre></code>\r
- * \r
- * @author p.ciardelli\r
- * @created 19.05.2008\r
- * @version 1.0\r
- */\r
-public abstract class LineBreakListener implements VerifyListener, KeyListener {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(LineBreakListener.class);\r
-       \r
-       Collection<String> splitTexts;\r
-       \r
-       /** \r
-        * Checks for 3 conditions of name viewer text:\r
-        *   1) no line breaks in text\r
-        *   2) line break at the end of the text\r
-        *   3) line break in the middle of the text\r
-        *   \r
-        * @see org.eclipse.swt.events.VerifyListener#verifyText(org.eclipse.swt.events.VerifyEvent)\r
-        */\r
-       public void verifyText(VerifyEvent e) {\r
-                                               \r
-               String verifyText = e.text;\r
-               \r
-               StyledText styledText = (StyledText) e.widget;\r
-               String widgetText = styledText.getText(); \r
-               int cursorPosition = styledText.getCaretOffset();\r
-               \r
-               // If no line break in verifyText, Parse text normally\r
-               if (!verifyText.contains(System.getProperty("line.separator"))) {\r
-                       return;\r
-               }\r
-                               \r
-               // Don't add verifyText without further processing\r
-               e.doit = false;\r
-               \r
-               // Initialize split text collection\r
-               splitTexts = new ArrayList<String>();\r
-               \r
-               // If user has entered return at the end of the line,\r
-               //  make a new, empty synonym\r
-               if (widgetText.length() == cursorPosition &&\r
-                               verifyText.equals(System.getProperty("line.separator"))) {\r
-                       splitTexts.add("");\r
-                       return;\r
-               }\r
-               \r
-               // Concatenate old and new texts\r
-               String textForSplitting = widgetText.substring(0, cursorPosition) \r
-                               + verifyText\r
-                               + widgetText.substring(cursorPosition);\r
-               \r
-               // Split on line breaks\r
-               Scanner scanner = new Scanner( textForSplitting );\r
-               scanner.useDelimiter (System.getProperty("line.separator"));\r
-               \r
-               // Put first string into name viewer\r
-               styledText.setText(scanner.next());     \r
-               \r
-               // Start new synonyms with the rest\r
-               while (scanner.hasNext()) {\r
-                       splitTexts.add(scanner.next());\r
-               }\r
-       }\r
-       \r
-       \r
-       public void keyPressed(KeyEvent e) {}\r
-\r
-       \r
-       public void keyReleased(KeyEvent e) {\r
-               if (splitTexts != null) {\r
-                       for (String text : splitTexts) {\r
-                               handleSplitText(text);\r
-                       }\r
-                       splitTexts = null;\r
-               }\r
-       }\r
-       \r
-       abstract public void handleSplitText(String text);\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineWrapSquigglesStrategy.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineWrapSquigglesStrategy.java
deleted file mode 100644 (file)
index 4280a4c..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.jface.text.source.AnnotationPainter.SquigglesStrategy;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.GC;\r
-import org.eclipse.swt.graphics.Point;\r
-\r
-/**\r
- * Adds ability to draw multiline squiggles when a <code>StyledText</code>\r
- * contains line-wrapping.\r
- *  \r
- * @author p.ciardelli\r
- * @created 21.11.2008\r
- * @version 1.0\r
- */\r
-public class LineWrapSquigglesStrategy extends SquigglesStrategy {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(LineWrapSquigglesStrategy.class);\r
-       \r
-       public static final String ID = "linewrap_squigglesstrategy";\r
-\r
-       private GC gc;\r
-\r
-       private Color color;\r
-\r
-       private int lineHeight;\r
-\r
-       private int baseline;\r
-\r
-       private StyledText textWidget;\r
-\r
-       private int offset;\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.source.AnnotationPainter$SquigglesStrategy#draw(org.eclipse.jface.text.source.Annotation, org.eclipse.swt.graphics.GC, org.eclipse.swt.custom.StyledText, int, int, org.eclipse.swt.graphics.Color)\r
-        */\r
-       public void draw(Annotation annotation, GC gc, StyledText textWidget, int offset, int length, Color color) {\r
-               \r
-               this.gc = gc;\r
-               this.color = color;\r
-               this.textWidget = textWidget;\r
-               this.offset = offset;\r
-               \r
-               if (gc != null) {\r
-\r
-                       if (length < 1)\r
-                               return;\r
-                       \r
-                       baseline = textWidget.getBaseline(offset);\r
-                       lineHeight = textWidget.getLineHeight(offset);\r
-                       \r
-                       Point right = null;\r
-                       int offsetNewline = offset;\r
-                       int end = offset + length;\r
-                                               \r
-                       // Go through the length one character at a time\r
-                       for (int i = offset; i <= end; i++) {\r
-                               \r
-                               // If the y of the current offset is different from that of the last offset,\r
-                               //      we are on a new line\r
-                               if (right != null && textWidget.getLocationAtOffset(i).y > right.y) {\r
-                                                                               \r
-                                       // Draw a line of squigglies\r
-                                       drawPolyline(offsetNewline, right);\r
-\r
-                                       // Save offset of line break\r
-                                       offsetNewline = i;\r
-                               }\r
-                                                               \r
-                               // Get x,y position in case the next char is on a new line\r
-                               right = textWidget.getLocationAtOffset(i);                                      \r
-                                       \r
-                       }\r
-                       \r
-                       // Draw the last line of squigglies \r
-                       drawPolyline(offsetNewline, right);\r
-\r
-               } else {\r
-                       textWidget.redrawRange(offset, length, true);\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * Draws a squiggly line from the offset <code>offsetNewline</code> to\r
-        * the x,y coordinates at <code>right</code>.\r
-        * \r
-        * @param offsetNewline\r
-        * @param right\r
-        */\r
-       private void drawPolyline(int offsetNewline, Point right) {\r
-\r
-               // Get offset at last line break\r
-               Point left = textWidget.getLocationAtOffset(offsetNewline);\r
-               \r
-               // Prevent solitary red dot from appearing at EOL\r
-               if (left.equals(right)) {\r
-                       return;\r
-               }\r
-               \r
-               // Only start drawing from 0 if not on the first line\r
-               if (offsetNewline != offset) {\r
-                       \r
-                       // Offset.x is at the end of the first letter of the new line, not at 0\r
-                       left.x = 0;\r
-               }\r
-               \r
-               int[] polyline= computePolyline(left, right, baseline, lineHeight);\r
-\r
-               gc.setLineWidth(0); // NOTE: 0 means width is 1 but with optimized performance\r
-               gc.setLineStyle(SWT.LINE_SOLID);\r
-               gc.setForeground(color);\r
-               gc.drawPolyline(polyline);\r
-       }\r
-\r
-       /**\r
-        * Copied verbatim from {@link org.eclipse.jface.text.source.AnnotationPainter$SquigglesStrategy} \r
-        * \r
-        * @see org.eclipse.jface.text.source.AnnotationPainter$SquigglesStrategy\r
-        *  \r
-        * @param left\r
-        * @param right\r
-        * @param baseline\r
-        * @param lineHeight\r
-        * @return\r
-        */\r
-       private int[] computePolyline(Point left, Point right, int baseline, int lineHeight) {\r
-\r
-               final int WIDTH= 4; // must be even\r
-               final int HEIGHT= 2; // can be any number\r
-\r
-               int peaks= (right.x - left.x) / WIDTH;\r
-               if (peaks == 0 && right.x - left.x > 2)\r
-                       peaks= 1;\r
-\r
-               int leftX= left.x;\r
-\r
-               // compute (number of point) * 2\r
-               int length= ((2 * peaks) + 1) * 2;\r
-               if (length < 0)\r
-                       return new int[0];\r
-\r
-               int[] coordinates= new int[length];\r
-\r
-               // cache peeks' y-coordinates\r
-               int top= left.y + Math.min(baseline + 1, lineHeight - HEIGHT - 1);\r
-               int bottom= top + HEIGHT;\r
-\r
-               // populate array with peek coordinates\r
-               for (int i= 0; i < peaks; i++) {\r
-                       int index= 4 * i;\r
-                       coordinates[index]= leftX + (WIDTH * i);\r
-                       coordinates[index+1]= bottom;\r
-                       coordinates[index+2]= coordinates[index] + WIDTH/2;\r
-                       coordinates[index+3]= top;\r
-               }\r
-\r
-               // the last down flank is missing\r
-               coordinates[length-2]= Math.min(Math.max(0, right.x - 1), left.x + (WIDTH * peaks));\r
-               coordinates[length-1]= bottom;\r
-\r
-               return coordinates;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineWrapSupport.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/LineWrapSupport.java
deleted file mode 100644 (file)
index d7af8b5..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.text.TextViewer;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.ModifyEvent;\r
-import org.eclipse.swt.events.ModifyListener;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.forms.widgets.ScrolledForm;\r
-\r
-/**\r
- * Checks whether the ScrolledForm a TextViewer is on needs to be\r
- *  redrawn because of a new line break or the removal of an existing\r
- *  one ...\r
- *  <p>\r
- *  ... in theory, anyway. Until I figure out how to detect a word wrap,\r
- *   the ScrolledForm is redrawn with every modify event. \r
- * \r
- * @author p.ciardelli\r
- * @created 19.05.2008\r
- * @version 1.0\r
- */\r
-public class LineWrapSupport {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(LineWrapSupport.class);\r
-       \r
-       ModifyListener listener = new LineWrapListener();\r
-       int lineCount;\r
-\r
-       private StyledText textWidget;\r
-       private ScrolledForm scrolledForm;\r
-\r
-       private TextViewer viewer;\r
-       \r
-       public LineWrapSupport(TextViewer viewer, IManagedForm form) {\r
-               \r
-               if (viewer == null) {\r
-                       throw new IllegalArgumentException(\r
-                                       "The provided TextViewer object is null.");\r
-               }\r
-               \r
-               this.viewer = viewer;\r
-               \r
-               textWidget = viewer.getTextWidget();\r
-               textWidget.addModifyListener(listener);\r
-                               \r
-               this.lineCount = textWidget.getLinePixel(textWidget.getLineCount());\r
-               this.scrolledForm = form.getForm();\r
-       }\r
-       \r
-       /**\r
-        * Redraws the scrolledForm if a line wrap is detected. \r
-        */\r
-       private void checkLineCount() {\r
-\r
-               boolean lineWrapDetected = true;\r
-               if (lineWrapDetected ) {\r
-                       scrolledForm.getBody().layout();\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * Calls <code>checkLineCount()</code> on a modify event.\r
-        * \r
-        * @author p.ciardelli\r
-        * @created 21.05.2008\r
-        * @version 1.0\r
-        */\r
-       class LineWrapListener implements ModifyListener {\r
-\r
-               public void modifyText(ModifyEvent e) {\r
-                       checkLineCount();\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MenuConstants.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MenuConstants.java
deleted file mode 100644 (file)
index 085909c..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.jface.action.Separator;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateAutonymAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateConceptRelationAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateHeterotypicSynonymAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateMisappliedNameAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateSynonymInGroupAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateTaxonomicallyIncludedTaxonAction;\r
-import eu.etaxonomy.taxeditor.actions.ui.ChangeTaxonToSynonymAction;\r
-import eu.etaxonomy.taxeditor.actions.ui.MoveTaxonDialogAction;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 03.02.2009\r
- * @version 1.0\r
- */\r
-public class MenuConstants {\r
-       private static final Logger logger = Logger.getLogger(MenuConstants.class);\r
-       \r
-       public static final MenuManager EDITOR_TAXON_MENU(){\r
-               MenuManager taxonEditorMenu = new MenuManager("Taxon");\r
-               \r
-               taxonEditorMenu.add(new CreateHeterotypicSynonymAction());\r
-               taxonEditorMenu.add(new CreateSynonymInGroupAction());\r
-               taxonEditorMenu.add(new Separator());                   \r
-               taxonEditorMenu.add(new CreateMisappliedNameAction());\r
-               \r
-               MenuManager subMenu = new MenuManager("Create concept relation");\r
-               for (TaxonRelationshipType type : \r
-                               CdmSessionDataRepository.getDefault().getConceptRelationshipTypes()) {\r
-                       subMenu.add(new CreateConceptRelationAction(type));\r
-               }\r
-               taxonEditorMenu.add(subMenu);\r
-               taxonEditorMenu.add(new Separator());\r
-               taxonEditorMenu.add(new MoveTaxonDialogAction());\r
-               taxonEditorMenu.add(new ChangeTaxonToSynonymAction());\r
-               taxonEditorMenu.add(new Separator());\r
-               // TODO is it correct that onlx taxa with rank species may have autonyms?\r
-       //      if(taxon.getName().getRank().equals(Rank.SPECIES())){\r
-                       taxonEditorMenu.add(new CreateAutonymAction());\r
-       //      }\r
-               taxonEditorMenu.add(new CreateTaxonomicallyIncludedTaxonAction());\r
-               \r
-               return taxonEditorMenu;\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java
deleted file mode 100644 (file)
index 06bfe41..0000000
+++ /dev/null
@@ -1,202 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-import org.eclipse.ui.part.MultiPageEditorPart;\r
-import org.springframework.transaction.TransactionStatus;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.actions.SaveAllAction;\r
-import eu.etaxonomy.taxeditor.actions.cdm.SaveTaxonAction;\r
-import eu.etaxonomy.taxeditor.editor.description.TaxonDescriptionEditor;\r
-import eu.etaxonomy.taxeditor.editor.images.TaxonImagesEditor;\r
-import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.navigation.RecentNamesView;\r
-\r
-/**\r
- * \r
- * Generates the tabbed editor with <code>TaxonNameEditor</code> on top and tabs for\r
- *  "Desriptions", "Concepts", "Geography", etc.\r
- * \r
- * @author p.ciardelli\r
- * @created 15.05.2008\r
- * @version 1.0\r
- */\r
-public class MultiPageTaxonEditor extends MultiPageEditorPart {\r
-       private static final Logger logger = Logger.getLogger(MultiPageTaxonEditor.class);\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.editor.multipagetaxonview";\r
-       \r
-       private Taxon taxon;\r
-       private boolean dirty;\r
-\r
-       private TransactionStatus tx;\r
-               \r
-       public MultiPageTaxonEditor() {\r
-               super();\r
-//             tx = CdmUtil.startTransaction();\r
-       }\r
-       \r
-       @Override\r
-       public void dispose() {\r
-               super.dispose();\r
-//             CdmUtil.commitTransaction(tx);\r
-       }\r
-       \r
-       @Override\r
-       protected void createPages() {\r
-                               \r
-               try {\r
-                       addPage(0, new TaxonNameEditor(), getEditorInput());\r
-                       setPageText(0, "Name");\r
-                       \r
-                       // TODO lazy create\r
-                       addPage(1, new TaxonDescriptionEditor(), getEditorInput());\r
-                       setPageText(1, "Descriptive");\r
-                       \r
-                       addPage(2, new TaxonImagesEditor(), getEditorInput());\r
-                       setPageText(2, "Images");\r
-//                     \r
-//                     addPage(3, new EmptyEditorView(), getEditorInput());\r
-//                     setPageText(3, "Geographic");\r
-                                       \r
-               } catch (PartInitException e) {\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-       \r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {\r
-               \r
-               // Bummer quick fix - saving individual taxa leads to too many\r
-               //      concurrency errors\r
-               new SaveAllAction().run(null);\r
-               \r
-               // Show new taxon being saved for the first time in recent names\r
-               RecentNamesView.addRecentName(taxon);\r
-               \r
-////           monitor.beginTask(name, totalWork)\r
-//             new SaveTaxonAction(taxon).run();\r
-////           CdmUtil.commitTransaction(tx);\r
-//             setDirty(false);\r
-////           tx = CdmUtil.startTransaction();\r
-////           CdmUtil.getTaxonService().saveTaxon(taxon);\r
-       }\r
-\r
-       private void setDirty(boolean dirty) {\r
-               this.dirty = dirty;\r
-               firePropertyChange(PROP_DIRTY);\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.MultiPageEditorPart#isDirty()\r
-        */\r
-       public boolean isDirty() {\r
-               return dirty;\r
-       }\r
-\r
-    /**\r
-     * Checks whether nested editors are calling <code>firePropertyChange(PROP_DIRTY)</code>\r
-     * to signal an edit has taken place before passing property change along to \r
-     * <code>super.handlePropertyChange(int propertyId)</code>.\r
-     */\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.MultiPageEditorPart#handlePropertyChange(int)\r
-        */\r
-       protected void handlePropertyChange(int propertyId) {\r
-               if (propertyId == PROP_DIRTY) {\r
-                       setDirty(true);\r
-               }\r
-               super.handlePropertyChange(propertyId);\r
-       }\r
-       \r
-       @Override\r
-       public void doSaveAs() {}\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input) throws PartInitException {\r
-               \r
-               if (!(input instanceof IEditorInput))\r
-                       throw new PartInitException(\r
-                                       "Invalid Input: Must be IEditorInput");\r
-               \r
-               // Get taxon from editor input\r
-               if (input.getAdapter(Taxon.class) != null) {\r
-                       taxon = (Taxon) input.getAdapter(Taxon.class);\r
-               } else {\r
-                       taxon = null;\r
-               }\r
-\r
-               // Save taxon to put it into current transaction\r
-               CdmUtil.getTaxonService().saveTaxon(taxon);\r
-               \r
-               // Listen for name changes, \r
-               //  change tab for this taxon editor accordingly\r
-               taxon.addPropertyChangeListener("name", new PropertyChangeListener() {\r
-                       public void propertyChange(PropertyChangeEvent e) {\r
-                               setPartName();\r
-                       }\r
-               });\r
-\r
-               setPartName();\r
-               \r
-               super.init(site, input);\r
-       }\r
-               \r
-    /**\r
-     * Calls <code>MultiPageEditorPart.setPartName(String partName)</code>\r
-     *  with text appropriate to the state of the taxon: any taxon that has \r
-     *  been saved will by necessity have a name to display; a new taxon \r
-     *  should display "New taxon" in the editor tab.\r
-     */\r
-    private void setPartName() {\r
-        \r
-       String partName = null;\r
-       TaxonNameBase name = taxon.getName();\r
-       \r
-       if (name != null) {\r
-               partName = name.getTitleCache();\r
-       }\r
-       \r
-       if (partName == null || partName.equals("")) {\r
-               partName = ("New taxon");\r
-       }\r
-\r
-        setPartName(partName);\r
-    }\r
-    \r
-    /**\r
-     * SaveAllAction needs to set this.\r
-     * \r
-     * @param IS_DIRTY\r
-     */\r
-    public void setDirtyExtern(boolean IS_DIRTY) {\r
-       setDirty(IS_DIRTY);\r
-    }\r
-    \r
-    public Taxon getTaxon(){\r
-       return this.taxon;\r
-    }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditorActionBarContributor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditorActionBarContributor.java
deleted file mode 100644 (file)
index dc40e74..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.jface.action.Separator;\r
-import org.eclipse.ui.IWorkbenchActionConstants;\r
-import org.eclipse.ui.part.EditorActionBarContributor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateAutonymAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateConceptRelationAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateHeterotypicSynonymAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateMisappliedNameAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateSynonymInGroupAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateTaxonomicallyIncludedTaxonAction;\r
-import eu.etaxonomy.taxeditor.actions.ui.ChangeTaxonToSynonymAction;\r
-import eu.etaxonomy.taxeditor.actions.ui.MoveTaxonDialogAction;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 03.02.2009\r
- * @version 1.0\r
- */\r
-public class MultiPageTaxonEditorActionBarContributor extends\r
-               EditorActionBarContributor {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(MultiPageTaxonEditorActionBarContributor.class);\r
-\r
-       /**\r
-        * \r
-        */\r
-       public MultiPageTaxonEditorActionBarContributor() {\r
-               logger.warn("Setting up action bar contributions.");\r
-       }\r
-       \r
-       public void contributeToMenu(IMenuManager menubar){             \r
-               menubar.insertAfter(IWorkbenchActionConstants.M_EDIT, MenuConstants.EDITOR_TAXON_MENU());\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ParseListener.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ParseListener.java
deleted file mode 100644 (file)
index 1829bcd..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.ModifyEvent;\r
-import org.eclipse.swt.events.ModifyListener;\r
-\r
-/**\r
- * Passes modified text to the method <code>parse</code>. \r
- * \r
- * @author p.ciardelli\r
- * @created 02.06.2008\r
- * @version 1.0\r
- */\r
-public abstract class ParseListener implements ModifyListener {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ParseListener.class);\r
-\r
-       public void modifyText(ModifyEvent e) {\r
-               StyledText widget = (StyledText) e.widget;\r
-               String text = widget.getText();\r
-               parse(text);\r
-       }\r
-       \r
-       abstract public void parse(String text);\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SelectTaxonDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SelectTaxonDialog.java
deleted file mode 100644 (file)
index d53b285..0000000
+++ /dev/null
@@ -1,380 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.observable.set.IObservableSet;\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.jface.dialogs.IDialogConstants;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.layout.RowData;\r
-import org.eclipse.swt.layout.RowLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.navigation.RecentNamesTableViewer;\r
-import eu.etaxonomy.taxeditor.navigation.TaxonomicTreeLabelProvider;\r
-import eu.etaxonomy.taxeditor.navigation.TaxonomicTreeViewer;\r
-\r
-/**\r
- * This is a generic dialog that allows the user to choose a taxon via the\r
- * taxonomic tree, recently selected names, or search.\r
- * \r
- * @author p.ciardelli\r
- * @created 27.05.2008\r
- * @version 1.0\r
- */\r
-public class SelectTaxonDialog extends Dialog {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(SelectTaxonDialog.class);\r
-\r
-       public static final String TAXON_TO_SYNONYM = "taxon_to_synonym";\r
-       public static final String TAXON_TO_NEW_PARENT = "taxon_to_new_parent";\r
-\r
-       private String dialogType;\r
-       private String shellText;\r
-       private String descriptionText;\r
-       private Text taxonNameText;\r
-\r
-       private TaxonomicTreeViewer treeViewer;\r
-       private Taxon taxon;\r
-       private Taxon destinationTaxon;\r
-\r
-       private List<Button> buttons = new ArrayList<Button>();\r
-\r
-       private Composite selectComposite;\r
-\r
-       public SelectTaxonDialog(Shell parentShell, String dialogType) {\r
-               super(parentShell);\r
-               this.dialogType = dialogType;\r
-       }\r
-\r
-       public Taxon open(Taxon taxon) {\r
-               this.taxon = taxon;\r
-\r
-               if (dialogType.equals(TAXON_TO_SYNONYM)) {\r
-                       this.shellText = "Choose an accepted name for \""\r
-                                       + CdmUtil.getDisplayName(taxon) + "\"";\r
-                       this.descriptionText = "You have chosen to turn \""\r
-                                       + CdmUtil.getDisplayName(taxon)\r
-                                       + "\" into a synonym. Please choose a new accepted name from one of the following options.";\r
-               }\r
-\r
-               if (dialogType.equals(TAXON_TO_NEW_PARENT)) {\r
-                       this.shellText = "Choose a new parent for \""\r
-                                       + CdmUtil.getDisplayName(taxon) + "\"";\r
-                       this.descriptionText = "You have chosen to select a new parent for \""\r
-                                       + CdmUtil.getDisplayName(taxon)\r
-                                       + "\". Please choose the new parent taxon from one of the following options.";\r
-               }\r
-               \r
-               int returnCode = super.open();\r
-               if (returnCode == OK) {\r
-                       return destinationTaxon;\r
-               }\r
-               return null;\r
-       }\r
-\r
-       /**\r
-        * Create contents of the dialog\r
-        * \r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected Control createDialogArea(Composite parent) {\r
-               parent.setRedraw(true);\r
-               Composite container = (Composite) super.createDialogArea(parent);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               container.setLayout(gridLayout);\r
-\r
-               final Label descriptionLabel = new Label(container, SWT.WRAP);\r
-               descriptionLabel.setLayoutData(new GridData(SWT.LEFT, SWT.FILL, true,\r
-                               false, 2, 1));\r
-               descriptionLabel.setText(descriptionText);\r
-\r
-               final Group taxTreeGroup = new Group(container, SWT.NONE);\r
-               taxTreeGroup.setLayout(new GridLayout());\r
-               final GridData gd_group_1 = new GridData(SWT.FILL, SWT.FILL, true, true);\r
-               gd_group_1.heightHint = 83;\r
-               taxTreeGroup.setLayoutData(gd_group_1);\r
-\r
-               final Button chooseTreeButton = new Button(taxTreeGroup, SWT.RADIO);\r
-               buttons.add(chooseTreeButton);\r
-               chooseTreeButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true,\r
-                               false));\r
-               chooseTreeButton.setText("Choose from taxonomic tree");\r
-\r
-               Composite taxTreeComposite = new Composite(taxTreeGroup, SWT.BORDER);\r
-               taxTreeComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true,\r
-                               true));\r
-               taxTreeComposite.setLayout(new FillLayout());\r
-               taxTreeComposite.setBackground(Display.getCurrent().getSystemColor(\r
-                               SWT.COLOR_WHITE));\r
-\r
-               treeViewer = new TaxonomicTreeViewer(taxTreeComposite);\r
-\r
-               IObservableSet observableTaxonSet = \r
-                               CdmSessionDataRepository.getDefault().getObservableTaxa();\r
-               treeViewer.setLabelProvider(new TaxonomicTreeLabelProvider(\r
-                               observableTaxonSet) {\r
-\r
-               });\r
-               treeViewer.getTree().addFocusListener(\r
-                               new SelectButtonFocusListener(chooseTreeButton));\r
-               treeViewer.addDoubleClickListener(new SelectTaxonDoubleClickListener());\r
-               treeViewer.getTree().addListener(SWT.PaintItem, new Listener() {\r
-                       /** If MenuItem with taxon is being drawn, put it in italics.\r
-                        * \r
-                        * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)\r
-                        **/\r
-                       public void handleEvent(Event event) {\r
-                               Object data = event.item.getData();\r
-                               if (data instanceof Taxon && ((Taxon) data).equals(taxon)) {\r
-                                       ((TreeItem) event.item).setFont(TaxEditorPlugin.getDefault().getFont\r
-                                                       (ITaxEditorConstants.MENU_ITEM_ITALICS_FONT));\r
-                               }\r
-                       }\r
-               });\r
-\r
-               // Open up tree to reveal taxon\r
-               treeViewer.revealTaxon(taxon);\r
-\r
-               final Composite rightPaneComposite = new Composite(container, SWT.NONE);\r
-               rightPaneComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true,\r
-                               true));\r
-               rightPaneComposite.setLayout(new FillLayout(SWT.VERTICAL\r
-                               | SWT.HORIZONTAL));\r
-\r
-               final Group recentNamesGroup = new Group(rightPaneComposite, SWT.NONE);\r
-               recentNamesGroup.setLayout(new GridLayout());\r
-\r
-               final Button chooseRecentNamesButton = new Button(recentNamesGroup,\r
-                               SWT.RADIO);\r
-               buttons.add(chooseRecentNamesButton);\r
-               chooseRecentNamesButton.setText("Choose from recently viewed taxa");\r
-\r
-               Composite recentNamesComposite = new Composite(recentNamesGroup,\r
-                               SWT.BORDER);\r
-               recentNamesComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL,\r
-                               true, true));\r
-               recentNamesComposite.setLayout(new FillLayout());\r
-               recentNamesComposite.setBackground(Display.getCurrent().getSystemColor(\r
-                               SWT.COLOR_WHITE));\r
-\r
-               TableViewer recentNamesViewer = new RecentNamesTableViewer(\r
-                               recentNamesComposite);\r
-               recentNamesViewer\r
-                               .addDoubleClickListener(new SelectTaxonDoubleClickListener());\r
-               recentNamesViewer.getTable().addFocusListener(\r
-                               new SelectButtonFocusListener(chooseRecentNamesButton));\r
-\r
-               final Group searchGroup = new Group(rightPaneComposite, SWT.NONE);\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               searchGroup.setLayout(gridLayout_1);\r
-\r
-               final Button searchForNameButton = new Button(searchGroup, SWT.RADIO);\r
-               buttons.add(searchForNameButton);\r
-               searchForNameButton.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER,\r
-                               true, false));\r
-               searchForNameButton.setText("Search for name of accepted taxon");\r
-               new Label(searchGroup, SWT.NONE);\r
-\r
-               final Text searchText = new Text(searchGroup, SWT.BORDER);\r
-               searchText\r
-                               .setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               searchText.setText("Use \"*\" for wildcard searching");\r
-               searchText.addFocusListener(new SelectButtonFocusListener(\r
-                               searchForNameButton) {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               selectButton(button);\r
-                               searchText.setForeground(SWTResourceManager.getColor(0, 0, 0));\r
-                               searchText.setText("");\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               if (searchText.getText() == "") {\r
-                                       searchText.setForeground(SWTResourceManager.getColor(192,\r
-                                                       192, 192));\r
-                                       searchText.setText("Use \"*\" for wildcard searching");\r
-                               }\r
-                       }\r
-\r
-               });\r
-\r
-               final Button searchButton = new Button(searchGroup, SWT.NONE);\r
-               searchButton.setLayoutData(new GridData());\r
-               searchButton.setText("Search");\r
-\r
-               selectComposite = new Composite(container, SWT.NONE);\r
-               selectComposite.setLayout(new RowLayout());\r
-               selectComposite.setLayoutData(new GridData(SWT.RIGHT, SWT.BOTTOM, true,\r
-                               false, 2, 1));\r
-\r
-               taxonNameText = new Text(selectComposite, SWT.BORDER);\r
-               taxonNameText.setFont(SWTResourceManager.getFont("", 12, SWT.BOLD));\r
-               taxonNameText.setBackground(SWTResourceManager.getColor(255, 255, 255));\r
-               final RowData rd_text = new RowData();\r
-               rd_text.width = 400;\r
-               taxonNameText.setLayoutData(rd_text);\r
-               taxonNameText.setEditable(false);\r
-\r
-               //\r
-               initButtons();\r
-\r
-               return container;\r
-       }\r
-\r
-       public void setSelectedTaxon(Taxon taxon) {\r
-\r
-               this.destinationTaxon = taxon;\r
-               TaxonNameBase taxonName = taxon.getName();\r
-               if (taxonName == null) {\r
-                       return;\r
-               }\r
-\r
-               taxonNameText.setText(taxonName.getTitleCache());\r
-\r
-               setOkEnabled(true);\r
-       }\r
-\r
-       /**\r
-        * Create contents of the button bar\r
-        * \r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected void createButtonsForButtonBar(Composite parent) {\r
-               createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL,\r
-                               true);\r
-               setOkEnabled(false);\r
-               createButton(parent, IDialogConstants.CANCEL_ID,\r
-                               IDialogConstants.CANCEL_LABEL, false);\r
-       }\r
-\r
-       public void setOkEnabled(boolean enabled) {\r
-               getButton(IDialogConstants.OK_ID).setEnabled(enabled);\r
-       }\r
-\r
-       private void initButtons() {\r
-               for (Button button : buttons) {\r
-                       button.addSelectionListener(new SelectionAdapter() {\r
-                               public void widgetSelected(final SelectionEvent e) {\r
-                                       selectButton((Button) e.getSource());\r
-                               }\r
-                       });\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Since buttons are not in the same layout group, the others are not\r
-        * automatically deselected when one is selected. This method takes care of\r
-        * that.\r
-        * \r
-        * @param button\r
-        */\r
-       private void selectButton(Button selectedButton) {\r
-               for (Button button : buttons) {\r
-                       if (button == selectedButton)\r
-                               button.setSelection(true);\r
-                       else\r
-                               button.setSelection(false);\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Return the initial size of the dialog\r
-        */\r
-       @Override\r
-       protected Point getInitialSize() {\r
-               return new Point(700, 500);\r
-       }\r
-\r
-       protected void configureShell(Shell newShell) {\r
-               super.configureShell(newShell);\r
-               newShell.setImage(TaxEditorPlugin.getDefault().getImage(\r
-                               ITaxEditorConstants.EDIT_ICON));\r
-               newShell.setText(shellText);\r
-       }\r
-\r
-       class SelectButtonFocusListener implements FocusListener {\r
-\r
-               /**\r
-                * The button whose group has gained focus.\r
-                */\r
-               Button button;\r
-\r
-               SelectButtonFocusListener(Button button) {\r
-                       this.button = button;\r
-               }\r
-\r
-               public void focusGained(FocusEvent e) {\r
-                       selectButton(button);\r
-               }\r
-\r
-               public void focusLost(FocusEvent e) {\r
-               }\r
-\r
-       }\r
-\r
-       class SelectTaxonDoubleClickListener implements IDoubleClickListener {\r
-\r
-               public void doubleClick(DoubleClickEvent event) {\r
-                       Taxon taxon = null;\r
-                       try {\r
-                               taxon = (Taxon) ((StructuredSelection) event.getSelection())\r
-                                               .getFirstElement();\r
-                       } catch (Exception e) {\r
-                               e.printStackTrace();\r
-                               taxon = null;\r
-                       }\r
-                       if (taxon.equals(SelectTaxonDialog.this.taxon)) {\r
-                               return;\r
-                       }\r
-\r
-                       setSelectedTaxon(taxon);\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SimpleSelectionProvider.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SimpleSelectionProvider.java
deleted file mode 100644 (file)
index 8b6009c..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.runtime.ListenerList;\r
-import org.eclipse.jface.viewers.ISelection;\r
-import org.eclipse.jface.viewers.ISelectionChangedListener;\r
-import org.eclipse.jface.viewers.ISelectionProvider;\r
-import org.eclipse.jface.viewers.SelectionChangedEvent;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 16.05.2008\r
- * @version 1.0\r
- */\r
-public class SimpleSelectionProvider implements ISelectionProvider {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(SimpleSelectionProvider.class);\r
-\r
-       private ListenerList listeners = new ListenerList();\r
-       private ISelection selection;\r
-       \r
-       public void addSelectionChangedListener(\r
-                       ISelectionChangedListener listener) {\r
-               listeners.add(listener);\r
-       }\r
-\r
-       public ISelection getSelection() {\r
-               if (selection != null)\r
-                       return selection;\r
-               return null;\r
-       }\r
-\r
-       public void removeSelectionChangedListener(\r
-                       ISelectionChangedListener listener) {\r
-               listeners.remove(listener);\r
-       }\r
-\r
-       public void setSelection(ISelection selection) {\r
-               this.selection = selection;\r
-               fireSelectionChanged();\r
-       }\r
-\r
-       private void fireSelectionChanged() {\r
-               \r
-               SelectionChangedEvent event = new SelectionChangedEvent(this, selection);\r
-                                                       \r
-               for (Object listener : listeners.getListeners()) {\r
-                        if (listener instanceof ISelectionChangedListener) {\r
-                                ((ISelectionChangedListener)listener).selectionChanged(event);\r
-                        }\r
-               }\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/TemporaryTaxon.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/TemporaryTaxon.java
deleted file mode 100644 (file)
index e679c3b..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 24.02.2009\r
- * @version 1.0\r
- */\r
-public class TemporaryTaxon extends Taxon {\r
-       private static Logger logger = Logger.getLogger(TemporaryTaxon.class);\r
-       \r
-//     TemporaryTaxon(Taxon taxon) {\r
-//             this.t = CdmUtil.getTaxonService().getTaxonByUuid(taxon.getUuid());\r
-//     }\r
-       \r
-       public static TemporaryTaxon newInstance(Taxon taxon) {\r
-               TemporaryTaxon tempTaxon = (TemporaryTaxon) \r
-                               CdmUtil.getTaxonService().getTaxonByUuid(taxon.getUuid());\r
-               return tempTaxon;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/UndoView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/UndoView.java
deleted file mode 100644 (file)
index 55190af..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.PaintEvent;\r
-import org.eclipse.swt.events.PaintListener;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Canvas;\r
-import org.eclipse.swt.widgets.Combo;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.FileDialog;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.List;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableColumn;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.ui.part.ViewPart;\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-\r
-public class UndoView extends ViewPart {\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.editor.undoview"; //$NON-NLS-1$\r
-    private Table table;\r
-\r
-    /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NONE);\r
-               container.setLayout(new FillLayout(SWT.VERTICAL));\r
-\r
-               table = new Table(container, SWT.NONE);\r
-               table.getHorizontalBar().setVisible(false);\r
-               table.setLinesVisible(true);\r
-\r
-               final TableColumn newColumnTableColumn = new TableColumn(table, SWT.NONE);\r
-               newColumnTableColumn.setWidth(19);\r
-\r
-               final TableColumn newColumnTableColumn_1 = new TableColumn(table, SWT.NONE);\r
-               newColumnTableColumn_1.setWidth(1000);\r
-               newColumnTableColumn_1.setText("New column");\r
-\r
-               final TableItem newItemTableItem = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem.setText(1, "Created taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_1 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_1.setText(1, "Added fact (Distribution) \"California deciduous forest ...\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_2 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_2.setText(1, "Added fact (Distribution) \"Brazilian (Northerly region)\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_3 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_3.setText(1, "Moved taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to \"Pilosella fuscoatra coll.\"");\r
-\r
-               final TableItem newItemTableItem_4 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_4.setText(1, "Added unknown syn. \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_5 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_5.setText(1, "Changed rel. type to homo. syn. for \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_6 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_6.setText(1, "Edited name \"Hieracium fuscoatrum Nägeli & Peter\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-\r
-               final TableItem newItemTableItem_7 = new TableItem(table, SWT.BORDER);\r
-               newItemTableItem_7.setText(new String[] {"Undo the last action"});\r
-               newItemTableItem_7.setImage(0, ResourceManager.getPluginImage(TaxEditorPlugin.getDefault(), "icons/undo.gif"));\r
-               newItemTableItem_7.setText(1, "Deleted fact (Distribution) \"Brazilian (Northerly region)\" to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");\r
-               //\r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();\r
-       }\r
-\r
-       /**\r
-        * Create the actions\r
-        */\r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ViewerConfiguration.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ViewerConfiguration.java
deleted file mode 100644 (file)
index b513ef8..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.eclipse.jface.text.source.DefaultAnnotationHover;\r
-import org.eclipse.jface.text.source.IAnnotationHover;\r
-import org.eclipse.jface.text.source.ISourceViewer;\r
-import org.eclipse.jface.text.source.SourceViewerConfiguration;\r
-\r
-/**\r
- * Global configuration object for all viewers\r
- *  \r
- * @author p.ciardelli\r
- * @created 22.01.2009\r
- * @version 1.0\r
- */\r
-public class ViewerConfiguration extends SourceViewerConfiguration {\r
-       \r
-       private IAnnotationHover annotationHover = new DefaultAnnotationHover();\r
-       \r
-       public IAnnotationHover getAnnotationHover(ISourceViewer sourceViewer) {\r
-               return annotationHover;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/WarningAnnotation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/WarningAnnotation.java
deleted file mode 100644 (file)
index 34d84e3..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-package eu.etaxonomy.taxeditor.editor;\r
-\r
-import org.eclipse.core.resources.IMarker;\r
-import org.eclipse.jface.text.Position;\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.RGB;\r
-\r
-public class WarningAnnotation extends Annotation {\r
-    private IMarker marker;\r
-    private String text;\r
-    private int line;\r
-    private Position position;\r
-\r
-    // error identifiers, images and colors\r
-    public static String WARNING_TYPE = "warning.type";\r
-    public static Image WARNING_IMAGE;\r
-    public static final RGB WARNING_RGB = new RGB(244, 200, 45);    \r
-    \r
-    public WarningAnnotation(IMarker marker) {\r
-        this.marker = marker;\r
-    }\r
-\r
-    public WarningAnnotation(int line, String text) {\r
-        super(WARNING_TYPE, true, null);\r
-        this.marker = null;\r
-        this.line = line;\r
-        this.text = text;\r
-    }\r
-\r
-    public IMarker getMarker() {\r
-        return marker;\r
-    }\r
-\r
-    public int getLine() {\r
-        return line;\r
-    }\r
-\r
-    public String getText() {\r
-        return text;\r
-    }\r
-\r
-    public Image getImage() {\r
-        return WARNING_IMAGE;\r
-    }\r
-\r
-    public int getLayer() {\r
-        return 3;\r
-    }\r
-\r
-    public String getType() {\r
-        return WARNING_TYPE;\r
-    }\r
-\r
-    public Position getPosition() {\r
-        return position;\r
-    }\r
-\r
-    public void setPosition(Position position) {\r
-        this.position = position;\r
-    }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/CommonNameComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/CommonNameComposite.java
deleted file mode 100644 (file)
index 4985fb7..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.description;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.common.Language;\r
-import eu.etaxonomy.cdm.model.description.CommonTaxonName;\r
-import eu.etaxonomy.taxeditor.model.LanguageUtil;\r
-import eu.etaxonomy.taxeditor.propertysheet.description.CommonNamePropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 02.04.2009\r
- * @version 1.0\r
- */\r
-public class CommonNameComposite extends DescriptionElementComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CommonNameComposite.class);\r
-       \r
-       /**\r
-        * @param groupComposite\r
-        * @param form\r
-        * @param element\r
-        */\r
-       public CommonNameComposite(Composite parent, IManagedForm form,\r
-                       CommonTaxonName element) {\r
-               super(parent, form, element);\r
-               \r
-               setLanguageInfo();\r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       private void setLanguageInfo() {\r
-               \r
-               Language language = ((CommonTaxonName) element).getLanguage();\r
-               if (language != null) {\r
-                       setNonEditableInfo(LanguageUtil.getDescription(language));\r
-               } else {\r
-                       setNonEditableInfo("No language");\r
-               }               \r
-       }\r
-\r
-       public IPropertySource getPropertySource() {\r
-               return new CommonNamePropertySource((CommonTaxonName) getElement());\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionElementComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionElementComposite.java
deleted file mode 100644 (file)
index c3cc284..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.editor.description;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.ContextMenu;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-import eu.etaxonomy.taxeditor.model.DescriptionUtil;\r
-import eu.etaxonomy.taxeditor.operations.description.RemoveElementOperation;\r
-import eu.etaxonomy.taxeditor.propertysheet.description.DescriptionElementPropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 02.06.2008\r
- * @version 1.0\r
- */\r
-public class DescriptionElementComposite extends GroupedComposite {\r
-       private static final Logger logger = Logger.getLogger(DescriptionElementComposite.class);\r
-\r
-       /**\r
-        * ************ COMPOSITE TYPES ************\r
-        */\r
-       public static final String TEXT_DATA = "text_data";\r
-       public static final String COMMON_TAXON_NAME = "common_taxon_name";\r
-       public static final String DISTRIBUTION = "distribution";\r
-\r
-       /**\r
-        * ************ FONTS ************\r
-        */\r
-       public static final Font ELEMENT_FONT = TaxEditorPlugin.getDefault()\r
-                       .getFont(ITaxEditorConstants.SYNONYM_FONT);\r
-\r
-       /**\r
-        * ************ ICONS ************\r
-        */\r
-       public static final Image BLACK_SQUARE_ICON = TaxEditorPlugin.getDefault()\r
-                       .getImage(ITaxEditorConstants.BLACK_SQUARE_ICON);\r
-\r
-       protected DescriptionElementBase element;\r
-\r
-       private IUndoContext undoContext;\r
-\r
-       private static final String EMPTY_NAME_PROMPT = "Click to edit element composite";\r
-\r
-       public DescriptionElementComposite(Composite parent, IManagedForm managedForm, \r
-                       DescriptionElementBase element) {\r
-               super(parent, managedForm);\r
-               \r
-               this.element = element;\r
-               \r
-               this.undoContext = EditorController.getUndoContext(taxon);\r
-               \r
-               createTextViewer();\r
-               createBorderSupport();\r
-               createLineWrapSupport();\r
-               \r
-               createParser();\r
-               createEmptyViewerPrompt(EMPTY_NAME_PROMPT);\r
-               \r
-               setIsDraggable(false);\r
-               setIcon(BLACK_SQUARE_ICON);\r
-               setFont(getViewerFont());\r
-//             setIndent(indent)\r
-               \r
-               createMenu();\r
-               \r
-               initTextViewer();\r
-       }\r
-       \r
-       private void initTextViewer() {\r
-               \r
-               String text = null;\r
-\r
-               text = DescriptionUtil.getCache(element);\r
-               \r
-               if (text.length() == 0) {\r
-                       initEmptyText();\r
-               } else {\r
-                       textViewer.getTextWidget().setText(text);\r
-               }\r
-       }\r
-\r
-//     protected String getEmptyTextPrompt() {\r
-//             return EMPTY_NAME_PROMPT;\r
-//     }\r
-       \r
-       public DescriptionElementBase getElement() {\r
-               return element;\r
-       }\r
-       \r
-       protected void parse(String text) {\r
-               \r
-               DescriptionUtil.setCache(getElement(), text);\r
-               \r
-               // Manually refresh the property sheet to reflect changes\r
-               setSelection();\r
-               \r
-               setDirty(true);\r
-       }\r
-       \r
-       private void createMenu() {\r
-               ContextMenu contextMenu = createContextMenu();\r
-               \r
-               // Delete this description element\r
-               String text = "Delete description element";\r
-               ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                               .getImageDescriptor(ITaxEditorConstants.ACTIVE_DELETE_ICON);\r
-               contextMenu.addAction(new Action(text, image){\r
-                                               \r
-                       public void run() {\r
-                               IUndoableOperation operation = new RemoveElementOperation\r
-                                               (this.getText(), undoContext, taxon, element);\r
-                               \r
-                               GlobalController.executeOperation(operation);\r
-                       }\r
-               });\r
-       }\r
-\r
-       \r
-       public IPropertySource getPropertySource() {\r
-               return new DescriptionElementPropertySource(getElement());\r
-       }\r
-\r
-       @Override\r
-       protected Font getViewerFont() {\r
-               return ELEMENT_FONT;\r
-       }\r
-       \r
-       public Object getData () {\r
-               return getElement();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionFeatureGroupComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionFeatureGroupComposite.java
deleted file mode 100644 (file)
index d7ac606..0000000
+++ /dev/null
@@ -1,63 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.description;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.widgets.TableWrapLayout;\r
-\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.GroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.GroupCompositeLabel;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 11.09.2008\r
- * @version 1.0\r
- */\r
-public class DescriptionFeatureGroupComposite extends GroupComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DescriptionFeatureGroupComposite.class);\r
-       \r
-       private Taxon taxon;\r
-       private TaxonDescription description;\r
-       private Feature feature;\r
-\r
-       public DescriptionFeatureGroupComposite(Composite parent, Taxon taxon,\r
-                       TaxonDescription description, Feature feature) {\r
-               \r
-               super(parent);\r
-\r
-               this.taxon = taxon;\r
-               this.description = description;\r
-               this.feature = feature;\r
-               \r
-               TableWrapLayout tlLayout = new TableWrapLayout();\r
-               tlLayout.topMargin = 0;\r
-               tlLayout.leftMargin = 10;\r
-               setLayout(tlLayout);\r
-               \r
-               Composite groupCompositeLabel = new GroupCompositeLabel(this, feature.getLabel());\r
-       }\r
-       \r
-       public Taxon getTaxon() {\r
-               return taxon;\r
-       }\r
-       \r
-       public TaxonDescription getDescription() {\r
-               return description;\r
-       }\r
-       \r
-       public Feature getFeature() {\r
-               return feature;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionGroupComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionGroupComposite.java
deleted file mode 100644 (file)
index 66b3922..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.description;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.GroupComposite;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.01.2009\r
- * @version 1.0\r
- */\r
-public class DescriptionGroupComposite extends GroupComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DescriptionGroupComposite.class);\r
-       \r
-       private Taxon taxon;\r
-       private TaxonDescription description;\r
-       \r
-       public DescriptionGroupComposite(Composite parent, Taxon taxon,\r
-                       TaxonDescription description) {\r
-               \r
-               super(parent);\r
-               \r
-               this.taxon = taxon;\r
-               this.description = description;\r
-       }\r
-       \r
-       public Taxon getTaxon() {\r
-               return taxon;\r
-       }\r
-       \r
-       public TaxonDescription getDescription() {\r
-               return description;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionLabelComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DescriptionLabelComposite.java
deleted file mode 100644 (file)
index 22d499f..0000000
+++ /dev/null
@@ -1,160 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.description;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.action.IMenuListener;\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-import eu.etaxonomy.taxeditor.editor.ContextMenu;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-import eu.etaxonomy.taxeditor.operations.description.AddElementOperation;\r
-import eu.etaxonomy.taxeditor.propertysheet.description.TaxonDescriptionPropertySource;\r
-\r
-/**\r
- * Composite for editing a description's label / Title Cache information.\r
- * \r
- * @author p.ciardelli\r
- * @created 09.09.2008\r
- * @version 1.0\r
- */\r
-public class DescriptionLabelComposite extends GroupedComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DescriptionLabelComposite.class);\r
-\r
-       /**\r
-        * ************ FONTS ************\r
-        */\r
-       public static final Font DESCRIPTION_LABEL_FONT = TaxEditorPlugin.getDefault()\r
-                       .getFont(ITaxEditorConstants.ACCEPTED_TAXON_FONT);\r
-       \r
-       /**\r
-        * ************ ICONS ************\r
-        */\r
-       public static final Image DESCRIPTION_LABEL_ICON = TaxEditorPlugin.getDefault()\r
-                       .getImage(ITaxEditorConstants.BLACK_SQUARE_ICON);       \r
-       \r
-       private static final String EMPTY_NAME_PROMPT = "Click to edit the label for this description";\r
-\r
-       private TaxonDescription description;\r
-\r
-       private IUndoContext undoContext;\r
-       \r
-       public DescriptionLabelComposite(Composite parent, IManagedForm managedForm, TaxonDescription description) {\r
-               super(parent, managedForm);\r
-               \r
-               this.description = description;\r
-               \r
-               this.undoContext = EditorController.getUndoContext(taxon);\r
-               \r
-               createTextViewer();\r
-               createBorderSupport();\r
-               createLineWrapSupport();\r
-\r
-               createParser();\r
-               createEmptyViewerPrompt(EMPTY_NAME_PROMPT);\r
-               \r
-               setIsDraggable(false);\r
-               setFont(DESCRIPTION_LABEL_FONT);\r
-               setIcon(DESCRIPTION_LABEL_ICON);\r
-               \r
-               createMenu();\r
-               \r
-               initTextViewer();\r
-       }\r
-       \r
-       private void initTextViewer() {\r
-               if (textViewer != null) {\r
-                       String text = getDescription().getTitleCache();\r
-                       \r
-                       if (text.length() == 0) {\r
-                               initEmptyText();\r
-                       } else {\r
-                               textViewer.getTextWidget().setText(text);\r
-                       }\r
-               } else {\r
-                       logger.warn("TextViewer is null.");\r
-               }\r
-       }\r
-       \r
-//     protected String getEmptyTextPrompt() {\r
-//             return "Click to edit the label for this description";\r
-//     }\r
-\r
-       public TaxonDescription getDescription() {\r
-               return description;\r
-       }\r
-\r
-       private void createMenu() {\r
-               \r
-               MenuManager featuresMenu = new MenuManager("Add description element");\r
-               featuresMenu.setRemoveAllWhenShown(true);\r
-               featuresMenu.addMenuListener(new IMenuListener() {\r
-                       public void menuAboutToShow(IMenuManager manager) {\r
-                               for (final Feature feature : PreferencesController.getPreferredFeatures()) {\r
-                                       String text = feature.getLabel();\r
-                                       manager.add(new Action(text){\r
-                                               \r
-                                               public void run() {\r
-                                                       IUndoableOperation operation = new AddElementOperation\r
-                                                                       (this.getText(), undoContext, taxon, description, feature);\r
-                                                       GlobalController.executeOperation(operation);\r
-                                               }\r
-                                       });\r
-                               }\r
-                       }\r
-               });\r
-               \r
-               // Important: add an empty action. Otherwise, when the main menu sees that\r
-               //      there are no actions in the submenu, it will not be shown\r
-               featuresMenu.add(new Action() {});\r
-\r
-               ContextMenu contextMenu = createContextMenu();\r
-               contextMenu.addSubmenu(featuresMenu);\r
-       }\r
-\r
-       protected void parse(String text) {\r
-               getDescription().setTitleCache(text);\r
-               \r
-               // Manually refresh the property sheet to reflect changes\r
-               setSelection();\r
-               \r
-               setDirty(true);         \r
-       }\r
-       \r
-       public IPropertySource getPropertySource() {\r
-               return new TaxonDescriptionPropertySource(getDescription());\r
-       }\r
-\r
-       @Override\r
-       protected Font getViewerFont() {\r
-               return null;\r
-       }\r
-       \r
-       public Object getData () {\r
-               return getDescription();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DistributionDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/DistributionDialog.java
deleted file mode 100644 (file)
index 4cecf23..0000000
+++ /dev/null
@@ -1,559 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.description;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-import java.util.Map;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.jface.dialogs.IDialogConstants;\r
-import org.eclipse.jface.window.Window;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.CCombo;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Shell;\r
-\r
-import eu.etaxonomy.cdm.api.service.ILocationService;\r
-import eu.etaxonomy.cdm.model.description.Distribution;\r
-import eu.etaxonomy.cdm.model.description.PresenceAbsenceTermBase;\r
-import eu.etaxonomy.cdm.model.location.NamedArea;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.reference.ReferenceSelectComposite;\r
-import eu.etaxonomy.taxeditor.model.DescriptionUtil;\r
-import eu.etaxonomy.taxeditor.model.IDistributionInfoProvider;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 03.04.2009\r
- * @version 1.0\r
- */\r
-public class DistributionDialog extends Dialog {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DistributionDialog.class);\r
-       \r
-       private IDistributionInfoProvider provider;\r
-\r
-       private String title;\r
-       private String message;\r
-       \r
-       private static final String PRESENCE_ABSENCE_SEPARATOR = "----------------------------";\r
-       /**\r
-        * Number of area menus to show\r
-        */\r
-       private static final int NUM_AREA_MENUS = 4; \r
-       /**\r
-        * UI elements\r
-        */\r
-       private CCombo vocabTypeCombo;\r
-       private CCombo[] areaCombos = new CCombo[NUM_AREA_MENUS];\r
-//     private CCombo areaCombo1;\r
-//     private CCombo areaCombo2;\r
-//     private CCombo areaCombo3;\r
-//     private CCombo areaCombo4;\r
-       private CCombo presenceAbsenceCombo;\r
-       private ReferenceSelectComposite referenceComposite;\r
-       /**\r
-        * Distribution fields\r
-        */\r
-       private NamedArea area;\r
-       private PresenceAbsenceTermBase<?> presenceAbsenceStatus;\r
-       private Distribution distribution;\r
-       private Object vocabType;\r
-       private ReferenceBase reference;\r
-       /**\r
-        * Lists to populate drop downs\r
-        */\r
-       private List<Object> vocabTypes;\r
-//     private List<NamedArea> areas1;\r
-//     private List<NamedArea> areas2;\r
-//     private List<NamedArea> areas3;\r
-//     private List<NamedArea> areas4;\r
-//     private List<List<NamedArea>> areas; // = new ArrayList<NamedArea>[4];  \r
-       private List<PresenceAbsenceTermBase<?>> presenceAbsenceTerms;\r
-       private List<List<NamedArea>> areas = new ArrayList<List<NamedArea>>();\r
-       private NamedArea[] selectedAreas = new NamedArea[NUM_AREA_MENUS];\r
-       private Map<NamedArea, List<NamedArea>> areaChildren;\r
-       private Map<NamedArea, NamedArea> areaParents;\r
-       /**\r
-        * Static fields to persist default values\r
-        */\r
-       private static ReferenceBase lastReference;\r
-       private static PresenceAbsenceTermBase<?> lastPresenceAbsence;\r
-       private static Object lastVocabType;\r
-\r
-       /**\r
-        * @param shell\r
-        * @param dialogTitle\r
-        * @param dialogMessage\r
-        */\r
-       public DistributionDialog(Shell shell, String dialogTitle,\r
-                       String dialogMessage) {\r
-               super(shell);\r
-       \r
-               title = dialogTitle;\r
-               message = dialogMessage;\r
-               \r
-               provider = DescriptionUtil.getDistributionInfoProvider();\r
-               \r
-               recallPreviousSelections();\r
-       }\r
-\r
-       /**\r
-        * Set inputs to selections from last time dialog was used.\r
-        */\r
-       private void recallPreviousSelections() {\r
-               if (lastVocabType != null)  {\r
-                       vocabType = lastVocabType;\r
-               }\r
-//             if (lastArea1 != null) {\r
-//                     area1 = lastArea1;\r
-//             }\r
-//             if (lastArea2 != null) {\r
-//                     area2 = lastArea2;\r
-//             }\r
-//             if (lastArea3 != null) {\r
-//                     area3 = lastArea3;\r
-//             }\r
-//             if (lastArea4 != null) {\r
-//                     area4 = lastArea4;\r
-//             }\r
-               if (lastPresenceAbsence != null) {\r
-                       presenceAbsenceStatus = lastPresenceAbsence; \r
-               }\r
-               if (lastReference != null) {\r
-                       reference = lastReference;\r
-               }\r
-       }\r
-\r
-       /**\r
-        * @param dialogTitle \r
-        * @param dialogMessage \r
-        * @return\r
-        */\r
-       public static Distribution getDistribution(String dialogTitle,\r
-                       String dialogMessage) {\r
-               DistributionDialog dialog = new DistributionDialog(GlobalController.getShell(), \r
-                               dialogTitle, \r
-                               dialogMessage);\r
-               if (dialog.open() == Window.CANCEL) {\r
-                       return null;\r
-               }\r
-               return dialog.getDistribution();\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       private Distribution getDistribution() {\r
-               return distribution;\r
-       }\r
-       \r
-    /*y\r
-     * (non-Javadoc)\r
-     * \r
-     * @see org.eclipse.jface.window.Window#configureShell(org.eclipse.swt.widgets.Shell)\r
-     */\r
-    protected void configureShell(Shell shell) {\r
-        super.configureShell(shell);\r
-        if (title != null) {\r
-                       shell.setText(title);\r
-               }\r
-    }\r
-       \r
-    protected Control createDialogArea(Composite parent) {\r
-        // create composite\r
-       Composite composite = (Composite) super.createDialogArea(parent);\r
-        // create message\r
-        if (message != null) {\r
-            createLabel(message, composite, parent);\r
-        }\r
-       createLabel("Select an area vocabulary:", composite, parent);\r
-        // create vocab type\r
-        vocabTypeCombo = createCombo(composite);\r
-        vocabTypeCombo.addSelectionListener(new SelectionAdapter() {\r
-                       @Override\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               selectVocabType();\r
-                       }\r
-               });\r
-        // create areas\r
-        createLabel("Select an area:", composite, parent);\r
-        for (int i = 0; i < NUM_AREA_MENUS; i++) {\r
-               areaCombos[i] = createCombo(composite); \r
-            areaCombos[i].addSelectionListener(new AreaComboListener(i));\r
-        }\r
-        // create presence / absence\r
-        createLabel("Select presence / absence:", composite, parent);\r
-               presenceAbsenceCombo =  new CCombo(composite, SWT.BORDER);\r
-               presenceAbsenceCombo.setLayoutData(new GridData(GridData.GRAB_HORIZONTAL\r
-                | GridData.HORIZONTAL_ALIGN_FILL));\r
-               presenceAbsenceCombo.addSelectionListener(new SelectionAdapter() {\r
-                       @Override\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               selectPresenceAbsenceTerm();\r
-                       }\r
-               });\r
-               // create reference\r
-               referenceComposite = new ReferenceSelectComposite(composite);\r
-\r
-        populateVocabTypes();\r
-               populateAreas();\r
-               populatePresenceAbsenceTerms();\r
-               populateReference();\r
-        \r
-        applyDialogFont(composite);\r
-        return composite;\r
-    }\r
-\r
-    class AreaComboListener extends SelectionAdapter {\r
-       private int i;\r
-               AreaComboListener(int i) {\r
-               this.i = i;\r
-       }\r
-               @Override\r
-               public void widgetSelected(SelectionEvent e) {\r
-                       selectArea(i);\r
-               }\r
-    }\r
-    \r
-       /**\r
-        * @return\r
-        */\r
-       private CCombo createCombo(Composite composite) {\r
-               CCombo combo = new CCombo(composite, SWT.BORDER);\r
-               combo.setLayoutData(new GridData(GridData.GRAB_HORIZONTAL\r
-                               | GridData.HORIZONTAL_ALIGN_FILL));\r
-               return combo;\r
-       }\r
-    \r
-       /**\r
-        * \r
-        */\r
-       private void populateVocabTypes() {\r
-               int index = 0;\r
-               int i = 0;\r
-               for (Object vocabType : getVocabTypes()) {\r
-                       if (vocabType == null) {\r
-                               vocabTypeCombo.add("");\r
-                       } else {\r
-                               if (vocabType.equals(this.vocabType)) {\r
-                                       index = i;\r
-                               }\r
-                               vocabTypeCombo.add(provider.getVocabularyTypeLabel(vocabType));\r
-                       }\r
-                       i++;\r
-               }\r
-               vocabTypeCombo.select(index);\r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       private void populateAreas() {\r
-               clearAreas();\r
-               if (vocabType != null) {\r
-                       int index = 0;\r
-                       int i = 0;\r
-                       for (NamedArea area : getNamedAreas(vocabType)) {\r
-                               if (area == null) {\r
-                                       areaCombos[0].add("");\r
-                               } else {\r
-                                       if (area.equals(this.area)) {\r
-                                               index = i;\r
-                                       }\r
-                                       areaCombos[0].add(area.getDescription());\r
-                               }\r
-                               i++;\r
-                       }\r
-                       areaCombos[0].select(index);\r
-               }\r
-               for (int j = 1; j < NUM_AREA_MENUS; j++) {\r
-                       NamedArea selectedArea = selectedAreas[j - 1];\r
-                       if (selectedArea != null) {\r
-                               int index = 0;\r
-                               int i = 0;\r
-                               for (NamedArea area : getNamedAreas(selectedArea, j)) {\r
-                                       if (area == null) {\r
-                                               areaCombos[i].add("");\r
-                                       } else {\r
-                                               if (area.equals(this.area)) {\r
-                                                       index = i;\r
-                                               }\r
-                                               areaCombos[0].add(area.getDescription());\r
-                                       }\r
-                                       i++;\r
-                               }\r
-                               areaCombos[0].select(index);\r
-                       }\r
-               }\r
-//             areaCombo2.setVisible(false);\r
-//             areaCombo3.setVisible(false);\r
-//             areaCombo4.setVisible(false);\r
-//             areaCombo2.moveBelow(referenceComposite);\r
-//             areaCombo3.moveBelow(referenceComposite);\r
-//             areaCombo4.moveBelow(referenceComposite);\r
-       }\r
-\r
-       \r
-       /**\r
-        * @param namedArea\r
-        * @return\r
-        */\r
-       private List<NamedArea> getNamedAreas(NamedArea namedArea, int depth) {\r
-               List<NamedArea> areasTemp = new ArrayList<NamedArea>();\r
-               areasTemp.add(null);\r
-               areasTemp.addAll(provider.getVocabularyNextLevelAreas(namedArea));\r
-               return areasTemp;\r
-       }\r
-\r
-       /**\r
-        * @param vocabType\r
-        * @return\r
-        */\r
-       private List<NamedArea> getNamedAreas(Object vocabType) {\r
-               List<NamedArea> areasTemp = new ArrayList<NamedArea>();\r
-               areasTemp.add(null);\r
-               areasTemp.addAll(provider.getVocabularyTopLevelAreas(vocabType));\r
-//             areas\r
-               return areasTemp;\r
-       }\r
-\r
-       /**\r
-        * \r
-        */\r
-       private void populatePresenceAbsenceTerms() {\r
-               int index = 0;\r
-               int i = 0;\r
-               for (PresenceAbsenceTermBase<?> term : getPresenceAbsenceTerms()) {\r
-                       if (term == null) {\r
-                               if (i == 0) {\r
-                                       presenceAbsenceCombo.add("");\r
-                               } else {\r
-                                       presenceAbsenceCombo.add(PRESENCE_ABSENCE_SEPARATOR);\r
-                               }\r
-                       } else {\r
-                               presenceAbsenceCombo.add(provider.getPresenceAbsenceTermLabel(term));                           \r
-                               if (this.presenceAbsenceStatus != null && this.presenceAbsenceStatus.equals(term)) {\r
-                                       index = i;\r
-                               }\r
-                       }\r
-                       i++;\r
-               }\r
-               presenceAbsenceCombo.select(index);\r
-       }\r
-\r
-       /**\r
-        * \r
-        */\r
-       private void populateReference() {\r
-               if (reference != null) {\r
-                       referenceComposite.setReference(reference);\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * @return\r
-        */\r
-       private List<Object> getVocabTypes() {\r
-               if (vocabTypes == null) {\r
-                       vocabTypes = new ArrayList<Object>();\r
-                       // Add empty entry for selection menu\r
-                       vocabTypes.add(null);\r
-                       vocabTypes.addAll(provider.getVocabularyTypes());\r
-               }\r
-               return vocabTypes;\r
-       }\r
-       \r
-       /**\r
-        * @return\r
-        */\r
-       private List<PresenceAbsenceTermBase<?>> getPresenceAbsenceTerms() {\r
-               if (presenceAbsenceTerms == null) {\r
-                       presenceAbsenceTerms = new ArrayList<PresenceAbsenceTermBase<?>>();\r
-                       // Add empty entry for selection menu\r
-                       presenceAbsenceTerms.add(null);\r
-                       \r
-                       for (PresenceAbsenceTermBase<?> term : provider.getPresenceTerms()) {\r
-                               presenceAbsenceTerms.add(term);\r
-                       }\r
-                       presenceAbsenceTerms.add(null);\r
-                       for (PresenceAbsenceTermBase<?> term : provider.getAbsenceTerms()) {\r
-                               presenceAbsenceTerms.add(term);\r
-                       }\r
-               }\r
-               return presenceAbsenceTerms;\r
-       }\r
-\r
-       /**\r
-        * @param i\r
-        */\r
-       protected void selectArea(int depth) {\r
-               // This selection is made currently selected area\r
-               int i = areaCombos[depth].getSelectionIndex();\r
-               selectedAreas[depth] = getSelectedArea(depth, i);\r
-               \r
-               // Combos below this area combo are cleared\r
-//             clearArea(depth+1);\r
-               populateAreas();\r
-                               \r
-               // Next combo repopulated with this combo's named area children, if any\r
-//             populateArea(i+1);\r
-               \r
-               // Contents of this combo become current area list\r
-               \r
-//             switch (i) {\r
-//             case 1:\r
-//                     areaCombo1.removeAll();\r
-//             case 2:\r
-//                     areaCombo2.removeAll();\r
-//             case 3:\r
-//                     areaCombo3.removeAll();\r
-//             case 4:\r
-//                     areaCombo4.removeAll(); \r
-//             }\r
-       }\r
-\r
-       /**\r
-        * @param i\r
-        * @param index\r
-        * @return\r
-        */\r
-       private NamedArea getSelectedArea(int depth, int index) {\r
-               return areas.get(depth).get(index);\r
-       }\r
-\r
-       /**\r
-        * \r
-        */\r
-       protected void selectVocabType() {\r
-               int i = vocabTypeCombo.getSelectionIndex();\r
-               selectVocabType(i);\r
-       }\r
-       \r
-       private void selectVocabType(int i) {\r
-               vocabType = getVocabTypes().get(i);\r
-               \r
-               clearAreas();\r
-               populateAreas();\r
-//             populateArea(1);\r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       protected void selectPresenceAbsenceTerm() {\r
-               int i = presenceAbsenceCombo.getSelectionIndex();\r
-               presenceAbsenceStatus = presenceAbsenceTerms.get(i);\r
-       }\r
-\r
-       /**\r
-        * @param string\r
-        * @param parent \r
-        * @param composite \r
-        * @return \r
-        */\r
-       private Label createLabel(String string, Composite composite, Composite parent) {\r
-               Label label = new Label(composite, SWT.WRAP);\r
-        label.setText(string);\r
-        GridData data = new GridData(GridData.GRAB_HORIZONTAL\r
-                | GridData.GRAB_VERTICAL | GridData.HORIZONTAL_ALIGN_FILL\r
-                | GridData.VERTICAL_ALIGN_CENTER);\r
-        data.widthHint = convertHorizontalDLUsToPixels(IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH);\r
-        label.setLayoutData(data);\r
-        label.setFont(parent.getFont());\r
-        return label;\r
-       }\r
-\r
-       /**\r
-        * @param i\r
-        */\r
-       private void clearArea(int i) {\r
-               for (int j = i; j < NUM_AREA_MENUS; j++) {\r
-                       areaCombos[j].removeAll();\r
-               }\r
-       }\r
-\r
-       /**\r
-        * \r
-        */\r
-       private void clearAreas() {\r
-               clearArea(0);\r
-       }\r
-       \r
-       protected void createButtonsForButtonBar(Composite parent) {\r
-               createButton(parent, IDialogConstants.OK_ID,\r
-                IDialogConstants.OK_LABEL, true);\r
-        createButton(parent, IDialogConstants.CANCEL_ID,\r
-                IDialogConstants.CANCEL_LABEL, false);\r
-    }\r
-       \r
-       protected void buttonPressed(int buttonId) {\r
-               if (IDialogConstants.OK_ID == buttonId) {\r
-                       okPressed();\r
-               } else if (IDialogConstants.CANCEL_ID == buttonId) {\r
-                       cancelPressed();\r
-               }\r
-       }\r
-\r
-       protected void okPressed() {\r
-               createDistribution();\r
-               setStaticFields();\r
-               \r
-               super.okPressed();\r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       private void setStaticFields() {\r
-               lastPresenceAbsence = getPresenceAbsenceTerm();\r
-               lastReference = getReference(); \r
-               lastVocabType = getVocabType();\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       private Object getVocabType() {\r
-               int i = vocabTypeCombo.getSelectionIndex();\r
-               return vocabTypes.get(i);\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       private ReferenceBase getReference() {\r
-               return referenceComposite.getReference();\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       private PresenceAbsenceTermBase<?> getPresenceAbsenceTerm() {\r
-               int i = presenceAbsenceCombo.getSelectionIndex();\r
-               return presenceAbsenceTerms.get(i);\r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       private void createDistribution() {\r
-               distribution = Distribution.NewInstance(area, presenceAbsenceStatus);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/IDescriptionEditorCompositeRepository.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/IDescriptionEditorCompositeRepository.java
deleted file mode 100644 (file)
index a1034db..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.description;\r
-\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-\r
-/**\r
- * @author p.ciardell\r
- * @created 22.12.2008\r
- * @version 1.0\r
- */\r
-public interface IDescriptionEditorCompositeRepository {\r
-\r
-       public Composite getDescriptionLabel(TaxonDescription description);\r
-       \r
-       public Composite getDescriptionElement(DescriptionElementBase element);\r
-       \r
-       public Composite getDescriptionGroup(TaxonDescription description);\r
-       \r
-       public Composite getDescriptionFeatureGroup(TaxonDescription description,\r
-                       Feature feature);\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/LanguageDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/LanguageDialog.java
deleted file mode 100644 (file)
index 3b39e9c..0000000
+++ /dev/null
@@ -1,206 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.description;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.jface.dialogs.IDialogConstants;\r
-import org.eclipse.jface.dialogs.InputDialog;\r
-import org.eclipse.jface.window.Window;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.CCombo;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Shell;\r
-\r
-import eu.etaxonomy.cdm.model.common.Language;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.LanguageUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 02.04.2009\r
- * @version 1.0\r
- */\r
-public class LanguageDialog extends InputDialog {\r
-       private static final Logger logger = Logger.getLogger(LanguageDialog.class);\r
-       \r
-       private String message;\r
-       \r
-       private Language language;\r
-       protected Language languageTemp;\r
-       \r
-       /**\r
-        * Language selected last time the dialog was used.\r
-        */\r
-       private static Language lastLanguage;\r
-\r
-       private CCombo combo;\r
-\r
-       private List<Language> languages;\r
-\r
-\r
-       /**\r
-        * @param shell\r
-        * @param dialogTitle\r
-        * @param dialogMessage\r
-        */\r
-       public LanguageDialog(Shell shell, String dialogTitle, String dialogMessage) {\r
-               super(shell, dialogTitle, \r
-                               dialogMessage, null, null);\r
-               \r
-               message = dialogMessage;\r
-               \r
-               // Set selection menu to language chosen last time Dialog was opened \r
-               if (lastLanguage != null)  {\r
-                       language = lastLanguage;\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * Lifted from Dialog.\r
-        * \r
-        * @param parent\r
-        * @return\r
-        * @see Dialog\r
-        */\r
-       protected Control createDialogComposite(Composite parent) {\r
-               // create a composite with standard margins and spacing\r
-               Composite composite = new Composite(parent, SWT.NONE);\r
-               GridLayout layout = new GridLayout();\r
-               layout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);\r
-               layout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);\r
-               layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);\r
-               layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);\r
-               composite.setLayout(layout);\r
-               composite.setLayoutData(new GridData(GridData.FILL_BOTH));\r
-               applyDialogFont(composite);\r
-               return composite;\r
-       }\r
-       \r
-    /*\r
-     * (non-Javadoc) Method declared on Dialog.\r
-     */\r
-    protected Control createDialogArea(Composite parent) {\r
-        // create composite\r
-        Composite composite = (Composite) createDialogComposite(parent);\r
-        // create message\r
-        if (message != null) {\r
-            Label label = new Label(composite, SWT.WRAP);\r
-            label.setText(message);\r
-            GridData data = new GridData(GridData.GRAB_HORIZONTAL\r
-                    | GridData.GRAB_VERTICAL | GridData.HORIZONTAL_ALIGN_FILL\r
-                    | GridData.VERTICAL_ALIGN_CENTER);\r
-            data.widthHint = convertHorizontalDLUsToPixels(IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH);\r
-            label.setLayoutData(data);\r
-            label.setFont(parent.getFont());\r
-        }\r
-        // create combo\r
-        combo = new CCombo(composite, SWT.BORDER);\r
-        combo.setLayoutData(new GridData(GridData.GRAB_HORIZONTAL\r
-                | GridData.HORIZONTAL_ALIGN_FILL));\r
-        combo.addSelectionListener(new SelectionAdapter() {\r
-                       @Override\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               int i = combo.getSelectionIndex();\r
-                               languageTemp = languages.get(i);\r
-                       }\r
-               });\r
-        \r
-        populateLanguages();\r
-\r
-        applyDialogFont(composite);\r
-        return composite;\r
-    }\r
-\r
-       /**\r
-        * \r
-        */\r
-       private void populateLanguages() {\r
-               languages = new ArrayList<Language>();\r
-               int i = 0;              \r
-               int index = 0;\r
-               for (Language language : CdmSessionDataRepository.getDefault().getLanguages()) {\r
-                                               \r
-                       combo.add(LanguageUtil.getDescription(language));\r
-                       languages.add(language);\r
-                       \r
-                       if (this.language != null && this.language.equals(language)) {\r
-                               index = i;  \r
-                       }\r
-                       i++;\r
-               }\r
-               combo.select(index);\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       private Language getLanguage() {\r
-               return language;\r
-       }\r
-    \r
-       /**\r
-        * @param dialogTitle \r
-        * @param dialogMessage \r
-        * @return\r
-        */\r
-       public static Language getLanguage(String dialogTitle,\r
-                       String dialogMessage) {\r
-               LanguageDialog dialog = new LanguageDialog(GlobalController.getShell(), \r
-                               dialogTitle, \r
-                               dialogMessage);\r
-               if (dialog.open() == Window.CANCEL) {\r
-                       return null;\r
-               }\r
-               return dialog.getLanguage();\r
-       }\r
-       \r
-       protected void createButtonsForButtonBar(Composite parent) {\r
-               createButton(parent, IDialogConstants.OK_ID,\r
-                IDialogConstants.OK_LABEL, true);\r
-        createButton(parent, IDialogConstants.CANCEL_ID,\r
-                IDialogConstants.CANCEL_LABEL, false);\r
-    }\r
-       \r
-       protected void buttonPressed(int buttonId) {\r
-               if (IDialogConstants.OK_ID == buttonId) {\r
-                       okPressed();\r
-               } else if (IDialogConstants.CANCEL_ID == buttonId) {\r
-                       cancelPressed();\r
-               }\r
-       }\r
-       \r
-       protected void okPressed() {\r
-               language = getLanguageSelection();\r
-               lastLanguage = language;                \r
-               super.okPressed();\r
-       }\r
-       \r
-       protected void cancelPressed() {\r
-               language = null;\r
-               super.cancelPressed();\r
-       }\r
-       \r
-       private Language getLanguageSelection() {\r
-               int i = combo.getSelectionIndex();\r
-               return languages.get(i);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/TaxonDescriptionEditor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/description/TaxonDescriptionEditor.java
deleted file mode 100644 (file)
index 8b13725..0000000
+++ /dev/null
@@ -1,196 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.description;\r
-\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.editor.AbstractTaxonEditor;\r
-import eu.etaxonomy.taxeditor.editor.FreeTextElementFactory;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-\r
-/**\r
- * Displays the <code>TaxonDescription</code>s attached to a <code>Taxon</code>.\r
- * <p>\r
- * For each <code>TaxonDescription</code>:\r
- * <ul>\r
- *     <li>Displays a <code>DescriptionLabelComposite</code> with <code>TaxonDescription#getTextCache()</code></li>\r
- *     <li>Displays a <code>DescriptionFeatureGroupComposite</code> for each <code>Feature</code> for which there are descriptive elements</li>\r
- *     <li>Displays a <code>DescriptionElementComposite</code> for each <code>TaxonDescription#getElements()</code></li>\r
- * </ul>\r
- * </p> \r
- * <p>\r
- * If the <Taxon> has no descriptions, creates a <code>TaxonDescription</code> that is saved when \r
- * <code>firePropertyChange()</code> is called with <code>PROP_DIRTY</code>.\r
- * </p>\r
- * @author p.ciardelli\r
- * @created 25.08.2008\r
- * @version 1.0\r
- */\r
-public class TaxonDescriptionEditor extends AbstractTaxonEditor \r
-               implements IDescriptionEditorCompositeRepository {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxonDescriptionEditor.class);\r
-       \r
-       /**\r
-        * If this view is opened and the <code>Taxon</code> has no <code>Description</code>,\r
-        * a <code>Description</code> element is created and saved to <code>emptyDescription</code>.\r
-        * It should not be added to the <code>Taxon</code> until it has been changed.\r
-        * \r
-        * @see firePropertyChange(int)\r
-        */\r
-       private TaxonDescription emptyDescription;\r
-       \r
-       private boolean pageInitialized = false;\r
-\r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {}\r
-\r
-       @Override\r
-       public void doSaveAs() {}\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input)\r
-                       throws PartInitException {\r
-                               \r
-               super.init(site, input);\r
-               \r
-               Taxon taxon = getTaxon();       \r
-               EditorController.addDescriptionEditor(taxon, this);\r
-       }\r
-       \r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       protected void createManagedForm(Composite composite) {\r
-               \r
-               super.createManagedForm(composite);\r
-       \r
-               Taxon taxon = getTaxon();\r
-               \r
-               Set<TaxonDescription> descriptions = taxon.getDescriptions();\r
-               \r
-               // If the taxon has no descriptions, give it an empty one to display\r
-               if (descriptions == null || descriptions.size() == 0) {\r
-                       emptyDescription = TaxonDescription.NewInstance();\r
-                       TaxonDescription description = emptyDescription;\r
-                       description.setTitleCache("");\r
-                       descriptions.add(description);\r
-               }\r
-               \r
-               firstGroupedComposite = null;\r
-               \r
-               // Iterate through taxon's descriptions\r
-               for (TaxonDescription description : descriptions) {\r
-                       \r
-                       // Draw description label\r
-                       Composite labelComposite = \r
-                                       FreeTextElementFactory.getDefault().createDescriptionLabel(managedForm, taxon, description);\r
-                       \r
-                       // Note whether this is the first label drawn\r
-                       if (firstGroupedComposite == null) {\r
-                               firstGroupedComposite = (GroupedComposite) labelComposite;\r
-                       }\r
-                       \r
-                       // Draw each element in description \r
-                       for (DescriptionElementBase element : description.getElements()) {\r
-                               FreeTextElementFactory.getDefault().createDescriptionElement(taxon, description, element);\r
-                       }\r
-               }\r
-               \r
-               // Redraw composite\r
-               composite.layout();\r
-\r
-               pageInitialized = true;\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.WorkbenchPart#firePropertyChange(int)\r
-        */\r
-       protected void firePropertyChange(final int propertyId) {\r
-               if (pageInitialized && propertyId == PROP_DIRTY && emptyDescription != null) {\r
-                       getTaxon().addDescription(emptyDescription);\r
-                       emptyDescription = null;\r
-               }\r
-               super.firePropertyChange(propertyId);\r
-       }\r
-       \r
-       \r
-       public Composite getDescriptionElement(DescriptionElementBase element) {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof DescriptionElementComposite){\r
-                               if (element.equals \r
-                                               (((DescriptionElementComposite) c).getElement())) {\r
-                                       return c;\r
-                               }\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       \r
-       public Composite getDescriptionFeatureGroup(TaxonDescription description,\r
-                       Feature feature) {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof DescriptionFeatureGroupComposite){\r
-                               if (description.equals(((DescriptionFeatureGroupComposite) c).getDescription()) &&\r
-                                               feature.equals(((DescriptionFeatureGroupComposite) c).getFeature())) {\r
-                                       return c;\r
-                               }\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       \r
-       public Composite getDescriptionGroup(TaxonDescription description) {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof DescriptionGroupComposite){\r
-                               if (description.equals \r
-                                               (((DescriptionGroupComposite) c).getDescription())) {\r
-                                       return c;\r
-                               }\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       \r
-       public Composite getDescriptionLabel(TaxonDescription description) {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof DescriptionLabelComposite){\r
-                               if (description.equals \r
-                                               (((DescriptionLabelComposite) c).getDescription())) {\r
-                                       return c;\r
-                               }\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImageComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImageComposite.java
deleted file mode 100644 (file)
index 6cbe680..0000000
+++ /dev/null
@@ -1,177 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.images;\r
-\r
-import java.net.URL;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.FocusAdapter;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.PaintEvent;\r
-import org.eclipse.swt.events.PaintListener;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.Canvas;\r
-import org.eclipse.ui.forms.ManagedForm;\r
-import org.eclipse.ui.forms.widgets.TableWrapData;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.actions.images.AddImageAction;\r
-import eu.etaxonomy.taxeditor.actions.images.RemoveImageAction;\r
-import eu.etaxonomy.taxeditor.editor.CompositeBorderDecorator;\r
-import eu.etaxonomy.taxeditor.editor.ContextMenu;\r
-import eu.etaxonomy.taxeditor.editor.GroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.AcceptedNameComposite;\r
-import eu.etaxonomy.taxeditor.propertysheet.images.ImagePropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 30.03.2009\r
- * @version 1.0\r
- */\r
-public class ImageComposite extends GroupedComposite {\r
-       private static final Logger logger = Logger.getLogger(ImageComposite.class);\r
-       \r
-       private URL url;\r
-       protected Image image;\r
-       \r
-       private Canvas canvas;\r
-\r
-       private FocusAdapter focusListener;\r
-       \r
-       /**\r
-        * @param groupComposite\r
-        * @param form\r
-        * @param taxon\r
-        * @param url\r
-        */\r
-       public ImageComposite(GroupComposite groupComposite, ManagedForm form,\r
-                       Taxon taxon, URL url) {\r
-               super(groupComposite, form);\r
-               \r
-               this.url = url;\r
-               \r
-               setIsDraggable(false);\r
-//             setIcon(AcceptedNameComposite.ACCEPTED_ICON);\r
-               setIndent(AcceptedNameComposite.ACCEPTED_INDENT);\r
-\r
-               createImage(url);\r
-               \r
-               createMenu();\r
-               createBorderSupport();\r
-               \r
-       }\r
-       \r
-       protected void createControl() {\r
-               super.createControl();\r
-                               \r
-               Color groupBackgroundColor = getDisplay().getSystemColor(SWT.COLOR_WHITE);\r
-               setBackground(groupBackgroundColor);\r
-       }\r
-       \r
-       /**\r
-        * @param url\r
-        */\r
-       private void createImage(URL url) {\r
-               image = ImagesController.getImage(url);\r
-               \r
-               // Not optimal - why should getting composite to size to img be so obtuse?! \r
-//             canvas = new Canvas(this, SWT.NO_REDRAW_RESIZE);\r
-               canvas = new Canvas(this, SWT.NONE);\r
-               \r
-//             if (ImageDescriptor. image.getImageData()\r
-               \r
-               TableWrapData layoutData = new TableWrapData(TableWrapData.LEFT, TableWrapData.TOP);\r
-               layoutData.heightHint = image.getBounds().height;\r
-               canvas.setLayoutData(layoutData);\r
-               \r
-               canvas.addPaintListener (new PaintListener () {\r
-                       public void paintControl (PaintEvent e) {\r
-                               if (image != null) {\r
-                                       canvas.setBounds(image.getBounds());\r
-                                       e.gc.drawImage (image, 0, 0);\r
-                               }\r
-                       }\r
-               });\r
-               \r
-               canvas.setBounds(image.getBounds());    \r
-               \r
-               focusListener = new FocusAdapter() {\r
-                       public void focusGained(FocusEvent e) {\r
-                               setFocus();\r
-                       }\r
-               };\r
-               canvas.addFocusListener(focusListener);\r
-       }\r
-\r
-       /**\r
-        * \r
-        */\r
-       private void createMenu() {\r
-               ContextMenu contextMenu = createContextMenu();\r
-\r
-               contextMenu.addAction(new RemoveImageAction(taxon, url));\r
-               contextMenu.addAction(new AddImageAction(taxon));\r
-       }\r
-       \r
-       protected ContextMenu createContextMenu() {\r
-               \r
-               ContextMenu contextMenu = new ContextMenu(this);\r
-               canvas.setMenu(contextMenu.getMenu());\r
-               return contextMenu;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.GroupedComposite#getViewerFont()\r
-        */\r
-       @Override\r
-       protected Font getViewerFont() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.IHasPropertySource#getPropertySource()\r
-        */\r
-       public IPropertySource getPropertySource() {\r
-               return new ImagePropertySource(getTaxon(), url);\r
-       }\r
-       \r
-       public void createBorderSupport() {\r
-               \r
-//             if (textViewer == null) {\r
-//                     logger.warn("Could not create border support - getTextViewer() returned null.");\r
-//             } else {\r
-                       CompositeBorderDecorator borderDecorator = new CompositeBorderDecorator(\r
-                                       canvas, managedForm);\r
-                       setBorderDecorator(borderDecorator);\r
-                       borderDecorator.setLoseFocus(false);\r
-                       this.addFocusListener(borderDecorator);\r
-//                     textViewer.getTextWidget().addFocusListener(borderDecorator);\r
-//             }\r
-       }\r
-       \r
-       public void dispose () {\r
-               super.dispose();\r
-               \r
-               if (getBorderDecorator() != null) {\r
-                       this.removeFocusListener(getBorderDecorator());\r
-               }\r
-               \r
-               if (image != null) {\r
-                       image.dispose();\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImagesController.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImagesController.java
deleted file mode 100644 (file)
index fa0bea4..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.images;\r
-\r
-import java.net.URL;\r
-import java.util.HashMap;\r
-import java.util.HashSet;\r
-import java.util.Map;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.graphics.Image;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 31.03.2009\r
- * @version 1.0\r
- */\r
-public class ImagesController {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ImagesController.class);\r
-       \r
-       static Map<Taxon, Set<URL>> taxonImageUrls = new HashMap<Taxon, Set<URL>>();\r
-       static Map<URL, Image> urlImages = new HashMap<URL, Image>();\r
-       \r
-       public static Set<URL> getTaxonImageUrls(Taxon taxon) {\r
-               Set<URL> imageUrls = taxonImageUrls.get(taxon); \r
-               if (imageUrls == null) {\r
-                       imageUrls = new HashSet<URL>();\r
-                       taxonImageUrls.put(taxon, imageUrls);\r
-               }\r
-               return imageUrls;\r
-       }\r
-\r
-       /**\r
-        * @param taxon\r
-        * @param url\r
-        */\r
-       public static void addTaxonImageUrl(Taxon taxon, URL url) {\r
-               getTaxonImageUrls(taxon).add(url);\r
-       }\r
-\r
-       /**\r
-        * @param taxon\r
-        * @param url\r
-        */\r
-       public static void removeTaxonImageUrl(Taxon taxon, URL url) {\r
-               getTaxonImageUrls(taxon).remove(url);\r
-       }\r
-\r
-       /**\r
-        * @param url\r
-        * @return\r
-        */\r
-       public static Image getImage(URL url) {\r
-               return TaxEditorPlugin.getDefault().getImage(url);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImagesGroupComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/ImagesGroupComposite.java
deleted file mode 100644 (file)
index b8d433f..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.images;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.GroupComposite;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 30.03.2009\r
- * @version 1.0\r
- */\r
-public class ImagesGroupComposite extends GroupComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ImagesGroupComposite.class);\r
-       \r
-       private Taxon taxon;\r
-       \r
-       /**\r
-        * @param parent\r
-        */\r
-       public ImagesGroupComposite(Composite parent, Taxon taxon) {\r
-               super(parent);\r
-               \r
-               this.taxon = taxon;\r
-               \r
-               Color groupBackgroundColor = getDisplay().getSystemColor(SWT.COLOR_WHITE);\r
-               setBackground(groupBackgroundColor);\r
-       }\r
-       \r
-       public Taxon getTaxon() {\r
-               return taxon;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/TaxonHasNoImagesComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/TaxonHasNoImagesComposite.java
deleted file mode 100644 (file)
index e20dce3..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.images;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.ui.forms.ManagedForm;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.GroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.NameComposite;\r
-import eu.etaxonomy.taxeditor.editor.name.NameViewer;\r
-import eu.etaxonomy.taxeditor.operations.images.AddImageOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 31.03.2009\r
- * @version 1.0\r
- */\r
-public class TaxonHasNoImagesComposite extends GroupedComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxonHasNoImagesComposite.class);\r
-\r
-       /**\r
-        * @param groupComposite\r
-        * @param form\r
-        * @param taxon\r
-        */\r
-       public TaxonHasNoImagesComposite(GroupComposite parent,\r
-                       ManagedForm form, Taxon taxon) {\r
-               super(parent, form);\r
-\r
-               createTextViewer();\r
-               setIsDraggable(false);\r
-//             setIcon(ACCEPTED_ICON);\r
-               setFont(getViewerFont());\r
-//             setIndent(ACCEPTED_INDENT);\r
-\r
-               initEmptyText();\r
-       }\r
-\r
-       protected void createControl() {\r
-               super.createControl();\r
-                               \r
-               Color groupBackgroundColor = getDisplay().getSystemColor(SWT.COLOR_WHITE);\r
-               setBackground(groupBackgroundColor);\r
-       }\r
-       \r
-       protected void initEmptyText() {\r
-               super.initEmptyText();\r
-               \r
-               getTextViewer().getTextWidget().setEditable(false);\r
-               getTextViewer().getTextWidget().addMouseListener(new MouseAdapter() {\r
-                       public void mouseUp(MouseEvent e) {\r
-                               createNewImage();\r
-                       }\r
-               });\r
-               \r
-               if (getTextViewer() instanceof NameViewer) {\r
-                       Color groupBackgroundColor = getDisplay().getSystemColor(SWT.COLOR_WHITE);\r
-                       ((NameViewer) getTextViewer()).setBackground(groupBackgroundColor);\r
-               }\r
-       }\r
-       \r
-       protected String getEmptyTextPrompt() {\r
-               return "Click to add an image"; \r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       private void createNewImage() {\r
-//             GlobalController.getUrlFromDialog();\r
-               IUndoableOperation operation = new AddImageOperation\r
-                               ("Create new image", EditorController.getUndoContext(taxon), taxon);\r
-               GlobalController.executeOperation(operation);\r
-       }\r
-\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.GroupedComposite#getViewerFont()\r
-        */\r
-       @Override\r
-       protected Font getViewerFont() {\r
-               return NameComposite.ACCEPTED_FONT;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.IHasPropertySource#getPropertySource()\r
-        */\r
-       public IPropertySource getPropertySource() {\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/TaxonImagesEditor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/TaxonImagesEditor.java
deleted file mode 100644 (file)
index 6a49a44..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.images;\r
-\r
-import java.net.URL;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.editor.AbstractTaxonEditor;\r
-import eu.etaxonomy.taxeditor.editor.FreeTextElementFactory;\r
-import eu.etaxonomy.taxeditor.editor.GroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 30.03.2009\r
- * @version 1.0\r
- */\r
-public class TaxonImagesEditor extends AbstractTaxonEditor {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxonImagesEditor.class);\r
-               \r
-       public void init(IEditorSite site, IEditorInput input)\r
-                       throws PartInitException {\r
-                               \r
-               super.init(site, input);\r
-               \r
-               Taxon taxon = getTaxon();       \r
-               EditorController.addImagesEditor(taxon, this);\r
-       }\r
-       \r
-       @Override\r
-       protected void createManagedForm(Composite composite) {\r
-               \r
-               super.createManagedForm(composite);\r
-               \r
-               if (getUrls().size() == 0) {\r
-                       firstGroupedComposite = (GroupedComposite) FreeTextElementFactory.getDefault().createTaxonHasNoImagesElement(managedForm, getTaxon());\r
-               } else {\r
-                       firstGroupedComposite = null;\r
-                       for (URL url : getUrls()) {\r
-                               Composite imageComposite = FreeTextElementFactory.getDefault().createImageElement(managedForm, getTaxon(), url);\r
-                       \r
-                               if (firstGroupedComposite == null) {\r
-                                       firstGroupedComposite = (GroupedComposite) imageComposite;\r
-                               }\r
-                               \r
-                       }\r
-               }\r
-\r
-               setFocus();\r
-               \r
-               // Redraw composite\r
-               composite.layout();\r
-       }\r
-       \r
-       /**\r
-        * @return \r
-        * \r
-        */\r
-       private Set<URL> getUrls() {\r
-               Taxon taxon = getTaxon();\r
-               return ImagesController.getTaxonImageUrls(taxon);\r
-       }\r
-\r
-       /**\r
-        * @return\r
-        */\r
-       public GroupComposite getImageGroup() {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof ImagesGroupComposite){\r
-                               return (GroupComposite) c;\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/UrlDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/images/UrlDialog.java
deleted file mode 100644 (file)
index e974b3d..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.images;\r
-\r
-import java.net.MalformedURLException;\r
-import java.net.URL;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.dialogs.IInputValidator;\r
-import org.eclipse.jface.dialogs.InputDialog;\r
-import org.eclipse.jface.window.Window;\r
-import org.eclipse.swt.widgets.Shell;\r
-\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 31.03.2009\r
- * @version 1.0\r
- */\r
-public class UrlDialog extends InputDialog {\r
-       private static final Logger logger = Logger.getLogger(UrlDialog.class);\r
-       private URL url;\r
-               \r
-       /**\r
-        * @param parentShell\r
-        * @param dialogTitle\r
-        * @param dialogMessage\r
-        * @param initialValue\r
-        * @param validator\r
-        */\r
-       private UrlDialog(Shell parentShell, String dialogTitle,\r
-                       String dialogMessage) {\r
-               super(parentShell, dialogTitle, \r
-                               dialogMessage, "http://", new IInputValidator() {\r
-\r
-                                       public String isValid(String text) {\r
-                                               URL url = null;\r
-                                               try {\r
-                                                       url = new URL(text);\r
-                                               } catch (MalformedURLException e) {\r
-                                                       return "URL not correctly formed.";\r
-                                               }\r
-                                               \r
-                                               if (text.length() <= "http://".length()) {\r
-                                                       return "";\r
-                                               }\r
-                                               return null;\r
-                                       }\r
-                       \r
-               });\r
-       }\r
-\r
-       private URL getUrl() {\r
-               URL url = null;\r
-               try {\r
-                       url = new URL(getValue());\r
-               } catch (MalformedURLException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-               return url;\r
-       }\r
-       \r
-       public static URL getUrl(String dialogTitle,\r
-                       String dialogMessage) {\r
-               UrlDialog dialog = new UrlDialog(GlobalController.getShell(), \r
-                               dialogTitle, \r
-                               dialogMessage);\r
-               if (dialog.open() == Window.CANCEL) {\r
-                       return null;\r
-               }\r
-               return dialog.getUrl();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/AcceptedNameComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/AcceptedNameComposite.java
deleted file mode 100644 (file)
index 319e293..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.jface.viewers.ISelection;\r
-import org.eclipse.jface.viewers.ISelectionChangedListener;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateAutonymAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateConceptRelationAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateHeterotypicSynonymAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateSynonymInGroupAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateMisappliedNameAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateTaxonomicallyIncludedTaxonAction;\r
-import eu.etaxonomy.taxeditor.actions.ui.ChangeTaxonToSynonymAction;\r
-import eu.etaxonomy.taxeditor.actions.ui.MoveTaxonDialogAction;\r
-import eu.etaxonomy.taxeditor.editor.ContextMenu;\r
-import eu.etaxonomy.taxeditor.editor.MenuConstants;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.propertysheet.name.TaxonBasePropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.01.2009\r
- * @version 1.0\r
- */\r
-public class AcceptedNameComposite extends NameComposite {\r
-       @SuppressWarnings("unused")\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AcceptedNameComposite.class);\r
-       \r
-       public AcceptedNameComposite(Composite groupComposite, IManagedForm form,\r
-                       Taxon taxon) {\r
-               super(groupComposite, form, taxon);\r
-       \r
-               setIsDraggable(false);\r
-               setIcon(ACCEPTED_ICON);\r
-               setFont(getViewerFont());\r
-               setIndent(ACCEPTED_INDENT);\r
-\r
-               createMenu();\r
-               \r
-               initTextViewer(taxon);\r
-       }\r
-\r
-       private void createMenu() {\r
-               ContextMenu contextMenu = createContextMenu();\r
-\r
-               contextMenu.setMenuManager(MenuConstants.EDITOR_TAXON_MENU());\r
-               \r
-//             contextMenu.addAction(new CreateHeterotypicSynonymAction());\r
-//             contextMenu.addAction(new CreateSynonymInGroupAction());\r
-//             contextMenu.addSeparator();                     \r
-//             contextMenu.addAction(new CreateMisappliedNameAction());\r
-//             \r
-//             MenuManager subMenu = new MenuManager("Create concept relation");\r
-//             for (TaxonRelationshipType type : \r
-//                             CdmSessionDataRepository.getDefault().getConceptRelationshipTypes()) {\r
-//                     subMenu.add(new CreateConceptRelationAction(type));\r
-//             }\r
-//             contextMenu.addSubmenu(subMenu);\r
-//             contextMenu.addSeparator();     \r
-//             contextMenu.addAction(new MoveTaxonDialogAction());\r
-//             contextMenu.addAction(new ChangeTaxonToSynonymAction());\r
-//             contextMenu.addSeparator();\r
-//             // TODO is it correct that onlx taxa with rank species may have autonyms?\r
-//     //      if(getTaxon().getName().getRank().equals(Rank.SPECIES())){\r
-//                     contextMenu.addAction(new CreateAutonymAction());\r
-//     //      }\r
-//             contextMenu.addAction(new CreateTaxonomicallyIncludedTaxonAction());\r
-               \r
-               textViewer.getTextWidget().setMenu(contextMenu.getMenu());\r
-       }\r
-\r
-       \r
-       public IPropertySource getPropertySource() {\r
-               return new TaxonBasePropertySource(taxon, "Accepted Name");\r
-       }\r
-       \r
-       @Override\r
-       protected Font getViewerFont() {\r
-               return ACCEPTED_FONT;\r
-       }\r
-\r
-       @Override\r
-       protected TaxonNameBase getName() {\r
-               return taxon.getName();\r
-       }\r
-       \r
-       public Object getData () {\r
-               return getTaxon();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/CdmParserController.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/CdmParserController.java
deleted file mode 100644 (file)
index c53f470..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.strategy.parser.INonViralNameParser;\r
-import eu.etaxonomy.cdm.strategy.parser.NonViralNameParserImpl;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 22.12.2008\r
- * @version 1.0\r
- */\r
-public class CdmParserController {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CdmParserController.class);\r
-       \r
-       private static INonViralNameParser nonViralNameParser;\r
-       \r
-       private static INonViralNameParser getNonViralNameParser() {\r
-               if (nonViralNameParser == null) {\r
-                       nonViralNameParser = NonViralNameParserImpl.NewInstance();\r
-               }\r
-               return nonViralNameParser;\r
-       }\r
-       \r
-       public static void clearNonViralNameParser() {\r
-               nonViralNameParser = null;\r
-       }\r
-       \r
-       /**\r
-        * Takes a raw string, returns a brand spanking new name object.\r
-        * <p>\r
-        * If no nomenclatural code is specified, the code specified in user preferences\r
-        * is used, i.e. if the preferred code is ICBN, a <code>BotanicalName</code> is returned; \r
-        * if it's ICZN, a <code>ZoologicalName</code> is returned.\r
-        * </p>\r
-        * \r
-        * @param fullReference\r
-        * @param nomCode\r
-        * @param rank\r
-        * @return\r
-        */\r
-       public static TaxonNameBase parseFullReference(String fullReference,\r
-                       NomenclaturalCode nomCode, Rank rank) {\r
-               \r
-               if (nomCode == null) {\r
-                       nomCode = PreferencesController.getPreferredNomenclaturalCode();\r
-               }\r
-               \r
-               TaxonNameBase name = getNonViralNameParser().parseReferencedName(fullReference,\r
-                               nomCode, rank);\r
-\r
-               if (name.hasProblem()) {\r
-                       name.setFullTitleCache(fullReference);\r
-               }\r
-               \r
-               return name;\r
-       }\r
-\r
-       /**\r
-        * Takes an existing name object and a string, returns the same name\r
-        * object with the fields parsed from the string.\r
-        * \r
-        * @param nameToBeFilled\r
-        * @param fullReference\r
-        * @param rank\r
-        * @param makeEmpty\r
-        */\r
-       public static void parseFullReference(NonViralName nameToBeFilled, String fullReference) {\r
-               \r
-               Rank rank = null;\r
-               boolean makeEmpty = true;\r
-               \r
-               // If the name already has a rank, make sure it is passed to the parser\r
-               if (nameToBeFilled.getRank() != null) {\r
-                       rank = nameToBeFilled.getRank();\r
-               }\r
-                                               \r
-               getNonViralNameParser().parseReferencedName(nameToBeFilled, fullReference, rank, makeEmpty);\r
-               \r
-               if (nameToBeFilled.hasProblem()) {\r
-                       nameToBeFilled.setFullTitleCache(fullReference);\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * @param nameToBeFilled\r
-        * @param fullNameString\r
-        * @param rank\r
-        * @param makeEmpty\r
-        */\r
-       public static void parseFullName(NonViralName nameToBeFilled,\r
-                       String fullNameString, Rank rank, boolean makeEmpty) {\r
-               getNonViralNameParser().parseFullName(nameToBeFilled, fullNameString,\r
-                               rank, makeEmpty);\r
-       }\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/ConceptComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/ConceptComposite.java
deleted file mode 100644 (file)
index c55e6fe..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.actions.name.ChangeConceptRelationAction;\r
-import eu.etaxonomy.taxeditor.actions.name.RemoveConceptAction;\r
-import eu.etaxonomy.taxeditor.editor.ContextMenu;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.propertysheet.name.TaxonBasePropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 26.01.2009\r
- * @version 1.0\r
- */\r
-public class ConceptComposite extends NameComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ConceptComposite.class);\r
-       \r
-       private Taxon relatedTaxon;\r
-       private TaxonRelationshipType relationshipType;\r
-       \r
-       /**\r
-        * \r
-        */\r
-       private boolean acceptedTaxonIsFromTaxon;\r
-               \r
-       private ConceptComposite(Composite parent, IManagedForm form,\r
-                       Taxon taxon, Taxon relatedTaxon, TaxonRelationshipType relationshipType, \r
-                       boolean acceptedTaxonIsFromTaxon) {\r
-               super(parent, form, relatedTaxon);\r
-               \r
-               this.taxon = taxon;\r
-               this.relatedTaxon = relatedTaxon;\r
-               this.relationshipType = relationshipType;\r
-               this.acceptedTaxonIsFromTaxon = acceptedTaxonIsFromTaxon;\r
-               \r
-               setIsDraggable(true);\r
-               setIcon(CONCEPT_ICON);\r
-               setFont(getViewerFont());\r
-               setIndent(CONCEPT_INDENT);\r
-\r
-               createMenu();\r
-               \r
-               showRelationshipType();\r
-               showSec();\r
-                               \r
-               initTextViewer(relatedTaxon);\r
-       }\r
-       \r
-       private void showRelationshipType() {\r
-               setNonEditableInfo(relationshipType.getLabel());\r
-       }\r
-\r
-       private void showSec() {\r
-               if (relatedTaxon == null) {\r
-                       return;\r
-               }\r
-               \r
-               if (relatedTaxon.getSec() == null) {\r
-                       setNonEditableInfo("sec. ???");\r
-               } else {\r
-                       setNonEditableInfo("sec. " + relatedTaxon.getSec().getTitleCache());\r
-               }\r
-       }\r
-\r
-       public static ConceptComposite getNewInstance(Composite parent, IManagedForm form,\r
-                       Taxon taxon, TaxonRelationship relationship){\r
-\r
-               TaxonRelationshipType relationshipType = relationship.getType();\r
-               \r
-               if (relationship.getToTaxon() == null || relationship.getFromTaxon() == null) {\r
-                       logger.warn("Could not create concept composite - related taxon is null");\r
-                       return null;\r
-               }\r
-               \r
-               if (relationship.getToTaxon().equals(taxon)) {\r
-                       return new ConceptComposite (parent, form, taxon, \r
-                                       relationship.getFromTaxon(), relationshipType, false);\r
-               } else {\r
-                       return new ConceptComposite (parent, form, taxon, \r
-                                       relationship.getToTaxon(), relationshipType, true);\r
-               } \r
-       }\r
-\r
-       private void createMenu() {\r
-               ContextMenu contextMenu = createContextMenu();\r
-               \r
-               // Remove misapplied name from taxon\r
-               contextMenu.addAction(new RemoveConceptAction(taxon, relatedTaxon, relationshipType));\r
-               MenuManager subMenu = new MenuManager("Change relation type");\r
-               for (TaxonRelationshipType type : CdmSessionDataRepository.getDefault().getConceptRelationshipTypes()) {\r
-                       subMenu.add(new ChangeConceptRelationAction(taxon, relatedTaxon, type));\r
-               }\r
-               contextMenu.addSubmenu(subMenu);\r
-       }\r
-\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.GroupedComposite#getViewerFont()\r
-        */\r
-       @Override\r
-       protected Font getViewerFont() {\r
-               return CONCEPT_FONT;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.IHasPropertySource#getPropertySource()\r
-        */\r
-       \r
-       public IPropertySource getPropertySource() {\r
-               return new TaxonBasePropertySource(relatedTaxon, "Concept Name");\r
-       }\r
-\r
-       public Taxon getRelatedTaxon() {\r
-               return relatedTaxon;\r
-       }\r
-       \r
-       protected TaxonNameBase getName() {\r
-               return relatedTaxon.getName();\r
-       }\r
-       \r
-       protected void calculateErrors() {\r
-               super.calculateErrors();\r
-               \r
-               textViewer.setShowSecError(relatedTaxon);\r
-       }\r
-       \r
-       public Object getData () {\r
-               return getRelatedTaxon();\r
-       }\r
-}\r
-\r
-\r
-\r
-\r
-\r
-\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/ConceptGroupComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/ConceptGroupComposite.java
deleted file mode 100644 (file)
index f69f1f3..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.GroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 21.01.2009\r
- * @version 1.0\r
- */\r
-public class ConceptGroupComposite extends GroupComposite {\r
-\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ConceptGroupComposite.class);\r
-       \r
-       private Taxon taxon;\r
-       \r
-       public ConceptGroupComposite(Composite parent, Taxon taxon) {\r
-               super(parent);\r
-               \r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       public Taxon getTaxon() {\r
-               return taxon;\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.GroupComposite#isDroppable(eu.etaxonomy.taxeditor.editor.GroupedComposite)\r
-        */\r
-       protected boolean isDroppable(GroupedComposite composite) {\r
-               return false;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/HomotypicalGroupComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/HomotypicalGroupComposite.java
deleted file mode 100644 (file)
index d1a9396..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.GroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.01.2009\r
- * @version 1.0\r
- */\r
-public class HomotypicalGroupComposite extends GroupComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(HomotypicalGroupComposite.class);\r
-       \r
-       private Taxon taxon;\r
-       private HomotypicalGroup group;\r
-       \r
-       public HomotypicalGroupComposite(Composite parent, Taxon taxon,\r
-                       HomotypicalGroup group) {\r
-               \r
-               super(parent);\r
-               \r
-               this.taxon = taxon;\r
-               this.group = group;\r
-       }\r
-       \r
-       public Taxon getTaxon() {\r
-               return taxon;\r
-       }\r
-       \r
-       public HomotypicalGroup getGroup() {\r
-               return group;\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.GroupComposite#isDroppable(eu.etaxonomy.taxeditor.editor.GroupedComposite)\r
-        */\r
-       protected boolean isDroppable(GroupedComposite composite) {\r
-               if (composite instanceof ConceptComposite) {\r
-                       return false;\r
-               }\r
-               return true;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/INameEditorCompositeRepository.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/INameEditorCompositeRepository.java
deleted file mode 100644 (file)
index 52ce028..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-\r
-/**\r
- * @author p.ciardell\r
- * @created 22.12.2008\r
- * @version 1.0\r
- */\r
-public interface INameEditorCompositeRepository {\r
-\r
-       public Composite getAcceptedName();\r
-       \r
-       public Composite getSynonym(Synonym synonym);\r
-       \r
-       public Composite getHomotypicGroup(HomotypicalGroup group);\r
-       \r
-       public Composite getMisappliedName(Taxon misappliedName);\r
-       \r
-       public Composite getMisappliedGroup();\r
-       \r
-       public Composite getConcept(Taxon relatedConcept);\r
-       \r
-       public Composite getConceptGroup();\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/IterableSynonymyList.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/IterableSynonymyList.java
deleted file mode 100644 (file)
index e6d49ee..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Iterator;\r
-import java.util.List;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
-\r
-/**\r
- * Retrieves the elements of a <code>Taxon</code>'s synonymy list, including misapplied names,\r
- * using an iterator. \r
- * <p> \r
- * Note: does not return an entry for the <code>Taxon</code> itself.\r
- * </p>\r
- * \r
- * @author p.ciardelli\r
- * @created 09.05.2008\r
- * @version 1.0\r
- */\r
-public class IterableSynonymyList implements Iterable<TaxonBase> {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(IterableSynonymyList.class);\r
-       \r
-       private Taxon taxon;\r
-\r
-       public IterableSynonymyList(Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-\r
-       public Iterator<TaxonBase> iterator() {\r
-               return new TaxonIterator(taxon);\r
-       }\r
-       \r
-       class TaxonIterator implements Iterator<TaxonBase> {\r
-\r
-               List<TaxonBase> synonymyList;\r
-               int index = 0;\r
-               \r
-               public TaxonIterator(Taxon taxon) {\r
-                       synonymyList = new ArrayList<TaxonBase>();\r
-                       HomotypicalGroup homotypicGroup = taxon.getHomotypicGroup();\r
-                       \r
-                       if (homotypicGroup != null) {\r
-                               List<Synonym> homotypicSynonyms = homotypicGroup.getSynonymsInGroup(taxon.getSec());\r
-                               for (Synonym synonym : homotypicSynonyms) {\r
-\r
-                                       // Make sure synonym belongs to the taxon\r
-                                       if (synonym.getAcceptedTaxa().contains(taxon)) {\r
-                                               synonymyList.add(synonym);\r
-                                       }\r
-                               }\r
-                       }\r
-                       \r
-                       List<HomotypicalGroup> heterotypicGroups = taxon.getHeterotypicSynonymyGroups();\r
-                       for (HomotypicalGroup heterotypicGroup : heterotypicGroups) {\r
-                               \r
-                               // Make sure this is not the taxon's homotypic group\r
-                               if (!heterotypicGroup.equals(homotypicGroup)) {\r
-                                                               \r
-                                       List<Synonym> heterotypicSynonyms = heterotypicGroup.\r
-                                                       getSynonymsInGroup(taxon.getSec());\r
-                                       for (Synonym synonym : heterotypicSynonyms) {\r
-\r
-                                               // Make sure synonym belongs to the taxon\r
-                                               if (synonym.getAcceptedTaxa().contains(taxon)) {\r
-                                                       synonymyList.add(synonym);\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }\r
-                       \r
-                       Set<Taxon> misappliedNames = taxon.getMisappliedNames();\r
-                       for (Taxon misappliedName : misappliedNames) {\r
-                               synonymyList.add(misappliedName);\r
-                       }\r
-                       \r
-               }\r
-\r
-               public boolean hasNext() {\r
-                       if (synonymyList.size() == index) {\r
-                               return false;\r
-                       }\r
-                       return true;\r
-               }\r
-\r
-               public TaxonBase next() {\r
-                       TaxonBase next = synonymyList.get(index);\r
-                       index++;\r
-                       return next;\r
-               }\r
-\r
-               public void remove() {}\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/MisappliedGroupComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/MisappliedGroupComposite.java
deleted file mode 100644 (file)
index 3766dbc..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.GroupComposite;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.01.2009\r
- * @version 1.0\r
- */\r
-public class MisappliedGroupComposite extends GroupComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(MisappliedGroupComposite.class);\r
-       \r
-       private Taxon taxon;\r
-       \r
-       public MisappliedGroupComposite(Composite parent, Taxon taxon) {\r
-               super(parent);\r
-               \r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       public Taxon getTaxon() {\r
-               return taxon;\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.editor.GroupComposite#isDroppable(eu.etaxonomy.taxeditor.editor.GroupedComposite)\r
-        */\r
-       protected boolean isDroppable(GroupedComposite composite) {\r
-               if (composite instanceof ConceptComposite) {\r
-                       return false;\r
-               }\r
-               return true;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/MisappliedNameComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/MisappliedNameComposite.java
deleted file mode 100644 (file)
index 8f61115..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.actions.name.RemoveConceptAction;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.ContextMenu;\r
-import eu.etaxonomy.taxeditor.operations.name.ChangeMisappliedNameToSynonymOperation;\r
-import eu.etaxonomy.taxeditor.propertysheet.name.TaxonBasePropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.01.2009\r
- * @version 1.0\r
- */\r
-public class MisappliedNameComposite extends NameComposite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(MisappliedNameComposite.class);\r
-       \r
-       private Taxon misappliedName;\r
-       \r
-       public MisappliedNameComposite(Composite parent, IManagedForm form,\r
-                       Taxon taxon, Taxon misappliedName) {\r
-               super(parent, form, misappliedName);\r
-               \r
-               this.taxon = taxon;\r
-               this.misappliedName = misappliedName;\r
-               \r
-               setIsDraggable(true);\r
-               setIcon(MISAPPLIEDNAME_ICON);\r
-               setFont(getViewerFont());\r
-               setIndent(MISAPPLIEDNAME_INDENT);\r
-\r
-               createMenu();\r
-               \r
-               showSec();              \r
-               \r
-               initTextViewer(misappliedName);\r
-       }\r
-\r
-       private void showSec() {\r
-               if (misappliedName == null) {\r
-                       return;\r
-               }\r
-               \r
-               if (misappliedName.getSec() == null) {\r
-                       setNonEditableInfo("sec. ???");\r
-               } else {\r
-                       setNonEditableInfo("sec. " + misappliedName.getSec().getTitleCache());\r
-               }\r
-       }\r
-       \r
-       public Taxon getMisappliedName() {\r
-               return misappliedName;\r
-       }\r
-       \r
-       private void createMenu() {\r
-\r
-               ContextMenu contextMenu = createContextMenu();\r
-\r
-               // Remove misapplied name from taxon\r
-               contextMenu.addAction(new RemoveConceptAction(taxon, \r
-                               misappliedName, TaxonRelationshipType.MISAPPLIED_NAME_FOR()));\r
-\r
-       }\r
-       \r
-       public boolean setParent(Composite parent) {\r
-\r
-               if (super.setParent(parent)) {  \r
-                       \r
-                       // If this has been moved to the misapplied names group, do nothing\r
-                       if (parent instanceof MisappliedGroupComposite) {\r
-                               return true;\r
-                       }\r
-\r
-                       // Has this been moved to a HomotypicalGroup?\r
-                       if (parent instanceof HomotypicalGroupComposite) {\r
-                               \r
-                               HomotypicalGroup homotypicalGroup = \r
-                                               ((HomotypicalGroupComposite)parent).getGroup();\r
-                               \r
-                               IUndoContext undoContext = EditorController.getUndoContext(taxon);\r
-                               IUndoableOperation operation = new ChangeMisappliedNameToSynonymOperation\r
-                                               ("change misapplication to synonym", undoContext, taxon, misappliedName, homotypicalGroup);\r
-                               \r
-                               GlobalController.executeOperation(operation);\r
-                       }\r
-                       return true;\r
-\r
-               }\r
-               return false;\r
-       }\r
-       \r
-       public IPropertySource getPropertySource() {\r
-               return new TaxonBasePropertySource(misappliedName, "Misapplied Name");\r
-       }\r
-\r
-       @Override\r
-       protected Font getViewerFont() {\r
-               return MISAPPLIEDNAME_FONT;\r
-       }\r
-       \r
-       protected void calculateErrors() {\r
-               super.calculateErrors();\r
-               \r
-               textViewer.setShowSecError(misappliedName);\r
-       }\r
-\r
-       @Override\r
-       protected TaxonNameBase getName() {\r
-               return misappliedName.getName();\r
-       }\r
-       \r
-       public Object getData () {\r
-               return getMisappliedName();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/NameComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/NameComposite.java
deleted file mode 100644 (file)
index c23a720..0000000
+++ /dev/null
@@ -1,320 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.NameRelationship;\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateSynonymInNewGroupOperation;\r
-import eu.etaxonomy.taxeditor.propertysheet.name.BotanicalNamePropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.name.NonViralNamePropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.name.ZoologicalNamePropertySource;\r
-\r
-/**\r
- * Formats an <code>GroupedComposite</code> to display <code>TaxonNameBase</code> elements\r
- * in a <code>NameViewer</code>.\r
- * \r
- * @author p.ciardelli\r
- * @created 02.06.2008\r
- * @version 1.0\r
- */\r
-public abstract class NameComposite extends GroupedComposite {\r
-       private static final Logger logger = Logger.getLogger(NameComposite.class);\r
-\r
-       /**\r
-        * ************ COMPOSITE TYPES ************\r
-        */\r
-       public String compositeType;\r
-       public static final String ACCEPTED_TAXON = "accepted_name_composite";\r
-       public static final String HOMOTYPIC_SYNONYM = "homotypic_name_composite";\r
-       public static final String HETEROTYPIC_SYNONYM = "heterotypic_name_composite";\r
-       public static final String MISAPPLIED_NAME = "misappliedname_name_composite";\r
-       public static final String CONCEPTRELATION = "concept_name_comcposite";\r
-\r
-       /**\r
-        * ************ INDENTATIONS ************\r
-        */\r
-       public static final int ACCEPTED_INDENT = 0;\r
-       public static final int SYNONYM_INDENT = 15;\r
-       public static final int MISAPPLIEDNAME_INDENT = 15;\r
-       public static final int CONCEPT_INDENT = 15;\r
-\r
-       /**\r
-        * ************ FONTS ************\r
-        */\r
-       public static final Font ACCEPTED_FONT = TaxEditorPlugin.getDefault()\r
-                       .getFont(ITaxEditorConstants.ACCEPTED_TAXON_FONT);\r
-       public static final Font SYNONYM_FONT = TaxEditorPlugin.getDefault()\r
-                       .getFont(ITaxEditorConstants.SYNONYM_FONT);\r
-       public static final Font MISAPPLIEDNAME_FONT = TaxEditorPlugin.getDefault()\r
-                       .getFont(ITaxEditorConstants.MISAPPLIEDNAME_FONT);\r
-       public static final Font CONCEPT_FONT = TaxEditorPlugin.getDefault()\r
-                       .getFont(ITaxEditorConstants.CONCEPT_FONT);\r
-\r
-       /**\r
-        * ************ ICONS ************\r
-        */\r
-       public static final Image ACCEPTED_ICON = TaxEditorPlugin.getDefault()\r
-                       .getImage(ITaxEditorConstants.BLACK_SQUARE_ICON);\r
-       public static final Image HOMOTYPIC_SYNONYM_ICON = TaxEditorPlugin\r
-                       .getDefault().getImage(ITaxEditorConstants.HOMOTYPIC_SYN_ICON);\r
-       public static final Image HOMOTYPIC_SYNONYM_ORIGINAL_COMBINATION_ICON = TaxEditorPlugin\r
-                       .getDefault().getImage(\r
-                                       ITaxEditorConstants.HOMOTYPIC_SYN_ORIGINAL_ICON);\r
-       public static final Image HETEROTYPIC_SYNONYM_ICON = TaxEditorPlugin\r
-                       .getDefault().getImage(ITaxEditorConstants.HETEROTYPIC_SYN_ICON);\r
-       public static final Image HETEROTYPIC_SYNONYM_ORIGINAL_COMBINATION_ICON = TaxEditorPlugin\r
-                       .getDefault().getImage(\r
-                                       ITaxEditorConstants.HETEROTYPIC_SYN_ORIGINAL_ICON);\r
-       public static final Image MISAPPLIEDNAME_ICON = TaxEditorPlugin\r
-                       .getDefault().getImage(ITaxEditorConstants.MISAPPLIED_NAME_ICON);\r
-       public static final Image CONCEPT_ICON = TaxEditorPlugin\r
-                       .getDefault().getImage(ITaxEditorConstants.CONCEPT_ICON);\r
-       public static final Image AUTONYM_ICON = TaxEditorPlugin.getDefault()\r
-                       .getImage(ITaxEditorConstants.AUTONYM_ICON);\r
-       public static final Image BASIONYM_ICON = TaxEditorPlugin.getDefault()\r
-                       .getImage(ITaxEditorConstants.BASIONYM_ICON);\r
-       public static final Image MOVE = TaxEditorPlugin.getDefault().getImage(\r
-                       ITaxEditorConstants.MOVE_ICON);\r
-\r
-       /**\r
-        * ************ TRANSFORMATIONS ************\r
-        */\r
-       public static final String ADD_GROUP_BASIONYM = "add_group_basionym";\r
-       public static final String REMOVE_GROUP_BASIONYM = "remove_group_basionym";\r
-\r
-       /**\r
-        * ************ MENU ACTIONS ************\r
-        */\r
-       public Action CHANGE_TAXON_TO_SYNONYM_ACTION;\r
-\r
-       private static final String EMPTY_NAME_PROMPT = "Click to add name";\r
-\r
-       /**\r
-        * Used to turn parser on and off.\r
-        * \r
-        * @see activateParser\r
-        * @see deactivateParser\r
-        */\r
-       private boolean isUseParser = false;\r
-\r
-       protected boolean isParsing;\r
-\r
-       /**\r
-        * The constructor for a DescriptionElementComposite. Takes a parent Composite on which to\r
-        * create itself, and an IManagedForm for Composite life cycle methods, i.e.\r
-        * drawing borders, creating other Composites, creating line wrap support,\r
-        * etc.\r
-        * \r
-        * @param parent\r
-        * @param managedForm\r
-        */\r
-       public NameComposite(Composite parent, IManagedForm managedForm, \r
-                       TaxonBase taxonBase) {\r
-               super(parent, managedForm);\r
-\r
-               createTextViewer();\r
-               createBorderSupport();\r
-               createLineWrapSupport();\r
-               createLineBreakListener();\r
-               \r
-               setDraggableControl(textViewer.getRulerControl());\r
-               \r
-               createParser();\r
-               createEmptyViewerPrompt(EMPTY_NAME_PROMPT);\r
-               \r
-               // NOTE: placing this after setFocus() inexplicably solved a strange bug where if the first action\r
-               //      during a session was to open a new taxon, the empty name prompt didn't work\r
-               createNameListener(taxonBase.getName());\r
-       }\r
-       \r
-       \r
-       /**\r
-        * \r
-        */\r
-       private void showNameRelations() {\r
-               TaxonNameBase name = getName();\r
-               if (name == null) {\r
-                       return;\r
-               }\r
-               Set<NameRelationship> nameRelations = name.getNameRelations();\r
-               if (nameRelations.size() == 0) {\r
-                       return;\r
-               }\r
-               for (NameRelationship nameRelation : nameRelations) {\r
-                       String typeLabel = null;\r
-                       TaxonNameBase relatedName = null; \r
-                       \r
-                       boolean isZoological = name instanceof ZoologicalName ? true : false; \r
-                       \r
-                       if (name.equals(nameRelation.getFromName())) {\r
-                               typeLabel = GlobalController.getNameRelationTypeLabel( \r
-                                       nameRelation.getType(), isZoological);\r
-                               relatedName = nameRelation.getToName();\r
-                       } else {\r
-                               typeLabel = GlobalController.getNameRelationInverseTypeLabel( \r
-                                       nameRelation.getType(), isZoological);\r
-                               relatedName = nameRelation.getFromName();\r
-                       }\r
-                       \r
-                       setNonEditableInfo(typeLabel + " " + CdmUtil.getDisplayName(relatedName));\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Listens for changes to this name's <code>fullTitleCache</code>.\r
-        * \r
-        * @param data\r
-        */\r
-       private void createNameListener(final TaxonNameBase name) {\r
-               \r
-               if (name == null) {\r
-                       return;\r
-               }\r
-               \r
-               final PropertyChangeListener listener = new PropertyChangeListener() {\r
-                       public void propertyChange(PropertyChangeEvent evt) {\r
-                               \r
-                               if (isParsing) {\r
-                                       return;\r
-                               }\r
-                               \r
-                               if (EditorController.isSaving()) {\r
-                                       return;\r
-                               }\r
-                               \r
-                               deactivateParser();\r
-                               textViewer.setText(name.getFullTitleCache());\r
-                               activateParser();\r
-                       }\r
-               };\r
-               \r
-               // TODO clean this part up\r
-               name.addPropertyChangeListener("fullTitleCache", listener);\r
-               name.addPropertyChangeListener("nomenclaturalMicroReference", listener);\r
-\r
-//             name.addPropertyChangeListener(ITaxEditorConstants.REFRESH_NAMEVIEWER, listener);\r
-               \r
-               ReferenceBase reference = name.getNomenclaturalReference();\r
-               if (reference != null) {\r
-                       reference.addPropertyChangeListener("titleCache", listener);\r
-               }\r
-       }\r
-       \r
-       protected void initTextViewer(TaxonBase taxonBase) {\r
-               \r
-               showNameRelations();\r
-               \r
-               String text = CdmUtil.getDisplayNameWithRef(taxonBase);\r
-               \r
-               if (text.length() == 0) {\r
-                       initEmptyText();\r
-               } else {\r
-                       textViewer.getTextWidget().setText(text);\r
-                       textViewer.setCursorToEOL();\r
-               }\r
-               calculateErrors();\r
-               activateParser();\r
-       }\r
-       \r
-       protected void parse(String text) {\r
-               \r
-               // Either composite is not yet fully built, or\r
-               //      the property sheet is writing to it\r
-               if (!isUseParser) {\r
-                       return;\r
-               }\r
-               \r
-               // Let others know the parser is active\r
-               isParsing = true;\r
-                                               \r
-               // Parse the name and paint the text field w any errors\r
-               if (getName() != null) {\r
-                       CdmParserController.parseFullReference((NonViralName) getName(), text);\r
-               }\r
-\r
-               // Any entry of text means the taxon has been changed\r
-               setDirty(true);\r
-               \r
-               // The parser is no longer active\r
-               isParsing = false;\r
-               \r
-               // Manually refresh the property sheet to reflect changes\r
-               setSelection();\r
-               \r
-               // Show any errors in the name viewer\r
-               calculateErrors();\r
-       }\r
-       \r
-       private void activateParser() {\r
-               isUseParser = true;\r
-       }\r
-       \r
-       private void deactivateParser() {\r
-               isUseParser = false;\r
-       }\r
-       \r
-       protected abstract TaxonNameBase getName();\r
-       \r
-       protected void calculateErrors() {\r
-               textViewer.clearErrors();\r
-               textViewer.setShowParsingError(getName());\r
-       }\r
-\r
-       protected void handleSplitText(String text) {\r
-               // Create a synonym in a new homotypic group using text as name\r
-               IUndoContext undoContext = EditorController.getUndoContext(taxon);\r
-               IUndoableOperation operation = new CreateSynonymInNewGroupOperation\r
-                               ("new heterotypic synonym", undoContext, taxon, text); //$NON-NLS-1$\r
-               GlobalController.executeOperation(operation);\r
-       }\r
-       \r
-       protected IPropertySource getPropertySourceByName(TaxonNameBase name) {\r
-               if (name == null) {\r
-                       return null;\r
-               }\r
-               \r
-               if (name.getClass() == BotanicalName.class) {\r
-                       return new BotanicalNamePropertySource((BotanicalName) name);\r
-               }\r
-               if (name.getClass() == ZoologicalName.class) {\r
-                       return new ZoologicalNamePropertySource((ZoologicalName) name);\r
-               }\r
-               if (name instanceof NonViralName) {\r
-                       return new NonViralNamePropertySource((NonViralName) name);\r
-               }\r
-               \r
-               return null;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/NameViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/NameViewer.java
deleted file mode 100644 (file)
index 2211124..0000000
+++ /dev/null
@@ -1,333 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import java.util.Iterator;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.resources.IMarker;\r
-import org.eclipse.core.resources.IWorkspaceRunnable;\r
-import org.eclipse.core.resources.ResourcesPlugin;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.core.runtime.CoreException;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.jface.text.Document;\r
-import org.eclipse.jface.text.IUndoManager;\r
-import org.eclipse.jface.text.IUndoManagerExtension;\r
-import org.eclipse.jface.text.Position;\r
-import org.eclipse.jface.text.TextViewerUndoManager;\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.jface.text.source.AnnotationModel;\r
-import org.eclipse.jface.text.source.AnnotationPainter;\r
-import org.eclipse.jface.text.source.IAnnotationAccess;\r
-import org.eclipse.jface.text.source.IAnnotationModel;\r
-import org.eclipse.jface.text.source.IVerticalRuler;\r
-import org.eclipse.jface.text.source.SourceViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Layout;\r
-import org.eclipse.ui.IActionBars;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.actions.ActionFactory;\r
-import org.eclipse.ui.forms.widgets.TableWrapData;\r
-import org.eclipse.ui.forms.widgets.TableWrapLayout;\r
-import org.eclipse.ui.operations.OperationHistoryActionHandler;\r
-import org.eclipse.ui.operations.RedoActionHandler;\r
-import org.eclipse.ui.operations.UndoActionHandler;\r
-import org.eclipse.ui.texteditor.DefaultMarkerAnnotationAccess;\r
-import org.eclipse.ui.texteditor.IWorkbenchActionDefinitionIds;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.editor.ErrorAnnotation;\r
-import eu.etaxonomy.taxeditor.editor.LineWrapSquigglesStrategy;\r
-import eu.etaxonomy.taxeditor.editor.ViewerConfiguration;\r
-import eu.etaxonomy.taxeditor.editor.WarningAnnotation;\r
-\r
-/**\r
- * SourceViewer implementation called by NameComposite.\r
- *  \r
- * @author p.ciardelli\r
- * @created 27.05.2008\r
- * @version 1.0\r
- */\r
-public class NameViewer extends SourceViewer {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NameViewer.class);\r
-               \r
-       public static final int RULER_WIDTH = 16;\r
-       \r
-       private IVerticalRuler ruler;\r
-       private AnnotationModel annotationModel;\r
-\r
-       public NameViewer(Composite parent) {\r
-               super(parent, new RulerWithIcon(RULER_WIDTH), SWT.WRAP | SWT.MULTI | SWT.RESIZE);\r
-                                                                                       \r
-               this.ruler = getVerticalRuler();\r
-                               \r
-               setBackground(TaxEditorPlugin.getDefault().\r
-                               getColor(ITaxEditorConstants.GROUP_GRAY_BKG_COLOR));\r
-                               \r
-               // Lay out the viewer's widgets\r
-               getControl().setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB));\r
-               getTextWidget().setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB));\r
-               \r
-               // Default implentation adds ruler after the text widget, then \r
-               //      uses a custom layout to display it before the text widget\r
-               ruler.getControl().moveAbove(getTextWidget());\r
-\r
-               annotationModel = new AnnotationModel();\r
-               this.setDocument(new Document(""), annotationModel);\r
-               \r
-               createAnnotationPainter();\r
-\r
-               this.configure(new ViewerConfiguration());              \r
-               \r
-//             DocumentUndoManagerRegistry.connect(this.getDocument());\r
-//             IDocumentUndoManager docUndoManager = DocumentUndoManagerRegistry.getDocumentUndoManager(this.getDocument());\r
-               \r
-               /**\r
-               getEditorSite().getActionBars().setGlobalActionHandler(ActionFactory.UNDO.getId(), new UndoActionHandler(getSite(), undoContext));\r
-               getEditorSite().getActionBars().setGlobalActionHandler(ActionFactory.REDO.getId(), new RedoActionHandler(getSite(), undoContext));              \r
-               **/\r
-       }\r
-       \r
-       public void setBackground(Color color) {\r
-               // Set background color of ruler\r
-               ruler.getControl().setBackground(color);\r
-\r
-               // Set background color of text widget\r
-               getTextWidget().setBackground(color);\r
-               \r
-               // Set background color of strip between ruler and textWidget\r
-               getTextWidget().getParent().setBackground(color); \r
-       }\r
-       \r
-       \r
-       public Control getRulerControl() {\r
-               return ruler.getControl();\r
-       }\r
-\r
-       public void setIcon(Image icon) {\r
-               if (ruler instanceof RulerWithIcon) {\r
-                       ((RulerWithIcon) ruler).setIcon(icon);\r
-               } else {\r
-                       logger.warn("Viewer's IVerticalRuler is not an instance of RulerWithIcon.");\r
-               }\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.source.SourceViewer#createLayout()\r
-        */\r
-       protected Layout createLayout() {\r
-               TableWrapLayout layout = new TableWrapLayout();\r
-               layout.numColumns = 2;\r
-               layout.verticalSpacing = 0;\r
-               return layout;\r
-       }\r
-               \r
-       private void createAnnotationPainter(){\r
-               // Annotations section\r
-               IAnnotationAccess fAnnotationAccess = new DefaultMarkerAnnotationAccess();\r
-               \r
-               // To paint the annotations\r
-               AnnotationPainter annotationPainter = new AnnotationPainter(this, fAnnotationAccess);\r
-\r
-               // Default SquigglesStrategy doesn't recognize line wraps\r
-               annotationPainter.addDrawingStrategy(LineWrapSquigglesStrategy.ID, new LineWrapSquigglesStrategy());\r
-               \r
-               // Add ability to paint red squigglies\r
-               annotationPainter.addAnnotationType(ErrorAnnotation.ERROR_TYPE, LineWrapSquigglesStrategy.ID);\r
-               annotationPainter.setAnnotationTypeColor(ErrorAnnotation.ERROR_TYPE, \r
-                               new Color(Display.getDefault(), ErrorAnnotation.ERROR_RGB));\r
-\r
-               // Add ability to paint yellow squigglies\r
-               annotationPainter.addAnnotationType(WarningAnnotation.WARNING_TYPE, LineWrapSquigglesStrategy.ID);\r
-               annotationPainter.setAnnotationTypeColor(WarningAnnotation.WARNING_TYPE, \r
-                               new Color(Display.getDefault(), WarningAnnotation.WARNING_RGB));\r
-               \r
-               this.addPainter(annotationPainter);\r
-       }\r
-\r
-\r
-       public void clearErrors() {\r
-               Iterator<Annotation> annotations = this.getAnnotationModel().getAnnotationIterator();\r
-               while (annotations.hasNext()) {\r
-                       Annotation annotation = annotations.next(); \r
-                       if (annotation.getType().equals(ErrorAnnotation.ERROR_TYPE))\r
-                               this.getAnnotationModel().removeAnnotation(annotation);\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * If <code>name.hasProblem()</code> is <code>true</code>, underlines section\r
-        * of text bounded by <code>name.getProblemStarts()</code> and \r
-        * <code>name.getProblemEnds()</code>.\r
-        * \r
-        * @param name\r
-        */\r
-       public void setShowParsingError(TaxonNameBase name) {\r
-               \r
-//             testMarkers();\r
-               \r
-               boolean hasProblem = name.getHasProblem();\r
-               \r
-               if (!hasProblem) {\r
-                       logger.debug(name.getProblemStarts());\r
-               }\r
-               \r
-               String text = this.getTextWidget().getText();\r
-                                               \r
-               if (hasProblem && text.length() > 0) {\r
-//                     logger.warn("Name: " + name.getTitleCache() + ", start: " + name.getProblemStarts()+ ", end: " + name.getProblemEnds());\r
-                       int start = name.getProblemStarts();\r
-                       int length = name.getProblemEnds() - start;\r
-                       \r
-                       if (start == -1 || name.getProblemEnds() == -1) {\r
-//                             logger.warn("Start: " + start + ", End " + name.getProblemEnds());\r
-                               return;\r
-                       }\r
-                       \r
-                       // Don't let squigglies try to draw beyond the end of the text\r
-                       if (text.length() < start + length) {\r
-                               length = text.length() - start;\r
-                       }\r
-                       \r
-                       this.getAnnotationModel().addAnnotation(\r
-                                       new ErrorAnnotation(0, "Error parsing string '" + text + "'"), \r
-                                       new Position(start, length));\r
-               }\r
-       }\r
-\r
-       public void setShowSecError(Taxon taxon) {\r
-               \r
-               // If taxon has no sec, show an annotation\r
-               if (taxon.getSec() == null) {\r
-                       \r
-                       String text = "This taxon requires a sec. reference.";\r
-                       \r
-                       IAnnotationModel model = this.getAnnotationModel();\r
-                       this.getAnnotationModel().addAnnotation(\r
-                                       new ErrorAnnotation(0, text),\r
-                                       new Position(0, 0));\r
-//                                     new Position(0, getTextWidget().getText().length()));\r
-               }\r
-       }\r
-       \r
-       private void testMarkers() {\r
-               // Successful test of markers which show up in ProblemView \r
-               try {\r
-                       IWorkspaceRunnable editorMarker = new IWorkspaceRunnable() {\r
-                               public void run(IProgressMonitor monitor) throws CoreException { \r
-                                       IMarker marker = ResourcesPlugin.getWorkspace().getRoot().createMarker(IMarker.PROBLEM);\r
-                                       marker.setAttribute(IMarker.MESSAGE, "Testeroo");\r
-                                       marker.setAttribute(IMarker.PRIORITY, IMarker.PRIORITY_HIGH);\r
-                                       marker.setAttribute(IMarker.LINE_NUMBER, 1);\r
-                                       marker.setAttribute(IMarker.TRANSIENT, false);\r
-                                       marker.setAttribute(IMarker.SEVERITY, IMarker.SEVERITY_ERROR);                                          \r
-                               }\r
-                       };\r
-                       ResourcesPlugin.getWorkspace().run(editorMarker, null); \r
-                       \r
-               } catch (CoreException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-                       \r
-       public void setText(String text) {\r
-               if (text == null) {\r
-                       text = "";\r
-               }\r
-               try {\r
-                       Assert.isNotNull(text);\r
-                       // TODO figure out why getTextWidget() returns null!\r
-                       if (this.getTextWidget() == null) {\r
-                               return;\r
-                       }\r
-                       Assert.isNotNull(this.getTextWidget());\r
-                       this.getTextWidget().setText(text);\r
-               } catch (RuntimeException e) {\r
-                       // TODO Auto-generated catch block\r
-                       e.printStackTrace();\r
-               }\r
-       }\r
-\r
-       public void setCursorToEOL() {\r
-               this.getTextWidget().setCaretOffset(getTextWidget().getText().length());\r
-       }\r
-\r
-       public void createUndoSupport(IEditorSite editorSite) {\r
-\r
-               IUndoManager undoManager = new TextViewerUndoManager(25);\r
-               this.setUndoManager(undoManager);\r
-               undoManager.connect(this);\r
-               \r
-//             IUndoContext workbenchUndoContext = UiUtil.getWorkbenchUndoContext();\r
-               \r
-               IUndoContext workbenchUndoContext = ((IUndoManagerExtension)undoManager).getUndoContext();\r
-               \r
-               OperationHistoryActionHandler undoAction = new UndoActionHandler(editorSite, workbenchUndoContext);\r
-//             undoAction.setActionDefinitionId(IWorkbenchActionDefinitionIds.UNDO);\r
-               undoAction.setActionDefinitionId(ActionFactory.UNDO.getId());\r
-               \r
-               // Create the redo action.\r
-               OperationHistoryActionHandler redoAction = new RedoActionHandler(editorSite, workbenchUndoContext);\r
-//             redoAction.setActionDefinitionId(IWorkbenchActionDefinitionIds.REDO);\r
-               undoAction.setActionDefinitionId(ActionFactory.REDO.getId());\r
-\r
-               IActionBars actionBars = editorSite.getActionBars();\r
-               if (actionBars != null) {\r
-//                             actionBars.setGlobalActionHandler(IWorkbenchActionDefinitionIds.UNDO, undoAction);\r
-//                             actionBars.setGlobalActionHandler(IWorkbenchActionDefinitionIds.REDO, redoAction);\r
-                       actionBars.setGlobalActionHandler(ActionFactory.UNDO.getId(), undoAction);\r
-                       actionBars.setGlobalActionHandler(ActionFactory.REDO.getId(), redoAction);\r
-                       \r
-               }               \r
-               \r
-//             actionBars.setGlobalActionHandler(ActionFactory.UNDO.getId(), undoAction);\r
-//             actionBars.setGlobalActionHandler(ActionFactory.REDO.getId(), redoAction);\r
-       }\r
-       \r
-       public void createUndoSupport_(IEditorSite editorSite) {\r
-               IUndoManager undoManager = new TextViewerUndoManager(25);\r
-               this.setUndoManager(undoManager);\r
-               undoManager.connect(this);\r
-               IUndoContext undoContext;\r
-               if (undoManager instanceof IUndoManagerExtension) {\r
-                       undoContext = ((IUndoManagerExtension)undoManager).getUndoContext();\r
-               \r
-                       OperationHistoryActionHandler undoAction = new UndoActionHandler(editorSite, undoContext);\r
-//                     PlatformUI.getWorkbench().getHelpSystem().setHelp(undoAction, IAbstractTextEditorHelpContextIds.UNDO_ACTION);\r
-                       undoAction.setActionDefinitionId(IWorkbenchActionDefinitionIds.UNDO);\r
-                       \r
-                       // Create the redo action.\r
-                       OperationHistoryActionHandler redoAction = new RedoActionHandler(editorSite, undoContext);\r
-//                     PlatformUI.getWorkbench().getHelpSystem().setHelp(redoAction, IAbstractTextEditorHelpContextIds.REDO_ACTION);\r
-                       redoAction.setActionDefinitionId(IWorkbenchActionDefinitionIds.REDO);\r
-\r
-\r
-                       IActionBars actionBars = editorSite.getActionBars();\r
-                       if (actionBars != null) {\r
-                               actionBars.setGlobalActionHandler(IWorkbenchActionDefinitionIds.UNDO, undoAction);\r
-                               actionBars.setGlobalActionHandler(IWorkbenchActionDefinitionIds.REDO, redoAction);\r
-                               \r
-                       }\r
-               }\r
-       }\r
-}\r
-\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/RulerWithIcon.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/RulerWithIcon.java
deleted file mode 100644 (file)
index ef9e9c0..0000000
+++ /dev/null
@@ -1,638 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import java.util.Iterator;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.text.BadLocationException;\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.IRegion;\r
-import org.eclipse.jface.text.ITextListener;\r
-import org.eclipse.jface.text.ITextViewer;\r
-import org.eclipse.jface.text.ITextViewerExtension5;\r
-import org.eclipse.jface.text.IViewportListener;\r
-import org.eclipse.jface.text.JFaceTextUtil;\r
-import org.eclipse.jface.text.Position;\r
-import org.eclipse.jface.text.Region;\r
-import org.eclipse.jface.text.TextEvent;\r
-import org.eclipse.jface.text.source.Annotation;\r
-import org.eclipse.jface.text.source.IAnnotationAccess;\r
-import org.eclipse.jface.text.source.IAnnotationAccessExtension;\r
-import org.eclipse.jface.text.source.IAnnotationModel;\r
-import org.eclipse.jface.text.source.IAnnotationModelListener;\r
-import org.eclipse.jface.text.source.IAnnotationPresentation;\r
-import org.eclipse.jface.text.source.IVerticalRuler;\r
-import org.eclipse.jface.text.source.IVerticalRulerExtension;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.DisposeEvent;\r
-import org.eclipse.swt.events.DisposeListener;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.MouseListener;\r
-import org.eclipse.swt.events.PaintEvent;\r
-import org.eclipse.swt.events.PaintListener;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.graphics.GC;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.graphics.Rectangle;\r
-import org.eclipse.swt.widgets.Canvas;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.ui.forms.widgets.TableWrapData;\r
-\r
-/**\r
- * 99% of the code in this class was copied from org.eclipse.jface.text.source.VerticalRuler,\r
- * which allows neither access to its paint methods nor subclassing to do same.\r
- * <p>\r
- * Changes made in method doubleBufferPaint(doubleBufferPaint(GC dest)).\r
- * \r
- * @see org.eclipse.jface.text.source.VerticalRuler\r
- * \r
- * @author p.ciardelli\r
- * @created 27.01.2009\r
- * @version 1.0\r
- */\r
-public class RulerWithIcon implements IVerticalRuler, IVerticalRulerExtension {\r
-       private static final Logger logger = Logger.getLogger(RulerWithIcon.class);\r
-\r
-       /**\r
-        * Internal listener class.\r
-        */\r
-       class InternalListener implements IViewportListener, IAnnotationModelListener, ITextListener {\r
-\r
-               /*\r
-                * @see IViewportListener#viewportChanged(int)\r
-                */\r
-               public void viewportChanged(int verticalPosition) {\r
-                       if (verticalPosition != fScrollPos)\r
-                               redraw();\r
-               }\r
-\r
-               /*\r
-                * @see IAnnotationModelListener#modelChanged(IAnnotationModel)\r
-                */\r
-               public void modelChanged(IAnnotationModel model) {\r
-                       update();\r
-               }\r
-\r
-               /*\r
-                * @see ITextListener#textChanged(TextEvent)\r
-                */\r
-               public void textChanged(TextEvent e) {\r
-                       if (fTextViewer != null && e.getViewerRedrawState())\r
-                               redraw();\r
-               }\r
-       }\r
-\r
-       /** The vertical ruler's text viewer */\r
-       private ITextViewer fTextViewer;\r
-       /** The ruler's canvas */\r
-       private Canvas fCanvas;\r
-       /** The vertical ruler's model */\r
-       private IAnnotationModel fModel;\r
-       /** Cache for the actual scroll position in pixels */\r
-       private int fScrollPos;\r
-       /** The buffer for double buffering */\r
-       private Image fBuffer;\r
-       /** The line of the last mouse button activity */\r
-       private int fLastMouseButtonActivityLine= -1;\r
-       /** The internal listener */\r
-       private InternalListener fInternalListener= new InternalListener();\r
-       /** The width of this vertical ruler */\r
-       private int fWidth;\r
-       /**\r
-        * The annotation access of this vertical ruler\r
-        * @since 3.0\r
-        */\r
-       private IAnnotationAccess fAnnotationAccess;\r
-       private Image icon;\r
-\r
-       /**\r
-        * Constructs a vertical ruler with the given width.\r
-        *\r
-        * @param width the width of the vertical ruler\r
-        */\r
-       public RulerWithIcon(int width) {\r
-               this(width, null);\r
-       }\r
-\r
-       /**\r
-        * Constructs a vertical ruler with the given width and the given annotation\r
-        * access.\r
-        *\r
-        * @param width the width of the vertical ruler\r
-        * @param annotationAcccess the annotation access\r
-        * @since 3.0\r
-        */\r
-       public RulerWithIcon(int width, IAnnotationAccess annotationAcccess) {\r
-               fWidth= width;\r
-               fAnnotationAccess= annotationAcccess;\r
-       }\r
-\r
-       /*\r
-        * @see IVerticalRuler#getControl()\r
-        */\r
-       public Control getControl() {\r
-               return fCanvas;\r
-       }\r
-\r
-       /*\r
-        * @see IVerticalRuler#createControl(Composite, ITextViewer)\r
-        */\r
-       public Control createControl(Composite parent, ITextViewer textViewer) {\r
-\r
-               fTextViewer= textViewer;\r
-\r
-               fCanvas= new Canvas(parent, SWT.NO_BACKGROUND);\r
-\r
-               TableWrapData layout = new TableWrapData(TableWrapData.LEFT);\r
-               layout.heightHint = 20;\r
-               layout.maxWidth = fWidth;\r
-               fCanvas.setLayoutData(layout);          \r
-               \r
-               fCanvas.addPaintListener(new PaintListener() {\r
-                       public void paintControl(PaintEvent event) {\r
-                               if (fTextViewer != null)\r
-                                       doubleBufferPaint(event.gc);\r
-                       }\r
-               });\r
-\r
-               fCanvas.addDisposeListener(new DisposeListener() {\r
-                       public void widgetDisposed(DisposeEvent e) {\r
-                               handleDispose();\r
-                               fTextViewer= null;\r
-                       }\r
-               });\r
-\r
-               fCanvas.addMouseListener(new MouseListener() {\r
-                       public void mouseUp(MouseEvent event) {\r
-                       }\r
-\r
-                       public void mouseDown(MouseEvent event) {\r
-                               fLastMouseButtonActivityLine= toDocumentLineNumber(event.y);\r
-                       }\r
-\r
-                       public void mouseDoubleClick(MouseEvent event) {\r
-                               fLastMouseButtonActivityLine= toDocumentLineNumber(event.y);\r
-                       }\r
-               });\r
-\r
-               if (fTextViewer != null) {\r
-                       fTextViewer.addViewportListener(fInternalListener);\r
-                       fTextViewer.addTextListener(fInternalListener);\r
-               }\r
-\r
-               return fCanvas;\r
-       }\r
-\r
-       /**\r
-        * Disposes the ruler's resources.\r
-        */\r
-       private void handleDispose() {\r
-\r
-               if (fTextViewer != null) {\r
-                       fTextViewer.removeViewportListener(fInternalListener);\r
-                       fTextViewer.removeTextListener(fInternalListener);\r
-                       fTextViewer= null;\r
-               }\r
-\r
-               if (fModel != null)\r
-                       fModel.removeAnnotationModelListener(fInternalListener);\r
-\r
-               if (fBuffer != null) {\r
-                       fBuffer.dispose();\r
-                       fBuffer= null;\r
-               }\r
-       }\r
-\r
-\r
-       /**\r
-        * Double buffer drawing.\r
-        *\r
-        * @param dest the GC to draw into\r
-        */\r
-       private void doubleBufferPaint(GC dest) {\r
-\r
-               Point size= fCanvas.getSize();\r
-\r
-               if (size.x <= 0 || size.y <= 0)\r
-                       return;\r
-\r
-               if (fBuffer != null) {\r
-                       Rectangle r= fBuffer.getBounds();\r
-                       if (r.width != size.x || r.height != size.y) {\r
-                               fBuffer.dispose();\r
-                               fBuffer= null;\r
-                       }\r
-               }\r
-               if (fBuffer == null)\r
-                       fBuffer= new Image(fCanvas.getDisplay(), size.x, size.y);\r
-\r
-               GC gc= new GC(fBuffer);\r
-               gc.setFont(fTextViewer.getTextWidget().getFont());\r
-               try {\r
-                       gc.setBackground(fCanvas.getBackground());\r
-                       gc.fillRectangle(0, 0, size.x, size.y);\r
-\r
-                       // Code added to VerticalRuler starts here\r
-                       if (icon != null) {\r
-                               \r
-                               Rectangle r = icon.getBounds();\r
-                               \r
-                               if (r.width > size.x || r.height > size.y) {\r
-                                       logger.warn(r.width + "x" + r.height + " icon too big for " + size.x + "x" + size.y + " Canvas.");\r
-                               } else {\r
-\r
-                                       // Set destination coordinates to center icon\r
-                                       int x = (size.x - r.width) / 2;\r
-                                       int y = (size.y - r.height) / 2;\r
-                                       \r
-                                       gc.drawImage(icon, 0, 0, r.width, r.height, x, y, r.width, r.height);\r
-                               }                               \r
-                       }\r
-                       // Code added to VerticalRuler ends here\r
-                       \r
-                       if (fTextViewer instanceof ITextViewerExtension5)\r
-                               doPaint1(gc);\r
-                       else\r
-                               doPaint(gc);\r
-\r
-               } finally {\r
-                       gc.dispose();\r
-               }\r
-\r
-               dest.drawImage(fBuffer, 0, 0);\r
-       }\r
-\r
-       /**\r
-        * Returns the document offset of the upper left corner of the\r
-        * widgets view port, possibly including partially visible lines.\r
-        *\r
-        * @return the document offset of the upper left corner including partially visible lines\r
-        * @since 2.0\r
-        */\r
-       private int getInclusiveTopIndexStartOffset() {\r
-\r
-               StyledText textWidget= fTextViewer.getTextWidget();\r
-               if (textWidget != null && !textWidget.isDisposed()) {\r
-                       int top= JFaceTextUtil.getPartialTopIndex(fTextViewer);\r
-                       try {\r
-                               IDocument document= fTextViewer.getDocument();\r
-                               return document.getLineOffset(top);\r
-                       } catch (BadLocationException x) {\r
-                       }\r
-               }\r
-\r
-               return -1;\r
-       }\r
-\r
-\r
-\r
-       /**\r
-        * Draws the vertical ruler w/o drawing the Canvas background.\r
-        *\r
-        * @param gc  the GC to draw into\r
-        */\r
-       protected void doPaint(GC gc) {\r
-\r
-               if (fModel == null || fTextViewer == null)\r
-                       return;\r
-\r
-               IAnnotationAccessExtension annotationAccessExtension= null;\r
-               if (fAnnotationAccess instanceof IAnnotationAccessExtension)\r
-                       annotationAccessExtension= (IAnnotationAccessExtension) fAnnotationAccess;\r
-\r
-               StyledText styledText= fTextViewer.getTextWidget();\r
-               IDocument doc= fTextViewer.getDocument();\r
-\r
-               int topLeft= getInclusiveTopIndexStartOffset();\r
-               int bottomRight= fTextViewer.getBottomIndexEndOffset();\r
-               int viewPort= bottomRight - topLeft;\r
-\r
-               Point d= fCanvas.getSize();\r
-               fScrollPos= styledText.getTopPixel();\r
-\r
-               int topLine= -1, bottomLine= -1;\r
-               try {\r
-                       IRegion region= fTextViewer.getVisibleRegion();\r
-                       topLine= doc.getLineOfOffset(region.getOffset());\r
-                       bottomLine= doc.getLineOfOffset(region.getOffset() + region.getLength());\r
-               } catch (BadLocationException x) {\r
-                       return;\r
-               }\r
-\r
-               // draw Annotations\r
-               Rectangle r= new Rectangle(0, 0, 0, 0);\r
-               int maxLayer= 1;        // loop at least once though layers.\r
-\r
-               for (int layer= 0; layer < maxLayer; layer++) {\r
-                       Iterator iter= fModel.getAnnotationIterator();\r
-                       while (iter.hasNext()) {\r
-                               IAnnotationPresentation annotationPresentation= null;\r
-                               Annotation annotation= (Annotation) iter.next();\r
-\r
-                               int lay= IAnnotationAccessExtension.DEFAULT_LAYER;\r
-                               if (annotationAccessExtension != null)\r
-                                       lay= annotationAccessExtension.getLayer(annotation);\r
-                               else if (annotation instanceof IAnnotationPresentation) {\r
-                                       annotationPresentation= (IAnnotationPresentation)annotation;\r
-                                       lay= annotationPresentation.getLayer();\r
-                               }\r
-                               maxLayer= Math.max(maxLayer, lay+1);    // dynamically update layer maximum\r
-                               \r
-                               if (lay != layer)       // wrong layer: skip annotation\r
-                                       continue;\r
-                               \r
-                               Position position= fModel.getPosition(annotation);\r
-                               if (position == null)\r
-                                       continue;\r
-\r
-                               /*\r
-                                * Commented this out because of following sequence:\r
-                                * 1) empty name composite w/ annotation, i.e. "no sec reference"\r
-                                * 2) focus in this composite worked as expected, i.e. annotation drawn in li. 397 below\r
-                                * 3) lose focus, however, and for some reason (adding empty text "Click to add name?"),\r
-                                *               composite failed this overlapsWith() test, and annotation not redrawn\r
-                                */\r
-//                             if (!position.overlapsWith(topLeft, viewPort))\r
-//                                     continue;\r
-\r
-                               try {\r
-\r
-                                       int offset= position.getOffset();\r
-                                       int length= position.getLength();\r
-\r
-                                       int startLine= doc.getLineOfOffset(offset);\r
-                                       if (startLine < topLine)\r
-                                               startLine= topLine;\r
-\r
-                                       int endLine= startLine;\r
-                                       if (length > 0)\r
-                                               endLine= doc.getLineOfOffset(offset + length - 1);\r
-                                       if (endLine > bottomLine)\r
-                                               endLine= bottomLine;\r
-\r
-                                       startLine -= topLine;\r
-                                       endLine -= topLine;\r
-\r
-                                       r.x= 0;\r
-                                       r.y= JFaceTextUtil.computeLineHeight(styledText, 0, startLine, startLine)  - fScrollPos;\r
-                                       \r
-                                       r.width= d.x;\r
-                                       int lines= endLine - startLine;\r
-                                       \r
-                                       r.height= JFaceTextUtil.computeLineHeight(styledText, startLine, endLine + 1, (lines+1));\r
-\r
-                                       if (r.y < d.y && annotationAccessExtension != null)  // annotation within visible area\r
-                                               annotationAccessExtension.paint(annotation, gc, fCanvas, r);\r
-                                       else if (annotationPresentation != null)\r
-                                               annotationPresentation.paint(gc, fCanvas, r);\r
-\r
-                               } catch (BadLocationException e) {\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Draws the vertical ruler w/o drawing the Canvas background. Uses\r
-        * <code>ITextViewerExtension5</code> for its implementation. Will replace\r
-        * <code>doPaint(GC)</code>.\r
-        *\r
-        * @param gc  the GC to draw into\r
-        */\r
-       protected void doPaint1(GC gc) {\r
-\r
-               if (fModel == null || fTextViewer == null)\r
-                       return;\r
-\r
-               IAnnotationAccessExtension annotationAccessExtension= null;\r
-               if (fAnnotationAccess instanceof IAnnotationAccessExtension)\r
-                       annotationAccessExtension= (IAnnotationAccessExtension) fAnnotationAccess;\r
-\r
-               ITextViewerExtension5 extension= (ITextViewerExtension5) fTextViewer;\r
-               StyledText textWidget= fTextViewer.getTextWidget();\r
-\r
-               fScrollPos= textWidget.getTopPixel();\r
-               Point dimension= fCanvas.getSize();\r
-\r
-               // draw Annotations\r
-               Rectangle r= new Rectangle(0, 0, 0, 0);\r
-               int maxLayer= 1;        // loop at least once through layers.\r
-\r
-               for (int layer= 0; layer < maxLayer; layer++) {\r
-                       Iterator iter= fModel.getAnnotationIterator();\r
-                       while (iter.hasNext()) {\r
-                               IAnnotationPresentation annotationPresentation= null;\r
-                               Annotation annotation= (Annotation) iter.next();\r
-\r
-                               int lay= IAnnotationAccessExtension.DEFAULT_LAYER;\r
-                               if (annotationAccessExtension != null)\r
-                                       lay= annotationAccessExtension.getLayer(annotation);\r
-                               else if (annotation instanceof IAnnotationPresentation) {\r
-                                       annotationPresentation= (IAnnotationPresentation)annotation;\r
-                                       lay= annotationPresentation.getLayer();\r
-                               }\r
-                               maxLayer= Math.max(maxLayer, lay+1);    // dynamically update layer maximum\r
-                               if (lay != layer)       // wrong layer: skip annotation\r
-                                       continue;\r
-\r
-                               Position position= fModel.getPosition(annotation);\r
-                               if (position == null)\r
-                                       continue;\r
-\r
-                               IRegion widgetRegion= extension.modelRange2WidgetRange(new Region(position.getOffset(), position.getLength()));\r
-                               if (widgetRegion == null)\r
-                                       continue;\r
-\r
-                               int startLine= extension.widgetLineOfWidgetOffset(widgetRegion.getOffset());\r
-                               if (startLine == -1)\r
-                                       continue;\r
-\r
-                               int endLine= extension.widgetLineOfWidgetOffset(widgetRegion.getOffset() + Math.max(widgetRegion.getLength() -1, 0));\r
-                               if (endLine == -1)\r
-                                       continue;\r
-\r
-                               r.x= 0;\r
-                               r.y= JFaceTextUtil.computeLineHeight(textWidget, 0, startLine, startLine)  - fScrollPos;\r
-                               \r
-                               r.width= dimension.x;\r
-                               int lines= endLine - startLine;\r
-                               \r
-                               r.height= JFaceTextUtil.computeLineHeight(textWidget, startLine, endLine + 1, lines+1);\r
-\r
-                               if (r.y < dimension.y && annotationAccessExtension != null)  // annotation within visible area\r
-                                       annotationAccessExtension.paint(annotation, gc, fCanvas, r);\r
-                               else if (annotationPresentation != null)\r
-                                       annotationPresentation.paint(gc, fCanvas, r);\r
-                       }\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Thread-safe implementation.\r
-        * Can be called from any thread.\r
-        */\r
-       /*\r
-        * @see IVerticalRuler#update()\r
-        */\r
-       public void update() {\r
-               if (fCanvas != null && !fCanvas.isDisposed()) {\r
-                       Display d= fCanvas.getDisplay();\r
-                       if (d != null) {\r
-                               d.asyncExec(new Runnable() {\r
-                                       public void run() {\r
-                                               redraw();\r
-                                       }\r
-                               });\r
-                       }\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Redraws the vertical ruler.\r
-        */\r
-       private void redraw() {\r
-               if (fCanvas != null && !fCanvas.isDisposed()) {\r
-                       GC gc= new GC(fCanvas);\r
-                       doubleBufferPaint(gc);\r
-                       gc.dispose();\r
-               }\r
-       }\r
-\r
-       /*\r
-        * @see IVerticalRuler#setModel(IAnnotationModel)\r
-        */\r
-       public void setModel(IAnnotationModel model) {\r
-               if (model != fModel) {\r
-\r
-                       if (fModel != null)\r
-                               fModel.removeAnnotationModelListener(fInternalListener);\r
-\r
-                       fModel= model;\r
-\r
-                       if (fModel != null)\r
-                               fModel.addAnnotationModelListener(fInternalListener);\r
-\r
-                       update();\r
-               }\r
-       }\r
-\r
-       /*\r
-        * @see IVerticalRuler#getModel()\r
-        */\r
-       public IAnnotationModel getModel() {\r
-               return fModel;\r
-       }\r
-\r
-       /*\r
-        * @see IVerticalRulerInfo#getWidth()\r
-        */\r
-       public int getWidth() {\r
-               return fWidth;\r
-       }\r
-\r
-       /*\r
-        * @see IVerticalRulerInfo#getLineOfLastMouseButtonActivity()\r
-        */\r
-       public int getLineOfLastMouseButtonActivity() {\r
-               return fLastMouseButtonActivityLine;\r
-       }\r
-\r
-       /*\r
-        * @see IVerticalRulerInfo#toDocumentLineNumber(int)\r
-        */\r
-       public int toDocumentLineNumber(int y_coordinate) {\r
-               if (fTextViewer == null  || y_coordinate == -1)\r
-                       return -1;\r
-\r
-               StyledText text= fTextViewer.getTextWidget();\r
-               int line= text.getLineIndex(y_coordinate);\r
-               \r
-               if (line == text.getLineCount() - 1) {\r
-                       // check whether y_coordinate exceeds last line\r
-                       if (y_coordinate > text.getLinePixel(line + 1))\r
-                               return -1;\r
-               }\r
-               \r
-               return widgetLine2ModelLine(fTextViewer, line);\r
-       }\r
-\r
-       /**\r
-        * Returns the line of the viewer's document that corresponds to the given widget line.\r
-        *\r
-        * @param viewer the viewer\r
-        * @param widgetLine the widget line\r
-        * @return the corresponding line of the viewer's document\r
-        * @since 2.1\r
-        */\r
-       protected final static int widgetLine2ModelLine(ITextViewer viewer, int widgetLine) {\r
-\r
-               if (viewer instanceof ITextViewerExtension5) {\r
-                       ITextViewerExtension5 extension= (ITextViewerExtension5) viewer;\r
-                       return extension.widgetLine2ModelLine(widgetLine);\r
-               }\r
-\r
-               try {\r
-                       IRegion r= viewer.getVisibleRegion();\r
-                       IDocument d= viewer.getDocument();\r
-                       return widgetLine += d.getLineOfOffset(r.getOffset());\r
-               } catch (BadLocationException x) {\r
-               }\r
-               return widgetLine;\r
-       }\r
-\r
-       /*\r
-        * @see IVerticalRulerExtension#setFont(Font)\r
-        * @since 2.0\r
-        */\r
-       public void setFont(Font font) {\r
-       }\r
-\r
-       /*\r
-        * @see IVerticalRulerExtension#setLocationOfLastMouseButtonActivity(int, int)\r
-        * @since 2.0\r
-        */\r
-       public void setLocationOfLastMouseButtonActivity(int x, int y) {\r
-               fLastMouseButtonActivityLine= toDocumentLineNumber(y);\r
-       }\r
-\r
-       /**\r
-        * Adds the given mouse listener.\r
-        *\r
-        * @param listener the listener to be added\r
-        * @deprecated will be removed\r
-        * @since 2.0\r
-        */\r
-       public void addMouseListener(MouseListener listener) {\r
-               if (fCanvas != null && !fCanvas.isDisposed())\r
-                       fCanvas.addMouseListener(listener);\r
-       }\r
-\r
-       /**\r
-        * Removes the given mouse listener.\r
-        *\r
-        * @param listener the listener to be removed\r
-        * @deprecated will be removed\r
-        * @since 2.0\r
-        */\r
-       public void removeMouseListener(MouseListener listener) {\r
-               if (fCanvas != null && !fCanvas.isDisposed())\r
-                       fCanvas.removeMouseListener(listener);\r
-       }\r
-\r
-       public void setIcon(Image icon) {\r
-               this.icon = icon;\r
-       }\r
-}\r
-       \r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/SynonymComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/SynonymComposite.java
deleted file mode 100644 (file)
index 8775d0d..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.swt.graphics.Font;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.actions.cdm.SwapSynonymAndTaxonAction;\r
-import eu.etaxonomy.taxeditor.actions.name.ChangeSynonymToConceptRelationAction;\r
-import eu.etaxonomy.taxeditor.actions.name.ChangeSynonymToMisapplicationAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateSynonymInGroupAction;\r
-import eu.etaxonomy.taxeditor.actions.name.CreateNewTaxonFromSynonymAction;\r
-import eu.etaxonomy.taxeditor.actions.name.MakeBasionymAction;\r
-import eu.etaxonomy.taxeditor.actions.name.Messages;\r
-import eu.etaxonomy.taxeditor.actions.name.RemoveSynonymAction;\r
-import eu.etaxonomy.taxeditor.actions.name.UnmakeBasionymAction;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.ContextMenu;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.operations.name.ChangeHomotypicGroupOperation;\r
-import eu.etaxonomy.taxeditor.operations.name.ChangeSynonymToMisappliedNameOperation;\r
-import eu.etaxonomy.taxeditor.operations.name.UnmakeSynonymGroupBasionymOperation;\r
-import eu.etaxonomy.taxeditor.propertysheet.name.TaxonBasePropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.01.2009\r
- * @version 1.0\r
- */\r
-public class SynonymComposite extends NameComposite {\r
-       @SuppressWarnings("unused")\r
-       private static final Logger logger = Logger\r
-                       .getLogger(SynonymComposite.class);\r
-       \r
-       private Synonym synonym;\r
-       \r
-       private IUndoContext undoContext;\r
-       \r
-       public SynonymComposite(Composite parent, IManagedForm form,\r
-                       Taxon taxon, Synonym synonym) {\r
-               super(parent, form, synonym);\r
-               \r
-               this.taxon = taxon;\r
-               this.synonym = synonym;\r
-               \r
-               this.undoContext = EditorController.getUndoContext(taxon);\r
-               \r
-               setIsDraggable(true);\r
-               setFont(getViewerFont());\r
-               setIndent(SYNONYM_INDENT);\r
-               \r
-               if (isHomotypic()) {\r
-                       if (CdmUtil.isNameGroupBasionym(synonym.getName())) {\r
-                               setIcon(HOMOTYPIC_SYNONYM_ORIGINAL_COMBINATION_ICON);\r
-                       } else {\r
-                               setIcon(HOMOTYPIC_SYNONYM_ICON);\r
-                       }       \r
-               } else {\r
-                       if (CdmUtil.isNameGroupBasionym(synonym.getName())) {\r
-                               setIcon(HETEROTYPIC_SYNONYM_ORIGINAL_COMBINATION_ICON);\r
-                       } else {\r
-                               setIcon(HETEROTYPIC_SYNONYM_ICON);\r
-                       }\r
-               }\r
-\r
-               createMenu();\r
-               \r
-               initTextViewer(synonym);\r
-       }\r
-       \r
-       private boolean isHomotypic() {\r
-               HomotypicalGroup group = synonym.getHomotypicGroup();\r
-               return group.equals(taxon.getHomotypicGroup()); \r
-       }\r
-       \r
-       public Synonym getSynonym() {\r
-               return synonym;\r
-       }\r
-\r
-       public boolean setParent(Composite parent) {\r
-\r
-               if (super.setParent(parent)) {  \r
-                       \r
-                       // Has this been moved to the misapplied names group?\r
-                       if (parent instanceof MisappliedGroupComposite) {\r
-                               \r
-                               IUndoableOperation operation = new ChangeSynonymToMisappliedNameOperation\r
-                                               ("change to misapplication", undoContext, taxon, synonym); //$NON-NLS-1$\r
-                               \r
-                               GlobalController.executeOperation(operation);\r
-                       }\r
-\r
-                       // Has this been moved to a HomotypicalGroup?\r
-                       if (parent instanceof HomotypicalGroupComposite) {\r
-                               \r
-                               HomotypicalGroup homotypicalGroup = \r
-                                               ((HomotypicalGroupComposite)parent).getGroup();\r
-                               \r
-                               // Make sure we are not dropping synonym on its own group\r
-                               if (homotypicalGroup.equals(synonym.getHomotypicGroup())) {\r
-                                       return true;\r
-                               }\r
-\r
-                               IUndoableOperation operation = new ChangeHomotypicGroupOperation\r
-                                               ("change type", undoContext, taxon, synonym, homotypicalGroup); //$NON-NLS-1$\r
-                               \r
-                               GlobalController.executeOperation(operation);\r
-                       }\r
-                       return true;\r
-\r
-               }\r
-               return false;\r
-       }\r
-       \r
-       /**\r
-        * @param nameComposite\r
-        */\r
-       private void createMenu() {\r
-\r
-               ContextMenu contextMenu = createContextMenu();\r
-\r
-               contextMenu.addAction(new RemoveSynonymAction(taxon, synonym));\r
-               if (CdmUtil.isNameGroupBasionym(synonym.getName())) {\r
-                       contextMenu.addAction(new UnmakeBasionymAction(taxon, synonym));\r
-               } else {\r
-                       contextMenu.addAction(new MakeBasionymAction(taxon, synonym));  \r
-               }\r
-                // Add synonym to this synonyms homotypical group\r
-               // FIXME not working with the new menu action \r
-//             contextMenu.addAction(new CreateSynonymInGroupAction(synonym.getHomotypicGroup()));\r
-               contextMenu.addSeparator();\r
-               contextMenu.addAction(new ChangeSynonymToMisapplicationAction(taxon, synonym));\r
-               contextMenu.addAction(new ChangeSynonymToConceptRelationAction(taxon, synonym));\r
-               contextMenu.addSeparator();                             \r
-               // Change this synonym to the taxon's accepted name\r
-               Action swapAction = new SwapSynonymAndTaxonAction(taxon, synonym);\r
-               contextMenu.addAction(swapAction);\r
-               // TODO fix operation\r
-               swapAction.setEnabled(false);\r
-               \r
-               // Make a new taxon with this synonym as the accepted name\r
-               contextMenu.addAction(new CreateNewTaxonFromSynonymAction(taxon, synonym));\r
-       }\r
-\r
-       \r
-       public IPropertySource getPropertySource() {\r
-               return new TaxonBasePropertySource(synonym, "Synonym Name");\r
-       }\r
-\r
-       \r
-       protected Font getViewerFont() {\r
-               return SYNONYM_FONT;\r
-       }\r
-\r
-       @Override\r
-       protected TaxonNameBase getName() {\r
-               return synonym.getName();\r
-       }\r
-       \r
-       public Object getData () {\r
-               return getSynonym();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java
deleted file mode 100644 (file)
index c943158..0000000
+++ /dev/null
@@ -1,268 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.name;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DropTarget;\r
-import org.eclipse.swt.dnd.DropTargetAdapter;\r
-import org.eclipse.swt.dnd.DropTargetEvent;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorSite;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.actions.WidgetTransfer;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.AbstractTaxonEditor;\r
-import eu.etaxonomy.taxeditor.editor.FreeTextElementFactory;\r
-import eu.etaxonomy.taxeditor.editor.GroupedComposite;\r
-import eu.etaxonomy.taxeditor.operations.name.ChangeHomotypicGroupOperation;\r
-import eu.etaxonomy.taxeditor.operations.name.ChangeMisappliedNameToSynonymOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 15.05.2008\r
- * @version 1.0\r
- */\r
-public class TaxonNameEditor extends AbstractTaxonEditor \r
-               implements INameEditorCompositeRepository {\r
-       private static final Logger logger = Logger.getLogger(TaxonNameEditor.class);\r
-               \r
-       /**\r
-        * Shared listener that sets dirty state to true \r
-        *  when any registered property changes \r
-        */\r
-       private PropertyChangeListener taxonChangeListener = new PropertyChangeListener() {\r
-               public void propertyChange(PropertyChangeEvent event) {\r
-                       if (event.getPropertyName().equals(ITaxEditorConstants.PROPERTY_SHEET_CHANGE)) {\r
-                               firePropertyChange(PROP_DIRTY);\r
-                       }\r
-               }\r
-       };\r
-       \r
-       @Override\r
-       public void doSave(IProgressMonitor monitor) {}\r
-\r
-       @Override\r
-       public void doSaveAs() {}\r
-\r
-       @Override\r
-       public void init(IEditorSite site, IEditorInput input)\r
-                       throws PartInitException {\r
-                               \r
-               super.init(site, input);\r
-               \r
-               Taxon taxon = getTaxon();\r
-               EditorController.addNameEditor(taxon, this);\r
-               \r
-               // Register listeners for any change in accepted name or set of relations\r
-               taxon.getName().addPropertyChangeListener(taxonChangeListener);\r
-               taxon.addPropertyChangeListener(taxonChangeListener);\r
-       }\r
-\r
-       @Override\r
-       public boolean isDirty() {\r
-               return false;\r
-       }\r
-\r
-       @Override\r
-       public boolean isSaveAsAllowed() {\r
-               return false;\r
-       }\r
-       \r
-       @Override\r
-       protected void createManagedForm(Composite composite) {\r
-                                               \r
-               super.createManagedForm(composite);\r
-               \r
-               Taxon taxon = getTaxon();\r
-               \r
-               firstGroupedComposite = (NameComposite) FreeTextElementFactory.getDefault().\r
-                               createAcceptedTaxon(managedForm, taxon);\r
-                               \r
-               // Draw synonym and misapplied name elements\r
-               for (TaxonBase taxonBase : new IterableSynonymyList(taxon)) {\r
-                       if (taxonBase instanceof Synonym) {\r
-                               FreeTextElementFactory.getDefault().createSynonym(taxon, (Synonym) taxonBase);                          \r
-                       } else {\r
-                               FreeTextElementFactory.getDefault().createMisappliedName(taxon, (Taxon) taxonBase);\r
-                       }\r
-               }\r
-\r
-               // Draw concept relation elements\r
-               Set<TaxonRelationship> taxonRelations = taxon.getTaxonRelations();\r
-               for (TaxonRelationship relationship : taxonRelations) {\r
-                       \r
-                       if (relationship.getType().equals(TaxonRelationshipType.MISAPPLIED_NAME_FOR()) ||\r
-                                       relationship.getType().equals(TaxonRelationshipType.TAXONOMICALLY_INCLUDED_IN())) {\r
-                               continue;\r
-                       }\r
-                                                       \r
-                       FreeTextElementFactory.getDefault().createConcept(taxon, relationship);\r
-               }               \r
-                       \r
-               // Listen for names being dragged outside of existing homotypic groups -\r
-               //  user wants to create a new group\r
-               Transfer[] types = new Transfer[] {WidgetTransfer.getInstance()};\r
-               int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_DEFAULT;\r
-               DropTarget target = new DropTarget(parent, operations);\r
-               target.setTransfer(types);\r
-               target.addDropListener(new DropTargetAdapter() {\r
-                       \r
-                       public void drop(DropTargetEvent event) {\r
-                       \r
-                               if (event.data instanceof GroupedComposite) {\r
-                                       final GroupedComposite composite = (GroupedComposite) event.data;\r
-                                       if (composite.getDragSource() != null) {\r
-                                               \r
-                                                       // Execute operations at end of drag event\r
-                                                       composite.getDragSource().addListener(DND.DragEnd, new Listener() {\r
-                                               \r
-                                                               public void handleEvent(Event event) {\r
-                                                                       IUndoContext undoContext = EditorController.getUndoContext(getTaxon());\r
-                                                                       IUndoableOperation operation = null;\r
-                                                                       \r
-                                                                       // Synonym being dropped\r
-                                                                       if(composite instanceof SynonymComposite){\r
-                                                                               Synonym synonym = ((SynonymComposite)composite).getSynonym();\r
-                                                                               operation = new ChangeHomotypicGroupOperation\r
-                                                                                               ("change type", undoContext, \r
-                                                                                                               getTaxon(), synonym, HomotypicalGroup.NewInstance());\r
-                                                                       }\r
-                                                                       \r
-                                                                       // Misapplied name being dropped\r
-                                                                       if(composite instanceof MisappliedNameComposite){\r
-                                                                                       Taxon misapplication = ((MisappliedNameComposite)composite).getMisappliedName();\r
-                                                                                       operation = new ChangeMisappliedNameToSynonymOperation\r
-                                                                                                       ("change misapplied name to synonym", undoContext, \r
-                                                                                                                       getTaxon(), misapplication, HomotypicalGroup.NewInstance());                                    \r
-                                                                       }\r
-                                                                       \r
-                                                                       // Execute operation if it's been init'ed\r
-                                                                       if (operation == null) {\r
-                                                                               logger.warn("User unsuccessfully tried to drop " + composite.getClass());\r
-                                                                       } else {\r
-                                                                               GlobalController.executeOperation(operation);\r
-                                                                       }\r
-                                                               }\r
-                                                       });                                                     \r
-                                       }\r
-                               }\r
-                               \r
-\r
-                       }               \r
-               });                             \r
-               setFocus();\r
-               \r
-               // Redraw composite\r
-               composite.layout();\r
-       }\r
-               \r
-       \r
-       public Composite getAcceptedName() {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof AcceptedNameComposite){\r
-                               return c;\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       \r
-       public Composite getHomotypicGroup(HomotypicalGroup group) {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof HomotypicalGroupComposite){\r
-                               if (group.equals(\r
-                                               ((HomotypicalGroupComposite) c).getGroup())) {\r
-                                       return c;\r
-                               }\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       \r
-       public Composite getMisappliedGroup() {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof MisappliedGroupComposite){\r
-                               return c;\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       \r
-       public Composite getMisappliedName(Taxon misappliedName) {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof MisappliedNameComposite){\r
-                               if (misappliedName.equals(\r
-                                               ((MisappliedNameComposite) c).getMisappliedName())) {\r
-                                       return c;\r
-                               }\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       \r
-       public Composite getSynonym(Synonym synonym) {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof SynonymComposite){\r
-                               if (synonym.equals \r
-                                               (((SynonymComposite) c).getSynonym())) {\r
-                                       return c;\r
-                               }\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       \r
-       public Composite getConceptGroup() {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof ConceptGroupComposite){\r
-                               return c;\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       \r
-       public Composite getConcept(Taxon relatedConcept) {\r
-               for(Composite c : getAllComposites()){\r
-                       if(c instanceof ConceptComposite){\r
-                               if (relatedConcept.equals \r
-                                               (((ConceptComposite) c).getRelatedTaxon())) {\r
-                                       return c;\r
-                               }\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/IReferenceSearch.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/IReferenceSearch.java
deleted file mode 100644 (file)
index db5effa..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.reference;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 14.11.2008\r
- * @version 1.0\r
- */\r
-public interface IReferenceSearch {\r
-\r
-       public static final int NOMREF = 1;\r
-       public static final int BIBREF = 1;\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/ReferenceSearchDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/ReferenceSearchDialog.java
deleted file mode 100644 (file)
index ef4fc6d..0000000
+++ /dev/null
@@ -1,270 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.reference;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.ArrayContentProvider;\r
-import org.eclipse.jface.viewers.LabelProvider;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.jface.viewers.ViewerComparator;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.KeyAdapter;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Dialog;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import eu.etaxonomy.cdm.model.reference.INomenclaturalReference;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.11.2008\r
- * @version 1.0\r
- */\r
-public class ReferenceSearchDialog extends Dialog {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ReferenceSearchDialog.class);\r
-       \r
-       private Table resultsTable;\r
-       private Text searchTermText;\r
-               \r
-       protected Object result;\r
-       private Shell shell;\r
-       private Button okButton;\r
-       private TableViewer resultsTableViewer;\r
-       private ReferenceBase selectedReference;\r
-       private int searchType;\r
-       \r
-       public ReferenceSearchDialog(Shell parent, int searchType) {\r
-               super(parent, SWT.NONE);\r
-               \r
-               this.searchType = searchType;\r
-       }\r
-\r
-       public ReferenceSearchDialog(Shell parent) {\r
-               super(parent, SWT.NONE);\r
-       }\r
-       \r
-       /**\r
-        * Open the dialog\r
-        * @return the result\r
-        */\r
-       public Object open() {\r
-               createContents();\r
-               shell.open();\r
-               shell.layout();\r
-               Display display = getParent().getDisplay();\r
-               while (!shell.isDisposed()) {\r
-                       if (!display.readAndDispatch())\r
-                               display.sleep();\r
-               }\r
-               return result;\r
-       }\r
-       \r
-       /**\r
-        * Create contents of the dialog\r
-        */\r
-       protected void createContents() {\r
-               \r
-               // Create shell for popup dialog                \r
-               shell = new Shell(getParent(), SWT.DIALOG_TRIM | SWT.APPLICATION_MODAL);\r
-               shell.setLayout(new GridLayout());\r
-               shell.setSize(500, 375);\r
-               shell.setText("Search for a reference in datasource");\r
-               \r
-               // Create composite for entire shell            \r
-               final Composite composite = new Composite(shell, SWT.NONE);\r
-               composite.setLayout(new GridLayout());\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               // Create composite for search text, search term input, and "Search" button\r
-               final Composite searchComposite = new Composite(composite, SWT.NONE);\r
-               searchComposite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               searchComposite.setLayout(gridLayout);\r
-\r
-               // Create search text\r
-               final Label label = new Label(searchComposite, SWT.NONE);\r
-               label.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));\r
-               label.setText("Enter a search term for a full reference, using '*' as a wildcard.");\r
-\r
-               // Create input field for search term\r
-               searchTermText = new Text(searchComposite, SWT.BORDER | SWT.SINGLE);\r
-               final GridData gd_searchTermText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               searchTermText.setLayoutData(gd_searchTermText);\r
-               \r
-               // Listen for user hitting <CR> in input field\r
-               searchTermText.addKeyListener(new KeyAdapter() {\r
-                       public void keyReleased(KeyEvent e) {\r
-                               int key = e.keyCode;\r
-                               if (key == SWT.CR) {\r
-                                       populateSearchResults();\r
-                               }\r
-                       }\r
-               });\r
-\r
-               // Create "Search" button\r
-               final Button searchButton = new Button(searchComposite, SWT.NONE);\r
-               searchButton.setLayoutData(new GridData());\r
-               searchButton.setText("Search");\r
-               searchButton.addMouseListener(new MouseAdapter() {\r
-                       \r
-                       // Populate search results resultsTable after clicking button\r
-                       public void mouseUp(MouseEvent e) {\r
-                               populateSearchResults();\r
-                       }\r
-               });\r
-\r
-               // Create composite for results table\r
-               final Composite resultsComposite = new Composite(composite, SWT.NONE);\r
-               resultsComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               resultsComposite.setLayout(new GridLayout());\r
-\r
-               // Create results resultsTable\r
-               resultsTableViewer = new TableViewer(resultsComposite, SWT.BORDER);\r
-               resultsTable = resultsTableViewer.getTable();\r
-               resultsTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               // Set content provider of results resultsTable\r
-               resultsTableViewer.setContentProvider(new ArrayContentProvider());\r
-\r
-               // Set label provider for results resultsTable which shows ReferenceBase.getTitleCache()\r
-               resultsTableViewer.setLabelProvider(new LabelProvider() {\r
-                       public String getText(Object element) {\r
-                               if (element instanceof ReferenceBase) {\r
-                                       return ((ReferenceBase) element).getTitleCache();\r
-                               }\r
-                               return super.getText(element);\r
-                       }\r
-               });\r
-       \r
-               // Sort results alphabetically\r
-               resultsTableViewer.setComparator(new ViewerComparator());\r
-               \r
-               // Listen for user selecting reference from results list\r
-               resultsTable.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               \r
-                               Object data = e.item.getData();\r
-                               \r
-                               // Make sure selection is a ReferenceBase\r
-                               if (data instanceof ReferenceBase) {\r
-\r
-                                       setSelectedReference((ReferenceBase) data);\r
-                                       \r
-                                       // Enable "OK" button\r
-                                       okButton.setEnabled(true);\r
-                               }\r
-                       }\r
-               });\r
-               \r
-               // Double-clicking results entry submits selected reference\r
-               resultsTable.addListener(SWT.MouseDoubleClick, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               submitResult();\r
-                       }\r
-               });\r
-               \r
-               // Create composite for "OK" and "Cancel" buttons\r
-               final Composite okCancelComposite = new Composite(composite, SWT.NONE);\r
-               okCancelComposite.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, true, false));\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               okCancelComposite.setLayout(gridLayout_1);\r
-\r
-               // Create "Cancel" button\r
-               final Button cancelButton = new Button(okCancelComposite, SWT.NONE);\r
-               cancelButton.setText("Cancel");\r
-               \r
-               // Close dialog popup after clicking "Cancel" button\r
-               cancelButton.addMouseListener(new MouseAdapter() {\r
-                       public void mouseUp(MouseEvent e) {\r
-                               shell.dispose();\r
-                       }\r
-               });\r
-\r
-               // Create "OK" button\r
-               okButton = new Button(okCancelComposite, SWT.NONE);\r
-               okButton.setEnabled(false);\r
-               final GridData gd_okButton = new GridData();\r
-               okButton.setLayoutData(gd_okButton);\r
-               okButton.setText("OK");\r
-               \r
-               // Submit result when "OK" button is clicked\r
-               okButton.addMouseListener(new MouseAdapter() {\r
-                       public void mouseUp(MouseEvent e) {\r
-                               submitResult();\r
-                       }\r
-               });\r
-\r
-       }\r
-       \r
-       private void populateSearchResults() {\r
-               // Get search results\r
-               List resultsArray = CdmUtil.getReferencesByTitle(searchTermText.getText());\r
-\r
-               // Delete non-nomenclatural references as needed\r
-               if (searchType == IReferenceSearch.NOMREF) {\r
-                       List nomenclaturalResultsArray = new ArrayList();\r
-                       for (Object result : resultsArray) {\r
-                               if (result instanceof INomenclaturalReference) {\r
-                                       nomenclaturalResultsArray.add(result);\r
-                               }\r
-                       }\r
-                       resultsArray = nomenclaturalResultsArray;\r
-               }\r
-               \r
-               // Tell user if there are no results\r
-               if (resultsArray.size() == 0) {\r
-                       resultsArray.add("Query returned no results.");\r
-               }\r
-               \r
-               // Send results to results resultsTable\r
-               resultsTableViewer.setInput(resultsArray.toArray());\r
-               \r
-               // Disable OK button\r
-               okButton.setEnabled(false);             \r
-       }\r
-       \r
-       /**\r
-        * Populate result and close dialog popup\r
-        */\r
-       private void submitResult() {\r
-               result = getSelectedReference();\r
-               shell.dispose();\r
-       }\r
-       \r
-       private void setSelectedReference(ReferenceBase selectedReference) {\r
-               this.selectedReference = selectedReference;\r
-       }\r
-       \r
-       private ReferenceBase getSelectedReference() {\r
-               return selectedReference;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/ReferenceSelectComposite.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/reference/ReferenceSelectComposite.java
deleted file mode 100644 (file)
index 17d99e2..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.editor.reference;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Dialog;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import eu.etaxonomy.cdm.model.reference.Generic;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 07.04.2009\r
- * @version 1.0\r
- */\r
-public class ReferenceSelectComposite extends Composite {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ReferenceSelectComposite.class);\r
-       private ReferenceBase savedReference;\r
-       private Text txtReference;\r
-       private Button btnClearReference;\r
-       private Text txtMicroRef;\r
-       \r
-       /**\r
-        * @param parent\r
-        * @param style\r
-        */\r
-       public ReferenceSelectComposite(Composite parent) {\r
-               super(parent, SWT.NULL);\r
-               createContent(parent);\r
-       }\r
-       \r
-       private void createContent(Composite xcontainer) {\r
-               setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.marginHeight = 0;\r
-               gridLayout.marginWidth = 0;\r
-               setLayout(gridLayout);\r
-               \r
-               Label lblReference = new Label(this, SWT.NONE);\r
-               lblReference.setLayoutData(new GridData());\r
-               lblReference.setText("Choose a reference either by searching or entering it as free text:");\r
-               \r
-               // Create 3-columned composite for reference input\r
-               Composite refComposite = new Composite(this, SWT.NONE);\r
-               GridLayout gridLayout2 = new GridLayout();\r
-               gridLayout2.numColumns = 3;     \r
-               gridLayout2.marginHeight = 0;\r
-               gridLayout2.marginWidth = 0;\r
-               refComposite.setLayout(gridLayout2);\r
-               refComposite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               \r
-               // Create reference input\r
-               txtReference = new Text(refComposite, SWT.BORDER);\r
-               txtReference.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               \r
-               // Create reference search button\r
-               Button btnSearchReference = new Button(refComposite, SWT.NONE);\r
-               btnSearchReference.setEnabled(true);\r
-               btnSearchReference.setLayoutData(new GridData());\r
-               btnSearchReference.setText("Search ...");\r
-               btnSearchReference.addSelectionListener(new SelectionAdapter() {\r
-                       \r
-                       // Popup reference search\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               popupSearch();\r
-                       }\r
-               });\r
-\r
-               // Create clear reference button\r
-               btnClearReference = new Button(refComposite, SWT.NONE);\r
-               btnClearReference.setEnabled(false);\r
-               btnClearReference.setText("Clear");\r
-               btnClearReference.addSelectionListener(new SelectionAdapter() {\r
-                       \r
-                       // Clear selected reference\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               clearReference();\r
-                       }\r
-               });\r
-               \r
-               // Create message re: editing references\r
-               Label lblNewRefFeedback = new Label(this, SWT.NONE);\r
-               lblNewRefFeedback.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, true, false));\r
-               lblNewRefFeedback.setFont(\r
-                               TaxEditorPlugin.getDefault().italicizeFont(lblNewRefFeedback.getFont()));\r
-               lblNewRefFeedback.setText("Existing references can only be edited in property sheet.");\r
-                               \r
-               Label lblMicroref = new Label(this, SWT.NONE);\r
-               lblMicroref.setText("Enter reference detail (e.g., page no.):");\r
-               \r
-               // Create microref input\r
-               txtMicroRef = new Text(this, SWT.BORDER);\r
-               txtMicroRef.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false));\r
-       }\r
-       \r
-       public void setReference(ReferenceBase reference) {\r
-               savedReference = reference;\r
-               txtReference.setText(reference.getTitleCache());\r
-               txtReference.setEditable(false);\r
-                                       \r
-               btnClearReference.setEnabled(true);\r
-       }\r
-       \r
-       public void setMicroReference(String microref) {\r
-               txtMicroRef.setText(microref);\r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       protected void popupSearch() {\r
-               Dialog dialog = new ReferenceSearchDialog(getShell(), \r
-                               IReferenceSearch.BIBREF);\r
-        Object value = ((ReferenceSearchDialog) dialog).open();\r
-        \r
-               if (value instanceof ReferenceBase) {\r
-                       setSavedReference((ReferenceBase) value);\r
-               }\r
-       }\r
-\r
-       /**\r
-        * @param value\r
-        */\r
-       private void setSavedReference(ReferenceBase reference) {\r
-               \r
-               savedReference = reference;\r
-               \r
-               txtReference.setText(reference.getTitleCache());\r
-               txtReference.setEditable(false);\r
-               \r
-               btnClearReference.setEnabled(true);\r
-       }\r
-       \r
-       protected void clearReference() {\r
-               savedReference = null;\r
-               \r
-               txtReference.setText("");\r
-               txtReference.setEditable(true);\r
-               \r
-               btnClearReference.setEnabled(false);            \r
-       }\r
-\r
-       /**\r
-        * Returns reference object, if any. Otherwise, creates a new Generic\r
-        * reference object using text the user has i nput.\r
-        *  \r
-        * @return\r
-        */\r
-       public ReferenceBase getReference() {\r
-               ReferenceBase reference = null;\r
-           if (savedReference != null) {\r
-               reference = savedReference;\r
-               } else {\r
-                       if (!txtReference.getText().equals("")) {\r
-                               reference = Generic.NewInstance();\r
-                               reference.setTitleCache(txtReference.getText());\r
-                       }\r
-               }\r
-               return reference;\r
-       }\r
-       \r
-       public String getMicroReference() {\r
-               return txtMicroRef.getText();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/AddTaxonomicChildHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/AddTaxonomicChildHandler.java
deleted file mode 100644 (file)
index c9250d2..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.IHandler;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-import eu.etaxonomy.taxeditor.controller.TreeController;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 09.02.2009\r
- * @version 1.0\r
- */\r
-public class AddTaxonomicChildHandler extends AbstractHandler implements\r
-               IHandler {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AddTaxonomicChildHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               \r
-               Taxon parentTaxon = TreeController.getCurrentSelection(event);\r
-                               \r
-               // Open editor for new taxon\r
-               EditorController.openUnitializedChildTaxon(parentTaxon);\r
-               \r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHeterotypicSynonymHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHeterotypicSynonymHandler.java
deleted file mode 100644 (file)
index ce889cd..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.IHandler;\r
-import org.eclipse.core.commands.common.NotDefinedException;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateSynonymInNewGroupOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 06.02.2009\r
- * @version 1.0\r
- */\r
-public class CreateHeterotypicSynonymHandler extends AbstractHandler implements\r
-               IHandler {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateHeterotypicSynonymHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               \r
-               IUndoableOperation operation;\r
-               try {\r
-                       operation = new CreateSynonymInNewGroupOperation(event.getCommand().getName(), \r
-                                       EditorController.getUndoContext(taxon), taxon, "");\r
-                       GlobalController.executeOperation(operation);\r
-               } catch (NotDefinedException e) {\r
-                       logger.warn("Command name not set");\r
-               }\r
-                               \r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHomotypicSynonymHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHomotypicSynonymHandler.java
deleted file mode 100644 (file)
index f5dc3c7..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.IHandler;\r
-import org.eclipse.core.commands.common.NotDefinedException;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.operations.name.CreateSynonymInExisitingHomotypicalGroupOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 06.02.2009\r
- * @version 1.0\r
- */\r
-public class CreateHomotypicSynonymHandler extends AbstractHandler implements\r
-               IHandler {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateHomotypicSynonymHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();\r
-               HomotypicalGroup group = taxon.getHomotypicGroup();\r
-               \r
-               IUndoableOperation operation;\r
-               try {\r
-                       operation = new CreateSynonymInExisitingHomotypicalGroupOperation(event.getCommand().getName(), \r
-                                       EditorController.getUndoContext(taxon), taxon, group, "");\r
-                       GlobalController.executeOperation(operation);\r
-               } catch (NotDefinedException e) {\r
-                       logger.warn("Command name not set");\r
-               }\r
-               \r
-\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateMisappliedNameHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateMisappliedNameHandler.java
deleted file mode 100644 (file)
index 2ddf1a7..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * 
- */
-package eu.etaxonomy.taxeditor.handlers;
-
-import org.apache.log4j.Logger;
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.commands.IHandler;
-import org.eclipse.core.commands.common.NotDefinedException;
-import org.eclipse.core.commands.operations.IUndoableOperation;
-
-import eu.etaxonomy.cdm.model.taxon.Taxon;
-import eu.etaxonomy.taxeditor.controller.EditorController;
-import eu.etaxonomy.taxeditor.controller.GlobalController;
-import eu.etaxonomy.taxeditor.operations.name.CreateMisappliedNameOperation;
-
-/**
- * @author nho
- *
- */
-public class CreateMisappliedNameHandler extends AbstractHandler implements IHandler {
-       private static final Logger logger = Logger
-                       .getLogger(CreateMisappliedNameHandler.class);
-       
-       /* (non-Javadoc)
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
-        */
-       public Object execute(ExecutionEvent event) throws ExecutionException {
-               Taxon taxon = EditorController.getActiveEditor().getTaxon();
-               
-               IUndoableOperation operation;
-               try {
-                       operation = new CreateMisappliedNameOperation(event.getCommand().getName(), 
-                                               EditorController.getUndoContext(taxon), taxon);
-                       GlobalController.executeOperation(operation);
-               } catch (NotDefinedException e) {
-                       logger.warn("Command name not set");
-               }
-               
-               return null;
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/DeleteTaxonHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/DeleteTaxonHandler.java
deleted file mode 100644 (file)
index cbfd75a..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.IHandler;\r
-import org.eclipse.core.commands.common.NotDefinedException;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.controller.TreeController;\r
-import eu.etaxonomy.taxeditor.operations.DeleteTaxonOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 09.02.2009\r
- * @version 1.0\r
- */\r
-public class DeleteTaxonHandler extends AbstractHandler implements IHandler {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DeleteTaxonHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               Taxon taxon = TreeController.getCurrentSelection(event);\r
-               \r
-               IUndoableOperation operation;\r
-               try {\r
-                       operation = new DeleteTaxonOperation(event.getCommand().getName(), \r
-                                       EditorController.getUndoContext(taxon), taxon);\r
-                       GlobalController.executeOperation(operation);\r
-               } catch (NotDefinedException e) {\r
-                       logger.warn("Command name not set");\r
-               }\r
-\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditNewTaxonHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditNewTaxonHandler.java
deleted file mode 100644 (file)
index 0f1e4d9..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.IHandler;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 06.02.2009\r
- * @version 1.0\r
- */\r
-public class EditNewTaxonHandler extends AbstractHandler implements IHandler {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(EditNewTaxonHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               \r
-               EditorController.openUnitializedRootTaxon();\r
-\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditTaxonHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditTaxonHandler.java
deleted file mode 100644 (file)
index 1c9f72d..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.TreeController;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 06.02.2009\r
- * @version 1.0\r
- */\r
-public class EditTaxonHandler extends AbstractHandler{\r
-       private static final Logger logger = Logger\r
-                       .getLogger(EditTaxonHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-\r
-               EditorController.open(TreeController.getCurrentSelection(event));\r
-               \r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/ExportHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/ExportHandler.java
deleted file mode 100644 (file)
index b955fde..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.IHandler;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.swt.widgets.FileDialog;\r
-\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 20.03.2009\r
- * @version 1.0\r
- */\r
-public class ExportHandler extends AbstractHandler implements IHandler  {\r
-       private static Logger logger = Logger.getLogger(ExportHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               \r
-               FileDialog dialog = new FileDialog(GlobalController.getShell());\r
-               dialog.setFileName("export.xml");\r
-               String filePath = dialog.open();\r
-               \r
-               if (filePath != null) {\r
-                       MessageDialog.openInformation(GlobalController.getShell(), \r
-                                       "Not yet implemented", "CDM datasource export not yet implemented.");\r
-               }\r
-               \r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/ImportHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/ImportHandler.java
deleted file mode 100644 (file)
index f25c13b..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.IHandler;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.swt.widgets.FileDialog;\r
-\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 20.03.2009\r
- * @version 1.0\r
- */\r
-public class ImportHandler extends AbstractHandler implements IHandler  {\r
-       private static Logger logger = Logger.getLogger(ImportHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               \r
-               FileDialog dialog = new FileDialog(GlobalController.getShell());\r
-               String filePath = dialog.open();\r
-               \r
-               if (filePath != null) {\r
-                       MessageDialog.openInformation(GlobalController.getShell(), \r
-                                       "Not yet implemented", "CDM datasource import not yet implemented.");\r
-               }\r
-               \r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/MoveTaxonHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/MoveTaxonHandler.java
deleted file mode 100644 (file)
index 9aa2c1e..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-package eu.etaxonomy.taxeditor.handlers;
-import org.apache.log4j.Logger;
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.commands.IHandler;
-
-/**
- * @author nho
- *
- */
-public class MoveTaxonHandler extends AbstractHandler implements IHandler {
-
-       private static final Logger logger = Logger
-                       .getLogger(MoveTaxonHandler.class);
-       
-       public Object execute(ExecutionEvent event) throws ExecutionException {
-               logger.warn("Not yet implemented");
-               return null;
-       }
-
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/NewTaxonHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/NewTaxonHandler.java
deleted file mode 100644 (file)
index d2e9d42..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.IHandler;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 06.02.2009\r
- * @version 1.0\r
- */\r
-public class NewTaxonHandler extends AbstractHandler implements IHandler {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NewTaxonHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               \r
-               EditorController.openUnitializedRootTaxon();\r
-\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/OpenTaxonHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/OpenTaxonHandler.java
deleted file mode 100644 (file)
index cb84b32..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.TreeController;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 06.02.2009\r
- * @version 1.0\r
- */\r
-public class OpenTaxonHandler extends AbstractHandler{\r
-       private static final Logger logger = Logger\r
-                       .getLogger(OpenTaxonHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-\r
-               EditorController.open(TreeController.getCurrentSelection(event));\r
-               \r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/SaveAllHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/SaveAllHandler.java
deleted file mode 100644 (file)
index 94d7d71..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.handlers;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.AbstractHandler;\r
-import org.eclipse.core.commands.ExecutionEvent;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.IHandler;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IEditorPart;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.actions.cdm.SaveTaxonAction;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.datasource.CdmTransactionController;\r
-import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 06.02.2009\r
- * @version 1.0\r
- */\r
-public class SaveAllHandler extends AbstractHandler implements IHandler {\r
-       private static final Logger logger = Logger.getLogger(SaveAllHandler.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
-        */\r
-       public Object execute(ExecutionEvent event) throws ExecutionException {\r
-               logger.debug("Save all handler called.");\r
-               EditorController.setSaving(true);\r
-               \r
-               // Get all open windows\r
-               for (IEditorPart taxonEditor : EditorController.getOpenEditors()) {\r
-\r
-                       // Save the dirty ones\r
-                       if (taxonEditor.isDirty()) {\r
-                               IEditorInput input = taxonEditor.getEditorInput();\r
-                               if (input.getAdapter(Taxon.class) != null) {\r
-                                       Taxon taxon = (Taxon) input.getAdapter(Taxon.class);\r
-                                       new SaveTaxonAction(taxon).run();\r
-                                       if (taxonEditor instanceof MultiPageTaxonEditor) {\r
-                                               ((MultiPageTaxonEditor) taxonEditor).setDirtyExtern(false);\r
-                                       }\r
-                               }\r
-                       }\r
-               }\r
-\r
-               // Commit the transaction       \r
-               CdmTransactionController.commitTransaction();\r
-       \r
-               // Force library objects to be associated with new transaction\r
-               CdmSessionDataRepository.getDefault().clearNonTaxonData();\r
-               \r
-               // Start a new transaction\r
-               CdmTransactionController.startTransaction();\r
-               \r
-               // Put all open taxa in the new transaction\r
-               CdmTransactionController.addSessionTaxaToTransaction();\r
-               \r
-               EditorController.setSaving(false);\r
-               // TODO: delete undoHistory\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/SwapTaxonSynonymHandler.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/SwapTaxonSynonymHandler.java
deleted file mode 100644 (file)
index 544a3b9..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * 
- */
-package eu.etaxonomy.taxeditor.handlers;
-
-import org.apache.log4j.Logger;
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.commands.IHandler;
-
-/**
- * @author nho
- *
- */
-public class SwapTaxonSynonymHandler extends AbstractHandler implements IHandler {
-
-
-       private static final Logger logger = Logger
-                       .getLogger(SwapTaxonSynonymHandler.class);
-
-       
-       /* (non-Javadoc)
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
-        */
-       public Object execute(ExecutionEvent event) throws ExecutionException {
-               logger.warn("Not yet implemented");
-               return null;
-       }
-
-}
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard.java
deleted file mode 100644 (file)
index d0e2bf0..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.io;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.wizard.Wizard;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 05.11.2008\r
- * @version 1.0\r
- */\r
-public class InputWizard extends Wizard {\r
-       private static final Logger logger = Logger.getLogger(InputWizard.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.wizard.Wizard#performFinish()\r
-        */\r
-       @Override\r
-       public boolean performFinish() {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-       \r
-//     public void addPages() {\r
-//             addPage();\r
-//     }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard2.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard2.java
deleted file mode 100644 (file)
index dcb05f0..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-package eu.etaxonomy.taxeditor.io;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.wizard.WizardPage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-public class InputWizard2 extends WizardPage {\r
-       private Text text;\r
-       private static final Logger logger = Logger.getLogger(InputWizard2.class);\r
-\r
-       /**\r
-        * Create the wizard\r
-        */\r
-       public InputWizard2() {\r
-               super("wizardPage");\r
-               setTitle("Input data from file");\r
-       }\r
-\r
-       /**\r
-        * Create contents of the wizard\r
-        * @param parent\r
-        */\r
-       public void createControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               container.setLayout(gridLayout);\r
-               //\r
-               setControl(container);\r
-\r
-               final Composite composite = new Composite(container, SWT.NONE);\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               composite.setLayout(new GridLayout());\r
-\r
-               final Label chooseFileFormatLabel = new Label(composite, SWT.NONE);\r
-               final GridData gd_chooseFileFormatLabel = new GridData(SWT.LEFT, SWT.CENTER, true, false);\r
-               chooseFileFormatLabel.setLayoutData(gd_chooseFileFormatLabel);\r
-               chooseFileFormatLabel.setText("Choose file format:");\r
-\r
-               final Button tcsButton = new Button(composite, SWT.RADIO);\r
-               tcsButton.setText("TCS");\r
-\r
-               final Button abcdButton = new Button(composite, SWT.RADIO);\r
-               abcdButton.setText("ABCD");\r
-               new Label(container, SWT.NONE);\r
-\r
-               final Composite composite_1 = new Composite(container, SWT.NONE);\r
-               composite_1.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));\r
-               composite_1.setLayout(new GridLayout());\r
-\r
-               final Label chooseFileLabel = new Label(composite_1, SWT.NONE);\r
-               final GridData gd_chooseFileLabel = new GridData(SWT.LEFT, SWT.CENTER, true, false);\r
-               chooseFileLabel.setLayoutData(gd_chooseFileLabel);\r
-               chooseFileLabel.setText("Choose file:");\r
-               new Label(container, SWT.NONE);\r
-\r
-               text = new Text(container, SWT.BORDER);\r
-               text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-\r
-               final Button browseButton = new Button(container, SWT.NONE);\r
-               browseButton.setText("Browse ...");\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/CdmSessionDataRepository.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/CdmSessionDataRepository.java
deleted file mode 100644 (file)
index 0b4ea74..0000000
+++ /dev/null
@@ -1,519 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.model;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Collection;\r
-import java.util.Collections;\r
-import java.util.HashMap;\r
-import java.util.HashSet;\r
-import java.util.List;\r
-import java.util.Map;\r
-import java.util.Set;\r
-import java.util.SortedSet;\r
-import java.util.UUID;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.observable.Realm;\r
-import org.eclipse.core.databinding.observable.set.IObservableSet;\r
-import org.eclipse.core.databinding.observable.set.ISetChangeListener;\r
-import org.eclipse.core.databinding.observable.set.SetChangeEvent;\r
-import org.eclipse.core.databinding.observable.set.WritableSet;\r
-import org.eclipse.jface.databinding.swt.SWTObservables;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-import eu.etaxonomy.cdm.api.service.ITermService;\r
-import eu.etaxonomy.cdm.model.common.Language;\r
-import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;\r
-import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.name.TypeDesignationStatus;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.controller.TreeController;\r
-import eu.etaxonomy.taxeditor.datasource.CdmTransactionController;\r
-import eu.etaxonomy.taxeditor.editor.name.CdmParserController;\r
-import eu.etaxonomy.taxeditor.navigation.QuickNameTaxon;\r
-import eu.etaxonomy.taxeditor.navigation.RecentNamesView;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 17.12.2008\r
- * @version 1.0\r
- */\r
-public class CdmSessionDataRepository implements ICdmSessionDataRepository {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CdmSessionDataRepository.class);\r
-\r
-       private static ICdmSessionDataRepository repository;\r
-       \r
-       /**\r
-        * This map of taxa to their taxonomic children is used by\r
-        * NameTreeContentProvider's getChildren method.\r
-        * \r
-        * key = taxon, value = key's child taxa Note that a map can have a key ==\r
-        * null, i.e. no parent taxon\r
-        */\r
-       private HashMap<Taxon, Set<Taxon>> taxonomicChildrenMap;\r
-       \r
-       private CdmApplicationController applicationController;\r
-\r
-       private IObservableSet observableTaxonSet;\r
-\r
-       private List<ICdmTaxonSetListener> listeners;\r
-\r
-       private List<Feature> features;\r
-\r
-       private SortedSet<Rank> ranks;\r
-\r
-       private TermVocabulary<NomenclaturalStatusType> nomStatus;\r
-\r
-       private SortedSet<NameRelationshipType> nameRelationshipTypes;\r
-\r
-       private OrderedTermVocabulary<TaxonRelationshipType> taxonRelationshipTypes;\r
-\r
-       private Set<TaxonRelationshipType> conceptRelationshipTypes;\r
-\r
-       private TermVocabulary<TypeDesignationStatus> typeStatus;\r
-\r
-       private ArrayList<Language> languages;\r
-\r
-       public static ICdmSessionDataRepository getDefault() {\r
-               \r
-               if (repository == null) {\r
-                       repository = new CdmSessionDataRepository();\r
-               }\r
-               \r
-               \r
-               return repository;\r
-       }\r
-       \r
-       private CdmSessionDataRepository() {\r
-               getObservableTaxa().addSetChangeListener(new observableTaxaListener());\r
-       }\r
-       \r
-       \r
-       public void clearAllData() {\r
-               clearTaxonData();\r
-               clearNonTaxonData();\r
-       }\r
-\r
-       \r
-       public void clearTaxonData() {\r
-               removeAllTaxa();\r
-               \r
-               // Clear "recent names" list\r
-               RecentNamesView.clearRecentNames();\r
-       }\r
-\r
-       \r
-       public void clearNonTaxonData() {\r
-               features = null;\r
-               ranks = null;\r
-               nomStatus = null;\r
-               taxonRelationshipTypes = null;\r
-               nameRelationshipTypes = null;\r
-               conceptRelationshipTypes = null;\r
-               languages = null;\r
-               \r
-               // Parser is also transaction-, and therefore session-, dependent\r
-               CdmParserController.clearNonViralNameParser();\r
-       }\r
-\r
-       \r
-       public void setApplicationController(CdmApplicationController applicationController) {\r
-               this.applicationController = applicationController;\r
-       }\r
-\r
-       private Map<Taxon, Set<Taxon>> getTaxonomicChildrenMap() {\r
-               if (taxonomicChildrenMap == null) {\r
-                       taxonomicChildrenMap = new HashMap<Taxon, Set<Taxon>>();\r
-               }\r
-               return taxonomicChildrenMap;\r
-       }\r
-       \r
-       private CdmApplicationController getApplicationController() {\r
-               // Make sure the app controller has been set\r
-               if (applicationController == null) {\r
-                       throw new IllegalStateException("CdmApplicationController not yet set.");\r
-               }\r
-               return applicationController;\r
-       }\r
-\r
-       \r
-       public ReferenceBase getDefaultSec() {\r
-               // TODO why is this returning null? and of course, replace w the real deal\r
-               return getApplicationController().getReferenceService().getReferenceByUuid(\r
-                               UUID.fromString("f3593c18-a8d2-4e51-bdad-0befbf8fb2d1"));\r
-       }\r
-\r
-       \r
-       public Set<Taxon> getRootTaxa() {\r
-               return getTaxonomicChildren(null);\r
-       }\r
-       \r
-       \r
-       public Set<Taxon> getTaxonomicChildren(Taxon parentTaxon) {\r
-                               \r
-               // Check whether the map contains children for parentTaxon\r
-               if (!getTaxonomicChildrenMap().containsKey(parentTaxon)) {\r
-                       \r
-                       // Make a new child taxa set to ensure deleted taxa\r
-                       //      don't re-appear as NULL children\r
-                       Set<Taxon> childTaxa = new HashSet<Taxon>();\r
-                               \r
-                       // Root taxa have parentTaxon = NULL\r
-                       if (parentTaxon == null) {\r
-                               \r
-                               // Get root taxa from data source\r
-                               boolean onlyWithChildren = false;\r
-                               boolean withMisapplications = true;\r
-                               childTaxa.addAll(getApplicationController().getTaxonService().getRootTaxa(\r
-                                       getDefaultSec(), onlyWithChildren, withMisapplications));\r
-                               \r
-                       } else {\r
-                               \r
-                               // Get children from taxon\r
-                               childTaxa.addAll(parentTaxon.getTaxonomicChildren());\r
-                       }\r
-                       \r
-                       // Iterate through all child taxa, throwing out NULLs and saving the rest to internal collections\r
-                       Set<Taxon> nullTaxa = new HashSet<Taxon>();\r
-                       for (Taxon taxon : childTaxa) {\r
-                               \r
-                               // Some imports resulted in NULL child taxa\r
-                               if (taxon == null) {\r
-                                       if (parentTaxon == null) {\r
-                                               logger.warn("NULL taxon in root taxa.");\r
-                                       } else {\r
-                                               logger.warn("Taxon " + parentTaxon.toString() + " has a NULL child taxon.");\r
-                                       }\r
-                                       nullTaxa.add(taxon);\r
-                               } else {\r
-                                       \r
-                                       // Add the taxon to internal collections\r
-                                       addTaxonIntern(taxon);\r
-                               }\r
-                       }\r
-                       childTaxa.removeAll(nullTaxa);\r
-                                                       \r
-                       // Put the new set in the parent-children map\r
-                       getTaxonomicChildrenMap().put(parentTaxon, childTaxa);\r
-               }\r
-               return getTaxonomicChildrenMap().get(parentTaxon);\r
-       }\r
-       \r
-       private void addTaxonIntern(Taxon taxon) {\r
-                               \r
-               // Add it to the transaction if it's a persistent taxon\r
-               if (!(taxon instanceof QuickNameTaxon)) {\r
-                       CdmTransactionController.addTaxonToTransaction(taxon);\r
-               }\r
-               \r
-               // Remove then re-add session taxon\r
-               getObservableTaxa().add(taxon);\r
-       }\r
-       \r
-       \r
-       public void addTaxon(Taxon taxon) {\r
-                               \r
-               // Add taxon to its parent's child map\r
-               Taxon parentTaxon = taxon.getTaxonomicParent();\r
-               getTaxonomicChildren(parentTaxon).add(taxon);\r
-               \r
-               // Add taxon to internal collections\r
-               addTaxonIntern(taxon);\r
-       }\r
-\r
-       \r
-       public IObservableSet getObservableTaxa() {\r
-               if (observableTaxonSet == null) {\r
-                       Realm realm = SWTObservables.getRealm(Display.getDefault());\r
-                       observableTaxonSet = new WritableSet(realm);\r
-               }\r
-               return observableTaxonSet;\r
-       }\r
-\r
-       \r
-       public boolean deleteTaxon(Taxon taxon) {\r
-               \r
-               // Remove taxon from repository collections\r
-               removeTaxon(taxon);\r
-               \r
-               // If taxon has been saved before, delete it from the data source\r
-               if (isInPersistentDataSource(taxon)) {\r
-                       getApplicationController().getTaxonService().removeTaxon(taxon);\r
-               }\r
-               \r
-               // If parent taxon has been saved before, save it to reflect loss of child\r
-               Taxon parentTaxon = taxon.getTaxonomicParent();\r
-               if (parentTaxon != null && isInPersistentDataSource(parentTaxon)) {\r
-                       getApplicationController().getTaxonService().saveTaxon(parentTaxon);\r
-               }\r
-               \r
-               return true;\r
-       }\r
-       \r
-       private boolean isInPersistentDataSource(Taxon taxon) {\r
-               UUID taxonUuid = taxon.getUuid();\r
-               if (getApplicationController().getTaxonService()\r
-                               .getTaxonByUuid(taxonUuid) != null) {\r
-                       return true;\r
-               } else {\r
-                       return false;\r
-               }\r
-       }\r
-\r
-       \r
-       public void removeTaxon(Taxon taxon) {\r
-               \r
-               // Recursively remove all children, children's children, etc.\r
-               clearTaxonomicChildren(taxon);\r
-\r
-               // Remove from parent and from parent's child map\r
-               Taxon parentTaxon = taxon.getTaxonomicParent();\r
-               if (parentTaxon != null) {\r
-                       removeTaxonomicChild(taxon, parentTaxon);\r
-               }\r
-\r
-               // Remove from session taxa\r
-               getObservableTaxa().remove(taxon);\r
-               \r
-               // Remove from recent names list\r
-               RecentNamesView.removeRecentName(taxon);\r
-       }\r
-       \r
-       private void removeTaxonomicChild(Taxon taxon, Taxon parentTaxon) {\r
-               parentTaxon.removeTaxonomicChild(taxon);\r
-               getTaxonomicChildren(parentTaxon).remove(taxon);\r
-       }\r
-\r
-       private void clearTaxonomicChildren(Taxon taxon) {\r
-               Set<Taxon> children = getTaxonomicChildren(taxon);\r
-               if (children != null) {\r
-                       for (Taxon child : children) {\r
-                               clearTaxonomicChildren(child);\r
-                       }\r
-                       getTaxonomicChildrenMap().remove(taxon);\r
-                       getObservableTaxa().removeAll(children);\r
-               }\r
-       }\r
-\r
-       \r
-       public Collection<Taxon> getAllTaxa() {\r
-               return getObservableTaxa();\r
-       }\r
-       \r
-       \r
-       public void removeAllTaxa() {\r
-               taxonomicChildrenMap.clear();\r
-               observableTaxonSet.clear();\r
-       }\r
-\r
-\r
-       \r
-       public boolean saveTaxon(Taxon taxon) {\r
-               \r
-               // Initialize tree?\r
-               if (getRootTaxa().size() == 0) {\r
-                       TreeController.createTreeViewer();\r
-               }\r
-               \r
-               // If this is not in the list of observable taxa, add\r
-               if (!isInRepository(taxon)) {\r
-                       addTaxon(taxon);\r
-               }\r
-               \r
-               // Save taxon to CDM layer\r
-               CdmUtil.getTaxonService().saveTaxon(taxon);\r
-               \r
-               // Notify taxon listeners in case name has been updated - \r
-               //      updates editor view tab and recent names\r
-               taxon.firePropertyChange("name", null, null);\r
-               \r
-               return true;\r
-       }\r
-       \r
-       private boolean isInRepository(Taxon taxon) {\r
-               return observableTaxonSet.contains(taxon);\r
-       }\r
-\r
-       \r
-       public void setTaxonomicParent(Taxon taxon, Taxon newParentTaxon) {\r
-               \r
-               // Get old taxonomic parent\r
-               Taxon oldParentTaxon = taxon.getTaxonomicParent();\r
-               \r
-               // Set new taxonomic parent\r
-               taxon.setTaxonomicParent(newParentTaxon, null, null);\r
-               \r
-               // Update child taxa collection         \r
-               getTaxonomicChildren(oldParentTaxon).remove(taxon);\r
-               getTaxonomicChildren(newParentTaxon).add(taxon);\r
-               \r
-               // Notify listeners that taxon has moved\r
-               if (listeners != null) {\r
-                       for (ICdmTaxonSetListener listener : listeners) {\r
-                               listener.taxonMoved(taxon, newParentTaxon);\r
-                       }\r
-               }\r
-       }\r
-       \r
-       \r
-       public List<Feature> getFeatures() {\r
-               if (features == null) {\r
-                       \r
-                       Map<String, Feature> featuresMap = new HashMap<String, Feature>();\r
-                                                                       \r
-                       for (Feature feature : getApplicationController().getDescriptionService().\r
-                                       getDefaultFeatureVocabulary()) {\r
-                               featuresMap.put(feature.getLabel(), feature);\r
-                       }\r
-                       \r
-                       // Alphabetize features by label\r
-                       List<String> labels = new ArrayList<String>();\r
-                       labels.addAll(featuresMap.keySet());\r
-                       Collections.sort(labels);\r
-                       \r
-                       features = new ArrayList<Feature>();\r
-                       for (String label : labels) {\r
-                               features.add(featuresMap.get(label));\r
-                       }\r
-               }\r
-               return features;\r
-       }\r
-       \r
-       \r
-       public SortedSet<Rank> getRanks() {\r
-               if (ranks == null) {\r
-                       \r
-                       OrderedTermVocabulary<Rank> rankVocabulary = \r
-                                       getApplicationController().getNameService().getRankVocabulary();\r
-                       ranks = rankVocabulary.getOrderedTerms(null);\r
-               }\r
-               return ranks;\r
-       }\r
-\r
-       \r
-       public TermVocabulary<NomenclaturalStatusType> getNomStatus() {\r
-               if (nomStatus == null) {\r
-                       nomStatus = getApplicationController().getNameService()\r
-                                       .getStatusTypeVocabulary();\r
-               }\r
-               return nomStatus;\r
-       }\r
-       \r
-       \r
-       public SortedSet<NameRelationshipType> getNameRelationshipTypes() {\r
-               if (nameRelationshipTypes == null) {\r
-                       TermVocabulary<NameRelationshipType> nameRelationshipTypesUnsorted = \r
-                                       getApplicationController().getNameService()\r
-                                               .getNameRelationshipTypeVocabulary();\r
-                       \r
-                       // Add all terms manually to transaction\r
-                       ITermService termService = getApplicationController().getTermService();\r
-                       for (NameRelationshipType type : nameRelationshipTypesUnsorted) {\r
-                               termService.saveTerm(type);\r
-                       }\r
-                       \r
-                       // Get sorted list of types\r
-                       nameRelationshipTypes = nameRelationshipTypesUnsorted.\r
-                                       getTermsOrderedByLabels(Language.DEFAULT());\r
-               }\r
-               return nameRelationshipTypes;\r
-       }\r
-       \r
-       \r
-       public void addTaxonSetListener(ICdmTaxonSetListener listener) {\r
-               \r
-               if (listeners == null) { \r
-                       listeners = new ArrayList<ICdmTaxonSetListener>();\r
-               }\r
-               listeners.add(listener);\r
-       }\r
-       \r
-       class observableTaxaListener implements ISetChangeListener {\r
-               \r
-               public void handleSetChange(SetChangeEvent event) {\r
-                       if (event.diff != null) {\r
-                               Set<Taxon> additions = event.diff.getAdditions();\r
-                               Set<Taxon> removals = event.diff.getRemovals();\r
-                               \r
-                               if (listeners != null) {\r
-                                       for (ICdmTaxonSetListener listener : listeners) {\r
-                                               \r
-                                               if (additions.size() > 0) {\r
-                                                       listener.taxaAdded(additions);\r
-                                               }\r
-                                               \r
-                                               if (removals.size() > 0) {\r
-                                                       listener.taxaRemoved(removals);\r
-                                               }\r
-                                       }\r
-                               }\r
-                       }\r
-               }               \r
-       }\r
-\r
-       \r
-       public OrderedTermVocabulary<TaxonRelationshipType> getTaxonRelationshipTypes() {\r
-               if (taxonRelationshipTypes == null) {\r
-                       taxonRelationshipTypes = getApplicationController().getTaxonService().\r
-                                       getTaxonRelationshipTypeVocabulary();\r
-               }\r
-               return taxonRelationshipTypes;\r
-       }\r
-\r
-       \r
-       public Set<TaxonRelationshipType> getConceptRelationshipTypes() {\r
-               if (conceptRelationshipTypes == null) {\r
-                       conceptRelationshipTypes = getTaxonRelationshipTypes().getTerms();\r
-                       conceptRelationshipTypes.remove(TaxonRelationshipType.MISAPPLIED_NAME_FOR());\r
-                       conceptRelationshipTypes.remove(TaxonRelationshipType.TAXONOMICALLY_INCLUDED_IN());\r
-               }\r
-               return conceptRelationshipTypes;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.model.ICdmSessionDataRepository#getTypeDesignationStatus()\r
-        */\r
-       public TermVocabulary<TypeDesignationStatus> getTypeDesignationStatus() {\r
-               if (typeStatus == null) {\r
-                       typeStatus = getApplicationController().getNameService().getTypeDesignationVocabulary();\r
-               }\r
-               return typeStatus;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.model.ICdmSessionDataRepository#getLanguages()\r
-        */\r
-       public List<Language> getLanguages() {\r
-               if (languages == null) {\r
-                       \r
-//                     UUID uuid = UUID.fromString("45ac7043-7f5e-4f37-92f2-3874aaaef2de");\r
-//                     TermVocabulary langs = getApplicationController().getTermService().getVocabulary(uuid);\r
-\r
-                       languages = new ArrayList<Language>();\r
-//                     for (Object language : langs) {\r
-//                             if (language instanceof Language) {\r
-//                                     languages.add((Language) language);\r
-//                             }\r
-//                     }\r
-                       languages.add(Language.ENGLISH());\r
-                       languages.add(Language.GERMAN());\r
-               }\r
-               return languages;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/CdmUtil.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/CdmUtil.java
deleted file mode 100644 (file)
index 184ab2e..0000000
+++ /dev/null
@@ -1,433 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.model;\r
-\r
-import java.util.ArrayList;\r
-import java.util.HashSet;\r
-import java.util.List;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-\r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-import eu.etaxonomy.cdm.api.service.INameService;\r
-import eu.etaxonomy.cdm.api.service.IReferenceService;\r
-import eu.etaxonomy.cdm.api.service.ITaxonService;\r
-import eu.etaxonomy.cdm.api.service.config.ITaxonServiceConfigurator;\r
-import eu.etaxonomy.cdm.api.service.config.impl.TaxonServiceConfiguratorImpl;\r
-import eu.etaxonomy.cdm.common.CdmUtils;\r
-import eu.etaxonomy.cdm.model.common.IdentifiableEntity;\r
-import eu.etaxonomy.cdm.model.common.TimePeriod;\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.name.NameRelationship;\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.cdm.persistence.query.MatchMode;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.navigation.SearchResult;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 17.09.2008\r
- * @version 1.0\r
- */\r
-public class CdmUtil {\r
-       private static final Logger logger = Logger.getLogger(CdmUtil.class);\r
-       \r
-       /**\r
-        * Checks whether synonym's name is the basionym for ALL names \r
-        *      in its group.\r
-        * \r
-        * @param synonym\r
-        * \r
-        * @return\r
-        */\r
-       public static boolean isSynonymGroupBasionym(Synonym synonym) {\r
-               \r
-               TaxonNameBase synonymName = synonym.getName();\r
-               return isNameGroupBasionym(synonymName);\r
-       }\r
-       \r
-       /**\r
-        * Checks whether name is the basionym for ALL names \r
-        *      in its group.\r
-        * @param name\r
-        * \r
-        * @return\r
-        */     \r
-       public static boolean isNameGroupBasionym(TaxonNameBase name) {\r
-               if (name == null) {\r
-                       return false;\r
-               }\r
-               \r
-               HomotypicalGroup homotypicalGroup = name.getHomotypicalGroup();\r
-               if (homotypicalGroup == null) {\r
-                       return false;\r
-               }               \r
-               \r
-               Set<TaxonNameBase> typifiedNames = homotypicalGroup.getTypifiedNames();\r
-               \r
-               // Check whether there are any other names in the group\r
-               if (typifiedNames.size() == 1) {\r
-                       return false;\r
-               }\r
-               \r
-               boolean isBasionymToAll = true;\r
-                               \r
-               for (TaxonNameBase taxonName : typifiedNames) {\r
-                       if (!taxonName.equals(name)) {\r
-                               if (!isNameBasionymOf(name, taxonName)) {\r
-                                       return false;\r
-                               }\r
-                       }\r
-               }\r
-               return true;            \r
-       }\r
-       \r
-       /**\r
-        * Checks whether a basionym relationship exists between fromName and toName.\r
-        * \r
-        * @param fromName\r
-        * @param toName\r
-        * @return\r
-        */\r
-       public static boolean isNameBasionymOf(TaxonNameBase fromName, TaxonNameBase toName) {\r
-               Set<NameRelationship> relations = toName.getRelationsToThisName();\r
-               for (NameRelationship relation : relations) {\r
-                       if (relation.getType().equals(NameRelationshipType.BASIONYM()) &&\r
-                                       relation.getFromName().equals(fromName)) {\r
-                               return true;\r
-                       }\r
-               }\r
-               return false;\r
-       }\r
-\r
-       /**\r
-        * Creates a basionym relationship between basionymName and\r
-        *      each name in its homotypic group.\r
-        * \r
-        * @param basionymName\r
-        */\r
-       public static void setGroupBasionym(TaxonNameBase basionymName) {\r
-               HomotypicalGroup homotypicalGroup = basionymName.getHomotypicalGroup();\r
-               if (homotypicalGroup == null) {\r
-                       return;\r
-               }\r
-               for (TaxonNameBase name : homotypicalGroup.getTypifiedNames()) {\r
-                       if (!name.equals(basionymName)) {\r
-                               \r
-                               // First check whether the relationship already exists\r
-                               if (!isNameBasionymOf(basionymName, name)) {\r
-                                       \r
-                                       // Then create it\r
-                                       name.addRelationshipFromName(basionymName, \r
-                                                       NameRelationshipType.BASIONYM(), null);\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Removes all basionym relationships between basionymName and\r
-        *      the names in its homotypic group.\r
-        * \r
-        * @param basionymName\r
-        */\r
-       public static void removeGroupBasionym(TaxonNameBase basionymName) {\r
-               HomotypicalGroup homotypicalGroup = basionymName.getHomotypicalGroup();\r
-               Set<NameRelationship> relations = basionymName.getRelationsFromThisName();\r
-               Set<NameRelationship> removeRelations = new HashSet<NameRelationship>();\r
-               \r
-               for (NameRelationship relation : relations) {\r
-                       \r
-                       // If this is a basionym relation, and toName is in the homotypical group,\r
-                       //      remove the relationship.\r
-                       if (relation.getType().equals(NameRelationshipType.BASIONYM()) &&\r
-                                       relation.getToName().getHomotypicalGroup().equals(homotypicalGroup)) {\r
-                               removeRelations.add(relation);\r
-                       }\r
-               }\r
-               \r
-               // Removing relations from a set through which we are iterating causes a \r
-               //      ConcurrentModificationException. Therefore, we delete the targeted\r
-               //      relations in a second step.\r
-               for (NameRelationship relation : removeRelations) {\r
-                       basionymName.removeNameRelationship(relation);\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * Checks whether name belongs to the same homotypic group as taxon's name.\r
-        * \r
-        * @param name\r
-        * @param taxon\r
-        * @return\r
-        */\r
-       public static boolean isNameHomotypic(TaxonNameBase name, Taxon taxon) {\r
-               TaxonNameBase taxonName = taxon.getName();\r
-               if (taxonName == null || name == null) {\r
-                       return false;\r
-               }\r
-               HomotypicalGroup homotypicGroup = taxonName.getHomotypicalGroup();\r
-               if (homotypicGroup == null) {\r
-                       return false;\r
-               }\r
-               if (homotypicGroup.equals(name.getHomotypicalGroup())) {\r
-                       return true;\r
-               }\r
-               return false;\r
-       }\r
-\r
-       /**\r
-        * Returns whatever is currently considered the display name for Taxon\r
-        * objects. Currently titleCache.\r
-        * \r
-        * @param taxon\r
-        * @return\r
-        */\r
-       public static String getDisplayName(TaxonBase taxonBase) {\r
-               TaxonNameBase name = taxonBase.getName();\r
-               return getDisplayName(name);\r
-       }\r
-\r
-       /**\r
-        * @param name\r
-        * @return\r
-        */\r
-       public static String getDisplayName(TaxonNameBase name) {\r
-               if (name != null) {\r
-                       return name.getTitleCache().replace("&", "&&");\r
-               }\r
-               return "";\r
-       }\r
-       \r
-       public static String getDisplayNameWithRef(TaxonBase taxonBase) {\r
-               TaxonNameBase name = taxonBase.getName();\r
-               if (name != null) {\r
-                       if (name.getFullTitleCache() == null || name.getFullTitleCache().length() == 0) {\r
-                               return CdmUtils.Nz(name.getTitleCache());\r
-                       } else {\r
-                               return name.getFullTitleCache();\r
-                       }\r
-               }\r
-               return "";\r
-       }\r
-\r
-       /**\r
-        * @param oldTaxon\r
-        * @param newAcceptedTaxon\r
-        * @param synonymType\r
-        * @param citation\r
-        * @param citationMicroReference\r
-        */\r
-       public static void makeTaxonSynonym(Taxon oldTaxon, Taxon newAcceptedTaxon,\r
-                       SynonymRelationshipType synonymType, ReferenceBase citation,\r
-                       String citationMicroReference) {\r
-               ITaxonService taxonService = getTaxonService();\r
-               taxonService.makeTaxonSynonym(oldTaxon, newAcceptedTaxon, synonymType,\r
-                               citation, citationMicroReference);\r
-       }\r
-\r
-       /**\r
-        * @param searchText\r
-        * @return\r
-        */\r
-       public static List<TaxonNameBase> searchNameString(String searchText) {\r
-               List<TaxonNameBase> resultsSet = new ArrayList<TaxonNameBase>();\r
-               resultsSet.addAll(getNameService()\r
-                               .getNamesByName(searchText.replace("*", "%")));\r
-               return resultsSet;\r
-       }\r
-       \r
-       public static SearchResult searchTaxaByName(String name) {\r
-               SearchResult searchResult = new SearchResult();\r
-               \r
-               ITaxonServiceConfigurator configurator = new TaxonServiceConfiguratorImpl();\r
-               \r
-               configurator.setMatchMode(MatchMode.ANYWHERE);\r
-               configurator.setSearchString(name.replace("*", "%"));\r
-               configurator.setDoTaxa(true);\r
-               configurator.setDoNamesWithoutTaxa(true);\r
-               configurator.setDoSynonyms(true);\r
-               configurator.setPageNumber(1);\r
-               // TODO currently limit results to 1000 for now\r
-               configurator.setPageSize(1000);\r
-               \r
-               List<IdentifiableEntity> result = getTaxonService().findTaxaAndNames(configurator).getRecords();\r
-               \r
-               searchResult.addAll(result);\r
-               return searchResult;\r
-       }\r
-       \r
-       private static CdmApplicationController getApplicationController() {\r
-               return TaxEditorPlugin.getDefault().getApplicationController();\r
-       }\r
-       \r
-       public static INameService getNameService() {\r
-               return getApplicationController().getNameService();\r
-       }\r
-       \r
-       public static ITaxonService getTaxonService() {\r
-               return getApplicationController().getTaxonService();\r
-       }\r
-\r
-       public static IReferenceService getReferenceService() {\r
-               return getApplicationController().getReferenceService();\r
-       }\r
-       \r
-       /**\r
-        * @param searchText\r
-        * @param taxon\r
-        * @return\r
-        */\r
-       public static Set<TaxonNameBase> getNameByNameForTaxonContext(String searchText, Taxon taxon) {\r
-               Set<TaxonNameBase> resultsSet = new HashSet<TaxonNameBase>();\r
-               resultsSet.addAll(getNameService().getNamesByName\r
-                               (searchText.replace("*", "%"), taxon));\r
-               return resultsSet;\r
-       }\r
-               \r
-       /**\r
-        * Converts a <code>String</code> whose format is either a valid year \r
-        * or two valid years with the format "XXXX-XXXX" into a TimePeriod. \r
-        *\r
-        * @see #getValidYear(String yearStr)\r
-        * @param refYear\r
-        * @return\r
-        * @throws NumberFormatException\r
-        */\r
-       public static TimePeriod convertTimePeriod(String refYear) throws NumberFormatException {\r
-               \r
-               if (refYear == null || ("").equals(refYear)){\r
-                       return null;\r
-               }\r
-               \r
-               TimePeriod datePublished = TimePeriod.NewInstance();\r
-               \r
-               // In case format is "xxxx-xxxx"\r
-               String[] years = refYear.split("-");\r
-\r
-               // Unlikely case of "xxxx-xxxx-xxxx..."\r
-               if (years.length > 2) {\r
-                       throw new NumberFormatException();\r
-               }\r
-               \r
-               // Set startYear\r
-               datePublished.setStartYear(getValidYear(years[0]));\r
-\r
-               // Format is "xxxx-xxxx"\r
-               if (years.length == 2) {\r
-                       datePublished.setEndYear(getValidYear(years[1]));\r
-               }\r
-               \r
-               return datePublished;\r
-       }\r
-       \r
-       \r
-       /**\r
-        * Checks whether a <code>String</code> is a valid year between\r
-        * 1750 and 2030. Throws a <code>NumberFormatException</code> if not.\r
-        * \r
-        * @param yearStr\r
-        * @return\r
-        * @throws NumberFormatException\r
-        */\r
-       public static Integer getValidYear(String yearStr) throws NumberFormatException {\r
-               \r
-               Integer yearInt = null;\r
-               \r
-               // Try casting string - don't catch number format exception\r
-               try {\r
-                       yearInt = new Integer(yearStr);\r
-               } catch (ClassCastException e) {\r
-                       throw new NumberFormatException();\r
-               }\r
-               \r
-               // Is year in valid range?\r
-               if (yearInt < 1750 || yearInt > 2030) {\r
-                       throw new NumberFormatException();\r
-               }\r
-               \r
-               return yearInt;\r
-       }\r
-\r
-       /**\r
-        * Searches for references by string. "%" is used as a wildcard.\r
-        * \r
-        * @param text\r
-        * @return \r
-        */\r
-       public static List getReferencesByTitle(String reference) {\r
-               \r
-               reference = reference.replace("*", "%");\r
-               List resultsList = null;\r
-               try {\r
-                       resultsList = getReferenceService().getReferencesByTitle(reference);\r
-               } catch (RuntimeException e) {\r
-                       MessageDialog.openError(GlobalController.getShell(), "Search reference error", \r
-                                       "Reference search returned an error. This could be a Hibernate concurrency problem. " +\r
-                                       "Please try saving your work, then searching again.");\r
-                       e.printStackTrace();\r
-               }\r
-               return resultsList;\r
-       }\r
-       \r
-       /**\r
-        * Returns true if <code>taxon</code> belongs to the children, grandchildren,\r
-        * etc. of <code>checkTaxon</code>.\r
-        * \r
-        * @param taxon\r
-        * @param checkTaxon\r
-        * @return\r
-        */\r
-       public static boolean isTaxonChildOfTaxon(Taxon taxon, Taxon checkTaxon) {\r
-               \r
-               // Traverse all checkTaxon's children\r
-               for (Taxon childTaxon : checkTaxon.getTaxonomicChildren()) {\r
-                       \r
-                       if (childTaxon.equals(taxon)) {\r
-                               return true;\r
-                       } else {\r
-                               \r
-                               // Compare taxon with childTaxon's children\r
-                               if (isTaxonChildOfTaxon(taxon, childTaxon)) {\r
-                                       return true;\r
-                               }\r
-                       }\r
-               }\r
-               return false;\r
-       }\r
-\r
-       /**\r
-        * @param name\r
-        * @return\r
-        */\r
-       public static boolean isNameSupraSpecific(TaxonNameBase name) {\r
-               \r
-               if (name == null || name.getRank() == null) {\r
-                       return false;\r
-               }\r
-               \r
-               if (name.getRank().isHigher(Rank.SPECIES())) {\r
-//             if (name.isInfraGeneric() || name.isSupraGeneric() || name.isGenus()) {\r
-                       return true;\r
-               } else {\r
-                       return false;\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/DescriptionUtil.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/DescriptionUtil.java
deleted file mode 100644 (file)
index a475006..0000000
+++ /dev/null
@@ -1,253 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.model;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.api.service.ILocationService;\r
-import eu.etaxonomy.cdm.api.service.ILocationService.NamedAreaVocabularyType;\r
-import eu.etaxonomy.cdm.model.common.Language;\r
-import eu.etaxonomy.cdm.model.description.AbsenceTerm;\r
-import eu.etaxonomy.cdm.model.description.CommonTaxonName;\r
-import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
-import eu.etaxonomy.cdm.model.description.PresenceAbsenceTermBase;\r
-import eu.etaxonomy.cdm.model.description.PresenceTerm;\r
-import eu.etaxonomy.cdm.model.description.TextData;\r
-import eu.etaxonomy.cdm.model.location.NamedArea;\r
-import eu.etaxonomy.cdm.model.location.NamedAreaLevel;\r
-import eu.etaxonomy.cdm.model.location.NamedAreaType;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.datasource.CdmDataSourceRepository;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 02.04.2009\r
- * @version 1.0\r
- */\r
-public class DescriptionUtil {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DescriptionUtil.class);\r
-\r
-       /**\r
-        * Returns whatever the element's title cache equivalent is,\r
-        * depending on its class.\r
-        * \r
-        * @param element\r
-        * @param language\r
-        * @return \r
-        */\r
-       public static String getCache(DescriptionElementBase element, \r
-                       Language language) {\r
-               String cache = null;\r
-               if (element instanceof TextData) {\r
-                       cache = ((TextData) element).getText(language);\r
-               }\r
-               if (element instanceof CommonTaxonName) {\r
-                       cache = ((CommonTaxonName) element).getName();\r
-               }\r
-               return cache == null ? "" : cache;\r
-       }\r
-\r
-       /**\r
-        * Returns whatever the element's title cache equivalent is,\r
-        * depending on its class, using the default language.\r
-        * \r
-        * @param element\r
-        * @return \r
-        */\r
-       public static String getCache(DescriptionElementBase element) {\r
-               return getCache(element, Language.DEFAULT());\r
-       }\r
-       \r
-       /**\r
-        * Set whatever the element's title cache equivalent is,\r
-        * depending on its class.\r
-        * \r
-        * @param element\r
-        * @param value\r
-        * @param language\r
-        */\r
-       public static void setCache(DescriptionElementBase element,\r
-                       String value, Language language) {\r
-               if (element instanceof TextData) {\r
-                       ((TextData) element).putText(value, language);\r
-                       return;\r
-               }\r
-               if (element instanceof CommonTaxonName) {\r
-                       ((CommonTaxonName) element).setName(value);\r
-                       return;\r
-               }\r
-               logger.warn("No matching subclass found for DescriptionElementBase object, 'cache' not set.");\r
-       }\r
-       \r
-       /**\r
-        * Set whatever the element's title cache equivalent is,\r
-        * depending on its class, using the default language.\r
-        * \r
-        * @param element\r
-        * @param value\r
-        */     \r
-       public static void setCache(DescriptionElementBase element,\r
-                       String value) {\r
-               setCache(element, value, Language.DEFAULT());\r
-       }\r
-       \r
-       public static IDistributionInfoProvider getDistributionInfoProvider() {\r
-               IDistributionInfoProvider provider = new DistributionInfoProvider();\r
-               return provider;\r
-       }\r
-       \r
-       static class DistributionInfoProvider implements IDistributionInfoProvider {\r
-\r
-               private static final String TDWG = "TDWG Areas";\r
-               private static final String ISO_COUNTRY = "ISO Country Codes";\r
-               private static final String ISO_WATERBODY = "ISO Waterbody Codes";\r
-               private static ILocationService locationService;\r
-               private List<Object> vocabTypes;\r
-               \r
-               /* (non-Javadoc)\r
-                * @see eu.etaxonomy.taxeditor.model.IDistributionInfoProvider#getAbsenceTerms()\r
-                */\r
-               @Override\r
-               public List<AbsenceTerm> getAbsenceTerms() {\r
-                       List<AbsenceTerm> absenceTerms = new ArrayList<AbsenceTerm>();                  \r
-                       absenceTerms.add(AbsenceTerm.ABSENT());\r
-                       return absenceTerms;\r
-               }\r
-\r
-               /* (non-Javadoc)\r
-                * @see eu.etaxonomy.taxeditor.model.IDistributionInfoProvider#getPresenceTerms()\r
-                */\r
-               @Override\r
-               public List<PresenceTerm> getPresenceTerms() {\r
-                       List<PresenceTerm> presenceTerms = new ArrayList<PresenceTerm>();\r
-                       presenceTerms.add(PresenceTerm.CULTIVATED());\r
-                       presenceTerms.add(PresenceTerm.ENDEMIC_FOR_THE_RELEVANT_AREA());\r
-                       presenceTerms.add(PresenceTerm.INTRODUCED());\r
-                       return presenceTerms;\r
-               }\r
-\r
-               /* (non-Javadoc)\r
-                * @see eu.etaxonomy.taxeditor.model.IDistributionInfoProvider#getVocabularyNextLevelAreas(eu.etaxonomy.cdm.model.location.NamedArea)\r
-                */\r
-               @Override\r
-               public List<NamedArea> getVocabularyNextLevelAreas(NamedArea namedArea) {\r
-                       List<NamedArea> namedAreas = new ArrayList<NamedArea>();\r
-                       namedAreas.add(NamedArea.NewInstance("USA", "USA", "USA"));\r
-                       namedAreas.add(NamedArea.NewInstance("Canada", "Canada", "CAN"));\r
-                       namedAreas.add(NamedArea.NewInstance("Mexico", "Mexico", "MEX"));\r
-                       return namedAreas;\r
-               }\r
-\r
-               private ILocationService getLocationService() {\r
-                       if (locationService == null) {\r
-                               locationService = TaxEditorPlugin.getDefault().getApplicationController().getLocationService();\r
-                       }\r
-                       return locationService;\r
-               }\r
-               \r
-               /* (non-Javadoc)\r
-                * @see eu.etaxonomy.taxeditor.model.IDistributionInfoProvider#getVocabularyTopLevelAreas(java.lang.Object)\r
-                */\r
-               @Override\r
-               public List<NamedArea> getVocabularyTopLevelAreas(Object vocabularyType) {\r
-\r
-                       if (!(vocabularyType instanceof NamedAreaVocabularyType)) {\r
-                               return null;\r
-                       }\r
-                       for (Object o :getLocationService().getNamedAreaVocabulary(\r
-                                       (NamedAreaVocabularyType) vocabularyType, NamedAreaLevel.TDWG_LEVEL1(), \r
-                                       NamedAreaType.NATURAL_AREA())) {\r
-                               logger.warn(o.toString());\r
-                       }\r
-                       \r
-                       if (vocabularyType.equals(TDWG)) {\r
-//                             for (Object o : locationService.getNamedAreaTypeVocabulary()) {\r
-//                             for (Object o : locationService.getNamedAreaLevelVocabulary()) {\r
-//                             NamedAreaVocabularyType\r
-//                             for (Object o : locationService.getNamedAreaVocabulary(vocabularyType, namedAreaLevel, namedAreaType) .getNamedAreaLevelVocabulary()) {\r
-//                                     logger.warn(o.toString());\r
-//                             }\r
-                       }\r
-                       if (vocabularyType.equals(ISO_COUNTRY)) {\r
-                               \r
-                       }\r
-                       if (vocabularyType.equals(ISO_WATERBODY)) {\r
-                               \r
-                       }\r
-                       return null;\r
-//                     List<NamedArea> namedAreas = new ArrayList<NamedArea>();\r
-//                     namedAreas.add(NamedArea.NewInstance("North America", "North America", "NA"));\r
-//                     namedAreas.add(NamedArea.NewInstance("Europe", "Europe", "EUR"));\r
-//                     return namedAreas;\r
-               }\r
-\r
-               /* (non-Javadoc)\r
-                * @see eu.etaxonomy.taxeditor.model.IDistributionInfoProvider#getVocabularyTypes()\r
-                */\r
-               @Override\r
-               public List<Object> getVocabularyTypes() {\r
-                       if (vocabTypes == null) {\r
-                               vocabTypes = new ArrayList<Object>();\r
-                               for (NamedAreaVocabularyType vocabType: getLocationService().getNamedAreaVocabularyTypes()) {\r
-                                       vocabTypes.add(vocabType);\r
-                               }\r
-                       }\r
-                               \r
-//                     vocabTypes.add("TDWG Areas");\r
-//                     vocabTypes.add("ISO Country Codes");\r
-//                     vocabTypes.add("ISO Waterbody Codes");\r
-//                     return vocabTypes;\r
-                       return vocabTypes;\r
-               }\r
-\r
-               /* (non-Javadoc)\r
-                * @see eu.etaxonomy.taxeditor.model.IDistributionInfoProvider#getVocabularyTypeLabel()\r
-                */\r
-               @Override\r
-               public String getVocabularyTypeLabel(Object vocabularyType) {\r
-                       if (vocabularyType instanceof String) {\r
-                               return (String) vocabularyType;\r
-                       } else {\r
-                               return vocabularyType.toString();       \r
-                       }\r
-               }\r
-\r
-               /* (non-Javadoc)\r
-                * @see eu.etaxonomy.taxeditor.model.IDistributionInfoProvider#getPresenceAbsenceTermLabel(eu.etaxonomy.cdm.model.description.PresenceTerm)\r
-                */\r
-               @Override\r
-               public String getPresenceAbsenceTermLabel(PresenceAbsenceTermBase term) {\r
-                       return term.getDescription();\r
-               }\r
-\r
-               /* (non-Javadoc)\r
-                * @see eu.etaxonomy.taxeditor.model.IDistributionInfoProvider#getNamedAreaChildren(eu.etaxonomy.cdm.model.location.NamedArea)\r
-                */\r
-               @Override\r
-               public List<NamedArea> getNamedAreaChildren(NamedArea namedArea) {\r
-                       // TODO Auto-generated method stub\r
-                       return null;\r
-               }\r
-\r
-               /* (non-Javadoc)\r
-                * @see eu.etaxonomy.taxeditor.model.IDistributionInfoProvider#getNamedAreaParent(eu.etaxonomy.cdm.model.location.NamedArea)\r
-                */\r
-               @Override\r
-               public NamedArea getNamedAreaParent(NamedArea namedArea) {\r
-                       // TODO Auto-generated method stub\r
-                       return null;\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ICdmSessionDataRepository.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ICdmSessionDataRepository.java
deleted file mode 100644 (file)
index 97a934d..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.model;\r
-\r
-import java.util.Collection;\r
-import java.util.List;\r
-import java.util.Set;\r
-import java.util.SortedSet;\r
-\r
-import org.eclipse.core.databinding.observable.set.IObservableSet;\r
-\r
-import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
-import eu.etaxonomy.cdm.model.common.Language;\r
-import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;\r
-import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.name.TypeDesignationStatus;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-\r
-/**\r
- * All session data - taxa, term vocabularies, etc. - are stored in a\r
- * session data repository. Any CDM data that is stored locally during execution\r
- * should be kept here while the Editor is running. This makes it convenient\r
- * to clear all data in case everything needs to be reloaded, for example, when\r
- * the data source is changed. \r
- * <p>\r
- * The repository uses a CDM application controller to retrieve data.\r
- * <p>\r
- * Any method starting with "add" or "remove" deals with data solely in the session.\r
- * For instance, <code>addTaxon(taxon)</code> will cause a new <code>taxon</code>\r
- * to appear in the taxonomic tree, but will not save it to the CDM data source.\r
- * <p>\r
- * Any method starting with "save" or "delete" will call its corresponding "add"/"remove"\r
- * method, and commit the change to the CDM data source.  \r
- * \r
- * @author p.ciardelli\r
- * @created 16.12.2008\r
- * @version 1.0\r
- */\r
-public interface ICdmSessionDataRepository {\r
-\r
-       /**\r
-        * Returns the root taxa associated with the current data source, and\r
-        * adds them to session data if not already there.\r
-        *  \r
-        * @return\r
-        */\r
-       public Set<Taxon> getRootTaxa();\r
-       \r
-       /**\r
-        * Returns all of a taxon's children, and adds them to session data\r
-        * if not already there.\r
-        *  \r
-        * @param parentTaxon\r
-        * @return\r
-        */\r
-       public Set<Taxon> getTaxonomicChildren(Taxon parentTaxon);\r
-       \r
-       /**\r
-        * Get the default sec. reference used by the current dataset\r
-        * @return\r
-        */\r
-       public ReferenceBase getDefaultSec();\r
-       \r
-       /**\r
-        * Adds a taxon to the repository.\r
-        * \r
-        * @param taxon\r
-        */\r
-       public void addTaxon(Taxon taxon);\r
-\r
-       /**\r
-        * Removes a taxon from the repository.\r
-        * \r
-        * @param taxon\r
-        */\r
-       public void removeTaxon(Taxon taxon);\r
-\r
-       /**\r
-        * Removes all taxa from the repository.\r
-        * replaces clearSessionTaxa\r
-        * \r
-        * @param taxon\r
-        */\r
-       public void removeAllTaxa();\r
-       \r
-       /**\r
-        * This is a set that can be used to be notified when there are changes\r
-        * to the list of all taxa, or to their names, for instance, when the name\r
-        * of a taxon displayed in a tree changes. \r
-        * \r
-        * @return\r
-        */\r
-       public IObservableSet getObservableTaxa();\r
-       \r
-       public void setApplicationController(CdmApplicationController applicationController);\r
-       \r
-       /**\r
-        * Sets all term vocabularies to NULL to be regenerated the next time\r
-        * they are needed, i.e. when a new transaction is opened.\r
-        */\r
-       public void clearNonTaxonData();\r
-\r
-       /**\r
-        * Sets all taxon collections to NULL to be regenerated the next time\r
-        * they are needed.\r
-        */\r
-       public void clearTaxonData();\r
-       \r
-       public void clearAllData();\r
-       \r
-       public void addTaxonSetListener(ICdmTaxonSetListener listener);\r
-\r
-       public Collection<Taxon> getAllTaxa();  \r
-       \r
-       public boolean saveTaxon(Taxon taxon);\r
-       \r
-       public boolean deleteTaxon(Taxon taxon);\r
-\r
-       public void setTaxonomicParent(Taxon taxon, Taxon newParentTaxon);\r
-       \r
-       public List<Feature> getFeatures();\r
-       \r
-       public SortedSet<Rank> getRanks();\r
-       \r
-       public TermVocabulary<NomenclaturalStatusType> getNomStatus();\r
-       \r
-       public SortedSet<NameRelationshipType> getNameRelationshipTypes();\r
-\r
-       public OrderedTermVocabulary<TaxonRelationshipType> getTaxonRelationshipTypes();\r
-       \r
-       public Set<TaxonRelationshipType> getConceptRelationshipTypes();\r
-\r
-       public TermVocabulary<TypeDesignationStatus> getTypeDesignationStatus();\r
-\r
-       /**\r
-        * \r
-        */\r
-       public List<Language> getLanguages();\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ICdmTaxonSetListener.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ICdmTaxonSetListener.java
deleted file mode 100644 (file)
index 147027b..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.model;\r
-\r
-import java.util.Set;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 18.12.2008\r
- * @version 1.0\r
- */\r
-public interface ICdmTaxonSetListener {\r
-\r
-       public void taxaAdded(Set<Taxon> taxa);\r
-       \r
-       public void taxaRemoved(Set<Taxon> taxa);\r
-       \r
-       public void taxonMoved(Taxon taxon, Taxon newParentTaxon);\r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/IDistributionInfoProvider.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/IDistributionInfoProvider.java
deleted file mode 100644 (file)
index 54fce77..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.model;\r
-\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.description.AbsenceTerm;\r
-import eu.etaxonomy.cdm.model.description.PresenceAbsenceTermBase;\r
-import eu.etaxonomy.cdm.model.description.PresenceTerm;\r
-import eu.etaxonomy.cdm.model.location.NamedArea;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 03.04.2009\r
- * @version 1.0\r
- */\r
-public interface IDistributionInfoProvider {\r
-       \r
-       /**\r
-        * i.e. TDWG, ISO\r
-        * \r
-        * @return\r
-        */\r
-       List<Object> getVocabularyTypes();\r
-       \r
-       List<NamedArea> getVocabularyTopLevelAreas(Object vocabularyType);\r
-       \r
-       List<NamedArea> getVocabularyNextLevelAreas(NamedArea namedArea);\r
-               \r
-       List<PresenceTerm> getPresenceTerms();\r
-       \r
-       List<AbsenceTerm> getAbsenceTerms();\r
-\r
-       String getVocabularyTypeLabel(Object vocabularyType);\r
-\r
-       String getPresenceAbsenceTermLabel(PresenceAbsenceTermBase<?> term);\r
-       \r
-       NamedArea getNamedAreaParent(NamedArea namedArea);\r
-       \r
-       List<NamedArea> getNamedAreaChildren(NamedArea namedArea);\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/LanguageUtil.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/LanguageUtil.java
deleted file mode 100644 (file)
index bf6e1bb..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.model;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.common.Language;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 03.04.2009\r
- * @version 1.0\r
- */\r
-public class LanguageUtil {\r
-       private static final Logger logger = Logger.getLogger(LanguageUtil.class);\r
-\r
-       /**\r
-        * @param language\r
-        * @return\r
-        */\r
-       public static String getDescription(Language language) {\r
-               return language.getDescription();\r
-       }\r
-       \r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/NameEditorInput.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/NameEditorInput.java
deleted file mode 100644 (file)
index 6edf7b1..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-package eu.etaxonomy.taxeditor.model;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.ui.IEditorInput;\r
-import org.eclipse.ui.IPersistableElement;\r
-\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-/**\r
- * @author p.ciardelli\r
- *\r
- */\r
-public class NameEditorInput implements IEditorInput {\r
-\r
-       private static final Logger logger = Logger.getLogger(NameEditorInput.class);\r
-       \r
-       private Taxon taxon;\r
-       \r
-       public NameEditorInput (Taxon taxon) {\r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       public boolean exists() {\r
-               // TODO Auto-generated method stub\r
-               return false;\r
-       }\r
-\r
-       public ImageDescriptor getImageDescriptor() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getName() {\r
-               TaxonNameBase name = taxon.getName();\r
-               if (name == null || name.getTitleCache() == null) {\r
-                       return "New taxon";\r
-               } else  {\r
-                       return name.getTitleCache();\r
-               }\r
-       }\r
-\r
-       public IPersistableElement getPersistable() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       public String getToolTipText() {\r
-               return getName();\r
-       }\r
-\r
-       public Object getAdapter(Class adapter) {\r
-\r
-               if (adapter == Taxon.class) {\r
-                       return taxon;\r
-               }\r
-               \r
-               return null;\r
-       }\r
-\r
-    /**\r
-     * Overrides equals to ensure that a taxon can only be edited by\r
-     *  one editor at a time.\r
-     * \r
-     * @return boolean\r
-     */        \r
-       public boolean equals(Object obj) {\r
-               if (obj.getClass().equals(NameEditorInput.class) \r
-                               && taxon.equals(((NameEditorInput) obj).taxon))\r
-                       return true;\r
-               return false;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ReferenceUtil.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/model/ReferenceUtil.java
deleted file mode 100644 (file)
index 448985d..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.model;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.common.ReferencedEntityBase;\r
-import eu.etaxonomy.cdm.model.reference.Generic;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 02.04.2009\r
- * @version 1.0\r
- */\r
-public class ReferenceUtil {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ReferenceUtil.class);\r
-\r
-       /**\r
-        * Returns the entity's citation. If none exists, gives the\r
-        * entity a Generic citation.\r
-        *  \r
-        * @param entity \r
-        * @return\r
-        */\r
-       public static ReferenceBase getOrCreateCitation(ReferencedEntityBase entity) {\r
-               ReferenceBase citation = entity.getCitation();\r
-               if (citation == null) {\r
-                       citation = Generic.NewInstance();\r
-                       entity.setCitation(citation);\r
-               }\r
-               return citation;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/FavoritesTableViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/FavoritesTableViewer.java
deleted file mode 100644 (file)
index 5f12064..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DropTarget;\r
-import org.eclipse.swt.dnd.DropTargetAdapter;\r
-import org.eclipse.swt.dnd.DropTargetEvent;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.actions.TaxonTransfer;\r
-import eu.etaxonomy.taxeditor.actions.ui.OpenTaxonEditorAction;\r
-\r
-public class FavoritesTableViewer extends TableViewer {\r
-\r
-       public FavoritesTableViewer(Composite parent) {\r
-               super(parent, SWT.H_SCROLL | SWT.V_SCROLL);\r
-               this.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               \r
-               // Add content provider\r
-               ObservableListContentProvider favoritesContentProviderList = new ObservableListContentProvider();\r
-               this.setContentProvider(favoritesContentProviderList);\r
-               \r
-               // Label provider that listens for changes to name cache\r
-               IObservableMap[] rnViewerLabelProviderMaps = BeansObservables.observeMaps(favoritesContentProviderList.\r
-//                             getKnownElements(), IFavoritesDraggable.class, new String[]{"label"});\r
-                               getKnownElements(), Taxon.class, new String[]{"name"});\r
-               this.setLabelProvider(new ObservableMapLabelProvider(rnViewerLabelProviderMaps) {\r
-                       \r
-                       /*\r
-                        * JFace databinding syntax makes it to difficult to retrieve\r
-                        *      Taxon.getName().getNameCache, so override function that returns\r
-                        *  label\r
-                        * \r
-                        *  (non-Javadoc)\r
-                        * @see org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider#getColumnText(java.lang.Object, int)\r
-                        */\r
-                       public String getColumnText(Object element, int columnIndex) {\r
-                               return element.toString();\r
-//                             return ((Taxon) element).getName().getTitleCache();\r
-                       }                       \r
-               });\r
-               \r
-               // Listens for new taxa opened for editing\r
-               this.setInput(FavoritesView.getObservableFavorites());\r
-               \r
-               // On double click, open name editor\r
-               this.addDoubleClickListener(new IDoubleClickListener(){\r
-\r
-                       public void doubleClick(DoubleClickEvent event) {\r
-                               Object element = ((StructuredSelection)event.getSelection()).getFirstElement();\r
-                               if (element instanceof Taxon) {\r
-                                       new OpenTaxonEditorAction((Taxon) element).run();\r
-                               }\r
-                       }\r
-               });\r
-               \r
-               // Drop functionality\r
-               Transfer[] types = new Transfer[] {TaxonTransfer.getInstance()};\r
-//             int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_DEFAULT;\r
-               int operations = DND.DROP_COPY;\r
-               DropTarget target = new DropTarget(this.getControl(), operations);\r
-               target.setTransfer(types);\r
-               target.addDropListener(new DropTargetAdapter() {\r
-                       \r
-                       public void dragEnter(DropTargetEvent event) {\r
-                       }\r
-                       \r
-                       public void drop(DropTargetEvent event) {\r
-                               \r
-                               // Add event to favorites list          \r
-                               FavoritesView.addFavorite(event.data);\r
-                       }\r
-               });\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/FavoritesView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/FavoritesView.java
deleted file mode 100644 (file)
index 6d4bafe..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the favoritesComposite of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-/**\r
- * The left navigation pane.\r
- * \r
- * @author p.ciardelli\r
- * @created 27.05.2008\r
- * @version 1.0\r
- */\r
-public class FavoritesView extends ViewPart {\r
-       private static final Logger logger = Logger.getLogger(FavoritesView.class);\r
-               \r
-       private Composite favoritesComposite = null;    \r
-       public static final String ID = "eu.etaxonomy.taxeditor.navigation.favoritesview"; //$NON-NLS-1$\r
-               \r
-       /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               \r
-               parent.setLayout(new FillLayout());\r
-//             GridLayout gridLayout = new GridLayout();\r
-//             gridLayout.horizontalSpacing = 0;\r
-//             gridLayout.marginWidth = 0;\r
-//             gridLayout.marginHeight = 0;\r
-//             gridLayout.verticalSpacing = 0; \r
-                               \r
-               favoritesComposite = new Composite(parent, SWT.NONE);\r
-               favoritesComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               favoritesComposite.setLayout(new GridLayout());\r
-\r
-               Label favoritesLabel = new Label(favoritesComposite, SWT.WRAP);\r
-               favoritesLabel.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               favoritesLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               favoritesLabel.setText("Drag favorite elements into this area for easy access later.");\r
-               \r
-               // TEMPORARY PENDING IMPLEMENTATION - Disable visible fields\r
-               favoritesComposite.setEnabled(false);\r
-               favoritesLabel.setEnabled(false);\r
-               \r
-               new FavoritesTableViewer(favoritesComposite);   \r
-\r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();\r
-       }\r
-       \r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-       \r
-       private static WritableList observableFavoritesList = null;\r
-       \r
-       public static void addFavorite(Object favorite) {\r
-               if (!getObservableFavorites().contains(favorite)) {\r
-                       getObservableFavorites().add(favorite);\r
-               }\r
-       }\r
-       \r
-       public static void removeFavorite(Object favorite) {\r
-               getObservableFavorites().remove(favorite);\r
-       }\r
-       \r
-       public static WritableList getObservableFavorites() {\r
-               if (observableFavoritesList == null) {\r
-                       observableFavoritesList = new WritableList();\r
-               }\r
-               return observableFavoritesList;         \r
-       }\r
-\r
-       public static void clearFavorites() {\r
-               observableFavoritesList = null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/QuickNameTaxon.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/QuickNameTaxon.java
deleted file mode 100644 (file)
index d47be5d..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-/**\r
- * A singleton used as a placeholder in the taxonomic tree when user executes the \r
- * action "Add taxon with quick name". When the user enters a valid (i.e. non "") \r
- * string, the node is replaced with a taxon. Note that this should not be added to\r
- * the session data repository, nor should it be added to its parent taxon's \r
- * taxonomic children.\r
- * \r
- * @see TaxonomicTreeViewer\r
- * @see TaxonomicTreeContentProvider\r
- * \r
- * @author p.ciardelli\r
- * @created 03.02.2009\r
- * @version 1.0\r
- */\r
-public class QuickNameTaxon extends Taxon {\r
-       private static final Logger logger = Logger.getLogger(QuickNameTaxon.class);\r
-       \r
-       private static QuickNameTaxon instance = null;\r
-\r
-       private Taxon parentTaxon;\r
-       \r
-       private QuickNameTaxon(NonViralName name, ReferenceBase sec) {\r
-               super(name, sec);\r
-       }\r
-\r
-       public static QuickNameTaxon getInstance() {\r
-               if (instance == null) {\r
-                       instance = new QuickNameTaxon(null, null);\r
-               }\r
-               return instance;\r
-       }\r
-\r
-       public ReferenceBase getSec() {\r
-               if (parentTaxon == null) {\r
-                       return null;\r
-               } else {\r
-                       return parentTaxon.getSec();\r
-               }\r
-       }\r
-       \r
-       public void setParent(Taxon parentTaxon) {\r
-               this.parentTaxon = parentTaxon;\r
-       }\r
-       \r
-       public Taxon getTaxonomicParent() {\r
-               return parentTaxon;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/RecentNamesTableViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/RecentNamesTableViewer.java
deleted file mode 100644 (file)
index e461095..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.actions.ui.OpenTaxonEditorAction;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-public class RecentNamesTableViewer extends TableViewer {\r
-\r
-       public RecentNamesTableViewer(Composite parent) {\r
-               super(parent, SWT.H_SCROLL | SWT.V_SCROLL);\r
-               \r
-               // Add content provider\r
-               ObservableListContentProvider rnViewerContentProviderList = new ObservableListContentProvider();\r
-               this.setContentProvider(rnViewerContentProviderList);\r
-               \r
-               // Label provider that listens for changes to name cache\r
-               IObservableMap[] rnViewerLabelProviderMaps = BeansObservables.observeMaps(rnViewerContentProviderList.\r
-                               getKnownElements(), Taxon.class, new String[]{"name"});\r
-               this.setLabelProvider(new ObservableMapLabelProvider(rnViewerLabelProviderMaps) {\r
-                       \r
-                       /*\r
-                        * JFace databinding syntax makes it to difficult to retrieve\r
-                        *      Taxon.getName().getNameCache, so override function that returns\r
-                        *  label\r
-                        * \r
-                        *  (non-Javadoc)\r
-                        * @see org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider#getColumnText(java.lang.Object, int)\r
-                        */\r
-                       public String getColumnText(Object element, int columnIndex) {\r
-                               if (element instanceof Taxon) {\r
-                                       return CdmUtil.getDisplayName((Taxon) element); \r
-                               }\r
-                               return null;\r
-                       }                       \r
-               });\r
-               \r
-               // Listens for new taxa opened for editing\r
-               this.setInput(RecentNamesView.getObservableRecentNames());\r
-               \r
-               // On double click, open name editor\r
-               this.addDoubleClickListener(new IDoubleClickListener(){\r
-\r
-                       public void doubleClick(DoubleClickEvent event) {                                                               \r
-                               Taxon taxon = null;\r
-                               try {\r
-                                       taxon = (Taxon) ((StructuredSelection)event.getSelection()).getFirstElement();\r
-                               }catch (Exception e){\r
-                                       e.printStackTrace();\r
-                                       taxon = null;\r
-                               }\r
-                               new OpenTaxonEditorAction(taxon).run();\r
-                       }\r
-               });\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/RecentNamesView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/RecentNamesView.java
deleted file mode 100644 (file)
index 23d6642..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the recentNamesComposite of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-\r
-/**\r
- * The left navigation pane.\r
- * \r
- * @author p.ciardelli\r
- * @created 27.05.2008\r
- * @version 1.0\r
- */\r
-public class RecentNamesView extends ViewPart {\r
-       private static final Logger logger = Logger.getLogger(RecentNamesView.class);\r
-       \r
-       private Composite recentNamesComposite = null;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.navigation.recentnamesview"; //$NON-NLS-1$\r
-       \r
-       /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               \r
-               parent.setLayout(new FillLayout());\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.horizontalSpacing = 0;\r
-               gridLayout.marginWidth = 0;\r
-               gridLayout.marginHeight = 0;\r
-               gridLayout.verticalSpacing = 0; \r
-                               \r
-               recentNamesComposite = new Composite(parent, SWT.NONE);\r
-               recentNamesComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               recentNamesComposite.setLayout(new FillLayout());\r
-\r
-               new RecentNamesTableViewer(recentNamesComposite);\r
-\r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();\r
-       }\r
-       \r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-       \r
-       private static WritableList observableRecentNamesList = null;\r
-       \r
-       public static void addRecentName(Taxon taxon) {\r
-               if (!getObservableRecentNames().contains(taxon)) {\r
-                       getObservableRecentNames().add(taxon);\r
-               }\r
-       }\r
-       \r
-       public static void removeRecentName(Taxon taxon) {\r
-               getObservableRecentNames().remove(taxon);\r
-       }\r
-       \r
-       public static WritableList getObservableRecentNames() {\r
-               if (observableRecentNamesList == null) {\r
-                       observableRecentNamesList = new WritableList();\r
-               }\r
-               return observableRecentNamesList;               \r
-       }\r
-\r
-       public static void clearRecentNames() {\r
-               observableRecentNamesList = null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchResult.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchResult.java
deleted file mode 100644 (file)
index ae0b5d7..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Collection;\r
-import java.util.Iterator;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.common.IdentifiableEntity;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 19.01.2009\r
- * @version 1.0\r
- */\r
-public class SearchResult implements Collection<IdentifiableEntity> {\r
-       private static final Logger logger = Logger.getLogger(SearchResult.class);\r
-\r
-       List<IdentifiableEntity> searchResult = new ArrayList<IdentifiableEntity>();\r
-       \r
-       \r
-       public boolean add(IdentifiableEntity e) {\r
-               return searchResult.add(e);\r
-       }\r
-\r
-       \r
-       public boolean addAll(Collection<? extends IdentifiableEntity> c) {\r
-               return searchResult.addAll(c);\r
-       }\r
-\r
-       \r
-       public void clear() {\r
-               searchResult.clear();\r
-       }\r
-\r
-       \r
-       public boolean contains(Object o) {\r
-               return searchResult.contains(o);\r
-       }\r
-\r
-       \r
-       public boolean containsAll(Collection<?> c) {\r
-               return searchResult.containsAll(c);\r
-       }\r
-\r
-       \r
-       public boolean isEmpty() {\r
-               return searchResult.isEmpty();\r
-       }\r
-\r
-       \r
-       public Iterator<IdentifiableEntity> iterator() {\r
-               return searchResult.iterator();\r
-       }\r
-\r
-       \r
-       public boolean remove(Object o) {\r
-               return searchResult.remove(o);\r
-       }\r
-\r
-       \r
-       public boolean removeAll(Collection<?> c) {\r
-               return searchResult.removeAll(c);\r
-       }\r
-\r
-       \r
-       public boolean retainAll(Collection<?> c) {\r
-               return searchResult.retainAll(c);\r
-       }\r
-\r
-       \r
-       public int size() {\r
-               return searchResult.size();\r
-       }\r
-\r
-       \r
-       public Object[] toArray() {\r
-               return searchResult.toArray();\r
-       }\r
-\r
-       \r
-       public <T> T[] toArray(T[] a) {\r
-               return searchResult.toArray(a);\r
-       }\r
-\r
-       String searchString; \r
-       \r
-       public String getSearchString() {\r
-               return searchString;\r
-       }\r
-       \r
-       public void setSearchString(String searchString) {\r
-               this.searchString = searchString;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchResultView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchResultView.java
deleted file mode 100644 (file)
index c37d0e0..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.jface.viewers.ArrayContentProvider;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.LabelProvider;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import eu.etaxonomy.cdm.model.common.IdentifiableEntity;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 19.01.2009\r
- * @version 1.0\r
- */\r
-public class SearchResultView extends ViewPart {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(SearchResultView.class);\r
-\r
-       public static final String ID = "eu.etaxonomy.taxeditor.navigation.searchresultview"; //$NON-NLS-1$\r
-\r
-       private TableViewer resultViewer;\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               resultViewer = new TableViewer(parent, SWT.BORDER);\r
-               resultViewer.setContentProvider(new ArrayContentProvider());\r
-               resultViewer.setLabelProvider(new LabelProvider() {\r
-                       public String getText(Object element) {\r
-                               if (element instanceof IdentifiableEntity) {\r
-                                       if(element instanceof TaxonBase){\r
-                                               // TODO we want to stylize the text (color, font-style etc.)\r
-                                               if(element instanceof Taxon){\r
-                                                       return "Taxon: " + ((TaxonBase) element).getTitleCache();\r
-                                               }else{\r
-                                                       return "Synonym: " + ((TaxonBase) element).getTitleCache();\r
-                                               }\r
-                                       }else{\r
-                                               return "Name: " + super.getText(element);\r
-                                       }\r
-                               }\r
-                               return super.getText(element);\r
-                       }\r
-               });\r
-               resultViewer.addDoubleClickListener(new IDoubleClickListener() {\r
-                       public void doubleClick(DoubleClickEvent event) {\r
-                               TaxonBase taxonBase = null;\r
-                               try {\r
-                                       \r
-                                       IdentifiableEntity selection = (IdentifiableEntity) ((StructuredSelection) event.getSelection()).getFirstElement();\r
-                                       \r
-                                       if(selection instanceof TaxonBase){\r
-                                               EditorController.openTaxonEditor((TaxonBase) selection);\r
-                                       }\r
-                               } catch (Exception e) {\r
-                                       logger.error("Error opening editor from search result", e);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.part.WorkbenchPart#setFocus()\r
-        */\r
-       @Override\r
-       public void setFocus() {\r
-\r
-       }\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolBarManager = getViewSite().getActionBars().getToolBarManager();\r
-       }\r
-\r
-       public void setResult(SearchResult searchResult) {\r
-               resultViewer.setInput(searchResult); \r
-               setPartName("Search: '" + searchResult.getSearchString() + "'");\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/SearchView.java
deleted file mode 100644 (file)
index d046d8e..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.IToolBarManager;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.KeyAdapter;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Text;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.taxeditor.controller.SearchController;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * The left navigation pane.\r
- * \r
- * @author p.ciardelli\r
- * @created 27.05.2008\r
- * @version 1.0\r
- */\r
-public class SearchView extends ViewPart {\r
-       private static final Logger logger = Logger.getLogger(SearchView.class);\r
-       \r
-       private Text searchText;\r
-       private Composite searchComposite = null;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.navigation.searchview"; //$NON-NLS-1$\r
-\r
-       private Label noResultsLabel;\r
-\r
-       private Button searchButton;\r
-       \r
-       /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-               \r
-               parent.setLayout(new FillLayout());\r
-\r
-               searchComposite = new Composite(parent, SWT.NONE);\r
-               searchComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               searchComposite.setLayout(gridLayout);\r
-               \r
-               searchText = new Text(searchComposite, SWT.BORDER);\r
-               searchText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-               searchText.setText("Use \"*\" for wildcard searching");\r
-               final GridData gd_useForText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               searchText.setLayoutData(gd_useForText);\r
-               searchText.addFocusListener(new FocusListener() {\r
-\r
-                       public void focusGained(FocusEvent e) {\r
-                               searchText.setForeground(SWTResourceManager.getColor(0,0,0));\r
-                               searchText.setText("");\r
-                       }\r
-\r
-                       public void focusLost(FocusEvent e) {\r
-                               if (searchText.getText() == "") {\r
-                                       searchText.setForeground(SWTResourceManager.getColor(192, 192, 192));\r
-                                       searchText.setText("Use \"*\" for wildcard searching");                                 \r
-                               }       \r
-                       }\r
-               });\r
-               searchText.addKeyListener(new KeyAdapter() {\r
-                       public void keyReleased(KeyEvent e) {\r
-                               int key = e.keyCode;\r
-                               if (key == SWT.CR) {\r
-                                       populateSearchResults();\r
-                               } else {\r
-                                       setSearchButtonEnabled();\r
-                               }\r
-                       }\r
-               });\r
-               \r
-               searchButton = new Button(searchComposite, SWT.NONE);\r
-               searchButton.setText("Search");\r
-               searchButton.setEnabled(false);\r
-               searchButton.addMouseListener(new MouseAdapter() {\r
-                       \r
-                       // Populate search results resultsTable after clicking button\r
-                       public void mouseUp(MouseEvent e) {\r
-                               populateSearchResults();\r
-                       }\r
-               });\r
-\r
-               noResultsLabel = new Label(searchComposite, SWT.NONE);\r
-               noResultsLabel.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));\r
-               noResultsLabel.setText("0 results found.");\r
-               noResultsLabel.setVisible(false);\r
-               noResultsLabel.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-\r
-               // TEMPORARY PENDING IMPLEMENTATION - Disable visible fields\r
-//             searchButton.setEnabled(false);\r
-               \r
-               createActions();\r
-               initializeToolBar();\r
-               initializeMenu();\r
-       }\r
-       \r
-       protected void setSearchButtonEnabled() {\r
-               if (searchText.getText().length() == 0) {\r
-                       searchButton.setEnabled(false);\r
-               } else {\r
-                       searchButton.setEnabled(true);                  \r
-               }\r
-       }\r
-\r
-       protected void populateSearchResults() {\r
-//             UiUtil.openSearchResultsView(null);\r
-\r
-               noResultsLabel.setVisible(false);\r
-               if (searchText.getText().length() > 0) {\r
-                       \r
-                       // Query CDM with search text\r
-                       SearchResult searchResult = CdmUtil.searchTaxaByName(searchText.getText());\r
-                       searchResult.setSearchString(searchText.getText());\r
-//                     List<TaxonNameBase> results = CdmUtil.searchNameString(searchText.getText());\r
-                       \r
-                       // If there are results, open a view in the center pane\r
-                       if (searchResult.size() > 0) {\r
-                               SearchController.openSearchResultsView(searchResult);\r
-                       } else {\r
-                       \r
-                               // Display "no results found" message\r
-                               logger.warn("no results found");\r
-//                             noResultsLabel.setText("No results found for '" + searchText.getText() + "'");\r
-                               noResultsLabel.setVisible(true);\r
-                       }                               \r
-               }\r
-       }\r
-\r
-       private void createActions() {\r
-               // Create the actions\r
-       }\r
-\r
-       /**\r
-        * Initialize the toolbar\r
-        */\r
-       private void initializeToolBar() {\r
-               IToolBarManager toolbarManager = getViewSite().getActionBars()\r
-                               .getToolBarManager();\r
-       }\r
-\r
-       /**\r
-        * Initialize the menu\r
-        */\r
-       private void initializeMenu() {\r
-               IMenuManager menuManager = getViewSite().getActionBars()\r
-                               .getMenuManager();\r
-       }\r
-\r
-       @Override\r
-       public void setFocus() {\r
-               // Set the focus\r
-       }       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeContentProvider.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeContentProvider.java
deleted file mode 100644 (file)
index 76cf58b..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Collection;\r
-import java.util.List;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.viewers.ITreeContentProvider;\r
-import org.eclipse.jface.viewers.Viewer;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 27.06.2008\r
- * @version 1.0\r
- */\r
-public class TaxonomicTreeContentProvider implements ITreeContentProvider {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxonomicTreeContentProvider.class);\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * \r
-        * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)\r
-        */\r
-       public Object[] getChildren(Object parentElement) {\r
-               \r
-               String errorMessage = "getChildren(parentElement) called with non-Taxon element.";\r
-               \r
-               // Make sure we are dealing with taxon objects\r
-               Assert.isTrue(\r
-                               parentElement instanceof Taxon || parentElement instanceof Collection,\r
-                               errorMessage);\r
-               \r
-               // Return children for a single taxon\r
-               if (parentElement instanceof Taxon) {\r
-                       return getTaxonChildren((Taxon) parentElement).toArray();\r
-               }\r
-\r
-               // Return children for a collection of taxa\r
-               List<Taxon> children = new ArrayList<Taxon>();\r
-               for (Object parent : (Collection) parentElement) {\r
-\r
-                       Assert.isTrue(parent instanceof Taxon, errorMessage);\r
-                       children.addAll(getTaxonChildren((Taxon) parent));\r
-               }\r
-               return children.toArray();\r
-       }\r
-\r
-       private Set<Taxon> getTaxonChildren(Taxon parentTaxon) {\r
-               Set<Taxon> children = \r
-                               CdmSessionDataRepository.getDefault().getTaxonomicChildren(parentTaxon);\r
-       \r
-               // BUG - Somehow when a child taxon 1) is added with "add quick name", 2) is the\r
-               //      parent taxon's only child, and 3) is then deleted, the QuickNameTaxon singleton\r
-               //      shows up in the parent taxon's children after it is deleted and therefore pops\r
-               //      back up in the tree\r
-               children.remove(QuickNameTaxon.getInstance());\r
-                               \r
-               if (isQuickNameParent(parentTaxon)) {\r
-                       children.add(QuickNameTaxon.getInstance());\r
-               }\r
-               \r
-               return children;\r
-       }\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * \r
-        * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)\r
-        */\r
-       public Object getParent(Object element) {\r
-               \r
-               Assert.isTrue(element instanceof Taxon, \r
-                               "getParent(element) called with non-Taxon element.");\r
-               \r
-               return ((Taxon) element).getTaxonomicParent();\r
-       }\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * \r
-        * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)\r
-        */\r
-       public boolean hasChildren(Object element) {\r
-               Assert.isTrue(element instanceof Taxon, \r
-                               "hasChildren(element) called with non-Taxon element.");\r
-               \r
-               Taxon taxon = (Taxon) element;\r
-               \r
-               if (isQuickNameParent(taxon)) {\r
-                       return true;\r
-               } else {\r
-                       return taxon.getTaxonomicChildrenCount() > 0;\r
-               }\r
-       }\r
-\r
-       public boolean isQuickNameParent(Taxon taxon) {\r
-               return taxon.equals(QuickNameTaxon.getInstance().getTaxonomicParent());\r
-       }\r
-       \r
-       /*\r
-        * (non-Javadoc)\r
-        * \r
-        * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)\r
-        */\r
-       public Object[] getElements(Object inputElement) {              \r
-               return CdmSessionDataRepository.getDefault().getRootTaxa().toArray();\r
-       }\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * \r
-        * @see org.eclipse.jface.viewers.IContentProvider#dispose()\r
-        */\r
-       public void dispose() {}\r
-\r
-       /*\r
-        * (non-Javadoc)\r
-        * \r
-        * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer,\r
-        *      java.lang.Object, java.lang.Object)\r
-        */\r
-       public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {\r
-               // TODO Auto-generated method stub\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeLabelProvider.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeLabelProvider.java
deleted file mode 100644 (file)
index 8b04a6a..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.map.IMapChangeListener;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.core.databinding.observable.map.MapChangeEvent;\r
-import org.eclipse.core.databinding.observable.set.IObservableSet;\r
-import org.eclipse.jface.viewers.ColumnLabelProvider;\r
-import org.eclipse.jface.viewers.LabelProviderChangedEvent;\r
-import org.eclipse.swt.graphics.Image;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.editor.name.IterableSynonymyList;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 29.05.2008\r
- * @version 1.0\r
- */\r
-public class TaxonomicTreeLabelProvider extends ColumnLabelProvider {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxonomicTreeLabelProvider.class);\r
-       \r
-       private final IObservableMap[] attributeMaps;\r
-\r
-       private IMapChangeListener mapChangeListener = new IMapChangeListener() {\r
-               public void handleMapChange(MapChangeEvent event) {\r
-                       Set affectedElements = event.diff.getChangedKeys();\r
-                       LabelProviderChangedEvent newEvent = new LabelProviderChangedEvent(\r
-                                       TaxonomicTreeLabelProvider.this, affectedElements\r
-                                                       .toArray());\r
-                       fireLabelProviderChanged(newEvent);\r
-               }\r
-       };\r
-\r
-       \r
-       public TaxonomicTreeLabelProvider(IObservableSet observableTaxonSet) {\r
-               this(BeansObservables.observeMaps(\r
-                               observableTaxonSet, \r
-                               Taxon.class, new String[]{"name"}));\r
-       }\r
-       \r
-       /**\r
-        * @param attributeMap\r
-        */\r
-       public TaxonomicTreeLabelProvider(IObservableMap attributeMap) {\r
-               this(new IObservableMap[] { attributeMap });\r
-       }\r
-\r
-       /**\r
-        * @param attributeMaps\r
-        */\r
-       public TaxonomicTreeLabelProvider(IObservableMap[] attributeMaps) {\r
-               System.arraycopy(attributeMaps, 0, this.attributeMaps = attributeMaps, 0, attributeMaps.length);\r
-               for (int i = 0; i < attributeMaps.length; i++) {\r
-                       attributeMaps[i].addMapChangeListener(mapChangeListener);\r
-               }\r
-       }\r
-       \r
-       /** \r
-        * \r
-        * @see org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider#getColumnImage(java.lang.Object, int)\r
-        **/\r
-       public Image getColumnImage(Object element, int columnIndex) {\r
-               if (element instanceof Taxon) {\r
-                       TaxonNameBase name = ((Taxon) element).getName();\r
-                       if (name != null && name.getHasProblem()) {\r
-                               return TaxEditorPlugin.getDefault().getImage(ITaxEditorConstants.WARNING_ICON);\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-       \r
-       public String getText(Object element) {\r
-               return getColumnText(element, 0);\r
-       }\r
-       \r
-       /**\r
-        * JFace databinding syntax makes it to difficult to retrieve\r
-        *      Taxon.getName().getNameCache, so override function that returns\r
-        *  label\r
-        * \r
-        *  (non-Javadoc)\r
-        * @see org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider#getColumnText(java.lang.Object, int)\r
-        **/\r
-       public String getColumnText(Object element, int columnIndex) {\r
-               if (element instanceof Taxon) {\r
-                       return CdmUtil.getDisplayName((Taxon) element);                                 \r
-               }\r
-               return "";\r
-       }       \r
-\r
-       public String getToolTipText(Object element) {\r
-               if (element instanceof Taxon) {\r
-                       return getSynonymyListDisplay((Taxon) element);\r
-               }\r
-               return null;\r
-       }\r
-       \r
-       public void dispose() {\r
-               for (int i = 0; i < attributeMaps.length; i++) {\r
-                       attributeMaps[i].removeMapChangeListener(mapChangeListener);\r
-               }\r
-               super.dispose();\r
-       }\r
-       \r
-       /**\r
-        * @param taxon \r
-        * @return\r
-        */\r
-       private String getSynonymyListDisplay(Taxon taxon) {\r
-               IterableSynonymyList synonymyList = new IterableSynonymyList(\r
-                               taxon);\r
-               String synonymyListDisplay = CdmUtil\r
-                               .getDisplayName(taxon);\r
-               \r
-               for (TaxonBase synonymOrMisName : synonymyList) {\r
-                       TaxonNameBase name = synonymOrMisName.getName();\r
-                       if (name != null) {\r
-                               synonymyListDisplay += "\n      "\r
-                                               + CdmUtil.getDisplayName(name);\r
-                       }\r
-               }\r
-               return synonymyListDisplay;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeView.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeView.java
deleted file mode 100644 (file)
index d6b188f..0000000
+++ /dev/null
@@ -1,357 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import java.util.List;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.action.GroupMarker;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.MenuItem;\r
-import org.eclipse.ui.IWorkbenchActionConstants;\r
-import org.eclipse.ui.forms.IManagedForm;\r
-import org.eclipse.ui.forms.ManagedForm;\r
-import org.eclipse.ui.forms.events.HyperlinkAdapter;\r
-import org.eclipse.ui.forms.events.HyperlinkEvent;\r
-import org.eclipse.ui.forms.widgets.Hyperlink;\r
-import org.eclipse.ui.forms.widgets.TableWrapLayout;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import com.swtdesigner.ResourceManager;\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.cdm.database.DatabaseTypeEnum;\r
-import eu.etaxonomy.cdm.database.ICdmDataSource;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.datasource.CdmDataSourceDialog;\r
-import eu.etaxonomy.taxeditor.datasource.CdmDataSourceRepository;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.ICdmTaxonSetListener;\r
-\r
-/**\r
- * The panel containing the taxonomic tree.\r
- * \r
- * @author p.ciardelli\r
- * @created 27.05.2008\r
- * @version 1.0\r
- */\r
-public class TaxonomicTreeView extends ViewPart {\r
-       private static final Logger logger = Logger.getLogger(TaxonomicTreeView.class);\r
-       \r
-       private Composite dbComposite;\r
-       private Composite taxTreeComposite = null;\r
-       public static final String ID = "eu.etaxonomy.taxeditor.navigation.taxonomictreeview"; //$NON-NLS-1$\r
-       \r
-       private TaxonomicTreeViewer treeViewer;\r
-       private IManagedForm hyperlinkForm;\r
-       private Menu dataSourceMenu;\r
-\r
-       private Label lblDataSource;\r
-\r
-       private Label lblDataSourceTitle;\r
-\r
-       private Composite dbCompositeSub;\r
-       \r
-       /**\r
-        * Create contents of the view part\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public void createPartControl(Composite parent) {\r
-                                                               \r
-               // Create top composite\r
-               FillLayout fillLayout = new FillLayout();\r
-               fillLayout.marginWidth = 0;\r
-               fillLayout.marginHeight = 0;\r
-               fillLayout.type = SWT.VERTICAL; \r
-               parent.setLayout(fillLayout);\r
-\r
-               // Create composite for DB\r
-               dbComposite = new Composite(parent, SWT.NONE);\r
-               dbComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.horizontalSpacing = 0;\r
-               gridLayout.marginWidth = 0;\r
-               gridLayout.marginHeight = 0;\r
-               gridLayout.verticalSpacing = 5; \r
-               dbComposite.setLayout(gridLayout);              \r
-               dbComposite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               \r
-               dbCompositeSub = new Composite(dbComposite, SWT.NULL);\r
-               dbCompositeSub.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               dbCompositeSub.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               GridLayout gridLayout1 = new GridLayout();\r
-               gridLayout1.numColumns = 2;\r
-               dbCompositeSub.setLayout(gridLayout1);\r
-\r
-               lblDataSourceTitle = new Label(dbCompositeSub, SWT.NONE);\r
-               lblDataSourceTitle.setFont(SWTResourceManager.getFont("Arial", 14, SWT.BOLD));\r
-               lblDataSourceTitle.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDataSourceTitle.setAlignment(SWT.CENTER);\r
-               \r
-               // Create DB label\r
-               final Label lblDatasourceMenu = new Label(dbCompositeSub, SWT.NONE);\r
-               lblDatasourceMenu.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, true, false));\r
-               lblDatasourceMenu.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               lblDatasourceMenu.setImage(ResourceManager.getPluginImage(TaxEditorPlugin.getDefault(), "icons/db.gif"));\r
-               lblDatasourceMenu.setImage(TaxEditorPlugin.getDefault().getImageRegistry().get(ITaxEditorConstants.DB_ICON));\r
-\r
-               // Create menu to hang from DB label\r
-               dataSourceMenu = new Menu(lblDatasourceMenu);\r
-               lblDatasourceMenu.setMenu(dataSourceMenu);\r
-               lblDatasourceMenu.addMouseListener(new MouseAdapter() {\r
-                       public void mouseDown(MouseEvent e) {\r
-                               dataSourceMenu.setVisible(true);\r
-                       }\r
-               });\r
-               createDataSourceMenu();\r
-\r
-               // Create string "jdbc:mysql://192. ..."\r
-               lblDataSource = new Label(dbCompositeSub, SWT.WRAP);            \r
-               final GridData gd_lblDataSource = new GridData(SWT.LEFT, SWT.CENTER, true, false, 2, 1);\r
-               gd_lblDataSource.horizontalIndent = 5;\r
-               lblDataSource.setLayoutData(gd_lblDataSource);\r
-               lblDataSource.setFont(SWTResourceManager.getFont("Arial", 8, SWT.NONE));\r
-               lblDataSource.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-                               \r
-               setDataSourceText();\r
-\r
-               // Create composite for taxonomic tree\r
-               taxTreeComposite = new Composite(dbComposite, SWT.NONE);\r
-               taxTreeComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               taxTreeComposite.setLayout(new FillLayout());\r
-               taxTreeComposite.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-               \r
-               // If there are no root taxa, provide a link to create this tree's initial root taxon\r
-               if (CdmSessionDataRepository.getDefault().getRootTaxa().size() == 0) {\r
-                       \r
-                       hyperlinkForm = new ManagedForm(taxTreeComposite);\r
-                       Composite linkBody = hyperlinkForm.getForm().getBody();\r
-                       \r
-                       TableWrapLayout linkLayout = new TableWrapLayout();\r
-                       linkLayout.leftMargin = 20;\r
-                       linkLayout.rightMargin = 20;\r
-                       linkBody.setLayout(linkLayout);\r
-                       linkBody.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
-                       \r
-                       Hyperlink link = hyperlinkForm.getToolkit().createHyperlink(linkBody, \r
-                                       "Your data source is empty. Click here to create a root taxon.", SWT.WRAP);\r
-                       link.addHyperlinkListener(new HyperlinkAdapter() {\r
-                               @Override\r
-                               public void linkActivated(HyperlinkEvent e) {\r
-                                       EditorController.openUnitializedRootTaxon();\r
-                               }                               \r
-                       });\r
-                                               \r
-                       treeViewer = null;\r
-                       \r
-               } else {\r
-                       createTreeViewer();\r
-               }\r
-\r
-//             createActions();\r
-//             initializeToolBar();\r
-//             initializeMenu();\r
-               \r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       private void setDataSourceText() {\r
-               ICdmDataSource dataSource = CdmDataSourceRepository.getDefault().getCurrentDataSource();\r
-               \r
-               try{\r
-                       lblDataSource.setText(dataSource.getDatabaseType().getConnectionString(dataSource));\r
-               }catch(NullPointerException e){\r
-                       logger.error("Unable to set the connection string for the current dataSource. Reason:", e);\r
-               }\r
-               \r
-               lblDataSourceTitle.setText(getDataSourceName(dataSource));\r
-\r
-               dbCompositeSub.layout();\r
-               dbComposite.layout();\r
-       }\r
-\r
-       private void createDataSourceMenu() {\r
-\r
-               // Create entry to open data source dialog\r
-               new MenuItem(dataSourceMenu, SWT.SEPARATOR);\r
-               final MenuItem newDataSourceMenuItem = new MenuItem(dataSourceMenu, SWT.NONE);\r
-               newDataSourceMenuItem.setText("Edit data sources ...");\r
-               newDataSourceMenuItem.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent event) {\r
-                               showDataSourceDialog();\r
-                       }\r
-               });\r
-               \r
-               // Add data sources to menu\r
-               refreshDataSources();\r
-       }\r
-\r
-       private void showDataSourceDialog() {\r
-               Dialog dialog = new CdmDataSourceDialog(GlobalController.getShell());\r
-               dialog.open();\r
-               \r
-               // Refresh menu to reflect any changes in data \r
-               refreshDataSources();\r
-       }\r
-       \r
-       private void refreshDataSources() {\r
-               \r
-               // First dispose of any entries that are already there\r
-               for (MenuItem menuItem : dataSourceMenu.getItems()) {\r
-                       if (menuItem.getData() instanceof ICdmDataSource) {\r
-                               menuItem.dispose();\r
-                       }\r
-               }\r
-                               \r
-               // Get current datasource and list of all data sources \r
-               ICdmDataSource sessionDataSource = CdmDataSourceRepository.getDefault().\r
-                               getCurrentDataSource();\r
-               List<ICdmDataSource> dataSources = \r
-                               CdmDataSourceRepository.getDefault().getAll();\r
-               \r
-               // Create menu items, putting a check next to the current one\r
-               for (ICdmDataSource dataSource : dataSources) {\r
-                       \r
-                       // Always add menu item to index 0, i.e. at the beginning of the menu\r
-                       MenuItem item = new MenuItem(dataSourceMenu, SWT.CHECK, 0);\r
-                       \r
-                       // If this is the current data source, put a check by it\r
-                       if (dataSource.equals(sessionDataSource)) {\r
-                               item.setSelection(true);\r
-                       }\r
-                       \r
-                       // Make a nice little name string out of this mutha\r
-//                     String text = dataSource.getName();\r
-//                     if (!dataSource.getDatabaseType().equals(DatabaseTypeEnum.H2)) {\r
-//                             if (dataSource.getDatabase() != null) {\r
-//                                     text += " (" + dataSource.getDatabaseType().getName() + ")";\r
-//                             }\r
-//                     }\r
-                       String text = getDataSourceName(dataSource);\r
-                       item.setText(text);\r
-                       item.setData(dataSource);\r
-                       \r
-                       // On selection, make this the current data source\r
-                       item.addSelectionListener(new SelectionAdapter() {\r
-                               public void widgetSelected(SelectionEvent e) {\r
-                                       \r
-                                       // Make sure widget has a datasource in its data field\r
-                                       if (!(e.widget.getData() instanceof ICdmDataSource)) {\r
-                                               return;\r
-                                       }\r
-                                       \r
-                                       // Get the datasource from the widget's data field\r
-                                       ICdmDataSource dataSource = (ICdmDataSource) e.widget.getData(); \r
-                                               \r
-                                       // Make sure this isn't already selected\r
-                                       if (dataSource.equals(CdmDataSourceRepository.getDefault().getCurrentDataSource())) {\r
-                                               \r
-                                               // Make sure it remains checked, then return\r
-                                               if (e.widget instanceof MenuItem) {\r
-                                                       ((MenuItem) e.widget).setSelection(true);\r
-                                               }\r
-                                               return;\r
-                                       }\r
-                                       \r
-                                       // Set datasource in widget's data to current datasource\r
-                                       CdmDataSourceRepository.getDefault().setCurrentDataSource(dataSource);\r
-                                       \r
-                                       // Deselect all other datasources\r
-                                       for (MenuItem item : dataSourceMenu.getItems()) {\r
-                                               if (item.getData() != null && !item.getData().equals(dataSource)) {\r
-                                                       item.setSelection(false);\r
-                                               }\r
-                                       }\r
-                                       \r
-                                       setDataSourceText();\r
-                               }\r
-                       });\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * @param dataSource\r
-        * @return\r
-        */\r
-       private String getDataSourceName(ICdmDataSource dataSource) {\r
-               String text = dataSource.getName();\r
-               if (!dataSource.getDatabaseType().equals(DatabaseTypeEnum.H2)) {\r
-                       if (dataSource.getDatabase() != null) {\r
-                               text += " (" + dataSource.getDatabaseType().getName() + ")";\r
-                       }\r
-               }\r
-               return text;\r
-       }\r
-\r
-       public TaxonomicTreeViewer createTreeViewer() {\r
-               \r
-               // Dispose link to new taxon as necessary\r
-               if (hyperlinkForm != null) {\r
-                       hyperlinkForm.getForm().dispose();\r
-               }\r
-                               \r
-               // Create tree\r
-               treeViewer = new TaxonomicTreeViewer(taxTreeComposite);\r
-               \r
-               ((TaxonomicTreeViewer) treeViewer).createDoubleClickListener();\r
-               // TODO old menu implementation remove when the new one works well\r
-//             ((TaxonomicTreeViewer) treeViewer).createMenu();\r
-               ((TaxonomicTreeViewer) treeViewer).createQuickAdd();\r
-               ((TaxonomicTreeViewer) treeViewer).createDragAndDrop();\r
-                               \r
-               taxTreeComposite.layout();\r
-               \r
-               // register context menu\r
-               MenuManager menuMgr = new MenuManager();\r
-               menuMgr.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));\r
-               getSite().registerContextMenu(menuMgr, treeViewer);\r
-\r
-               Control control = treeViewer.getControl();\r
-               Menu menu = menuMgr.createContextMenu(control);\r
-               control.setMenu(menu);  \r
-               \r
-               return treeViewer;\r
-       }\r
-       \r
-       public void setFocus() {\r
-               // Set the focus\r
-       }\r
-       \r
-       /**\r
-        * Expose TreeViewer, i.e. to manipulate tree nodes\r
-        * @return\r
-        */\r
-       public TaxonomicTreeViewer getTreeViewer() {\r
-               return treeViewer;\r
-       }\r
-}\r
-\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeViewer.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/navigation/TaxonomicTreeViewer.java
deleted file mode 100644 (file)
index f96edb3..0000000
+++ /dev/null
@@ -1,455 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.navigation;\r
-\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.commands.operations.IUndoableOperation;\r
-import org.eclipse.core.databinding.observable.set.IObservableSet;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.action.IMenuListener;\r
-import org.eclipse.jface.action.IMenuManager;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.jface.action.Separator;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.jface.resource.ImageDescriptor;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.jface.viewers.ColumnViewerToolTipSupport;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.ICellEditorListener;\r
-import org.eclipse.jface.viewers.ICellModifier;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.ITreeContentProvider;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TextCellEditor;\r
-import org.eclipse.jface.viewers.TreePath;\r
-import org.eclipse.jface.viewers.TreeSelection;\r
-import org.eclipse.jface.viewers.TreeViewer;\r
-import org.eclipse.jface.viewers.ViewerComparator;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.dnd.DND;\r
-import org.eclipse.swt.dnd.DragSource;\r
-import org.eclipse.swt.dnd.DragSourceAdapter;\r
-import org.eclipse.swt.dnd.DragSourceEvent;\r
-import org.eclipse.swt.dnd.DropTarget;\r
-import org.eclipse.swt.dnd.DropTargetAdapter;\r
-import org.eclipse.swt.dnd.DropTargetEvent;\r
-import org.eclipse.swt.dnd.Transfer;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.Tree;\r
-import org.eclipse.swt.widgets.TreeItem;\r
-\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.actions.TaxonTransfer;\r
-import eu.etaxonomy.taxeditor.actions.cdm.DeleteTaxonAction;\r
-import eu.etaxonomy.taxeditor.actions.ui.OpenNewTaxonEditorAction;\r
-import eu.etaxonomy.taxeditor.actions.ui.OpenTaxonEditorAction;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-import eu.etaxonomy.taxeditor.editor.name.CdmParserController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.model.ICdmTaxonSetListener;\r
-import eu.etaxonomy.taxeditor.operations.MoveTaxonOperation;\r
-\r
-/**\r
- * Taxon tree viewer which responds to events within individual taxa.\r
- * \r
- * Good overview of TreeViewer:\r
- * http://www.eclipse.org/articles/Article-TreeViewer/TreeViewerArticle.htm\r
- * \r
- * @author p.ciardelli\r
- * @created 06.05.2008\r
- * @version 1.0\r
- */\r
-public class TaxonomicTreeViewer extends TreeViewer{\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxonomicTreeViewer.class);\r
-\r
-       private Tree tree;\r
-       \r
-       private IUndoContext undoContext;\r
-\r
-       private boolean initialized = false;\r
-\r
-       /**\r
-        * Creates a lazy-loading taxonomic tree that is sorted by TitleCache, and\r
-        * which listens for name changes and new taxa\r
-        * \r
-        * @param parent\r
-        */\r
-       public TaxonomicTreeViewer(Composite parent) {\r
-\r
-               // SW.VIRTUAL causes nodes to be loaded on-demand, improving performance\r
-               super(parent, SWT.VIRTUAL);\r
-\r
-               undoContext = GlobalController.getWorkbenchUndoContext();\r
-               \r
-               tree = this.getTree();\r
-               tree.setLinesVisible(false);\r
-               tree.setHeaderVisible(false);\r
-\r
-               createContent();\r
-               createToolTips();\r
-\r
-               initialized = true;\r
-       }\r
-\r
-       public boolean isInitialized() {\r
-               return initialized;\r
-       }\r
-\r
-       /**\r
-        * Tool tips are used to show warnings; there is no tooltip mechanism for\r
-        * individual tree items out-of-the-box, so tipListener below builds one\r
-        */\r
-       private void createToolTips() {\r
-               ColumnViewerToolTipSupport.enableFor(this);\r
-       }\r
-       \r
-       void createDragAndDrop() {\r
-               final Tree tree = this.getTree();\r
-               Transfer[] types = new Transfer[] { TaxonTransfer.getInstance() };\r
-               int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK;\r
-\r
-               final DragSource source = new DragSource(tree, operations);\r
-               source.setTransfer(types);\r
-               final TreeItem[] dragSourceItem = new TreeItem[1];\r
-               source.addDragListener(new DragSourceAdapter() {\r
-                       public void dragStart(DragSourceEvent event) {\r
-                               TreeItem[] selection = tree.getSelection();\r
-                               if (selection.length > 0) {\r
-                                       event.doit = true;\r
-                                       dragSourceItem[0] = selection[0];\r
-                               } else {\r
-                                       event.doit = false;\r
-                               }\r
-                       }\r
-\r
-                       public void dragSetData(DragSourceEvent event) {\r
-                               Taxon taxon = (Taxon) dragSourceItem[0].getData();\r
-                               TaxonTransfer.getInstance().setTaxon(taxon);\r
-                       }\r
-               });\r
-\r
-               DropTarget target = new DropTarget(tree, operations);\r
-               target.setTransfer(types);\r
-               target.addDropListener(new DropTargetAdapter() {\r
-                       public void drop(DropTargetEvent event) {\r
-\r
-                               // Only drop ONTO another TreeItem OR outside the tree area.\r
-                               // Dropping between TreeItems makes no sense because tree is\r
-                               // sorted.\r
-                               Taxon taxon = (Taxon) dragSourceItem[0].getData();\r
-                               Taxon parentTaxon = null;\r
-\r
-                               // If event.item == null, user has dragged outside of the tree\r
-                               if (event.item == null) {\r
-                                       parentTaxon = null;\r
-                               } else {\r
-                                       parentTaxon = (Taxon) event.item.getData();\r
-                                       \r
-                                       // Make sure parentTaxon is not a child\r
-                                       if (CdmUtil.isTaxonChildOfTaxon(parentTaxon, taxon)) {\r
-                                               \r
-                                               MessageDialog.openError(GlobalController.getShell(), "Can't move taxon.",\r
-                                                               "'" + CdmUtil.getDisplayName(taxon) + "' sits above " +\r
-                                                               "'" + CdmUtil.getDisplayName(parentTaxon) + "' " +\r
-                                                               "in the taxonomic hierarchy.");\r
-                                               \r
-                                               return;\r
-                                       }\r
-                                       \r
-                                       // Make sure taxon is not being dropped onto itself\r
-                                       if (taxon.equals(parentTaxon)) {\r
-                                               return;\r
-                                       }\r
-                               }\r
-\r
-                               String text = "Move taxon"; //$NON-NLS-1$\r
-                               \r
-                               IUndoableOperation operation = new MoveTaxonOperation\r
-                                               (text, undoContext, taxon, parentTaxon);\r
-                               \r
-                               GlobalController.executeOperation(operation);                   \r
-                       }\r
-               });\r
-       }\r
-\r
-       /**\r
-        * Taxa with no NameCache - i.e. added with quick name - can be edited in\r
-        * place in the tax. tree\r
-        */\r
-       public void createQuickAdd() {\r
-\r
-               final Tree tree = this.getTree();\r
-               final TextCellEditor taxTreeNodeEditor = new TextCellEditor(tree);\r
-               \r
-               // Create cell editor for nodes with the QuickNameTaxon singleton\r
-               setCellEditors(new CellEditor[] { taxTreeNodeEditor });\r
-               setColumnProperties(new String[] { "col1" });\r
-               setCellModifier(new ICellModifier() {\r
-                       public boolean canModify(Object element, String property) {\r
-                               if (element instanceof QuickNameTaxon) {\r
-                                       return true;\r
-                               } else {\r
-                                       return false;\r
-                               }\r
-                       }\r
-\r
-                       public Object getValue(Object element, String property) {\r
-                               // If this node is modifiable, name is by definition empty\r
-                               return "";\r
-                       }\r
-\r
-                       public void modify(Object element, String property, Object value) {\r
-                       }\r
-               });\r
-               \r
-               // If the node loses focus and there is a non zero-length string, create a new taxon\r
-               taxTreeNodeEditor.addListener(new ICellEditorListener() {\r
-                       public void applyEditorValue() {\r
-                               Object value = taxTreeNodeEditor.getValue();\r
-                                                               \r
-                               // Only focus on parent if no taxon is created\r
-                               boolean focusParent = false;\r
-                               \r
-                               if (value instanceof String) {\r
-                                       String trimmedValue = ((String) value).trim();\r
-\r
-                                       if (trimmedValue.length() > 0) {\r
-\r
-                                               // TODO move this to a create new name operation\r
-                                               \r
-                                               NonViralName name = \r
-                                                               PreferencesController.getInstanceOfPreferredNameClass();\r
-                                               CdmParserController.parseFullReference(name, trimmedValue);\r
-                                               \r
-                                               ReferenceBase sec = QuickNameTaxon.getInstance().getSec();\r
-                                               \r
-                                               Taxon taxon = Taxon.NewInstance(name, sec);\r
-                                               taxon.setTaxonomicParent(QuickNameTaxon.getInstance().getTaxonomicParent(), null, null);\r
-                                               \r
-                                               CdmSessionDataRepository.getDefault().saveTaxon(taxon);\r
-                                       } else {                \r
-                                               // User has likely hit carriage return\r
-                                               focusParent = true;\r
-                                       }\r
-                               }\r
-                               removeQuickName(focusParent);   \r
-                       }\r
-\r
-                       public void cancelEditor() {\r
-                               removeQuickName(true);\r
-                       }\r
-\r
-                       private void removeQuickName(boolean focusParent) {\r
-                               // Set focus to quick name's parent?\r
-                               if (focusParent) {\r
-                                       setSelection(new StructuredSelection(\r
-                                                       QuickNameTaxon.getInstance().getTaxonomicParent()), true);\r
-                               }\r
-                               \r
-                               // Clear singleton's parent\r
-                               QuickNameTaxon.getInstance().setParent(null);\r
-                               \r
-                               // Remove quick name from tree\r
-                               remove(QuickNameTaxon.getInstance());\r
-                       }\r
-\r
-                       public void editorValueChanged(boolean oldValidState,\r
-                                       boolean newValidState) {\r
-                       }\r
-               });             \r
-       }\r
-\r
-       /**\r
-        * On double click, open name editor\r
-        */\r
-       public void createDoubleClickListener() {\r
-               this.addDoubleClickListener(new IDoubleClickListener() {\r
-\r
-                       public void doubleClick(DoubleClickEvent event) {\r
-                               if (event.getSelection() instanceof StructuredSelection) {\r
-                                       Object element = ((StructuredSelection) event\r
-                                                       .getSelection()).getFirstElement();\r
-                                       if (element instanceof Taxon) {\r
-                                               EditorController.open((Taxon) element);\r
-                                       }\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-\r
-       /**\r
-        * Set up content providers and viewer input\r
-        */\r
-       private void createContent() {\r
-               \r
-               // Custom content provider\r
-               ITreeContentProvider viewerContentProviderList = new TaxonomicTreeContentProvider();\r
-               setContentProvider(viewerContentProviderList);\r
-\r
-               // Label provider that listens for changes to name cache\r
-               IObservableSet observableTaxonSet = \r
-                               CdmSessionDataRepository.getDefault().getObservableTaxa();\r
-               setLabelProvider(new TaxonomicTreeLabelProvider(\r
-                                               observableTaxonSet));\r
-\r
-               // TaxonTreeList added to every time a node is opened with its\r
-               // children, or when a new taxon is added\r
-               setInput(CdmSessionDataRepository.getDefault().getRootTaxa());\r
-                               \r
-               // Sort according to "getColumnText" above, i.e. by NameCache\r
-               setComparator(new ViewerComparator());\r
-                               \r
-               // Listen for changes to taxa in session data repository\r
-               CdmSessionDataRepository.getDefault().\r
-                               addTaxonSetListener(new ICdmTaxonSetListener() {\r
-\r
-                       \r
-                       public void taxaAdded(Set<Taxon> taxa) {\r
-                               Taxon lastTaxon = null;\r
-                               for (Taxon taxon : taxa) {\r
-                                       addTaxonToTree(taxon, taxon.getTaxonomicParent());\r
-                                       lastTaxon = taxon;\r
-                               }\r
-                               \r
-                               // Show last taxon added\r
-                               expandToLevel(lastTaxon, 1);\r
-                       }\r
-\r
-                       \r
-                       public void taxaRemoved(Set<Taxon> taxa) {\r
-                               for (Taxon taxon : taxa) {\r
-                                       remove(taxon);\r
-                               }\r
-                       }\r
-\r
-                       \r
-                       public void taxonMoved(Taxon taxon, Taxon newParentTaxon) {\r
-                               \r
-                               // Save any selection and expansion info ...\r
-                               // NOTE: may be superfluous\r
-//                             Object[] viewerExpandedElements = null;\r
-//                             ISelection viewerSelection = null;\r
-//                             viewerExpandedElements = getExpandedElements();\r
-//                             viewerSelection = getSelection();\r
-                                                               \r
-                               remove(taxon);\r
-                               addTaxonToTree(taxon, newParentTaxon);\r
-                               \r
-                               // ... to restore after taxon has been removed then re-added\r
-//                             setExpandedElements(viewerExpandedElements);\r
-//                             setSelection(viewerSelection, true);\r
-                       }               \r
-               });\r
-       }\r
-\r
-       private void addTaxonToTree(Taxon taxon, Taxon parentTaxon) {\r
-               if (parentTaxon == null) {\r
-                       add(TreePath.EMPTY, taxon);\r
-                       \r
-                       // New root effectively changes the viewer's input, theerefore refresh\r
-                       refresh();\r
-               } else {\r
-                       add(parentTaxon, taxon);\r
-               }\r
-               \r
-       }\r
-       \r
-       /**\r
-        * If taxon node in the tree is hidden, open and select it\r
-        * \r
-        * @param taxon\r
-        */\r
-       public void revealTaxon(Taxon taxon) {\r
-               if (taxon == null) {\r
-                       return;\r
-               }\r
-               this.setSelection(new StructuredSelection(taxon), true);\r
-               this.reveal(taxon);\r
-       }\r
-       \r
-       public void createMenu() {\r
-               final MenuManager menuManager = new MenuManager();\r
-               menuManager.setRemoveAllWhenShown(true);\r
-               final Menu menu = menuManager.createContextMenu(tree);\r
-               tree.setMenu(menu);\r
-\r
-               menuManager.addMenuListener(new IMenuListener() {\r
-                       public void menuAboutToShow(IMenuManager manager) {\r
-\r
-                               Object selection = ((TreeSelection) getSelection())\r
-                                               .getFirstElement();\r
-                               if (!(selection instanceof Taxon)) {\r
-                                       return;\r
-                               }\r
-                               final Taxon taxon = (Taxon) selection;\r
-                               \r
-                               // Open new taxon editor window \r
-                               Action openEditorAction = new OpenTaxonEditorAction(taxon);\r
-                               manager.add(openEditorAction);\r
-\r
-                               // Open new editor with new child taxon. The taxon will not appear in the tree until saved\r
-                               Action openNewChildEditorAction = new OpenNewTaxonEditorAction(\r
-                                               taxon);\r
-                               manager.add(openNewChildEditorAction);\r
-\r
-                               // Create a new node in the tree to enter taxon name directly in the tree.\r
-                               manager.add(new QuickNameAction(taxon));\r
-                               \r
-                               manager.add(new Separator());\r
-                               \r
-                               // Remove taxon from tree\r
-                               Action deleteTaxonAction = new DeleteTaxonAction(taxon);\r
-                               manager.add(deleteTaxonAction);\r
-                       }\r
-               });\r
-       }\r
-       \r
-\r
-       /**\r
-        * Opens a child node for the parent taxon using the quick name singleton\r
-        */\r
-       class QuickNameAction extends Action {\r
-               \r
-               private static final String text = "Add child taxon with quick name";\r
-               private final ImageDescriptor image = TaxEditorPlugin.getDefault()\r
-                               .getImageDescriptor(ITaxEditorConstants.QUICK_ADD_ICON);\r
-               \r
-               private Taxon parentTaxon;      \r
-               \r
-               QuickNameAction(Taxon parentTaxon) {\r
-                       super(text);\r
-                       setImageDescriptor(image);\r
-                       \r
-                       this.parentTaxon = parentTaxon;\r
-               }\r
-               \r
-               public void run() {\r
-                       \r
-                       QuickNameTaxon quickNameTaxon = QuickNameTaxon.getInstance();\r
-                       quickNameTaxon.setParent(parentTaxon);\r
-                       \r
-                       add(parentTaxon, quickNameTaxon);\r
-                       reveal(quickNameTaxon);\r
-                       editElement(quickNameTaxon, 0);\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/AbstractEditorOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/AbstractEditorOperation.java
deleted file mode 100644 (file)
index 7b2f6e7..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.operations.AbstractOperation;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.Status;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 14.01.2009\r
- * @version 1.0\r
- */\r
-public abstract class AbstractEditorOperation extends AbstractOperation {\r
-       \r
-       @SuppressWarnings("unused")\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AbstractEditorOperation.class);\r
-       \r
-       /** \r
-        * A reference to the taxon the concrete operation is working on \r
-        */\r
-       protected Taxon taxon;\r
-\r
-       public AbstractEditorOperation(String label, IUndoContext undoContext,\r
-                       Taxon taxon) {\r
-               super(label);\r
-               addContext(undoContext);\r
-               \r
-               this.taxon = taxon;\r
-       }\r
-       \r
-       /**\r
-        * \r
-        * @return\r
-        */\r
-       protected IStatus redrawOpenEditor() {  \r
-               return EditorController.redraw(taxon) ? Status.OK_STATUS : Status.CANCEL_STATUS;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/ChangeTaxonToSynonymOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/ChangeTaxonToSynonymOperation.java
deleted file mode 100644 (file)
index 4e46c57..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.Status;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.ui.IEditorPart;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import sun.reflect.generics.reflectiveObjects.NotImplementedException;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.SelectTaxonDialog;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 20.01.2009\r
- * @version 1.0\r
- */\r
-public class ChangeTaxonToSynonymOperation extends AbstractEditorOperation{\r
-       \r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeTaxonToSynonymOperation.class);\r
-\r
-       private Taxon destinationTaxon;\r
-       \r
-       public ChangeTaxonToSynonymOperation(String label,\r
-                       IUndoContext undoContext, Taxon taxon) {\r
-               super(label, undoContext, taxon);\r
-       }\r
-\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-\r
-               IEditorPart editor = null;\r
-               \r
-               try {   \r
-                       // Prompt user "Would you like to save?" before showing dialog\r
-                       // "Cancel" cancels action - "No" does not\r
-                       editor = EditorController.getEditorByTaxon(taxon);\r
-                       if (editor.isDirty()) {\r
-                               if (!MessageDialog.openConfirm(GlobalController.getShell(), "Save before proceeding", \r
-                                               "All changes must be saved before proceeding with this action.\n\n" +\r
-                                               "Press \"OK\" to save and continue, or \"Cancel\" to cancel this action.")) {\r
-                                       return Status.CANCEL_STATUS;\r
-                               }\r
-                               editor.doSave(null);\r
-                       }\r
-//                     if (UiUtil.getActivePage().saveEditor(oldEditor, true) == false) {\r
-//                             return;\r
-//                     }\r
-               } catch (PartInitException e1) {\r
-                       e1.printStackTrace();\r
-               }\r
-               \r
-               // Get destination taxon from dialog\r
-               Shell shell = GlobalController.getShell();\r
-               SelectTaxonDialog dialog = new SelectTaxonDialog(shell, SelectTaxonDialog.TAXON_TO_SYNONYM);\r
-               destinationTaxon = dialog.open(taxon);\r
-               \r
-               // Abort action if user cancelled dialog without choosing a taxon\r
-               if (destinationTaxon == null) {\r
-                       return Status.CANCEL_STATUS;\r
-               }\r
-                               \r
-               \r
-               return makeTaxonSynonym(taxon, destinationTaxon) ? Status.OK_STATUS : Status.CANCEL_STATUS;\r
-       }\r
-\r
-       private boolean makeTaxonSynonym(Taxon taxon, Taxon destinationTaxon){\r
-               // Move taxon in CDM to new destinationTaxon\r
-               TaxonNameBase synonymName = taxon.getName();\r
-               SynonymRelationshipType synonymType;\r
-               if (CdmUtil.isNameHomotypic(synonymName, destinationTaxon)) {\r
-                       synonymType = SynonymRelationshipType.HOMOTYPIC_SYNONYM_OF();\r
-               } else {\r
-                       synonymType = SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF();\r
-               }\r
-               CdmUtil.makeTaxonSynonym(taxon, destinationTaxon, synonymType,\r
-                               null, null);\r
-               \r
-               // TODO move any children, descriptions, synonyms\r
-               for (TaxonDescription description: taxon.getDescriptions()) {\r
-                       destinationTaxon.addDescription(description);\r
-                       taxon.removeDescription(description);\r
-               }\r
-               \r
-               for (TaxonRelationship fromRelation : taxon.getRelationsFromThisTaxon()) {\r
-                       fromRelation.setFromTaxon(destinationTaxon);\r
-               }\r
-               \r
-               for (TaxonRelationship toRelation : taxon.getRelationsToThisTaxon()) {\r
-                       toRelation.setToTaxon(destinationTaxon);\r
-               }\r
-                               \r
-               CdmSessionDataRepository.getDefault().removeTaxon(taxon);       \r
-                               \r
-               // Close open editor for oldTaxon without forcing save.\r
-               // User has already saved or declined to do so above.\r
-               EditorController.close(taxon, false);\r
-               CdmSessionDataRepository.getDefault().saveTaxon(destinationTaxon);\r
-               // Open editor for destinationTaxon\r
-               EditorController.open(destinationTaxon);\r
-               \r
-               return true;\r
-       }\r
-       \r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return makeTaxonSynonym(taxon, destinationTaxon) ? Status.OK_STATUS : Status.CANCEL_STATUS;\r
-       }\r
-\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO implement undo\r
-               throw new NotImplementedException();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/DeleteTaxonOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/DeleteTaxonOperation.java
deleted file mode 100644 (file)
index 653c386..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.Status;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * Delete a taxon from the model.\r
- * \r
- * TODO: Currently all data in session data repository has to be saved before deleting \r
- * a taxon and the whole logic is happening here. This way we would have to implement \r
- * the same logic in another place if we want to delete outside of an operation context\r
- * (NOT undoable). Therefore it is desirable to have the logic implemented in another \r
- * place and merely call a method here.\r
- * \r
- * @author n.hoffmann\r
- * @created 16.01.2009\r
- * @version 1.0\r
- */\r
-public class DeleteTaxonOperation extends AbstractEditorOperation {\r
-       \r
-       @SuppressWarnings("unused")\r
-       private static Logger logger = Logger.getLogger(DeleteTaxonOperation.class);\r
-\r
-       /**\r
-        * The taxonomical parent of the taxon to be deleted.\r
-        */\r
-       private Taxon parentTaxon;\r
-       \r
-       public DeleteTaxonOperation(String text, IUndoContext undoContext,\r
-                       Taxon taxon) {\r
-               super(text, undoContext, taxon);\r
-\r
-               parentTaxon = taxon.getTaxonomicParent();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-\r
-               // TODO move this logic to another place\r
-               \r
-               // Get taxon name - watch out for null names\r
-               String taxonName = "";\r
-               if (taxon.getName() != null) {\r
-                       taxonName = taxon.getName().getTitleCache();\r
-               }\r
-               \r
-               // Prompt user for confirmation\r
-               if(! MessageDialog.openConfirm(GlobalController.getShell(), "Confirm Deletion", "Are you sure you want to delete taxon '" + taxonName + "'?")){\r
-                       monitor.done();\r
-                       return Status.CANCEL_STATUS;\r
-               }\r
-               \r
-               // Get and start progress monitor\r
-               monitor.beginTask("Deleting taxon '" + taxonName + "'.", 10);\r
-               \r
-               // Call save all\r
-               EditorController.saveAll();\r
-               monitor.worked(2);\r
-               \r
-               // If the taxon has children, cancel operation\r
-               // TODO add option to continue, and delete children\r
-               if (taxon.hasTaxonomicChildren()) {\r
-                       MessageDialog.openInformation(GlobalController.getShell(), "Cannot delete taxon", \r
-                                       "'" + taxonName + "' has taxonomic children. " +\r
-                                       "These must be manually deleted before their parent.");\r
-                       monitor.done();\r
-                       return Status.CANCEL_STATUS;\r
-               }\r
-               monitor.worked(1);\r
-               \r
-               \r
-               // Close taxon's editor, if any is active\r
-               EditorController.close(taxon, true);\r
-               monitor.worked(1);\r
-\r
-               // Delete taxon from CDM layer\r
-               CdmSessionDataRepository.getDefault().deleteTaxon(taxon);\r
-               monitor.worked(4);\r
-                               \r
-               // Call save all\r
-               EditorController.saveAll();\r
-               monitor.worked(2);\r
-               \r
-               // Close the progress monitor\r
-               monitor.done();\r
-               \r
-               // Announce taxon was deleted on status line\r
-               GlobalController.setStatusLine("Deleted taxon '" + taxonName + "'.");\r
-               \r
-               return Status.OK_STATUS;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // FIXME we have to add old citation\r
-               parentTaxon.addTaxonomicChild(taxon, null, null);\r
-               CdmSessionDataRepository.getDefault().addTaxon(taxon);\r
-               return Status.OK_STATUS;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/MoveTaxonOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/MoveTaxonOperation.java
deleted file mode 100644 (file)
index 5dff9ed..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.Status;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * Change the taxonomic parent of a given taxon.\r
- * \r
- * @author n.hoffmann\r
- * @created 16.01.2009\r
- * @version 1.0\r
- */\r
-public class MoveTaxonOperation extends AbstractEditorOperation {\r
-       \r
-       @SuppressWarnings("unused")\r
-       private static final Logger logger = Logger.getLogger(MoveTaxonOperation.class);\r
-       /**\r
-        * A reference to the new taxonomical parent.\r
-        */\r
-       private Taxon newParentTaxon;\r
-       /**\r
-        * A reference to the former taxonomical parent\r
-        */\r
-       private Taxon oldParentTaxon;\r
-\r
-       public MoveTaxonOperation(String label, IUndoContext undoContext,\r
-                       Taxon taxon, Taxon newParentTaxon) {\r
-               super(label, undoContext, taxon);\r
-\r
-               this.newParentTaxon = newParentTaxon;\r
-               \r
-               // Save old parent taxon for undo\r
-               this.oldParentTaxon = taxon.getTaxonomicParent();\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               CdmSessionDataRepository.getDefault().setTaxonomicParent(taxon, newParentTaxon);\r
-               CdmSessionDataRepository.getDefault().saveTaxon(taxon);\r
-               \r
-               return Status.OK_STATUS;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               CdmSessionDataRepository.getDefault().setTaxonomicParent(taxon, oldParentTaxon);\r
-               CdmSessionDataRepository.getDefault().saveTaxon(taxon);\r
-               \r
-               return Status.OK_STATUS;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/description/AddElementOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/description/AddElementOperation.java
deleted file mode 100644 (file)
index bc06b33..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.description;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.Status;\r
-\r
-import eu.etaxonomy.cdm.model.common.Language;\r
-import eu.etaxonomy.cdm.model.description.CommonTaxonName;\r
-import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.cdm.model.description.TextData;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.description.DistributionDialog;\r
-import eu.etaxonomy.taxeditor.editor.description.LanguageDialog;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 05.02.2009\r
- * @version 1.0\r
- */\r
-public class AddElementOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AddElementOperation.class);\r
-       \r
-       private TaxonDescription description;\r
-       private Feature feature;\r
-       private DescriptionElementBase element;\r
-\r
-       public AddElementOperation(String label, IUndoContext undoContext,\r
-                       Taxon taxon, TaxonDescription description, Feature feature) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.description = description;\r
-               this.feature = feature;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-\r
-               // Common name\r
-               if (feature.supportsCommonTaxonName()) {\r
-                       Language language = LanguageDialog.getLanguage\r
-                                       ("Select language", "Select the common name's language:");\r
-                       if (language == null) {\r
-                               return Status.CANCEL_STATUS;\r
-                       }\r
-                       element = CommonTaxonName.NewInstance("", language);\r
-                       // Feature must be explicitly set to sync w term in persistence layer\r
-                       element.setFeature(feature);\r
-               } \r
-               // Distribution\r
-               if (feature.supportsDistribution()) {\r
-                       element = DistributionDialog.getDistribution\r
-                                       ("Create distribution", null);\r
-                       if (element == null) {\r
-                               return Status.CANCEL_STATUS;\r
-                       }\r
-                       // Feature must be explicitly set to sync w term in persistence layer\r
-                       element.setFeature(feature);\r
-               }\r
-               \r
-               // Default element type is TextData\r
-               if (element == null) {\r
-                       element = TextData.NewInstance(feature);\r
-               }\r
-               description.addElement(element);\r
-               \r
-               // Redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               description.addElement(element);\r
-               \r
-               // Redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               description.removeElement(element);\r
-               \r
-               // Redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/description/RemoveElementOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/description/RemoveElementOperation.java
deleted file mode 100644 (file)
index 63336b0..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.description;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 05.02.2009\r
- * @version 1.0\r
- */\r
-public class RemoveElementOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RemoveElementOperation.class);\r
-       \r
-       private DescriptionElementBase element;\r
-       private TaxonDescription description = null;\r
-\r
-       public RemoveElementOperation(String label, IUndoContext undoContext,\r
-                       Taxon taxon, DescriptionElementBase element) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.element = element;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-                               \r
-               // Find description to which element belongs\r
-               for (TaxonDescription descr : taxon.getDescriptions()) {\r
-                       for (DescriptionElementBase elem : descr.getElements()) {\r
-                               if (elem.equals(element)) {\r
-                                       description = descr;\r
-                                       break;\r
-                               }\r
-                       }\r
-               }\r
-               \r
-               // Remove element from description\r
-               if (description == null) {\r
-                       logger.error("Couldn't find element's description!");\r
-               } else {\r
-                       description.removeElement(element);\r
-               }\r
-               \r
-               // Redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-\r
-               description.addElement(element);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/images/AddImageOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/images/AddImageOperation.java
deleted file mode 100644 (file)
index ac7a8d3..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.images;\r
-\r
-import java.net.URL;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.Status;\r
-import org.eclipse.jface.window.Window;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.editor.images.ImagesController;\r
-import eu.etaxonomy.taxeditor.editor.images.UrlDialog;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 31.03.2009\r
- * @version 1.0\r
- */\r
-public class AddImageOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AddImageOperation.class);\r
-       \r
-       private URL url;\r
-\r
-       /**\r
-        * @param text\r
-        * @param undoContext\r
-        * @param taxon\r
-        * @param url\r
-        */\r
-       public AddImageOperation(String label, IUndoContext undoContext,\r
-                       Taxon taxon) {\r
-               super(label, undoContext, taxon);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-                               \r
-               url = UrlDialog.getUrl("Enter image URL", "Enter the new image's URL:");\r
-               if (url == null) {\r
-                       return Status.CANCEL_STATUS;\r
-               }\r
-               \r
-               ImagesController.addTaxonImageUrl(taxon, url);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               ImagesController.addTaxonImageUrl(taxon, url);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               ImagesController.removeTaxonImageUrl(taxon, url);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/images/RemoveImageOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/images/RemoveImageOperation.java
deleted file mode 100644 (file)
index b1e55f4..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.images;\r
-\r
-import java.net.URL;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.images.ImagesController;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 31.03.2009\r
- * @version 1.0\r
- */\r
-public class RemoveImageOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RemoveImageOperation.class);\r
-       \r
-       private URL url;\r
-\r
-       /**\r
-        * @param text\r
-        * @param undoContext\r
-        * @param taxon\r
-        * @param url\r
-        */\r
-       public RemoveImageOperation(String label, IUndoContext undoContext,\r
-                       Taxon taxon, URL url) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.url = url;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               ImagesController.removeTaxonImageUrl(taxon, url);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               ImagesController.addTaxonImageUrl(taxon, url);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeConceptRelationOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeConceptRelationOperation.java
deleted file mode 100644 (file)
index 5d2d493..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 03.02.2009\r
- * @version 1.0\r
- */\r
-public class ChangeConceptRelationOperation extends AbstractEditorOperation {\r
-\r
-\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeConceptRelationOperation.class);\r
-       private Taxon relatedTaxon;\r
-       private TaxonRelationshipType oldRelationshipType;\r
-       private TaxonRelationshipType newRelationshipType;\r
-\r
-       public ChangeConceptRelationOperation(String label,\r
-                       IUndoContext undoContext, Taxon taxon, Taxon relatedTaxon, TaxonRelationshipType type) {\r
-               super(label, undoContext, taxon);\r
-               this.relatedTaxon = relatedTaxon;\r
-               this.newRelationshipType = type;\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Remove relatedTaxon and old relationship\r
-               TaxonRelationship relationship = getTaxonRelationship(taxon, relatedTaxon);\r
-               taxon.removeTaxonRelation(relationship);\r
-               oldRelationshipType = relationship.getType();           \r
-               \r
-               // Add new relationship\r
-               // TODO add microcitation for misapplied name to property sheet\r
-               relatedTaxon.addTaxonRelation(taxon, newRelationshipType, null, null);  \r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               TaxonRelationship relationship = getTaxonRelationship(taxon, relatedTaxon);\r
-               taxon.removeTaxonRelation(relationship);\r
-               \r
-               // Add new relationship\r
-               // TODO add microcitation for misapplied name to property sheet\r
-               relatedTaxon.addTaxonRelation(taxon, oldRelationshipType, null, null);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-       \r
-       private TaxonRelationship getTaxonRelationship(Taxon taxon1, Taxon taxon2) {\r
-               for (TaxonRelationship relationship : taxon1.getTaxonRelations()) {\r
-                       if ((relationship.getToTaxon().equals(taxon1) \r
-                                       && relationship.getFromTaxon().equals(taxon2))\r
-                                       ||\r
-                                       (relationship.getFromTaxon().equals(taxon1) \r
-                                                       && relationship.getToTaxon().equals(taxon2))) {\r
-                               return relationship;\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeHomotypicGroupOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeHomotypicGroupOperation.java
deleted file mode 100644 (file)
index 39bcaf7..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * Change a the homotypical group for a given synonym.\r
- * \r
- * @author n.hoffmann\r
- * @created 19.01.2009\r
- * @version 1.0\r
- */\r
-public class ChangeHomotypicGroupOperation extends AbstractEditorOperation {\r
-       \r
-       @SuppressWarnings("unused")\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeHomotypicGroupOperation.class);\r
-\r
-       /**\r
-        * The synonym to be moved.\r
-        */\r
-       private Synonym synonym; \r
-       /**\r
-        * The former homotypical group the synonym belonged to\r
-        */\r
-       private HomotypicalGroup oldHomotypicalGroup;\r
-       /**\r
-        * The homotypical group the synonym is to be moved to\r
-        */\r
-       private HomotypicalGroup newHomotypicalGroup;\r
-       \r
-       public ChangeHomotypicGroupOperation(String label, IUndoContext undoContext, \r
-                       Taxon taxon, Synonym synonym, HomotypicalGroup newHomotypicalGroup) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.synonym = synonym;\r
-               if(synonym == null){\r
-                       throw new IllegalArgumentException(\r
-                                       "A null synonym was provided.");\r
-               }\r
-               \r
-               this.oldHomotypicalGroup = synonym.getHomotypicGroup();\r
-               this.newHomotypicalGroup = newHomotypicalGroup;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-\r
-               // Get synonym name\r
-               TaxonNameBase synonymName = this.synonym.getName();\r
-               \r
-               // TODO pass in homotypical group's taxon in case we are dragging from one editor to another\r
-               \r
-               // Switch groups\r
-               oldHomotypicalGroup.removeTypifiedName(synonymName);\r
-               newHomotypicalGroup.addTypifiedName(synonymName);               \r
-               \r
-               // Redraw editor if it exists\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Get synonym name\r
-               TaxonNameBase synonymName = this.synonym.getName();\r
-               if(synonymName == null){\r
-                       // TODO\r
-               }\r
-               \r
-               // TODO pass in homotypical group's taxon in case we are dragging from one editor to another\r
-               \r
-               // Switch groups\r
-               newHomotypicalGroup.removeTypifiedName(synonymName);\r
-               oldHomotypicalGroup.addTypifiedName(synonymName);               \r
-               \r
-               // Redraw editor if it exists\r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeMisappliedNameToSynonymOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeMisappliedNameToSynonymOperation.java
deleted file mode 100644 (file)
index a9288e9..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 15.01.2009\r
- * @version 1.0\r
- */\r
-public class ChangeMisappliedNameToSynonymOperation extends\r
-               AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeMisappliedNameToSynonymOperation.class);\r
-       \r
-       private Taxon misappliedName;\r
-       private HomotypicalGroup homotypicalGroup;\r
-\r
-       public ChangeMisappliedNameToSynonymOperation(String label,\r
-                       IUndoContext undoContext, Taxon taxon, Taxon misappliedName,\r
-                       HomotypicalGroup homotypicalGroup) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.misappliedName = misappliedName;\r
-               this.homotypicalGroup = homotypicalGroup;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Create new synonym using misapplication's name\r
-               TaxonNameBase synonymName = misappliedName.getName();\r
-               Synonym synonym = Synonym.NewInstance(synonymName, taxon.getSec());\r
-               \r
-               // Remove misapplied name relation from taxon\r
-               taxon.removeTaxon(misappliedName, TaxonRelationshipType.MISAPPLIED_NAME_FOR());\r
-\r
-               // Add synonym to taxon\r
-//             if (homotypicalGroup.equals(taxon.getHomotypicGroup())) {\r
-//                     \r
-//                     // Note: synonymName is implicitly added to taxon's homotypical group\r
-//                     taxon.addSynonym(synonym, SynonymRelationshipType.SYNONYM_OF() .HOMOTYPIC_SYNONYM_OF());        \r
-//             } else {\r
-//                     taxon.addSynonym(synonym, SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF());\r
-//                     \r
-//                     // Add synonym to homotypical group\r
-//                     homotypicalGroup.addTypifiedName(synonymName);\r
-//             }\r
-\r
-               taxon.addSynonym(synonym, SynonymRelationshipType.SYNONYM_OF());\r
-               \r
-               // Add synonym to homotypical group\r
-               homotypicalGroup.addTypifiedName(synonymName);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO redo for change misapplied name ...\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO undo for change misapplied name ...\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToConceptOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToConceptOperation.java
deleted file mode 100644 (file)
index 574b6da..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 21.01.2009\r
- * @version 1.0\r
- */\r
-public class ChangeSynonymToConceptOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeSynonymToConceptOperation.class);\r
-       private Synonym synonym;\r
-       \r
-       public ChangeSynonymToConceptOperation(String label,\r
-                       IUndoContext undoContext, Taxon taxon, Synonym synonym) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.synonym = synonym;\r
-               \r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Get name from synonym\r
-               \r
-               // remove synonym from taxon\r
-\r
-//             taxon.addTaxonRelation(toTaxon, type, citation, microcitation);\r
-               \r
-//             TaxonRelationshipType.\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToMisappliedNameOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToMisappliedNameOperation.java
deleted file mode 100644 (file)
index d1c6389..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 14.01.2009\r
- * @version 1.0\r
- */\r
-public class ChangeSynonymToMisappliedNameOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeSynonymToMisappliedNameOperation.class);\r
-\r
-       private Synonym synonym;\r
-       private Taxon misapplication;\r
-       private Set<SynonymRelationshipType> synonymTypes;\r
-\r
-       public ChangeSynonymToMisappliedNameOperation(String label,\r
-                       IUndoContext undoContext, Taxon taxon, Synonym synonym) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.synonym = synonym;\r
-       }\r
-\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // get name from synonym\r
-               TaxonNameBase synonymName = synonym.getName();\r
-               \r
-               // make misapplied name with synonym name\r
-               misapplication = Taxon.NewInstance(synonymName, null);\r
-               \r
-               // store synonymRelationshipType for later undo operations\r
-               synonymTypes = synonym.getRelationType(taxon);\r
-               \r
-               // remove synonym from taxon            \r
-               taxon.removeSynonym(synonym);\r
-               \r
-               // add misapplied name to taxon\r
-               // TODO add microcitation for misapplied name to property sheet (if microcitation is indeed needed?!)\r
-               taxon.addMisappliedName(misapplication, null, null);    \r
-               \r
-               // redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // add misapplied name to taxon\r
-               // TODO add citation for misapplied name to property sheet\r
-               taxon.addMisappliedName(misapplication, null, null);\r
-               \r
-               // remove synonym from taxon\r
-               taxon.removeSynonym(synonym);\r
-               \r
-               // redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // remove misapplied name from taxon\r
-               taxon.removeTaxon(misapplication, TaxonRelationshipType.MISAPPLIED_NAME_FOR());\r
-               \r
-               // add synonym to taxon\r
-               for (SynonymRelationshipType synonymType : synonymTypes){\r
-                       taxon.addSynonym(synonym, synonymType);\r
-               }\r
-               \r
-               // redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToTaxonOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/ChangeSynonymToTaxonOperation.java
deleted file mode 100644 (file)
index 5079a63..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 15.01.2009\r
- * @version 1.0\r
- */\r
-public class ChangeSynonymToTaxonOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChangeSynonymToTaxonOperation.class);\r
-       private Synonym synonym;\r
-\r
-       public ChangeSynonymToTaxonOperation(String text, IUndoContext undoContext,\r
-                       Taxon taxon, Synonym synonym) {\r
-               super(text, undoContext, taxon);\r
-               \r
-               this.synonym = synonym;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-\r
-               // Remove synonym from taxon\r
-               taxon.removeSynonym(synonym);\r
-               \r
-               // Create new taxon with synonym name\r
-               Taxon newTaxon = Taxon.NewInstance(synonym.getName(), synonym.getSec());\r
-                               \r
-               // Add new taxon to session data repository\r
-               taxon.setTaxonomicParent(null, null, null);\r
-               CdmSessionDataRepository.getDefault().addTaxon(newTaxon);\r
-               \r
-               // Open editor for new taxon\r
-               EditorController.open(newTaxon);\r
-               \r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateConceptRelationOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateConceptRelationOperation.java
deleted file mode 100644 (file)
index 0e83acb..0000000
+++ /dev/null
@@ -1,87 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.editor.name.CdmParserController;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 26.01.2009\r
- * @version 1.0\r
- */\r
-public class CreateConceptRelationOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateConceptRelationOperation.class);\r
-       \r
-       private Taxon concept;\r
-       private TaxonRelationshipType taxonRelationshipType;\r
-       \r
-       public CreateConceptRelationOperation(String label,\r
-                       IUndoContext undoContext, Taxon taxon, TaxonRelationshipType taxonRelationshipType) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.taxonRelationshipType = taxonRelationshipType;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Create empty new name\r
-               TaxonNameBase conceptName = \r
-                               CdmParserController.parseFullReference("", null, null);\r
-               \r
-               // make concept name with concept name\r
-               concept = Taxon.NewInstance(conceptName, null);\r
-                                               \r
-               // add misapplied name to taxon\r
-               // TODO add microcitation for misapplied name to property sheet\r
-               concept.addTaxonRelation(taxon, taxonRelationshipType, null, null);     \r
-               \r
-               // redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               taxon.removeTaxon(concept, taxonRelationshipType);\r
-               \r
-               // redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateMisappliedNameOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateMisappliedNameOperation.java
deleted file mode 100644 (file)
index 0d26330..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.editor.name.CdmParserController;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 21.01.2009\r
- * @version 1.0\r
- */\r
-public class CreateMisappliedNameOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateMisappliedNameOperation.class);\r
-       \r
-       private Taxon misapplication;\r
-\r
-       public CreateMisappliedNameOperation(String label, IUndoContext undoContext,\r
-                       Taxon taxon) {\r
-               super(label, undoContext, taxon);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Create empty new name\r
-               TaxonNameBase misapplicationName = \r
-                               CdmParserController.parseFullReference("", null, null);\r
-               \r
-               // make misapplication name with misapplication name\r
-               misapplication = Taxon.NewInstance(misapplicationName, null);\r
-                                               \r
-               // add misapplied name to taxon\r
-               // TODO add microcitation for misapplied name to property sheet\r
-               taxon.addMisappliedName(misapplication, null, null);    \r
-               \r
-               // redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Remove misapplied name from taxon\r
-               taxon.removeTaxon(misapplication, TaxonRelationshipType.MISAPPLIED_NAME_FOR());\r
-                                       \r
-               // Redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateSynonymInExisitingHomotypicalGroupOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateSynonymInExisitingHomotypicalGroupOperation.java
deleted file mode 100644 (file)
index 7138ac1..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.name.CdmParserController;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author n.hoffmann\r
- * @created 02.02.2009\r
- * @version 1.0\r
- */\r
-public class CreateSynonymInExisitingHomotypicalGroupOperation extends\r
-               AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateSynonymInExisitingHomotypicalGroupOperation.class);\r
-\r
-       private HomotypicalGroup group;\r
-       private String newSynonymText;\r
-\r
-       private SynonymRelationship synonymRelationship;\r
-       \r
-       public CreateSynonymInExisitingHomotypicalGroupOperation(String label,\r
-                       IUndoContext undoContext, Taxon taxon, HomotypicalGroup group, String newSynonymText) {\r
-               super(label, undoContext, taxon);\r
-               this.group = group;\r
-               this.newSynonymText = newSynonymText;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Create synonym name using newSynonymText\r
-               TaxonNameBase synonymName = \r
-                               CdmParserController.parseFullReference(newSynonymText, null, null);\r
-               \r
-               // Add name to given homotypic group\r
-               group.addTypifiedName(synonymName);\r
-               \r
-               // Create a new synonym for the taxon\r
-               // TODO add citations\r
-               if(group.equals(taxon.getHomotypicGroup())){\r
-                       synonymRelationship = taxon.addHomotypicSynonymName(synonymName, null, null);\r
-               }else{\r
-                       synonymRelationship = taxon.addHeterotypicSynonymName(synonymName);\r
-               }\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-\r
-               taxon.removeSynonymRelation(synonymRelationship);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateSynonymInNewGroupOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/CreateSynonymInNewGroupOperation.java
deleted file mode 100644 (file)
index 3d38dd4..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.name.CdmParserController;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * <ol>\r
- *     <li>Create synonym name using newSynonymText</li>\r
- *     <li>Add name to new homotypic group</li>\r
- *     <li>Create a new synonym for the taxon</li>\r
- * </ol>\r
- * @author p.ciardelli\r
- * @created 16.01.2009\r
- * @version 1.0\r
- */\r
-public class CreateSynonymInNewGroupOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CreateSynonymInNewGroupOperation.class);\r
-       \r
-       private String newSynonymText;\r
-       private SynonymRelationship newSynonymRelationship;\r
-\r
-       public CreateSynonymInNewGroupOperation(String label,\r
-                       IUndoContext undoContext, Taxon taxon, String newSynonymText) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.newSynonymText = newSynonymText;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Create synonym name using newSynonymText\r
-               TaxonNameBase synonymName = \r
-                               CdmParserController.parseFullReference(newSynonymText, null, null);\r
-               \r
-               // Add name to new homotypic group\r
-               HomotypicalGroup.NewInstance().addTypifiedName(synonymName);\r
-               \r
-               // Create a new synonym for the taxon\r
-               newSynonymRelationship = taxon.addHeterotypicSynonymName(synonymName);\r
-                               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Remove the synonym \r
-               taxon.removeSynonymRelation(newSynonymRelationship);\r
-               newSynonymRelationship = null;\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/MakeSynonymAcceptedOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/MakeSynonymAcceptedOperation.java
deleted file mode 100644 (file)
index dc07937..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-import org.eclipse.core.runtime.Status;\r
-import org.eclipse.jface.dialogs.MessageDialog;\r
-import org.eclipse.ui.IEditorPart;\r
-import org.eclipse.ui.PartInitException;\r
-\r
-import eu.etaxonomy.cdm.api.service.ITaxonService;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.actions.ui.OpenTaxonEditorAction;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.navigation.RecentNamesView;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/** \r
- * @author p.ciardelli\r
- * @created 15.01.2009\r
- * @version 1.0\r
- */\r
-public class MakeSynonymAcceptedOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(MakeSynonymAcceptedOperation.class);\r
-       private Synonym synonym;\r
-       private Taxon parentTaxon;\r
-\r
-       public MakeSynonymAcceptedOperation(String text, IUndoContext undoContext,\r
-                       Taxon taxon, Synonym synonym) {\r
-               super(text, undoContext, taxon);\r
-               \r
-               this.synonym = synonym;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-\r
-               // If taxon editor is dirty force user to save before proceeding, then close editor\r
-               try {\r
-                       IEditorPart oldEditor = EditorController.getEditorByTaxon(taxon);\r
-                       if (oldEditor.isDirty()) {\r
-                               if (!MessageDialog.openConfirm(GlobalController.getShell(), "Save before proceeding", \r
-                                               "All changes must be saved before proceeding with this action.\n\n" +\r
-                                               "Press \"OK\" to save and continue, or \"Cancel\" to cancel this action.")) {\r
-                                       return Status.CANCEL_STATUS;\r
-                               }\r
-                               oldEditor.doSave(null);\r
-                               EditorController.close(taxon, true);\r
-                       }\r
-               } catch (PartInitException e) {\r
-                       logger.error("Error while trying to save and close old editor.", e);\r
-                       MessageDialog.openError(GlobalController.getShell(), "Error", "Error saving and closing taxon");\r
-                       return Status.CANCEL_STATUS;\r
-               }\r
-               \r
-               // Create new taxon for synonym to be swapped into\r
-               TaxonNameBase synonymName = synonym.getName();\r
-               Taxon newAcceptedTaxon = Taxon.NewInstance(synonymName, synonym.getSec());\r
-               \r
-               // Get taxon service and call its swap method\r
-               ITaxonService taxonService = TaxEditorPlugin.getDefault().getApplicationController().getTaxonService();\r
-               // TODO prompt user for citation \r
-               // TODO bug, anahit. new accepted taxon is not removed from synonymy \r
-               taxonService.makeTaxonSynonym(taxon, newAcceptedTaxon, null, null, null);\r
-               \r
-               // Remove old taxon from tree\r
-               CdmSessionDataRepository.getDefault().removeTaxon(taxon);\r
-\r
-               // Add new taxon to tree\r
-               CdmSessionDataRepository.getDefault().addTaxon(newAcceptedTaxon);\r
-\r
-               // Open editor for new accepted taxon\r
-               EditorController.open(newAcceptedTaxon);\r
-\r
-               // Remove old taxon from recent names list\r
-               RecentNamesView.addRecentName(taxon);\r
-               \r
-               return Status.OK_STATUS;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               logger.warn(this.getLabel() + ": Redo not yet implemented.");\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               logger.warn(this.getLabel() + ": Undo not yet implemented.");\r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/MakeSynonymGroupBasionymOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/MakeSynonymGroupBasionymOperation.java
deleted file mode 100644 (file)
index 944d67d..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 14.01.2009\r
- * @version 1.0\r
- */\r
-public class MakeSynonymGroupBasionymOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(MakeSynonymGroupBasionymOperation.class);\r
-       \r
-       private Synonym synonym;\r
-\r
-       public MakeSynonymGroupBasionymOperation(String text, IUndoContext undoContext,\r
-                       Taxon taxon, Synonym synonym) {\r
-               super(text, undoContext, taxon);\r
-               \r
-               this.synonym = synonym;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-//             // Get basionym for synonyms homotypic group\r
-//             homotypicGroup = synonym.getHomotypicGroup();\r
-//             TaxonNameBase basionym = homotypicGroup.getBasionym();\r
-//             \r
-//             // Check if synonym is already basionym\r
-//             if(basionym != null && basionym.equals(synonym.getName())){\r
-//                     return Status.OK_STATUS;\r
-//             }\r
-               \r
-               // TODO replace w method from cdmlib\r
-               CdmUtil.setGroupBasionym(synonym.getName());\r
-                               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO replace w method from cdmlib\r
-               CdmUtil.removeGroupBasionym(synonym.getName());\r
-                               \r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveConceptRelationOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveConceptRelationOperation.java
deleted file mode 100644 (file)
index fc20fb1..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 29.01.2009\r
- * @version 1.0\r
- */\r
-public class RemoveConceptRelationOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RemoveConceptRelationOperation.class);\r
-       \r
-       private Taxon relatedTaxon;\r
-       private TaxonRelationshipType relationshipType;\r
-       private ReferenceBase citation;\r
-       private String microcitation;\r
-       private TaxonRelationship relationship; \r
-\r
-       public RemoveConceptRelationOperation(String label,\r
-                       IUndoContext undoContext, Taxon taxon, Taxon relatedTaxon,\r
-                       TaxonRelationshipType relationshipType) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.relatedTaxon = relatedTaxon;\r
-               this.relationshipType = relationshipType;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Find relation, save citation information\r
-               for (TaxonRelationship relationship : taxon.getTaxonRelations()) {\r
-                       if (relationship.getType().equals(relationshipType)\r
-                                       && relationship.getFromTaxon().equals(relatedTaxon)) {\r
-                               citation = relationship.getCitation();\r
-                               microcitation = relationship.getCitationMicroReference();\r
-                               this.relationship = relationship; \r
-                       }\r
-               }\r
-               \r
-               // Remove relation from taxon\r
-               taxon.removeTaxonRelation(relationship);\r
-                               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-//             relatedTaxon.addTaxonRelation(relationship); // don't do nothin'\r
-               taxon.addTaxonRelation(relatedTaxon, relationshipType, citation, microcitation);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveMisappliedNameOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveMisappliedNameOperation.java
deleted file mode 100644 (file)
index 23bc561..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 16.01.2009\r
- * @version 1.0\r
- */\r
-public class RemoveMisappliedNameOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RemoveMisappliedNameOperation.class);\r
-       \r
-       private Taxon misappliedName;\r
-\r
-       private ReferenceBase citation;\r
-\r
-       private String microcitation;\r
-\r
-       public RemoveMisappliedNameOperation(String label, IUndoContext undoContext,\r
-                       Taxon taxon, Taxon misappliedName) {\r
-               super(label, undoContext, taxon);\r
-               \r
-               this.misappliedName = misappliedName;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-\r
-               // Find misapplication relation, save citation information\r
-               for (TaxonRelationship relationship : taxon.getTaxonRelations()) {\r
-                       if (relationship.getType().equals(TaxonRelationshipType.MISAPPLIED_NAME_FOR())\r
-                                       && relationship.getFromTaxon().equals(misappliedName)) {\r
-                               citation = relationship.getCitation();\r
-                               microcitation = relationship.getCitationMicroReference();\r
-                       }\r
-               }\r
-               \r
-               // Remove misapplied name relation from taxon\r
-               taxon.removeTaxon(misappliedName, TaxonRelationshipType.MISAPPLIED_NAME_FOR());\r
-                               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               taxon.addMisappliedName(misappliedName, citation, microcitation);\r
-               \r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveSynonymOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/RemoveSynonymOperation.java
deleted file mode 100644 (file)
index 80115e0..0000000
+++ /dev/null
@@ -1,85 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.SynonymRelationshipType;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 14.01.2009\r
- * @version 1.0\r
- */\r
-public class RemoveSynonymOperation extends AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RemoveSynonymOperation.class);\r
-       \r
-       private Synonym synonym;\r
-       private Set<SynonymRelationshipType> synonymTypes;\r
-\r
-       public RemoveSynonymOperation(String label, IUndoContext undoContext,\r
-                       Taxon taxon, Synonym synonym) {\r
-               super(label, undoContext, taxon);\r
-               this.synonym = synonym;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Store synonymRelationshipType for later undo operations\r
-               synonymTypes = synonym.getRelationType(taxon);\r
-               \r
-               // Remove synonym from taxon\r
-               taxon.removeSynonym(synonym);\r
-               \r
-               // Redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {             \r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               \r
-               // Add synonym to taxon\r
-               for (SynonymRelationshipType synonymType : synonymTypes){\r
-                       taxon.addSynonym(synonym, synonymType);\r
-               }\r
-               \r
-               // Redraw editor if exists\r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/UnmakeSynonymGroupBasionymOperation.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/operations/name/UnmakeSynonymGroupBasionymOperation.java
deleted file mode 100644 (file)
index e5c7563..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.operations.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.commands.ExecutionException;\r
-import org.eclipse.core.commands.operations.IUndoContext;\r
-import org.eclipse.core.runtime.IAdaptable;\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.eclipse.core.runtime.IStatus;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.operations.AbstractEditorOperation;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 15.01.2009\r
- * @version 1.0\r
- */\r
-public class UnmakeSynonymGroupBasionymOperation extends\r
-               AbstractEditorOperation {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(UnmakeSynonymGroupBasionymOperation.class);\r
-       private Synonym synonym;\r
-\r
-       public UnmakeSynonymGroupBasionymOperation(String text,\r
-                       IUndoContext undoContext, Taxon taxon, Synonym synonym) {\r
-               super(text, undoContext, taxon);\r
-               \r
-               this.synonym = synonym;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus execute(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO replace w method from cdmlib\r
-               CdmUtil.removeGroupBasionym(synonym.getName());\r
-                               \r
-               return redrawOpenEditor();\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus redo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               return execute(monitor, info);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)\r
-        */\r
-       @Override\r
-       public IStatus undo(IProgressMonitor monitor, IAdaptable info)\r
-                       throws ExecutionException {\r
-               // TODO replace w method from cdmlib\r
-               CdmUtil.setGroupBasionym(synonym.getName());\r
-                               \r
-               return redrawOpenEditor();\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/CdmPreferences.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/CdmPreferences.java
deleted file mode 100644 (file)
index 0d3a787..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.preference;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.preference.PreferencePage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.IWorkbench;\r
-import org.eclipse.ui.IWorkbenchPreferencePage;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 20.05.2008\r
- * @version 1.0\r
- */\r
-public class CdmPreferences extends PreferencePage implements\r
-               IWorkbenchPreferencePage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CdmPreferences.class);\r
-\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.preferences.cdm";\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)\r
-        */\r
-       @Override\r
-       protected Control createContents(Composite parent) {\r
-               \r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               container.setLayout(new GridLayout());\r
-\r
-               //\r
-               return container;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)\r
-        */\r
-       public void init(IWorkbench workbench) {\r
-               // TODO Auto-generated method stub\r
-\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/DescriptionPreferences.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/DescriptionPreferences.java
deleted file mode 100644 (file)
index d89ca74..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.preference;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.preference.PreferencePage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.IWorkbench;\r
-import org.eclipse.ui.IWorkbenchPreferencePage;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 20.05.2008\r
- * @version 1.0\r
- */\r
-public class DescriptionPreferences extends PreferencePage implements\r
-               IWorkbenchPreferencePage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DescriptionPreferences.class);\r
-\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.preferences.description";\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)\r
-        */\r
-       @Override\r
-       protected Control createContents(Composite parent) {\r
-               \r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               container.setLayout(new GridLayout());\r
-\r
-               //\r
-               return container;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)\r
-        */\r
-       public void init(IWorkbench workbench) {\r
-               // TODO Auto-generated method stub\r
-\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/FeaturePreferences.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/FeaturePreferences.java
deleted file mode 100644 (file)
index 0f6c67a..0000000
+++ /dev/null
@@ -1,133 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.preference;\r
-\r
-import java.util.HashMap;\r
-import java.util.List;\r
-import java.util.Map;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.preference.PreferencePage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.IWorkbench;\r
-import org.eclipse.ui.IWorkbenchPreferencePage;\r
-\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 17.09.2008\r
- * @version 1.0\r
- */\r
-public class FeaturePreferences extends PreferencePage implements\r
-               IWorkbenchPreferencePage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(FeaturePreferences.class);\r
-\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.preferences.feature";\r
-       \r
-       private Map<Feature, Button> featureButtons;\r
-\r
-       private Composite container;\r
-\r
-       public FeaturePreferences() {\r
-               super();\r
-               setDescription("Choose which features you would like to use for descriptive elements.");\r
-       }\r
-\r
-\r
-       /**\r
-        * Create contents of the preference page\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public Control createContents(Composite parent) {\r
-\r
-               featureButtons = new HashMap<Feature, Button>();\r
-               \r
-               container = new Composite(parent, SWT.NULL);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 3;\r
-               container.setLayout(gridLayout);\r
-\r
-               List<Feature> features = \r
-                               CdmSessionDataRepository.getDefault().getFeatures();\r
-               \r
-               // Purpose of this code block: \r
-               //      fill first column, then second, then third\r
-               Object[] array = features.toArray();\r
-               int count = features.size();\r
-               int colheight = count / 3;\r
-               if (count % 3 > 0) {\r
-                       colheight++;\r
-               }\r
-               for (int i = 0; i < colheight; i++) {\r
-                       createButton((Feature) array[i]);\r
-                       if (i + colheight < count) {\r
-                               createButton((Feature) array[i + colheight]);\r
-                       }\r
-                       if (i + (colheight * 2) < count) {\r
-                               createButton((Feature) array[i + (colheight * 2)]);\r
-                       }\r
-               }\r
-               return container;\r
-       }\r
-\r
-\r
-       /**\r
-        * @param object\r
-        */\r
-       private void createButton(Feature feature) {\r
-               Button button = new Button(container, SWT.CHECK);\r
-               button.setText(feature.getLabel());\r
-               featureButtons.put(feature, button);\r
-               \r
-               if (PreferencesController.getFeaturePreference(feature)) {\r
-                       button.setSelection(true);\r
-               }\r
-       }\r
-\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)\r
-        */\r
-       public void init(IWorkbench workbench) {\r
-               setPreferenceStore(PreferencesController.getPrefStore());\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.preference.PreferencePage#performDefaults()\r
-        */\r
-       protected void performDefaults() {\r
-               \r
-               // Set all buttons to show feature\r
-               for (Button button : featureButtons.values()) {\r
-                       button.setSelection(true);\r
-               }\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.preference.PreferencePage#performOk()\r
-        */\r
-       public boolean performOk() {\r
-               \r
-               for (Feature feature : featureButtons.keySet()) {\r
-                       Button button = featureButtons.get(feature);\r
-                       PreferencesController.setFeaturePreference(feature, button.getSelection());\r
-               }\r
-               \r
-               return true;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/InitNomenclaturalCodePrefDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/InitNomenclaturalCodePrefDialog.java
deleted file mode 100644 (file)
index 8ed52d7..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.preference;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.dialogs.Dialog;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Point;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Shell;\r
-\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-\r
-/** \r
- * @author p.ciardelli\r
- * @created 05.12.2008\r
- * @version 1.0\r
- */\r
-public class InitNomenclaturalCodePrefDialog extends Dialog {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(InitNomenclaturalCodePrefDialog.class);\r
-       \r
-       private Button icbnButton;\r
-       private Button icznButton;\r
-\r
-       /**\r
-        * If the user makes no chance, or cancels, preferred nom. code will be set to the default\r
-        */\r
-       private String preferredCode = ITaxEditorConstants.DEFAULT_CODE_PREFERENCE;\r
-\r
-       /**\r
-        * Create the dialog\r
-        * @param parentShell\r
-        */\r
-       public InitNomenclaturalCodePrefDialog(Shell parentShell) {\r
-               super(parentShell);\r
-       }\r
-       \r
-       /**\r
-        * Create contents of the dialog\r
-        * @param parent\r
-        */\r
-       @Override\r
-       protected Control createDialogArea(Composite parent) {\r
-\r
-               Composite container = (Composite) super.createDialogArea(parent);\r
-\r
-               // Create label with description of dialog\r
-               final Label chooseANomenclaturalLabel = new Label(container, SWT.WRAP);\r
-               chooseANomenclaturalLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               chooseANomenclaturalLabel.setText("Welcome to the EDIT Taxonomic Editor.\n\nBefore proceeding, please choose a nomenclatural code. This code will be used to create new names and to parse name text.");\r
-\r
-               // Create composite to show radio buttons\r
-               final Composite buttonsComposite = new Composite(container, SWT.NONE);\r
-               final GridData gd_buttonsComposite = new GridData();\r
-               gd_buttonsComposite.horizontalIndent = 20;\r
-               buttonsComposite.setLayoutData(gd_buttonsComposite);\r
-               buttonsComposite.setLayout(new GridLayout());\r
-\r
-               // Create ICBN radio button\r
-               icbnButton = new Button(buttonsComposite, SWT.RADIO);\r
-               icbnButton.setText("International Code of Botanical Nomenclature (ICBN)");\r
-               icbnButton.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               setPreferredCode(ITaxEditorConstants.CODE_PREFERENCE_ICBN);\r
-                       }\r
-               });\r
-\r
-               // Create ICZN radio button\r
-               icznButton = new Button(buttonsComposite, SWT.RADIO);\r
-               icznButton.setText("International Code of Zoological Nomenclature (ICZN)");\r
-               icznButton.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               setPreferredCode(ITaxEditorConstants.CODE_PREFERENCE_ICZN);\r
-                       }\r
-               });\r
-       \r
-               // More dialog text             \r
-               final Label chooseANomenclaturalLabel_1 = new Label(container, SWT.WRAP);\r
-               chooseANomenclaturalLabel_1.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               chooseANomenclaturalLabel_1.setText("If you hit \"Cancel\", & the International Code of Botanical Nomenclature (ICBN) will be set as your default nomenclatural code.\n\nYou can change the botanical code at any time in the \"Preferences\" menu.");\r
-               //\r
-               return container;\r
-       }\r
-\r
-       protected void setPreferredCode(String preferredCode) {\r
-               this.preferredCode = preferredCode;\r
-       }\r
-\r
-       /**\r
-        * Return the initial size of the dialog\r
-        */\r
-       @Override\r
-       protected Point getInitialSize() {\r
-               return new Point(500, 375);\r
-       }\r
-       \r
-       protected void configureShell(Shell newShell) {\r
-               super.configureShell(newShell);\r
-               newShell.setText("Choose a nomenclatural code");\r
-       }\r
-               \r
-       public boolean close() {\r
-               \r
-               // Save preferred nomenclatural code before closing\r
-               PreferencesController.setNomenclaturalCode(preferredCode);\r
-               \r
-               return super.close();\r
-       }\r
-       \r
-       \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/InitializeDbPreferences.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/InitializeDbPreferences.java
deleted file mode 100644 (file)
index 9b8705a..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.preference;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.preference.PreferencePage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.IWorkbench;\r
-import org.eclipse.ui.IWorkbenchPreferencePage;\r
-\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 01.07.2008\r
- * @version 1.0\r
- */\r
-public class InitializeDbPreferences extends PreferencePage implements\r
-               IWorkbenchPreferencePage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(InitializeDbPreferences.class);\r
-\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.preferences.initdb";\r
-\r
-       private Button btnInit;\r
-//     private Button btnTestData;\r
-       \r
-       public InitializeDbPreferences() {\r
-               super();\r
-               setDescription("If you choose this option, taxonomic tree will be empty next time the Editor is started.");\r
-       }\r
-\r
-       /**\r
-        * Create contents of the preference page\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public Control createContents(Composite parent) {\r
-\r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               container.setLayout(new GridLayout());\r
-\r
-               btnInit = new Button(container, SWT.CHECK);\r
-               btnInit.setText("Initialize datastore on next application start");\r
-               btnInit.addSelectionListener(new SelectionAdapter() {\r
-\r
-                       @Override\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               if (btnInit.getSelection() == true) {\r
-                                       \r
-                                       // Enable test data option\r
-//                                     btnTestData.setEnabled(true);\r
-                                       \r
-                               } else {\r
-                               \r
-                                       // Disable test data option, set selected to "false"\r
-//                                     btnTestData.setEnabled(false);\r
-//                                     btnTestData.setSelection(false);\r
-                               }\r
-                       }\r
-                       \r
-               });\r
-\r
-//             btnTestData = new Button(container, SWT.CHECK);\r
-//             btnTestData.setEnabled(false);\r
-//             final GridData gridData = new GridData();\r
-//             gridData.horizontalIndent = 20;\r
-//             btnTestData.setLayoutData(gridData);\r
-//             btnTestData.setText("Initialize with Palmweb test data");\r
-               \r
-               return container;\r
-       }\r
-\r
-       /**\r
-        * Initialize the preference page\r
-        */\r
-       public void init(IWorkbench workbench) {\r
-               setPreferenceStore(PreferencesController.getPrefStore());\r
-       }\r
-       \r
-       @Override\r
-       protected void performDefaults() {\r
-               btnInit.setSelection(false);\r
-//             btnTestData.setSelection(false);\r
-               super.performDefaults();\r
-       }\r
-       \r
-       @Override       \r
-       public boolean performOk() {\r
-               boolean doReinitialize = !(btnInit.getSelection());\r
-//             boolean doInitTestdata = btnTestData.getSelection();\r
-               \r
-               PreferencesController.getPrefStore().setValue(ITaxEditorConstants.INITIALIZED, doReinitialize);\r
-//             UiUtil.getPrefStore().setValue(ITaxEditorConstants.INITIALIZE_W_TESTDATA, doInitTestdata);              \r
-               return true;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/NomenclaturalCodePreferences.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/NomenclaturalCodePreferences.java
deleted file mode 100644 (file)
index e7b4eee..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.preference;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.preference.PreferencePage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.IWorkbench;\r
-import org.eclipse.ui.IWorkbenchPreferencePage;\r
-\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 16.09.2008\r
- * @version 1.0\r
- */\r
-public class NomenclaturalCodePreferences extends PreferencePage implements\r
-               IWorkbenchPreferencePage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NomenclaturalCodePreferences.class);\r
-\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.preferences.nomenclatural";\r
-\r
-       private Button icznButton;\r
-       private Button icbnButton;      \r
-       \r
-       private String preferredCode;\r
-               \r
-       public NomenclaturalCodePreferences() {\r
-               super();\r
-               setDescription("Choose which nomenclatural code you would like to use for scientific names unless otherwise specified.");\r
-       }\r
-\r
-       /**\r
-        * Create contents of the preference page\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public Control createContents(Composite parent) {\r
-               \r
-               \r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               container.setLayout(new GridLayout());\r
-\r
-               icbnButton = new Button(container, SWT.RADIO);\r
-               icbnButton.setText("Botanical (ICBN)");\r
-               icbnButton.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               preferredCode = ITaxEditorConstants.CODE_PREFERENCE_ICBN;\r
-                       }\r
-               });\r
-\r
-               icznButton = new Button(container, SWT.RADIO);\r
-               icznButton.setText("Zoological (ICZN)");\r
-               icznButton.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               preferredCode = ITaxEditorConstants.CODE_PREFERENCE_ICZN;\r
-                       }\r
-               });\r
-               \r
-               preferredCode = getPreferenceStore().getString(ITaxEditorConstants.CODE_PREFERENCE);\r
-               if (preferredCode == null) {\r
-                       getPreferenceStore().setValue(\r
-                                       ITaxEditorConstants.CODE_PREFERENCE, ITaxEditorConstants.DEFAULT_CODE_PREFERENCE);\r
-               }\r
-               setButton(preferredCode);               \r
-               \r
-               return container;\r
-       }\r
-\r
-       /**\r
-        * Initialize the preference page\r
-        */\r
-       public void init(IWorkbench workbench) {\r
-               setPreferenceStore(TaxEditorPlugin.getDefault().getPreferenceStore());\r
-       }\r
-       \r
-       protected void performDefaults() {\r
-               setButton(ITaxEditorConstants.DEFAULT_CODE_PREFERENCE);\r
-       }\r
-       \r
-       public boolean performOk() {\r
-               getPreferenceStore().setValue(\r
-                               ITaxEditorConstants.CODE_PREFERENCE, preferredCode);\r
-               return true;\r
-       }\r
-       \r
-       private void setButton(String preferredCode) {\r
-               this.preferredCode = preferredCode;\r
-               \r
-               if (preferredCode.equals(ITaxEditorConstants.CODE_PREFERENCE_ICBN)) {           \r
-                       icbnButton.setSelection(true);\r
-                       icznButton.setSelection(false);\r
-               }\r
-               if (preferredCode.equals(ITaxEditorConstants.CODE_PREFERENCE_ICZN)) {\r
-                       icbnButton.setSelection(false);\r
-                       icznButton.setSelection(true);\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/RankMenuPreferences.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/RankMenuPreferences.java
deleted file mode 100644 (file)
index 8a1b3f1..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.preference;\r
-\r
-import java.util.HashMap;\r
-import java.util.Map;\r
-import java.util.SortedSet;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.preference.PreferencePage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.IWorkbench;\r
-import org.eclipse.ui.IWorkbenchPreferencePage;\r
-\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * Allows the user to choose which <code>Rank</code>s to display in the \r
- * <code>PropertySheet</code> drop-down menu for <code>TaxonNameBase</code>.\r
- * \r
- * @author p.ciardelli\r
- * @created 17.09.2008\r
- * @version 1.0\r
- */\r
-public class RankMenuPreferences extends PreferencePage implements\r
-               IWorkbenchPreferencePage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(RankMenuPreferences.class);\r
-\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.preferences.ranks";\r
-       \r
-       private Map<Rank, Button> rankButtons;\r
-\r
-       public RankMenuPreferences() {\r
-               super();\r
-               setDescription("Choose which ranks to display in the property sheet drop-down menu.");\r
-       }\r
-\r
-\r
-       /**\r
-        * Create contents of the preference page\r
-        * @param parent\r
-        */\r
-       @Override\r
-       public Control createContents(Composite parent) {\r
-\r
-               rankButtons = new HashMap<Rank, Button>();\r
-               \r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 3;\r
-               container.setLayout(gridLayout);\r
-\r
-               SortedSet<Rank> ranks = \r
-                               CdmSessionDataRepository.getDefault().getRanks();\r
-               \r
-               for (Rank rank : ranks) {\r
-                                               \r
-                       Button button = new Button(container, SWT.CHECK);\r
-                       button.setText(rank.getLabel());\r
-                       rankButtons.put(rank, button);\r
-                       \r
-                       if (PreferencesController.getRankPreference(rank)) {\r
-                               button.setSelection(true);\r
-                       }\r
-               }\r
-               \r
-               return container;\r
-       }\r
-\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)\r
-        */\r
-       public void init(IWorkbench workbench) {\r
-               setPreferenceStore(PreferencesController.getPrefStore());\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.preference.PreferencePage#performDefaults()\r
-        */\r
-       protected void performDefaults() {\r
-               \r
-               // Set all buttons to show feature\r
-               for (Button button : rankButtons.values()) {\r
-                       button.setSelection(true);\r
-               }\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.preference.PreferencePage#performOk()\r
-        */\r
-       public boolean performOk() {\r
-               \r
-               for (Rank rank : rankButtons.keySet()) {\r
-                       Button button = rankButtons.get(rank);\r
-                       PreferencesController.setRankPreference(rank, button.getSelection());\r
-               }\r
-               \r
-               return true;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/TaxonomicPreferences.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/preference/TaxonomicPreferences.java
deleted file mode 100644 (file)
index a5950e0..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.preference;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.preference.PreferencePage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.IWorkbench;\r
-import org.eclipse.ui.IWorkbenchPreferencePage;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 20.05.2008\r
- * @version 1.0\r
- */\r
-public class TaxonomicPreferences extends PreferencePage implements\r
-               IWorkbenchPreferencePage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxonomicPreferences.class);\r
-\r
-       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.taxonomic.preferences";\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.preference.PreferencePage#createContents(org.eclipse.swt.widgets.Composite)\r
-        */\r
-       @Override\r
-       protected Control createContents(Composite parent) {\r
-               \r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               container.setLayout(new GridLayout());\r
-\r
-               //\r
-               return container;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)\r
-        */\r
-       public void init(IWorkbench workbench) {\r
-               // TODO Auto-generated method stub\r
-\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationPropertySource.java
deleted file mode 100644 (file)
index 733c9aa..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import java.util.Collection;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.common.Annotation;\r
-\r
-public class AnnotationPropertySource extends CollectionPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AnnotationPropertySource.class);\r
-\r
-       public AnnotationPropertySource(Collection collection) {\r
-               super(collection);\r
-       }\r
-       \r
-       @Override\r
-       protected String getItemDisplayName(Object item) {\r
-               // No display names on individual annotations\r
-               return "";\r
-       }\r
-\r
-       @Override\r
-       public Object getPropertyValue(Object id) {\r
-               if (id instanceof Annotation) {\r
-                       return ((Annotation) id).getText();\r
-               }\r
-               return null;\r
-       }\r
-\r
-       @Override\r
-       public void setPropertyValue(Object id, Object value) {\r
-               // Fields not editable in property sheet view\r
-       }\r
-\r
-       @Override\r
-       public String toString() {\r
-               // "Annotations" header has no value\r
-               return "";\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationsDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationsDialog.java
deleted file mode 100644 (file)
index e67f69c..0000000
+++ /dev/null
@@ -1,195 +0,0 @@
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import java.util.HashSet;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.jface.action.Action;\r
-import org.eclipse.jface.action.MenuManager;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.FillLayout;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Dialog;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Menu;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import eu.etaxonomy.cdm.model.common.AnnotatableEntity;\r
-import eu.etaxonomy.cdm.model.common.Annotation;\r
-\r
-public class AnnotationsDialog extends Dialog {\r
-\r
-       private Text text;\r
-       private Table table;\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AnnotationsDialog.class);\r
-       protected Object result;\r
-       protected Shell shell;\r
-       \r
-       private WritableList list = new WritableList();\r
-       private Annotation selectedAnnotation;\r
-       private AnnotatableEntity entity;\r
-\r
-       /**\r
-        * Create the dialog\r
-        * @param parent\r
-        * @param style\r
-        */\r
-       public AnnotationsDialog(Shell parent, int style) {\r
-               super(parent, style);\r
-       }\r
-\r
-       /**\r
-        * Create the dialog\r
-        * @param parent\r
-        */\r
-       public AnnotationsDialog(Shell parent) {\r
-               this(parent, SWT.NONE);\r
-       }\r
-\r
-       public AnnotationsDialog(Shell parent, AnnotatableEntity entity) {\r
-               this(parent, SWT.NONE);\r
-               this.entity = entity;\r
-               Set<Annotation> annotations = entity.getAnnotations();\r
-               for (Annotation annotation : annotations) {\r
-                       list.add(annotation);\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Open the dialog\r
-        * @return the result\r
-        */\r
-       public Object open() {\r
-               createContents();\r
-               shell.open();\r
-               shell.layout();\r
-               Display display = getParent().getDisplay();\r
-               while (!shell.isDisposed()) {\r
-                       if (!display.readAndDispatch())\r
-                               display.sleep();\r
-               }\r
-               return result;\r
-       }\r
-\r
-       /**\r
-        * Create contents of the dialog\r
-        */\r
-       protected void createContents() {\r
-               \r
-               // Create shell for popup dialog\r
-               shell = new Shell(getParent(), SWT.DIALOG_TRIM | SWT.APPLICATION_MODAL);\r
-               shell.setLayout(new FillLayout());\r
-               shell.setSize(500, 375);\r
-               shell.setText("Annotations");\r
-               \r
-               // Create composite for entire shell\r
-               final Composite composite = new Composite(shell, SWT.NONE);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 3;\r
-               composite.setLayout(gridLayout);\r
-\r
-               text = new Text(composite, SWT.BORDER);\r
-               text.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1));\r
-\r
-               final Button addButton = new Button(composite, SWT.NONE);\r
-               addButton.setLayoutData(new GridData());\r
-               addButton.setText("Add");\r
-               addButton.addMouseListener(new MouseAdapter() {\r
-                       @Override\r
-                       public void mouseDown(MouseEvent e) {\r
-                               if (text.getText().equals("")) {\r
-                                       return;\r
-                               }\r
-                               Annotation annotation = Annotation.NewInstance(text.getText(), null);\r
-                               list.add(annotation);\r
-                               entity.addAnnotation(annotation);\r
-                               text.setText("");\r
-                       }\r
-               });\r
-\r
-               final TableViewer tableViewer = new TableViewer(composite, SWT.BORDER | SWT.MULTI);\r
-               table = tableViewer.getTable();\r
-               table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1));\r
-               table.setLinesVisible(false);\r
-               table.setHeaderVisible(false);\r
-               new Label(composite, SWT.NONE);\r
-\r
-               ObservableListContentProvider providerList = new ObservableListContentProvider();\r
-               tableViewer.setContentProvider(providerList);\r
-               \r
-               IObservableMap[] providerMaps = BeansObservables.observeMaps(\r
-                               providerList.getKnownElements(), Annotation.class, new String[]{"text"});\r
-               tableViewer.setLabelProvider(new ObservableMapLabelProvider(providerMaps));\r
-               tableViewer.setInput(list);\r
-               \r
-               final MenuManager manager = new MenuManager();\r
-               final Menu menu = manager.createContextMenu(table);\r
-               table.setMenu(menu);\r
-               \r
-               table.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               \r
-                               Object data = e.item.getData();\r
-                               \r
-                               if (data instanceof Annotation) {\r
-                                       manager.removeAll();\r
-                                       manager.add(new RemoveAnnotationAction((Annotation) data));\r
-                               }\r
-                       }\r
-               });\r
-\r
-               final Button cancelButton = new Button(composite, SWT.NONE);\r
-               cancelButton.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false));\r
-               cancelButton.setText("Cancel");\r
-               cancelButton.addMouseListener(new MouseAdapter() {\r
-                       @Override\r
-                       public void mouseUp(MouseEvent e) {\r
-                               shell.dispose();\r
-                       }\r
-               });\r
-                       \r
-               final Button okButton = new Button(composite, SWT.NONE);\r
-               final GridData gd_okButton = new GridData();\r
-               okButton.setLayoutData(gd_okButton);\r
-               okButton.setText("OK");\r
-               okButton.addMouseListener(new MouseAdapter() {\r
-                       @Override\r
-                       public void mouseUp(MouseEvent e) {\r
-                               result = new HashSet(list);\r
-                               shell.dispose();\r
-                       }\r
-               });\r
-       }\r
-       \r
-       public class RemoveAnnotationAction extends Action {\r
-               \r
-               private Annotation annotation;\r
-\r
-               RemoveAnnotationAction(Annotation annotation) {\r
-                       setText("Remove");\r
-                       this.annotation = annotation;\r
-               }\r
-               \r
-               public void run() {\r
-                       list.remove(annotation);\r
-                       entity.removeAnnotation(annotation);\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationsPropertyDescriptor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/AnnotationsPropertyDescriptor.java
deleted file mode 100644 (file)
index 0894056..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.jface.viewers.DialogCellEditor;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Dialog;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.common.AnnotatableEntity;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-\r
-/**\r
- * Property sheet descriptor that pops up a dialog window\r
- *  returning a set.\r
- *  \r
- * @author p.ciardelli\r
- * @created 19.05.2008\r
- * @version 1.0\r
- */\r
-abstract public class AnnotationsPropertyDescriptor extends PropertyDescriptor {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(AnnotationsPropertyDescriptor.class);\r
-       \r
-       private AnnotatableEntity entity;\r
-       \r
-       public AnnotationsPropertyDescriptor(Object id, String displayName, AnnotatableEntity entity) {\r
-               super(id, displayName);\r
-               this.entity = entity;\r
-       }\r
-\r
-    public CellEditor createPropertyEditor(Composite parent) {\r
-        CellEditor editor = new DialogCellEditor(parent) {\r
-\r
-               protected Dialog dialog;\r
-               \r
-                       @Override\r
-                       protected Object openDialogBox(\r
-                                       Control cellEditorWindow) {\r
-                       dialog = new AnnotationsDialog(cellEditorWindow.getShell(), entity);\r
-                       Object value = ((AnnotationsDialog) dialog).open();\r
-                               if (value instanceof Set) {\r
-                                       \r
-                                       Set annotations = (Set) value;\r
-                                       saveAnnotations(annotations);\r
-                                       return new AnnotationPropertySource(annotations);\r
-                               }\r
-                               return null;\r
-                       }\r
-               \r
-        };\r
-        if (getValidator() != null) {\r
-                       editor.setValidator(getValidator());\r
-               }\r
-        return editor;\r
-    }\r
-        \r
-    abstract protected void saveAnnotations(Set set);  \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CheckboxPropertyDescriptor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CheckboxPropertyDescriptor.java
deleted file mode 100644 (file)
index c1d7976..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.jface.viewers.CheckboxCellEditor;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-\r
-public class CheckboxPropertyDescriptor extends PropertyDescriptor {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CheckboxPropertyDescriptor.class);\r
-       \r
-       public CheckboxPropertyDescriptor(Object id, String displayName) {\r
-               super(id, displayName);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-       * @see\r
-       org.eclipse.ui.views.properties.IPropertyDescriptor#createPropertyEditor(org.eclipse.swt.widgets.Composite)\r
-       */\r
-       public CellEditor createPropertyEditor(Composite parent) {\r
-               CellEditor editor = new CheckboxCellEditor(parent);\r
-               if (getValidator() != null) {\r
-                       editor.setValidator(getValidator());\r
-               }\r
-               return editor;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CollectionPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CollectionPropertySource.java
deleted file mode 100644 (file)
index 452af13..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import java.util.Collection;\r
-import java.util.Vector;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 08.05.2008\r
- * @version 1.0\r
- */\r
-abstract public class CollectionPropertySource implements IPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CollectionPropertySource.class);\r
-\r
-       protected Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
-       protected Collection collection;\r
-       private Object collectionOwner;\r
-       \r
-       public CollectionPropertySource(Collection collection) {\r
-               this.collection = collection;\r
-               for (Object item : collection) {\r
-                       addDescriptor(item);\r
-               }\r
-       }\r
-\r
-       public CollectionPropertySource(Collection collection, Object collectionOwner) {\r
-               this.collection = collection;\r
-               this.collectionOwner = collectionOwner;\r
-               for (Object item : collection) {\r
-                       addDescriptor(item);\r
-               }\r
-       }\r
-       \r
-       protected Object getCollectionOwner() {\r
-               return collectionOwner;\r
-       }\r
-       \r
-       protected void addDescriptor(Object item) {\r
-               String itemDisplayName = getItemDisplayName(item);\r
-               descriptors.addElement(\r
-                               new PropertyDescriptor(item, itemDisplayName));\r
-       }\r
-       \r
-       /**\r
-        * Returns the label for the name of the property sheet entry.\r
-        *  Return "" if the entry should have no label.\r
-        * \r
-        * @param item\r
-        * @return\r
-        */\r
-       abstract protected String getItemDisplayName(Object item);\r
-\r
-       public Object getEditableValue() {\r
-               return this;\r
-       }\r
-       \r
-       public IPropertyDescriptor[] getPropertyDescriptors() {\r
-               return (IPropertyDescriptor[]) descriptors.toArray(\r
-                new IPropertyDescriptor[descriptors.size()]);\r
-       }\r
-\r
-       abstract public Object getPropertyValue(Object id);\r
-\r
-       public boolean isPropertySet(Object id) {\r
-               return false;\r
-       }       \r
-       \r
-       public void resetPropertyValue(Object id) {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)\r
-        */\r
-       abstract public void setPropertyValue(Object id, Object value);\r
-       \r
-       /**\r
-        * Returns the string that should appear in the parent\r
-        *  entry's value field, which is usually "".\r
-        * \r
-        * @return String\r
-        * @see java.lang.Object#toString()\r
-        */\r
-       @Override\r
-       abstract public String toString();\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CompletionProcessor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/CompletionProcessor.java
deleted file mode 100644 (file)
index 15d2954..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.text.ITextViewer;\r
-import org.eclipse.jface.text.contentassist.CompletionProposal;\r
-import org.eclipse.jface.text.contentassist.ICompletionProposal;\r
-import org.eclipse.jface.text.contentassist.IContentAssistProcessor;\r
-import org.eclipse.jface.text.contentassist.IContextInformation;\r
-import org.eclipse.jface.text.contentassist.IContextInformationValidator;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 19.05.2008\r
- * @version 1.0\r
- */\r
-public class CompletionProcessor implements IContentAssistProcessor {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CompletionProcessor.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#computeCompletionProposals(org.eclipse.jface.text.ITextViewer, int)\r
-        */\r
-       public ICompletionProposal[] computeCompletionProposals(\r
-                       ITextViewer viewer, int documentOffset) {\r
-               String context = "Describe formatting / parsing of this rel. type.";\r
-//                     Image img = ResourceManager.getPluginImage(Activator.getDefault(), "icons/unknown.gif");\r
-//             ICompletionProposal[] result =\r
-//                     new ICompletionProposal[myProposals.length];\r
-//             for (int i = 0; i < myProposals.length; i++) {\r
-//                   IContextInformation contextInfo = \r
-//                              new ContextInformation(null, myProposals[i]+" Style");\r
-//                     result[i] = new CompletionProposal(myProposals[i],documentOffset, 0, \r
-//                                     myProposals[i].length(), ResourceManager.getPluginImage(Activator.getDefault(), myIcons[i]), \r
-//                                     myProposals[i], contextInfo, context);\r
-//\r
-//             }\r
-//             return result;\r
-               String searchText = viewer.getTextWidget().getText() + "%";\r
-//             List<TaxonNameBase> names = CdmUtil.getNameByName(searchText);\r
-               List<TaxonNameBase> names = null;\r
-               logger.warn(names.size() + " names");\r
-               List<ICompletionProposal> proposals = new ArrayList<ICompletionProposal>();\r
-//             String[] test = new String[] {"suggestion 1", "suggestion 2", "suggestion 3"};\r
-               for (TaxonNameBase name : names) {\r
-                       String proposalText = name.getTitleCache();\r
-//             for (String proposalText : test) {\r
-                       proposals.add(new CompletionProposal(proposalText,\r
-                                       0,\r
-                                       searchText.length(),\r
-                                       proposalText.length(),\r
-                                       null,\r
-                                       proposalText,\r
-                                       null,\r
-                                       null\r
-                                       ));\r
-               }               \r
-               logger.warn(proposals.size() + " proposals.");\r
-               return proposals.toArray(new ICompletionProposal[proposals.size()]);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#computeContextInformation(org.eclipse.jface.text.ITextViewer, int)\r
-        */\r
-       public IContextInformation[] computeContextInformation(ITextViewer viewer,\r
-                       int offset) {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getCompletionProposalAutoActivationCharacters()\r
-        */\r
-       public char[] getCompletionProposalAutoActivationCharacters() {\r
-               return new char[] {'a','b','c','d','e','f','g','H'};\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getContextInformationAutoActivationCharacters()\r
-        */\r
-       public char[] getContextInformationAutoActivationCharacters() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getContextInformationValidator()\r
-        */\r
-       public IContextInformationValidator getContextInformationValidator() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.text.contentassist.IContentAssistProcessor#getErrorMessage()\r
-        */\r
-       public String getErrorMessage() {\r
-               // TODO Auto-generated method stub\r
-               return null;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/DayValidator.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/DayValidator.java
deleted file mode 100644 (file)
index d0bfe10..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.ICellEditorValidator;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 11.11.2008\r
- * @version 1.0\r
- */\r
-public class DayValidator implements ICellEditorValidator {\r
-       private static final Logger logger = Logger.getLogger(DayValidator.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.viewers.ICellEditorValidator#isValid(java.lang.Object)\r
-        */\r
-       \r
-       public String isValid(Object value) {\r
-               \r
-               String msg = "Value in day field must be an integer between 1-31."; \r
-               \r
-               if (((String) value).equals("")) {\r
-                       return null;\r
-               }\r
-               \r
-               Integer day = 0;\r
-               try {\r
-                       day = new Integer((String) value);\r
-               } catch (ClassCastException e) {\r
-                       return msg;\r
-               } catch (NumberFormatException e) {\r
-                       return msg;\r
-               }\r
-\r
-               if (day == 0 || day > 31) {\r
-                       return msg;\r
-               }\r
-               \r
-               return null;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/EditorPropertySheetEntry.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/EditorPropertySheetEntry.java
deleted file mode 100644 (file)
index 2d0206f..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.ui.views.properties.PropertySheetEntry;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.controller.EditorController;\r
-\r
-/**\r
- * Redraws editor / freetext area when a value in the property sheet changes.\r
- * <p>\r
- * Also includes a lovely little hack to enable custom sorting:\r
- * <p>\r
- * GetDisplayName() is called by two methods from the PropertySheetViewer, which\r
- * <ul>\r
- *    <li>we are not allowed to set, and</li>\r
- *    <li>uses a comparator which sorts alphabetically.</li>\r
- * </ul>\r
- * So we set display names in the PropertySourceDescriptors as "01:Uninomial",\r
- *  "02:Specific Epithet"; if we ascertain from the stack trace that a "compare"\r
- *  method is asking for the display name, we return the uncut version for\r
- *  sorting; when any other method requests a display name, we chop off the ":"\r
- *  and everything before it.\r
- * </p>\r
- * @author p.ciardelli\r
- * @created 16.05.2008\r
- * @version 1.0\r
- */\r
-public class EditorPropertySheetEntry extends PropertySheetEntry {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(EditorPropertySheetEntry.class);\r
-       \r
-       private Taxon taxon;\r
-       \r
-       protected PropertySheetEntry createChildEntry() {\r
-        return new EditorPropertySheetEntry(taxon);\r
-    }\r
-           \r
-       public EditorPropertySheetEntry(Taxon taxon) {\r
-               super();\r
-               \r
-               this.taxon = taxon;\r
-       }\r
-       \r
-    /* (non-Javadoc)\r
-     * @see org.eclipse.ui.views.properties.PropertySheetEntry#getDisplayName()\r
-     */\r
-    public String getDisplayName() {\r
-       \r
-       String displayName = super.getDisplayName();\r
-               \r
-               Thread currentThread = Thread.currentThread();\r
-               \r
-               // currentThread.getStackTrace()[0] = call to getStackTrace\r
-               // currentThread.getStackTrace()[1] = getDisplayName\r
-               // currentThread.getStackTrace()[2] = who is calling getDisplayName\r
-               StackTraceElement stackRequestingName = currentThread.getStackTrace()[2];\r
-\r
-               if (stackRequestingName.toString().lastIndexOf("compare") != -1) {\r
-                       return displayName;\r
-               }\r
-               \r
-        return truncateDisplayName(displayName);\r
-    }  \r
-    \r
-    /**\r
-     * Display names take the form "01:xxxx" to allow sorting. This method\r
-     * truncates everything before the colon, and is marked <i>public</i>\r
-     * to allow consistent truncation of property sheet id's.\r
-     * \r
-     * @param displayName\r
-     * @return\r
-     */\r
-    public static String truncateDisplayName(String displayName) {\r
-               int colon = displayName.lastIndexOf(':');\r
-        if (colon != -1) {\r
-               displayName = displayName.substring(colon + 1);\r
-        }\r
-       return displayName;\r
-    }\r
-    \r
-//    protected void valueChanged(PropertySheetEntry child) {\r
-//     \r
-//     super.valueChanged(child);\r
-//     \r
-//     // If this is the top level of the property sheet, redraw the freetext area\r
-//     if (getParent() == null) {\r
-//             EditorController.redraw(taxon);  // causing infinite loops?\r
-//     }\r
-//    }\r
-    \r
-    protected void refreshFromRoot() {\r
-       super.refreshFromRoot();\r
-       \r
-       // If this is the top level of the property sheet, redraw the freetext area\r
-       if (getParent() == null) {\r
-               EditorController.redraw(taxon);  // causing infinite loops?\r
-       }\r
-    }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/MarkersPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/MarkersPropertySource.java
deleted file mode 100644 (file)
index e87e71d..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-\r
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import java.util.Collection;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.common.Marker;\r
-import eu.etaxonomy.cdm.model.common.MarkerType;\r
-\r
-public class MarkersPropertySource extends CollectionPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(MarkersPropertySource.class);\r
-\r
-\r
-       public MarkersPropertySource(Collection collection) {\r
-               super(collection);\r
-//             logger.warn("Markers collection contains " + collection.size() + " elements.");\r
-       }\r
-\r
-       protected void addDescriptor(Object item) {\r
-               String itemDisplayName = getItemDisplayName(item);\r
-               descriptors.addElement(\r
-                               new CheckboxPropertyDescriptor(item, itemDisplayName));\r
-       }\r
-       \r
-       @Override\r
-       protected String getItemDisplayName(Object item) {\r
-               String itemDisplayName = "";\r
-               if (item instanceof Marker) {\r
-                       Marker marker = (Marker) item;\r
-                       MarkerType markerType = marker.getMarkerType();\r
-                       if (markerType != null) {\r
-                               return markerType.getLabel();\r
-                       }\r
-               }\r
-               return itemDisplayName;\r
-       }\r
-\r
-       @Override\r
-       public Object getPropertyValue(Object id) {\r
-               if (id instanceof Marker) {\r
-                       Marker marker = (Marker) id;\r
-                       if (marker.getFlag()) {\r
-                               return Boolean.TRUE;\r
-                       } else {\r
-                               return Boolean.FALSE;\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       @Override\r
-       public void setPropertyValue(Object id, Object value) {\r
-               if (id instanceof Marker && value instanceof Boolean) {\r
-                       logger.warn("Updating marker values");\r
-                       Marker marker = (Marker) id;\r
-                       marker.setFlag((Boolean) value);\r
-               } else {\r
-                       logger.warn("Marker update failed type checks");                        \r
-               }\r
-       }\r
-\r
-       @Override\r
-       public String toString() {\r
-               // "Markers" header has no value\r
-               return "";\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/SourceViewerConfig.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/SourceViewerConfig.java
deleted file mode 100644 (file)
index dad93d8..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.text.IDocument;\r
-import org.eclipse.jface.text.contentassist.ContentAssistEvent;\r
-import org.eclipse.jface.text.contentassist.ContentAssistant;\r
-import org.eclipse.jface.text.contentassist.ICompletionListener;\r
-import org.eclipse.jface.text.contentassist.ICompletionProposal;\r
-import org.eclipse.jface.text.contentassist.IContentAssistant;\r
-import org.eclipse.jface.text.source.ISourceViewer;\r
-import org.eclipse.jface.text.source.SourceViewerConfiguration;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.swt.graphics.RGB;\r
-import org.eclipse.swt.widgets.Display;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 19.05.2008\r
- * @version 1.0\r
- */\r
-public class SourceViewerConfig extends SourceViewerConfiguration {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(SourceViewerConfig.class);\r
-       \r
-       public IContentAssistant getContentAssistant(ISourceViewer sourceViewer) {\r
-\r
-               ContentAssistant assistant = new ContentAssistant();\r
-               assistant.setContentAssistProcessor(\r
-                       new CompletionProcessor(),\r
-                       IDocument.DEFAULT_CONTENT_TYPE);\r
-               assistant.enableAutoActivation(true);\r
-               assistant.setAutoActivationDelay(50);\r
-               assistant.setProposalPopupOrientation(\r
-                       IContentAssistant.PROPOSAL_OVERLAY);\r
-               assistant.setStatusLineVisible(true);\r
-//             assistant.setStatusMessage("Create a nomenclatural or taxonomic relationship");\r
-               assistant.setProposalSelectorBackground(\r
-                               new Color(Display.getCurrent(), new RGB(255, 255, 255)));\r
-               assistant.setInformationControlCreator(\r
-                               getInformationControlCreator(sourceViewer)); // this is what pops up in the yellow context box\r
-               assistant.addCompletionListener(new ICompletionListener() {\r
-\r
-                       public void assistSessionEnded(ContentAssistEvent event) {\r
-                               // TODO Auto-generated method stub\r
-                       }\r
-\r
-                       public void assistSessionStarted(ContentAssistEvent event) {\r
-                               // TODO Auto-generated method stub\r
-                       }\r
-\r
-                       public void selectionChanged(ICompletionProposal proposal,\r
-                                       boolean smartToggle) {\r
-                               if (smartToggle) {\r
-                                       logger.warn("Inserting " + proposal.getDisplayString());\r
-                               }\r
-                       }\r
-               });\r
-               return assistant;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/TimePeriodPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/TimePeriodPropertySource.java
deleted file mode 100644 (file)
index a4ee263..0000000
+++ /dev/null
@@ -1,253 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import java.beans.PropertyChangeListener;\r
-import java.beans.PropertyChangeSupport;\r
-import java.text.DateFormat;\r
-import java.text.SimpleDateFormat;\r
-import java.util.Vector;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.ComboBoxPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.common.TimePeriod;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 10.11.2008\r
- * @version 1.0\r
- */\r
-public class TimePeriodPropertySource implements IPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TimePeriodPropertySource.class);\r
-       \r
-       private TimePeriod timePeriod;\r
-       \r
-       // Property unique keys\r
-       public static final String P_ID_STARTYEAR = "P_ID_STARTYEAR";\r
-       public static final String P_ID_STARTMONTH = "P_ID_STARTMONTH";\r
-       public static final String P_ID_STARTDAY = "P_ID_STARTDAY";\r
-       public static final String P_ID_ENDYEAR = "P_ID_ENDYEAR";\r
-       public static final String P_ID_ENDMONTH = "P_ID_ENDMONTH";\r
-       public static final String P_ID_ENDDAY = "P_ID_ENDDAY";\r
-               \r
-       // Property display keys\r
-       public static final String P_STARTYEAR = "00:Year (Start)";\r
-       public static final String P_STARTMONTH = "01:Month (Start)";\r
-       public static final String P_STARTDAY = "02:Day (Start)";\r
-       public static final String P_ENDYEAR = "03:Year (End)";\r
-       public static final String P_ENDMONTH = "04:Month (End)";\r
-       public static final String P_ENDDAY = "05:Day (End)";   \r
-\r
-       protected static final String[] TOP_LEVEL_PROPERTIES = \r
-               new String[] {P_ID_STARTYEAR, P_ID_STARTMONTH, P_ID_STARTDAY, \r
-                                               P_ID_ENDYEAR, P_ID_ENDMONTH, P_ID_ENDDAY};\r
-                       \r
-       private static final String[] P_MONTH_MENU = new String[] {"", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};\r
-       \r
-       public TimePeriodPropertySource(TimePeriod timePeriod) {\r
-               super();\r
-               \r
-               if (timePeriod == null) {\r
-                       timePeriod = TimePeriod.NewInstance();\r
-               }\r
-               this.timePeriod = timePeriod;\r
-\r
-               // Add property sheet descriptors\r
-               for (String key : TOP_LEVEL_PROPERTIES) {\r
-                       addDescriptor(key);\r
-               }\r
-       }\r
-               \r
-    //static date formatter\r
-    private static final DateFormat formatter = new SimpleDateFormat(\r
-            "EEEE, MMMM d, yyyy"); //$NON-NLS-1$\r
-\r
-    private Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
-    \r
-    private void addDescriptor(String id) {\r
-        \r
-        if (id.equals(P_ID_STARTYEAR)) {\r
-               PropertyDescriptor descriptor = new TextPropertyDescriptor(P_ID_STARTYEAR, P_STARTYEAR);\r
-               descriptor.setValidator(new YearValidator());\r
-                       descriptors.addElement(descriptor);\r
-        }\r
-\r
-        if (id.equals(P_ID_STARTMONTH)) {\r
-               descriptors.addElement(new ComboBoxPropertyDescriptor(\r
-                               P_ID_STARTMONTH, P_STARTMONTH, P_MONTH_MENU));\r
-        }\r
-\r
-        if (id.equals(P_ID_STARTDAY)) {\r
-               PropertyDescriptor descriptor = new TextPropertyDescriptor(P_ID_STARTDAY, P_STARTDAY);\r
-               descriptor.setValidator(new DayValidator());\r
-                       descriptors.addElement(descriptor);\r
-        }\r
-        \r
-        if (id.equals(P_ID_ENDYEAR)) {\r
-               PropertyDescriptor descriptor = new TextPropertyDescriptor(P_ID_ENDYEAR, P_ENDYEAR);\r
-               descriptor.setValidator(new YearValidator());\r
-                       descriptors.addElement(descriptor);\r
-        }\r
-\r
-        if (id.equals(P_ID_ENDMONTH)) {\r
-               descriptors.addElement(new ComboBoxPropertyDescriptor(\r
-                               P_ID_ENDMONTH, P_ENDMONTH, P_MONTH_MENU));\r
-        }\r
-        \r
-        if (id.equals(P_ID_ENDDAY)) {\r
-               PropertyDescriptor descriptor = new TextPropertyDescriptor(P_ID_ENDDAY, P_ENDDAY);\r
-               descriptor.setValidator(new DayValidator());\r
-                       descriptors.addElement(descriptor);\r
-        }\r
-    }\r
-\r
-    /* (non-Javadoc)\r
-     * Method declared on IPropertySource\r
-     */\r
-    public IPropertyDescriptor[] getPropertyDescriptors() {\r
-               return (IPropertyDescriptor[]) descriptors.toArray(\r
-                new IPropertyDescriptor[descriptors.size()]);\r
-    }\r
-\r
-    public Object getPropertyValue(Object id) {\r
-       \r
-       if (id.equals(P_ID_STARTYEAR)) {\r
-               Integer startYear = timePeriod.getStartYear();\r
-               return (startYear == null) ? "" : String.valueOf(startYear);\r
-       }\r
-\r
-       if (id.equals(P_ID_STARTMONTH)) {\r
-               Integer startMonth = timePeriod.getStartMonth();\r
-               return (startMonth == null) ? 0 : startMonth;\r
-       }\r
-\r
-       if (id.equals(P_ID_STARTDAY)) {\r
-               Integer startDay = timePeriod.getStartDay();                    \r
-               return (startDay == null) ? "" : String.valueOf(startDay);\r
-       }\r
-       \r
-       if (id.equals(P_ID_ENDYEAR)) {\r
-               Integer endYear = timePeriod.getEndYear();\r
-               return (endYear == null) ? "" : String.valueOf(endYear);\r
-       }\r
-\r
-       if (id.equals(P_ID_ENDMONTH)) {\r
-               Integer endMonth = timePeriod.getEndMonth();\r
-               return (endMonth == null) ? 0 : endMonth;\r
-       }\r
-\r
-       if (id.equals(P_ID_ENDDAY)) {\r
-               Integer endDay = timePeriod.getEndDay();\r
-               return (endDay == null) ? "" : String.valueOf(endDay);\r
-       }\r
-       \r
-        return "";\r
-    }\r
-\r
-    /* (non-Javadoc)\r
-     * Method declared on IPropertySource\r
-     */\r
-    public boolean isPropertySet(Object property) {\r
-       return false;\r
-    }\r
-\r
-    /* (non-Javadoc)\r
-     * Method declared on IPropertySource\r
-     */\r
-    public void resetPropertyValue(Object property) {}\r
-\r
-    public void setPropertyValue(Object id, Object value) {\r
-\r
-               if (id.equals(P_ID_STARTYEAR)) {\r
-                       timePeriod.setStartYear(castToInteger(value));\r
-               }\r
-       \r
-               if (id.equals(P_ID_STARTMONTH)) {\r
-                       timePeriod.setStartMonth(castToInteger(value));\r
-               }\r
-       \r
-               if (id.equals(P_ID_STARTDAY)) {\r
-                       timePeriod.setStartDay(castToInteger(value));\r
-               }\r
-               \r
-               if (id.equals(P_ID_ENDYEAR)) {\r
-                       timePeriod.setEndYear(castToInteger(value));\r
-               }\r
-       \r
-               if (id.equals(P_ID_ENDMONTH)) {\r
-                       timePeriod.setEndMonth(castToInteger(value));\r
-               }\r
-       \r
-               if (id.equals(P_ID_ENDDAY)) {\r
-                       timePeriod.setEndDay(castToInteger(value));\r
-               }\r
-       \r
-       propertyChangeSupport.firePropertyChange(ITaxEditorConstants.PROPERTY_SHEET_CHANGE, null, timePeriod);\r
-    }\r
-\r
-    private Integer castToInteger(Object value) {\r
-       \r
-       // Dropdown lists return an Integer index\r
-       if (value instanceof Integer) {\r
-               \r
-               // First entry in dropdown is empty\r
-               if (((Integer) value).equals(0)) {\r
-                       return null;\r
-               } else {\r
-                       return (Integer) value; \r
-               }\r
-       }\r
-        \r
-       Integer integer = null;\r
-               try {\r
-                       integer = new Integer((String) value);\r
-                       \r
-               } catch (ClassCastException e) {\r
-               } catch (NumberFormatException e) {\r
-               }\r
-       return integer;\r
-    }\r
-    \r
-    /* (non-Javadoc)\r
-     * Method declared on IPropertySource\r
-     */\r
-    public Object getEditableValue() {\r
-       if (timePeriod == null) {\r
-               return "";\r
-       }\r
-       return timePeriod.getYear();\r
-    }\r
-    \r
-//    /**\r
-//     * The value as displayed in the Property Sheet.\r
-//     * @return java.lang.String\r
-//     */\r
-//    public String toString() {\r
-//     if (timePeriod == null) {\r
-//             return "";\r
-//     }\r
-//     return timePeriod.getYear();\r
-//     \r
-//    }        \r
-\r
-       private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this);\r
-       \r
-       public void addPropertyChangeListener(\r
-                       PropertyChangeListener listener) {\r
-               propertyChangeSupport.addPropertyChangeListener(listener);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/YearValidator.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/YearValidator.java
deleted file mode 100644 (file)
index c34a7b0..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.ICellEditorValidator;\r
-\r
-import eu.etaxonomy.cdm.model.common.TimePeriod;\r
-import eu.etaxonomy.cdm.model.reference.BibtexReference;\r
-import eu.etaxonomy.cdm.model.reference.StrictReferenceBase;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 10.11.2008\r
- * @version 1.0\r
- */\r
-public class YearValidator implements ICellEditorValidator {\r
-       private static final Logger logger = Logger.getLogger(YearValidator.class);\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.viewers.ICellEditorValidator#isValid(java.lang.Object)\r
-        */\r
-       public String isValid(Object value) {\r
-               String year = (String) value;\r
-               if (year.equals("")) {\r
-                       return null;\r
-               }\r
-               try {\r
-                       TimePeriod datePublished = CdmUtil.convertTimePeriod(year);\r
-               } catch (NumberFormatException e) {\r
-                       return "Year must be between 1750 and 2030. Two years can also be given in the format 'xxxx-xxxx'.";\r
-               }\r
-               return null;\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/CommonNamePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/CommonNamePropertySource.java
deleted file mode 100644 (file)
index 93a3fed..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.description;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.ComboBoxPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.common.Language;\r
-import eu.etaxonomy.cdm.model.description.CommonTaxonName;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.LanguageUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 02.04.2009\r
- * @version 1.0\r
- */\r
-public class CommonNamePropertySource extends DescriptionElementPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(CommonNamePropertySource.class);\r
-\r
-       public static final String P_ID_LANGUAGE = "language";\r
-       public static final String P_LANGUAGE = "011:Language";\r
-\r
-       private CommonTaxonName commonName;\r
-\r
-       private List<Language> languages;\r
-       private String[] languageStrings;\r
-       private int selectedLanguageIndex;\r
-       \r
-       /**\r
-        * @param element\r
-        */\r
-       public CommonNamePropertySource(CommonTaxonName commonName) {\r
-               super(commonName);\r
-               \r
-               this.commonName = commonName;\r
-               addDescriptor(P_ID_LANGUAGE);\r
-       }\r
-       \r
-       protected void addDescriptor(String id) {\r
-               super.addDescriptor(id);\r
-               \r
-               if (id.equals(P_ID_LANGUAGE)) {\r
-                       descriptors.addElement(\r
-                                       new ComboBoxPropertyDescriptor(P_ID_LANGUAGE, P_LANGUAGE, \r
-                                                       getLanguageStringArray()));\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * @return\r
-        */\r
-       private String[] getLanguageStringArray() {\r
-               if (languages == null) {\r
-                       languages = CdmSessionDataRepository.getDefault().getLanguages();\r
-                       \r
-                       int i = 0;\r
-                       languageStrings = new String[languages.size()];\r
-                       for (Language language : languages) {\r
-                               languageStrings[i] = LanguageUtil.getDescription(language);\r
-                               if (language.equals(commonName.getLanguage())) {\r
-                                       selectedLanguageIndex = i;\r
-                               }       \r
-                               i++;\r
-                       }\r
-               }\r
-               return languageStrings;\r
-       }\r
-\r
-       public Object getPropertyValue(Object id) {\r
-               \r
-               if (id.equals(P_ID_LANGUAGE)) {\r
-                       return selectedLanguageIndex;\r
-               }\r
-               \r
-               return super.getPropertyValue(id);\r
-       }\r
-       \r
-       public void setPropertyValue(Object id, Object value) {\r
-               if (id.equals(P_ID_LANGUAGE)) {\r
-                       selectedLanguageIndex = ((Integer) value).intValue();\r
-                       commonName.setLanguage(languages.get(selectedLanguageIndex));\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/DescriptionElementPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/DescriptionElementPropertySource.java
deleted file mode 100644 (file)
index ce4783b..0000000
+++ /dev/null
@@ -1,281 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.description;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-import java.util.HashMap;\r
-import java.util.Map;\r
-import java.util.Vector;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.ComboBoxPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.common.CdmUtils;\r
-import eu.etaxonomy.cdm.model.common.Language;\r
-import eu.etaxonomy.cdm.model.description.CommonTaxonName;\r
-import eu.etaxonomy.cdm.model.description.DescriptionElementBase;\r
-import eu.etaxonomy.cdm.model.description.Distribution;\r
-import eu.etaxonomy.cdm.model.description.Feature;\r
-import eu.etaxonomy.cdm.model.description.IndividualsAssociation;\r
-import eu.etaxonomy.cdm.model.description.QuantitativeData;\r
-import eu.etaxonomy.cdm.model.description.TaxonInteraction;\r
-import eu.etaxonomy.cdm.model.description.TextData;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.editor.reference.IReferenceSearch;\r
-import eu.etaxonomy.taxeditor.model.DescriptionUtil;\r
-import eu.etaxonomy.taxeditor.model.ReferenceUtil;\r
-import eu.etaxonomy.taxeditor.propertysheet.reference.ReferencePropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.reference.ReferenceSearchDescriptor;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 29.08.2008\r
- * @version 1.0\r
- */\r
-public class DescriptionElementPropertySource implements IPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(DescriptionElementPropertySource.class);\r
-       \r
-       /**\r
-        * The DescriptionElement whose properties are being displayed\r
-        */\r
-       private DescriptionElementBase descriptionElement;\r
-       \r
-       /**\r
-        * If this is a property with a parent, the parent's property ID\r
-        */\r
-       private String parentid;\r
-       \r
-       /**\r
-        * Property unique keys\r
-        */\r
-       public static final String P_ID_ELEMENT_CLASS = "element_class";\r
-       public static final String P_ID_ELEMENT_TEXT = "text";\r
-       public static final String P_ID_FEATURE = "feature";\r
-       public static final String P_ID_BIBREF = "bibref";\r
-       public static final String P_ID_MICROREF = "microref";\r
-       \r
-       /**\r
-        * Property display keys\r
-        *  Note: for an explanation of the sorting prefixes ("04:"),\r
-        *  @see eu.etaxonomy.taxeditor.propertysheet.EditorPropertySheetEntry\r
-        */\r
-       public static final String P_ELEMENT_CLASS = "01:Save element as";\r
-       public static final String P_ELEMENT_TEXT = "00:Element";\r
-       public static final String P_FEATURE = "01:Feature";\r
-       public static final String P_BIBREF = "02:Bibliographic Reference";\r
-       public static final String P_MICROREF = "03:Reference Detail";\r
-       \r
-       protected static final String[] TOP_LEVEL_PROPERTIES = \r
-                       new String[] {P_ID_ELEMENT_TEXT, P_ID_FEATURE, P_ID_BIBREF, P_ID_MICROREF};\r
-       \r
-       private String[] P_FEATURE_CLASS_NAME_MENU;\r
-       private Class[] P_FEATURE_CLASSES;\r
-       \r
-       /**\r
-        * Constructor for top level property fields. All fields that are not subfields\r
-        *  should be listed here.\r
-        * @param name\r
-        */\r
-       public DescriptionElementPropertySource(DescriptionElementBase descriptionElement) {\r
-               this(descriptionElement, null, TOP_LEVEL_PROPERTIES);\r
-       }\r
-       \r
-       public DescriptionElementPropertySource(DescriptionElementBase descriptionElement, String parentid, \r
-                       String[] keys) {\r
-               this.descriptionElement = descriptionElement;\r
-               this.parentid = parentid;\r
-               for (String key : keys) {\r
-                       addDescriptor(key);\r
-               }\r
-       }\r
-\r
-       protected Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
-       /**\r
-        * Add descriptor for a given property.\r
-        * \r
-        * Notes on Descriptor:\r
-        * \r
-        *  PropertyDescriptor - uneditable cell value\r
-        *  ComboBoxPropertyDescriptor - dropdown list, property supplied must be integer-based\r
-        *  TextPropertyDescriptor - editable cell value\r
-        *  \r
-        *  If any descriptor calls setCategory, all descriptors w/out a category are put in \r
-        *  category "Misc".\r
-        *  \r
-        *  descriptor.setFilterFlags (new String[] { IPropertySheetEntry.FILTER_ID_EXPERT }) -\r
-        *   this descriptor shown under advanced properties\r
-        *  \r
-        * @param id\r
-        */\r
-       protected void addDescriptor(String id) {\r
-               if (id.equals(P_ID_ELEMENT_CLASS)) {\r
-                       \r
-                       Feature feature = descriptionElement.getFeature();\r
-                       Map<Class, String> supportedClasses = new HashMap<Class, String>();\r
-                       \r
-                       // Populate feature class arrays with classes supported by this feature\r
-                       if (feature.supportsCommonTaxonName()) {\r
-                               supportedClasses.put(CommonTaxonName.class, "Common name");\r
-                       }\r
-                       if (feature.supportsDistribution()) {\r
-                               supportedClasses.put(Distribution.class, "Distribution");                               \r
-                       }\r
-                       if (feature.supportsIndividualAssociation()) {\r
-                               supportedClasses.put(IndividualsAssociation.class, "Individual association");                           \r
-                       }\r
-                       if (feature.supportsQuantitativeData()) {\r
-                               supportedClasses.put(QuantitativeData.class, "Quantitative data");                              \r
-                       }\r
-                       if (feature.supportsTaxonInteraction()) {\r
-                               supportedClasses.put(TaxonInteraction.class, "Taxon interaction");                              \r
-                       }\r
-                       if (feature.supportsTextData()) {\r
-                               supportedClasses.put(TextData.class, "Text");                           \r
-                       } \r
-                       \r
-                       P_FEATURE_CLASS_NAME_MENU = supportedClasses.values().toArray((new String[supportedClasses.size()]));\r
-                       P_FEATURE_CLASSES = supportedClasses.keySet().toArray(new Class[supportedClasses.size()]);\r
-                       \r
-                       descriptors.addElement(                         \r
-                                       new ComboBoxPropertyDescriptor(P_ID_ELEMENT_CLASS, P_ELEMENT_CLASS, P_FEATURE_CLASS_NAME_MENU)\r
-                       );\r
-               }\r
-               \r
-               if (id.equals(P_ID_FEATURE)) {\r
-                       descriptors.addElement(new PropertyDescriptor(P_ID_FEATURE, P_FEATURE));\r
-               }\r
-               \r
-               if (id.equals(P_ID_BIBREF)) {                   \r
-                       descriptors.addElement(new PropertyDescriptor(P_ID_BIBREF, P_BIBREF));\r
-               }\r
-               \r
-               if (id.equals(P_ID_ELEMENT_TEXT)) {\r
-                       descriptors.addElement(new TextPropertyDescriptor(P_ID_ELEMENT_TEXT, P_ELEMENT_TEXT));\r
-               }\r
-               \r
-               if (id.equals(P_ID_MICROREF)) {\r
-                       descriptors.addElement(new TextPropertyDescriptor(P_ID_MICROREF, P_MICROREF));\r
-               }\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()\r
-        */\r
-       public Object getEditableValue() {\r
-               return this;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()\r
-        */\r
-       public IPropertyDescriptor[] getPropertyDescriptors() {\r
-               return (IPropertyDescriptor[]) descriptors.toArray(\r
-                new IPropertyDescriptor[descriptors.size()]);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)\r
-        */\r
-       public Object getPropertyValue(Object id) {\r
-               if (id.equals(P_ID_ELEMENT_CLASS)) {\r
-                       if (descriptionElement instanceof TextData) {\r
-                               return 0;\r
-                       }\r
-                       if (descriptionElement instanceof CommonTaxonName) {\r
-                               return 1;\r
-                       }\r
-                       if (descriptionElement instanceof Distribution) {\r
-                               return 2;\r
-                       }\r
-               }\r
-               \r
-               if (id.equals(P_ID_FEATURE)) {\r
-                       Feature feature = descriptionElement.getFeature();\r
-                       if (feature != null) {\r
-                               return feature.getLabel();\r
-                       } else {\r
-                               return "";\r
-                       }\r
-               }\r
-\r
-               if (id.equals(P_ID_BIBREF)) {\r
-                       ReferenceBase citation = descriptionElement.getCitation();\r
-                       ReferencePropertySource bibRefPropertySource = new ReferencePropertySource(citation);\r
-                       bibRefPropertySource.addPropertyChangeListener(new PropertyChangeListener() {\r
-                               public void propertyChange(PropertyChangeEvent evt) {\r
-                                       descriptionElement.setCitation((ReferenceBase) evt.getNewValue());\r
-                               }\r
-                       });\r
-                       return bibRefPropertySource;\r
-               }\r
-               \r
-               if (id.equals(P_ID_ELEMENT_TEXT)) {\r
-                       return DescriptionUtil.getCache(descriptionElement);    \r
-               }\r
-\r
-               if (id.equals(P_ID_MICROREF)) {\r
-                       return CdmUtils.Nz(descriptionElement.getCitationMicroReference());\r
-               }\r
-               \r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)\r
-        */\r
-       public boolean isPropertySet(Object id) {\r
-               return false;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)\r
-        */\r
-       public void resetPropertyValue(Object id) {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)\r
-        */\r
-       public void setPropertyValue(Object id, Object value) {\r
-               if (id.equals(P_ID_ELEMENT_CLASS)) {\r
-                       // Hmmm ...\r
-               }\r
-               \r
-               if (id.equals(P_ID_BIBREF)) {\r
-                       \r
-                       if (value instanceof ReferenceBase) {\r
-                               descriptionElement.setCitation((ReferenceBase) value);\r
-                       }\r
-                       \r
-                       ReferenceBase bibRef = \r
-                                       ReferenceUtil.getOrCreateCitation(descriptionElement);\r
-                       \r
-                       // "value" is the ReferencePropertySource, so we get the TitleCache from its\r
-                       // toString() method\r
-                       bibRef.setTitleCache(value.toString());\r
-               }\r
-               \r
-               if (id.equals(P_ID_ELEMENT_TEXT)) {\r
-                       DescriptionUtil.setCache(descriptionElement, (String) value);\r
-               }\r
-               \r
-               if (id.equals(P_ID_MICROREF)) {\r
-                       descriptionElement.setCitationMicroReference((String) value);\r
-               }\r
-               \r
-               descriptionElement.firePropertyChange(ITaxEditorConstants.PROPERTY_SHEET_CHANGE, null, null);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/TaxonDescriptionPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/description/TaxonDescriptionPropertySource.java
deleted file mode 100644 (file)
index a95cdaf..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.description;\r
-\r
-import java.util.Vector;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 29.08.2008\r
- * @version 1.0\r
- */\r
-public class TaxonDescriptionPropertySource implements IPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxonDescriptionPropertySource.class);\r
-       \r
-       // The TaxonDescription whose properties are being displayed    \r
-       private TaxonDescription taxonDescription;\r
-       \r
-       // If this is a property with a parent, the parent's property ID\r
-       private String parentid;\r
-       \r
-    // Property unique keys\r
-       public static final String P_ID_UUID = "uuid";\r
-       public static final String P_ID_LABEL = "label";\r
-\r
-    // Property display keys\r
-       // Note: for an explanation of the sorting prefixes ("04:"), \r
-       //  @see eu.etaxonomy.taxeditor.propertysheet.CustomSortPropertySheetEntry\r
-       public static final String P_UUID = "00:UUID";  \r
-       public static final String P_LABEL = "01:Description Label";\r
-       \r
-//     protected static final String[] TOP_LEVEL_PROPERTIES = new String[] {\r
-//                     P_ID_LABEL, P_ID_UUID};\r
-       protected static final String[] TOP_LEVEL_PROPERTIES = new String[] {\r
-               P_ID_LABEL};            \r
-               \r
-       /**\r
-        * Constructor for top level property fields. All fields that are not subfields\r
-        *  should be listed here.\r
-        * @param name\r
-        */\r
-       public TaxonDescriptionPropertySource(TaxonDescription taxonDescription) {\r
-               this(taxonDescription, null, TOP_LEVEL_PROPERTIES);\r
-       }\r
-       \r
-       public TaxonDescriptionPropertySource(TaxonDescription taxonDescription, String parentid, \r
-                       String[] keys) {\r
-               this.taxonDescription = taxonDescription;\r
-               this.parentid = parentid;\r
-               for (String key : keys) {\r
-                       addDescriptor(key);\r
-               }\r
-       }\r
-\r
-       protected Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
-       /**\r
-        * Add descriptor for a given property.\r
-        * \r
-        * Notes on Descriptor:\r
-        * \r
-        *  PropertyDescriptor - uneditable cell value\r
-        *  ComboBoxPropertyDescriptor - dropdown list, property supplied must be integer-based\r
-        *  TextPropertyDescriptor - editable cell value\r
-        *  \r
-        *  If any descriptor calls setCategory, all descriptors w/out a category are put in \r
-        *  category "Misc".\r
-        *  \r
-        *  descriptor.setFilterFlags (new String[] { IPropertySheetEntry.FILTER_ID_EXPERT }) -\r
-        *   this descriptor shown under advanced properties\r
-        *  \r
-        * @param id\r
-        */\r
-       protected void addDescriptor(String id) {\r
-               if (id.equals(P_ID_LABEL)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_LABEL, P_LABEL));\r
-               }\r
-               if (id.equals(P_ID_UUID)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_UUID, P_UUID));\r
-               }\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()\r
-        */\r
-       public Object getEditableValue() {\r
-               return this;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()\r
-        */\r
-       public IPropertyDescriptor[] getPropertyDescriptors() {\r
-               return (IPropertyDescriptor[]) descriptors.toArray(\r
-                new IPropertyDescriptor[descriptors.size()]);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)\r
-        */\r
-       public Object getPropertyValue(Object id) {\r
-               if (id.equals(P_ID_LABEL)) {\r
-                       return taxonDescription.getTitleCache();\r
-               }\r
-        if (id.equals(P_ID_UUID)) {\r
-                       return taxonDescription.getUuid().toString();\r
-        }\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)\r
-        */\r
-       public boolean isPropertySet(Object id) {\r
-               return false;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)\r
-        */\r
-       public void resetPropertyValue(Object id) {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)\r
-        */\r
-       public void setPropertyValue(Object id, Object value) {\r
-               if (id.equals(P_ID_LABEL)) {\r
-                       taxonDescription.setTitleCache((String) value);\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/images/ImagePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/images/ImagePropertySource.java
deleted file mode 100644 (file)
index d756d77..0000000
+++ /dev/null
@@ -1,129 +0,0 @@
-// $Id$\r
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.images;\r
-\r
-import java.io.IOException;\r
-import java.net.MalformedURLException;\r
-import java.net.URL;\r
-import java.util.Vector;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.taxeditor.editor.images.ImagesController;\r
-import eu.etaxonomy.taxeditor.editor.images.TaxonImagesEditor;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 30.03.2009\r
- * @version 1.0\r
- */\r
-public class ImagePropertySource implements IPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ImagePropertySource.class);\r
-       \r
-       private URL url;\r
-\r
-       private Taxon taxon;\r
-\r
-    // Property unique keys\r
-       public static final String P_ID_URL = "url";\r
-\r
-    // Property display keys\r
-       // Note: for an explanation of the sorting prefixes ("04:"), \r
-       //  @see eu.etaxonomy.taxeditor.propertysheet.CustomSortPropertySheetEntry\r
-       public static final String P_URL = "00:URL";\r
-       \r
-       /**\r
-        * @param url\r
-        */\r
-       public ImagePropertySource(Taxon taxon, URL url) {\r
-               this.taxon = taxon;\r
-               this.url = url;\r
-               \r
-               addDescriptor(P_ID_URL);\r
-       }\r
-\r
-       protected Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
-       \r
-       protected void addDescriptor(String id) {\r
-               if (id.equals(P_ID_URL)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_URL, P_URL));\r
-               }\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()\r
-        */\r
-       public Object getEditableValue() {\r
-               return this;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()\r
-        */\r
-       public IPropertyDescriptor[] getPropertyDescriptors() {\r
-               return (IPropertyDescriptor[]) descriptors.toArray(\r
-                new IPropertyDescriptor[descriptors.size()]);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)\r
-        */\r
-       public Object getPropertyValue(Object id) {\r
-        if (id.equals(P_ID_URL)) {\r
-                       return url.toString();\r
-        }\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)\r
-        */\r
-       public boolean isPropertySet(Object id) {\r
-               return false;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)\r
-        */\r
-       public void resetPropertyValue(Object id) {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)\r
-        */\r
-       public void setPropertyValue(Object id, Object value) {\r
-               if (id.equals(P_ID_URL)) {\r
-                       \r
-                       try {\r
-                               \r
-                               // TODO put this in an operation to allow undo\r
-                               URL newUrl = new URL((String) value);\r
-                               \r
-                               ImagesController.removeTaxonImageUrl(taxon, url);\r
-                               ImagesController.addTaxonImageUrl(taxon, newUrl);\r
-                               \r
-                               url = newUrl;\r
-                       } catch (MalformedURLException e) {\r
-                               // Do nothing if URL is malformed\r
-                       } catch (IOException e) {\r
-                               // Do nothing if URL causes an IO Exception\r
-                       }\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/BotanicalNamePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/BotanicalNamePropertySource.java
deleted file mode 100644 (file)
index 21099f1..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.name;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.common.CdmUtils;\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-\r
-/**\r
- * Property source for BotanicalName entries.\r
- *  \r
- * @author p.ciardelli\r
- * @created 21.05.2008\r
- * @version 1.0\r
- */\r
-public class BotanicalNamePropertySource extends NonViralNamePropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(BotanicalNamePropertySource.class);\r
-       \r
-    // Property unique keys\r
-       public static final String P_ID_REFERENCEYEAR = "referenceyear";        \r
-    // Property display keys\r
-       public static final String P_REFERENCEYEAR = "099:Reference Year";      \r
-               \r
-       public BotanicalNamePropertySource(BotanicalName name) {\r
-               super(name);\r
-//             addDescriptor(P_ID_REFERENCEYEAR);\r
-       }\r
-               \r
-       protected void addDescriptor(String id) {\r
-               if (id.equals(P_ID_REFERENCEYEAR)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_REFERENCEYEAR, P_REFERENCEYEAR));\r
-               }\r
-               super.addDescriptor(id);\r
-       }\r
-       \r
-       @Override\r
-       public Object getPropertyValue(Object id) {\r
-        if (id.equals(P_ID_NOMENCLATURAL_CODE)) {\r
-               return "ICBN";\r
-        }\r
-        if (id.equals(P_ID_REFERENCEYEAR)) {\r
-               return CdmUtils.Nz(name.getReferenceYear());\r
-        }\r
-               return super.getPropertyValue(id);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NameRelationsPropertyDescriptor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NameRelationsPropertyDescriptor.java
deleted file mode 100644 (file)
index 31cce4b..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.name;\r
-\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.jface.viewers.DialogCellEditor;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Dialog;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.taxeditor.actions.ui.OpenNameRelationsListWizardAction;\r
-\r
-/**\r
- * Property sheet descriptor that pops up a dialog window\r
- *  returning a set.\r
- *  \r
- * @author p.ciardelli\r
- * @created 19.05.2008\r
- * @version 1.0\r
- */\r
-abstract public class NameRelationsPropertyDescriptor extends PropertyDescriptor {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NameRelationsPropertyDescriptor.class);\r
-       \r
-       private TaxonNameBase name;\r
-       \r
-       public NameRelationsPropertyDescriptor(Object id, String displayName, TaxonNameBase name) {\r
-               super(id, displayName);\r
-               this.name = name;\r
-       }\r
-\r
-    public CellEditor createPropertyEditor(Composite parent) {\r
-        CellEditor editor = new DialogCellEditor(parent) {\r
-\r
-                       @Override\r
-                       protected Object openDialogBox(\r
-                                       Control cellEditorWindow) {\r
-                               \r
-                               new OpenNameRelationsListWizardAction(name).run();\r
-                               \r
-                               return new NameRelationsPropertySource(name, name.getNameRelations());\r
-                       }\r
-               \r
-        };\r
-        if (getValidator() != null) {\r
-                       editor.setValidator(getValidator());\r
-               }\r
-        return editor;\r
-    }\r
-        \r
-    abstract protected void saveNameRelations(Set set);        \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NameRelationsPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NameRelationsPropertySource.java
deleted file mode 100644 (file)
index ffb12e2..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-package eu.etaxonomy.taxeditor.propertysheet.name;\r
-\r
-import java.util.Collection;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameRelationship;\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.propertysheet.CollectionPropertySource;\r
-\r
-public class NameRelationsPropertySource extends CollectionPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NameRelationsPropertySource.class);\r
-       \r
-       private TaxonNameBase name;\r
-       private boolean isZoological = false;\r
-\r
-       public NameRelationsPropertySource(TaxonNameBase name, Collection collection) {\r
-               super(collection, name);\r
-               this.name = name;\r
-               if (name instanceof ZoologicalName) {\r
-                       isZoological = true;\r
-               }\r
-       }\r
-       \r
-       @Override\r
-       protected String getItemDisplayName(Object item) {\r
-               String itemDisplayName = "";\r
-               \r
-               if (item instanceof NameRelationship) {\r
-                       \r
-                       NameRelationship nameRelation = (NameRelationship) item;\r
-                       \r
-                       if (nameRelation.getFromName() instanceof ZoologicalName &&\r
-                                       nameRelation.getToName() instanceof ZoologicalName) {\r
-                               isZoological = true;    \r
-                       }\r
-                       \r
-                       if (nameRelation.getType() != null) {\r
-                               \r
-                               NameRelationshipType type = nameRelation.getType();\r
-                               \r
-                               String label;\r
-                               if (nameRelation.getFromName().equals(getCollectionOwner())) {\r
-                                       label = GlobalController.getNameRelationTypeLabel(type, isZoological);\r
-                               } else {\r
-                                       label = GlobalController.getNameRelationInverseTypeLabel(type, isZoological);\r
-                               }\r
-                               itemDisplayName = label;\r
-                       } else {\r
-                               itemDisplayName = "Relation has no type";\r
-                       }\r
-               }\r
-               return itemDisplayName;\r
-       }\r
-\r
-       @Override\r
-       public Object getPropertyValue(Object id) {\r
-               if (id instanceof NameRelationship) {\r
-                       TaxonNameBase relatedName;\r
-                       if (((NameRelationship) id).getFromName().equals(name)) {\r
-                               relatedName = ((NameRelationship) id).getToName();\r
-                       } else {\r
-                               relatedName = ((NameRelationship) id).getFromName();\r
-                       }\r
-               return relatedName.getTitleCache();\r
-               }\r
-               return null;\r
-       }\r
-\r
-       @Override\r
-       public void setPropertyValue(Object id, Object value) {\r
-               // Fields not editable in property sheet view\r
-       }\r
-\r
-       @Override\r
-       public String toString() {\r
-               // "Name Relations" header has no value\r
-               return "";\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NomStatusPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NomStatusPropertySource.java
deleted file mode 100644 (file)
index d1ad859..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.name;\r
-\r
-import java.util.ArrayList;\r
-import java.util.Collection;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;\r
-import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalStatus;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.propertysheet.CollectionPropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 15.05.2008\r
- * @version 1.0\r
- */\r
-public class NomStatusPropertySource extends CollectionPropertySource {\r
-       private static final Logger logger = Logger.\r
-                       getLogger(NomStatusPropertySource.class);\r
-\r
-       public NomStatusPropertySource(Collection collection) {\r
-               super(collection);\r
-       }\r
-\r
-       static NomenclaturalStatusType[] nomStatusTypes = null;\r
-       static String[] P_NOMSTATUS_MENU = null;\r
-       private static void populateNomStatusTypes() {\r
-               \r
-               // Get terms from nom status vocabulary\r
-               List<NomenclaturalStatusType> nomStatusTypesList = new ArrayList<NomenclaturalStatusType>();\r
-               nomStatusTypesList.addAll(\r
-                               CdmSessionDataRepository.getDefault().getNomStatus().getTerms());\r
-                               \r
-               // Populate nom status type menu labels \r
-               List<String> nomStatusTypesMenuList = new ArrayList<String>();\r
-               for (NomenclaturalStatusType nomStatusType : nomStatusTypesList) {\r
-                       nomStatusTypesMenuList.add(nomStatusType.getLabel());\r
-               }\r
-               \r
-               // Add an empty element for "nothing selected" in the rank drop-down \r
-               nomStatusTypesList.add(0, null);\r
-               nomStatusTypesMenuList.add(0, "");\r
-               \r
-               // Convert rank lists to array\r
-               nomStatusTypes = nomStatusTypesList.toArray(new NomenclaturalStatusType[nomStatusTypesList.size()]);\r
-               P_NOMSTATUS_MENU = nomStatusTypesMenuList.toArray(new String[nomStatusTypesMenuList.size()]);   \r
-       }               \r
-       \r
-\r
-       @Override\r
-       protected String getItemDisplayName(Object item) {\r
-               // No display names on individual nom statii\r
-               return "";\r
-       }\r
-\r
-       @Override\r
-       public Object getPropertyValue(Object id) {\r
-               if (id instanceof NomenclaturalStatus) {\r
-                       NomenclaturalStatus nomenclaturalStatus = (NomenclaturalStatus) id;\r
-                       NomenclaturalStatusType statusType = nomenclaturalStatus.getType(); \r
-                       if (statusType != null) {\r
-                               return statusType.getLabel();\r
-                       }\r
-               }\r
-               return null;\r
-       }\r
-\r
-       @Override\r
-       public void setPropertyValue(Object id, Object value) {\r
-               // Fields not editable in property sheet view   \r
-       }\r
-\r
-       @Override\r
-       public String toString() {\r
-               // "Nom. Status" header has no value\r
-               return "";\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NonViralNamePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/NonViralNamePropertySource.java
deleted file mode 100644 (file)
index 2fcbbe8..0000000
+++ /dev/null
@@ -1,594 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.name;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-import java.beans.PropertyChangeSupport;\r
-import java.util.ArrayList;\r
-import java.util.Date;\r
-import java.util.List;\r
-import java.util.Set;\r
-import java.util.Vector;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.ComboBoxPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.common.CdmUtils;\r
-import eu.etaxonomy.cdm.model.common.IIdentifiableEntity;\r
-import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalStatus;\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.reference.Generic;\r
-import eu.etaxonomy.cdm.model.reference.INomenclaturalReference;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.propertysheet.AnnotationPropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.AnnotationsPropertyDescriptor;\r
-import eu.etaxonomy.taxeditor.propertysheet.MarkersPropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.reference.NomenclaturalReferencePropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.reference.ReferencePropertySource;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 06.05.2008\r
- * @version 1.0\r
- */\r
-public class NonViralNamePropertySource implements IPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NonViralNamePropertySource.class);\r
-\r
-       // The name whose properties are being displayed\r
-       NonViralName name;\r
-       \r
-       // If this is a property with a parent, the parent's property ID\r
-       private String parentid = "";\r
-       \r
-       PropertyChangeSupport propertyChangeSupport;\r
-       \r
-    // Property unique keys\r
-       public static final String P_ID_PARSED = "parsed";\r
-       public static final String P_ID_RANK = "rank";\r
-       public static final String P_ID_TITLECACHE = "titlecache";\r
-       public static final String P_ID_HOMOTYPICALGROUP = "homogroup";\r
-       public static final String P_ID_NAMERELATIONS = "namerelations";\r
-       public static final String P_ID_TYPE = "type";\r
-       public static final String P_ID_ANNOTATIONS = "annotations";\r
-       public static final String P_ID_NOMSTATUS = "nomstatus";\r
-       public static final String P_ID_UUID = "uuid";  \r
-       public static final String P_ID_NUM_OF_BASES = "numberofbases";\r
-       public static final String P_ID_MARKERS = "markers";\r
-       public static final String P_ID_CREATED = "created";\r
-       public static final String P_ID_CREATEDBY = "createdby";\r
-       public static final String P_ID_NOMENCLATURAL_CODE = "nomenclaturalcode";\r
-       public static final String P_ID_NOMENCLATURAL_REF = "nomenclaturalref";\r
-       public static final String P_ID_NOMENCLATURAL_MICROREF = "nomenclaturalmicroref";\r
-       \r
-    // Property display keys\r
-       // Note: for an explanation of the sorting prefixes ("04:"), \r
-       //  @see eu.etaxonomy.taxeditor.propertysheet.CustomSortPropertySheetEntry\r
-       public static final String P_PARSED = "00:Parsing Status";\r
-       public static final String P_RANK = "02:Rank";\r
-       public static final String P_TITLECACHE = "03:Name Cache";\r
-       public static final String P_HOMOTYPICALGROUP = "09:Homotypical Group";\r
-       public static final String P_NAMERELATIONS = "11:Name Relations";\r
-       public static final String P_TYPE = "12:Type";\r
-       public static final String P_ANNOTATIONS = "14:Annotations";\r
-       public static final String P_NOMSTATUS = "100:Nomenclatural Status";\r
-       public static final String P_UUID = "01:UUID";\r
-       public static final String P_NUM_OF_BASES = "12:Number of Bases";\r
-       public static final String P_MARKERS = "13:Markers";\r
-       public static final String P_CREATED = "15:Created";\r
-       public static final String P_CREATEDBY = "16:Created By";\r
-       public static final String P_NOMENCLATURAL_CODE = "02:Nomenclatural Code";\r
-       public static final String P_NOMENCLATURAL_REF = "09:Nomenclatural Reference";\r
-       public static final String P_NOMENCLATURAL_MICROREF = "10:Reference Detail";\r
-       \r
-       protected static final String[] TOP_LEVEL_PROPERTIES = new String[] {\r
-                       P_ID_PARSED, P_ID_RANK, P_ID_TITLECACHE, P_ID_ANNOTATIONS, P_ID_NOMSTATUS, \r
-                       P_ID_NAMERELATIONS, P_ID_UUID, P_ID_NOMENCLATURAL_REF, P_ID_NOMENCLATURAL_MICROREF,\r
-                       P_ID_CREATED, P_ID_CREATEDBY, P_ID_NOMENCLATURAL_CODE };        \r
-       \r
-       // ***********************************************************\r
-       //              RANKS\r
-       // ***********************************************************\r
-       Rank[] ranks = null;\r
-       String[] P_RANK_MENU = null;\r
-       private void populateRanks() {\r
-               \r
-               // Get terms from rank vocabulary\r
-               List<Rank> ranksList = new ArrayList<Rank>();\r
-               ranksList.addAll(PreferencesController.getPreferredRanks());\r
-               \r
-               // Populate ranks menu labels \r
-               List<String> ranksMenuList = new ArrayList<String>();\r
-               for (Rank rank : ranksList) {\r
-                       ranksMenuList.add(rank.getLabel());\r
-               }\r
-               \r
-               // Add an empty element for "nothing selected" in the rank drop-down \r
-               ranksList.add(0, null);\r
-               ranksMenuList.add(0, "");\r
-               \r
-               // Convert rank lists to array\r
-               ranks = ranksList.toArray(new Rank[ranksList.size()]);\r
-               P_RANK_MENU = ranksMenuList.toArray(new String[ranksMenuList.size()]);\r
-       }\r
-       \r
-       // ***********************************************************\r
-       //              NOMENCLATURAL STATUS\r
-       // ***********************************************************\r
-//     static TermVocabulary<NomenclaturalStatusType> nomStatusVocabulary = \r
-//                     TaxEditorPlugin.getDefault().getNomStatusVocabulary();\r
-       NomenclaturalStatusType[] nomStatusTypes = null;\r
-       String[] P_NOMSTATUS_MENU = null;\r
-       private void populateNomStatusTypes() {\r
-               \r
-               // Get terms from nom status vocabulary\r
-               List<NomenclaturalStatusType> nomStatusTypesList = new ArrayList<NomenclaturalStatusType>();\r
-               TermVocabulary<NomenclaturalStatusType> statusVocab = \r
-                               CdmSessionDataRepository.getDefault().getNomStatus();\r
-               \r
-               // If there is no status vocabulary, init type and status w empty arrays and return\r
-               if (statusVocab == null) {\r
-                       nomStatusTypes = new NomenclaturalStatusType[]{};\r
-                       P_NOMSTATUS_MENU = new String[]{};\r
-                       return;\r
-               }\r
-               \r
-               nomStatusTypesList.addAll(statusVocab.getTerms());\r
-               \r
-               // Populate nom status type menu labels \r
-               List<String> nomStatusTypesMenuList = new ArrayList<String>();\r
-               for (NomenclaturalStatusType nomStatusType : nomStatusTypesList) {\r
-                       nomStatusTypesMenuList.add(nomStatusType.getLabel());\r
-               }\r
-               \r
-               // Add an empty element for "nothing selected" in the rank drop-down \r
-               nomStatusTypesList.add(0, null);\r
-               nomStatusTypesMenuList.add(0, "");\r
-               \r
-               // Convert rank lists to array\r
-               nomStatusTypes = nomStatusTypesList.toArray(new NomenclaturalStatusType[nomStatusTypesList.size()]);\r
-               P_NOMSTATUS_MENU = nomStatusTypesMenuList.toArray(new String[nomStatusTypesMenuList.size()]);\r
-       }       \r
-               \r
-       protected Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
-       /**\r
-        * Add descriptor for a given property.\r
-        * <p>\r
-        * Notes on Descriptor:\r
-        * </p>\r
-        * <ul>\r
-        *  <li>PropertyDescriptor - uneditable cell value</li>\r
-        *  <li>ComboBoxPropertyDescriptor - dropdown list, property supplied must be integer-based</li>\r
-        *  <li>TextPropertyDescriptor - editable cell value</li>\r
-        * </ul>\r
-        *  <p>\r
-        *  If any descriptor calls setCategory, all descriptors w/out a category are put in \r
-        *  category "Misc".\r
-        *  <p>\r
-        *  <code>descriptor.setFilterFlags (new String[] { IPropertySheetEntry.FILTER_ID_EXPERT })</code> -\r
-        *   this descriptor shown under advanced properties\r
-        *  \r
-        * @param id\r
-        */\r
-       protected void addDescriptor(String id) {\r
-               \r
-               // Parsed: reports whether parsing was successful\r
-               if (id.equals(P_ID_PARSED)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_PARSED, P_PARSED));\r
-               }\r
-               \r
-               // Rank menu\r
-               if (id.equals(P_ID_RANK)) {\r
-                       if (ranks == null) {\r
-                               populateRanks();\r
-                       }\r
-                       descriptors.addElement(\r
-                                       new ComboBoxPropertyDescriptor(P_ID_RANK, P_RANK, P_RANK_MENU));\r
-               }\r
-               \r
-               // Title cache\r
-               if (id.equals(P_ID_TITLECACHE)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_TITLECACHE, P_TITLECACHE));\r
-               }\r
-                               \r
-               // Homotypical group\r
-               if (id.equals(P_ID_HOMOTYPICALGROUP)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_HOMOTYPICALGROUP, P_HOMOTYPICALGROUP));\r
-               }\r
-               \r
-               // Name relations, listed in custom property descriptor\r
-               if (id.equals(P_ID_NAMERELATIONS)) {\r
-                       descriptors.addElement(\r
-                                       new NameRelationsPropertyDescriptor(P_ID_NAMERELATIONS, P_NAMERELATIONS, name) {\r
-                                               protected void saveNameRelations(Set set) {\r
-                                                       setPropertyValue(P_ID_NAMERELATIONS, set);\r
-                                               }\r
-                                       }\r
-                       );\r
-               };\r
-               \r
-               // Type\r
-               if (id.equals(P_ID_TYPE)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_TYPE, P_TYPE));\r
-               }\r
-               \r
-               // Annotations, listed in custom property descriptor\r
-               if (id.equals(P_ID_ANNOTATIONS)) {\r
-                       descriptors.addElement(\r
-                                       new AnnotationsPropertyDescriptor(P_ID_ANNOTATIONS, P_ANNOTATIONS, name) {\r
-                                               protected void saveAnnotations(Set set) {\r
-                                                       setPropertyValue(P_ID_ANNOTATIONS, set);\r
-                                               }\r
-                                       }\r
-                       );\r
-               };\r
-               \r
-               // Nomenclatural status\r
-               if (id.equals(P_ID_NOMSTATUS)) {\r
-                       if (nomStatusTypes == null) {\r
-                               populateNomStatusTypes();\r
-                       }\r
-                       descriptors.addElement(\r
-                                       new ComboBoxPropertyDescriptor(P_ID_NOMSTATUS, P_NOMSTATUS, P_NOMSTATUS_MENU));\r
-               }               \r
-               \r
-               // UUID\r
-               if (id.equals(P_ID_UUID)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_UUID, P_UUID));\r
-               }\r
-               \r
-               // Markers\r
-               if (id.equals(P_ID_MARKERS)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_MARKERS, P_MARKERS));\r
-               }\r
-               \r
-               // Taxon bases referring to this name\r
-               if (id.equals(P_ID_NUM_OF_BASES)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_NUM_OF_BASES, P_NUM_OF_BASES));\r
-               }\r
-               \r
-               // Object created when\r
-               if (id.equals(P_ID_CREATED)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_CREATED, P_CREATED));\r
-               }\r
-               \r
-               // Object created by\r
-               if (id.equals(P_ID_CREATEDBY)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_CREATEDBY, P_CREATEDBY));\r
-               }\r
-               \r
-               // Nomenclatural code used by parser\r
-               if (id.equals(P_ID_NOMENCLATURAL_CODE)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_NOMENCLATURAL_CODE, P_NOMENCLATURAL_CODE));\r
-               }\r
-               \r
-               // Nomenclatural reference\r
-               if (id.equals(P_ID_NOMENCLATURAL_REF)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_NOMENCLATURAL_REF,P_NOMENCLATURAL_REF));                    \r
-               }\r
-               \r
-               // Microreference\r
-               if (id.equals(P_ID_NOMENCLATURAL_MICROREF)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_NOMENCLATURAL_MICROREF,P_NOMENCLATURAL_MICROREF));\r
-               }       \r
-       }\r
-       \r
-       /**\r
-        * Constructor for top level property fields. All fields that are not subfields\r
-        *  should be listed here.\r
-        * @param name\r
-        */\r
-       public NonViralNamePropertySource(NonViralName name) {\r
-               this(name, null, TOP_LEVEL_PROPERTIES);\r
-       }\r
-\r
-       public NonViralNamePropertySource(NonViralName name, \r
-                       String parentid, String[] keys) {\r
-               this.name = name;\r
-               this.parentid = parentid;\r
-               for (String key : keys) {\r
-                       addDescriptor(key);\r
-               }\r
-       }\r
-\r
-       public Object getEditableValue() {\r
-               return CdmUtils.Nz(name.getTitleCache());\r
-       }\r
-\r
-       public IPropertyDescriptor[] getPropertyDescriptors() {\r
-               return (IPropertyDescriptor[]) descriptors.toArray(\r
-                new IPropertyDescriptor[descriptors.size()]);\r
-       }\r
-\r
-       public Object getPropertyValue(Object id) {\r
-               \r
-               // Parsed: reports whether parsing was successful               \r
-        if (id.equals(P_ID_PARSED)) {\r
-                       return name.getHasProblem() == true ? "problem" : "parsed" ;\r
-        }\r
-        \r
-               // Rank menu        \r
-               if (id.equals(P_ID_RANK)) {\r
-               if (this.name.getRank() == null) {\r
-                       return 0;\r
-               }\r
-               Rank rank = this.name.getRank();\r
-               for (int i = 0; i < ranks.length; i++) {\r
-                       if (ranks[i] == null) continue;\r
-                       if (rank.getUuid().equals(ranks[i].getUuid())) \r
-                               return i;\r
-               }\r
-               return 0;\r
-        }\r
-               \r
-               // Title cache          \r
-        if (id.equals(P_ID_TITLECACHE)) {\r
-               \r
-               // If the name has not been parsed, only show the title cache\r
-               if (name.getRank() == null) {\r
-                       return CdmUtils.Nz(name.getTitleCache());\r
-               } else {\r
-                       \r
-                       // Create property source for submenu\r
-                       ScientificNamePropertySource nameFieldsPropertySource = new ScientificNamePropertySource(name);\r
-                       \r
-                       // Add listener to notify name of all changes to nom. reference\r
-                       nameFieldsPropertySource.addPropertyChangeListener(new PropertyChangeListener() {\r
-                               public void propertyChange(PropertyChangeEvent evt) {\r
-//                                     if (evt.getNewValue() instanceof INomenclaturalReference) {\r
-//                                             name.setNomenclaturalReference((INomenclaturalReference) evt.getNewValue());\r
-//                                     }\r
-                               }\r
-                       });\r
-                       return nameFieldsPropertySource;\r
-               }\r
-        }\r
-                \r
-               // Homotypical group        \r
-        if (id.equals(P_ID_HOMOTYPICALGROUP)) {\r
-                       return CdmUtils.Nz(name.getHomotypicalGroup().getUuid().toString());\r
-        }\r
-        \r
-               // Annotations, listed in custom property descriptor        \r
-//        if (id.equals(P_ID_ANNOTATIONS)) {\r
-//                     return new AnnotationPropertySource(name.getAnnotations());\r
-//        }\r
-        \r
-               // Nomenclatural status        \r
-        if (id.equals(P_ID_NOMSTATUS)) {\r
-//                     return new NomStatusPropertySource(name.getStatus());\r
-//             if (this.name.getRank() == null) return 0;\r
-               Set<NomenclaturalStatus> nomStatusSet = this.name.getStatus();\r
-               \r
-               if (nomStatusSet == null || nomStatusSet.size() == 0) {\r
-                       return 0;\r
-               }\r
-               // TODO for now, only showing first nom status - change!\r
-               NomenclaturalStatus nomStatus = (NomenclaturalStatus) nomStatusSet.toArray()[0];\r
-               for (int i = 0; i < nomStatusTypes.length; i++) {\r
-                       if (nomStatusTypes[i] == null) continue;\r
-                       if (nomStatus.getType().getUuid().equals(nomStatusTypes[i].getUuid())) \r
-                               return i;\r
-               }\r
-               return 0;                       \r
-        }\r
-        \r
-               // Name relations, popup to edit list        \r
-        if (id.equals(P_ID_NAMERELATIONS)) {\r
-                       return new NameRelationsPropertySource(name, name.getNameRelations());\r
-        }\r
-        \r
-               // Type\r
-        if (id.equals(P_ID_TYPE)) {\r
-                       return "";\r
-        }\r
-        \r
-               // UUID        \r
-        if (id.equals(P_ID_UUID)) {\r
-                       return CdmUtils.Nz(name.getUuid().toString());\r
-        }\r
-        \r
-               // Markers        \r
-        if (id.equals(P_ID_MARKERS)) {\r
-                       return new MarkersPropertySource(name.getMarkers());\r
-        }\r
-\r
-               // Taxon bases referring to this name        \r
-        if (id.equals(P_ID_NUM_OF_BASES)) {\r
-                       return name.getTaxonBases().size();\r
-        }\r
-        \r
-               // Object created by        \r
-        if (id.equals(P_ID_CREATED)) {\r
-               if (name.getCreated() == null) {\r
-                       return "";\r
-               } else {\r
-                       return formatDate(name.getCreated().toDate());\r
-               }\r
-        }\r
-        \r
-               // Object created when        \r
-        if (id.equals(P_ID_CREATEDBY)) {\r
-               if (name.getCreatedBy() == null) {\r
-                       return "";\r
-               } else {\r
-                       return CdmUtils.Nz(((IIdentifiableEntity) name.getCreatedBy()).generateTitle());\r
-               }\r
-        }\r
-        \r
-               // Nomenclatural code used by parser        \r
-        if (id.equals(P_ID_NOMENCLATURAL_CODE)) {\r
-               // Only shown if extending classes don't handle P_ID_NOMENCLATURAL_CODE \r
-               return "none (nonviral name)";\r
-        }\r
-        \r
-               // Nomenclatural reference        \r
-        if (id.equals(P_ID_NOMENCLATURAL_REF)) {\r
-               \r
-               ReferenceBase nomRef = (ReferenceBase) name.getNomenclaturalReference();\r
-                       \r
-                       // Create nom. reference as necessary\r
-                       if (nomRef == null) {\r
-                               nomRef = Generic.NewInstance();\r
-                       }\r
-                       \r
-                       // Create property source for submenu\r
-                       ReferencePropertySource nomRefPropertySource = new NomenclaturalReferencePropertySource(nomRef);\r
-                       \r
-                       // Add listener to notify name of all changes to nom. reference\r
-                       nomRefPropertySource.addPropertyChangeListener(new PropertyChangeListener() {\r
-                               public void propertyChange(PropertyChangeEvent evt) {\r
-                                       if (evt.getNewValue() instanceof INomenclaturalReference) {\r
-                                               name.setNomenclaturalReference((ReferenceBase) evt.getNewValue());\r
-                                       }\r
-                               }\r
-                       });\r
-                       return nomRefPropertySource;\r
-               \r
-        }\r
-        \r
-               // Microreference        \r
-        if (id.equals(P_ID_NOMENCLATURAL_MICROREF)) {\r
-                       return CdmUtils.Nz(name.getNomenclaturalMicroReference());\r
-        }\r
-        return null;\r
-       }\r
\r
-       \r
-       private Object formatDate(Date date) {\r
-               return String.format("%1$tm-%1$td-%1$tY %1$tH:%1$tM:%1$tS", date);\r
-       }\r
-       \r
-       public boolean isPropertySet(Object id) {\r
-               return false;\r
-       }\r
-\r
-       public void resetPropertyValue(Object id) {}\r
-\r
-       /** \r
-        * Any editable fields are set in the object here.\r
-        * \r
-        * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)\r
-        */\r
-       public void setPropertyValue(Object id, Object value) {\r
-                               \r
-               // Since this is only called when the property value changes,\r
-               //      it is a reliable place to fire the name's property change\r
-               //      listener.\r
-               name.firePropertyChange(ITaxEditorConstants.PROPERTY_SHEET_CHANGE, null, null);\r
-               \r
-               // Rank menu            \r
-               if (id.equals(P_ID_RANK)) {\r
-                       int index = ((Integer) value).intValue();\r
-                       name.setRank(ranks[index]);\r
-        }\r
-                       \r
-               // Nomenclatural status        \r
-        if (id.equals(P_ID_NOMSTATUS)) {\r
-               NomenclaturalStatus nomStatus;\r
-                       int index = ((Integer) value).intValue();\r
-                       Set<NomenclaturalStatus> nomStatusSet = name.getStatus();               \r
-\r
-                       if (nomStatusSet.size() > 0) {\r
-                               nomStatus =     (NomenclaturalStatus) nomStatusSet.toArray()[0];\r
-                               \r
-                               if (index == 0) {\r
-                                       nomStatusSet.remove(nomStatus);\r
-                               } else {\r
-                                       nomStatus.setType(nomStatusTypes[index]);\r
-                               }\r
-                               \r
-                       } else {\r
-                               nomStatus = NomenclaturalStatus.NewInstance(nomStatusTypes[index]);\r
-                               name.addStatus(nomStatus);\r
-                       }\r
-        }\r
-        \r
-               // Markers        \r
-        if (id.equals(P_ID_MARKERS)) {\r
-               // TODO set markers\r
-        }\r
-        \r
-               // Nomenclatural reference        \r
-        if (id.equals(P_ID_NOMENCLATURAL_REF)) {\r
-               if (value instanceof INomenclaturalReference) {\r
-                       name.setNomenclaturalReference((ReferenceBase) value);\r
-               }\r
-        }\r
-        \r
-               // Microreference        \r
-        if (id.equals(P_ID_NOMENCLATURAL_MICROREF)) {\r
-               name.setNomenclaturalMicroReference((String) value);\r
-        }\r
-        \r
-               // If there is no rank, generated caches will be blank, wiping out the freetext area\r
-        if (name.getRank() != null) {\r
-               \r
-               // Reset both caches to reflect property sheet changes\r
-                       name.setTitleCache(name.generateTitle(), false);\r
-                       name.setFullTitleCache(name.generateFullTitle(), false);\r
-        }\r
-               \r
-//             name.firePropertyChange(ITaxEditorConstants.REFRESH_NAMEVIEWER, null, null);\r
-               \r
-       }\r
-\r
-       /** \r
-        * Any node with children must override {@link java.lang.Object#toString()} \r
-        * to display its name correctly\r
-        *  \r
-        * @see java.lang.Object#toString()\r
-        */\r
-       public String toString() {\r
-               if (parentid == null || parentid.equals("")) {\r
-                       return "";\r
-               }\r
-               if (parentid.equals(P_ID_TITLECACHE)) {\r
-                       return name.getTitleCache(); \r
-               }\r
-               if (parentid.equals(P_ID_NOMENCLATURAL_REF)) {\r
-               INomenclaturalReference nomenclaturalReference = (INomenclaturalReference) name.getNomenclaturalReference();\r
-               if (nomenclaturalReference == null) {\r
-                       return "";\r
-               }               \r
-               String microReference = name.getNomenclaturalMicroReference();\r
-                       return CdmUtils.Nz(nomenclaturalReference.getNomenclaturalCitation(microReference));\r
-               }\r
-               return super.toString();\r
-       }\r
-       \r
-       public void addPropertyChangeListener(\r
-                       PropertyChangeListener listener) {\r
-               this.propertyChangeSupport.addPropertyChangeListener(listener);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/ScientificNamePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/ScientificNamePropertySource.java
deleted file mode 100644 (file)
index a414405..0000000
+++ /dev/null
@@ -1,329 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.name;\r
-\r
-import java.beans.PropertyChangeListener;\r
-import java.beans.PropertyChangeSupport;\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-import java.util.Vector;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.ComboBoxPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.common.CdmUtils;\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 03.11.2008\r
- * @version 1.0\r
- */\r
-public class ScientificNamePropertySource implements IPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ScientificNamePropertySource.class);\r
-\r
-       NonViralName name;\r
-       \r
-    // Property unique keys\r
-       public static final String P_ID_SEARCH = "P_ID_SEARCH";\r
-       public static final String P_ID_EDITABLECACHE = "P_ID_EDITABLECACHE";   \r
-       public static final String P_ID_UNINOMIAL = "P_ID_UNINOMIAL";\r
-       public static final String P_ID_INFRAGENERICEP = "P_ID_INFRAGENERICEP";\r
-       public static final String P_ID_INFRASPECIFICEP = "P_ID_INFRASPECIFICEP";\r
-       public static final String P_ID_SPECIESEP = "P_ID_SPECIESEP";\r
-       public static final String P_ID_PROTECT_CACHE = "P_ID_PROTECT_CACHE";\r
-       public static final String P_ID_APPENDEDPHRASE = "P_ID_APPENDEDPHRASE";\r
-       public static final String P_ID_AUTHORSHIPCACHE = "P_ID_AUTHORSHIPCACHE";\r
-               \r
-    // Property display keys\r
-       public static final String P_SEARCH = "001:Search";\r
-       public static final String P_EDITABLECACHE = "002:Editable Cache";\r
-       public static final String P_PROTECT_CACHE = "0020:Protect Cache from overwriting?";\r
-       public static final String P_UNINOMIAL = "04:Uninomial";\r
-       public static final String P_INFRAGENERICEP = "05:Infrageneric Epithet";\r
-       public static final String P_INFRASPECIFICEP = "07:Infraspecific Epithet";\r
-       public static final String P_SPECIESEP = "06:Specific Epithet";\r
-       public static final String P_AUTHORSHIPCACHE = "08:Authorship";\r
-       public static final String P_APPENDEDPHRASE = "09:Appended Phrase";\r
-               \r
-       private static final int CACHE_NOT_PROTECTED = 0;\r
-       private static final int CACHE_PROTECTED = 1;   \r
-                       \r
-       public ScientificNamePropertySource(NonViralName name) {\r
-               \r
-               // Default type of ReferenceBase is Generic\r
-               if (name == null) {\r
-                       name = PreferencesController.getInstanceOfPreferredNameClass();\r
-               }               \r
-               this.name = name;\r
-\r
-               initDescriptors();\r
-       }\r
-\r
-       protected void initDescriptors() {\r
-               \r
-               List<String> displayFields = new ArrayList<String>();\r
-                       \r
-               // Cache fields\r
-//             displayFields.add(P_ID_SEARCH);\r
-//             displayFields.add(P_ID_EDITABLECACHE);\r
-//             displayFields.add(P_ID_PROTECT_CACHE);\r
-               \r
-               // Uninomial\r
-       displayFields.add(P_ID_UNINOMIAL);\r
-       \r
-       if (name.isSupraGeneric() || name.isGenus()) { // Rank is higher than GENUS or equals GENUS\r
-       }\r
-       else if (name.isInfraGeneric()) { // lower than GENUS and higher than SPECIES\r
-               displayFields.add(P_ID_INFRAGENERICEP);\r
-       }   \r
-       else if (name.isSpecies()) { // Rank equals SPECIES\r
-               displayFields.add(P_ID_SPECIESEP);\r
-       }\r
-       else if (name.isInfraSpecific()) { // Rank is lower than SPECIES\r
-               displayFields.add(P_ID_SPECIESEP);\r
-               displayFields.add(P_ID_INFRASPECIFICEP);\r
-       } else {\r
-               displayFields.add(P_ID_SPECIESEP);\r
-       }\r
-       displayFields.add(P_ID_AUTHORSHIPCACHE);\r
-       displayFields.add(P_ID_APPENDEDPHRASE);\r
-    \r
-               \r
-               for (String field : displayFields) {\r
-                       addDescriptor(field);\r
-               }\r
-       }\r
-\r
-       protected Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
-       \r
-       protected void addDescriptor(String id) {\r
-               \r
-               // Reference search\r
-               if (id.equals(P_ID_SEARCH)) {\r
-//                     descriptors.addElement(\r
-//                                     new ReferenceSearchDescriptor(P_ID_SEARCH, P_SEARCH, getSearchType()) {\r
-//                                             protected void saveReference(ReferenceBase reference) {\r
-//                                                     setPropertyValue(P_ID_SEARCH, reference);\r
-//                                             }\r
-//                     });\r
-               }\r
-               \r
-               // Editable cache\r
-               if (id.equals(P_ID_EDITABLECACHE)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_EDITABLECACHE, P_EDITABLECACHE));\r
-               }\r
-               \r
-               // Protect cache?\r
-               if (id.equals(P_ID_PROTECT_CACHE)) {\r
-                       descriptors.addElement(\r
-                                       new ComboBoxPropertyDescriptor(P_ID_PROTECT_CACHE, P_PROTECT_CACHE, \r
-                                                       new String[] {"no", "yes"}));\r
-               }\r
-               \r
-               // Uninomial (aka Genus)\r
-               if (id.equals(P_ID_UNINOMIAL)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_UNINOMIAL, P_UNINOMIAL));\r
-               }\r
-               \r
-               // Infrageneric epithet\r
-               if (id.equals(P_ID_INFRAGENERICEP)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_INFRAGENERICEP, P_INFRAGENERICEP));\r
-               }\r
-               \r
-               // Specific epithet\r
-               if (id.equals(P_ID_SPECIESEP)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_SPECIESEP, P_SPECIESEP));\r
-               }\r
-               \r
-               // Infraspecific epithet\r
-               if (id.equals(P_ID_INFRASPECIFICEP)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_INFRASPECIFICEP, P_INFRASPECIFICEP));\r
-               }\r
-               \r
-               // Appended phrase\r
-               if (id.equals(P_ID_APPENDEDPHRASE)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_APPENDEDPHRASE, P_APPENDEDPHRASE));\r
-               }\r
-               \r
-               // Authorship cache\r
-               if (id.equals(P_ID_AUTHORSHIPCACHE)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_AUTHORSHIPCACHE, P_AUTHORSHIPCACHE));\r
-               }               \r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()\r
-        */\r
-       public Object getEditableValue() {\r
-               return CdmUtils.Nz(name.getTitleCache());\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()\r
-        */\r
-       public IPropertyDescriptor[] getPropertyDescriptors() {\r
-               return (IPropertyDescriptor[]) descriptors.toArray(\r
-                new IPropertyDescriptor[descriptors.size()]);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)\r
-        */\r
-       public Object getPropertyValue(Object id) {\r
-                               \r
-               // Editable cache\r
-               if (id.equals(P_ID_EDITABLECACHE)) {\r
-                       return (CdmUtils.Nz(name.getTitleCache()));\r
-               }\r
-               \r
-               // Protect cache?\r
-               if (id.equals(P_ID_PROTECT_CACHE)) {\r
-                       if (name.isProtectedTitleCache()) {\r
-                               return CACHE_PROTECTED;\r
-                       } else {\r
-                               return CACHE_NOT_PROTECTED;\r
-                       }\r
-               }\r
-               \r
-               // Uninomial (aka Genus)        \r
-               if (id.equals(P_ID_UNINOMIAL)) {\r
-                       return CdmUtils.Nz(name.getGenusOrUninomial());\r
-               }\r
-       \r
-               // Infrageneric epithet         \r
-        if (id.equals(P_ID_INFRAGENERICEP)) {\r
-                       return CdmUtils.Nz(name.getInfraGenericEpithet());\r
-        }\r
-               \r
-               // Specific epithet        \r
-        if (id.equals(P_ID_SPECIESEP)) {\r
-                       return CdmUtils.Nz(name.getSpecificEpithet());\r
-        }\r
-        \r
-               // Infraspecific epithet        \r
-        if (id.equals(P_ID_INFRASPECIFICEP)) {\r
-                       return CdmUtils.Nz(name.getInfraSpecificEpithet());\r
-        }\r
-        \r
-\r
-               // Appended phrase        \r
-        if (id.equals(P_ID_APPENDEDPHRASE)) {\r
-               return CdmUtils.Nz(name.getAppendedPhrase());\r
-        }\r
-        \r
-               // Authorship cache        \r
-        if (id.equals(P_ID_AUTHORSHIPCACHE)) {\r
-                       return CdmUtils.Nz(name.getAuthorshipCache());\r
-        }\r
-                                                               \r
-               return "";\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)\r
-        */\r
-       public boolean isPropertySet(Object id) {\r
-               return false;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)\r
-        */\r
-       public void resetPropertyValue(Object id) {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)\r
-        */\r
-       public void setPropertyValue(Object id, Object value) {\r
-               \r
-               // Search result\r
-               if (id.equals(P_ID_SEARCH)) {\r
-                       if (value instanceof NonViralName) {\r
-                               name = (NonViralName) value;\r
-                       }\r
-               }\r
-\r
-               // Protect cache? \r
-               if (id.equals(P_ID_PROTECT_CACHE)) {\r
-                       if (((Integer) value).intValue() == CACHE_PROTECTED) {\r
-                               name.setProtectedTitleCache(true);\r
-                       } else {\r
-                               name.setProtectedTitleCache(false);\r
-                       }\r
-               }\r
-                               \r
-               // Uninomial (aka Genus)                \r
-               if (id.equals(P_ID_UNINOMIAL)) {\r
-                       name.setGenusOrUninomial((String) value);\r
-               }\r
-               \r
-               // Infrageneric epithet         \r
-        if (id.equals(P_ID_INFRAGENERICEP)) {\r
-                       name.setInfraGenericEpithet((String) value);\r
-        }\r
-        \r
-        // Specific epithet        \r
-        if (id.equals(P_ID_SPECIESEP)) {\r
-                       name.setSpecificEpithet((String) value);\r
-        }\r
-        \r
-               // Infraspecific epithet        \r
-        if (id.equals(P_ID_INFRASPECIFICEP)) {\r
-                       name.setInfraSpecificEpithet((String) value);\r
-        }\r
-        \r
-               // Appended phrase        \r
-        if (id.equals(P_ID_APPENDEDPHRASE)) {\r
-                       name.setAppendedPhrase((String) value);\r
-        }\r
-        \r
-               // Authorship cache        \r
-        if (id.equals(P_ID_AUTHORSHIPCACHE)) {\r
-//             name.setProtectedAuthorshipCache(true);\r
-                       name.setAuthorshipCache((String) value);\r
-        }\r
-        \r
-               // Editable cache\r
-               if (id.equals(P_ID_EDITABLECACHE)) {\r
-                       name.setTitleCache((String) value);\r
-               } else {\r
-                       name.setTitleCache(name.generateTitle(), name.isProtectedTitleCache());\r
-               }\r
-               \r
-               propertyChangeSupport.firePropertyChange(ITaxEditorConstants.PROPERTY_SHEET_CHANGE, null, name);\r
-       }\r
-       \r
-\r
-       public String toString() {\r
-               return CdmUtils.Nz(name.getTitleCache());\r
-       }\r
-\r
-       private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this);\r
-       \r
-       public void addPropertyChangeListener(\r
-                       PropertyChangeListener listener) {\r
-               propertyChangeSupport.addPropertyChangeListener(listener);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/TaxonBasePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/TaxonBasePropertySource.java
deleted file mode 100644 (file)
index 9acf9ad..0000000
+++ /dev/null
@@ -1,189 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.name;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-import java.util.Set;\r
-import java.util.Vector;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.name.Rank;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.propertysheet.reference.ReferencePropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.type.TypeCollectionPropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.type.TypePropertyDescriptor;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 11.11.2008\r
- * @version 1.0\r
- */\r
-public class TaxonBasePropertySource implements IPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TaxonBasePropertySource.class);\r
-       \r
-       private TaxonBase taxon;\r
-\r
-    // Property unique keys\r
-       public static final String P_ID_TAXONNAME = "P_ID_TAXONNAME";\r
-       public static final String P_ID_TAXONSEC = "P_ID_TAXONSEC";\r
-       public static final String P_ID_TYPES = "P_ID_TYPES";\r
-       \r
-    // Property display keys\r
-       public String P_TAXONNAME;\r
-       public static final String P_TAXONSEC = "01:Secundum";\r
-       public String P_TYPES = "02:Specimen Types";\r
-       \r
-       \r
-       public TaxonBasePropertySource(TaxonBase taxon, String nameTitle) {\r
-               this.taxon = taxon;\r
-               \r
-               this.P_TAXONNAME = "00:" + nameTitle;\r
-               \r
-               if (CdmUtil.isNameSupraSpecific(taxon.getName())) {\r
-                       this.P_TYPES = "02:Name Types";\r
-               }\r
-               \r
-               addDescriptor(P_ID_TAXONNAME);\r
-               addDescriptor(P_ID_TAXONSEC);\r
-               addDescriptor(P_ID_TYPES);              \r
-       }\r
-\r
-       protected Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
-       \r
-       protected void addDescriptor(String id) {\r
-               if (id.equals(P_ID_TAXONNAME)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_TAXONNAME, P_TAXONNAME));\r
-               }               \r
-               if (id.equals(P_ID_TAXONSEC)) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(P_ID_TAXONSEC, P_TAXONSEC));                     \r
-               }\r
-               if (id.equals(P_ID_TYPES)) {\r
-                       descriptors.addElement(\r
-                               new TypePropertyDescriptor(P_ID_TYPES, P_TYPES, taxon.getName())\r
-                       );\r
-               };\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()\r
-        */\r
-       public Object getEditableValue() {\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()\r
-        */\r
-       public IPropertyDescriptor[] getPropertyDescriptors() {\r
-               return (IPropertyDescriptor[]) descriptors.toArray(\r
-                new IPropertyDescriptor[descriptors.size()]);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)\r
-        */\r
-       public Object getPropertyValue(Object id) {\r
-\r
-               // Edit taxon's name\r
-               if (id.equals(P_ID_TAXONNAME)) {\r
-                       \r
-                       if (taxon == null) {\r
-                               logger.warn("no taxon");\r
-                               return null;\r
-                       }\r
-                       TaxonNameBase name = taxon.getName();\r
-                       \r
-                       // Create taxon name as necessary\r
-                       if (name == null) {\r
-                               name = NonViralName.NewInstance(Rank.SPECIES());\r
-                       }\r
-                       \r
-                       // Send taxon name to appropriate property source for submenu\r
-                       if (name instanceof BotanicalName) {\r
-                               return new BotanicalNamePropertySource((BotanicalName) name);\r
-                       }\r
-                       if (name instanceof ZoologicalName) {\r
-                               return new ZoologicalNamePropertySource((ZoologicalName) name);\r
-                       }\r
-                       if (name instanceof NonViralName) {\r
-                               return new NonViralNamePropertySource((NonViralName) name);\r
-                       }\r
-                       \r
-               }               \r
-               \r
-               // Edit taxon's sec. reference\r
-               if (id.equals(P_ID_TAXONSEC)) {\r
-\r
-                       if (taxon == null) {\r
-                               return null;\r
-                       }\r
-                       ReferenceBase sec = taxon.getSec();\r
-                       \r
-                       // Create property source for submenu\r
-                       ReferencePropertySource secPropertySource = new ReferencePropertySource(sec);\r
-                       \r
-                       // Add listener to notify taxon of all changes to sec\r
-                       secPropertySource.addPropertyChangeListener(new PropertyChangeListener() {\r
-                               public void propertyChange(PropertyChangeEvent evt) {\r
-                                       if (evt.getNewValue() instanceof ReferenceBase) {       \r
-                                               taxon.setSec((ReferenceBase) evt.getNewValue());\r
-                                       }\r
-                               }\r
-                       });\r
-                       return secPropertySource;\r
-               }\r
-               \r
-               if (id.equals(P_ID_TYPES)) {\r
-                       if (taxon.getName() != null) {\r
-                               TaxonNameBase name = taxon.getName();\r
-                               \r
-                               if (CdmUtil.isNameSupraSpecific(taxon.getName())) {\r
-                                       return new TypeCollectionPropertySource(name, name.getNameTypeDesignations());\r
-                               } else {\r
-                                       return new TypeCollectionPropertySource(name, name.getSpecimenTypeDesignations());\r
-                               }\r
-                       }\r
-               }\r
-               \r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)\r
-        */\r
-       public boolean isPropertySet(Object id) {\r
-               return false;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)\r
-        */\r
-       public void resetPropertyValue(Object id) {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)\r
-        */\r
-       public void setPropertyValue(Object id, Object value) {\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/ZoologicalNamePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/name/ZoologicalNamePropertySource.java
deleted file mode 100644 (file)
index d74c0eb..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.name;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
-\r
-/**\r
- * Property source for ZoologicalName entries.\r
- *  \r
- * @author p.ciardelli\r
- * @created 21.05.2008\r
- * @version 1.0\r
- */\r
-public class ZoologicalNamePropertySource extends NonViralNamePropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ZoologicalNamePropertySource.class);\r
-\r
-       private ZoologicalName zoologicalName;\r
-       \r
-    // Property unique keys\r
-       public static final String P_ID_PUBLICATIONYEAR = "publicationyear";\r
-    // Property display keys\r
-       public static final String P_PUBLICATIONYEAR = "099:Publication Year";\r
-               \r
-       public ZoologicalNamePropertySource(ZoologicalName name) {\r
-               super(name);\r
-               this.zoologicalName = name;\r
-               addDescriptor(P_ID_PUBLICATIONYEAR);\r
-       }\r
-\r
-       @Override\r
-       public Object getPropertyValue(Object id) {\r
-        if (id.equals(P_ID_NOMENCLATURAL_CODE)) {\r
-               return "ICZN";\r
-        }\r
-        if (id.equals(P_ID_PUBLICATIONYEAR)) {\r
-               String publicationYear = Integer.toString(zoologicalName.getPublicationYear());\r
-               if (publicationYear.equals("0")) {\r
-                       return "";\r
-               } else {\r
-                       return publicationYear;\r
-               }\r
-        }\r
-               return super.getPropertyValue(id);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ChooseRelatedNameWizardPage.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ChooseRelatedNameWizardPage.java
deleted file mode 100644 (file)
index 6ecabfd..0000000
+++ /dev/null
@@ -1,277 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.namerelations.wizard;\r
-\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;\r
-import org.eclipse.jface.viewers.ISelectionChangedListener;\r
-import org.eclipse.jface.viewers.IStructuredSelection;\r
-import org.eclipse.jface.viewers.SelectionChangedEvent;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.jface.viewers.ViewerComparator;\r
-import org.eclipse.jface.wizard.WizardPage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.KeyAdapter;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.ModifyEvent;\r
-import org.eclipse.swt.events.ModifyListener;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableItem;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;\r
-import eu.etaxonomy.cdm.model.name.NonViralName;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.editor.name.CdmParserController;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * An all-in-one relation wizard page where the user chooses a related name, a\r
- * relationship type, and the relation's directionality.\r
- * \r
- * Note: does not yet return relation to wizard.\r
- * \r
- * @author p.ciardelli\r
- * @created 04.06.2008\r
- * @version 1.0\r
- */\r
-public class ChooseRelatedNameWizardPage extends WizardPage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChooseRelatedNameWizardPage.class);\r
-\r
-       private NameRelationWizardModel relationModel;\r
-\r
-       private Text txtNewName;\r
-       private Text txtName;\r
-       private boolean nameSelected = false;\r
-\r
-       private Table searchResultsTable;\r
-       private WritableList observableSearchResultsList = new WritableList();\r
-       private NonViralName noResultsDummyName = NonViralName.NewInstance(null);\r
-\r
-       private Button btnSearch;\r
-\r
-       public ChooseRelatedNameWizardPage(NameRelationWizardModel relationModel) {\r
-               super("");\r
-\r
-               this.relationModel = relationModel;\r
-\r
-               setTitle("Choose related name for '" + relationModel.getBaseName() + "\".");\r
-               setDescription("You can either choose from search results or create a new name. Use \"*\" for wildcard searching.");\r
-       }\r
-\r
-       public void createControl(Composite parent) {\r
-               \r
-               // Create composite for popup dialog    \r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 3;\r
-               container.setLayout(gridLayout);\r
-               setControl(container);\r
-\r
-               // Create search text\r
-               final Label lblChooseName = new Label(container, SWT.NONE);\r
-               lblChooseName.setText("Choose name for relation:");\r
-               new Label(container, SWT.NONE);\r
-               new Label(container, SWT.NONE);\r
-\r
-               // Create input field for search term\r
-               txtName = new Text(container, SWT.BORDER);\r
-               txtName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               \r
-               // Listen for user hitting <CR> in input field\r
-               txtName.addKeyListener(new KeyAdapter() {\r
-                       public void keyReleased(KeyEvent e) {\r
-                               int key = e.keyCode;\r
-                               if (key == SWT.CR) {\r
-                                       populateSearchResults();\r
-                               }\r
-                       }\r
-               });\r
-\r
-               // Create "Search" button\r
-               btnSearch = new Button(container, SWT.NONE);\r
-               btnSearch.setEnabled(false);\r
-               btnSearch.setLayoutData(new GridData());\r
-               btnSearch.setText("Search");\r
-               btnSearch.addSelectionListener(new SelectionAdapter() {\r
-                       \r
-                       // Populate search results resultsTable after clicking button\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               populateSearchResults();\r
-                       }\r
-               });\r
-\r
-               // Create "Create New Name" button\r
-               final Button btnNewName = new Button(container, SWT.NONE);\r
-               btnNewName.setEnabled(false);\r
-               btnNewName.setText("Create New Name");\r
-               btnNewName.addSelectionListener(new SelectionAdapter() {\r
-                       \r
-                       // Use input field text to create and select a new name\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               setRawNewName(txtName.getText());\r
-                               btnNewName.setEnabled(false);\r
-                       }\r
-               });\r
-               \r
-               // Create results viewer\r
-               createSearchResultsViewer(container);\r
-\r
-               // Enable / disable buttons according to whether there is input text or not\r
-               txtName.addModifyListener(new ModifyListener() {\r
-                       public void modifyText(ModifyEvent e) {\r
-                               if (txtName.getText().length() > 0) {\r
-                                       btnNewName.setEnabled(true);\r
-                                       btnSearch.setEnabled(true);\r
-                               } else {\r
-                                       btnNewName.setEnabled(false);\r
-                                       btnSearch.setEnabled(false);\r
-                               }\r
-                       }\r
-               });\r
-\r
-               // Create text field to display selected name\r
-               txtNewName = new Text(container, SWT.BORDER);\r
-               final GridData gd_txtNewName = new GridData(SWT.FILL, SWT.CENTER, true,\r
-                               false, 3, 1);\r
-               txtNewName.setLayoutData(gd_txtNewName);\r
-               txtNewName.setFont(TaxEditorPlugin.getDefault().getFont\r
-                               (ITaxEditorConstants.CHOOSE_NAME_TEXT_FONT));           \r
-               txtNewName.setBackground(Display.getCurrent().getSystemColor(\r
-                               SWT.COLOR_WHITE));\r
-               txtNewName.setEditable(false);\r
-               \r
-               // If editing an existing relation, show the related name\r
-               if (relationModel.getRelatedName() != null) {\r
-                       txtNewName.setText(CdmUtil.getDisplayName(relationModel.getRelatedName()));\r
-                       nameSelected = true;\r
-               }\r
-       }\r
-\r
-       protected void populateSearchResults() {\r
-               String searchText = txtName.getText();\r
-               btnSearch.setEnabled(false);\r
-               List<TaxonNameBase> results = CdmUtil.searchNameString(searchText);\r
-\r
-               observableSearchResultsList.clear();\r
-               if (results.size() == 0) {\r
-                       // Populate observable list with dummy name\r
-                       observableSearchResultsList.add(noResultsDummyName);\r
-               } else {\r
-                       observableSearchResultsList.addAll(results);\r
-               }\r
-               btnSearch.setEnabled(true);\r
-       }\r
-\r
-       private void createSearchResultsViewer(Composite parent) {\r
-               // TODO no reason to use observable lists and all that nonsense\r
-               // implement Ã  la propertysheet.reference.ReferenceSearchDialog instead\r
-               TableViewer searchResultsViewer = new TableViewer(parent, SWT.BORDER);\r
-\r
-               // Add content provider\r
-               ObservableListContentProvider searchResultsProviderList = new ObservableListContentProvider();\r
-               searchResultsViewer.setContentProvider(searchResultsProviderList);\r
-\r
-               // Label provider that listens for changes to name cache\r
-               IObservableMap[] searchResultsLabelProviderMaps = BeansObservables\r
-                               .observeMaps(searchResultsProviderList.getKnownElements(),\r
-                                               TaxonNameBase.class, new String[] { "titleCache" });\r
-               searchResultsViewer.setLabelProvider(new ObservableMapLabelProvider(\r
-                               searchResultsLabelProviderMaps));\r
-\r
-               // Listens for new taxa opened for editing\r
-               searchResultsViewer.setInput(observableSearchResultsList);\r
-\r
-               // Sort alphabetically\r
-               searchResultsViewer.setComparator(new ViewerComparator());\r
-       \r
-               // On click, put name in new name field\r
-               searchResultsViewer.addSelectionChangedListener(new ISelectionChangedListener() {\r
-                       public void selectionChanged(SelectionChangedEvent event) {\r
-                               IStructuredSelection selection = (StructuredSelection) event\r
-                                               .getSelection();\r
-                               Object element = selection.getFirstElement();\r
-                               if (element instanceof TaxonNameBase) {\r
-                                       setNewName((TaxonNameBase) element);\r
-                               }\r
-                       }                       \r
-               });\r
-               \r
-               searchResultsTable = searchResultsViewer.getTable();\r
-               searchResultsTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true,\r
-                               true, 3, 1));\r
-               searchResultsTable.addListener(SWT.PaintItem, new Listener() {\r
-                       /**\r
-                        * If MenuItem with dummy name is being drawn, put it in italics.\r
-                        * \r
-                        * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)\r
-                        */\r
-                       public void handleEvent(Event event) {\r
-                               Object data = event.item.getData();\r
-                               if (data instanceof TaxonNameBase\r
-                                               && ((TaxonNameBase) data).equals(noResultsDummyName)) {\r
-                                       TableItem item = (TableItem) event.item;\r
-                                       item.setFont(TaxEditorPlugin.getDefault().getFont(\r
-                                                                       ITaxEditorConstants.MENU_ITEM_ITALICS_FONT));\r
-                                       item.setText("Search returned no results.");\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-\r
-       @Override\r
-       public boolean canFlipToNextPage() {\r
-               return isPageComplete();\r
-       }\r
-\r
-       public boolean isPageComplete() {\r
-               return (nameSelected);\r
-       }\r
-       \r
-       private void updatePage() {\r
-               getWizard().getContainer().updateButtons();\r
-       }\r
-\r
-       private void setNewName(TaxonNameBase name) {\r
-               nameSelected = true;\r
-               relationModel.setRelatedName(name);\r
-               txtNewName.setText(CdmUtil.getDisplayName(name));\r
-               updatePage();\r
-       }\r
-\r
-       private void setRawNewName(String rawName) {\r
-               nameSelected = true;\r
-               NomenclaturalCode parentCode = relationModel.getBaseName().getNomenclaturalCode();\r
-               TaxonNameBase newName = CdmParserController.parseFullReference(rawName, parentCode, null);\r
-               relationModel.setRelatedName(newName);\r
-               txtNewName.setText(rawName + " (new)");\r
-               updatePage();\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ChooseRelationTypeWizardPage.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ChooseRelationTypeWizardPage.java
deleted file mode 100644 (file)
index 05e2d7d..0000000
+++ /dev/null
@@ -1,232 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.namerelations.wizard;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.wizard.WizardPage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.CCombo;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.events.SelectionListener;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Group;\r
-import org.eclipse.swt.widgets.Label;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * An all-in-one relation wizard page where the user chooses a related name, a\r
- * relationship type, and the relation\"s directionality.\r
- * \r
- * Note: does not yet return relation to wizard.\r
- * \r
- * @author p.ciardelli\r
- * @created 04.06.2008\r
- * @version 1.0\r
- */\r
-public class ChooseRelationTypeWizardPage extends WizardPage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ChooseRelationTypeWizardPage.class);\r
-\r
-       private List<NameRelationshipType> relationTypes;\r
-\r
-       private CCombo combo;\r
-       private Label lblDirection;\r
-       private Button btnFromRelatedToBase;\r
-       private Button btnFromBaseToRelated;\r
-\r
-       private boolean typeSelected = false;\r
-       private boolean directionSelected = false;\r
-       \r
-       private SelectionListener radioSelectionListener = new SelectionAdapter() {\r
-               public void widgetSelected(SelectionEvent e) {\r
-                       directionSelected = true;\r
-                       updatePage();\r
-                       \r
-                       if (e.widget.equals(btnFromRelatedToBase)) {\r
-                               relationModel.setFromName(relationModel.getRelatedName());\r
-                               relationModel.setToName(relationModel.getBaseName());\r
-                       }\r
-                       \r
-                       if (e.widget.equals(btnFromBaseToRelated)) {\r
-                               relationModel.setFromName(relationModel.getBaseName());\r
-                               relationModel.setToName(relationModel.getRelatedName());\r
-                       }\r
-               }\r
-       };\r
-\r
-       private NameRelationWizardModel relationModel; \r
-\r
-       public ChooseRelationTypeWizardPage(final NameRelationWizardModel relationModel) {\r
-               super("");\r
-               setTitle("Choose relationship type and direction.");            \r
-               \r
-               this.relationModel = relationModel;\r
-               \r
-               setDescription();\r
-               \r
-               relationModel.addPropertyChangeListener(new PropertyChangeListener() {\r
-                       public void propertyChange(PropertyChangeEvent evt) {\r
-                               if (evt.getPropertyName().equals(NameRelationWizardModel.RELATEDNAME)) {\r
-                                       setDescription();\r
-                                       setDirectionLabels();\r
-                               }\r
-                               if (evt.getPropertyName().equals(NameRelationWizardModel.RELATIONTYPE)) {\r
-                                       if (relationModel.getType() != null) {\r
-                                               typeSelected = true;\r
-                                               enableDirection();\r
-                                       } else {\r
-                                               typeSelected = false;\r
-                                               disableDirection();\r
-                                       }\r
-                                       updatePage();\r
-                               }                               \r
-                       }\r
-               });\r
-       }\r
-               \r
-       public void createControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               container.setLayout(new GridLayout());\r
-\r
-               setControl(container);\r
-\r
-               // Init relation type array\r
-               relationTypes = new ArrayList<NameRelationshipType>();\r
-\r
-               //\r
-               final Label lblType = new Label(container, SWT.NONE);\r
-               lblType.setText("Choose relationship type:");\r
-\r
-               // Create relation type dropdown \r
-               combo = new CCombo(container, SWT.BORDER);\r
-               combo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               for (NameRelationshipType relationType : \r
-                               CdmSessionDataRepository.getDefault().getNameRelationshipTypes()) {\r
-                       \r
-                       relationTypes.add(relationType);\r
-                       \r
-                       String label = relationType.getLabel();\r
-                       if (relationModel.isZoological() && \r
-                                       relationType.equals(NameRelationshipType.BASIONYM())) {\r
-                               label = "original combination for";\r
-                       } \r
-//                     label += " - " + relationType.getInverseLabel();\r
-                       combo.add(label);\r
-               }\r
-               combo.setVisibleItemCount(relationTypes.size());\r
-\r
-               combo.addSelectionListener(new SelectionAdapter() {\r
-                       @Override\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               int typeIndex = combo.getSelectionIndex();\r
-                               relationModel.setType(relationTypes.get(typeIndex));\r
-                       }\r
-               });\r
-\r
-               final Group group = new Group(container, SWT.NONE);\r
-               group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               final GridLayout gridLayout = new GridLayout();\r
-               group.setLayout(gridLayout);\r
-\r
-               lblDirection = new Label(group, SWT.NONE);\r
-               final GridData gd_lblDirection = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               gd_lblDirection.heightHint = 32;\r
-               gd_lblDirection.minimumHeight = 40;\r
-               lblDirection\r
-                               .setLayoutData(gd_lblDirection);\r
-               lblDirection.setEnabled(false);\r
-               lblDirection.setText("Choose relationship direction:");\r
-\r
-               btnFromRelatedToBase = new Button(group, SWT.RADIO);\r
-               btnFromRelatedToBase\r
-                               .setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               btnFromRelatedToBase.setVisible(false);\r
-               btnFromRelatedToBase.addSelectionListener(radioSelectionListener);\r
-\r
-               btnFromBaseToRelated = new Button(group, SWT.RADIO);\r
-               btnFromBaseToRelated\r
-                               .setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               btnFromBaseToRelated.setVisible(false);\r
-               btnFromBaseToRelated.addSelectionListener(radioSelectionListener);\r
-               new Label(group, SWT.NONE);\r
-\r
-       }\r
-\r
-       private void setDescription() {\r
-               setDescription("Choose relationship type and direction for the name relation between \""\r
-                               + CdmUtil.getDisplayName(relationModel.getBaseName()) + "\" and \"" \r
-                               + CdmUtil.getDisplayName(relationModel.getRelatedName()) + "\".");              \r
-       }\r
-       \r
-       private void setDirectionLabels() {\r
-               String strDirection1 = "\"" + CdmUtil.getDisplayName(relationModel.getRelatedName()) + "\" "\r
-                               + "is " + combo.getText() + " " + "\""\r
-                               + CdmUtil.getDisplayName(relationModel.getBaseName()) + "\"";\r
-               String strDirection2 = "\"" + CdmUtil.getDisplayName(relationModel.getBaseName()) + "\" "\r
-                               + "is " + combo.getText() + " " + "\""\r
-                               + CdmUtil.getDisplayName(relationModel.getRelatedName()) + "\"";\r
-               \r
-               btnFromRelatedToBase.setText(strDirection1);\r
-               btnFromBaseToRelated.setText(strDirection2);            \r
-       }\r
-       \r
-       @Override\r
-       public boolean canFlipToNextPage() {\r
-               // Last page\r
-               return false;\r
-       }\r
-\r
-    public boolean isPageComplete() {\r
-        return (typeSelected && directionSelected);\r
-    }\r
-\r
-       private void updatePage() {\r
-               if (typeSelected) {\r
-                       if (!directionSelected) {\r
-                               enableDirection();\r
-                       }\r
-               } else {\r
-                       disableDirection();\r
-               }\r
-               getWizard().getContainer().updateButtons();\r
-       }\r
-       \r
-       private void enableDirection() {\r
-               setDirectionLabels();\r
-\r
-               lblDirection.setEnabled(true);\r
-               btnFromRelatedToBase.setEnabled(true);\r
-               btnFromBaseToRelated.setEnabled(true);\r
-\r
-               btnFromRelatedToBase.setVisible(true);\r
-               btnFromBaseToRelated.setVisible(true);\r
-       }\r
-\r
-       private void disableDirection() {\r
-               lblDirection.setEnabled(false);\r
-               btnFromRelatedToBase.setEnabled(false);\r
-               btnFromBaseToRelated.setEnabled(false);\r
-\r
-               btnFromRelatedToBase.setSelection(false);\r
-               btnFromBaseToRelated.setSelection(false);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ListNameRelationsWizardPage.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/ListNameRelationsWizardPage.java
deleted file mode 100644 (file)
index 69586a4..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.namerelations.wizard;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.jface.wizard.WizardPage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.TableItem;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameRelationship;\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.actions.cdm.DeleteNameRelationAction;\r
-import eu.etaxonomy.taxeditor.actions.ui.OpenNameRelationWizardAction;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 06.06.2008\r
- * @version 1.0\r
- */\r
-public class ListNameRelationsWizardPage extends WizardPage {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ListNameRelationsWizardPage.class);\r
-\r
-       private Table nameRelationsTable;\r
-       private WritableList nameRelationsList = new WritableList();\r
-       private TaxonNameBase name;\r
-\r
-       private Button btnRemove;\r
-       private Button btnEdit;\r
-\r
-       private NameRelationship selectedRelation;\r
-\r
-       private boolean isZoological = false;\r
-\r
-       public ListNameRelationsWizardPage(TaxonNameBase name) {\r
-               super("");\r
-\r
-               this.name = name;\r
-               if (name instanceof ZoologicalName) {\r
-                       isZoological  = true;\r
-               }\r
-\r
-               this.nameRelationsList.addAll(name.getNameRelations());\r
-\r
-               setTitle("Nomenclatural relations for \""\r
-                               + CdmUtil.getDisplayName(name) + "\".");\r
-               setDescription("Select a relation and click \"Edit ...\" or \"Remove\", or click \"Add ...\" to create a new relation.");\r
-       }\r
-\r
-       public void createControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 3;\r
-               container.setLayout(gridLayout);\r
-\r
-               setControl(container);\r
-\r
-               btnEdit = new Button(container, SWT.NONE);\r
-               btnEdit.setText("Edit ...");\r
-\r
-               btnRemove = new Button(container, SWT.NONE);\r
-               btnRemove.setText("Remove");\r
-               btnRemove.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               if (getSelectedRelation() != null) {\r
-                                       new DeleteNameRelationAction(name, getSelectedRelation()).run();\r
-                                       nameRelationsList.remove(getSelectedRelation());\r
-                                       setSelectedRelation(null);\r
-                               }\r
-                       }\r
-               });\r
-\r
-               setEnableExistingRelationButtons(false);\r
-\r
-               final Button btnAdd = new Button(container, SWT.NONE);\r
-               final GridData gd_btnAdd = new GridData(SWT.RIGHT, SWT.CENTER, true,\r
-                               false);\r
-               btnAdd.setLayoutData(gd_btnAdd);\r
-               btnAdd.setText("Add ...");\r
-               btnAdd.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               createRelationWizard(null);\r
-                       }\r
-               });\r
-\r
-               final TableViewer tableViewer = new TableViewer(container, SWT.BORDER | SWT.SINGLE);\r
-\r
-               nameRelationsTable = tableViewer.getTable();\r
-               nameRelationsTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true,\r
-                               true, 3, 1));\r
-               nameRelationsTable.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               // TODO: As long as onNameBase.removeNameRelationship() doesn't work, "Remove" stays disabled ... \r
-                               setEnableExistingRelationButtons(true);\r
-                               TableItem[] selectedItem = nameRelationsTable.getSelection();\r
-                               if (e.item.getData() instanceof NameRelationship) {\r
-                                       setSelectedRelation((NameRelationship) e.item.getData());\r
-                               }\r
-                       }\r
-               });\r
-\r
-               ObservableListContentProvider providerList = new ObservableListContentProvider();\r
-               tableViewer.setContentProvider(providerList);\r
-\r
-               IObservableMap[] providerMaps = BeansObservables.observeMaps(\r
-                               providerList.getKnownElements(), NameRelationship.class,\r
-                               new String[] { "fromName", "toName", "type" });\r
-               tableViewer.setLabelProvider(new ObservableMapLabelProvider(\r
-                               providerMaps) {\r
-                       public String getColumnText(Object element, int columnIndex) {\r
-                               if (element instanceof NameRelationship) {\r
-                                       NameRelationship nameRelationship = (NameRelationship) element;\r
-                                       return getRelationshipString(nameRelationship);\r
-                               }\r
-                               return "";\r
-                       }\r
-\r
-                       public Image getColumnImage(Object element, int columnIndex) {\r
-                               if (element instanceof NameRelationship) {\r
-                                       NameRelationship nameRelationship = (NameRelationship) element;\r
-                                       return getRelationshipImage(nameRelationship);\r
-                               }\r
-                               return null;\r
-                       }\r
-               });\r
-               // TODO try name.getNameRelations()\r
-               tableViewer.setInput(nameRelationsList);\r
-               tableViewer.addDoubleClickListener(new IDoubleClickListener() {\r
-                       public void doubleClick(DoubleClickEvent event) {\r
-                               if (((StructuredSelection) event.getSelection())\r
-                                               .getFirstElement() instanceof NameRelationship) {\r
-                                       NameRelationship relation = (NameRelationship) ((StructuredSelection) event\r
-                                                       .getSelection()).getFirstElement();\r
-                                       createRelationWizard(relation);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-\r
-       private void setSelectedRelation(NameRelationship selectedRelation) {\r
-               this.selectedRelation = selectedRelation;\r
-       }\r
-\r
-       private NameRelationship getSelectedRelation() {\r
-               return selectedRelation;\r
-       }\r
-       \r
-       private void createRelationWizard(NameRelationship relation) {\r
-               if (relation == null) {\r
-                       new OpenNameRelationWizardAction(name, nameRelationsList).run();\r
-               } else {\r
-                       new OpenNameRelationWizardAction(name, relation).run();\r
-               }\r
-       }\r
-\r
-       protected void setEnableExistingRelationButtons(boolean enabled) {\r
-               btnRemove.setEnabled(enabled);\r
-               btnEdit.setEnabled(false);\r
-       }\r
-\r
-       private Image getRelationshipImage(NameRelationship nameRelationship) {\r
-               if (nameRelationship.getType().equals(NameRelationshipType.BASIONYM())) {\r
-                       if (isZoological) { \r
-                               return null;\r
-                       }\r
-                       return TaxEditorPlugin.getDefault().getImage(\r
-                                       ITaxEditorConstants.BASIONYM_ICON);\r
-               }\r
-               if (nameRelationship.getType().equals(\r
-                               NameRelationshipType.ORTHOGRAPHIC_VARIANT())) {\r
-                       return TaxEditorPlugin.getDefault().getImage(\r
-                                       ITaxEditorConstants.ORTHOGRAPHIC_VARIANT_ICON);\r
-               }\r
-//             return TaxEditorPlugin.getDefault().getImage(\r
-//                             ITaxEditorConstants.EDIT_ICON);\r
-               return null;\r
-       }\r
-\r
-       private String getRelationshipString(NameRelationship nameRelationship) {\r
-               String fromName = null;\r
-               String type = null;\r
-               String toName = null;\r
-               if (nameRelationship.getFromName() == null) {\r
-                       fromName = "";\r
-               } else {\r
-                       fromName = CdmUtil.getDisplayName(nameRelationship.getFromName());\r
-               }\r
-               if (nameRelationship.getType() == null) {\r
-                       type = "";\r
-               } else {\r
-                       type = GlobalController.getNameRelationTypeLabel(\r
-                                       nameRelationship.getType(), isZoological);\r
-               }\r
-               if (nameRelationship.getToName() == null) {\r
-                       toName = "";\r
-               } else {\r
-                       toName = CdmUtil.getDisplayName(nameRelationship.getToName());\r
-               }\r
-               return "\"" + fromName + "\" is " + type + " \"" + toName + "\"";\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationWizard.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationWizard.java
deleted file mode 100644 (file)
index e528e95..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.namerelations.wizard;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.util.IPropertyChangeListener;\r
-import org.eclipse.jface.util.PropertyChangeEvent;\r
-import org.eclipse.jface.wizard.IWizardPage;\r
-import org.eclipse.jface.wizard.Wizard;\r
-\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.actions.cdm.CreateNameRelationAction;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 04.06.2008\r
- * @version 1.0\r
- */\r
-public class NameRelationWizard extends Wizard {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NameRelationWizard.class);\r
-       \r
-       public static final String ID = "eu.etaxonomy.taxeditor.namerelationwizard";\r
-\r
-       private NameRelationWizardModel relationModel;\r
-\r
-       public NameRelationWizard(NameRelationWizardModel relationModel) {\r
-               super();\r
-               \r
-               this.relationModel = relationModel;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.wizard.Wizard#addPages()\r
-        */\r
-       public void addPages() {\r
-               IWizardPage chooseNamePage = new ChooseRelatedNameWizardPage(relationModel);\r
-       addPage(chooseNamePage);\r
-       IWizardPage chooseRelationPage = new ChooseRelationTypeWizardPage(relationModel);\r
-       addPage(chooseRelationPage);\r
-    }\r
-       \r
-       @Override\r
-       public boolean performFinish() {\r
-               CreateNameRelationAction nameRelationAction = new CreateNameRelationAction(relationModel.getFromName(),\r
-                               relationModel.getType(),\r
-                               relationModel.getToName());\r
-//             if (relationModel.getNameRelationsList() != null) {\r
-                       \r
-                       // Action will notify when relation has been created \r
-                       nameRelationAction.addPropertyChangeListener(new IPropertyChangeListener() {\r
-                               public void propertyChange(PropertyChangeEvent event) {\r
-                                       logger.warn(event.getProperty());\r
-                                       if (event.getProperty().equals(\r
-                                                       ITaxEditorConstants.NAMERELATION)) {\r
-                                               if (relationModel.getNameRelationsList() != null) {\r
-                                                       relationModel.getNameRelationsList().clear();\r
-                                                       relationModel.getNameRelationsList().addAll(relationModel.getBaseName().getNameRelations());\r
-                                               }\r
-                                       }\r
-                                       \r
-                               }\r
-                       });\r
-//             }\r
-               nameRelationAction.run();\r
-               return true;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationWizardModel.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationWizardModel.java
deleted file mode 100644 (file)
index 7b3f5be..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.namerelations.wizard;\r
-\r
-import java.beans.PropertyChangeListener;\r
-import java.beans.PropertyChangeSupport;\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameRelationship;\r
-import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 05.06.2008\r
- * @version 1.0\r
- */\r
-public class NameRelationWizardModel {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NameRelationWizardModel.class);\r
-\r
-       protected static final String RELATEDNAME = "relatedname";\r
-       protected static final String RELATIONTYPE = "relationtype";\r
-\r
-       private TaxonNameBase baseName;\r
-       private TaxonNameBase relatedName;\r
-       private TaxonNameBase fromName;\r
-       private TaxonNameBase toName;\r
-       private NameRelationshipType type;\r
-       private boolean isZoological = false;\r
-       \r
-       // Stores pre-existing relation, if any exists\r
-       private NameRelationship nameRelationship;\r
-       // List of the base name's relations\r
-       private List<NameRelationship> nameRelationsList; \r
-\r
-       private PropertyChangeSupport propertyChangeSupport;\r
-\r
-\r
-       public NameRelationWizardModel(TaxonNameBase baseName) {\r
-               this.baseName = baseName;\r
-               if (baseName instanceof ZoologicalName) {\r
-                       isZoological = true;\r
-               }\r
-               this.propertyChangeSupport = new PropertyChangeSupport(this);\r
-       }\r
-\r
-       private void firePropertyChange(String propertyName, Object oldValue,\r
-                       Object newValue) {\r
-               propertyChangeSupport.firePropertyChange(propertyName, oldValue,\r
-                               newValue);\r
-       }\r
-\r
-       public void addPropertyChangeListener(String propertyName,\r
-                       PropertyChangeListener listener) {\r
-               propertyChangeSupport.addPropertyChangeListener(propertyName, listener);\r
-       }\r
-\r
-       public void addPropertyChangeListener(PropertyChangeListener listener) {\r
-               propertyChangeSupport.addPropertyChangeListener(listener);\r
-       }\r
-\r
-       public TaxonNameBase getBaseName() {\r
-               return baseName;\r
-       }\r
-\r
-       public void setBaseName(TaxonNameBase baseName) {\r
-               this.baseName = baseName;\r
-       }\r
-\r
-       public TaxonNameBase getRelatedName() {\r
-               return relatedName;\r
-       }\r
-\r
-       public void setRelatedName(TaxonNameBase relatedName) {\r
-               this.relatedName = relatedName;\r
-               firePropertyChange(RELATEDNAME, null, relatedName);\r
-       }\r
-\r
-       public TaxonNameBase getFromName() {\r
-               return fromName;\r
-       }\r
-\r
-       public void setFromName(TaxonNameBase fromName) {\r
-               this.fromName = fromName;\r
-               logger.warn("Setting from name: " + CdmUtil.getDisplayName(fromName));\r
-       }\r
-\r
-       public TaxonNameBase getToName() {\r
-               return toName;\r
-       }\r
-\r
-       public void setToName(TaxonNameBase toName) {\r
-               this.toName = toName;\r
-               logger.warn("Setting to name: " + CdmUtil.getDisplayName(toName));\r
-       }\r
-\r
-       public NameRelationshipType getType() {\r
-               return type;\r
-       }\r
-\r
-       public void setType(NameRelationshipType type) {\r
-               this.type = type;\r
-               firePropertyChange(RELATIONTYPE, null, type);\r
-       }\r
-\r
-       public void setRelation(NameRelationship nameRelationship) {\r
-               this.nameRelationship = nameRelationship;               \r
-       }\r
-\r
-       public NameRelationship getRelation() {\r
-               return nameRelationship;                \r
-       }\r
-       \r
-       public void setNameRelationsList(List<NameRelationship> nameRelationsList) {\r
-               this.nameRelationsList = nameRelationsList;\r
-       }\r
-       \r
-       public List<NameRelationship> getNameRelationsList() {\r
-               return nameRelationsList;\r
-       }\r
-\r
-       public boolean isZoological() {\r
-               return isZoological;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationsListWizard.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/namerelations/wizard/NameRelationsListWizard.java
deleted file mode 100644 (file)
index cabb0df..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.namerelations.wizard;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.wizard.IWizardPage;\r
-import org.eclipse.jface.wizard.Wizard;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 06.06.2008\r
- * @version 1.0\r
- */\r
-public class NameRelationsListWizard extends Wizard {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NameRelationsListWizard.class);\r
-       \r
-       private TaxonNameBase name;\r
-\r
-       public NameRelationsListWizard(TaxonNameBase name) {\r
-               super();\r
-               \r
-               this.name = name;\r
-       }\r
-\r
-       public void addPages() {\r
-               IWizardPage chooseNamePage = new ListNameRelationsWizardPage(name);\r
-       addPage(chooseNamePage);\r
-    }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.wizard.Wizard#performFinish()\r
-        */\r
-       @Override\r
-       public boolean performFinish() {\r
-               return true;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/NomenclaturalReferencePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/NomenclaturalReferencePropertySource.java
deleted file mode 100644 (file)
index ab913f7..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.reference;\r
-\r
-import java.util.HashMap;\r
-import java.util.LinkedHashMap;\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-\r
-import eu.etaxonomy.cdm.model.reference.Article;\r
-import eu.etaxonomy.cdm.model.reference.Book;\r
-import eu.etaxonomy.cdm.model.reference.BookSection;\r
-import eu.etaxonomy.cdm.model.reference.Generic;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.editor.reference.IReferenceSearch;\r
-\r
-/**\r
- * Subclass of <code>ReferencePropertySource</code> which restricts reference type menu \r
- * to "Article", "Generic", "Book", "Book Section".\r
- *  \r
- * @author p.ciardelli\r
- * @created 12.11.2008\r
- * @version 1.0\r
- */\r
-public class NomenclaturalReferencePropertySource extends\r
-               ReferencePropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NomenclaturalReferencePropertySource.class);\r
-       \r
-       public NomenclaturalReferencePropertySource(ReferenceBase reference) {\r
-               super(reference);\r
-       }\r
-       \r
-       protected static HashMap<Class, String> nomReferenceTypeMap = null;\r
-       \r
-       protected void populateReferenceTypes() {\r
-               \r
-               // LinkedHashMap maintains insertion order\r
-               nomReferenceTypeMap = new LinkedHashMap<Class, String>();\r
-               \r
-               nomReferenceTypeMap.put(ReferenceBase.class, "");\r
-//             referenceTypeMap.put(BibtexReference.class, "BibTeX Reference");\r
-               nomReferenceTypeMap.put(Article.class, "Article");\r
-               nomReferenceTypeMap.put(Generic.class, "Generic");\r
-               nomReferenceTypeMap.put(Book.class, "Book");\r
-               nomReferenceTypeMap.put(BookSection.class, "Book Section");\r
-       }\r
-       \r
-       protected String[] getReferenceTypeArray() {\r
-               if (nomReferenceTypeMap == null) {\r
-                       populateReferenceTypes();\r
-               }\r
-               return nomReferenceTypeMap.values().toArray(new String[] {});\r
-       }\r
-       \r
-       protected Set<Class> getReferenceClassSet() {\r
-               return nomReferenceTypeMap.keySet();\r
-       }\r
-       \r
-       protected int getSearchType() {\r
-               return IReferenceSearch.NOMREF;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferencePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferencePropertySource.java
deleted file mode 100644 (file)
index a3eb708..0000000
+++ /dev/null
@@ -1,1108 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.reference;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-import java.beans.PropertyChangeSupport;\r
-import java.lang.reflect.Constructor;\r
-import java.lang.reflect.InvocationTargetException;\r
-import java.lang.reflect.Method;\r
-import java.util.ArrayList;\r
-import java.util.HashMap;\r
-import java.util.LinkedHashMap;\r
-import java.util.List;\r
-import java.util.Set;\r
-import java.util.Vector;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.ComboBoxPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.common.CdmUtils;\r
-import eu.etaxonomy.cdm.model.agent.Team;\r
-import eu.etaxonomy.cdm.model.agent.TeamOrPersonBase;\r
-import eu.etaxonomy.cdm.model.common.TimePeriod;\r
-import eu.etaxonomy.cdm.model.reference.Article;\r
-import eu.etaxonomy.cdm.model.reference.BibtexReference;\r
-import eu.etaxonomy.cdm.model.reference.Book;\r
-import eu.etaxonomy.cdm.model.reference.BookSection;\r
-import eu.etaxonomy.cdm.model.reference.CdDvd;\r
-import eu.etaxonomy.cdm.model.reference.Database;\r
-import eu.etaxonomy.cdm.model.reference.Generic;\r
-import eu.etaxonomy.cdm.model.reference.InProceedings;\r
-import eu.etaxonomy.cdm.model.reference.Journal;\r
-import eu.etaxonomy.cdm.model.reference.Map;\r
-import eu.etaxonomy.cdm.model.reference.Patent;\r
-import eu.etaxonomy.cdm.model.reference.PersonalCommunication;\r
-import eu.etaxonomy.cdm.model.reference.PrintSeries;\r
-import eu.etaxonomy.cdm.model.reference.PrintedUnitBase;\r
-import eu.etaxonomy.cdm.model.reference.Proceedings;\r
-import eu.etaxonomy.cdm.model.reference.PublicationBase;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.cdm.model.reference.Report;\r
-import eu.etaxonomy.cdm.model.reference.SectionBase;\r
-import eu.etaxonomy.cdm.model.reference.StrictReferenceBase;\r
-import eu.etaxonomy.cdm.model.reference.Thesis;\r
-import eu.etaxonomy.cdm.model.reference.WebPage;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.editor.reference.IReferenceSearch;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.propertysheet.TimePeriodPropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.YearValidator;\r
-\r
-/**\r
- * Supplies the properties of a <code>ReferenceBase</code> object for display by\r
- * a <code>PropertySheet</code>.\r
- * <p>\r
- * Includes a drop-down menu that allows the user to change <code>ReferenceBase</code> \r
- * subclasses. This causes all fields except <code>TitleCache</code> to be wiped clean.\r
- * <p>\r
- * Normally, this would be called from another <code>IPropertySource</code>  \r
- * as follows:\r
- * <pre>\r
- * public Object getPropertyValue(Object id) {\r
- * \r
- *             ...\r
- * \r
- *             if (id.equals(P_ID_BIBREF)) {\r
- *                     ReferenceBase citation = descriptionElement.getCitation();\r
- *                     ReferencePropertySource bibRefPropertySource = new ReferencePropertySource(citation);\r
- *                     bibRefPropertySource.addPropertyChangeListener(new PropertyChangeListener() {\r
- *                             @Override\r
- *                             public void propertyChange(PropertyChangeEvent evt) {\r
- *                                     descriptionElement.setCitation((ReferenceBase) evt.getNewValue());\r
- *                             }\r
- *                     });\r
- *                     return bibRefPropertySource;\r
- *             }               \r
- * </pre>\r
- * <p>\r
- * Note: if <code>P_ID_BIBREF</code> in the above example is associated with an editable \r
- * <code>TextPropertyDescriptor</code>, it will initalize its cell editor by calling \r
- * <code>getEditableValue()</code>. If associated with a non-editable <code>PropertyDescriptor</code>, \r
- * it will get its value from <code>getString()</code>.\r
- * @author p.ciardelli\r
- * @created 03.11.2008\r
- * @version 1.0\r
- */\r
-public class ReferencePropertySource implements IPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ReferencePropertySource.class);\r
-\r
-       ReferenceBase reference;\r
-       \r
-    // Property unique keys\r
-       public static final String P_ID_SEARCH = "P_ID_SEARCH";\r
-       public static final String P_ID_EDITABLECACHE = "P_ID_EDITABLECACHE";   \r
-       public static final String P_ID_REFERENCETYPE = "P_ID_REFERENCETYPE";\r
-       public static final String P_ID_AUTHORTEAM = "P_ID_AUTHORTEAM";\r
-       public static final String P_ID_YEAR = "P_ID_YEAR";\r
-       public static final String P_ID_URI = "P_ID_URI";\r
-       public static final String P_ID_DATEPUBLISHED = "P_ID_DATEPUBLISHED";\r
-       public static final String P_ID_TITLE = "P_ID_TITLE";\r
-       public static final String P_ID_INJOURNAL = "P_ID_INJOURNAL";\r
-       public static final String P_ID_PAGES = "P_ID_PAGES";\r
-       public static final String P_ID_SERIES = "P_ID_SERIES";\r
-       public static final String P_ID_VOLUME = "P_ID_VOLUME";\r
-       public static final String P_ID_EDITOR = "P_ID_EDITOR";\r
-       public static final String P_ID_PLACEPUBLISHED = "P_ID_PLACEPUBLISHED";\r
-       public static final String P_ID_PUBLISHER = "P_ID_PUBLISHER";\r
-       public static final String P_ID_ISSN = "P_ID_ISSN";\r
-       public static final String P_ID_INSTITUTION = "P_ID_INSTITUTION";\r
-       public static final String P_ID_SCHOOL = "P_ID_SCHOOL";\r
-       public static final String P_ID_INSERIES = "P_ID_INSERIES";\r
-       public static final String P_ID_SERIESPART = "P_ID_SERIESPART";\r
-       public static final String P_ID_ISBN = "P_ID_ISBN";\r
-       public static final String P_ID_ORGANIZATION = "P_ID_ORGANIZATION";\r
-       public static final String P_ID_PRINTEDUNIT = "P_ID_PRINTEDUNIT";\r
-       public static final String P_ID_INBOOK = "P_ID_INBOOK";\r
-       public static final String P_ID_INPROCEEDINGS = "P_ID_INPROCEEDINGS";\r
-       public static final String P_ID_BIBTEX_ENTRYTYPE = "P_ID_BIBTEX_ENTRYTYPE";\r
-       public static final String P_ID_JOURNAL = "P_ID_JOURNAL";\r
-       public static final String P_ID_BOOKTITLE = "P_ID_BOOKTITLE";\r
-       public static final String P_ID_CHAPTER = "P_ID_CHAPTER";\r
-       public static final String P_ID_EDITION = "P_ID_EDITION";\r
-       public static final String P_ID_NUMBER = "P_ID_NUMBER";\r
-       public static final String P_ID_ANNOTE = "P_ID_ANNOTE";\r
-       public static final String P_ID_ADDRESS = "P_ID_ADDRESS";\r
-       public static final String P_ID_HOWPUBLISHED = "P_ID_HOWPUBLISHED";\r
-       public static final String P_ID_REPORTTYPE = "P_ID_REPORTTYPE";\r
-       public static final String P_ID_MONTH = "P_ID_MONTH";\r
-       public static final String P_ID_EPRINT = "P_ID_EPRINT";\r
-       public static final String P_ID_NOTE = "P_ID_NOTE";\r
-       public static final String P_ID_CROSSREF = "P_ID_CROSSREF";\r
-       public static final String P_ID_PROTECT_CACHE = "P_ID_PROTECT_CACHE";\r
-               \r
-    // Property display keys\r
-       public static final String P_SEARCH = "001:Search";\r
-       public static final String P_EDITABLECACHE = "002:Editable Cache";\r
-       public static final String P_PROTECT_CACHE = "0020:Protect Cache from overwriting?";\r
-       public static final String P_REFERENCETYPE = "003:Reference Type";\r
-       public static final String P_AUTHORTEAM = "01:Author Team (Cache)";\r
-       public static final String P_YEAR = "02:Year";\r
-       public static final String P_DATEPUBLISHED = "03:Date Published";\r
-       public static final String P_TITLE = "06:Title";\r
-       public static final String P_INJOURNAL = "07:In Journal";\r
-       public static final String P_VOLUME = "10:Volume";\r
-       public static final String P_EDITION = "110:Edition";\r
-       public static final String P_SERIES = "11:Series";\r
-       public static final String P_PAGES = "110:Pages";\r
-       public static final String P_EDITOR = "12:Editor";\r
-       public static final String P_PUBLISHER = "13:Publisher";\r
-       public static final String P_PLACEPUBLISHED = "14:Place Published";\r
-       public static final String P_ISSN = "15:ISSN";\r
-       public static final String P_INSTITUTION = "16:Institution";\r
-       public static final String P_SCHOOL = "17:School";\r
-       public static final String P_INSERIES = "18:In Series";\r
-       public static final String P_SERIESPART = "19:Series Part";\r
-       public static final String P_ISBN = "20:ISBN";\r
-       public static final String P_URI = "201:URI";\r
-       public static final String P_ORGANIZATION = "21:Organization";\r
-       public static final String P_PRINTEDUNIT = "22:Printed Unit";\r
-       public static final String P_INBOOK = "23:In Book";\r
-       public static final String P_INPROCEEDINGS = "24:In Proceedings";\r
-       public static final String P_BIBTEX_ENTRYTYPE = "25:BibTeX Entry Type";\r
-       public static final String P_JOURNAL = "26:Journal";\r
-       public static final String P_BOOKTITLE = "27:Book Title";\r
-       public static final String P_CHAPTER = "28:Chapter";\r
-       public static final String P_NUMBER = "30:Number";\r
-       public static final String P_ANNOTE = "31:Annote";\r
-       public static final String P_ADDRESS = "32:Address";\r
-       public static final String P_HOWPUBLISHED = "33:How Published";\r
-       public static final String P_REPORTTYPE = "34:Report Type";\r
-       public static final String P_MONTH = "35:Month";\r
-       public static final String P_EPRINT = "36:E-Print";\r
-       public static final String P_NOTE = "37:Note";\r
-       public static final String P_CROSSREF = "38:BibTeX Crossref";           \r
-       \r
-       protected static HashMap<Class, String> referenceTypeMap = null;\r
-       \r
-       private static final String[] P_BIBTEX_ENTRYTYPE_MENU = new String[] {"ARTICLE", "BOOK", "BOOKLET", "INBOOK", "INCOLLECTION", "PROCEEDINGS", "INPROCEEDINGS", "CONFERENCE", "MANUAL", "MASTERTHESIS", "PHDTHESIS", "TECHREPORT", "UNPUBLISHED", "MISC"};\r
-\r
-       private static final int CACHE_NOT_PROTECTED = 0;\r
-       private static final int CACHE_PROTECTED = 1;   \r
-       \r
-       protected void populateReferenceTypes() {\r
-               \r
-               // LinkedHashMap maintains insertion order\r
-               referenceTypeMap = new LinkedHashMap<Class, String>();\r
-               \r
-               referenceTypeMap.put(ReferenceBase.class, "");\r
-//             referenceTypeMap.put(BibtexReference.class, "BibTeX Reference");\r
-               referenceTypeMap.put(Article.class, "Article");\r
-               referenceTypeMap.put(Generic.class, "Generic");\r
-               referenceTypeMap.put(Patent.class, "Patent");\r
-               referenceTypeMap.put(PersonalCommunication.class, "Personal Communication");\r
-               referenceTypeMap.put(CdDvd.class, "CD / DVD");\r
-               referenceTypeMap.put(Database.class, "Database");\r
-               referenceTypeMap.put(Journal.class, "Journal");\r
-               referenceTypeMap.put(Map.class, "Map");\r
-               referenceTypeMap.put(Book.class, "Book");\r
-               referenceTypeMap.put(Proceedings.class, "Proceedings");\r
-               referenceTypeMap.put(PrintSeries.class, "Print Series");\r
-               referenceTypeMap.put(Report.class, "Report");\r
-               referenceTypeMap.put(Thesis.class, "Thesis");\r
-               referenceTypeMap.put(WebPage.class, "Web Page");\r
-               referenceTypeMap.put(BookSection.class, "Book Section");\r
-               referenceTypeMap.put(InProceedings.class, "In Proceedings");\r
-       }\r
-       \r
-       protected String[] getReferenceTypeArray() {\r
-               if (referenceTypeMap == null) {\r
-                       populateReferenceTypes();\r
-               }\r
-               return referenceTypeMap.values().toArray(new String[] {});\r
-       }\r
-       \r
-       protected Set<Class> getReferenceClassSet() {\r
-               return referenceTypeMap.keySet();\r
-       }\r
-               \r
-       public ReferencePropertySource(ReferenceBase reference) {\r
-               \r
-               // Default type of ReferenceBase is Generic\r
-               if (reference == null) {\r
-                       reference = Generic.NewInstance();\r
-               }               \r
-               this.reference = reference;\r
-\r
-               initDescriptors();\r
-       }\r
-\r
-       protected void initDescriptors() {\r
-               \r
-               List<String> displayFields = new ArrayList<String>();\r
-       \r
-               // Drop-down menu to change reference type\r
-               displayFields.add(P_ID_REFERENCETYPE);\r
-               \r
-               // ReferenceBase fields\r
-               displayFields.add(P_ID_SEARCH);\r
-               displayFields.add(P_ID_EDITABLECACHE);\r
-               displayFields.add(P_ID_PROTECT_CACHE);\r
-               displayFields.add(P_ID_AUTHORTEAM);\r
-               displayFields.add(P_ID_URI);\r
-               \r
-               Class referenceClass = reference.getClass();\r
-               \r
-               if (reference instanceof BibtexReference) {\r
-                                               \r
-                       displayFields.add(P_ID_BIBTEX_ENTRYTYPE);\r
-                       displayFields.add(P_ID_YEAR);\r
-                       displayFields.add(P_ID_JOURNAL);\r
-                       displayFields.add(P_ID_BOOKTITLE);\r
-                       displayFields.add(P_ID_CHAPTER);                        \r
-                       displayFields.add(P_ID_TITLE);\r
-                       displayFields.add(P_ID_SERIES);\r
-                       displayFields.add(P_ID_EDITION);\r
-                       displayFields.add(P_ID_VOLUME);\r
-                       displayFields.add(P_ID_NUMBER);\r
-                       displayFields.add(P_ID_PAGES);\r
-                       displayFields.add(P_ID_ANNOTE);\r
-                       displayFields.add(P_ID_EDITOR);\r
-                       displayFields.add(P_ID_INSTITUTION);\r
-                       displayFields.add(P_ID_SCHOOL);\r
-                       displayFields.add(P_ID_ORGANIZATION);\r
-                       displayFields.add(P_ID_PUBLISHER);\r
-                       displayFields.add(P_ID_ADDRESS);\r
-                       displayFields.add(P_ID_HOWPUBLISHED);\r
-                       displayFields.add(P_ID_REPORTTYPE);\r
-                       displayFields.add(P_ID_MONTH);\r
-                       displayFields.add(P_ID_EPRINT);\r
-                       displayFields.add(P_ID_NOTE);\r
-                       displayFields.add(P_ID_CROSSREF);\r
-               }\r
-       \r
-               if (reference instanceof StrictReferenceBase) {\r
-                       \r
-                       displayFields.add(P_ID_DATEPUBLISHED);\r
-                       displayFields.add(P_ID_TITLE);\r
-       \r
-                       if (referenceClass == Article.class) {\r
-                               displayFields.add(P_ID_INJOURNAL);\r
-                               displayFields.add(P_ID_PAGES);\r
-                               displayFields.add(P_ID_SERIES);\r
-                               displayFields.add(P_ID_VOLUME);\r
-                       }\r
-       \r
-                       if (referenceClass == Generic.class) {\r
-                               displayFields.add(P_ID_PAGES);\r
-                               displayFields.add(P_ID_SERIES);\r
-                               displayFields.add(P_ID_VOLUME);\r
-                               displayFields.add(P_ID_EDITOR);\r
-                               displayFields.add(P_ID_PLACEPUBLISHED);\r
-                               displayFields.add(P_ID_PUBLISHER);\r
-                       }                       \r
-                       \r
-                       if (referenceClass == Patent.class) {\r
-                               // No additional fields\r
-                       }\r
-                       \r
-                       if (referenceClass == PersonalCommunication.class) {\r
-                               // No additional fields                         \r
-                       }\r
-                       if (reference instanceof PublicationBase) {\r
-       \r
-                               displayFields.add(P_ID_PLACEPUBLISHED);\r
-                               displayFields.add(P_ID_PUBLISHER);\r
-                               \r
-                               if (referenceClass == CdDvd.class) {\r
-                                       // No additional fields                                                 \r
-                               }\r
-                               \r
-                               if (referenceClass == Database.class) {\r
-                                       // No additional fields                                 \r
-                               }\r
-                               \r
-                               if (referenceClass == Journal.class) {  \r
-                                       displayFields.add(P_ID_ISSN);\r
-                               }\r
-       \r
-                               if (referenceClass == Map.class) {\r
-                                       // No additional fields                                 \r
-                               }                               \r
-                               \r
-                               if (referenceClass == PrintSeries.class) {\r
-                                       displayFields.add(P_ID_SERIES);                                 \r
-                               }\r
-                               \r
-                               if (referenceClass == Report.class) {\r
-                                       displayFields.add(P_ID_INSTITUTION);                                    \r
-                               }\r
-                               \r
-                               if (referenceClass == Thesis.class) {\r
-                                       displayFields.add(P_ID_SCHOOL);                                         \r
-                               }\r
-                               \r
-                               if (referenceClass == WebPage.class) {\r
-                                       // No additional fields         \r
-                               }\r
-                               \r
-                               if (reference instanceof PrintedUnitBase) {\r
-                                       \r
-                                       displayFields.add(P_ID_EDITOR);\r
-                                       displayFields.add(P_ID_INSERIES);\r
-                                       displayFields.add(P_ID_PAGES);\r
-                                       displayFields.add(P_ID_SERIESPART);\r
-                                       displayFields.add(P_ID_VOLUME);\r
-                                       \r
-                                       if (referenceClass == Book.class) {\r
-                                               displayFields.add(P_ID_ISBN);\r
-                                               displayFields.add(P_ID_EDITION);\r
-                                       }\r
-                                       \r
-                                       if (referenceClass == Proceedings.class) {\r
-                                               displayFields.add(P_ID_ORGANIZATION);                                                   \r
-                                       }\r
-                               }\r
-                       }\r
-                       \r
-                       if (reference instanceof SectionBase) {\r
-                               \r
-                               displayFields.add(P_ID_PAGES);  \r
-                               displayFields.add(P_ID_PRINTEDUNIT);\r
-                               \r
-                               if (referenceClass == BookSection.class) {\r
-                                       displayFields.add(P_ID_INBOOK);\r
-                               }\r
-                               \r
-                               if (referenceClass == InProceedings.class) {\r
-                                       displayFields.add(P_ID_INPROCEEDINGS);                                  \r
-                               }\r
-                       }\r
-               }\r
-               \r
-               for (String field : displayFields) {\r
-                       addDescriptor(field);\r
-               }\r
-       }\r
-\r
-       protected Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
-       \r
-       protected void addDescriptor(String id) {\r
-               \r
-               // Reference search\r
-               if (id.equals(P_ID_SEARCH)) {\r
-                       descriptors.addElement(\r
-                                       new ReferenceSearchDescriptor(P_ID_SEARCH, P_SEARCH, getSearchType()) {\r
-                                               protected void saveReference(ReferenceBase reference) {\r
-                                                       setPropertyValue(P_ID_SEARCH, reference);\r
-                                               }\r
-                       });\r
-               }\r
-               \r
-               // Editable cache\r
-               if (id.equals(P_ID_EDITABLECACHE)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_EDITABLECACHE, P_EDITABLECACHE));\r
-               }\r
-               \r
-               // Protect cache?\r
-               if (id.equals(P_ID_PROTECT_CACHE)) {\r
-                       descriptors.addElement(\r
-                                       new ComboBoxPropertyDescriptor(P_ID_PROTECT_CACHE, P_PROTECT_CACHE, \r
-                                                       new String[] {"no", "yes"}));\r
-               }\r
-               \r
-               // Reference type\r
-               if (id.equals(P_ID_REFERENCETYPE)) {\r
-                       descriptors.addElement(createReferenceTypeDescriptor());\r
-               }\r
-               \r
-               // Author team\r
-               if (id.equals(P_ID_AUTHORTEAM)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_AUTHORTEAM, P_AUTHORTEAM));                     \r
-               }\r
-               \r
-               // Year\r
-               if (id.equals(P_ID_YEAR)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_YEAR, P_YEAR));\r
-               }\r
-               \r
-               // Date published\r
-               if (id.equals(P_ID_DATEPUBLISHED)) {\r
-                       \r
-                       // TimePeriodPropertySource returns TimePeriod.getYear() - make this editable\r
-                       TextPropertyDescriptor yearDescriptor = new TextPropertyDescriptor(\r
-                                       P_ID_DATEPUBLISHED, P_DATEPUBLISHED);\r
-                       yearDescriptor.setValidator(new YearValidator());\r
-                       descriptors.addElement(yearDescriptor);                 \r
-               } \r
-                               \r
-               // URI\r
-               if (id.equals(P_ID_URI)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_URI, P_URI));                   \r
-               } \r
-               \r
-               // Title\r
-               if (id.equals(P_ID_TITLE)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_TITLE, P_TITLE));                       \r
-               } \r
-               \r
-               // In journal\r
-               if (id.equals(P_ID_INJOURNAL)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_INJOURNAL, P_INJOURNAL));                       \r
-               }\r
-               \r
-               // Pages\r
-               if (id.equals(P_ID_PAGES)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_PAGES, P_PAGES));                       \r
-               } \r
-               \r
-               // Series\r
-               if (id.equals(P_ID_SERIES)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_SERIES, P_SERIES));                     \r
-               } \r
-               \r
-               // Volume\r
-               if (id.equals(P_ID_VOLUME )) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_VOLUME, P_VOLUME));                     \r
-               }\r
-               \r
-               // Editor\r
-               if (id.equals(P_ID_EDITOR)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_EDITOR, P_EDITOR));                     \r
-               } \r
-\r
-               // Edition\r
-               if (id.equals(P_ID_EDITION)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_EDITION, P_EDITION));                   \r
-               } \r
-               \r
-               // Place published\r
-               if (id.equals(P_ID_PLACEPUBLISHED)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_PLACEPUBLISHED, P_PLACEPUBLISHED));                     \r
-               }\r
-               \r
-               // Publisher\r
-               if (id.equals(P_ID_PUBLISHER)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_PUBLISHER, P_PUBLISHER));                       \r
-               } \r
-               \r
-               // ISSN\r
-               if (id.equals(P_ID_ISSN)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_ISSN, P_ISSN));                 \r
-               } \r
-               \r
-               // Institution\r
-               if (id.equals(P_ID_INSTITUTION)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_INSTITUTION, P_INSTITUTION));                   \r
-               } \r
-               \r
-               // School\r
-               if (id.equals(P_ID_SCHOOL)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_SCHOOL, P_SCHOOL));                     \r
-               } \r
-               \r
-               // In series\r
-               if (id.equals(P_ID_INSERIES)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_INSERIES, P_INSERIES));                 \r
-               } \r
-               \r
-               // Series part\r
-               if (id.equals(P_ID_SERIESPART)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_SERIESPART, P_SERIESPART));                     \r
-               } \r
-               \r
-               // ISBN\r
-               if (id.equals(P_ID_ISBN)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_ISBN, P_ISBN));\r
-               }\r
-               \r
-               // Organization\r
-               if (id.equals(P_ID_ORGANIZATION)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_ORGANIZATION, P_ORGANIZATION));                 \r
-               } \r
-               \r
-               // Printed unit\r
-               if (id.equals(P_ID_PRINTEDUNIT)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_PRINTEDUNIT, P_PRINTEDUNIT));                   \r
-               } \r
-               \r
-               // In book\r
-               if (id.equals(P_ID_INBOOK)) {\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(P_ID_INBOOK, P_INBOOK));                     \r
-               }\r
-               \r
-               // Bibtex entry type\r
-               if (id.equals(P_ID_BIBTEX_ENTRYTYPE)) {\r
-                       descriptors.addElement(\r
-                                       new ComboBoxPropertyDescriptor(P_ID_BIBTEX_ENTRYTYPE, P_BIBTEX_ENTRYTYPE, P_BIBTEX_ENTRYTYPE_MENU));                    \r
-               }\r
-       }\r
-\r
-       /**\r
-        * The default implementation of <code>ReferencePropertySource</code> will\r
-        * search all <code>ReferenceBase</code> classes.\r
-        * \r
-        * @return\r
-        */\r
-       protected int getSearchType() {\r
-               return IReferenceSearch.BIBREF;\r
-       }\r
-\r
-       /**\r
-        * The default implementation of <code>ReferencePropertySource</code> will show\r
-        * a drop-down of reference types, but subclasses may want to show a non-editable\r
-        * text descriptor of the reference type. \r
-        */\r
-       protected PropertyDescriptor createReferenceTypeDescriptor() {\r
-               return new ComboBoxPropertyDescriptor(\r
-                               P_ID_REFERENCETYPE, P_REFERENCETYPE, getReferenceTypeArray());\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()\r
-        */\r
-       public Object getEditableValue() {\r
-               return CdmUtils.Nz(reference.getTitleCache());\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()\r
-        */\r
-       public IPropertyDescriptor[] getPropertyDescriptors() {\r
-               return (IPropertyDescriptor[]) descriptors.toArray(\r
-                new IPropertyDescriptor[descriptors.size()]);\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)\r
-        */\r
-       public Object getPropertyValue(Object id) {\r
-                               \r
-               // Reference Type: get integer index of drop-down menu\r
-               if (id.equals(P_ID_REFERENCETYPE)) {\r
-                       Class referenceClass = reference.getClass();\r
-                       int menuIndex = 0;\r
-//                     for (Class clazz : referenceTypeMap.keySet()) {\r
-                       for (Class clazz : getReferenceClassSet()) {\r
-                               if (clazz == referenceClass) {\r
-                                       return menuIndex;\r
-                               }\r
-                               menuIndex++;\r
-                       }\r
-                       return 0;\r
-               }\r
-\r
-               // Editable cache\r
-               if (id.equals(P_ID_EDITABLECACHE)) {\r
-                       return (CdmUtils.Nz(reference.getTitleCache()));\r
-               }\r
-               \r
-               // Protect cache?\r
-               if (id.equals(P_ID_PROTECT_CACHE)) {\r
-                       if (reference.isProtectedTitleCache()) {\r
-                               return CACHE_PROTECTED;\r
-                       } else {\r
-                               return CACHE_NOT_PROTECTED;\r
-                       }\r
-               }\r
-               \r
-               // Author Team: for now, just edit the cache\r
-               // TODO AuthorTeamPropertySource\r
-               if (id.equals(P_ID_AUTHORTEAM)) {\r
-                       TeamOrPersonBase authorTeam = reference.getAuthorTeam();\r
-                       \r
-                       if (authorTeam == null) {\r
-                               return "";\r
-                       }\r
-                       \r
-                       return CdmUtils.Nz(authorTeam.getTitleCache());\r
-               }\r
-               \r
-               // Year\r
-               if (id.equals(P_ID_YEAR)) {\r
-                       return CdmUtils.Nz(reference.getYear());\r
-               }\r
-               \r
-               // URI\r
-               if (id.equals(P_ID_URI)) {\r
-                       return CdmUtils.Nz(reference.getUri());\r
-               }\r
-               \r
-               // Date published\r
-               if (id.equals(P_ID_DATEPUBLISHED)) {\r
-                       TimePeriod datePublished = (TimePeriod) invokeMethod(reference, "getDatePublished", null);\r
-                       \r
-                       if (datePublished == null) {\r
-                               datePublished = TimePeriod.NewInstance();\r
-                       }\r
-                       \r
-                       TimePeriodPropertySource timePeriodPropertySource = \r
-                                       new TimePeriodPropertySource(datePublished);\r
-                       timePeriodPropertySource.addPropertyChangeListener(new PropertyChangeListener() {\r
-                               public void propertyChange(PropertyChangeEvent evt) {\r
-                                       if (reference instanceof StrictReferenceBase && evt.getNewValue() instanceof TimePeriod) {      \r
-                                               ((StrictReferenceBase) reference).setDatePublished((TimePeriod) evt.getNewValue());\r
-                                       }\r
-                               }\r
-                       });\r
-                       return timePeriodPropertySource;\r
-               }\r
-               \r
-               // Title: used by StrictReferenceBase\r
-               if (id.equals(P_ID_TITLE)) {\r
-                       String title = (String) invokeMethod(reference, "getTitle", null);\r
-                       return CdmUtils.Nz(title);\r
-               }\r
-               \r
-               // InJournal: return an instance of ReferencePropertySource\r
-               if (id.equals(P_ID_INJOURNAL)) {\r
-                               \r
-                       Journal inJournal = (Journal) invokeMethod(reference, "getInJournal", null);\r
-                       \r
-                       if (inJournal == null) {\r
-                               inJournal = Journal.NewInstance();\r
-                       }\r
-                       \r
-                       ReferencePropertySource bibRefPropertySource = new SingleRefTypePropertySource(\r
-                                       inJournal, SingleRefTypePropertySource.JOURNAL);\r
-                       bibRefPropertySource.addPropertyChangeListener(new PropertyChangeListener() {\r
-                               public void propertyChange(PropertyChangeEvent evt) {\r
-                                       if (reference instanceof Article && evt.getNewValue() instanceof Journal) {     \r
-                                               ((Article) reference).setInJournal((Journal) evt.getNewValue());\r
-                                       }\r
-                               }\r
-                       });\r
-                       return bibRefPropertySource;\r
-               }\r
-               \r
-               // Pages\r
-               if (id.equals(P_ID_PAGES)) {\r
-                       String pages = (String) invokeMethod(reference, "getPages", null);\r
-                       return CdmUtils.Nz(pages);\r
-               }\r
-               \r
-               // Series\r
-               if (id.equals(P_ID_SERIES)) {\r
-                       String series = (String) invokeMethod(reference, "getSeries", null);\r
-                       return CdmUtils.Nz(series); \r
-               }\r
-\r
-               // Volume\r
-               if (id.equals(P_ID_VOLUME)) {\r
-                       String volume = (String) invokeMethod(reference, "getVolume", null);\r
-                       return CdmUtils.Nz(volume);                     \r
-               }\r
-\r
-               // Editor\r
-               if (id.equals(P_ID_EDITOR)) {\r
-                       String editor = (String) invokeMethod(reference, "getEditor", null);\r
-                       return CdmUtils.Nz(editor);                     \r
-               }\r
-\r
-               // Edition\r
-               if (id.equals(P_ID_EDITION)) {\r
-                       String edition = (String) invokeMethod(reference, "getEdition", null);\r
-                       return CdmUtils.Nz(edition);                    \r
-               }\r
-               \r
-               // Place published\r
-               if (id.equals(P_ID_PLACEPUBLISHED)) {\r
-                       String placePublished = (String) invokeMethod(reference, "getPlacePublished", null);\r
-                       return CdmUtils.Nz(placePublished);\r
-               }\r
-               \r
-               // Publisher\r
-               if (id.equals(P_ID_PUBLISHER)) {\r
-                       String publisher = (String) invokeMethod(reference, "getPublisher", null);\r
-                       return CdmUtils.Nz(publisher);                  \r
-               }\r
-\r
-               // ISSN\r
-               if (id.equals(P_ID_ISSN)) {\r
-                       String issn = (String) invokeMethod(reference, "getIssn", null);\r
-                       return CdmUtils.Nz(issn);                       \r
-               }\r
-\r
-               // Institution\r
-               if (id.equals(P_ID_INSTITUTION)) {\r
-                       String institution = (String) invokeMethod(reference, "getInstitution", null);\r
-                       return CdmUtils.Nz(institution);                        \r
-               }\r
-\r
-               // In series\r
-               if (id.equals(P_ID_INSERIES)) {\r
-                       \r
-               }\r
-               \r
-               // ISBN\r
-               if (id.equals(P_ID_ISBN)) {\r
-                       String isbn = (String) invokeMethod(reference, "getIsbn", null);\r
-                       return CdmUtils.Nz(isbn);                               \r
-               }\r
-\r
-               // Organization\r
-               if (id.equals(P_ID_ORGANIZATION)) {\r
-                       String organization = (String) invokeMethod(reference, "getOrganization", null);\r
-                       return CdmUtils.Nz(organization);                       \r
-               }\r
-               \r
-               // In book\r
-               if (id.equals(P_ID_INBOOK)) {\r
-                       \r
-                       Book inBook = (Book) invokeMethod(reference, "getInBook", null);\r
-                       \r
-                       if (inBook == null) {\r
-                               inBook = Book.NewInstance();\r
-                       }\r
-                       \r
-                       ReferencePropertySource bibRefPropertySource = new SingleRefTypePropertySource(\r
-                                       inBook, SingleRefTypePropertySource.BOOK);\r
-                       bibRefPropertySource.addPropertyChangeListener(new PropertyChangeListener() {\r
-                               public void propertyChange(PropertyChangeEvent evt) {\r
-                                       if (reference instanceof BookSection && evt.getNewValue() instanceof Book) {    \r
-                                               ((BookSection) reference).setInBook((Book) evt.getNewValue());\r
-                                       }\r
-                               }\r
-                       });\r
-                       return bibRefPropertySource;\r
-               }\r
-\r
-               // Bibtex entry type\r
-               if (id.equals(P_ID_BIBTEX_ENTRYTYPE)) {\r
-                       \r
-               }\r
-               \r
-               return "";\r
-       }\r
-\r
-       /**\r
-        * Executes <code>methodName</code> on <code>obj</code> with\r
-        * the argument <code>arg</code>.\r
-        * <p>\r
-        * On failure, returns <code>null</code>.\r
-        * <p>\r
-        * NOTE:  both <code>Class.getMethod()</code> and <code>Method.invoke()</code>\r
-        * can be called with the <code>Object... args</code> approach, which allows\r
-        * the user to pass in a varying number of arguments. To keep it simple, and since\r
-        * this is usually only getters or setters, we are using only one argument.\r
-        * @param obj\r
-        * @param methodName\r
-        * @param args\r
-        * @return\r
-        */\r
-       private Object invokeMethod(Object obj, String methodName, Object arg) {\r
-               try {\r
-                       Method method = null;\r
-                       if (arg == null) {\r
-                               method = obj.getClass().getMethod(methodName);\r
-                               return method.invoke(obj);\r
-                       } else {\r
-                               method = obj.getClass().getMethod(methodName, arg.getClass());\r
-                               return method.invoke(obj, arg);\r
-                       }\r
-               } catch (SecurityException e) {\r
-                       logger.error(e.getMessage());\r
-               } catch (IllegalArgumentException e) {\r
-                       logger.error(e.getMessage());\r
-               } catch (NoSuchMethodException e) {\r
-                       logger.error(e.getMessage());\r
-               } catch (IllegalAccessException e) {\r
-                       logger.error(e.getMessage());\r
-               } catch (InvocationTargetException e) {\r
-                       logger.error(e.getMessage());\r
-               }\r
-               return null;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)\r
-        */\r
-       public boolean isPropertySet(Object id) {\r
-               return false;\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)\r
-        */\r
-       public void resetPropertyValue(Object id) {}\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)\r
-        */\r
-       public void setPropertyValue(Object id, Object value) {\r
-               \r
-               // Search result\r
-               if (id.equals(P_ID_SEARCH)) {\r
-                       if (value instanceof ReferenceBase) {\r
-                               reference = (ReferenceBase) value;\r
-                       }\r
-               }\r
-\r
-               // Protect cache? \r
-               if (id.equals(P_ID_PROTECT_CACHE)) {\r
-                       if (((Integer) value).intValue() == CACHE_PROTECTED) {\r
-                               reference.setProtectedTitleCache(true);\r
-                       } else {\r
-                               reference.setProtectedTitleCache(false);\r
-                       }\r
-               }\r
-                               \r
-               // Reference Type\r
-               if (id.equals(P_ID_REFERENCETYPE)) {\r
-                       \r
-                       // NOTE: this code will only be reached if user actually changes choice in reference type\r
-                       //      dropdown list, not if focus is merely gained and lost without changing the value\r
-                       \r
-                       // Grab reference's title cache\r
-                       String oldTitleCache = reference.getTitleCache();\r
-                       \r
-                       // Get reference's class\r
-                       int menuIndex;\r
-                       try {\r
-                               menuIndex = ((Integer) value).intValue();\r
-                       } catch (ClassCastException e) {\r
-                               // Leave method / no change on class cast error\r
-                               logger.error(e.getMessage());\r
-                               return;\r
-                       }                       \r
-                       Class referenceClass = (Class)(getReferenceClassSet().toArray())[menuIndex];\r
-                       \r
-                       // Make a new reference using the class\r
-                       reference = makeNewReference(referenceClass);\r
-                       \r
-                       // Set new reference's title cache\r
-                       reference.setTitleCache(oldTitleCache);\r
-               }\r
-               \r
-               // Author Team\r
-               if (id.equals(P_ID_AUTHORTEAM)) {\r
-                       TeamOrPersonBase authorTeam = reference.getAuthorTeam();\r
-                       if (authorTeam == null) {\r
-                               authorTeam = Team.NewInstance();\r
-                               reference.setAuthorTeam(authorTeam);\r
-                       }\r
-                       try {\r
-                               authorTeam.setTitleCache((String) value);\r
-                       } catch (ClassCastException e) {\r
-                               // Leave method / no change on class cast error\r
-                               logger.error(e.getMessage());\r
-                               return;\r
-                       }\r
-               }\r
-               \r
-               // Citation\r
-               if (id.equals(P_ID_URI)) {\r
-                       String uri = (String) value;\r
-                       reference.setUri(uri);\r
-               }\r
-               \r
-               // Year - only set directly by Bibtex refs\r
-               if (id.equals(P_ID_YEAR)) {\r
-                       String year = (String) value;\r
-                       if (reference instanceof BibtexReference) {\r
-                               ((BibtexReference) reference).setYear(year);\r
-                       }\r
-               }\r
-\r
-               // Title: used by StrictReferenceBase\r
-               if (id.equals(P_ID_TITLE)) {\r
-                       String title = null;\r
-                       try {\r
-                               title = (String) value;\r
-                       } catch (ClassCastException e) {\r
-                               // Leave method / no change on class cast error\r
-                               logger.error(e.getMessage());\r
-                               return;\r
-                       }\r
-                       invokeMethod(reference, "setTitle", title);\r
-               }\r
-\r
-               // Pages\r
-               if (id.equals(P_ID_PAGES)) {\r
-                       invokeMethod(reference, "setPages", (String) value);\r
-               }\r
-\r
-               // Series\r
-               if (id.equals(P_ID_SERIES)) {\r
-                       invokeMethod(reference, "setSeries", (String) value);\r
-               }\r
-               \r
-               // Volume\r
-               if (id.equals(P_ID_VOLUME)) {\r
-                       invokeMethod(reference, "setVolume", (String) value);\r
-               }\r
-               \r
-               // Editor\r
-               if (id.equals(P_ID_EDITOR)) {\r
-                       invokeMethod(reference, "setEditor", (String) value);\r
-               }\r
-\r
-               // Edition\r
-               if (id.equals(P_ID_EDITION)) {\r
-                       invokeMethod(reference, "setEdition", (String) value);\r
-               }\r
-               \r
-               // Place published\r
-               if (id.equals(P_ID_PLACEPUBLISHED)) {\r
-                       invokeMethod(reference, "setPlacePublished", (String) value);\r
-               }\r
-\r
-               // Publisher\r
-               if (id.equals(P_ID_PUBLISHER)) {\r
-                       invokeMethod(reference, "setPublisher", (String) value);\r
-               }\r
-\r
-               // ISSN\r
-               if (id.equals(P_ID_ISSN)) {\r
-                       invokeMethod(reference, "setIssn", (String) value);\r
-               }\r
-\r
-               // Institution\r
-               if (id.equals(P_ID_INSTITUTION)) {\r
-                       invokeMethod(reference, "setInstitution", (String) value);                      \r
-               }\r
-               \r
-               // ISBN\r
-               if (id.equals(P_ID_ISBN)) {\r
-                       invokeMethod(reference, "setIsbn", (String) value);\r
-               }\r
-\r
-               // Organization\r
-               if (id.equals(P_ID_ORGANIZATION)) {\r
-                       invokeMethod(reference, "setOrganization", (String) value);\r
-               }\r
-\r
-               // In book\r
-               if (id.equals(P_ID_INBOOK)) {\r
-                       Book inBook = (Book) invokeMethod(reference, "getInBook", null);\r
-                       if (inBook == null) {\r
-                               inBook = Book.NewInstance();\r
-                               invokeMethod(reference, "setInBook", inBook);\r
-                       }\r
-                       inBook.setTitleCache((String) value);\r
-               }\r
-               \r
-               // Date published\r
-               if (id.equals(P_ID_DATEPUBLISHED)) {\r
-                       \r
-                       if (!(reference instanceof StrictReferenceBase)) {\r
-                               return;\r
-                       }\r
-                       \r
-                       if (value instanceof String) {\r
-                               String year = (String) value;\r
-                               TimePeriod yearsPublished = null;\r
-                               \r
-                               // If not empty, format is either "xxxx" or "xxxx-xxxx", thanks to validator\r
-                               if (!year.equals("")) {\r
-                                       \r
-                                       // Convert to a TimePeriod\r
-                                       yearsPublished = CdmUtil.convertTimePeriod(year);\r
-                                       \r
-                                       // Update reference's dataPublished field\r
-                                       TimePeriod datePublished = ((StrictReferenceBase) reference).getDatePublished();\r
-                                       \r
-                                       if (datePublished == null) {\r
-                                               ((StrictReferenceBase) reference).setDatePublished(yearsPublished);\r
-                                       } else {\r
-                                               \r
-                                               // Any months or days should be left as is - only update years \r
-                                               datePublished.setStartYear(yearsPublished.getStartYear());\r
-                                               datePublished.setEndYear(yearsPublished.getEndYear());\r
-                                       }\r
-                               } else {\r
-                                       ((StrictReferenceBase) reference).setDatePublished(null);\r
-                               }\r
-                               \r
-\r
-                       }\r
-               }\r
-\r
-               // Editable cache\r
-               if (id.equals(P_ID_EDITABLECACHE)) {\r
-                       reference.setTitleCache((String) value);\r
-               } else {\r
-                       reference.setTitleCache(reference.generateTitle(), reference.isProtectedTitleCache());\r
-               }\r
-               \r
-               propertyChangeSupport.firePropertyChange(ITaxEditorConstants.PROPERTY_SHEET_CHANGE, null, reference);\r
-       }\r
-       \r
-       /**\r
-        * Takes a <code>referenceClass</code>, then executes either its <code>NewInstance()</code> \r
-        * method or its constructor. Puts the resulting object in <code>this.reference</code> and\r
-        * returns it.\r
-        * <p>\r
-        * If unsuccessful, <code>this.reference</code> keeps its old value and is returned.\r
-        * @param referenceClass\r
-        * @return\r
-        */\r
-       private ReferenceBase makeNewReference(Class referenceClass) {\r
-                               \r
-               // Check whether the class has a method "NewInstance()";\r
-               try {\r
-                       Method method = referenceClass.getMethod("NewInstance", null);\r
-                       reference = (ReferenceBase) method.invoke(null, null);\r
-               } catch (NoSuchMethodException e) {\r
-                       try {\r
-                               // If not, use its constructor\r
-                               Constructor constructor = referenceClass.getConstructor(null);\r
-                               reference = (ReferenceBase) constructor.newInstance(null);\r
-                       } catch (SecurityException e1) {\r
-                               e1.printStackTrace();\r
-                       } catch (NoSuchMethodException e1) {\r
-                               e1.printStackTrace();\r
-                       } catch (IllegalArgumentException e1) {\r
-                               e1.printStackTrace();\r
-                       } catch (InstantiationException e1) {\r
-                               e1.printStackTrace();\r
-                       } catch (IllegalAccessException e1) {\r
-                               e1.printStackTrace();\r
-                       } catch (InvocationTargetException e1) {\r
-                               e1.printStackTrace();\r
-                       }\r
-               } catch (SecurityException e) {\r
-                       e.printStackTrace();\r
-               } catch (IllegalArgumentException e) {\r
-                       e.printStackTrace();\r
-               } catch (IllegalAccessException e) {\r
-                       e.printStackTrace();\r
-               } catch (InvocationTargetException e) {\r
-                       e.printStackTrace();\r
-               }\r
-               \r
-               return reference;\r
-       }\r
-\r
-       private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this);\r
-       \r
-       public void addPropertyChangeListener(\r
-                       PropertyChangeListener listener) {\r
-               propertyChangeSupport.addPropertyChangeListener(listener);\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferenceSearchDescriptor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferenceSearchDescriptor.java
deleted file mode 100644 (file)
index e30c2a0..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.reference;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.jface.viewers.DialogCellEditor;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.swt.widgets.Dialog;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.editor.reference.ReferenceSearchDialog;\r
-\r
-/**  \r
- * @author p.ciardelli\r
- * @created 19.05.2008\r
- * @version 1.0\r
- */\r
-abstract public class ReferenceSearchDescriptor extends PropertyDescriptor {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(ReferenceSearchDescriptor.class);\r
-               \r
-       int searchType;\r
-       \r
-       public ReferenceSearchDescriptor(Object id, String displayName, int searchType) {\r
-               super(id, displayName);\r
-               \r
-               this.searchType = searchType;\r
-       }\r
-\r
-    public CellEditor createPropertyEditor(Composite parent) {\r
-        CellEditor editor = new DialogCellEditor(parent) {\r
-\r
-                       protected Object openDialogBox(\r
-                                       Control cellEditorWindow) {\r
-                       Dialog dialog = new ReferenceSearchDialog(cellEditorWindow.getShell(), \r
-                                       searchType);\r
-                       Object value = ((ReferenceSearchDialog) dialog).open();\r
-                               if (value instanceof ReferenceBase) {\r
-                                       \r
-                                       ReferenceBase reference = (ReferenceBase) value;\r
-                                       saveReference(reference);\r
-                                       return new ReferencePropertySource(reference);\r
-                               }\r
-                               return null;\r
-                       }\r
-        };\r
-        if (getValidator() != null) {\r
-                       editor.setValidator(getValidator());\r
-               }\r
-        return editor;\r
-    }\r
-        \r
-    abstract protected void saveReference(ReferenceBase reference);    \r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/SingleRefTypePropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/SingleRefTypePropertySource.java
deleted file mode 100644 (file)
index f9a9590..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.reference;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.ILabelProvider;\r
-import org.eclipse.swt.graphics.Color;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.reference.Book;\r
-import eu.etaxonomy.cdm.model.reference.Journal;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.ITaxEditorConstants;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-\r
-/**\r
- * This subclass is for cases where only one subclass of <code>ReferenceBase</code>\r
- * can be edited in the property source. \r
- * <p>\r
- * For instance, if the user is editing an\r
- * <code>Article</code>, one of its fields would be a \r
- * <code>SingleRefTypePropertySource</code> restricted to a <code>Journal</code>,\r
- * and the reference type drop-down would be replaced by the non-editable \r
- * value "Journal".\r
- * \r
- * @author p.ciardelli\r
- * @created 19.11.2008\r
- * @version 1.0\r
- */\r
-public class SingleRefTypePropertySource extends ReferencePropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(SingleRefTypePropertySource.class);\r
-       \r
-       public static final String BOOK = "Book";\r
-       public static final String JOURNAL = "Journal";\r
-\r
-       private String referenceType;\r
-       \r
-       public SingleRefTypePropertySource(ReferenceBase reference, String referenceType) {\r
-               super(reference);\r
-               \r
-               this.referenceType = referenceType;\r
-       }\r
-\r
-       protected PropertyDescriptor createReferenceTypeDescriptor() {\r
-               return new PropertyDescriptor(P_ID_REFERENCETYPE, P_REFERENCETYPE) {\r
-                       public ILabelProvider getLabelProvider() {\r
-                               return super.getLabelProvider();\r
-                       }\r
-               };\r
-       }\r
-       \r
-       public Object getPropertyValue(Object id) {\r
-               \r
-               // Reference Type: show non-editable reference type in property value\r
-               if (id.equals(P_ID_REFERENCETYPE)) {                    \r
-                       return referenceType;\r
-               }\r
-               \r
-               return super.getPropertyValue(id);\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypeCollectionPropertySource.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypeCollectionPropertySource.java
deleted file mode 100644 (file)
index 76c920f..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-/**\r
- * Copyright (C) 2007 EDIT\r
- * European Distributed Institute of Taxonomy \r
- * http://www.e-taxonomy.eu\r
- * \r
- * The contents of this file are subject to the Mozilla Public License Version 1.1\r
- * See LICENSE.TXT at the top of this package for the full license terms.\r
- */\r
-package eu.etaxonomy.taxeditor.propertysheet.type;\r
-\r
-import java.beans.PropertyChangeEvent;\r
-import java.beans.PropertyChangeListener;\r
-import java.util.Collection;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
-import org.eclipse.ui.views.properties.IPropertySource;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-import org.eclipse.ui.views.properties.TextPropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameTypeDesignation;\r
-import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.TypeDesignationBase;\r
-import eu.etaxonomy.cdm.model.reference.Generic;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.propertysheet.CollectionPropertySource;\r
-import eu.etaxonomy.taxeditor.propertysheet.reference.ReferencePropertySource;\r
-\r
-public class TypeCollectionPropertySource extends CollectionPropertySource {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TypeCollectionPropertySource.class);\r
-       \r
-       private TaxonNameBase name;\r
-\r
-       public TypeCollectionPropertySource(TaxonNameBase name, Collection collection) {\r
-               super(collection);\r
-               this.name = name;\r
-       }\r
-       \r
-       protected void addDescriptor(Object item) {\r
-               String itemDisplayName = getItemDisplayName(item);\r
-               \r
-               if (item instanceof NameTypeDesignation) {\r
-                       descriptors.addElement(\r
-                                       new PropertyDescriptor(item, itemDisplayName));\r
-               } else {\r
-                       \r
-                       /* Two issues here, caused by making a ProperySheet field editable while at the same\r
-                        *  time returning an IPropertySource with which its child fields are built.\r
-                        *  \r
-                        * First, TextPropertyDescriptor expects its value to be set w/ a String and \r
-                        *  throws an Assert exception when this is not the case, i.e. when it is passed an\r
-                        *  IPropertySource; hence, the override of doSetValue().\r
-                        *  \r
-                        * Second, the super implementation of doGetValue() was causing the equality test in\r
-                        *  PropertySheetEntry:140 to return false: it was comparing the IPropertySource with \r
-                        *  the CellEditor's text String, thereby triggering an infinite loop where the cell's\r
-                        *  previous state would never equals the cell's current state. Hence, the \r
-                        *  IPropertySource is now saved in the field editorValue for comparison.\r
-                        */\r
-                       descriptors.addElement(\r
-                                       new TextPropertyDescriptor(item, itemDisplayName));\r
-//                                     new TextPropertyDescriptor(item, itemDisplayName) {\r
-//                                         public CellEditor createPropertyEditor(Composite parent) {\r
-//                                             CellEditor editor = new TextCellEditor(parent) {\r
-//                                                     Object editorValue;\r
-//                                                 protected void doSetValue(Object value) {\r
-//                                                     if (value instanceof String) {\r
-//                                                             super.doSetValue(value);\r
-//                                                     } else {\r
-//                                                             editorValue = value;\r
-//                                                             super.doSetValue(value.toString());\r
-//                                                     }                                                       \r
-//                                                 }\r
-////                                               protected Object doGetValue() {\r
-////                                                   return super.doGetValue();\r
-////                                               }\r
-//                                             };\r
-//                                             if (getValidator() != null) {\r
-//                                                             editor.setValidator(getValidator());\r
-//                                                     }\r
-//                                             return editor;\r
-//                                         }\r
-//                                     });\r
-               }\r
-       }\r
-       \r
-       @Override\r
-       protected String getItemDisplayName(Object item) {\r
-               String str = "";\r
-               \r
-               if (item instanceof SpecimenTypeDesignation) {\r
-                       \r
-                       SpecimenTypeDesignation typeDesignation = (SpecimenTypeDesignation) item;\r
-                       \r
-                       if (typeDesignation.getTypeStatus() != null) {\r
-                               str = typeDesignation.getTypeStatus().getLabel();\r
-                       } else {\r
-                               str = "UNDEFINED";\r
-                       }\r
-               }\r
-\r
-               if (item instanceof NameTypeDesignation) {\r
-                       \r
-                       NameTypeDesignation typeDesignation = (NameTypeDesignation) item;\r
-                       \r
-                       if (typeDesignation.isLectoType()) {\r
-                               str = "Lectotype";\r
-                       } else {\r
-                               str = "Type";\r
-                       }\r
-               }\r
-               \r
-               return str;\r
-       }\r
-\r
-       @Override\r
-       public Object getPropertyValue(Object id) {\r
-               \r
-               if (id instanceof TypeDesignationBase) {\r
-                       return new TypeDesignationPropertySource((TypeDesignationBase) id);\r
-               }\r
-               return null;\r
-       }       \r
-       \r
-       @Override\r
-       public void setPropertyValue(Object id, Object value) {\r
-                               \r
-               if (id instanceof SpecimenTypeDesignation && value instanceof String) {\r
-                       SpecimenTypeDesignation typeDesignation = (SpecimenTypeDesignation) id;\r
-                       \r
-                       if (typeDesignation.getTypeSpecimen() != null) {\r
-                               typeDesignation.getTypeSpecimen().setTitleCache((String) value);\r
-                       } else {\r
-                               logger.warn("'typeDesignation.getTypeSpecimen()' returned null.");\r
-                       }\r
-               }\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.taxeditor.propertysheet.CollectionPropertySource#toString()\r
-        */\r
-       @Override\r
-       public String toString() {\r
-               return "";\r
-       }\r
-       \r
-       class TypeDesignationPropertySource implements IPropertySource {\r
-\r
-               private TypeDesignationBase typeDesignation;\r
-\r
-               TypeDesignationPropertySource(TypeDesignationBase typeDesignation) {\r
-                       this.typeDesignation = typeDesignation;\r
-               }\r
-               \r
-               public Object getEditableValue() {\r
-                       if (typeDesignation instanceof SpecimenTypeDesignation) {\r
-                               return ((SpecimenTypeDesignation) typeDesignation).getTypeSpecimen().getTitleCache();\r
-                       }\r
-                       \r
-                       if (typeDesignation instanceof NameTypeDesignation) {\r
-                               if (((NameTypeDesignation) typeDesignation).getTypeName() != null) {\r
-                                       return ((NameTypeDesignation) typeDesignation).getTypeName().getTitleCache();\r
-                               }\r
-                       }\r
-                       \r
-                       return null;\r
-               }\r
-\r
-               public IPropertyDescriptor[] getPropertyDescriptors() {\r
-                       return new IPropertyDescriptor[]{\r
-                                       new PropertyDescriptor(\r
-                                                       typeDesignation, "Citation")\r
-                       };\r
-               }\r
-\r
-               public Object getPropertyValue(Object id) {\r
-                       ReferenceBase reference = typeDesignation.getCitation();\r
-                       if (reference == null) {\r
-                               reference = Generic.NewInstance();\r
-                       }\r
-                       ReferencePropertySource referencePropertySource = new ReferencePropertySource(reference);\r
-                       referencePropertySource.addPropertyChangeListener(new PropertyChangeListener() {\r
-                               public void propertyChange(PropertyChangeEvent evt) {\r
-                                       if (evt.getNewValue() instanceof ReferenceBase) {       \r
-                                               typeDesignation.setCitation((ReferenceBase) evt.getNewValue());\r
-                                       }\r
-                               }\r
-                       });\r
-                       return referencePropertySource;\r
-               }\r
-\r
-               public boolean isPropertySet(Object id) {\r
-                       return false;\r
-               }\r
-\r
-               public void resetPropertyValue(Object id) {}\r
-\r
-               public void setPropertyValue(Object id, Object value) {\r
-               }\r
-               \r
-//             public String toString() {\r
-//                     if (typeDesignation instanceof SpecimenTypeDesignation) {\r
-//                             return ((SpecimenTypeDesignation) typeDesignation).getTypeSpecimen().getTitleCache();\r
-//                     }\r
-//                     \r
-//                     if (typeDesignation instanceof NameTypeDesignation) {\r
-//                             if (((NameTypeDesignation) typeDesignation).getTypeName() != null) {\r
-//                                     return ((NameTypeDesignation) typeDesignation).getTypeName().getTitleCache();\r
-//                             }\r
-//                     }\r
-//                     \r
-//                     return null;\r
-//             }\r
-               \r
-               public boolean equals(Object object) {\r
-                       if (object == null) {\r
-                               return false;\r
-                       }\r
-                       if (toString() == null) {\r
-                               return false;\r
-                       }\r
-                       if (toString().equals(object.toString())) {\r
-                               return true;\r
-                       } else {\r
-                               return false;\r
-                       }\r
-               }\r
-       }\r
-}
\ No newline at end of file
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypePropertyDescriptor.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypePropertyDescriptor.java
deleted file mode 100644 (file)
index ec2127c..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.type;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.CellEditor;\r
-import org.eclipse.jface.viewers.DialogCellEditor;\r
-import org.eclipse.jface.wizard.Wizard;\r
-import org.eclipse.jface.wizard.WizardDialog;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Control;\r
-import org.eclipse.ui.views.properties.PropertyDescriptor;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-import eu.etaxonomy.taxeditor.propertysheet.type.wizard.TypeListWizard;\r
-\r
-/**\r
- * Property sheet descriptor that pops up a dialog window\r
- *  returning a set.\r
- *  \r
- * @author p.ciardelli\r
- * @created 19.05.2008\r
- * @version 1.0\r
- */\r
-public class TypePropertyDescriptor extends PropertyDescriptor {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(TypePropertyDescriptor.class);\r
-       \r
-       private TaxonNameBase name;\r
-       \r
-       public TypePropertyDescriptor(Object id, String displayName, TaxonNameBase name) {\r
-               super(id, displayName);\r
-               this.name = name;\r
-       }\r
-\r
-    public CellEditor createPropertyEditor(Composite parent) {\r
-        CellEditor editor = new DialogCellEditor(parent) {\r
-\r
-                       @Override\r
-                       protected Object openDialogBox(\r
-                                       Control cellEditorWindow) {\r
-                               \r
-                               Wizard wizard = new TypeListWizard(name);\r
-\r
-                               // Instantiates the wizard container with the wizard and opens it\r
-                               WizardDialog dialog = new WizardDialog(GlobalController.getShell(), wizard);\r
-                               dialog.create();\r
-                               dialog.open();\r
-                               \r
-                               if (CdmUtil.isNameSupraSpecific(name)) {\r
-                                       return new TypeCollectionPropertySource(name, name.getNameTypeDesignations());\r
-                               } else {\r
-                                       return new TypeCollectionPropertySource(name, name.getSpecimenTypeDesignations());\r
-                               }\r
-                       }\r
-               \r
-        };\r
-        if (getValidator() != null) {\r
-                       editor.setValidator(getValidator());\r
-               }\r
-        return editor;\r
-    }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ChooseNameTypeWizardPage.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ChooseNameTypeWizardPage.java
deleted file mode 100644 (file)
index ad69e97..0000000
+++ /dev/null
@@ -1,321 +0,0 @@
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.type.wizard;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.wizard.WizardPage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.KeyAdapter;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Dialog;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameTypeDesignation;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.TypeDesignationBase;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.TaxEditorPlugin;\r
-import eu.etaxonomy.taxeditor.controller.PreferencesController;\r
-import eu.etaxonomy.taxeditor.editor.reference.ReferenceSelectComposite;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 09.03.2009\r
- * @version 1.0\r
- */\r
-public class ChooseNameTypeWizardPage extends WizardPage {\r
-       private static Logger logger = Logger\r
-                       .getLogger(ChooseNameTypeWizardPage.class);\r
-\r
-       private TaxonNameBase name;     \r
-       private NameTypeDesignation typeDesignation;\r
-       private TaxonNameBase savedName;\r
-       \r
-       private Text txtName;\r
-       private Button btnClearName;\r
-       private Button btnRejected;\r
-       private Button btnConserved;\r
-       private Button btnLecto;\r
-       private Button btnNotDesignated;\r
-\r
-       private WritableList typeDesignationsList;\r
-\r
-       private ReferenceSelectComposite referenceComposite;\r
-\r
-       /**\r
-        * @param typeDesignation\r
-        * @param name\r
-        * @param typeDesignationsList \r
-        */\r
-       public ChooseNameTypeWizardPage(TypeDesignationBase typeDesignation,\r
-                       TaxonNameBase name, WritableList typeDesignationsList) {\r
-               super("");\r
-               \r
-               Assert.isTrue(typeDesignation == null || typeDesignation instanceof NameTypeDesignation);\r
-               \r
-               this.typeDesignation = (NameTypeDesignation) typeDesignation;\r
-               this.name = name;\r
-               this.typeDesignationsList = typeDesignationsList;\r
-               \r
-               setTitle("Create or edit type designation");\r
-               setDescription("Create or edit type designation for '" + name.getTitleCache() + "\".");\r
-       }\r
-       \r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)\r
-        */\r
-       public void createControl(Composite parent) {\r
-               \r
-               // Create composite for popup dialog    \r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               container.setLayout(new GridLayout());\r
-               setControl(container);\r
-               \r
-               // Create name text\r
-               final Label lblName = new Label(container, SWT.NONE);\r
-               lblName.setText("Choose a name either by searching or entering it as free text:");\r
-               \r
-               // Create 3-columned composite for name\r
-               Composite nameComposite = new Composite(container, SWT.NULL);\r
-               nameComposite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 3;\r
-               gridLayout.marginHeight = 0;\r
-               gridLayout.marginWidth = 0;\r
-               nameComposite.setLayout(gridLayout);\r
-               \r
-               // Create name input\r
-               txtName = new Text(nameComposite, SWT.BORDER);\r
-               txtName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               txtName.addKeyListener(new KeyAdapter() {\r
-                       @Override\r
-                       public void keyReleased(KeyEvent e) {\r
-                               updatePage();\r
-                       }                       \r
-               });\r
-               \r
-               // Create name search button\r
-               Button btnSearchName = new Button(nameComposite, SWT.NONE);\r
-               btnSearchName.setEnabled(true);\r
-               btnSearchName.setLayoutData(new GridData());\r
-               btnSearchName.setText("Search ...");\r
-               btnSearchName.addSelectionListener(new SelectionAdapter() {\r
-                       \r
-                       // Popup reference search\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               popupNameSearch();\r
-                       }\r
-               });\r
-\r
-               // Create clear name button\r
-               btnClearName = new Button(nameComposite, SWT.NONE);\r
-               btnClearName.setEnabled(false);\r
-               btnClearName.setText("Clear");\r
-               btnClearName.addSelectionListener(new SelectionAdapter() {\r
-                       \r
-                       // Clear selected reference\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               clearName();\r
-                       }\r
-               });\r
-\r
-               // Set text to name text if exists, disable ability to edit name\r
-               if (typeDesignation != null && typeDesignation.getTypeName() != null) {\r
-                       \r
-                       savedName = typeDesignation.getTypeName();\r
-                       txtName.setText(savedName.getTitleCache());\r
-                       txtName.setEditable(false);\r
-                                               \r
-                       btnClearName.setEnabled(false);\r
-                       btnSearchName.setEnabled(false);\r
-               }\r
-               \r
-               // Tell user when he is entering a new name\r
-               Label lblNewNameFeedback = new Label(container, SWT.NONE);\r
-               lblNewNameFeedback.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, true, false));\r
-               lblNewNameFeedback.setFont(\r
-                               TaxEditorPlugin.getDefault().italicizeFont(lblNewNameFeedback.getFont()));\r
-               lblNewNameFeedback.setText("Existing names can not be edited.");\r
-               \r
-               // Create 2-columned composite for name\r
-               Composite booleansComposite = new Composite(container, SWT.NULL);\r
-               booleansComposite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               GridLayout gridLayout2 = new GridLayout();\r
-               gridLayout2.numColumns = 2;\r
-               gridLayout2.marginHeight = 15;\r
-               gridLayout2.marginWidth = 0;\r
-               booleansComposite.setLayout(gridLayout2);\r
-               \r
-               btnRejected = new Button(booleansComposite, SWT.CHECK);\r
-               btnRejected.setText("Is rejected type");\r
-               btnRejected.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               \r
-               btnConserved = new Button(booleansComposite, SWT.CHECK);\r
-               btnConserved.setText("Is conserved type");\r
-               btnConserved.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               \r
-               btnLecto = new Button(booleansComposite, SWT.CHECK);\r
-               btnLecto.setText("Is lecto type");\r
-               btnLecto.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               \r
-               btnNotDesignated = new Button(booleansComposite, SWT.CHECK);\r
-               btnNotDesignated.setText("Is not designated");\r
-               btnNotDesignated.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               \r
-               // Set any boolean values\r
-               if (typeDesignation != null) {\r
-                       if (typeDesignation.isRejectedType()) {\r
-                               btnRejected.setSelection(true);\r
-                       }\r
-                       if (typeDesignation.isConservedType()) {\r
-                               btnConserved.setSelection(true);\r
-                       }\r
-                       if (typeDesignation.isLectoType()) {\r
-                               btnLecto.setSelection(true);\r
-                       }\r
-                       if (typeDesignation.isNotDesignated()) {\r
-                               btnNotDesignated.setSelection(true);\r
-                       }\r
-               }\r
-                               \r
-               // Create reference input composite\r
-               referenceComposite = new ReferenceSelectComposite(container);\r
-               \r
-               // Set text to reference text if exists\r
-               if (typeDesignation != null && typeDesignation.getCitation() != null) {\r
-                       referenceComposite.setMicroReference(typeDesignation.getCitationMicroReference());\r
-                       if (typeDesignation.getCitation() != null) {\r
-                               referenceComposite.setReference(typeDesignation.getCitation());\r
-                       }\r
-               }\r
-       }\r
-\r
-       /**\r
-        * \r
-        */\r
-       protected void popupNameSearch() {\r
-               Dialog dialog = new NameSearchDialog(getShell());\r
-        Object value = ((NameSearchDialog) dialog).open();\r
-        \r
-               if (value instanceof TaxonNameBase) {\r
-                       setSavedName((TaxonNameBase) value);\r
-                       updatePage();\r
-               }\r
-       }\r
-       \r
-       /**\r
-        * @param value\r
-        */\r
-       private void setSavedName(TaxonNameBase savedName) {\r
-               \r
-               this.savedName = savedName;\r
-               \r
-               txtName.setText(savedName.getTitleCache());\r
-               txtName.setEditable(false);\r
-               \r
-               btnClearName.setEnabled(true);\r
-       }\r
-       \r
-       /**\r
-        * \r
-        */\r
-       protected void clearName() {\r
-               savedName = null;\r
-               \r
-               txtName.setText("");\r
-               txtName.setEditable(true);\r
-               \r
-               btnClearName.setEnabled(false);         \r
-       }\r
-               \r
-       @Override\r
-       public boolean canFlipToNextPage() {\r
-               return isPageComplete();\r
-       }\r
-\r
-       public boolean isPageComplete() {\r
-               return (txtName.getText().length() > 0);\r
-       }\r
-       \r
-       private void updatePage() {\r
-               \r
-               getWizard().getContainer().updateButtons();\r
-       }\r
-       \r
-    public void setPageComplete(boolean complete) {\r
-        super.setPageComplete(complete);\r
-        \r
-        if (complete) {\r
-               \r
-               TaxonNameBase typeName = null;\r
-               if (savedName != null) {\r
-                       typeName = savedName;\r
-               } else {\r
-                       if (!txtName.getText().equals("")) {\r
-                               typeName = PreferencesController.getInstanceOfPreferredNameClass();\r
-                               typeName.setTitleCache(txtName.getText());\r
-                       }\r
-               }\r
-               \r
-               ReferenceBase citation = referenceComposite.getReference();\r
-               String citationMicroReference = referenceComposite.getMicroReference();\r
-                               \r
-               if (typeDesignation == null) {\r
-                       typeDesignation = new TemporaryNameTypeDesignation(typeName, citation, citationMicroReference,\r
-                                       null, btnRejected.getSelection(), btnConserved.getSelection(), btnLecto.getSelection(), btnNotDesignated.getSelection());\r
-                       typeDesignation.setLectoType(btnLecto.getSelection()); \r
-               } else {\r
-                       typeDesignation.setRejectedType(btnRejected.getSelection());\r
-                       typeDesignation.setConservedType(btnConserved.getSelection());\r
-                       typeDesignation.setLectoType(btnLecto.getSelection());\r
-                       typeDesignation.setNotDesignated(btnNotDesignated.getSelection());\r
-                       typeDesignation.setCitation(citation);\r
-                       typeDesignation.setCitationMicroReference(citationMicroReference);\r
-               }\r
-               \r
-               typeDesignationsList.remove(typeDesignation);\r
-               typeDesignationsList.add(typeDesignation);\r
-        }\r
-    }\r
-    \r
-       public class TemporaryNameTypeDesignation extends\r
-                       NameTypeDesignation {\r
-               \r
-               /**\r
-                * @param typeName\r
-                * @param citation\r
-                * @param object\r
-                * @param object2\r
-                * @param selection\r
-                * @param selection2\r
-                * @param selection3\r
-                */\r
-//             public TemporaryNameTypeDesignation() {\r
-//                     super(null, null, null, null, false, false, false);\r
-//                     setLectoType(false);\r
-//             }\r
-               \r
-               public TemporaryNameTypeDesignation(TaxonNameBase typeName, ReferenceBase citation, String citationMicroReference,\r
-                               String originalNameString, boolean isRejectedType, boolean isConservedType, boolean isLectoType, boolean isNotDesignated) {\r
-                       super(typeName, citation, citationMicroReference, originalNameString, \r
-                                       isRejectedType, isConservedType,  isLectoType, isNotDesignated);\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ChooseSpecimenTypeWizardPage.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ChooseSpecimenTypeWizardPage.java
deleted file mode 100644 (file)
index dc41ac1..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.type.wizard;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.core.runtime.Assert;\r
-import org.eclipse.jface.wizard.WizardPage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.custom.CCombo;\r
-import org.eclipse.swt.events.KeyAdapter;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import eu.etaxonomy.cdm.model.common.CdmBase;\r
-import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
-import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.TypeDesignationBase;\r
-import eu.etaxonomy.cdm.model.name.TypeDesignationStatus;\r
-import eu.etaxonomy.cdm.model.occurrence.DerivedUnitBase;\r
-import eu.etaxonomy.cdm.model.occurrence.Specimen;\r
-import eu.etaxonomy.cdm.model.reference.Generic;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.editor.reference.ReferenceSelectComposite;\r
-import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.02.2009\r
- * @version 1.0\r
- */\r
-public class ChooseSpecimenTypeWizardPage extends WizardPage {\r
-       private static Logger logger = Logger\r
-                       .getLogger(ChooseSpecimenTypeWizardPage.class);\r
-\r
-       private TaxonNameBase name;     \r
-       private SpecimenTypeDesignation typeDesignation;\r
-       private WritableList typeDesignationsList;\r
-\r
-       private CCombo statusCombo;\r
-       private Text txtDesignationType;\r
-       private TypeDesignationStatus[] typeStatusArray;\r
-\r
-       private ReferenceSelectComposite referenceComposite;\r
-\r
-       /**\r
-        * @param typeDesignation\r
-        * @param typeDesignationsList \r
-        */\r
-       public ChooseSpecimenTypeWizardPage(\r
-                       TypeDesignationBase typeDesignation, TaxonNameBase name, WritableList typeDesignationsList) {\r
-               super("");\r
-                               \r
-               Assert.isTrue(typeDesignation == null || typeDesignation instanceof SpecimenTypeDesignation,"");\r
-               \r
-               this.typeDesignation = (SpecimenTypeDesignation) typeDesignation;\r
-               this.name = name;\r
-               this.typeDesignationsList = typeDesignationsList;\r
-               \r
-               setTitle("Create or edit type designation");\r
-               setDescription("Create or edit type designation for '" + name.getTitleCache() + "\".");\r
-       }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)\r
-        */\r
-       public void createControl(Composite parent) {\r
-               \r
-               // Create composite for popup dialog    \r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               container.setLayout(new GridLayout());\r
-               setControl(container);\r
-\r
-               // Create text\r
-               final Label lblChooseStatus = new Label(container, SWT.NONE);\r
-               lblChooseStatus.setText("Choose designation type status:");\r
-\r
-               // Create designation type status dropdown \r
-               statusCombo = new CCombo(container, SWT.BORDER);\r
-               statusCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               TermVocabulary<TypeDesignationStatus> typeStatusSet = CdmSessionDataRepository.getDefault().getTypeDesignationStatus();\r
-               typeStatusArray = new TypeDesignationStatus[CdmSessionDataRepository.getDefault().getTypeDesignationStatus().size()];\r
-               int i = 0;\r
-               int selectedIndex = -1;\r
-               for (TypeDesignationStatus typeStatus : \r
-                               CdmSessionDataRepository.getDefault().getTypeDesignationStatus()) {\r
-                       String label = typeStatus.getLabel();\r
-                       typeStatusArray[i] = typeStatus;\r
-                       \r
-                       if (typeDesignation != null && typeDesignation.getTypeStatus() != null) {\r
-                               if (typeStatus.equals(typeDesignation.getTypeStatus())) {\r
-                                       selectedIndex = i;\r
-                               }\r
-                       }\r
-                       \r
-                       i++;\r
-                       statusCombo.add(label);\r
-               }\r
-               \r
-               // Set menu to type designation status if exists\r
-               statusCombo.select(selectedIndex);\r
-\r
-               statusCombo.addSelectionListener(new SelectionAdapter() {\r
-                       @Override\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               updatePage();\r
-                       }\r
-               });\r
-\r
-               // Create text\r
-               final Label lblEnterText = new Label(container, SWT.NONE);\r
-               lblEnterText.setText("Enter designation type text:");\r
-               \r
-               txtDesignationType = new Text(container, SWT.BORDER);\r
-               txtDesignationType.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               txtDesignationType.addKeyListener(new KeyAdapter() {\r
-                       @Override\r
-                       public void keyReleased(KeyEvent e) {\r
-                               updatePage();\r
-                       }                       \r
-               });\r
-               \r
-               // Set text to specimen text if exists\r
-               if (typeDesignation != null && typeDesignation.getTypeSpecimen() != null) {\r
-                       txtDesignationType.setText(typeDesignation.getTypeSpecimen().getTitleCache());\r
-               }\r
-       \r
-               // Create reference input composite\r
-               referenceComposite = new ReferenceSelectComposite(container);\r
-               \r
-               // Set text to reference text if exists\r
-               if (typeDesignation != null) {\r
-               \r
-                       referenceComposite.setMicroReference(typeDesignation.getCitationMicroReference());\r
-                       \r
-                       if (typeDesignation.getCitation() != null) {\r
-                               referenceComposite.setReference(typeDesignation.getCitation());                         \r
-                       }\r
-               }               \r
-       }\r
-\r
-\r
-       \r
-       @Override\r
-       public boolean canFlipToNextPage() {\r
-               return isPageComplete();\r
-       }\r
-\r
-       public boolean isPageComplete() {\r
-               return (statusCombo.getSelectionIndex() > -1 \r
-                               && txtDesignationType.getText().length() > 0);\r
-       }\r
-       \r
-       private void updatePage() {\r
-               \r
-               getWizard().getContainer().updateButtons();\r
-       }\r
-       \r
-    public void setPageComplete(boolean complete) {\r
-        super.setPageComplete(complete);\r
-        \r
-        if (complete) {\r
-               \r
-               ReferenceBase citation = referenceComposite.getReference();\r
-               String citationMicroReference = referenceComposite.getMicroReference();\r
-               \r
-               TypeDesignationStatus status = typeStatusArray[statusCombo.getSelectionIndex()];\r
-               \r
-               Specimen specimen;\r
-               if (typeDesignation == null || typeDesignation.getTypeSpecimen() == null) {\r
-                       specimen = Specimen.NewInstance();\r
-               } else {\r
-                       specimen = CdmBase.deproxy(typeDesignation.getTypeSpecimen(), Specimen.class);\r
-               }\r
-               specimen.setTitleCache(txtDesignationType.getText());\r
-               \r
-               if (typeDesignation == null) {\r
-                       typeDesignation = new TemporarySpecimenTypeDesignation(specimen, status, \r
-                                       citation, citationMicroReference, null, true);\r
-               } else {\r
-                       typeDesignation.setTypeSpecimen(specimen);\r
-                       typeDesignation.setTypeStatus(status);\r
-                       typeDesignation.setCitation(citation);\r
-                       typeDesignation.setCitationMicroReference(citationMicroReference);\r
-               }\r
-               \r
-               typeDesignationsList.remove(typeDesignation);\r
-               typeDesignationsList.add(typeDesignation);\r
-        }\r
-    }\r
-    \r
-       public class TemporarySpecimenTypeDesignation extends\r
-                       SpecimenTypeDesignation {\r
-               \r
-               TemporarySpecimenTypeDesignation(DerivedUnitBase specimen, TypeDesignationStatus status, ReferenceBase citation, String citationMicroReference, \r
-                               String originalNameString, boolean isNotDesignated) {\r
-                       super(specimen, status, citation, citationMicroReference, \r
-                                       originalNameString, isNotDesignated);\r
-               }\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ListTypeWizardPage.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ListTypeWizardPage.java
deleted file mode 100644 (file)
index af19c0d..0000000
+++ /dev/null
@@ -1,228 +0,0 @@
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.type.wizard;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.beans.BeansObservables;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.core.databinding.observable.map.IObservableMap;\r
-import org.eclipse.jface.databinding.viewers.ObservableListContentProvider;\r
-import org.eclipse.jface.databinding.viewers.ObservableMapLabelProvider;\r
-import org.eclipse.jface.viewers.DoubleClickEvent;\r
-import org.eclipse.jface.viewers.IDoubleClickListener;\r
-import org.eclipse.jface.viewers.StructuredSelection;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.jface.wizard.Wizard;\r
-import org.eclipse.jface.wizard.WizardDialog;\r
-import org.eclipse.jface.wizard.WizardPage;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.graphics.Image;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Table;\r
-\r
-import eu.etaxonomy.cdm.model.name.NameTypeDesignation;\r
-import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.TypeDesignationBase;\r
-import eu.etaxonomy.taxeditor.controller.GlobalController;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 11.02.2009\r
- * @version 1.0\r
- */\r
-public class ListTypeWizardPage extends WizardPage {\r
-       private static Logger logger = Logger.getLogger(ListTypeWizardPage.class);\r
-       private TaxonNameBase name;\r
-\r
-       /**\r
-        * @param name\r
-        */\r
-       public ListTypeWizardPage(TaxonNameBase name, WritableList typeDesignationsList) {\r
-               super("");\r
-               this.name = name;\r
-               \r
-               this.typeDesignationsList = typeDesignationsList;\r
-\r
-               setTitle("Type designations for \""\r
-                               + CdmUtil.getDisplayName(name) + "\".");\r
-               setDescription("Select a type designation and click \"Edit ...\" or \"Remove\", or click \"Add ...\" to create a new designation.");\r
-       }\r
-       \r
-       private Table typeDesignationsTable;\r
-       private WritableList typeDesignationsList = new WritableList();\r
-\r
-       private Button btnRemove;\r
-       private Button btnEdit;\r
-\r
-       private TypeDesignationBase typeDesignation;\r
-       private TableViewer tableViewer;\r
-\r
-\r
-       public void createControl(Composite parent) {\r
-               Composite container = new Composite(parent, SWT.NULL);\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 3;\r
-               container.setLayout(gridLayout);\r
-\r
-               setControl(container);\r
-\r
-               btnEdit = new Button(container, SWT.NONE);\r
-               btnEdit.setText("Edit ...");\r
-               btnEdit.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               if (getSelectedTypeDesignation() != null) {     \r
-                                       createTypeDesignationWizard(getSelectedTypeDesignation());\r
-                               }\r
-                       }\r
-               });\r
-\r
-               btnRemove = new Button(container, SWT.NONE);\r
-               btnRemove.setText("Remove");\r
-               btnRemove.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               if (getSelectedTypeDesignation() != null) {\r
-                                       typeDesignationsList.remove(getSelectedTypeDesignation());\r
-                                       setSelectedTypeDesignation(null);\r
-                               }\r
-                       }\r
-               });\r
-\r
-               setEnableTypeDesignationButtons(false);\r
-\r
-               final Button btnAdd = new Button(container, SWT.NONE);\r
-               final GridData gd_btnAdd = new GridData(SWT.RIGHT, SWT.CENTER, true,\r
-                               false);\r
-               btnAdd.setLayoutData(gd_btnAdd);\r
-               btnAdd.setText("Add ...");\r
-               btnAdd.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               createTypeDesignationWizard(null);\r
-                       }\r
-               });\r
-\r
-               tableViewer = new TableViewer(container, SWT.BORDER | SWT.SINGLE);\r
-\r
-               typeDesignationsTable = tableViewer.getTable();\r
-               typeDesignationsTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true,\r
-                               true, 3, 1));\r
-               typeDesignationsTable.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) { \r
-                               setEnableTypeDesignationButtons(true);\r
-                               if (e.item.getData() instanceof TypeDesignationBase) {\r
-                                       setSelectedTypeDesignation((TypeDesignationBase) e.item.getData());\r
-                               }\r
-                       }\r
-               });\r
-\r
-               ObservableListContentProvider providerList = new ObservableListContentProvider();\r
-               tableViewer.setContentProvider(providerList);\r
-\r
-               IObservableMap[] providerMaps;\r
-               if (CdmUtil.isNameSupraSpecific(name)) {\r
-                       providerMaps = BeansObservables.observeMaps(\r
-                                       providerList.getKnownElements(), NameTypeDesignation.class,\r
-                                       new String[] { "typeName" });\r
-               } else {\r
-                       providerMaps = BeansObservables.observeMaps(\r
-                                       providerList.getKnownElements(), SpecimenTypeDesignation.class,\r
-                                       new String[] { "typeSpecimen", "typeStatus" });\r
-               }\r
-               tableViewer.setLabelProvider(new ObservableMapLabelProvider(\r
-                               providerMaps) {\r
-                       public String getColumnText(Object element, int columnIndex) {\r
-                               if (element instanceof TypeDesignationBase) {\r
-                                       TypeDesignationBase typeDesignation = (TypeDesignationBase) element;\r
-                                       return getTypeDesignationString(typeDesignation);\r
-                               }\r
-                               return "";\r
-                       }\r
-\r
-                       public Image getColumnImage(Object element, int columnIndex) {\r
-                               if (element instanceof TypeDesignationBase) {\r
-                                       TypeDesignationBase typeDesignation = (TypeDesignationBase) element;\r
-                                       return getTypeDesignationImage(typeDesignation);\r
-                               }\r
-                               return null;\r
-                       }\r
-               });\r
-               \r
-               tableViewer.setInput(typeDesignationsList);\r
-               tableViewer.addDoubleClickListener(new IDoubleClickListener() {\r
-                       public void doubleClick(DoubleClickEvent event) {\r
-                               if (((StructuredSelection) event.getSelection())\r
-                                               .getFirstElement() instanceof TypeDesignationBase) {\r
-                                       TypeDesignationBase typeDesignation = (TypeDesignationBase) \r
-                                                       ((StructuredSelection) event.getSelection()).getFirstElement();\r
-                                       createTypeDesignationWizard(typeDesignation);\r
-                               }\r
-                       }\r
-               });\r
-       }\r
-\r
-       private void setSelectedTypeDesignation(TypeDesignationBase typeDesignation) {\r
-               this.typeDesignation = typeDesignation;\r
-       }\r
-\r
-       private TypeDesignationBase getSelectedTypeDesignation() {\r
-               return typeDesignation;\r
-       }\r
-       \r
-       private void createTypeDesignationWizard(TypeDesignationBase typeDesignation) {\r
-               Wizard wizard = new TypeDesignationWizard(typeDesignation, name, typeDesignationsList);\r
-               \r
-               WizardDialog dialog = new WizardDialog(GlobalController.getShell(), wizard);\r
-               dialog.create();\r
-               dialog.open();\r
-//             if (dialog.open() == Window.OK) ...\r
-       }\r
-\r
-       protected void setEnableTypeDesignationButtons(boolean enabled) {\r
-               btnRemove.setEnabled(enabled);\r
-               btnEdit.setEnabled(enabled);\r
-       }\r
-\r
-       private Image getTypeDesignationImage(TypeDesignationBase typeDesignation) {\r
-               return null;\r
-       }\r
-\r
-       private String getTypeDesignationString(TypeDesignationBase typeDesignation) {\r
-               String str = "";\r
-               \r
-               if (typeDesignation instanceof SpecimenTypeDesignation) {\r
-                       if (((SpecimenTypeDesignation) typeDesignation).getTypeSpecimen() != null) {\r
-                               str = ((SpecimenTypeDesignation) typeDesignation).getTypeSpecimen().getTitleCache();\r
-                       } else {\r
-                               str = "UNDEFINED";\r
-                       }\r
-                       if (((SpecimenTypeDesignation) typeDesignation).getTypeStatus() != null) {\r
-                               str += " [" + ((SpecimenTypeDesignation) typeDesignation).getTypeStatus().getLabel() + "]";\r
-                       }\r
-               }\r
-               \r
-               if (typeDesignation instanceof NameTypeDesignation) {\r
-                       if (((NameTypeDesignation) typeDesignation).getTypeName() != null) {\r
-                               str = ((NameTypeDesignation) typeDesignation).getTypeName().getTitleCache();\r
-                       }\r
-                       \r
-                       if (((NameTypeDesignation) typeDesignation).isLectoType()) {\r
-                               str += " (Lectotype)";\r
-                       }\r
-               }\r
-               \r
-               return str;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/NameSearchDialog.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/NameSearchDialog.java
deleted file mode 100644 (file)
index a602ad5..0000000
+++ /dev/null
@@ -1,251 +0,0 @@
-/**\r
-* Copyright (C) 2007 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.type.wizard;\r
-\r
-import java.util.List;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.jface.viewers.ArrayContentProvider;\r
-import org.eclipse.jface.viewers.LabelProvider;\r
-import org.eclipse.jface.viewers.TableViewer;\r
-import org.eclipse.jface.viewers.ViewerComparator;\r
-import org.eclipse.swt.SWT;\r
-import org.eclipse.swt.events.KeyAdapter;\r
-import org.eclipse.swt.events.KeyEvent;\r
-import org.eclipse.swt.events.MouseAdapter;\r
-import org.eclipse.swt.events.MouseEvent;\r
-import org.eclipse.swt.events.SelectionAdapter;\r
-import org.eclipse.swt.events.SelectionEvent;\r
-import org.eclipse.swt.layout.GridData;\r
-import org.eclipse.swt.layout.GridLayout;\r
-import org.eclipse.swt.widgets.Button;\r
-import org.eclipse.swt.widgets.Composite;\r
-import org.eclipse.swt.widgets.Dialog;\r
-import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
-import org.eclipse.swt.widgets.Label;\r
-import org.eclipse.swt.widgets.Listener;\r
-import org.eclipse.swt.widgets.Shell;\r
-import org.eclipse.swt.widgets.Table;\r
-import org.eclipse.swt.widgets.Text;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.11.2008\r
- * @version 1.0\r
- */\r
-public class NameSearchDialog extends Dialog {\r
-       private static final Logger logger = Logger\r
-                       .getLogger(NameSearchDialog.class);\r
-       \r
-       private Table resultsTable;\r
-       private Text searchTermText;\r
-               \r
-       protected Object result;\r
-       private Shell shell;\r
-       private Button okButton;\r
-       private TableViewer resultsTableViewer;\r
-       private TaxonNameBase selectedName;\r
-       \r
-       public NameSearchDialog(Shell parent) {\r
-               super(parent, SWT.NONE);\r
-       }\r
-       \r
-       /**\r
-        * Open the dialog\r
-        * @return the result\r
-        */\r
-       public Object open() {\r
-               createContents();\r
-               shell.open();\r
-               shell.layout();\r
-               Display display = getParent().getDisplay();\r
-               while (!shell.isDisposed()) {\r
-                       if (!display.readAndDispatch())\r
-                               display.sleep();\r
-               }\r
-               return result;\r
-       }\r
-       \r
-       /**\r
-        * Create contents of the dialog\r
-        */\r
-       protected void createContents() {\r
-               \r
-               // Create shell for popup dialog                \r
-               shell = new Shell(getParent(), SWT.DIALOG_TRIM | SWT.APPLICATION_MODAL);\r
-               shell.setLayout(new GridLayout());\r
-               shell.setSize(500, 375);\r
-               shell.setText("Search for a name in datasource");\r
-               \r
-               // Create composite for entire shell            \r
-               final Composite composite = new Composite(shell, SWT.NONE);\r
-               composite.setLayout(new GridLayout());\r
-               composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               // Create composite for search text, search term input, and "Search" button\r
-               final Composite searchComposite = new Composite(composite, SWT.NONE);\r
-               searchComposite.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
-               final GridLayout gridLayout = new GridLayout();\r
-               gridLayout.numColumns = 2;\r
-               searchComposite.setLayout(gridLayout);\r
-\r
-               // Create search text\r
-               final Label label = new Label(searchComposite, SWT.NONE);\r
-               label.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));\r
-               label.setText("Enter a search term for a full name, using '*' as a wildcard.");\r
-\r
-               // Create input field for search term\r
-               searchTermText = new Text(searchComposite, SWT.BORDER | SWT.SINGLE);\r
-               final GridData gd_searchTermText = new GridData(SWT.FILL, SWT.CENTER, true, false);\r
-               searchTermText.setLayoutData(gd_searchTermText);\r
-               \r
-               // Listen for user hitting <CR> in input field\r
-               searchTermText.addKeyListener(new KeyAdapter() {\r
-                       public void keyReleased(KeyEvent e) {\r
-                               int key = e.keyCode;\r
-                               if (key == SWT.CR) {\r
-                                       populateSearchResults();\r
-                               }\r
-                       }\r
-               });\r
-\r
-               // Create "Search" button\r
-               final Button searchButton = new Button(searchComposite, SWT.NONE);\r
-               searchButton.setLayoutData(new GridData());\r
-               searchButton.setText("Search");\r
-               searchButton.addMouseListener(new MouseAdapter() {\r
-                       \r
-                       // Populate search results resultsTable after clicking button\r
-                       public void mouseUp(MouseEvent e) {\r
-                               populateSearchResults();\r
-                       }\r
-               });\r
-\r
-               // Create composite for results table\r
-               final Composite resultsComposite = new Composite(composite, SWT.NONE);\r
-               resultsComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-               resultsComposite.setLayout(new GridLayout());\r
-\r
-               // Create results resultsTable\r
-               resultsTableViewer = new TableViewer(resultsComposite, SWT.BORDER);\r
-               resultsTable = resultsTableViewer.getTable();\r
-               resultsTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
-\r
-               // Set content provider of results resultsTable\r
-               resultsTableViewer.setContentProvider(new ArrayContentProvider());\r
-\r
-               // Set label provider for results resultsTable which shows ReferenceBase.getTitleCache()\r
-               resultsTableViewer.setLabelProvider(new LabelProvider() {\r
-                       public String getText(Object element) {\r
-                               if (element instanceof ReferenceBase) {\r
-                                       return ((ReferenceBase) element).getTitleCache();\r
-                               }\r
-                               return super.getText(element);\r
-                       }\r
-               });\r
-       \r
-               // Sort results alphabetically\r
-               resultsTableViewer.setComparator(new ViewerComparator());\r
-               \r
-               // Listen for user selecting reference from results list\r
-               resultsTable.addSelectionListener(new SelectionAdapter() {\r
-                       public void widgetSelected(SelectionEvent e) {\r
-                               \r
-                               Object data = e.item.getData();\r
-                               \r
-                               // Make sure selection is a ReferenceBase\r
-                               if (data instanceof TaxonNameBase) {\r
-\r
-                                       setSelectedName((TaxonNameBase) data);\r
-                                       \r
-                                       // Enable "OK" button\r
-                                       okButton.setEnabled(true);\r
-                               }\r
-                       }\r
-               });\r
-               \r
-               // Double-clicking results entry submits selected reference\r
-               resultsTable.addListener(SWT.MouseDoubleClick, new Listener() {\r
-                       public void handleEvent(Event event) {\r
-                               submitResult();\r
-                       }\r
-               });\r
-               \r
-               // Create composite for "OK" and "Cancel" buttons\r
-               final Composite okCancelComposite = new Composite(composite, SWT.NONE);\r
-               okCancelComposite.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, true, false));\r
-               final GridLayout gridLayout_1 = new GridLayout();\r
-               gridLayout_1.numColumns = 2;\r
-               okCancelComposite.setLayout(gridLayout_1);\r
-\r
-               // Create "Cancel" button\r
-               final Button cancelButton = new Button(okCancelComposite, SWT.NONE);\r
-               cancelButton.setText("Cancel");\r
-               \r
-               // Close dialog popup after clicking "Cancel" button\r
-               cancelButton.addMouseListener(new MouseAdapter() {\r
-                       public void mouseUp(MouseEvent e) {\r
-                               shell.dispose();\r
-                       }\r
-               });\r
-\r
-               // Create "OK" button\r
-               okButton = new Button(okCancelComposite, SWT.NONE);\r
-               okButton.setEnabled(false);\r
-               final GridData gd_okButton = new GridData();\r
-               okButton.setLayoutData(gd_okButton);\r
-               okButton.setText("OK");\r
-               \r
-               // Submit result when "OK" button is clicked\r
-               okButton.addMouseListener(new MouseAdapter() {\r
-                       public void mouseUp(MouseEvent e) {\r
-                               submitResult();\r
-                       }\r
-               });\r
-\r
-       }\r
-       \r
-       private void populateSearchResults() {\r
-               // Get search results\r
-               List resultsArray = CdmUtil.searchNameString(searchTermText.getText());\r
-               \r
-               // Tell user if there are no results\r
-               if (resultsArray.size() == 0) {\r
-                       resultsArray.add("Query returned no results.");\r
-               }\r
-               \r
-               // Send results to results resultsTable\r
-               resultsTableViewer.setInput(resultsArray.toArray());\r
-               \r
-               // Disable OK button\r
-               okButton.setEnabled(false);             \r
-       }\r
-       \r
-       /**\r
-        * Populate result and close dialog popup\r
-        */\r
-       private void submitResult() {\r
-               result = getSelectedName();\r
-               shell.dispose();\r
-       }\r
-       \r
-       private void setSelectedName(TaxonNameBase selectedName) {\r
-               this.selectedName = selectedName;\r
-       }\r
-       \r
-       private TaxonNameBase getSelectedName() {\r
-               return selectedName;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeDesignationWizard.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeDesignationWizard.java
deleted file mode 100644 (file)
index 9aefaea..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.type.wizard;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.jface.wizard.Wizard;\r
-import org.eclipse.jface.wizard.WizardPage;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.TypeDesignationBase;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 13.02.2009\r
- * @version 1.0\r
- */\r
-public class TypeDesignationWizard extends Wizard {\r
-       \r
-       private static Logger logger = Logger\r
-                       .getLogger(TypeDesignationWizard.class);\r
-       \r
-       private TypeDesignationBase typeDesignation;\r
-       private TaxonNameBase name;\r
-       private WritableList typeDesignationsList;\r
-       \r
-       private WizardPage chooseTypePage;\r
-\r
-       /**\r
-        * @param typeDesignation\r
-        * @param typeDesignationsList \r
-        */\r
-       public TypeDesignationWizard(TypeDesignationBase typeDesignation, TaxonNameBase name, WritableList typeDesignationsList) {\r
-\r
-               this.name = name;\r
-//             if (typeDesignation == null) {\r
-//                     createEmptyTypeDesignation();\r
-//             } else {\r
-                       this.typeDesignation = typeDesignation;\r
-//             }\r
-               this.typeDesignationsList = typeDesignationsList;\r
-       }\r
-\r
-       /**\r
-        * \r
-        */\r
-//     private void createEmptyTypeDesignation() {\r
-//             if (CdmUtil.isNameSupraSpecific(name)) {\r
-//                     typeDesignation = new TemporaryNameTypeDesignation();\r
-//             } else {\r
-//                     typeDesignation = new TemporarySpecimenTypeDesignation();\r
-//             }\r
-//     }\r
-\r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.wizard.Wizard#addPages()\r
-        */\r
-       public void addPages() {\r
-               \r
-//             if (typeDesignation instanceof SpecimenTypeDesignation) {\r
-//                     chooseTypePage = new ChooseSpecimenTypeWizardPage((SpecimenTypeDesignation) typeDesignation, name);\r
-//             }\r
-//             \r
-//             if (typeDesignation instanceof NameTypeDesignation) {\r
-//                     chooseTypePage = new ChooseNameTypeWizardPage((NameTypeDesignation) typeDesignation, name);\r
-//             }\r
-               \r
-//             if (name.getRank().isHigher(Rank.SPECIES())) {\r
-               if (CdmUtil.isNameSupraSpecific(name)) {\r
-                       chooseTypePage = new ChooseNameTypeWizardPage(typeDesignation, name, typeDesignationsList);\r
-               } else {\r
-                       chooseTypePage = new ChooseSpecimenTypeWizardPage(typeDesignation, name, typeDesignationsList);\r
-               }\r
-               \r
-       addPage(chooseTypePage);\r
-    }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.wizard.Wizard#performFinish()\r
-        */\r
-       @Override\r
-       public boolean performFinish() {\r
-               \r
-               chooseTypePage.setPageComplete(true);\r
-               \r
-               // Remove then re-add in case any name editing has taken place\r
-               \r
-//             typeDesignationsList.remove(typeDesignation);\r
-//             typeDesignationsList.add(typeDesignation);\r
-               \r
-               return true;\r
-       }\r
-}\r
diff --git a/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeListWizard.java b/eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeListWizard.java
deleted file mode 100644 (file)
index fc388fb..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-/**\r
-* Copyright (C) 2009 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.taxeditor.propertysheet.type.wizard;\r
-\r
-import java.util.Set;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.eclipse.core.databinding.observable.list.WritableList;\r
-import org.eclipse.jface.wizard.IWizardPage;\r
-import org.eclipse.jface.wizard.Wizard;\r
-\r
-import eu.etaxonomy.cdm.model.common.CdmBase;\r
-import eu.etaxonomy.cdm.model.name.NameTypeDesignation;\r
-import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.name.TypeDesignationBase;\r
-import eu.etaxonomy.cdm.model.occurrence.Specimen;\r
-import eu.etaxonomy.taxeditor.model.CdmUtil;\r
-\r
-/**\r
- * @author p.ciardelli\r
- * @created 11.02.2009\r
- * @version 1.0\r
- */\r
-public class TypeListWizard extends Wizard {\r
-       private static Logger logger = Logger.getLogger(TypeListWizard.class);\r
-\r
-       private TaxonNameBase name;\r
-       private WritableList typeDesignationsList;\r
-       \r
-       /**\r
-        * @param name\r
-        */\r
-       public TypeListWizard(TaxonNameBase name) {\r
-               super();\r
-               \r
-               this.name = name;\r
-               this.typeDesignationsList = new WritableList();\r
-               if (name != null) {\r
-                       if (CdmUtil.isNameSupraSpecific(name)) {\r
-                               this.typeDesignationsList.addAll(name.getNameTypeDesignations());                               \r
-                       } else {\r
-                               this.typeDesignationsList.addAll(name.getSpecimenTypeDesignations());\r
-                       }\r
-               }\r
-       }\r
-\r
-       public void addPages(){\r
-               IWizardPage chooseTypePage = new ListTypeWizardPage(name, typeDesignationsList);\r
-       addPage(chooseTypePage);\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see org.eclipse.jface.wizard.Wizard#performFinish()\r
-        */\r
-       @Override\r
-       public boolean performFinish() {\r
-               \r
-               if (name != null) {\r
-                       \r
-                       // Remove name's designations\r
-                       Set existingDesignations; \r
-                       if (CdmUtil.isNameSupraSpecific(name)) {\r
-                               existingDesignations = name.getNameTypeDesignations();\r
-                       } else {\r
-                               existingDesignations = name.getSpecimenTypeDesignations();                              \r
-                       }\r
-                       \r
-                       for (Object typeDesignation : existingDesignations) {   \r
-                               if (typeDesignation instanceof TypeDesignationBase) {\r
-                                       name.removeTypeDesignation((TypeDesignationBase) typeDesignation);\r
-                               }\r
-                       }\r
-                       \r
-                       // Then re-add them from list\r
-                       for (Object typeDesignation : typeDesignationsList) {\r
-                               if (typeDesignation instanceof SpecimenTypeDesignation) {\r
-                                       \r
-                                       Specimen specimen = CdmBase.deproxy(((SpecimenTypeDesignation) typeDesignation).getTypeSpecimen(), Specimen.class);\r
-                                       \r
-                                       name.addSpecimenTypeDesignation(                                                        \r
-                                                       specimen,\r
-                                                       ((SpecimenTypeDesignation) typeDesignation).getTypeStatus(),\r
-                                                       ((SpecimenTypeDesignation) typeDesignation).getCitation(),\r
-                                                       ((SpecimenTypeDesignation) typeDesignation).getCitationMicroReference(),\r
-                                                       ((SpecimenTypeDesignation) typeDesignation).getOriginalNameString(),\r
-                                                       ((SpecimenTypeDesignation) typeDesignation).isNotDesignated(),\r
-                                                       false);\r
-                               }\r
-                               \r
-                               if (typeDesignation instanceof NameTypeDesignation) {\r
-                                       name.addNameTypeDesignation(\r
-                                                       ((NameTypeDesignation) typeDesignation).getTypeName(), \r
-                                                       ((NameTypeDesignation) typeDesignation).getCitation(), \r
-                                                       ((NameTypeDesignation) typeDesignation).getCitationMicroReference(),\r
-                                                       ((NameTypeDesignation) typeDesignation).getOriginalNameString(), \r
-                                                       ((NameTypeDesignation) typeDesignation).isRejectedType(), \r
-                                                       ((NameTypeDesignation) typeDesignation).isConservedType(), \r
-                                                       ((NameTypeDesignation) typeDesignation).isLectoType(), \r
-                                                       ((NameTypeDesignation) typeDesignation).isNotDesignated(), \r
-                                                       false);\r
-                               }\r
-                       }\r
-               }\r
-               return true;\r
-       }\r
-}\r
diff --git a/taxeditor-feature-dependencies/.project b/taxeditor-feature-dependencies/.project
deleted file mode 100644 (file)
index 7d48f4b..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-       <name>taxeditor-feature-dependencies</name>
-       <comment></comment>
-       <projects>
-       </projects>
-       <buildSpec>
-               <buildCommand>
-                       <name>org.eclipse.pde.FeatureBuilder</name>
-                       <arguments>
-                       </arguments>
-               </buildCommand>
-       </buildSpec>
-       <natures>
-               <nature>org.eclipse.pde.FeatureNature</nature>
-       </natures>
-</projectDescription>
diff --git a/taxeditor-feature-dependencies/build.properties b/taxeditor-feature-dependencies/build.properties
deleted file mode 100644 (file)
index d89fe74..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-bin.includes = feature.xml
-generateFeatureVersionSuffix=true
\ No newline at end of file
diff --git a/taxeditor-feature-dependencies/feature.xml b/taxeditor-feature-dependencies/feature.xml
deleted file mode 100644 (file)
index 8a8d871..0000000
+++ /dev/null
@@ -1,635 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="eu.etaxonomy.taxeditor.feature.dependencies"
-      label="Taxeditor Dependencies"
-      version="2.1.0.qualifier"
-      os="linux,macosx,win32">
-
-   <license url="http://www.example.com/license">
-      [Enter License Description here.]
-   </license>
-
-   <url>
-      <update label="EDIT Taxonomic Editor" url="http://wp5.e-taxonomy.eu/taxeditor/update"/>
-   </url>
-
-   <plugin
-         id="com.ibm.icu"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ant.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.commands"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.contenttype"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.databinding"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.databinding.beans"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.expressions"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filebuffers"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.macosx"
-         os="macosx"
-         arch="x86,x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.jobs"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.resources"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.resources.compatibility"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.runtime"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.runtime.compatibility.auth"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.runtime.compatibility.registry"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.core.variables"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.app"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.common"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.preferences"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.registry"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security.macosx"
-         os="macosx"
-         arch="x86,x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.help"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jface"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jface.databinding"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jface.text"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.osgi"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.osgi.services"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.pde.source"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.swt"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.text"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.editors"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.forms"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.ide"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.navigator"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.navigator.resources"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.views"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.views.properties.tabbed"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.workbench"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.workbench.texteditor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.update.configurator"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.update.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.update.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.junit4"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.update.core.win32"
-         os="win32"
-         ws="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.win32.x86"
-         os="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net.win32.x86"
-         os="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.resources.win32.x86"
-         os="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security.win32.x86"
-         os="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.swt.win32.win32.x86"
-         os="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.win32"
-         os="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.linux.x86"
-         os="linux"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net.linux.x86"
-         os="linux"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher.gtk.linux.x86"
-         os="linux"
-         ws="gtk"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.swt.gtk.linux.x86"
-         os="linux"
-         ws="gtk"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher.cocoa.macosx"
-         os="macosx"
-         ws="cocoa"
-         arch="x86,x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher.win32.win32.x86"
-         os="win32"
-         ws="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.swt.cocoa.macosx"
-         os="macosx"
-         ws="cocoa"
-         arch="x86,x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.cocoa"
-         os="macosx"
-         ws="cocoa"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.databinding.property"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.engine"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.metadata"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.databinding.observable"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.metadata.repository"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf.filetransfer"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.compare.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.hamcrest.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf.identity"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.repository"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf.provider.filetransfer"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.artifact.repository"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.jarprocessor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.swt.motif.linux.x86"
-         os="linux"
-         ws="motif"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher.motif.linux.x86"
-         os="linux"
-         ws="motif"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-</feature>
diff --git a/taxeditor-feature/.project b/taxeditor-feature/.project
deleted file mode 100644 (file)
index b44f958..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-       <name>taxeditor-feature</name>
-       <comment></comment>
-       <projects>
-       </projects>
-       <buildSpec>
-               <buildCommand>
-                       <name>org.eclipse.pde.FeatureBuilder</name>
-                       <arguments>
-                       </arguments>
-               </buildCommand>
-       </buildSpec>
-       <natures>
-               <nature>org.eclipse.pde.FeatureNature</nature>
-       </natures>
-</projectDescription>
diff --git a/taxeditor-feature/build.properties b/taxeditor-feature/build.properties
deleted file mode 100644 (file)
index 433029e..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-bin.includes = feature.xml
-generateFeatureVersionSuffix=true
diff --git a/taxeditor-feature/feature.xml b/taxeditor-feature/feature.xml
deleted file mode 100644 (file)
index c1b67be..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<feature
-      id="eu.etaxonomy.taxeditor"
-      label="Taxeditor Feature"
-      version="2.1.0.qualifier"
-      provider-name="EDIT">
-
-   <description url="http://dev.e-taxonomy.eu/trac/wiki/TaxonomicEditor">
-      EDIT Taxonomic Editor
-   </description>
-
-   <copyright url="http://www.e-taxonomy.eu/">
-      CopyrightCopyright (C) 2007 EDIT
-European Distributed Institute of Taxonomy
-   </copyright>
-
-   <license url="http://www.mozilla.org/MPL">
-      The contents of this file are subject to the Mozilla Public License
-Version 1.1 (the &quot;License&quot;); you may not use this file except
-in compliance with the License. You may obtain a copy of the
-License
-at http://www.mozilla.org/MPL/
-Software distributed under the License is distributed on an &quot;AS
-IS&quot; basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.
-See the License for the specific language governing rights and
-limitations
-under the License.
-   </license>
-
-   <url>
-      <update label="EDIT Taxonomic Editor" url="http://wp5.e-taxonomy.eu/taxeditor/update"/>
-   </url>
-
-   <includes
-         id="eu.etaxonomy.cdmlib"
-         version="0.0.0"/>
-
-   <includes
-         id="eu.etaxonomy.taxeditor.feature.dependencies"
-         version="0.0.0"/>
-
-   <plugin
-         id="eu.etaxonomy.taxeditor.application"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="eu.etaxonomy.taxeditor.editor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="eu.etaxonomy.taxeditor.navigation"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="eu.etaxonomy.taxeditor.store"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="eu.etaxonomy.taxeditor.bulkeditor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-</feature>
diff --git a/taxeditor-updateSite/.project b/taxeditor-updateSite/.project
deleted file mode 100644 (file)
index 9a106e2..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-       <name>taxeditor-updateSite</name>
-       <comment></comment>
-       <projects>
-       </projects>
-       <buildSpec>
-               <buildCommand>
-                       <name>org.eclipse.pde.UpdateSiteBuilder</name>
-                       <arguments>
-                       </arguments>
-               </buildCommand>
-       </buildSpec>
-       <natures>
-               <nature>org.eclipse.pde.UpdateSiteNature</nature>
-       </natures>
-</projectDescription>
diff --git a/taxeditor-updateSite/index.html b/taxeditor-updateSite/index.html
deleted file mode 100644 (file)
index 1967137..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-<html>
-<head>
-<title>taxeditor-updateSite</title>
-<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-<style>@import url("web/site.css");</style>
-<script type="text/javascript">
-       var returnval = 0;
-       var stylesheet, xmlFile, cache, doc;
-       function init(){
-               // NSCP 7.1+ / Mozilla 1.4.1+ / Safari
-               // Use the standard DOM Level 2 technique, if it is supported
-               if (document.implementation && document.implementation.createDocument) {
-                       xmlFile = document.implementation.createDocument("", "", null);
-                       stylesheet = document.implementation.createDocument("", "", null);
-                       if (xmlFile.load){
-                               xmlFile.load("site.xml");
-                               stylesheet.load("web/site.xsl");
-                       } else {
-                               alert("Document could not be loaded by browser.");
-                       }
-                       xmlFile.addEventListener("load", transform, false);
-                       stylesheet.addEventListener("load", transform, false);
-               }
-               //IE 6.0+ solution
-               else if (window.ActiveXObject) {
-                       xmlFile = new ActiveXObject("msxml2.DOMDocument.3.0");
-                       xmlFile.async = false;
-                       xmlFile.load("site.xml");
-                       stylesheet = new ActiveXObject("msxml2.FreeThreadedDOMDocument.3.0");
-                       stylesheet.async = false;
-                       stylesheet.load("web/site.xsl");
-                       cache = new ActiveXObject("msxml2.XSLTemplate.3.0");
-                       cache.stylesheet = stylesheet;
-                       transformData();
-               }
-       }
-       // separate transformation function for IE 6.0+
-       function transformData(){
-               var processor = cache.createProcessor();
-               processor.input = xmlFile;
-               processor.transform();
-               data.innerHTML = processor.output;
-       }
-       // separate transformation function for NSCP 7.1+ and Mozilla 1.4.1+ 
-       function transform(){
-               returnval+=1;
-               if (returnval==2){
-                       var processor = new XSLTProcessor();
-                       processor.importStylesheet(stylesheet); 
-                       doc = processor.transformToDocument(xmlFile);
-                       document.getElementById("data").innerHTML = doc.documentElement.innerHTML;
-               }
-       }
-</script>
-</head>
-<body onload="init();">
-<!--[insert static HTML here]-->
-<div id="data"><!-- this is where the transformed data goes --></div>
-</body>
-</html>
diff --git a/taxeditor-updateSite/site.xml b/taxeditor-updateSite/site.xml
deleted file mode 100644 (file)
index 7e2633c..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<site>
-   <feature url="features/eu.etaxonomy.cdmlib_2.3.0.200911031159.jar" id="eu.etaxonomy.cdmlib" version="2.3.0.200911031159">
-      <category name="Cdm Library"/>
-   </feature>
-   <feature url="features/eu.etaxonomy.taxeditor_2.1.0.200911031159.jar" id="eu.etaxonomy.taxeditor" version="2.1.0.200911031159">
-      <category name="Taxonomic Editor"/>
-   </feature>
-   <category-def name="Taxonomic Editor" label="Taxonomic Editor"/>
-   <category-def name="Cdm Library" label="Cdm Library"/>
-</site>
diff --git a/taxeditor-updateSite/web/site.css b/taxeditor-updateSite/web/site.css
deleted file mode 100644 (file)
index 62c6f9f..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<STYLE type="text/css">
-td.spacer {padding-bottom: 10px; padding-top: 10px;}
-.title { font-family: sans-serif; color: #99AACC;}
-.bodyText { font-family: sans-serif; font-size: 9pt; color:#000000;  }
-.sub-header { font-family: sans-serif; font-style: normal; font-weight: bold; font-size: 9pt; color: white;}
-.log-text {font-family: sans-serif; font-style: normal; font-weight: lighter; font-size: 8pt; color:black;}
-.big-header { font-family: sans-serif; font-style: normal; font-weight: bold; font-size: 9pt; color: white; border-top:10px solid white;}
-.light-row {background:#FFFFFF}
-.dark-row {background:#EEEEFF}
-.header {background:#99AADD}
-#indent {word-wrap : break-word;width :300px;text-indent:10px;}
-</STYLE>
diff --git a/taxeditor-updateSite/web/site.xsl b/taxeditor-updateSite/web/site.xsl
deleted file mode 100644 (file)
index ec71463..0000000
+++ /dev/null
@@ -1,214 +0,0 @@
-<xsl:stylesheet version = '1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform' xmlns:msxsl="urn:schemas-microsoft-com:xslt">
-<xsl:output method="html" encoding="UTF-8"/>
-<xsl:key name="cat" match="category" use="@name"/>
-<xsl:template match="/">
-<xsl:for-each select="site">
-       <html>
-       <head>
-       <title>taxeditor-updateSite</title>
-       <style>@import url("web/site.css");</style>
-       </head>
-       <body>
-       <h1 class="title">taxeditor-updateSite</h1>
-       <p class="bodyText"><xsl:value-of select="description"/></p>
-       <table width="100%" border="0" cellspacing="1" cellpadding="2">
-       <xsl:for-each select="category-def">
-               <xsl:sort select="@label" order="ascending" case-order="upper-first"/>
-               <xsl:sort select="@name" order="ascending" case-order="upper-first"/>
-       <xsl:if test="count(key('cat',@name)) != 0">
-                       <tr class="header">
-                               <td class="sub-header" width="30%">
-                                       <xsl:value-of select="@name"/>
-                               </td>
-                               <td class="sub-header" width="70%">
-                                       <xsl:value-of select="@label"/>
-                               </td>
-                       </tr>
-                       <xsl:for-each select="key('cat',@name)">
-                       <xsl:sort select="ancestor::feature//@version" order="ascending"/>
-                       <xsl:sort select="ancestor::feature//@id" order="ascending" case-order="upper-first"/>
-                       <tr>
-                               <xsl:choose>
-                               <xsl:when test="(position() mod 2 = 1)">
-                                       <xsl:attribute name="class">dark-row</xsl:attribute>
-                               </xsl:when>
-                               <xsl:otherwise>
-                                       <xsl:attribute name="class">light-row</xsl:attribute>
-                               </xsl:otherwise>
-                               </xsl:choose>
-                               <td class="log-text" id="indent">
-                                               <xsl:choose>
-                                               <xsl:when test="ancestor::feature//@label">
-                                                       <a href="{ancestor::feature//@url}"><xsl:value-of select="ancestor::feature//@label"/></a>
-                                                       <br/>
-                                                       <div id="indent">
-                                                       (<xsl:value-of select="ancestor::feature//@id"/> - <xsl:value-of select="ancestor::feature//@version"/>)
-                                                       </div>
-                                               </xsl:when>
-                                               <xsl:otherwise>
-                                               <a href="{ancestor::feature//@url}"><xsl:value-of select="ancestor::feature//@id"/> - <xsl:value-of select="ancestor::feature//@version"/></a>
-                                               </xsl:otherwise>
-                                               </xsl:choose>
-                                               <br />
-                               </td>
-                               <td>
-                                       <table>
-                                               <xsl:if test="ancestor::feature//@os">
-                                                       <tr><td class="log-text" id="indent">Operating Systems:</td>
-                                                       <td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@os"/></td>
-                                                       </tr>
-                                               </xsl:if>
-                                               <xsl:if test="ancestor::feature//@ws">
-                                                       <tr><td class="log-text" id="indent">Windows Systems:</td>
-                                                       <td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@ws"/></td>
-                                                       </tr>
-                                               </xsl:if>
-                                               <xsl:if test="ancestor::feature//@nl">
-                                                       <tr><td class="log-text" id="indent">Languages:</td>
-                                                       <td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@nl"/></td>
-                                                       </tr>
-                                               </xsl:if>
-                                               <xsl:if test="ancestor::feature//@arch">
-                                                       <tr><td class="log-text" id="indent">Architecture:</td>
-                                                       <td class="log-text" id="indent"><xsl:value-of select="ancestor::feature//@arch"/></td>
-                                                       </tr>
-                                               </xsl:if>
-                                       </table>
-                               </td>
-                       </tr>
-                       </xsl:for-each>
-                       <tr><td class="spacer"><br/></td><td class="spacer"><br/></td></tr>
-               </xsl:if>
-       </xsl:for-each>
-       <xsl:if test="count(feature)  &gt; count(feature/category)">
-       <tr class="header">
-               <td class="sub-header" colspan="2">
-               Uncategorized
-               </td>
-       </tr>
-       </xsl:if>
-       <xsl:choose>
-       <xsl:when test="function-available('msxsl:node-set')">
-          <xsl:variable name="rtf-nodes">
-               <xsl:for-each select="feature[not(category)]">
-                       <xsl:sort select="@id" order="ascending" case-order="upper-first"/>
-                       <xsl:sort select="@version" order="ascending" />
-                       <xsl:value-of select="."/>
-                       <xsl:copy-of select="." />
-               </xsl:for-each>
-          </xsl:variable>
-          <xsl:variable name="myNodeSet" select="msxsl:node-set($rtf-nodes)/*"/>
-       <xsl:for-each select="$myNodeSet">
-       <tr>
-               <xsl:choose>
-               <xsl:when test="position() mod 2 = 1">
-               <xsl:attribute name="class">dark-row</xsl:attribute>
-               </xsl:when>
-               <xsl:otherwise>
-               <xsl:attribute name="class">light-row</xsl:attribute>
-               </xsl:otherwise>
-               </xsl:choose>
-               <td class="log-text" id="indent">
-                       <xsl:choose>
-                       <xsl:when test="@label">
-                               <a href="{@url}"><xsl:value-of select="@label"/></a>
-                               <br />
-                               <div id="indent">
-                               (<xsl:value-of select="@id"/> - <xsl:value-of select="@version"/>)
-                               </div>
-                       </xsl:when>
-                       <xsl:otherwise>
-                               <a href="{@url}"><xsl:value-of select="@id"/> - <xsl:value-of select="@version"/></a>
-                       </xsl:otherwise>
-                       </xsl:choose>
-                       <br /><br />
-               </td>
-               <td>
-                       <table>
-                               <xsl:if test="@os">
-                                       <tr><td class="log-text" id="indent">Operating Systems:</td>
-                                       <td class="log-text" id="indent"><xsl:value-of select="@os"/></td>
-                                       </tr>
-                               </xsl:if>
-                               <xsl:if test="@ws">
-                                       <tr><td class="log-text" id="indent">Windows Systems:</td>
-                                       <td class="log-text" id="indent"><xsl:value-of select="@ws"/></td>
-                                       </tr>
-                               </xsl:if>
-                               <xsl:if test="@nl">
-                                       <tr><td class="log-text" id="indent">Languages:</td>
-                                       <td class="log-text" id="indent"><xsl:value-of select="@nl"/></td>
-                                       </tr>
-                               </xsl:if>
-                               <xsl:if test="@arch">
-                                       <tr><td class="log-text" id="indent">Architecture:</td>
-                                       <td class="log-text" id="indent"><xsl:value-of select="@arch"/></td>
-                                       </tr>
-                               </xsl:if>
-                       </table>
-               </td>
-       </tr>
-       </xsl:for-each>
-       </xsl:when>
-       <xsl:otherwise>
-       <xsl:for-each select="feature[not(category)]">
-       <xsl:sort select="@id" order="ascending" case-order="upper-first"/>
-       <xsl:sort select="@version" order="ascending" />
-       <tr>
-               <xsl:choose>
-               <xsl:when test="count(preceding-sibling::feature[not(category)]) mod 2 = 1">
-               <xsl:attribute name="class">dark-row</xsl:attribute>
-               </xsl:when>
-               <xsl:otherwise>
-               <xsl:attribute name="class">light-row</xsl:attribute>
-               </xsl:otherwise>
-               </xsl:choose>
-               <td class="log-text" id="indent">
-                       <xsl:choose>
-                       <xsl:when test="@label">
-                               <a href="{@url}"><xsl:value-of select="@label"/></a>
-                               <br />
-                               <div id="indent">
-                               (<xsl:value-of select="@id"/> - <xsl:value-of select="@version"/>)
-                               </div>
-                       </xsl:when>
-                       <xsl:otherwise>
-                               <a href="{@url}"><xsl:value-of select="@id"/> - <xsl:value-of select="@version"/></a>
-                       </xsl:otherwise>
-                       </xsl:choose>
-                       <br /><br />
-               </td>
-               <td>
-                       <table>
-                               <xsl:if test="@os">
-                                       <tr><td class="log-text" id="indent">Operating Systems:</td>
-                                       <td class="log-text" id="indent"><xsl:value-of select="@os"/></td>
-                                       </tr>
-                               </xsl:if>
-                               <xsl:if test="@ws">
-                                       <tr><td class="log-text" id="indent">Windows Systems:</td>
-                                       <td class="log-text" id="indent"><xsl:value-of select="@ws"/></td>
-                                       </tr>
-                               </xsl:if>
-                               <xsl:if test="@nl">
-                                       <tr><td class="log-text" id="indent">Languages:</td>
-                                       <td class="log-text" id="indent"><xsl:value-of select="@nl"/></td>
-                                       </tr>
-                               </xsl:if>
-                               <xsl:if test="@arch">
-                                       <tr><td class="log-text" id="indent">Architecture:</td>
-                                       <td class="log-text" id="indent"><xsl:value-of select="@arch"/></td>
-                                       </tr>
-                               </xsl:if>
-                       </table>
-               </td>
-       </tr>
-       </xsl:for-each>
-       </xsl:otherwise>
-       </xsl:choose>
-       </table>
-       </body>
-       </html>
-</xsl:for-each>
-</xsl:template>
-</xsl:stylesheet>