import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionElement;
/**
- * <p>
- * CollectionDetailElement class.
- * </p>
+ *
+ * @author pplitzner
*
- * @author n.hoffmann
- * @created Oct 13, 2010
- * @version 1.0
*/
public class IdentifierDetailElement extends AbstractEntityCollectionElement<Identifier> {
private TermComboElement<DefinedTerm> comboIdentifierType;
- /**
- * <p>
- * Constructor for CollectingAreasDetailElement.
- * </p>
- *
- * @param formFactory
- * a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory}
- * object.
- * @param section
- * a {@link eu.etaxonomy.taxeditor.ui.element.AbstractFormSection}
- * object.
- * @param entity
- * a {@link eu.etaxonomy.cdm.model.location.NamedArea} object.
- * @param removeListener
- * a {@link org.eclipse.swt.events.SelectionListener} object.
- * @param style
- * a int.
- */
public IdentifierDetailElement(CdmFormFactory formFactory,
AbstractFormSection section, Identifier entity,
SelectionListener removeListener, int style) {
super(formFactory, section, entity, removeListener, null, style);
}
- /*
- * (non-Javadoc)
- *
- * @see
- * eu.etaxonomy.taxeditor.section.AbstractEntityCollectionElement#setEntity
- * (java.lang.Object)
- */
/** {@inheritDoc} */
@Override
public void setEntity(Identifier entity) {
comboIdentifierType.setSelection(entity.getType());
}
- /*
- * (non-Javadoc)
- *
- * @see
- * eu.etaxonomy.taxeditor.section.AbstractCdmDetailElement#createControls
- * (eu.etaxonomy.taxeditor.forms.ICdmFormElement,
- * eu.etaxonomy.cdm.model.common.IAnnotatableEntity, int)
- */
/** {@inheritDoc} */
@Override
public void createControls(ICdmFormElement formElement, int style) {
comboIdentifierType = formFactory.createDefinedTermComboElement(TermType.IdentifierType, formElement, "Type", null, style);
}
- /*
- * (non-Javadoc)
- *
- * @see
- * eu.etaxonomy.taxeditor.section.AbstractCdmDetailElement#handleEvent(java
- * .lang.Object)
- */
- /** {@inheritDoc} */
@Override
public void handleEvent(Object eventSource) {
if (eventSource == textIdentifier) {
import java.util.Collection;
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.ToolBarManager;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.ImageData;
-import org.eclipse.swt.widgets.Control;
-
import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
-import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
+import eu.etaxonomy.cdm.model.common.IdentifiableEntity;
import eu.etaxonomy.cdm.model.common.Identifier;
-import eu.etaxonomy.taxeditor.model.ImageResources;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.section.AbstractEntityCollectionSection;
/**
- * <p>
- * CollectingAreasDetailSection class.
- * </p>
+ *
+ * @author pplitzner
*
- * @author n.hoffmann
- * @created Oct 14, 2010
- * @version 1.0
*/
-public class IdentifierDetailSection extends AbstractEntityCollectionSection<DerivedUnitFacade, Identifier> {
+public class IdentifierDetailSection extends AbstractEntityCollectionSection<IdentifiableEntity, Identifier> {
- /**
- * <p>Constructor for CollectingAreasDetailSection.</p>
- *
- * @param formFactory a {@link eu.etaxonomy.taxeditor.ui.element.CdmFormFactory} object.
- * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
- * @param parentElement a {@link eu.etaxonomy.taxeditor.ui.element.ICdmFormElement} object.
- * @param style a int.
- */
public IdentifierDetailSection(CdmFormFactory formFactory,
ConversationHolder conversation, ICdmFormElement parentElement, int style) {
super(formFactory, conversation, parentElement, "Identifiers", style);
}
- @Override
- protected Control createToolbar() {
- ToolBarManager toolBarManager = new ToolBarManager(SWT.FLAT);
-
- Action addAction = new Action("add", IAction.AS_PUSH_BUTTON){
- /* (non-Javadoc)
- * @see org.eclipse.jface.action.Action#run()
- */
- @Override
- public void run() {
- Identifier element = createNewElement();
- if(element != null){
- if(! getSection().isExpanded()) {
- getSection().setExpanded(true);
- }
- internalUpdateSection(true);
- }
- }
- };
- addAction.setImageDescriptor(new ImageDescriptor() {
-
- @Override
- public ImageData getImageData() {
- return ImageResources.getImage(ImageResources.ADD_ICON).getImageData();
- }
- });
- addAction.setToolTipText(getTooltipString());
-
- toolBarManager.add(addAction);
-
- return toolBarManager.createControl(this);
- }
-
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#getCollection(java.lang.Object)
- */
/** {@inheritDoc} */
@Override
- public Collection<Identifier> getCollection(DerivedUnitFacade entity) {
+ public Collection<Identifier> getCollection(IdentifiableEntity entity) {
return entity.getIdentifiers();
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#createNewElement()
- */
/** {@inheritDoc} */
@Override
public Identifier createNewElement() {
- return Identifier.NewInstance(getEntity().baseUnit(), null, null);
+ return Identifier.NewInstance(null, null);
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#addElement(eu.etaxonomy.cdm.model.common.IVersionableEntity)
- */
/** {@inheritDoc} */
@Override
public void addElement(Identifier element) {
getEntity().addIdentifier(element);
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#removeElement(eu.etaxonomy.cdm.model.common.IVersionableEntity)
- */
/** {@inheritDoc} */
@Override
public void removeElement(Identifier element) {
- getEntity().removeIdentifier(getEntity().getIdentifiers().get(0));
+ getEntity().removeIdentifier(element);
getConversationHolder().commit();
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#getEmptyString()
- */
/** {@inheritDoc} */
@Override
public String getEmptyString() {
return "No identifiers yet.";
}
- /* (non-Javadoc)
- * @see eu.etaxonomy.taxeditor.section.AbstractEntityCollectionSection#getTooltipString()
- */
/** {@inheritDoc} */
@Override
protected String getTooltipString() {