1 package eu
.etaxonomy
.taxeditor
.designproposal1
.view
;
3 import java
.beans
.PropertyChangeEvent
;
4 import java
.beans
.PropertyChangeListener
;
6 import org
.eclipse
.core
.runtime
.IProgressMonitor
;
7 import org
.eclipse
.jface
.action
.Action
;
8 import org
.eclipse
.jface
.text
.Document
;
9 import org
.eclipse
.jface
.text
.TextViewer
;
10 import org
.eclipse
.jface
.text
.source
.SourceViewer
;
11 import org
.eclipse
.swt
.SWT
;
12 import org
.eclipse
.swt
.custom
.PopupList
;
13 import org
.eclipse
.swt
.custom
.StyledText
;
14 import org
.eclipse
.swt
.events
.ControlAdapter
;
15 import org
.eclipse
.swt
.events
.ControlEvent
;
16 import org
.eclipse
.swt
.events
.FocusEvent
;
17 import org
.eclipse
.swt
.events
.FocusListener
;
18 import org
.eclipse
.swt
.events
.KeyEvent
;
19 import org
.eclipse
.swt
.events
.KeyListener
;
20 import org
.eclipse
.swt
.events
.MouseAdapter
;
21 import org
.eclipse
.swt
.events
.MouseEvent
;
22 import org
.eclipse
.swt
.events
.SelectionAdapter
;
23 import org
.eclipse
.swt
.events
.SelectionEvent
;
24 import org
.eclipse
.swt
.events
.SelectionListener
;
25 import org
.eclipse
.swt
.graphics
.Point
;
26 import org
.eclipse
.swt
.graphics
.Rectangle
;
27 import org
.eclipse
.swt
.layout
.FillLayout
;
28 import org
.eclipse
.swt
.layout
.GridData
;
29 import org
.eclipse
.swt
.layout
.GridLayout
;
30 import org
.eclipse
.swt
.widgets
.Button
;
31 import org
.eclipse
.swt
.widgets
.Composite
;
32 import org
.eclipse
.swt
.widgets
.CoolBar
;
33 import org
.eclipse
.swt
.widgets
.CoolItem
;
34 import org
.eclipse
.swt
.widgets
.Display
;
35 import org
.eclipse
.swt
.widgets
.Event
;
36 import org
.eclipse
.swt
.widgets
.Label
;
37 import org
.eclipse
.swt
.widgets
.Listener
;
38 import org
.eclipse
.swt
.widgets
.Menu
;
39 import org
.eclipse
.swt
.widgets
.MenuItem
;
40 import org
.eclipse
.swt
.widgets
.Shell
;
41 import org
.eclipse
.swt
.widgets
.Table
;
42 import org
.eclipse
.swt
.widgets
.TableColumn
;
43 import org
.eclipse
.swt
.widgets
.TableItem
;
44 import org
.eclipse
.swt
.widgets
.Text
;
45 import org
.eclipse
.swt
.widgets
.ToolBar
;
46 import org
.eclipse
.swt
.widgets
.ToolItem
;
47 import org
.eclipse
.ui
.IEditorInput
;
48 import org
.eclipse
.ui
.IEditorSite
;
49 import org
.eclipse
.ui
.PartInitException
;
50 import org
.eclipse
.ui
.part
.EditorPart
;
51 import com
.swtdesigner
.ResourceManager
;
52 import com
.swtdesigner
.SWTResourceManager
;
54 //import org.eclipse.ui.texteditor.AbstractTextEditor;
56 //import eu.etaxonomy.cdm.event.ICdmEventListener;
57 //import eu.etaxonomy.cdm.event.ICdmEventListenerRegistration;
58 //import eu.etaxonomy.cdm.model.name.TaxonName;
59 import eu
.etaxonomy
.taxeditor
.designproposal1
.Activator
;
60 import eu
.etaxonomy
.taxeditor
.designproposal1
.controller
.OpenNameEditorAction
;
61 import eu
.etaxonomy
.taxeditor
.designproposal1
.controller
.SaveNameAction
;
62 import eu
.etaxonomy
.taxeditor
.designproposal1
.model
.TaxonName
;
64 //public class PilosellaEditorView extends EditorPart implements ICdmEventListener {
65 public class PilosellaEditorView
extends EditorPart
{
67 private Table table_1
;
69 private Text hieraciumFuscoatrumSubspText
;
70 private Text hieraciumAurantiacumSubspText
;
72 private StyledText styledText
;
73 private TaxonName taxonname
;
75 public static final String ID
= "eu.etaxonomy.taxeditor.designproposal1.view.pilosellaeditorview"; //$NON-NLS-1$
78 * Create contents of the editor part
82 public void createPartControl(Composite parent
) {
86 // txtPlay = new Text(container, SWT.BORDER);
87 // txtPlay.setCapture(true);
88 // final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);
89 // gd_txtPlay.heightHint = 96;
90 // txtPlay.setLayoutData(gd_txtPlay);
91 //// txtPlay.addVerifyListener(new VerifyListener() {
93 //// public void verifyText(VerifyEvent e) {
94 //// e.doit = Character.isDigit(e.character);
97 // txtPlay.addSelectionListener(new SelectionListener() {
100 // public void widgetDefaultSelected(SelectionEvent e) {
101 // // TODO Auto-generated method stub
106 // public void widgetSelected(SelectionEvent e) {
107 // System.out.println(e.toString());
114 // txtPlay.addKeyListener(new KeyListener() {
116 // public void keyPressed(KeyEvent e) {
117 // System.out.println(e.character);
118 // if (e.character == '=') {
119 // Shell shell = Activator.getDefault().getWorkbench().
120 // getActiveWorkbenchWindow().getShell();
121 // PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);
123 //// Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);
125 // // Add the items to the list
126 // String[] OPTIONS = { "Create homo. syn.",
127 // "Create hetero. syn.",
128 // "Create mis. name",
129 // "Create homonym"};
131 // list.setItems(OPTIONS);
133 // // Open the list and get the selected item
134 // String selected = list.open(txtPlay.getBounds());
136 // // Print the item to the console
137 // System.out.println(selected);
142 // public void keyReleased(KeyEvent e) {
143 // // TODO Auto-generated method stub
147 parent
.setLayout(new GridLayout());
148 Document doc
= new Document("");
150 final Label taxonomicallyIncludedInLabel
= new Label(parent
, SWT
.NONE
);
151 taxonomicallyIncludedInLabel
.setLayoutData(new GridData(SWT
.FILL
, SWT
.FILL
, false, false));
152 taxonomicallyIncludedInLabel
.setText("Higher taxon: \"Pilosella fuscoatra coll.\"");
154 final ToolBar toolBar
= new ToolBar(parent
, SWT
.NONE
);
155 // toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));
157 final ToolItem itemSave
= new ToolItem(toolBar
, SWT
.PUSH
);
158 itemSave
.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
159 itemSave
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/save.gif"));
160 itemSave
.addSelectionListener(new SelectionListener() {
161 public void mouseDown(final MouseEvent e
) {
163 // taxonname.setGenus(txtGenus.getText());
164 // taxonname.setSpecificEpithet(txtSpEpi.getText());
166 new SaveNameAction(taxonname
).run();
169 public void widgetDefaultSelected(SelectionEvent e
) {
170 new SaveNameAction(taxonname
).run();
173 public void widgetSelected(SelectionEvent e
) {
174 new SaveNameAction(taxonname
).run();
178 final ToolItem itemMove
= new ToolItem(toolBar
, SWT
.DROP_DOWN
);
179 itemMove
.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
180 itemMove
.addSelectionListener(new SelectionAdapter() {
181 public void widgetSelected(final SelectionEvent e
) {
185 final Menu menuMove
= new Menu(toolBar
);
186 menuMove
.setData("x", null);
187 addDropDown(itemMove
, menuMove
);
189 final MenuItem moveTaxonpilosellaMenuItem
= new MenuItem(menuMove
, SWT
.NONE
);
190 moveTaxonpilosellaMenuItem
.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");
192 final MenuItem turnTaxonpilosellaMenuItem
= new MenuItem(menuMove
, SWT
.NONE
);
193 turnTaxonpilosellaMenuItem
.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");
196 // newItemToolItem.setText("New item");
197 itemMove
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/move_no_bg.gif"));
199 final ToolItem itemDelete
= new ToolItem(toolBar
, SWT
.NONE
);
200 itemDelete
.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
201 itemDelete
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/delete.gif"));
203 final ToolItem separator1
= new ToolItem(toolBar
, SWT
.SEPARATOR
);
205 final ToolItem itemAddRelationship
= new ToolItem(toolBar
, SWT
.DROP_DOWN
);
206 itemAddRelationship
.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
207 itemAddRelationship
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/rel_no_bg.gif"));
209 final Menu menuAddRel
= new Menu(toolBar
);
210 menuAddRel
.setData("x", null);
211 addDropDown(itemAddRelationship
, menuAddRel
);
213 final MenuItem testMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
214 testMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/unknown_no_bg.gif"));
215 testMenuItem
.setText("Add synonymy (type unknown)");
217 final MenuItem addHomotypicSynonymMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
218 addHomotypicSynonymMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homosyn_no_bg.gif"));
219 addHomotypicSynonymMenuItem
.setText("Add homotypic synonym");
221 final MenuItem addHeterotypicSynoynmMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
222 addHeterotypicSynoynmMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/heterosyn_no_bg.gif"));
223 addHeterotypicSynoynmMenuItem
.setText("Add heterotypic synoynm");
225 final MenuItem addBasionymMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
226 addBasionymMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/basionym_no_bg.gif"));
227 addBasionymMenuItem
.setText("Add basionym");
229 final MenuItem addReplacedSynonymMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
230 addReplacedSynonymMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/repsyn_no_bg.gif"));
231 addReplacedSynonymMenuItem
.setText("Add replaced synonym");
233 final MenuItem addHomonymMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
234 addHomonymMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homonym_no_bg.gif"));
235 addHomonymMenuItem
.setText("Add homonym");
237 final MenuItem addOrthographicVariantMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
238 addOrthographicVariantMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/orthovariant_no_bg.gif"));
239 addOrthographicVariantMenuItem
.setText("Add orthographic variant");
241 final MenuItem addMisappliedNameMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
242 addMisappliedNameMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/misapplied_no_bg.gif"));
243 addMisappliedNameMenuItem
.setText("Add misapplied name");
245 final MenuItem addConceptRelationMenuItem_1
= new MenuItem(menuAddRel
, SWT
.CASCADE
);
246 addConceptRelationMenuItem_1
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/concept_no_bg.gif"));
247 addConceptRelationMenuItem_1
.setText("Add concept relation");
249 final Menu menu
= new Menu(addConceptRelationMenuItem_1
);
250 addConceptRelationMenuItem_1
.setMenu(menu
);
252 final MenuItem checkboxMenuItem
= new MenuItem(menu
, SWT
.CHECK
);
253 checkboxMenuItem
.setText("congruent");
255 final MenuItem checkboxMenuItem_1
= new MenuItem(menu
, SWT
.CHECK
);
256 checkboxMenuItem_1
.setSelection(true);
257 checkboxMenuItem_1
.setText("included in");
259 final MenuItem checkboxMenuItem_2
= new MenuItem(menu
, SWT
.CHECK
);
260 checkboxMenuItem_2
.setText("includes");
262 final MenuItem checkboxMenuItem_3
= new MenuItem(menu
, SWT
.CHECK
);
263 checkboxMenuItem_3
.setText("overlaps");
265 final MenuItem checkboxMenuItem_4
= new MenuItem(menu
, SWT
.CHECK
);
266 checkboxMenuItem_4
.setText("excludes");
268 final MenuItem checkboxMenuItem_5
= new MenuItem(menu
, SWT
.CHECK
);
269 checkboxMenuItem_5
.setSelection(true);
270 checkboxMenuItem_5
.setText("doubtful");
272 final ToolItem separator2
= new ToolItem(toolBar
, SWT
.SEPARATOR
);
274 final ToolItem itemAddTaxon
= new ToolItem(toolBar
, SWT
.DROP_DOWN
);
275 itemAddTaxon
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/add_no_bg2.gif"));
276 itemAddTaxon
.setToolTipText("Add new taxon");
278 final Menu menuAdd
= new Menu(toolBar
);
279 menuAdd
.setData("x", null);
280 addDropDown(itemAddTaxon
, menuAdd
);
282 final MenuItem addTaxonToMenuItem
= new MenuItem(menuAdd
, SWT
.NONE
);
283 addTaxonToMenuItem
.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
285 final MenuItem addNewTaxonMenuItem
= new MenuItem(menuAdd
, SWT
.NONE
);
286 addNewTaxonMenuItem
.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");
288 final Composite composite
= new Composite(parent
, SWT
.NONE
);
289 composite
.setLayoutData(new GridData(SWT
.FILL
, SWT
.FILL
, true, true));
290 composite
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
291 final GridLayout gridLayout_2
= new GridLayout();
292 gridLayout_2
.horizontalSpacing
= 3;
293 gridLayout_2
.numColumns
= 3;
294 composite
.setLayout(gridLayout_2
);
296 text_3
= new Text(composite
, SWT
.WRAP
);
297 text_3
.setText("Pilosella fuscoatra (Nägeli & Peter) Soják in Preslia 43: 184. 1971 ");
298 text_3
.setFont(SWTResourceManager
.getFont("Georgia", 12, SWT
.NONE
));
299 text_3
.setLayoutData(new GridData(SWT
.FILL
, SWT
.CENTER
, true, false, 2, 1));
300 text_3
.addFocusListener(new FocusListener() {
302 public void focusGained(FocusEvent e
) {
303 text_3
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
306 public void focusLost(FocusEvent e
) {
307 text_3
.setBackground(null);
312 table_1
= new Table(composite
, SWT
.BORDER
);
313 table_1
.setLinesVisible(true);
314 table_1
.setLayoutData(new GridData(SWT
.RIGHT
, SWT
.FILL
, true, true, 1, 5));
316 final TableColumn newColumnTableColumn
= new TableColumn(table_1
, SWT
.NONE
);
317 newColumnTableColumn
.setWidth(100);
318 newColumnTableColumn
.setText("New column");
320 final TableColumn newColumnTableColumn_1
= new TableColumn(table_1
, SWT
.NONE
);
321 newColumnTableColumn_1
.setWidth(100);
322 newColumnTableColumn_1
.setText("New column");
324 final TableItem newItemTableItem
= new TableItem(table_1
, SWT
.BORDER
);
325 newItemTableItem
.setText(0, "Rank");
326 newItemTableItem
.setText(1, "species");
327 newItemTableItem
.setText("Rank");
329 final TableItem newItemTableItem_1
= new TableItem(table_1
, SWT
.BORDER
);
330 newItemTableItem_1
.setText(1, "Pilosella");
331 newItemTableItem_1
.setText(0, "Genus");
333 final TableItem newItemTableItem_2
= new TableItem(table_1
, SWT
.BORDER
);
334 newItemTableItem_2
.setText(1, "fuscoatra");
335 newItemTableItem_2
.setText(0, "Species epithet");
337 final TableItem newItemTableItem_3
= new TableItem(table_1
, SWT
.BORDER
);
338 newItemTableItem_3
.setText(1, "Nägeli & Peter");
339 newItemTableItem_3
.setText(0, "Author team");
341 final TableItem newItemTableItem_4
= new TableItem(table_1
, SWT
.BORDER
);
342 newItemTableItem_4
.setText("...");
343 // newItemTableItem_3.setText("Author team");
344 // newItemTableItem_2.setText("Species epithet");
345 // newItemTableItem_1.setText("Genus");
347 final Label labelWithMenu
= new Label(composite
, SWT
.NONE
);
348 labelWithMenu
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
349 labelWithMenu
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homosyn_no_bg.gif"));
350 final GridData gd_labelWithMenu
= new GridData(SWT
.LEFT
, SWT
.TOP
, false, false);
351 labelWithMenu
.setLayoutData(gd_labelWithMenu
);
353 text_1
= new Text(composite
, SWT
.WRAP
);
354 final GridData gd_text_1
= new GridData(SWT
.FILL
, SWT
.CENTER
, true, false);
355 gd_text_1
.widthHint
= 444;
356 text_1
.setLayoutData(gd_text_1
);
357 text_1
.setFont(SWTResourceManager
.getFont("Georgia", 11, SWT
.NONE
));
358 text_1
.setText("Hieracium fuscoatrum Nägeli & Peter, Hierac. Mitt.-Eur. 1: 315. 1885");
359 text_1
.addFocusListener(new FocusListener() {
361 public void focusGained(FocusEvent e
) {
362 text_1
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
365 public void focusLost(FocusEvent e
) {
366 text_1
.setBackground(null);
372 final Label label_1
= new Label(composite
, SWT
.NONE
);
373 label_1
.setLayoutData(new GridData(SWT
.LEFT
, SWT
.TOP
, false, false));
374 label_1
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/heterosyn_no_bg.gif"));
375 label_1
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
377 hieraciumAurantiacumSubspText
= new Text(composite
, SWT
.WRAP
);
378 final GridData gd_hieraciumAurantiacumSubspText
= new GridData(SWT
.FILL
, SWT
.CENTER
, true, false);
379 gd_hieraciumAurantiacumSubspText
.widthHint
= 441;
380 hieraciumAurantiacumSubspText
.setLayoutData(gd_hieraciumAurantiacumSubspText
);
381 hieraciumAurantiacumSubspText
.setFont(SWTResourceManager
.getFont("Georgia", 11, SWT
.NONE
));
382 hieraciumAurantiacumSubspText
.setText("Hieracium aurantiacum subsp. chaetodermum Pohle & Zahn in Allg. Bot. Z. Syst. 13: 110. 1907");
383 hieraciumAurantiacumSubspText
.addFocusListener(new FocusListener() {
385 public void focusGained(FocusEvent e
) {
386 hieraciumAurantiacumSubspText
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
389 public void focusLost(FocusEvent e
) {
390 hieraciumAurantiacumSubspText
.setBackground(null);
396 final Label label_2
= new Label(composite
, SWT
.NONE
);
397 label_2
.setLayoutData(new GridData(SWT
.LEFT
, SWT
.TOP
, false, false));
398 label_2
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
399 label_2
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/heterosyn_no_bg.gif"));
401 hieraciumFuscoatrumSubspText
= new Text(composite
, SWT
.WRAP
);
402 final GridData gd_hieraciumFuscoatrumSubspText
= new GridData(SWT
.FILL
, SWT
.CENTER
, true, false);
403 gd_hieraciumFuscoatrumSubspText
.widthHint
= 447;
404 hieraciumFuscoatrumSubspText
.setLayoutData(gd_hieraciumFuscoatrumSubspText
);
405 hieraciumFuscoatrumSubspText
.setText("Hieracium fuscoatrum subsp. chaetodermum (Pohle & Zahn) Zahn in Engler, Pflanzenr. 82: 1267. 1923");
406 hieraciumFuscoatrumSubspText
.setFont(SWTResourceManager
.getFont("Georgia", 11, SWT
.NONE
));
407 hieraciumFuscoatrumSubspText
.addFocusListener(new FocusListener() {
409 public void focusGained(FocusEvent e
) {
410 hieraciumFuscoatrumSubspText
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
413 public void focusLost(FocusEvent e
) {
414 hieraciumFuscoatrumSubspText
.setBackground(null);
419 final Label label_4
= new Label(composite
, SWT
.NONE
);
420 label_4
.setLayoutData(new GridData(SWT
.LEFT
, SWT
.TOP
, false, false));
421 label_4
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/unknown_no_bg.gif"));
422 label_4
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
423 //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));
425 final Menu menu1
= new Menu(labelWithMenu
);
426 labelWithMenu
.setMenu(menu1
);
428 final MenuItem deletehieraciumFuscoatrumMenuItem
= new MenuItem(menu1
, SWT
.NONE
);
429 deletehieraciumFuscoatrumMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/delete.gif"));
430 deletehieraciumFuscoatrumMenuItem
.setText("Delete \"Hieracium fuscoatrum Nägeli & Peter\" from this taxon");
432 new MenuItem(menu1
, SWT
.SEPARATOR
);
434 final MenuItem moveMenuItem
= new MenuItem(menu1
, SWT
.NONE
);
435 moveMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/move_no_bg.gif"));
436 moveMenuItem
.setText("Move \"Hieracium fuscoatrum Nägeli & Peter\" to another taxon");
438 final MenuItem makehieraciumFuscoatrumMenuItem
= new MenuItem(menu1
, SWT
.NONE
);
439 makehieraciumFuscoatrumMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/a_no_bg.gif"));
440 makehieraciumFuscoatrumMenuItem
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into an accepted name");
442 new MenuItem(menu1
, SWT
.SEPARATOR
);
444 final MenuItem turnhieraciumFuscoatrumMenuItem
= new MenuItem(menu1
, SWT
.NONE
);
445 turnhieraciumFuscoatrumMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/unknown_no_bg.gif"));
446 turnhieraciumFuscoatrumMenuItem
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a synonym (type unknown)");
448 final MenuItem turnhieraciumFuscoatrumMenuItem_1
= new MenuItem(menu1
, SWT
.NONE
);
449 turnhieraciumFuscoatrumMenuItem_1
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homosyn_no_bg.gif"));
450 turnhieraciumFuscoatrumMenuItem_1
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homotypic synonym");
452 final MenuItem turnhieraciumFuscoatrumMenuItem_2
= new MenuItem(menu1
, SWT
.NONE
);
453 turnhieraciumFuscoatrumMenuItem_2
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/heterosyn_no_bg.gif"));
454 turnhieraciumFuscoatrumMenuItem_2
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a heterotypic synoynm");
456 final MenuItem turnhieraciumFuscoatrumMenuItem_3
= new MenuItem(menu1
, SWT
.NONE
);
457 turnhieraciumFuscoatrumMenuItem_3
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/basionym_no_bg.gif"));
458 turnhieraciumFuscoatrumMenuItem_3
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a basionym");
460 final MenuItem turnhieraciumFuscoatrumMenuItem_4
= new MenuItem(menu1
, SWT
.NONE
);
461 turnhieraciumFuscoatrumMenuItem_4
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/repsyn_no_bg.gif"));
462 turnhieraciumFuscoatrumMenuItem_4
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a replaced synonym");
464 final MenuItem turnhieraciumFuscoatrumMenuItem_5
= new MenuItem(menu1
, SWT
.NONE
);
465 turnhieraciumFuscoatrumMenuItem_5
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homonym_no_bg.gif"));
466 turnhieraciumFuscoatrumMenuItem_5
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homonym");
468 final MenuItem turnhieraciumFuscoatrumMenuItem_6
= new MenuItem(menu1
, SWT
.NONE
);
469 turnhieraciumFuscoatrumMenuItem_6
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/orthovariant_no_bg.gif"));
470 turnhieraciumFuscoatrumMenuItem_6
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a orthographic variant");
472 final MenuItem turnhieraciumFuscoatrumMenuItem_7
= new MenuItem(menu1
, SWT
.NONE
);
473 turnhieraciumFuscoatrumMenuItem_7
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/misapplied_no_bg.gif"));
474 turnhieraciumFuscoatrumMenuItem_7
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a misapplied name");
476 final MenuItem turnhieraciumFuscoatrumMenuItem_8
= new MenuItem(menu1
, SWT
.NONE
);
477 turnhieraciumFuscoatrumMenuItem_8
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/concept_no_bg.gif"));
478 turnhieraciumFuscoatrumMenuItem_8
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a concept relation");
480 SourceViewer sourceviewer
= new SourceViewer(composite
, null, SWT
.WRAP
| SWT
.FULL_SELECTION
);
481 sourceviewer
.setAnnotationHover(null);
482 styledText
= sourceviewer
.getTextWidget();
483 final GridData gd_styledText
= new GridData(SWT
.FILL
, SWT
.TOP
, true, false);
484 gd_styledText
.heightHint
= 41;
485 gd_styledText
.widthHint
= 450;
486 styledText
.setLayoutData(gd_styledText
);
487 sourceviewer
.setDocument(doc
);
488 sourceviewer
.configure(new MySourceViewerConfig());
489 sourceviewer
.setTabsToSpacesConverter(null);
492 // final Menu menu = new Menu(toolBar);
493 // addDropDown(newItemToolItem, menu);
496 // Action testAction = new OpenNameEditorAction();
497 // testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));
498 // testAction.setToolTipText("Add relation");
499 // toolBar.add(testAction);
504 // private void populateForm() {
506 // String fulltext = "";
508 // if (taxonname.getGenus() != null) {
509 // fulltext = taxonname.getGenus();
512 // if (taxonname.getSpecificEpithet() != null) {
513 // fulltext += " " + taxonname.getSpecificEpithet();
516 // if (taxonname.getAuthorship() != null) {
517 // fulltext += " " + taxonname.getAuthorship();
520 //// txtPlay.setText(fulltext);
521 //// txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");
523 // this.setPartName(taxonname.getName());
526 private void populateForm() {
527 this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");
531 public void setFocus() {
536 public void doSave(IProgressMonitor monitor
) {
537 // Do the Save operation
541 public void doSaveAs() {
542 // Do the Save As operation
546 public void init(IEditorSite site
, IEditorInput input
) throws PartInitException
{
548 if (!(input
instanceof IEditorInput
))
549 throw new PartInitException(
550 "Invalid Input: Must be IFileEditorInput");
552 if (input
.getAdapter(TaxonName
.class) != null) {
553 taxonname
= (TaxonName
) input
.getAdapter(TaxonName
.class);
554 // taxonname.addCdmEventListener(this);
565 public boolean isDirty() {
570 public boolean isSaveAsAllowed() {
574 public void propertyChange(PropertyChangeEvent evt
) {
575 // TaxonName taxonname = (TaxonName)evt.getNewValue();
576 this.taxonname
= (TaxonName
)evt
.getNewValue();
577 System
.out
.println(((TaxonName
)evt
.getNewValue()).getName());
580 // for individual fields, do something like:
581 // if (evt.getPropertyName().equalsIgnoreCase("genus"))
582 // txtGenus.setText ...
585 // public void onDelete(ICdmEventListenerRegistration arg0) {
586 // // TODO Auto-generated method stub
590 public void onInsert(Object arg0
) {
591 // TODO Auto-generated method stub
595 public void onLoad(Object arg0
) {
596 // TODO Auto-generated method stub
600 // public void onUpdate(ICdmEventListenerRegistration arg0) {
601 // // TODO Auto-generated method stub
605 private static void addDropDown(final ToolItem item
, final Menu menu
) {
606 item
.addListener(SWT
.Selection
, new Listener() {
607 public void handleEvent(Event event
) {
608 if (event
.detail
== SWT
.ARROW
) {
609 Rectangle rect
= item
.getBounds();
610 Point pt
= new Point(rect
.x
, rect
.y
+ rect
.height
);
611 pt
= item
.getParent().toDisplay(pt
);
612 menu
.setLocation(pt
.x
, pt
.y
);
613 menu
.setVisible(true);