import eu.etaxonomy.cdm.model.description.FeatureTree;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
-import eu.etaxonomy.taxeditor.ui.element.ToggleableTextElement;
-import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
+import eu.etaxonomy.taxeditor.ui.section.AbstractIdentifiableEntityDetailElement;
/**
*
* @since Dec 21, 2017
*
*/
-public class FeatureTreeDetailElement extends AbstractCdmDetailElement<FeatureTree> {
-
- private ToggleableTextElement toggleableText_titleCache;
+public class FeatureTreeDetailElement extends AbstractIdentifiableEntityDetailElement<FeatureTree> {
public FeatureTreeDetailElement(CdmFormFactory formFactory,
ICdmFormElement formElement) {
super(formFactory, formElement);
}
+
@Override
protected void createControls(ICdmFormElement formElement, FeatureTree entity, int style) {
- toggleableText_titleCache = formFactory.createToggleableTextField(
+ toggleable_cache = formFactory.createToggleableTextField(
formElement, "Title Cache", entity.getTitleCache(),
entity.isProtectedTitleCache(), style);
}
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected void updateControlStates() {
+ super.updateControlStates();
+ toggleable_cache.setEnabled(getEntity().isProtectedTitleCache());
+ }
+
@Override
public void handleEvent(Object eventSource) {
- if (eventSource == toggleableText_titleCache) {
- getEntity().setTitleCache(toggleableText_titleCache.getText(),
- toggleableText_titleCache.getState());
- }
- if (eventSource != toggleableText_titleCache) {
- toggleableText_titleCache.setText(getEntity().getTitleCache());
+ if (eventSource == toggleable_cache) {
+ handleToggleableCacheField();
}
}