eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ParseListener.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SelectTaxonDialog.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/SimpleSelectionProvider.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/TemporaryTaxon.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/UndoView.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/ViewerConfiguration.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/editor/WarningAnnotation.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHeterotypicSynonymHandler.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/CreateHomotypicSynonymHandler.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/DeleteTaxonHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/NewTaxonHandler.java -text
-eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/OpenTaxonHandler.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditNewTaxonHandler.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/EditTaxonHandler.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/handlers/SaveAllHandler.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/io/InputWizard2.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferenceSearchDescriptor.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/ReferenceSearchDialog.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/reference/SingleRefTypePropertySource.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypeCollectionPropertySource.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypePropertyDescriptor.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/TypePropertySource.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ChooseTypeDesignationWizardPage.java -text
eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/ListTypeWizardPage.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeDesignationWizard.java -text
+eclipseprojects/eu.etaxonomy.taxeditor/src/eu/etaxonomy/taxeditor/propertysheet/type/wizard/TypeListWizard.java -text
// TODO user-friendly failure here\r
e.printStackTrace();\r
} catch (TermNotFoundException e) {\r
+ // TODO Auto-generated catch block\r
e.printStackTrace();\r
}\r
\r
import eu.etaxonomy.taxeditor.datasource.CdmTransactionController;\r
import eu.etaxonomy.taxeditor.editor.AbstractTaxonEditor;\r
import eu.etaxonomy.taxeditor.editor.MultiPageTaxonEditor;\r
+import eu.etaxonomy.taxeditor.editor.TemporaryTaxon;\r
import eu.etaxonomy.taxeditor.editor.description.TaxonDescriptionEditor;\r
-import eu.etaxonomy.taxeditor.editor.name.CdmParserController;\r
import eu.etaxonomy.taxeditor.editor.name.TaxonNameEditor;\r
import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
+import eu.etaxonomy.taxeditor.model.CdmUtil;\r
import eu.etaxonomy.taxeditor.model.NameEditorInput;\r
import eu.etaxonomy.taxeditor.navigation.RecentNamesView;\r
import eu.etaxonomy.taxeditor.navigation.TaxonomicTreeViewer;\r
}\r
\r
public static IEditorPart open(Taxon taxon){\r
- return open(taxon, true);\r
+ \r
+// TemporaryTaxon taxonCopy = TemporaryTaxon.newInstance(taxon);\r
+ Taxon taxonCopy = getEditorTaxon(taxon);\r
+ \r
+ return open(getEditorTaxon(taxon), true);\r
}\r
\r
+ /**\r
+ * @param taxon\r
+ * @return\r
+ */\r
+ private static Taxon getEditorTaxon(Taxon taxon) {\r
+ return (Taxon) CdmUtil.getTaxonService().getTaxonByUuid(taxon.getUuid());\r
+ }\r
+\r
/**\r
* An unitialized taxon is one that hasn't been saved yet. As such, it should appear in neither\r
* the list of recent names nor in the taxonomic tree when opened.\r
CdmTransactionController.commitTransaction();\r
monitor.worked(1);\r
\r
- // Set new data source\r
try {\r
getCdmAppController().changeDataSource(dataSource);\r
} catch (TermNotFoundException e) {\r
+ // TODO Auto-generated catch block\r
e.printStackTrace();\r
- throw new InterruptedException();\r
}\r
monitor.worked(10);\r
\r
} catch (InterruptedException e) {\r
e.printStackTrace();\r
return false;\r
- }\r
+ } \r
return true;\r
}\r
\r
--- /dev/null
+/**\r
+* Copyright (C) 2009 EDIT\r
+* European Distributed Institute of Taxonomy \r
+* http://www.e-taxonomy.eu\r
+* \r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+\r
+package eu.etaxonomy.taxeditor.editor;\r
+\r
+import org.apache.log4j.Logger;\r
+\r
+import eu.etaxonomy.cdm.model.taxon.Taxon;\r
+import eu.etaxonomy.taxeditor.model.CdmUtil;\r
+\r
+/**\r
+ * @author p.ciardelli\r
+ * @created 24.02.2009\r
+ * @version 1.0\r
+ */\r
+public class TemporaryTaxon extends Taxon {\r
+ private static Logger logger = Logger.getLogger(TemporaryTaxon.class);\r
+ \r
+// TemporaryTaxon(Taxon taxon) {\r
+// this.t = CdmUtil.getTaxonService().getTaxonByUuid(taxon.getUuid());\r
+// }\r
+ \r
+ public static TemporaryTaxon newInstance(Taxon taxon) {\r
+ TemporaryTaxon tempTaxon = (TemporaryTaxon) \r
+ CdmUtil.getTaxonService().getTaxonByUuid(taxon.getUuid());\r
+ return tempTaxon;\r
+ }\r
+}\r
* @created 06.02.2009\r
* @version 1.0\r
*/\r
-public class NewTaxonHandler extends AbstractHandler implements IHandler {\r
+public class EditNewTaxonHandler extends AbstractHandler implements IHandler {\r
private static final Logger logger = Logger\r
- .getLogger(NewTaxonHandler.class);\r
+ .getLogger(EditNewTaxonHandler.class);\r
\r
/* (non-Javadoc)\r
* @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
*/\r
+ @Override\r
public Object execute(ExecutionEvent event) throws ExecutionException {\r
\r
EditorController.openUnitializedRootTaxon();\r
* @created 06.02.2009\r
* @version 1.0\r
*/\r
-public class OpenTaxonHandler extends AbstractHandler{\r
+public class EditTaxonHandler extends AbstractHandler{\r
private static final Logger logger = Logger\r
- .getLogger(OpenTaxonHandler.class);\r
+ .getLogger(EditTaxonHandler.class);\r
\r
/* (non-Javadoc)\r
* @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)\r
*/\r
+ @Override\r
public Object execute(ExecutionEvent event) throws ExecutionException {\r
\r
EditorController.open(TreeController.getCurrentSelection(event));\r
import org.eclipse.swt.widgets.Display;\r
\r
import eu.etaxonomy.cdm.api.application.CdmApplicationController;\r
+import eu.etaxonomy.cdm.api.service.IReferenceService;\r
import eu.etaxonomy.cdm.api.service.ITermService;\r
+import eu.etaxonomy.cdm.api.service.ReferenceServiceImpl;\r
import eu.etaxonomy.cdm.model.common.Language;\r
import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;\r
import eu.etaxonomy.cdm.model.common.TermVocabulary;\r
import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;\r
import eu.etaxonomy.cdm.model.name.Rank;\r
+import eu.etaxonomy.cdm.model.name.TypeDesignationStatus;\r
import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
import eu.etaxonomy.cdm.model.taxon.Taxon;\r
import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
\r
private Set<TaxonRelationshipType> conceptRelationshipTypes;\r
\r
+ private TermVocabulary<TypeDesignationStatus> typeStatus;\r
+\r
public static ICdmSessionDataRepository getDefault() {\r
\r
if (repository == null) {\r
}\r
return conceptRelationshipTypes;\r
}\r
+\r
+ /* (non-Javadoc)\r
+ * @see eu.etaxonomy.taxeditor.model.ICdmSessionDataRepository#getTypeDesignationStatus()\r
+ */\r
+ @Override\r
+ public TermVocabulary<TypeDesignationStatus> getTypeDesignationStatus() {\r
+ if (typeStatus == null) {\r
+ typeStatus = getApplicationController().getNameService().\r
+ getTypeDesignationStatusVocabulary();\r
+ }\r
+ return typeStatus;\r
+ }\r
}\r
import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
import eu.etaxonomy.cdm.model.name.NomenclaturalStatusType;\r
import eu.etaxonomy.cdm.model.name.Rank;\r
+import eu.etaxonomy.cdm.model.name.TypeDesignationStatus;\r
import eu.etaxonomy.cdm.model.reference.ReferenceBase;\r
import eu.etaxonomy.cdm.model.taxon.Taxon;\r
import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
public OrderedTermVocabulary<TaxonRelationshipType> getTaxonRelationshipTypes();\r
\r
public Set<TaxonRelationshipType> getConceptRelationshipTypes();\r
+\r
+ public TermVocabulary<TypeDesignationStatus> getTypeDesignationStatus();\r
}\r
return treeViewer;\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
public void setFocus() {\r
// Set the focus\r
}\r
--- /dev/null
+/**\r
+ * Copyright (C) 2007 EDIT\r
+ * European Distributed Institute of Taxonomy \r
+ * http://www.e-taxonomy.eu\r
+ * \r
+ * The contents of this file are subject to the Mozilla Public License Version 1.1\r
+ * See LICENSE.TXT at the top of this package for the full license terms.\r
+ */\r
+package eu.etaxonomy.taxeditor.propertysheet.type;\r
+\r
+import java.util.Collection;\r
+\r
+import org.apache.log4j.Logger;\r
+\r
+import eu.etaxonomy.cdm.model.name.NameRelationship;\r
+import eu.etaxonomy.cdm.model.name.NameRelationshipType;\r
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
+import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
+import eu.etaxonomy.taxeditor.controller.GlobalController;\r
+import eu.etaxonomy.taxeditor.propertysheet.CollectionPropertySource;\r
+\r
+public class TypeCollectionPropertySource extends CollectionPropertySource {\r
+ private static final Logger logger = Logger\r
+ .getLogger(TypeCollectionPropertySource.class);\r
+ \r
+ private TaxonNameBase name;\r
+ private boolean isZoological = false;\r
+\r
+ public TypeCollectionPropertySource(TaxonNameBase name, Collection collection) {\r
+ super(collection);\r
+ this.name = name;\r
+ if (name instanceof ZoologicalName) {\r
+ isZoological = true;\r
+ }\r
+ }\r
+ \r
+ @Override\r
+ protected String getItemDisplayName(Object item) {\r
+ String itemDisplayName = "";\r
+ \r
+ if (item instanceof NameRelationship) {\r
+ \r
+ NameRelationship nameRelation = (NameRelationship) item;\r
+ \r
+ if (nameRelation.getFromName() instanceof ZoologicalName &&\r
+ nameRelation.getToName() instanceof ZoologicalName) {\r
+ isZoological = true; \r
+ }\r
+ \r
+ if (nameRelation.getType() != null) {\r
+ \r
+ NameRelationshipType type = nameRelation.getType();\r
+ String label = GlobalController.getNameRelationLabelType(type);\r
+ if (isZoological && \r
+ nameRelation.getType().equals(NameRelationshipType.BASIONYM())) {\r
+ label = "original combination";\r
+ }\r
+ itemDisplayName = label;\r
+ } else {\r
+ itemDisplayName = "Relation has no type";\r
+ }\r
+ }\r
+ return itemDisplayName;\r
+ }\r
+\r
+ @Override\r
+ public Object getPropertyValue(Object id) {\r
+ if (id instanceof NameRelationship) {\r
+ TaxonNameBase relatedName;\r
+ String nameValue;\r
+ if (((NameRelationship) id).getFromName().equals(name)) {\r
+ relatedName = ((NameRelationship) id).getToName();\r
+ nameValue = relatedName.getTitleCache();\r
+ } else {\r
+ relatedName = ((NameRelationship) id).getFromName();\r
+ nameValue = "to " + relatedName.getTitleCache();\r
+ }\r
+ return nameValue;\r
+ }\r
+ return null;\r
+ }\r
+\r
+ @Override\r
+ public void setPropertyValue(Object id, Object value) {\r
+ // Fields not editable in property sheet view\r
+ }\r
+\r
+ @Override\r
+ public String toString() {\r
+ // "Name Relations" header has no value\r
+ return "";\r
+ }\r
+}
\ No newline at end of file
--- /dev/null
+/**\r
+* Copyright (C) 2007 EDIT\r
+* European Distributed Institute of Taxonomy \r
+* http://www.e-taxonomy.eu\r
+* \r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+\r
+package eu.etaxonomy.taxeditor.propertysheet.type;\r
+\r
+import java.util.Set;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.jface.viewers.CellEditor;\r
+import org.eclipse.jface.viewers.DialogCellEditor;\r
+import org.eclipse.jface.wizard.Wizard;\r
+import org.eclipse.jface.wizard.WizardDialog;\r
+import org.eclipse.swt.widgets.Composite;\r
+import org.eclipse.swt.widgets.Control;\r
+import org.eclipse.ui.views.properties.PropertyDescriptor;\r
+\r
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
+import eu.etaxonomy.taxeditor.controller.GlobalController;\r
+import eu.etaxonomy.taxeditor.propertysheet.type.wizard.TypeListWizard;\r
+\r
+/**\r
+ * Property sheet descriptor that pops up a dialog window\r
+ * returning a set.\r
+ * \r
+ * @author p.ciardelli\r
+ * @created 19.05.2008\r
+ * @version 1.0\r
+ */\r
+abstract public class TypePropertyDescriptor extends PropertyDescriptor {\r
+ private static final Logger logger = Logger\r
+ .getLogger(TypePropertyDescriptor.class);\r
+ \r
+ private TaxonNameBase name;\r
+ \r
+ public TypePropertyDescriptor(Object id, String displayName, TaxonNameBase name) {\r
+ super(id, displayName);\r
+ this.name = name;\r
+ }\r
+\r
+ public CellEditor createPropertyEditor(Composite parent) {\r
+ CellEditor editor = new DialogCellEditor(parent) {\r
+\r
+ @Override\r
+ protected Object openDialogBox(\r
+ Control cellEditorWindow) {\r
+ \r
+ Wizard wizard = new TypeListWizard(name);\r
+\r
+ // Instantiates the wizard container with the wizard and opens it\r
+ WizardDialog dialog = new WizardDialog(GlobalController.getShell(), wizard);\r
+ dialog.create();\r
+ dialog.open();\r
+ \r
+ return new TypeCollectionPropertySource(name, name.getSpecimenTypeDesignations());\r
+ }\r
+ \r
+ };\r
+ if (getValidator() != null) {\r
+ editor.setValidator(getValidator());\r
+ }\r
+ return editor;\r
+ }\r
+ \r
+ abstract protected void saveTypes(Set set); \r
+}\r
--- /dev/null
+/**\r
+* Copyright (C) 2009 EDIT\r
+* European Distributed Institute of Taxonomy \r
+* http://www.e-taxonomy.eu\r
+* \r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+\r
+package eu.etaxonomy.taxeditor.propertysheet.type;\r
+\r
+import java.util.Set;\r
+import java.util.Vector;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.ui.views.properties.IPropertyDescriptor;\r
+import org.eclipse.ui.views.properties.IPropertySource;\r
+import org.eclipse.ui.views.properties.PropertyDescriptor;\r
+\r
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
+import eu.etaxonomy.taxeditor.propertysheet.name.NameRelationsPropertyDescriptor;\r
+\r
+/**\r
+ * @author p.ciardelli\r
+ * @created 11.02.2009\r
+ * @version 1.0\r
+ */\r
+public class TypePropertySource implements IPropertySource {\r
+ private static Logger logger = Logger.getLogger(TypePropertySource.class);\r
+ \r
+ /**\r
+ * The name whose types are being displayed.\r
+ */\r
+ private TaxonNameBase name;\r
+ \r
+ /**\r
+ * If this is a property with a parent, the parent's property ID\r
+ */\r
+ private String parentid;\r
+ \r
+ /**\r
+ * Property unique keys\r
+ */\r
+ public static final String P_ID_NAMETYPES = "nametypes";\r
+\r
+ /**\r
+ * Property display keys\r
+ * Note: for an explanation of the sorting prefixes ("04:"), \r
+ * @see eu.etaxonomy.taxeditor.propertysheet.CustomSortPropertySheetEntry\r
+ */\r
+ public static final String P_NAMETYPES = "00:Name Types"; \r
+ \r
+ protected static final String[] TOP_LEVEL_PROPERTIES = new String[] {\r
+ P_ID_NAMETYPES};\r
+ \r
+ protected Vector<PropertyDescriptor> descriptors = new Vector<PropertyDescriptor>();\r
+ \r
+ public TypePropertySource(TaxonNameBase name) {\r
+ this.name = name;\r
+ \r
+ addDescriptor(P_ID_NAMETYPES);\r
+ }\r
+ \r
+ \r
+ /**\r
+ * \r
+ */\r
+ private void addDescriptor(String id) {\r
+ // Name relations, listed in custom property descriptor\r
+ if (id.equals(P_ID_NAMETYPES)) {\r
+ descriptors.addElement(\r
+ new TypePropertyDescriptor(P_ID_NAMETYPES, P_NAMETYPES, name) {\r
+ protected void saveTypes(Set set) {\r
+ setPropertyValue(P_ID_NAMETYPES, set);\r
+ }\r
+ }\r
+ );\r
+ };\r
+ }\r
+\r
+\r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.ui.views.properties.IPropertySource#getEditableValue()\r
+ */\r
+ @Override\r
+ public Object getEditableValue() {\r
+ // TODO Auto-generated method stub\r
+ return null;\r
+ }\r
+\r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyDescriptors()\r
+ */\r
+ @Override\r
+ public IPropertyDescriptor[] getPropertyDescriptors() {\r
+ return (IPropertyDescriptor[]) descriptors.toArray(\r
+ new IPropertyDescriptor[descriptors.size()]);\r
+ }\r
+\r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.ui.views.properties.IPropertySource#getPropertyValue(java.lang.Object)\r
+ */\r
+ @Override\r
+ public Object getPropertyValue(Object id) {\r
+ // TODO Auto-generated method stub\r
+ return null;\r
+ }\r
+\r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.ui.views.properties.IPropertySource#isPropertySet(java.lang.Object)\r
+ */\r
+ @Override\r
+ public boolean isPropertySet(Object id) {\r
+ // TODO Auto-generated method stub\r
+ return false;\r
+ }\r
+\r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.ui.views.properties.IPropertySource#resetPropertyValue(java.lang.Object)\r
+ */\r
+ @Override\r
+ public void resetPropertyValue(Object id) {\r
+ // TODO Auto-generated method stub\r
+\r
+ }\r
+\r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.ui.views.properties.IPropertySource#setPropertyValue(java.lang.Object, java.lang.Object)\r
+ */\r
+ @Override\r
+ public void setPropertyValue(Object id, Object value) {\r
+ // TODO Auto-generated method stub\r
+\r
+ }\r
+}\r
--- /dev/null
+/**\r
+* Copyright (C) 2009 EDIT\r
+* European Distributed Institute of Taxonomy \r
+* http://www.e-taxonomy.eu\r
+* \r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+\r
+package eu.etaxonomy.taxeditor.propertysheet.type.wizard;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.jface.wizard.WizardPage;\r
+import org.eclipse.swt.SWT;\r
+import org.eclipse.swt.custom.CCombo;\r
+import org.eclipse.swt.events.KeyEvent;\r
+import org.eclipse.swt.events.KeyListener;\r
+import org.eclipse.swt.events.SelectionAdapter;\r
+import org.eclipse.swt.events.SelectionEvent;\r
+import org.eclipse.swt.layout.GridData;\r
+import org.eclipse.swt.layout.GridLayout;\r
+import org.eclipse.swt.widgets.Composite;\r
+import org.eclipse.swt.widgets.Label;\r
+import org.eclipse.swt.widgets.Text;\r
+\r
+import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;\r
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
+import eu.etaxonomy.cdm.model.name.TypeDesignationStatus;\r
+import eu.etaxonomy.taxeditor.model.CdmSessionDataRepository;\r
+\r
+/**\r
+ * @author p.ciardelli\r
+ * @created 13.02.2009\r
+ * @version 1.0\r
+ */\r
+public class ChooseTypeDesignationWizardPage extends WizardPage {\r
+ private static Logger logger = Logger\r
+ .getLogger(ChooseTypeDesignationWizardPage.class);\r
+ \r
+ private SpecimenTypeDesignation typeDesignation;\r
+ private CCombo statusCombo;\r
+\r
+ private Text txtDesignationType;\r
+\r
+ /**\r
+ * @param typeDesignation\r
+ */\r
+ public ChooseTypeDesignationWizardPage(\r
+ SpecimenTypeDesignation typeDesignation, TaxonNameBase name) {\r
+ super("");\r
+ \r
+ this.typeDesignation = typeDesignation;\r
+ \r
+ setTitle("Create or edit type designation");\r
+ setDescription("Create or edit type designation for '" + name.getTitleCache() + "\".");\r
+ }\r
+\r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)\r
+ */\r
+ @Override\r
+ public void createControl(Composite parent) {\r
+ \r
+ // Create composite for popup dialog \r
+ Composite container = new Composite(parent, SWT.NULL);\r
+ final GridLayout gridLayout = new GridLayout();\r
+ container.setLayout(gridLayout);\r
+ setControl(container);\r
+\r
+ // Create text\r
+ final Label lblChooseStatus = new Label(container, SWT.NONE);\r
+ lblChooseStatus.setText("Choose designation type status:");\r
+\r
+ // Create designation type status dropdown \r
+ statusCombo = new CCombo(container, SWT.BORDER);\r
+ statusCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r
+ for (TypeDesignationStatus typeStatus : \r
+ CdmSessionDataRepository.getDefault().getTypeDesignationStatus()) {\r
+ \r
+ String label = typeStatus.getLabel();\r
+// String label = "placeholder";\r
+ statusCombo.add(label);\r
+ }\r
+\r
+ statusCombo.addSelectionListener(new SelectionAdapter() {\r
+ @Override\r
+ public void widgetSelected(SelectionEvent e) {\r
+// int typeIndex = typeCombo.getSelectionIndex();\r
+// relationModel.setType(relationTypes.get(typeIndex));\r
+ updatePage();\r
+ }\r
+ });\r
+\r
+ // Create text\r
+ final Label lblEnterText = new Label(container, SWT.NONE);\r
+ lblEnterText.setText("Enter designation type text:");\r
+ \r
+ txtDesignationType = new Text(container, SWT.BORDER);\r
+ txtDesignationType.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));\r
+ txtDesignationType.addKeyListener(new KeyListener() {\r
+\r
+ @Override\r
+ public void keyPressed(KeyEvent e) {}\r
+\r
+ @Override\r
+ public void keyReleased(KeyEvent e) {\r
+ updatePage();\r
+ } \r
+ });\r
+ }\r
+\r
+ @Override\r
+ public boolean canFlipToNextPage() {\r
+ return isPageComplete();\r
+ }\r
+\r
+ public boolean isPageComplete() {\r
+ return (statusCombo.getSelectionIndex() > -1 \r
+ && txtDesignationType.getText().length() > 0);\r
+ }\r
+ \r
+ private void updatePage() {\r
+ getWizard().getContainer().updateButtons();\r
+ }\r
+}\r
--- /dev/null
+/**\r
+* Copyright (C) 2009 EDIT\r
+* European Distributed Institute of Taxonomy \r
+* http://www.e-taxonomy.eu\r
+* \r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+\r
+package eu.etaxonomy.taxeditor.propertysheet.type.wizard;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.jface.wizard.IWizardPage;\r
+import org.eclipse.jface.wizard.Wizard;\r
+\r
+import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;\r
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
+\r
+/**\r
+ * @author p.ciardelli\r
+ * @created 13.02.2009\r
+ * @version 1.0\r
+ */\r
+public class TypeDesignationWizard extends Wizard {\r
+ private static Logger logger = Logger\r
+ .getLogger(TypeDesignationWizard.class);\r
+ \r
+ private SpecimenTypeDesignation typeDesignation;\r
+ private TaxonNameBase name;\r
+\r
+ /**\r
+ * @param typeDesignation\r
+ */\r
+ public TypeDesignationWizard(SpecimenTypeDesignation typeDesignation, TaxonNameBase name) {\r
+ this.typeDesignation = typeDesignation;\r
+ this.name = name;\r
+ }\r
+\r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.jface.wizard.Wizard#addPages()\r
+ */\r
+ public void addPages() {\r
+ IWizardPage chooseNamePage = new ChooseTypeDesignationWizardPage(typeDesignation, name);\r
+ addPage(chooseNamePage);\r
+ }\r
+ \r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.jface.wizard.Wizard#performFinish()\r
+ */\r
+ @Override\r
+ public boolean performFinish() {\r
+ // TODO Auto-generated method stub\r
+ return false;\r
+ }\r
+}\r
--- /dev/null
+/**\r
+* Copyright (C) 2009 EDIT\r
+* European Distributed Institute of Taxonomy \r
+* http://www.e-taxonomy.eu\r
+* \r
+* The contents of this file are subject to the Mozilla Public License Version 1.1\r
+* See LICENSE.TXT at the top of this package for the full license terms.\r
+*/\r
+\r
+package eu.etaxonomy.taxeditor.propertysheet.type.wizard;\r
+\r
+import org.apache.log4j.Logger;\r
+import org.eclipse.jface.wizard.IWizardPage;\r
+import org.eclipse.jface.wizard.Wizard;\r
+\r
+import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
+\r
+/**\r
+ * @author p.ciardelli\r
+ * @created 11.02.2009\r
+ * @version 1.0\r
+ */\r
+public class TypeListWizard extends Wizard {\r
+ private static Logger logger = Logger.getLogger(TypeListWizard.class);\r
+\r
+ private TaxonNameBase name;\r
+ \r
+ /**\r
+ * @param name\r
+ */\r
+ public TypeListWizard(TaxonNameBase name) {\r
+ super();\r
+ this.name = name;\r
+ }\r
+\r
+ public void addPages(){\r
+ IWizardPage chooseTypePage = new ListTypeWizardPage(name);\r
+ addPage(chooseTypePage);\r
+ }\r
+ \r
+ /* (non-Javadoc)\r
+ * @see org.eclipse.jface.wizard.Wizard#performFinish()\r
+ */\r
+ @Override\r
+ public boolean performFinish() {\r
+ return true;\r
+ }\r
+}\r