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.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.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.Shell;\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
\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
\r
-public class NameEditorView extends EditorPart implements PropertyChangeListener {\r
+public class NameEditorView extends EditorPart implements ICdmEventListener {\r
\r
private StyledText styledText;\r
private TaxonName taxonname;\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
+ public static final String ID = "eu.etaxonomy.taxeditor.designproposal1.view.nameeditorview"; //$NON-NLS-1$\r
\r
/**\r
* Create contents of the editor part\r
@Override\r
public void createPartControl(Composite parent) {\r
Composite container = new Composite(parent, SWT.NONE);\r
+ container.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
final GridLayout gridLayout = new GridLayout();\r
gridLayout.numColumns = 2;\r
container.setLayout(gridLayout);\r
\r
+ final ToolBar toolBar = new ToolBar(container, SWT.NONE);\r
+ toolBar.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+ toolBar.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));\r
+\r
+ final ToolItem itemAddRelationship = new ToolItem(toolBar, SWT.DROP_DOWN);\r
+ itemAddRelationship.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/add.gif"));\r
+\r
+ final Menu menu = new Menu(toolBar);\r
+ menu.setData("x", null);\r
+ addDropDown(itemAddRelationship, menu);\r
+\r
+ final ToolItem itemMove = new ToolItem(toolBar, SWT.DROP_DOWN);\r
+ itemMove.setSelection(true);\r
+// }\r
+// });\r
+// newItemToolItem.setText("New item");\r
+ itemMove.setImage(ResourceManager.getPluginImage(Activator.getDefault(), "icons/move.gif"));\r
+ new Label(container, SWT.NONE);\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
+\r
final Label lblGenus = new Label(container, SWT.NONE);\r
lblGenus.setText("Genus:");\r
\r
\r
if (input.getAdapter(TaxonName.class) != null) {\r
taxonname = (TaxonName) input.getAdapter(TaxonName.class);\r
- taxonname.addPropertyChangeListener(this);\r
+ taxonname.addCdmEventListener(this);\r
} else {\r
\r
taxonname = null;\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