import eu.etaxonomy.taxeditor.ui.forms.CheckboxElement;
import eu.etaxonomy.taxeditor.ui.forms.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.forms.TextWithLabelElement;
-import eu.etaxonomy.taxeditor.ui.forms.ToggleableTextElement;
-import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
-import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailSection;
-import eu.etaxonomy.taxeditor.ui.section.name.NonViralNameDetailElement;
+import eu.etaxonomy.taxeditor.ui.section.AbstractIdentifiableEntityDetailElement;
import eu.etaxonomy.taxeditor.ui.selection.ReferenceSelectionElement;
/**
* @created Feb 26, 2010
* @version 1.0
*/
-public class TaxonBaseDetailElement extends AbstractCdmDetailElement<TaxonBase> {
+public class TaxonBaseDetailElement extends AbstractIdentifiableEntityDetailElement<TaxonBase> {
private CheckboxElement checkbox_doubtful;
private TextWithLabelElement text_appendedPhrase;
- private ToggleableTextElement toggleable_cache;
-
private CheckboxElement checkbox_excluded;
private CheckboxElement checkbox_unplaced;
setIrrelevant(toggleable_cache.getState(),
Arrays.asList(new Object[] { toggleable_cache }));
}
-
- /** {@inheritDoc} */
+
@Override
- public void propertyChange(PropertyChangeEvent event) {
- Object eventSource = event.getSource();
- if (eventSource instanceof ICdmFormElement) {
- ICdmFormElement element = (ICdmFormElement) eventSource;
- ICdmFormElement parentElement = element.getParentElement();
- if (parentElement instanceof NonViralNameDetailElement) {
- String title = getEntity().generateTitle();
- getEntity().setTitleCache(title);
- toggleable_cache.setText(title);
- if (getParentElement() instanceof AbstractCdmDetailSection)
- ((AbstractCdmDetailSection) getParentElement())
- .updateTitle();
- }
- }
-
- super.propertyChange(event);
+ protected void handleTitleCacheRelevantChange(PropertyChangeEvent event) {
+ String title = getEntity().generateTitle();
+ getEntity().setTitleCache(title);
+ super.handleTitleCacheRelevantChange(event);
}
/** {@inheritDoc} */
@Override
public void handleEvent(Object eventSource) {
if (eventSource.equals(toggleable_cache)) {
- getEntity().setTitleCache(toggleable_cache.getText(),
- toggleable_cache.getState());
- // setEnabled(! toggleable_titleCache.getState(), Arrays.asList(new
- // Object[]{toggleable_titleCache}));
- setIrrelevant(toggleable_cache.getState(),
- Arrays.asList(new Object[] { toggleable_cache }));
+ handleToggleableCacheField();
} else if (eventSource.equals(checkbox_doubtful)) {
getEntity().setDoubtful(checkbox_doubtful.getSelection());
} else if (eventSource.equals(checkbox_useNameCache)) {
((Taxon) getEntity()).setUnplaced(checkbox_unplaced.getSelection());
}
- if (eventSource != toggleable_cache) {
- toggleable_cache.setText(getEntity().getTitleCache());
- }
firePropertyChangeEvent(new CdmPropertyChangeEvent(this, null));
}
}