import org.eclipse.jface.resource.ImageRegistry;\r
import org.eclipse.swt.graphics.Image;\r
import org.eclipse.ui.forms.FormColors;\r
-import org.eclipse.ui.internal.registry.ViewRegistry;\r
import org.eclipse.ui.plugin.AbstractUIPlugin;\r
import org.osgi.framework.BundleContext;\r
\r
return observableSynonymSet; \r
}\r
\r
- /* ***************************************************************************************\r
- PROPERTY SHEET SELECTION PROVIDER\r
- ************************************************************************************** */\r
-// final ISelectionProvider provider = new ISelectionProvider() {\r
-//\r
-// private ListenerList listeners = new ListenerList();\r
-// private ISelection selection;\r
-// \r
-// @Override\r
-// public void addSelectionChangedListener(\r
-// ISelectionChangedListener listener) {\r
-// listeners.add(listener);\r
-// }\r
-//\r
-// @Override\r
-// public ISelection getSelection() {\r
-// if (selection != null)\r
-// return selection;\r
-// return null;\r
-//// return new StructuredSelection(new BotNamePropertySource((BotanicalName) taxon.getName()));\r
-// }\r
-//\r
-// @Override\r
-// public void removeSelectionChangedListener(\r
-// ISelectionChangedListener listener) {}\r
-//\r
-// @Override\r
-// public void setSelection(ISelection selection) {\r
-// this.selection = selection;\r
-// }\r
-// };\r
- \r
- \r
-// public ISelectionProvider getProvider() {\r
-//// this.getWorkbench().getActiveWorkbenchWindow().getSelectionService();\r
-// return this.provider;\r
-// }\r
- \r
/* ***************************************************************************************\r
IMAGE REGISTRY\r
************************************************************************************** */\r
// when fillActionBars is called with FILL_PROXY.
private IWorkbenchAction exitAction;
private ActionOpenNameEditor newNameAction;
+ private IWorkbenchAction saveAction;
public ApplicationActionBarAdvisor(IActionBarConfigurer configurer) {
super(configurer);
// Registering also provides automatic disposal of the actions when
// the window is closed.
+ saveAction = ActionFactory.SAVE.create(window);
+
exitAction = ActionFactory.QUIT.create(window);
register(exitAction);
IWorkbenchActionConstants.M_FILE);
menuBar.add(fileMenu);
fileMenu.add(newNameAction);
+ fileMenu.add(saveAction);
fileMenu.add(exitAction);
}
import org.eclipse.ui.part.MultiPageEditorPart;\r
\r
import eu.etaxonomy.cdm.model.taxon.Taxon;\r
+import eu.etaxonomy.taxeditor.controller.ActionSaveTaxon;\r
\r
/**\r
* \r
\r
@Override\r
public void doSave(IProgressMonitor monitor) {\r
- // TODO Auto-generated method stub\r
- \r
+ System.out.println("Start save");\r
+ new ActionSaveTaxon(taxon);\r
+ System.out.println("Save finished");\r
}\r
\r
@Override\r
taxon = null;\r
}\r
\r
- // Listen for name changes fired when taxon is saved; \r
+ // Listen for name changes, \r
// change tab for this taxon editor accordingly\r
taxon.addPropertyChangeListener("name", new PropertyChangeListener() {\r
public void propertyChange(PropertyChangeEvent e) {\r
import java.beans.PropertyChangeListener;\r
import java.util.List;\r
\r
-import org.eclipse.core.databinding.observable.set.ISetChangeListener;\r
-import org.eclipse.core.databinding.observable.set.SetChangeEvent;\r
import org.eclipse.core.runtime.IAdaptable;\r
import org.eclipse.core.runtime.IProgressMonitor;\r
import org.eclipse.core.runtime.ListenerList;\r
import org.eclipse.jface.viewers.SelectionChangedEvent;\r
import org.eclipse.jface.viewers.StructuredSelection;\r
import org.eclipse.swt.SWT;\r
+import org.eclipse.swt.custom.StyledText;\r
import org.eclipse.swt.dnd.DND;\r
import org.eclipse.swt.dnd.DropTarget;\r
import org.eclipse.swt.dnd.DropTargetAdapter;\r
import org.eclipse.swt.dnd.DropTargetEvent;\r
import org.eclipse.swt.dnd.Transfer;\r
+import org.eclipse.swt.events.FocusEvent;\r
+import org.eclipse.swt.events.FocusListener;\r
+import org.eclipse.swt.events.ModifyEvent;\r
+import org.eclipse.swt.events.ModifyListener;\r
import org.eclipse.swt.widgets.Composite;\r
import org.eclipse.swt.widgets.Display;\r
import org.eclipse.swt.widgets.Event;\r
import org.eclipse.ui.views.properties.IPropertySheetPage;\r
import org.eclipse.ui.views.properties.PropertySheetPage;\r
\r
+import com.swtdesigner.SWTResourceManager;\r
+\r
import eu.etaxonomy.cdm.model.name.BotanicalName;\r
import eu.etaxonomy.cdm.model.name.HomotypicalGroup;\r
import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
import eu.etaxonomy.cdm.model.taxon.Synonym;\r
import eu.etaxonomy.cdm.model.taxon.Taxon;\r
import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.taxeditor.controller.ActionAddSynonymToTaxon;\r
+import eu.etaxonomy.cdm.strategy.parser.TaxonNameParserBotanicalNameImpl;\r
import eu.etaxonomy.taxeditor.controller.WidgetTransfer;\r
import eu.etaxonomy.taxeditor.view.nameviewersupport.CompositeBorderDecorator;\r
import eu.etaxonomy.taxeditor.view.nameviewersupport.GroupComposite;\r
import eu.etaxonomy.taxeditor.view.nameviewersupport.LineBreakListener;\r
import eu.etaxonomy.taxeditor.view.nameviewersupport.NameComposite;\r
-import eu.etaxonomy.taxeditor.view.nameviewersupport.TesterooWritableSet;\r
import eu.etaxonomy.taxeditor.view.propertysheetsupport.BotanicalNamePropertySource;\r
import eu.etaxonomy.taxeditor.view.propertysheetsupport.CustomSortPropertySheetEntry;\r
\r
new BotanicalNamePropertySource((BotanicalName) taxon.getName())));\r
}\r
\r
+ public void setSelection(BotanicalName name) {\r
+ getSite().getSelectionProvider().setSelection\r
+ (new StructuredSelection(new BotanicalNamePropertySource(name)));;\r
+ }\r
+ \r
@Override\r
public boolean isDirty() {\r
return dirty;\r
createNameComposite(synonym, heterotypicComposite); \r
}\r
}\r
- \r
- // TODO replace this with real set of taxon's synonyms\r
- // 1) Observe all synonyms\r
-// TesterooWritableSet.getInstance().addSetChangeListener\r
-// (new ISetChangeListener() {\r
-// public void handleSetChange(SetChangeEvent event) {\r
-// for ( Object addition: event.diff.getAdditions()) {\r
-// Synonym synonym = null;\r
-// if (addition instanceof Synonym)\r
-// synonym = (Synonym) addition;\r
-// HomotypicalGroup emptyHomotypicalGroup = new HomotypicalGroup();\r
-// synonym.getName().setHomotypicalGroup(emptyHomotypicalGroup);\r
-// GroupComposite groupComposite = createGroupComposite(emptyHomotypicalGroup);\r
-// createNameComposite(synonym, groupComposite);\r
-// }\r
-// parent.layout();\r
-// }\r
-// });\r
- \r
-// taxon.addPropertyChangeListener(new PropertyChangeListener() {\r
-// @Override\r
-// public void propertyChange(PropertyChangeEvent evt) {\r
-// System.out.println("changing");\r
-// } \r
-// });\r
-// taxon.addPropertyChangeListener("synonyms", new PropertyChangeListener() {\r
-//\r
-// @Override\r
-// public void propertyChange(PropertyChangeEvent evt) {\r
-// System.out.println("new syn");\r
-// } \r
-// });\r
- \r
+ \r
// Listen for names being dragged outside of existing homotypic groups -\r
// user wants to create a new group\r
Transfer[] types = new Transfer[] {WidgetTransfer.getInstance()};\r
\r
private NameComposite createNameComposite(final TaxonBase taxonBase, GroupComposite groupComposite) {\r
NameComposite nameComposite;\r
+ TaxonNameBase name = taxonBase.getName();\r
if (taxonBase instanceof Taxon) {\r
nameComposite = new NameComposite(groupComposite, taxonBase, false);\r
+ nameComposite.setIcon(NameComposite.ACCEPTED);\r
+ \r
} else {\r
nameComposite = new NameComposite(groupComposite, taxonBase, true);\r
\r
- // TODO new prop change listener that first checks whether this group / element combo exists\r
-// taxonBase.getName().addPropertyChangeListener("homotypicalGroup", new PropertyChangeListener() {\r
-//\r
-// @Override\r
-// public void propertyChange(PropertyChangeEvent evt) {\r
-// HomotypicalGroup homotypicalGroup = \r
-// (HomotypicalGroup) evt.getNewValue();\r
-// GroupComposite groupComposite = groupCompositeMap.get(\r
-// homotypicalGroup);\r
-// if (groupComposite == null) {;\r
-// groupComposite = createGroupComposite(homotypicalGroup);\r
-// groupCompositeMap.put(homotypicalGroup, groupComposite);\r
-// }\r
-// createNameComposite(taxonBase, groupComposite);\r
-// }\r
-// });\r
+ nameComposite.indent();\r
+ \r
+ if (taxon.getName().getHomotypicalGroup().equals(groupComposite.getData())) {\r
+ nameComposite.setIcon(NameComposite.HOMOTYPIC_SYNONYM);\r
+ } else {\r
+ nameComposite.setIcon(NameComposite.HETEROTYPIC_SYNONYM);\r
+ }\r
}\r
\r
- new CompositeBorderDecorator(nameComposite.getTextWidget(), managedForm);\r
+ StyledText textWidget = nameComposite.getTextWidget();\r
\r
- // Add listener for sending selection to property sheet \r
- nameComposite.getTextWidget().addListener(SWT.Selection, new Listener() {\r
- @Override\r
- public void handleEvent(Event event) {\r
- setSelection((BotanicalName) event.data);\r
- }\r
- });\r
+ new CompositeBorderDecorator(textWidget, managedForm);\r
\r
- nameComposite.getTextWidget().addVerifyListener(new LineBreakListener() {\r
+ textWidget.addVerifyListener(new LineBreakListener() {\r
@Override\r
public void handleSplitText(String text) {\r
-// new ActionAddSynonymToTaxon(taxon, text).run();\r
-\r
// Model actions\r
BotanicalName name = BotanicalName.PARSED_NAME(text);\r
\r
parent.layout();\r
} \r
});\r
+ \r
+ // Add listener for sending selection to property sheet\r
+ textWidget.addFocusListener(new FocusListener() {\r
+ @Override\r
+ public void focusGained(FocusEvent e) {\r
+ setSelection((BotanicalName) taxonBase.getName());\r
+ }\r
+\r
+ @Override\r
+ public void focusLost(FocusEvent e) {} \r
+ });\r
+ \r
+ textWidget.setFont(\r
+ SWTResourceManager.getFont("Georgia", \r
+ (taxonBase instanceof Taxon ? 12 : 10), \r
+ SWT.NONE));\r
+ \r
+ String initText = (name.getTitleCache() == null) ? \r
+ "" : name.getTitleCache();\r
+ textWidget.setText(initText);\r
+ \r
+ // Put cursor at end of name viewer\r
+ textWidget.setCaretOffset(\r
+ textWidget.getText().length());\r
+\r
+ textWidget.addModifyListener(new ModifyListener () {\r
+ public void modifyText(ModifyEvent e) {\r
+ StyledText widget = (StyledText) e.widget;\r
+ String text = widget.getText();\r
+ TaxonNameParserBotanicalNameImpl.NewInstance().parseFullName\r
+ ((BotanicalName) taxonBase.getName(), text, null, true);\r
+ }\r
+ }); \r
+ \r
+ NameViewer nameViewer = (NameViewer) nameComposite.getTextViewer();\r
+ nameViewer.setShowError(name.getHasProblem());\r
\r
nameComposite.addPropertyChangeListener("parent", new PropertyChangeListener() {\r
\r
@Override\r
public void propertyChange(PropertyChangeEvent evt) {\r
\r
- if (! (evt.getSource() instanceof NameComposite)) return;\r
- if (! (evt.getNewValue() instanceof HomotypicalGroup)) return;\r
- \r
- HomotypicalGroup newHomotypicalGroup = (HomotypicalGroup) evt.getNewValue();\r
+ GroupComposite groupComposite = (GroupComposite) evt.getNewValue();\r
+ HomotypicalGroup newHomotypicalGroup = (HomotypicalGroup) groupComposite.getData();\r
NameComposite nameComposite = (NameComposite) evt.getSource();\r
\r
// Set name's homotypical group \r
// ("TEST2", "Testeroo warn", null, IMessageProvider.WARNING, nameComposite.getTextWidget());\r
// managedForm.getMessageManager().addMessage\r
// ("TEST2", "Testeroo info", null, IMessageProvider.INFORMATION, nameComposite.getTextWidget());\r
+ \r
return nameComposite;\r
}\r
\r
}\r
return super.getAdapter(type);\r
}\r
-\r
- public void setSelection(BotanicalName name) {\r
- getSite().getSelectionProvider().setSelection\r
- (new StructuredSelection(new BotanicalNamePropertySource(name)));;\r
- }\r
}
\ No newline at end of file
import org.eclipse.jface.text.source.SourceViewer;\r
import org.eclipse.swt.SWT;\r
import org.eclipse.swt.custom.StyledText;\r
-import org.eclipse.swt.events.FocusEvent;\r
-import org.eclipse.swt.events.FocusListener;\r
-import org.eclipse.swt.events.ModifyEvent;\r
-import org.eclipse.swt.events.ModifyListener;\r
import org.eclipse.swt.graphics.Color;\r
import org.eclipse.swt.widgets.Composite;\r
import org.eclipse.swt.widgets.Display;\r
-import org.eclipse.swt.widgets.Event;\r
import org.eclipse.ui.forms.widgets.TableWrapData;\r
\r
-import com.swtdesigner.SWTResourceManager;\r
-\r
-import eu.etaxonomy.cdm.model.name.BotanicalName;\r
-import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
-import eu.etaxonomy.cdm.model.taxon.Synonym;\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
-import eu.etaxonomy.cdm.strategy.parser.TaxonNameParserBotanicalNameImpl;\r
-import eu.etaxonomy.taxeditor.controller.ActionAddSynonymToTaxon;\r
import eu.etaxonomy.taxeditor.view.nameviewersupport.AnnotationMarkerAccess;\r
import eu.etaxonomy.taxeditor.view.nameviewersupport.ErrorAnnotation;\r
-import eu.etaxonomy.taxeditor.view.nameviewersupport.LineBreakListener;\r
import eu.etaxonomy.taxeditor.view.nameviewersupport.WarningAnnotation;\r
\r
/**\r
*/\r
public class NameViewer extends SourceViewer {\r
\r
- TaxonBase taxon;\r
- boolean initialized = false; \r
- \r
public NameViewer(Composite parent) {\r
super(parent, null, SWT.WRAP | SWT.MULTI | SWT.RESIZE);\r
\r
// Set name viewer's text to name cache\r
this.setDocument(new Document(""), new AnnotationModel());\r
- \r
+\r
+ // Lay out StyledText\r
+ StyledText textWidget = this.getTextWidget();\r
+ textWidget.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB));\r
+ \r
// Annotations section\r
IAnnotationAccess fAnnotationAccess = new AnnotationMarkerAccess();\r
\r
if (hasProblem && text.length() > 0) {\r
for (int i = 1; i <= this.getTextWidget().getLineCount(); i++) {\r
this.getAnnotationModel().addAnnotation(\r
- new ErrorAnnotation(i, "Could not parse name."), \r
+ new ErrorAnnotation(i, "Could not parse."), \r
new Position(0, text.length()));\r
}\r
}\r
}\r
- \r
- public void initialize(TaxonBase taxon) {\r
- this.taxon = taxon;\r
- \r
- StyledText nameWidget = this.getTextWidget();\r
- \r
- nameWidget.addFocusListener(new FocusListener() {\r
- @Override\r
- public void focusGained(FocusEvent e) {\r
- Event event = new Event();\r
- event.data = getName();\r
- e.widget.notifyListeners(SWT.Selection, event);\r
- }\r
-\r
- @Override\r
- public void focusLost(FocusEvent e) {} \r
- });\r
- \r
- nameWidget.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB)); \r
- nameWidget.setFont(\r
- SWTResourceManager.getFont("Georgia", \r
- (taxon instanceof Taxon ? 12 : 10), \r
- SWT.NONE));\r
- \r
- // Listen for changes to name\r
- nameWidget.addModifyListener(new ModifyListener () {\r
- public void modifyText(ModifyEvent e) {\r
- if (initialized) {\r
- String text = ((StyledText) e.widget).getText();\r
- TaxonNameParserBotanicalNameImpl.NewInstance().parseFullName\r
- ((BotanicalName) getName(), text, null, true);\r
- }\r
- }\r
- });\r
- \r
- // Put name into name viewer, show error if parsed incorrectly\r
- String initText = (getName().getTitleCache() == null) ? \r
- "" : getName().getTitleCache();\r
- nameWidget.setText(initText);\r
- this.setShowError(getName().getHasProblem());\r
- \r
- // Put cursor at end of name viewer\r
- nameWidget.setCaretOffset(\r
- nameWidget.getText().length());\r
- \r
- // Any new input should now be parsed\r
- initialized = true;\r
- }\r
- \r
- TaxonNameBase getName() {\r
- return taxon.getName();\r
- }\r
}
\ No newline at end of file
public class GroupComposite extends Composite {\r
\r
public GroupComposite(Composite parent, Object data) {\r
+ this(parent);\r
+ setData(data);\r
+ }\r
+ \r
+ public GroupComposite(Composite parent) {\r
super(parent, SWT.NONE);\r
\r
- setData(data);\r
\r
// Graphic layout of composite\r
this.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB));\r
import java.beans.PropertyChangeListener;\r
import java.beans.PropertyChangeSupport;\r
\r
-import org.eclipse.jface.text.source.SourceViewer;\r
+import org.eclipse.jface.text.TextViewer;\r
import org.eclipse.swt.SWT;\r
import org.eclipse.swt.custom.StyledText;\r
import org.eclipse.swt.dnd.DND;\r
import eu.etaxonomy.taxeditor.controller.WidgetTransfer;\r
\r
/**\r
- * A composite that holds an editable relation, and which is optionally \r
- * draggable. The relation is represented by a relation label and a \r
- * source viewer. The relation's data is stored in the Widget's data field.\r
+ * A draggable composite with two elements: a draggable label and a text viewer for editing text.\r
* \r
* @author p.ciardelli\r
*\r
*/\r
abstract public class GroupedComposite extends Composite {\r
\r
- private Label relationLabel;\r
- protected SourceViewer dataViewer;\r
- private boolean draggable;\r
- @SuppressWarnings("unused")\r
- private boolean initialized = false;\r
- // The Composite marked as the main entry is indented to the left\r
- // of all others\r
- @SuppressWarnings("unused")\r
- protected boolean mainentry = false;\r
+ private Label draggableLabel;\r
+ private TextViewer textViewer;\r
+ protected TableWrapLayout layout;\r
\r
+ protected static final int LEFT_MARGIN = 15;\r
+ \r
PropertyChangeSupport propertyChangeSupport;\r
\r
+ public GroupedComposite(Composite parent, boolean draggable) {\r
+ this(parent, null, draggable);\r
+ }\r
+ \r
public GroupedComposite(Composite parent, Object data, boolean draggable) {\r
super(parent, SWT.NONE);\r
- \r
- setData(data);\r
- \r
- this.draggable = draggable;\r
+\r
+ if (data != null) {\r
+ setData(data);\r
+ }\r
\r
propertyChangeSupport = new PropertyChangeSupport(this);\r
\r
- createNameComposite();\r
- \r
+ createContent();\r
+ \r
+ if (draggable) {\r
+ addDraggability();\r
+ } \r
}\r
\r
- /**\r
- * \r
- */\r
- public void createNameComposite() {\r
- \r
+ protected void createContent() {\r
this.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB));\r
- TableWrapLayout layout = new TableWrapLayout();\r
+ layout = new TableWrapLayout();\r
layout.numColumns = 2;\r
- layout.leftMargin = (mainentry? 0: 15);\r
+ layout.leftMargin = 0;\r
this.setLayout(layout);\r
\r
this.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
\r
- relationLabel = new Label(this, SWT.NONE); \r
- relationLabel.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
- relationLabel.setLayoutData(new TableWrapData(TableWrapData.CENTER, TableWrapData.MIDDLE));\r
- \r
- // Add drag functionality to synonyms only\r
- if (!draggable) return;\r
- \r
- // Drag functionality\r
+ draggableLabel = new Label(this, SWT.NONE); \r
+ draggableLabel.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));\r
+ draggableLabel.setLayoutData(new TableWrapData(TableWrapData.CENTER, TableWrapData.MIDDLE));\r
+ }\r
+ \r
+ private void addDraggability() {\r
Transfer[] types = new Transfer[] {WidgetTransfer.getInstance()}; \r
int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK;\r
\r
// Make relation label draggable \r
- DragSource dragLabel = new DragSource (relationLabel, operations);\r
+ DragSource dragLabel = new DragSource (draggableLabel, operations);\r
dragLabel.setTransfer(types);\r
dragLabel.addDragListener(dragSourceListener);\r
}\r
}\r
};\r
\r
- public StyledText getTextWidget() {\r
- return dataViewer.getTextWidget();\r
- }\r
-\r
/** \r
* Override of setParent: dispose of parent if this is its last child composite\r
* @see org.eclipse.swt.widgets.Control#setParent(org.eclipse.swt.widgets.Composite)\r
}\r
return false;\r
}\r
- \r
+\r
public void addPropertyChangeListener(String propertyName,\r
PropertyChangeListener listener) {\r
propertyChangeSupport.addPropertyChangeListener(propertyName, listener);\r
public void removePropertyChangeListener(PropertyChangeListener listener) {\r
propertyChangeSupport.removePropertyChangeListener(listener);\r
}\r
- \r
- /**\r
- * Initialization of the dataViewer should take place here. \r
- * @param data\r
- */\r
- protected void initialize() {\r
- initialized = true;\r
+\r
+ public TextViewer getTextViewer() {\r
+ return textViewer;\r
}\r
- \r
- protected void setViewer(SourceViewer dataViewer) {\r
- this.dataViewer = dataViewer;\r
+\r
+ public void setTextViewer(TextViewer textViewer) {\r
+ this.textViewer = textViewer;\r
+ }\r
+\r
+ public StyledText getTextWidget() {\r
+ return textViewer.getTextWidget();\r
}\r
\r
- @SuppressWarnings("unused")\r
protected void setIcon(Image icon) {\r
- relationLabel.setImage(icon);\r
+ draggableLabel.setImage(icon);\r
+ }\r
+\r
+ public void indent() {\r
+ layout.leftMargin = LEFT_MARGIN;\r
+ this.setLayout(layout);\r
}\r
}
\ No newline at end of file
import org.eclipse.swt.graphics.Image;\r
import org.eclipse.swt.widgets.Composite;\r
\r
-import eu.etaxonomy.cdm.model.taxon.Taxon;\r
-import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
import eu.etaxonomy.taxeditor.Activator;\r
import eu.etaxonomy.taxeditor.view.NameViewer;\r
\r
public static final int ACCEPTED = 0;\r
public static final int HOMOTYPIC_SYNONYM = 1;\r
public static final int HETEROTYPIC_SYNONYM = 2;\r
- \r
- int compositeType = HETEROTYPIC_SYNONYM;\r
-\r
+ \r
public NameComposite(Composite parent, Object data, boolean draggable) {\r
super(parent, data, draggable);\r
}\r
\r
- /**\r
- * \r
- */\r
- public void createNameComposite() {\r
- \r
- if (getData() instanceof Taxon) {\r
- mainentry = true;\r
- compositeType = ACCEPTED;\r
- }\r
- \r
- super.createNameComposite();\r
- \r
- setIcon(compositeType);\r
+ protected void createContent() {\r
+ super.createContent(); \r
\r
- setViewer(new NameViewer(this));\r
-\r
- initialize();\r
- }\r
-\r
- \r
- protected void initialize() {\r
- if (getData() instanceof TaxonBase) {\r
- ((NameViewer) dataViewer).initialize((TaxonBase) getData());\r
- }\r
- super.initialize();\r
+ setTextViewer(new NameViewer(this));\r
}\r
\r
public void setIcon(int type) {\r