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
.dialogs
.MessageDialog
;
9 import org
.eclipse
.jface
.text
.Document
;
10 import org
.eclipse
.jface
.text
.TextViewer
;
11 import org
.eclipse
.jface
.text
.source
.SourceViewer
;
12 import org
.eclipse
.swt
.SWT
;
13 import org
.eclipse
.swt
.custom
.PopupList
;
14 import org
.eclipse
.swt
.custom
.StyledText
;
15 import org
.eclipse
.swt
.events
.ControlAdapter
;
16 import org
.eclipse
.swt
.events
.ControlEvent
;
17 import org
.eclipse
.swt
.events
.FocusEvent
;
18 import org
.eclipse
.swt
.events
.FocusListener
;
19 import org
.eclipse
.swt
.events
.KeyEvent
;
20 import org
.eclipse
.swt
.events
.KeyListener
;
21 import org
.eclipse
.swt
.events
.MouseAdapter
;
22 import org
.eclipse
.swt
.events
.MouseEvent
;
23 import org
.eclipse
.swt
.events
.MouseListener
;
24 import org
.eclipse
.swt
.events
.SelectionAdapter
;
25 import org
.eclipse
.swt
.events
.SelectionEvent
;
26 import org
.eclipse
.swt
.events
.SelectionListener
;
27 import org
.eclipse
.swt
.graphics
.Point
;
28 import org
.eclipse
.swt
.graphics
.Rectangle
;
29 import org
.eclipse
.swt
.layout
.FillLayout
;
30 import org
.eclipse
.swt
.layout
.GridData
;
31 import org
.eclipse
.swt
.layout
.GridLayout
;
32 import org
.eclipse
.swt
.widgets
.Button
;
33 import org
.eclipse
.swt
.widgets
.Composite
;
34 import org
.eclipse
.swt
.widgets
.CoolBar
;
35 import org
.eclipse
.swt
.widgets
.CoolItem
;
36 import org
.eclipse
.swt
.widgets
.Display
;
37 import org
.eclipse
.swt
.widgets
.Event
;
38 import org
.eclipse
.swt
.widgets
.Label
;
39 import org
.eclipse
.swt
.widgets
.Listener
;
40 import org
.eclipse
.swt
.widgets
.Menu
;
41 import org
.eclipse
.swt
.widgets
.MenuItem
;
42 import org
.eclipse
.swt
.widgets
.Shell
;
43 import org
.eclipse
.swt
.widgets
.Table
;
44 import org
.eclipse
.swt
.widgets
.TableColumn
;
45 import org
.eclipse
.swt
.widgets
.TableItem
;
46 import org
.eclipse
.swt
.widgets
.Text
;
47 import org
.eclipse
.swt
.widgets
.ToolBar
;
48 import org
.eclipse
.swt
.widgets
.ToolItem
;
49 import org
.eclipse
.ui
.IEditorInput
;
50 import org
.eclipse
.ui
.IEditorSite
;
51 import org
.eclipse
.ui
.PartInitException
;
52 import org
.eclipse
.ui
.editors
.text
.TextEditor
;
53 import org
.eclipse
.ui
.part
.EditorPart
;
54 import com
.swtdesigner
.ResourceManager
;
55 import com
.swtdesigner
.SWTResourceManager
;
57 //import org.eclipse.ui.texteditor.AbstractTextEditor;
59 //import eu.etaxonomy.cdm.event.ICdmEventListener;
60 //import eu.etaxonomy.cdm.event.ICdmEventListenerRegistration;
61 //import eu.etaxonomy.cdm.model.name.TaxonName;
62 import eu
.etaxonomy
.taxeditor
.designproposal1
.Activator
;
63 import eu
.etaxonomy
.taxeditor
.designproposal1
.controller
.OpenNameEditorAction
;
64 import eu
.etaxonomy
.taxeditor
.designproposal1
.controller
.SaveNameAction
;
65 import eu
.etaxonomy
.taxeditor
.designproposal1
.model
.TaxonName
;
67 public class PilosellaEditorView
extends EditorPart
{
68 //public class PilosellaEditorView extends TextEditor {
70 private Text hieraciumFuscoatrumSubspText_1
;
71 private Text hieraciumRubroonegenseNorrlText
;
72 private Table table_1
;
74 private Text hieraciumFuscoatrumSubspText
;
75 private Text hieraciumAurantiacumSubspText
;
77 private StyledText styledText
;
78 private TaxonName taxonname
;
80 public static final String ID
= "eu.etaxonomy.taxeditor.designproposal1.view.pilosellaeditorview"; //$NON-NLS-1$
83 * Create contents of the editor part
87 public void createPartControl(Composite parent
) {
91 // txtPlay = new Text(container, SWT.BORDER);
92 // txtPlay.setCapture(true);
93 // final GridData gd_txtPlay = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1);
94 // gd_txtPlay.heightHint = 96;
95 // txtPlay.setLayoutData(gd_txtPlay);
96 //// txtPlay.addVerifyListener(new VerifyListener() {
98 //// public void verifyText(VerifyEvent e) {
99 //// e.doit = Character.isDigit(e.character);
102 // txtPlay.addSelectionListener(new SelectionListener() {
105 // public void widgetDefaultSelected(SelectionEvent e) {
106 // // TODO Auto-generated method stub
111 // public void widgetSelected(SelectionEvent e) {
112 // System.out.println(e.toString());
119 // txtPlay.addKeyListener(new KeyListener() {
121 // public void keyPressed(KeyEvent e) {
122 // System.out.println(e.character);
123 // if (e.character == '=') {
124 // Shell shell = Activator.getDefault().getWorkbench().
125 // getActiveWorkbenchWindow().getShell();
126 // PopupList list = new PopupList(shell, SWT.H_SCROLL | SWT.V_SCROLL);
128 //// Combo list = new Combo(shell, SWT.H_SCROLL | SWT.V_SCROLL);
130 // // Add the items to the list
131 // String[] OPTIONS = { "Create homo. syn.",
132 // "Create hetero. syn.",
133 // "Create mis. name",
134 // "Create homonym"};
136 // list.setItems(OPTIONS);
138 // // Open the list and get the selected item
139 // String selected = list.open(txtPlay.getBounds());
141 // // Print the item to the console
142 // System.out.println(selected);
147 // public void keyReleased(KeyEvent e) {
148 // // TODO Auto-generated method stub
152 parent
.setLayout(new GridLayout());
153 Document doc
= new Document();
155 final Label taxonomicallyIncludedInLabel
= new Label(parent
, SWT
.NONE
);
156 taxonomicallyIncludedInLabel
.setLayoutData(new GridData(SWT
.FILL
, SWT
.FILL
, false, false));
157 taxonomicallyIncludedInLabel
.setText("Higher taxon: \"Pilosella fuscoatra coll.\"");
159 final ToolBar toolBar
= new ToolBar(parent
, SWT
.NONE
);
160 // toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));
162 final ToolItem itemSave
= new ToolItem(toolBar
, SWT
.PUSH
);
163 itemSave
.setToolTipText("Save taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
164 itemSave
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/save.gif"));
165 itemSave
.addSelectionListener(new SelectionListener() {
166 public void mouseDown(final MouseEvent e
) {
168 // taxonname.setGenus(txtGenus.getText());
169 // taxonname.setSpecificEpithet(txtSpEpi.getText());
171 new SaveNameAction(taxonname
).run();
174 public void widgetDefaultSelected(SelectionEvent e
) {
175 new SaveNameAction(taxonname
).run();
178 public void widgetSelected(SelectionEvent e
) {
179 new SaveNameAction(taxonname
).run();
183 final ToolItem itemMove
= new ToolItem(toolBar
, SWT
.DROP_DOWN
);
184 itemMove
.setToolTipText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
186 final Menu menuMove
= new Menu(toolBar
);
187 menuMove
.setData("x", null);
188 addDropDown(itemMove
, menuMove
);
190 final MenuItem moveTaxonpilosellaMenuItem
= new MenuItem(menuMove
, SWT
.NONE
);
191 moveTaxonpilosellaMenuItem
.setText("Move taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" to another higher taxon");
193 final MenuItem turnTaxonpilosellaMenuItem
= new MenuItem(menuMove
, SWT
.NONE
);
194 turnTaxonpilosellaMenuItem
.addSelectionListener(new SelectionAdapter() {
195 public void widgetSelected(final SelectionEvent e
) {
196 new MoveDialogView(getSite().getShell());
197 // MessageDialog.openInformation(getSite().getShell(),"Readme Editor","View Action executed");
198 MoveDialogView dialog
= new MoveDialogView(getSite().getShell());
202 turnTaxonpilosellaMenuItem
.setText("Turn taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\" into a synonym");
205 // newItemToolItem.setText("New item");
206 itemMove
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/move_no_bg.gif"));
208 final ToolItem itemDelete
= new ToolItem(toolBar
, SWT
.NONE
);
209 itemDelete
.setToolTipText("Delete taxon \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
210 itemDelete
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/delete.gif"));
212 final ToolItem separator1
= new ToolItem(toolBar
, SWT
.SEPARATOR
);
214 final ToolItem itemAddRelationship
= new ToolItem(toolBar
, SWT
.DROP_DOWN
);
215 itemAddRelationship
.setToolTipText("Add nom. or tax. relation to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
216 itemAddRelationship
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/rel_no_bg.gif"));
218 final Menu menuAddRel
= new Menu(toolBar
);
219 menuAddRel
.setData("x", null);
220 addDropDown(itemAddRelationship
, menuAddRel
);
222 final MenuItem testMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
223 testMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/unknown_no_bg.gif"));
224 testMenuItem
.setText("Add synonymy (type unknown)");
226 final MenuItem addHomotypicSynonymMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
227 addHomotypicSynonymMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homosyn_no_bg.gif"));
228 addHomotypicSynonymMenuItem
.setText("Add homotypic synonym");
230 final MenuItem addHeterotypicSynoynmMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
231 addHeterotypicSynoynmMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/heterosyn_no_bg.gif"));
232 addHeterotypicSynoynmMenuItem
.setText("Add heterotypic synoynm");
234 final MenuItem addBasionymMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
235 addBasionymMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/basionym_no_bg.gif"));
236 addBasionymMenuItem
.setText("Add basionym");
238 final MenuItem addReplacedSynonymMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
239 addReplacedSynonymMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/repsyn_no_bg.gif"));
240 addReplacedSynonymMenuItem
.setText("Add replaced synonym");
242 final MenuItem addHomonymMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
243 addHomonymMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homonym_no_bg.gif"));
244 addHomonymMenuItem
.setText("Add homonym");
246 final MenuItem addOrthographicVariantMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
247 addOrthographicVariantMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/orthovariant_no_bg.gif"));
248 addOrthographicVariantMenuItem
.setText("Add orthographic variant");
250 final MenuItem addMisappliedNameMenuItem
= new MenuItem(menuAddRel
, SWT
.NONE
);
251 addMisappliedNameMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/misapplied_no_bg.gif"));
252 addMisappliedNameMenuItem
.setText("Add misapplied name");
254 final MenuItem addConceptRelationMenuItem_1
= new MenuItem(menuAddRel
, SWT
.CASCADE
);
255 addConceptRelationMenuItem_1
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/concept_no_bg.gif"));
256 addConceptRelationMenuItem_1
.setText("Add concept relation");
258 final Menu menu
= new Menu(addConceptRelationMenuItem_1
);
259 addConceptRelationMenuItem_1
.setMenu(menu
);
261 final MenuItem checkboxMenuItem
= new MenuItem(menu
, SWT
.CHECK
);
262 checkboxMenuItem
.setText("congruent");
264 final MenuItem checkboxMenuItem_1
= new MenuItem(menu
, SWT
.CHECK
);
265 checkboxMenuItem_1
.setSelection(true);
266 checkboxMenuItem_1
.setText("included in");
268 final MenuItem checkboxMenuItem_2
= new MenuItem(menu
, SWT
.CHECK
);
269 checkboxMenuItem_2
.setText("includes");
271 final MenuItem checkboxMenuItem_3
= new MenuItem(menu
, SWT
.CHECK
);
272 checkboxMenuItem_3
.setText("overlaps");
274 final MenuItem checkboxMenuItem_4
= new MenuItem(menu
, SWT
.CHECK
);
275 checkboxMenuItem_4
.setText("excludes");
277 final MenuItem checkboxMenuItem_5
= new MenuItem(menu
, SWT
.CHECK
);
278 checkboxMenuItem_5
.setSelection(true);
279 checkboxMenuItem_5
.setText("doubtful");
281 final ToolItem separator2
= new ToolItem(toolBar
, SWT
.SEPARATOR
);
283 final ToolItem itemAddTaxon
= new ToolItem(toolBar
, SWT
.DROP_DOWN
);
284 itemAddTaxon
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/add_no_bg2.gif"));
285 itemAddTaxon
.setToolTipText("Add new taxon");
287 final Menu menuAdd
= new Menu(toolBar
);
288 menuAdd
.setData("x", null);
289 addDropDown(itemAddTaxon
, menuAdd
);
291 final MenuItem addTaxonToMenuItem
= new MenuItem(menuAdd
, SWT
.NONE
);
292 addTaxonToMenuItem
.setText("Add new taxon to \"Pilosella fuscoatra (Nägeli & Peter) Soják\"");
294 final MenuItem addNewTaxonMenuItem
= new MenuItem(menuAdd
, SWT
.NONE
);
295 addNewTaxonMenuItem
.setText("Add new taxon to \"Pilosella fuscoatra coll.\"");
297 final Composite composite
= new Composite(parent
, SWT
.NONE
);
298 composite
.setLayoutData(new GridData(SWT
.FILL
, SWT
.FILL
, true, true));
299 composite
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
300 final GridLayout gridLayout_2
= new GridLayout();
301 gridLayout_2
.horizontalSpacing
= 3;
302 gridLayout_2
.numColumns
= 3;
303 composite
.setLayout(gridLayout_2
);
305 text_3
= new Text(composite
, SWT
.WRAP
);
306 text_3
.setText("Pilosella fuscoatra (Nägeli & Peter) Soják in Preslia 43: 184. 1971 ");
307 text_3
.setFont(SWTResourceManager
.getFont("Georgia", 12, SWT
.NONE
));
308 text_3
.setLayoutData(new GridData(SWT
.FILL
, SWT
.CENTER
, true, false, 2, 1));
309 text_3
.addFocusListener(new FocusListener() {
311 public void focusGained(FocusEvent e
) {
312 text_3
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
315 public void focusLost(FocusEvent e
) {
316 text_3
.setBackground(null);
321 table_1
= new Table(composite
, SWT
.BORDER
);
322 table_1
.setLinesVisible(true);
323 table_1
.setLayoutData(new GridData(SWT
.RIGHT
, SWT
.FILL
, true, true, 1, 7));
325 final TableColumn newColumnTableColumn
= new TableColumn(table_1
, SWT
.NONE
);
326 newColumnTableColumn
.setWidth(100);
327 newColumnTableColumn
.setText("New column");
329 final TableColumn newColumnTableColumn_1
= new TableColumn(table_1
, SWT
.NONE
);
330 newColumnTableColumn_1
.setWidth(100);
331 newColumnTableColumn_1
.setText("New column");
333 final TableItem newItemTableItem
= new TableItem(table_1
, SWT
.BORDER
);
334 newItemTableItem
.setText(0, "Rank");
335 newItemTableItem
.setText(1, "species");
336 newItemTableItem
.setText("Rank");
338 final TableItem newItemTableItem_1
= new TableItem(table_1
, SWT
.BORDER
);
339 newItemTableItem_1
.setText(1, "Pilosella");
340 newItemTableItem_1
.setText(0, "Genus");
342 final TableItem newItemTableItem_2
= new TableItem(table_1
, SWT
.BORDER
);
343 newItemTableItem_2
.setText(1, "fuscoatra");
344 newItemTableItem_2
.setText(0, "Species epithet");
346 final TableItem newItemTableItem_3
= new TableItem(table_1
, SWT
.BORDER
);
347 newItemTableItem_3
.setText(1, "Nägeli & Peter");
348 newItemTableItem_3
.setText(0, "Author team");
350 final TableItem newItemTableItem_4
= new TableItem(table_1
, SWT
.BORDER
);
351 newItemTableItem_4
.setText("...");
352 // newItemTableItem_3.setText("Author team");
353 // newItemTableItem_2.setText("Species epithet");
354 // newItemTableItem_1.setText("Genus");
356 final Label labelWithMenu
= new Label(composite
, SWT
.NONE
);
357 labelWithMenu
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
358 labelWithMenu
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homosyn_no_bg.gif"));
359 final GridData gd_labelWithMenu
= new GridData(SWT
.LEFT
, SWT
.TOP
, false, false);
360 labelWithMenu
.setLayoutData(gd_labelWithMenu
);
362 text_1
= new Text(composite
, SWT
.WRAP
);
363 final GridData gd_text_1
= new GridData(SWT
.FILL
, SWT
.CENTER
, true, false);
364 gd_text_1
.widthHint
= 300;
365 text_1
.setLayoutData(gd_text_1
);
366 text_1
.setFont(SWTResourceManager
.getFont("Georgia", 11, SWT
.BOLD
| SWT
.ITALIC
));
367 text_1
.setText("Hieracium fuscoatrum Nägeli & Peter, Hierac. Mitt.-Eur. 1: 315. 1885");
368 text_1
.addFocusListener(new FocusListener() {
370 public void focusGained(FocusEvent e
) {
371 text_1
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
374 public void focusLost(FocusEvent e
) {
375 text_1
.setBackground(null);
381 final Label label_1
= new Label(composite
, SWT
.NONE
);
382 label_1
.setLayoutData(new GridData(SWT
.LEFT
, SWT
.TOP
, false, false));
383 label_1
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/heterosyn_no_bg.gif"));
384 label_1
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
386 hieraciumAurantiacumSubspText
= new Text(composite
, SWT
.WRAP
);
387 final GridData gd_hieraciumAurantiacumSubspText
= new GridData(SWT
.FILL
, SWT
.CENTER
, true, false);
388 gd_hieraciumAurantiacumSubspText
.widthHint
= 300;
389 hieraciumAurantiacumSubspText
.setLayoutData(gd_hieraciumAurantiacumSubspText
);
390 hieraciumAurantiacumSubspText
.setFont(SWTResourceManager
.getFont("Georgia", 11, SWT
.NONE
));
391 hieraciumAurantiacumSubspText
.setText("Hieracium aurantiacum subsp. chaetodermum Pohle & Zahn in Allg. Bot. Z. Syst. 13: 110. 1907");
392 hieraciumAurantiacumSubspText
.addFocusListener(new FocusListener() {
394 public void focusGained(FocusEvent e
) {
395 hieraciumAurantiacumSubspText
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
398 public void focusLost(FocusEvent e
) {
399 hieraciumAurantiacumSubspText
.setBackground(null);
405 final Label label_2
= new Label(composite
, SWT
.NONE
);
406 label_2
.setLayoutData(new GridData(SWT
.LEFT
, SWT
.TOP
, false, false));
407 label_2
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
408 label_2
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/heterosyn_no_bg.gif"));
410 // addDropDown(label_2, menuAddRel);
412 hieraciumFuscoatrumSubspText
= new Text(composite
, SWT
.WRAP
);
413 final GridData gd_hieraciumFuscoatrumSubspText
= new GridData(SWT
.FILL
, SWT
.CENTER
, true, false);
414 gd_hieraciumFuscoatrumSubspText
.widthHint
= 300;
415 hieraciumFuscoatrumSubspText
.setLayoutData(gd_hieraciumFuscoatrumSubspText
);
416 hieraciumFuscoatrumSubspText
.setText("Hieracium fuscoatrum subsp. chaetodermum (Pohle & Zahn) Zahn in Engler, Pflanzenr. 82: 1267. 1923");
417 hieraciumFuscoatrumSubspText
.setFont(SWTResourceManager
.getFont("Georgia", 11, SWT
.NONE
));
418 hieraciumFuscoatrumSubspText
.addFocusListener(new FocusListener() {
420 public void focusGained(FocusEvent e
) {
421 hieraciumFuscoatrumSubspText
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
424 public void focusLost(FocusEvent e
) {
425 hieraciumFuscoatrumSubspText
.setBackground(null);
430 final Label label
= new Label(composite
, SWT
.NONE
);
431 label
.setLayoutData(new GridData(SWT
.LEFT
, SWT
.TOP
, false, false));
432 label
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
433 label
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/basionym_no_bg.gif"));
435 hieraciumRubroonegenseNorrlText
= new Text(composite
, SWT
.WRAP
);
436 hieraciumRubroonegenseNorrlText
.setText("Hieracium rubroonegense Norrl. in Acta Soc. Fauna Fl. Fenn. 26(7): 61. 1904");
437 hieraciumRubroonegenseNorrlText
.setFont(SWTResourceManager
.getFont("Georgia", 11, SWT
.NONE
));
438 hieraciumRubroonegenseNorrlText
.addFocusListener(new FocusListener() {
440 public void focusGained(FocusEvent e
) {
441 hieraciumRubroonegenseNorrlText
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
444 public void focusLost(FocusEvent e
) {
445 hieraciumRubroonegenseNorrlText
.setBackground(null);
449 final GridData gd_hieraciumRubroonegenseNorrlText
= new GridData(SWT
.FILL
, SWT
.CENTER
, true, false);
450 gd_hieraciumRubroonegenseNorrlText
.widthHint
= 300;
451 hieraciumRubroonegenseNorrlText
.setLayoutData(gd_hieraciumRubroonegenseNorrlText
);
453 final Label label_3
= new Label(composite
, SWT
.NONE
);
454 label_3
.setLayoutData(new GridData(SWT
.LEFT
, SWT
.TOP
, false, false));
455 label_3
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/repsyn_no_bg.gif"));
456 label_3
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
458 hieraciumFuscoatrumSubspText_1
= new Text(composite
, SWT
.WRAP
);
459 hieraciumFuscoatrumSubspText_1
.setText("Hieracium fuscoatrum subsp. rubroonegense (Norrl.) Zahn in Engler, Pflanzenr. 82: 1267. 1923");
460 hieraciumFuscoatrumSubspText_1
.setFont(SWTResourceManager
.getFont("Georgia", 11, SWT
.NONE
));
461 hieraciumFuscoatrumSubspText_1
.addFocusListener(new FocusListener() {
463 public void focusGained(FocusEvent e
) {
464 hieraciumFuscoatrumSubspText_1
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WIDGET_LIGHT_SHADOW
));
467 public void focusLost(FocusEvent e
) {
468 hieraciumFuscoatrumSubspText_1
.setBackground(null);
472 final GridData gd_hieraciumFuscoatrumSubspText_1
= new GridData(SWT
.FILL
, SWT
.CENTER
, true, false);
473 gd_hieraciumFuscoatrumSubspText_1
.widthHint
= 300;
474 hieraciumFuscoatrumSubspText_1
.setLayoutData(gd_hieraciumFuscoatrumSubspText_1
);
476 final Label label_4
= new Label(composite
, SWT
.NONE
);
477 label_4
.setLayoutData(new GridData(SWT
.LEFT
, SWT
.TOP
, false, false));
478 label_4
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/unknown_no_bg.gif"));
479 label_4
.setBackground(Display
.getCurrent().getSystemColor(SWT
.COLOR_WHITE
));
480 //container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_GRAY));
482 final Menu menu1
= new Menu(labelWithMenu
);
483 labelWithMenu
.setMenu(menu1
);
484 labelWithMenu
.addMouseListener(new MouseListener() {
486 public void mouseDoubleClick(MouseEvent e
) {
487 // TODO Auto-generated method stub
491 public void mouseDown(MouseEvent e
) {
492 menu1
.setVisible(true);
495 public void mouseUp(MouseEvent e
) {
496 // TODO Auto-generated method stub
502 final MenuItem deletehieraciumFuscoatrumMenuItem
= new MenuItem(menu1
, SWT
.NONE
);
503 deletehieraciumFuscoatrumMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/delete.gif"));
504 deletehieraciumFuscoatrumMenuItem
.setText("Delete \"Hieracium fuscoatrum Nägeli & Peter\" from this taxon");
506 new MenuItem(menu1
, SWT
.SEPARATOR
);
508 final MenuItem moveMenuItem
= new MenuItem(menu1
, SWT
.NONE
);
509 moveMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/move_no_bg.gif"));
510 moveMenuItem
.setText("Move \"Hieracium fuscoatrum Nägeli & Peter\" to another taxon");
512 final MenuItem makehieraciumFuscoatrumMenuItem
= new MenuItem(menu1
, SWT
.NONE
);
513 makehieraciumFuscoatrumMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/a_no_bg.gif"));
514 makehieraciumFuscoatrumMenuItem
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into an accepted name");
516 new MenuItem(menu1
, SWT
.SEPARATOR
);
518 final MenuItem turnhieraciumFuscoatrumMenuItem
= new MenuItem(menu1
, SWT
.NONE
);
519 turnhieraciumFuscoatrumMenuItem
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/unknown_no_bg.gif"));
520 turnhieraciumFuscoatrumMenuItem
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a synonym (type unknown)");
522 final MenuItem turnhieraciumFuscoatrumMenuItem_1
= new MenuItem(menu1
, SWT
.NONE
);
523 turnhieraciumFuscoatrumMenuItem_1
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homosyn_no_bg.gif"));
524 turnhieraciumFuscoatrumMenuItem_1
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homotypic synonym");
526 final MenuItem turnhieraciumFuscoatrumMenuItem_2
= new MenuItem(menu1
, SWT
.NONE
);
527 turnhieraciumFuscoatrumMenuItem_2
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/heterosyn_no_bg.gif"));
528 turnhieraciumFuscoatrumMenuItem_2
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a heterotypic synoynm");
530 final MenuItem turnhieraciumFuscoatrumMenuItem_3
= new MenuItem(menu1
, SWT
.NONE
);
531 turnhieraciumFuscoatrumMenuItem_3
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/basionym_no_bg.gif"));
532 turnhieraciumFuscoatrumMenuItem_3
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a basionym");
534 final MenuItem turnhieraciumFuscoatrumMenuItem_4
= new MenuItem(menu1
, SWT
.NONE
);
535 turnhieraciumFuscoatrumMenuItem_4
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/repsyn_no_bg.gif"));
536 turnhieraciumFuscoatrumMenuItem_4
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a replaced synonym");
538 final MenuItem turnhieraciumFuscoatrumMenuItem_5
= new MenuItem(menu1
, SWT
.NONE
);
539 turnhieraciumFuscoatrumMenuItem_5
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/homonym_no_bg.gif"));
540 turnhieraciumFuscoatrumMenuItem_5
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a homonym");
542 final MenuItem turnhieraciumFuscoatrumMenuItem_6
= new MenuItem(menu1
, SWT
.NONE
);
543 turnhieraciumFuscoatrumMenuItem_6
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/orthovariant_no_bg.gif"));
544 turnhieraciumFuscoatrumMenuItem_6
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a orthographic variant");
546 final MenuItem turnhieraciumFuscoatrumMenuItem_7
= new MenuItem(menu1
, SWT
.NONE
);
547 turnhieraciumFuscoatrumMenuItem_7
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/misapplied_no_bg.gif"));
548 turnhieraciumFuscoatrumMenuItem_7
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a misapplied name");
550 final MenuItem turnhieraciumFuscoatrumMenuItem_8
= new MenuItem(menu1
, SWT
.NONE
);
551 turnhieraciumFuscoatrumMenuItem_8
.setImage(ResourceManager
.getPluginImage(Activator
.getDefault(), "icons/concept_no_bg.gif"));
552 turnhieraciumFuscoatrumMenuItem_8
.setText("Turn \"Hieracium fuscoatrum Nägeli & Peter\" into a concept relation");
554 SourceViewer sourceviewer
= new SourceViewer(composite
, null, SWT
.WRAP
| SWT
.FULL_SELECTION
);
555 sourceviewer
.setAnnotationHover(null);
556 styledText
= sourceviewer
.getTextWidget();
557 final GridData gd_styledText
= new GridData(SWT
.FILL
, SWT
.TOP
, true, false);
558 gd_styledText
.heightHint
= 41;
559 gd_styledText
.widthHint
= 450;
560 styledText
.setLayoutData(gd_styledText
);
561 sourceviewer
.setDocument(doc
);
562 sourceviewer
.configure(new MySourceViewerConfig());
563 // sourceviewer.setTabsToSpacesConverter(null);
566 // final Menu menu = new Menu(toolBar);
567 // addDropDown(newItemToolItem, menu);
570 // Action testAction = new OpenNameEditorAction();
571 // testAction.setImageDescriptor(ResourceManager.getPluginImageDescriptor(Activator.getDefault(), "icons/edit_16x16.gif"));
572 // testAction.setToolTipText("Add relation");
573 // toolBar.add(testAction);
578 // private void populateForm() {
580 // String fulltext = "";
582 // if (taxonname.getGenus() != null) {
583 // fulltext = taxonname.getGenus();
586 // if (taxonname.getSpecificEpithet() != null) {
587 // fulltext += " " + taxonname.getSpecificEpithet();
590 // if (taxonname.getAuthorship() != null) {
591 // fulltext += " " + taxonname.getAuthorship();
594 //// txtPlay.setText(fulltext);
595 //// txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");
597 // this.setPartName(taxonname.getName());
600 private void populateForm() {
601 this.setPartName("Pilosella fuscoatra (Nägeli & Peter) Soják");
605 public void setFocus() {
610 public void doSave(IProgressMonitor monitor
) {
611 // Do the Save operation
615 public void doSaveAs() {
616 // Do the Save As operation
620 public void init(IEditorSite site
, IEditorInput input
) throws PartInitException
{
622 if (!(input
instanceof IEditorInput
))
623 throw new PartInitException(
624 "Invalid Input: Must be IFileEditorInput");
626 if (input
.getAdapter(TaxonName
.class) != null) {
627 taxonname
= (TaxonName
) input
.getAdapter(TaxonName
.class);
628 // taxonname.addCdmEventListener(this);
639 public boolean isDirty() {
644 public boolean isSaveAsAllowed() {
648 public void propertyChange(PropertyChangeEvent evt
) {
649 // TaxonName taxonname = (TaxonName)evt.getNewValue();
650 this.taxonname
= (TaxonName
)evt
.getNewValue();
651 System
.out
.println(((TaxonName
)evt
.getNewValue()).getName());
654 // for individual fields, do something like:
655 // if (evt.getPropertyName().equalsIgnoreCase("genus"))
656 // txtGenus.setText ...
659 // public void onDelete(ICdmEventListenerRegistration arg0) {
660 // // TODO Auto-generated method stub
664 public void onInsert(Object arg0
) {
665 // TODO Auto-generated method stub
669 public void onLoad(Object arg0
) {
670 // TODO Auto-generated method stub
674 // public void onUpdate(ICdmEventListenerRegistration arg0) {
675 // // TODO Auto-generated method stub
679 private static void addDropDown(final ToolItem item
, final Menu menu
) {
680 item
.addListener(SWT
.Selection
, new Listener() {
681 public void handleEvent(Event event
) {
682 if (event
.detail
== SWT
.ARROW
) {
683 Rectangle rect
= item
.getBounds();
684 Point pt
= new Point(rect
.x
, rect
.y
+ rect
.height
);
685 pt
= item
.getParent().toDisplay(pt
);
686 menu
.setLocation(pt
.x
, pt
.y
);
687 menu
.setVisible(true);