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/Prototype1.product -text
eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/build.properties -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/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/prototype1/Activator.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/Application.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationActionBarAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/ApplicationWorkbenchWindowAdvisor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/Perspective.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/controller/CreateNameAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/controller/OpenNameEditorAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/controller/SaveNameAction.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/model/NameEditorInput.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/model/ObjectList.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/view/CreateNameView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/view/EditNameProperties.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/view/LastNameView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/view/MyCompletionProcessor.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/view/MyRuleScanner.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/view/MySourceViewerConfig.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/view/NameEditorView.java -text
-eclipseprojects/eu.etaxonomy.taxeditor.designproposal1/src/eu/etaxonomy/taxeditor/prototype1/view/NameListView.java -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
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Mvctest Plug-in
-Bundle-SymbolicName: eu.etaxonomy.taxeditor.prototype1;singleton:=true
+Bundle-Name: Editor Design Proposal 1
+Bundle-SymbolicName: eu.etaxonomy.taxeditor.designproposal1;singleton:=true
Bundle-Version: 1.0.0
-Bundle-Activator: eu.etaxonomy.taxeditor.prototype1.Activator
+Bundle-Activator: eu.etaxonomy.taxeditor.designproposal1.Activator
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.ui.forms,
+++ /dev/null
-<?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
point="org.eclipse.core.runtime.applications">\r
<application>\r
<run\r
- class="eu.etaxonomy.taxeditor.prototype1.Application">\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.prototype1.Perspective"\r
+ class="eu.etaxonomy.taxeditor.designproposal1.Perspective"\r
fixed="false"\r
id="eu.etaxonomy.mvctest.perspective"\r
name="Perspective">\r
point="org.eclipse.ui.views">\r
<view\r
name="Create Name"\r
- class="eu.etaxonomy.taxeditor.prototype1.view.CreateNameView"\r
+ class="eu.etaxonomy.taxeditor.designproposal1.view.CreateNameView"\r
id="eu.etaxonomy.mvctest.view">\r
</view>\r
<view\r
- class="eu.etaxonomy.taxeditor.prototype1.view.NameListView"\r
+ class="eu.etaxonomy.taxeditor.designproposal1.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
+ class="eu.etaxonomy.taxeditor.designproposal1.view.LastNameView"\r
id="eu.etaxonomy.mvctest.view.LastNameView"\r
name="Last Name Created">\r
</view>\r
<extension\r
point="org.eclipse.ui.editors">\r
<editor\r
- class="eu.etaxonomy.taxeditor.prototype1.view.NameEditorView"\r
+ class="eu.etaxonomy.taxeditor.designproposal1.view.NameEditorView"\r
icon="icons/edit_16x16.gif"\r
id="eu.etaxonomy.taxeditor.prototype1.view.NameEditorView"\r
name="New EditorPart">\r
+++ /dev/null
-package eu.etaxonomy.taxeditor.prototype1;\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
-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
- \r
- private ObjectList objectList = new ObjectList();\r
- \r
- /**\r
- * The constructor\r
- */\r
- public Activator() {\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 getObjectList() {\r
- return this.objectList;\r
- } \r
-}\r
+++ /dev/null
-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();
- }
- });
- }
-}
+++ /dev/null
-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);
- }
-
-}
+++ /dev/null
-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;
- }
-
-}
+++ /dev/null
-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");
- }
-
-}
+++ /dev/null
-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();
- IFolderLayout navigatorFolder = layout.createFolder("Navigator",
- IPageLayout.LEFT, 0.25f, editorArea);
- navigatorFolder.addView(NameListView.ID);
- // navigatorFolder.addView(LastNameView.ID);
- layout.getViewLayout(NameListView.ID).setCloseable(false);
- // navigatorFolder.addView(LastNameView.ID);
- }
-}
+++ /dev/null
-package eu.etaxonomy.taxeditor.prototype1.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.api.service.INameService;\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\r
-\r
-public class CreateNameAction extends Action {\r
-\r
- private TaxonName tn;\r
- \r
- public CreateNameAction(String genus, String spEpithet) {\r
- \r
- INameService ns = Activator.getDefault().getApplicationController().getNameService();\r
- this.tn = ns.getNewTaxonName(null);\r
- tn.setGenus(genus);\r
- tn.setSpecificEpithet(spEpithet);\r
- }\r
- \r
- /* (non-Javadoc)\r
- * @see org.eclipse.jface.action.Action#run()\r
- */\r
- public void run() {\r
- //Application.\r
- Activator.getDefault().getApplicationController().getNameService().saveTaxonName(tn);\r
- Activator.getDefault().getObjectList().add(tn);\r
- }\r
-}\r
+++ /dev/null
-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.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\r
-import eu.etaxonomy.taxeditor.prototype1.model.NameEditorInput;\r
-import eu.etaxonomy.taxeditor.prototype1.view.NameEditorView;\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
- 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
+++ /dev/null
-package eu.etaxonomy.taxeditor.prototype1.controller;\r
-\r
-import org.eclipse.jface.action.Action;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\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
+++ /dev/null
-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
-\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
+++ /dev/null
-package eu.etaxonomy.taxeditor.prototype1.model;\r
-\r
-import java.beans.PropertyChangeListener;\r
-import java.beans.PropertyChangeSupport;\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import eu.etaxonomy.cdm.model.common.VersionableEntity;\r
-\r
-public class ObjectList {\r
- \r
- private List objectList = new ArrayList();\r
- \r
- protected transient PropertyChangeSupport listeners = new PropertyChangeSupport(this);\r
- \r
- \r
- //public class ObjectList extends PlatformObject { \r
- \r
- /**\r
- * Adds a property-change listener.\r
- * @param l the listener\r
- */\r
- public void addPropertyChangeListener(PropertyChangeListener l){\r
- if (l == null) {\r
- throw new IllegalArgumentException();\r
- }\r
- this.listeners.addPropertyChangeListener(l);\r
- }\r
- \r
- \r
- public void removePropertyChangeListener(PropertyChangeListener l){\r
- this.listeners.removePropertyChangeListener(l);\r
- }\r
- \r
- /**\r
- * Notifies all listeners to a model-change\r
- * @param prop the property-id\r
- * @param old the old-value\r
- * @param newValue the new value\r
- */\r
- protected void firePropertyChange(String prop, Object old, Object newValue){\r
- if (this.listeners.hasListeners(prop)) {\r
- this.listeners.firePropertyChange(prop, old, newValue);\r
- }\r
- }\r
-\r
-\r
- /**\r
- * @param o\r
- * @return\r
- * @see java.util.List#add(java.lang.Object)\r
- */\r
- public void add(VersionableEntity ve) {\r
- this.objectList.add(ve);\r
- // model has changed --> fire\r
- firePropertyChange("ITEM_ADD", null, ve); //$NON-NLS-1$\r
- }\r
- \r
- \r
- /**\r
- * @param o\r
- * @return\r
- * @see java.util.List#remove(java.lang.Object)\r
- */\r
- public void remove(Object o) {\r
- this.objectList.remove(o);\r
-// model has changed --> fire\r
- firePropertyChange("ITEM_REMOVE", o, null); //$NON-NLS-1$\r
- }\r
-\r
-\r
- /**\r
- * @return\r
- * @see java.util.List#toArray()\r
- */\r
- public Object[] toArray() {\r
- return (Object[]) this.objectList.toArray(new Object[this.objectList.size()]);\r
- }\r
-}\r
+++ /dev/null
-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
+++ /dev/null
-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
+++ /dev/null
-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().getObjectList().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
+++ /dev/null
-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
-\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
+++ /dev/null
-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
+++ /dev/null
-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
+++ /dev/null
-package eu.etaxonomy.taxeditor.prototype1.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.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.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.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.Label;\r
-import org.eclipse.swt.widgets.Shell;\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
-import com.swtdesigner.ResourceManager;\r
-\r
-//import org.eclipse.ui.texteditor.AbstractTextEditor;\r
-\r
-import eu.etaxonomy.cdm.model.name.TaxonName;\r
-import eu.etaxonomy.taxeditor.prototype1.Activator;\r
-import eu.etaxonomy.taxeditor.prototype1.controller.SaveNameAction;\r
-\r
-public class NameEditorView extends EditorPart implements PropertyChangeListener {\r
-\r
- private StyledText styledText;\r
- private TaxonName taxonname;\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
- /**\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
- final GridLayout gridLayout = new GridLayout();\r
- gridLayout.numColumns = 2;\r
- container.setLayout(gridLayout);\r
-\r
- final Label lblGenus = new Label(container, SWT.NONE);\r
- lblGenus.setText("Genus:");\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.setText("Sp. Epithet:");\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.setText("Authorship:");\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
- new Label(container, SWT.NONE);\r
-\r
- final Button btnSaveName = new Button(container, SWT.NONE);\r
-\r
- btnSaveName.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 = new GridData(SWT.RIGHT, SWT.CENTER, false, false);\r
- btnSaveName.setLayoutData(gd_btnSaveName);\r
- btnSaveName.setText("Save Name");\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
- Document doc = new Document(taxonname.getName());\r
-\r
- SourceViewer sourceviewer = new SourceViewer(container, null, SWT.BORDER);;\r
- sourceviewer.setTabsToSpacesConverter(null);\r
- sourceviewer.setAnnotationHover(null);\r
- styledText = sourceviewer.getTextWidget();\r
- final GridData gd_styledText_1 = new GridData(SWT.FILL, SWT.CENTER, \r
- false, false, 2, 1);\r
- gd_styledText_1.heightHint = 90;\r
- styledText.setLayoutData(gd_styledText_1);\r
- sourceviewer.setDocument(doc);\r
- sourceviewer.configure(new MySourceViewerConfig());\r
- \r
- populateForm(); \r
- }\r
-\r
- private void populateForm() {\r
- \r
- String fulltext = "";\r
- \r
- if (taxonname.getGenus() != null) {\r
- txtGenus.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
-// txtPlay.setText(fulltext);\r
-// txtPlay.setToolTipText("Joe mama\njoe daddy\njoe gramammy");\r
- \r
- this.setPartName(taxonname.getName());\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.addPropertyChangeListener(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
-}\r
+++ /dev/null
-package eu.etaxonomy.taxeditor.prototype1.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.Viewer;\r
-import org.eclipse.jface.viewers.ViewerLabel;\r
-import org.eclipse.swt.SWT;\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.Composite;\r
-import org.eclipse.swt.widgets.ExpandBar;\r
-import org.eclipse.swt.widgets.ExpandItem;\r
-import org.eclipse.ui.part.ViewPart;\r
-\r
-import eu.etaxonomy.cdm.api.service.INameService;\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
-\r
-\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 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
- class ViewContentProvider implements IStructuredContentProvider {\r
-\r
- public Object[] getElements(Object inputElement) {\r
- INameService ns = Activator.getDefault().getApplicationController().getNameService();\r
- return ns.getAllNames().toArray();\r
- }\r
-\r
- public void dispose() {\r
- // TODO Auto-generated method stub\r
- }\r
-\r
- public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {\r
- // TODO Auto-generated method stub\r
-// Notifies this content provider that the given viewer's input\r
-// has been switched to a different element.\r
- }\r
- }\r
- \r
- class ViewLabelProvider extends LabelProvider implements ITableLabelProvider {\r
-\r
- public Image getColumnImage(Object element, int columnIndex) {\r
- // TODO Auto-generated method stub\r
- return null;\r
- }\r
-\r
- public String getColumnText(Object element, int columnIndex) {\r
- return ((TaxonName) element).getName();\r
- }\r
-\r
- public void updateLabel(ViewerLabel label, Object element) {\r
- // TODO Auto-generated method stub\r
- \r
- }\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
- 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.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
- nameListExpandItem = new ExpandItem(expandBar, SWT.NONE, 0);\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
- GridLayout layout = new GridLayout();\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.MULTI | SWT.H_SCROLL\r
- | SWT.V_SCROLL);\r
- viewer.setContentProvider(new ViewContentProvider());\r
- viewer.setLabelProvider(new ViewLabelProvider());\r
- viewer.setInput(getViewSite());\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.setHeight(nameListComposite.computeSize(\r
- SWT.DEFAULT, SWT.DEFAULT).y);\r
- nameListExpandItem.setControl(nameListComposite);\r
- \r
- }\r
- \r
- private void createRecentNamesComposite() {\r
- recentNamesExpandItem = new ExpandItem(expandBar, SWT.NONE, 1);\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
-\r
- recentNamesExpandItem.setHeight(recentNamesComposite.computeSize(\r
- SWT.DEFAULT, SWT.DEFAULT).y);\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.setText("Search");\r
- searchComposite = 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
- searchComposite.setLayout(layout);\r
-\r
- searchExpandItem.setHeight(searchComposite.computeSize(SWT.DEFAULT,\r
- SWT.DEFAULT).y);\r
- searchExpandItem.setControl(searchComposite);\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
- this.viewer.refresh(taxonname);\r
- }\r
- \r
-}\r