From: Henri Sara Date: Wed, 22 Feb 2012 13:00:37 +0000 (+0200) Subject: Transfer read-only and immediate flags via shared state (#8304). X-Git-Tag: 7.0.0.alpha2~440^2~6 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=3de6f24cbf6649dd6aaf54c31cf0414e6beb8dc5;p=vaadin-framework.git Transfer read-only and immediate flags via shared state (#8304). --- diff --git a/src/com/vaadin/terminal/gwt/client/ComponentState.java b/src/com/vaadin/terminal/gwt/client/ComponentState.java index 2df7f20dee..ac478cd1d3 100644 --- a/src/com/vaadin/terminal/gwt/client/ComponentState.java +++ b/src/com/vaadin/terminal/gwt/client/ComponentState.java @@ -16,6 +16,8 @@ import com.vaadin.terminal.gwt.client.communication.SharedState; public class ComponentState extends SharedState { private String height = ""; private String width = ""; + private boolean readOnly = false; + private boolean immediate = false; /** * Returns the component height as set by the server. @@ -93,7 +95,22 @@ public class ComponentState extends SharedState { return "".equals(getWidth()); } - // TODO more fields to move here: style, readonly, immediate, disabled, - // caption and description + public boolean isReadOnly() { + return readOnly; + } + + public void setReadOnly(boolean readOnly) { + this.readOnly = readOnly; + } + + public boolean isImmediate() { + return immediate; + } + + public void setImmediate(boolean immediate) { + this.immediate = immediate; + } + + // TODO more fields to move here: style, disabled, caption and description } diff --git a/src/com/vaadin/terminal/gwt/client/ui/VAbstractPaintableWidget.java b/src/com/vaadin/terminal/gwt/client/ui/VAbstractPaintableWidget.java index 5564c6984e..d6404b03fc 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VAbstractPaintableWidget.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VAbstractPaintableWidget.java @@ -32,8 +32,6 @@ public abstract class VAbstractPaintableWidget implements VPaintableWidget { public static final String ATTRIBUTE_REQUIRED = "required"; public static final String ATTRIBUTE_ERROR = "error"; public static final String ATTRIBUTE_HIDEERRORS = "hideErrors"; - public static final String ATTRIBUTE_READONLY = "readonly"; - public static final String ATTRIBUTE_IMMEDIATE = "immediate"; public static final String ATTRIBUTE_DISABLED = "disabled"; public static final String ATTRIBUTE_STYLE = "style"; @@ -211,7 +209,7 @@ public abstract class VAbstractPaintableWidget implements VPaintableWidget { // Style names String styleName = getStyleNameFromUIDL(getWidgetForPaintable() - .getStylePrimaryName(), uidl, + .getStylePrimaryName(), uidl, getState(), getWidgetForPaintable() instanceof Field); getWidgetForPaintable().setStyleName(styleName); @@ -308,17 +306,19 @@ public abstract class VAbstractPaintableWidget implements VPaintableWidget { /** * Generates the style name for the widget based on the given primary style - * name (typically returned by Widget.getPrimaryStyleName()) and the UIDL. - * An additional "modified" style name can be added if the field parameter - * is set to true. + * name (typically returned by Widget.getPrimaryStyleName()) and the UIDL + * and shared state of the component. An additional "modified" style name + * can be added if the field parameter is set to true. * * @param primaryStyleName * @param uidl - * @param isField + * @param state + * component shared state + * @param field * @return */ protected static String getStyleNameFromUIDL(String primaryStyleName, - UIDL uidl, boolean field) { + UIDL uidl, ComponentState state, boolean field) { boolean enabled = !uidl.getBooleanAttribute(ATTRIBUTE_DISABLED); StringBuffer styleBuf = new StringBuffer(); @@ -329,7 +329,7 @@ public abstract class VAbstractPaintableWidget implements VPaintableWidget { styleBuf.append(" "); styleBuf.append(ApplicationConnection.DISABLED_CLASSNAME); } - if (uidl.getBooleanAttribute(ATTRIBUTE_READONLY)) { + if (state.isReadOnly()) { styleBuf.append(" "); styleBuf.append("v-readonly"); } diff --git a/src/com/vaadin/terminal/gwt/client/ui/VAbstractSplitPanelPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VAbstractSplitPanelPaintable.java index 8d4a6954a1..1e8349b4ad 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VAbstractSplitPanelPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VAbstractSplitPanelPaintable.java @@ -70,8 +70,7 @@ public abstract class VAbstractSplitPanelPaintable extends getWidgetForPaintable().id = uidl.getId(); getWidgetForPaintable().rendering = true; - getWidgetForPaintable().immediate = uidl - .hasAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); super.updateFromUIDL(uidl, client); if (!isRealUpdate(uidl)) { diff --git a/src/com/vaadin/terminal/gwt/client/ui/VCheckBoxPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VCheckBoxPaintable.java index daacbe03e5..9624ddd4e6 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VCheckBoxPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VCheckBoxPaintable.java @@ -62,7 +62,7 @@ public class VCheckBoxPaintable extends VAbstractPaintableWidget { "none"); } - if (uidl.hasAttribute(ATTRIBUTE_READONLY)) { + if (getState().isReadOnly()) { getWidgetForPaintable().setEnabled(false); } @@ -90,8 +90,7 @@ public class VCheckBoxPaintable extends VAbstractPaintableWidget { getWidgetForPaintable() .setValue( uidl.getBooleanVariable(getWidgetForPaintable().VARIABLE_STATE)); - getWidgetForPaintable().immediate = uidl - .getBooleanAttribute(VAbstractPaintableWidget.ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); } @Override diff --git a/src/com/vaadin/terminal/gwt/client/ui/VDateFieldPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VDateFieldPaintable.java index 0798cd1e60..ac33712c6e 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VDateFieldPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VDateFieldPaintable.java @@ -25,11 +25,9 @@ public class VDateFieldPaintable extends VAbstractPaintableWidget { // Save details getWidgetForPaintable().client = client; getWidgetForPaintable().paintableId = uidl.getId(); - getWidgetForPaintable().immediate = uidl - .getBooleanAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); - getWidgetForPaintable().readonly = uidl - .getBooleanAttribute(ATTRIBUTE_READONLY); + getWidgetForPaintable().readonly = getState().isReadOnly(); getWidgetForPaintable().enabled = !uidl .getBooleanAttribute(ATTRIBUTE_DISABLED); diff --git a/src/com/vaadin/terminal/gwt/client/ui/VFilterSelectPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VFilterSelectPaintable.java index cd1c4e122d..581baad8f9 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VFilterSelectPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VFilterSelectPaintable.java @@ -28,8 +28,7 @@ public class VFilterSelectPaintable extends VAbstractPaintableWidget { getWidgetForPaintable().client = client; getWidgetForPaintable().paintableId = uidl.getId(); - getWidgetForPaintable().readonly = uidl - .hasAttribute(ATTRIBUTE_READONLY); + getWidgetForPaintable().readonly = getState().isReadOnly(); getWidgetForPaintable().enabled = !uidl .hasAttribute(ATTRIBUTE_DISABLED); @@ -59,8 +58,7 @@ public class VFilterSelectPaintable extends VAbstractPaintableWidget { .getIntAttribute("filteringmode"); } - getWidgetForPaintable().immediate = uidl - .hasAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); getWidgetForPaintable().nullSelectionAllowed = uidl .hasAttribute("nullselect"); diff --git a/src/com/vaadin/terminal/gwt/client/ui/VLinkPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VLinkPaintable.java index 432365eaa7..938e20fb91 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VLinkPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VLinkPaintable.java @@ -31,8 +31,7 @@ public class VLinkPaintable extends VAbstractPaintableWidget { getWidgetForPaintable().enabled = uidl.hasAttribute(ATTRIBUTE_DISABLED) ? false : true; - getWidgetForPaintable().readonly = uidl - .hasAttribute(ATTRIBUTE_READONLY) ? true : false; + getWidgetForPaintable().readonly = getState().isReadOnly(); if (uidl.hasAttribute("name")) { getWidgetForPaintable().target = uidl.getStringAttribute("name"); diff --git a/src/com/vaadin/terminal/gwt/client/ui/VOptionGroupBasePaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VOptionGroupBasePaintable.java index 2fc538d114..6b11c8ffe9 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VOptionGroupBasePaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VOptionGroupBasePaintable.java @@ -25,14 +25,12 @@ public abstract class VOptionGroupBasePaintable extends getWidgetForPaintable().selectedKeys = uidl .getStringArrayVariableAsSet("selected"); - getWidgetForPaintable().readonly = uidl - .getBooleanAttribute(ATTRIBUTE_READONLY); + getWidgetForPaintable().readonly = getState().isReadOnly(); getWidgetForPaintable().disabled = uidl .getBooleanAttribute(ATTRIBUTE_DISABLED); getWidgetForPaintable().multiselect = "multi".equals(uidl .getStringAttribute("selectmode")); - getWidgetForPaintable().immediate = uidl - .getBooleanAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); getWidgetForPaintable().nullSelectionAllowed = uidl .getBooleanAttribute("nullselect"); getWidgetForPaintable().nullSelectionItemAvailable = uidl diff --git a/src/com/vaadin/terminal/gwt/client/ui/VPopupCalendarPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VPopupCalendarPaintable.java index 042d730738..3bf7f844e8 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VPopupCalendarPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VPopupCalendarPaintable.java @@ -35,7 +35,8 @@ public class VPopupCalendarPaintable extends VTextualDatePaintable { super.updateFromUIDL(uidl, client); String popupStyleNames = getStyleNameFromUIDL( - VPopupCalendar.POPUP_PRIMARY_STYLE_NAME, uidl, false); + VPopupCalendar.POPUP_PRIMARY_STYLE_NAME, uidl, getState(), + false); popupStyleNames += " " + VDateField.CLASSNAME + "-" diff --git a/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java b/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java index 17d02d5374..44fea19f76 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VScrollTable.java @@ -59,6 +59,7 @@ import com.google.gwt.user.client.ui.UIObject; import com.google.gwt.user.client.ui.Widget; import com.vaadin.terminal.gwt.client.ApplicationConnection; import com.vaadin.terminal.gwt.client.BrowserInfo; +import com.vaadin.terminal.gwt.client.ComponentState; import com.vaadin.terminal.gwt.client.Container; import com.vaadin.terminal.gwt.client.Focusable; import com.vaadin.terminal.gwt.client.MouseEventDetails; @@ -971,7 +972,7 @@ public class VScrollTable extends FlowPanel implements HasWidgets, } } - void updateSelectionProperties(UIDL uidl) { + void updateSelectionProperties(UIDL uidl, ComponentState state) { setMultiSelectMode(uidl.hasAttribute("multiselectmode") ? uidl .getIntAttribute("multiselectmode") : MULTISELECT_MODE_DEFAULT); @@ -979,7 +980,7 @@ public class VScrollTable extends FlowPanel implements HasWidgets, .getBooleanAttribute("nsa") : true; if (uidl.hasAttribute("selectmode")) { - if (uidl.getBooleanAttribute(VAbstractPaintableWidget.ATTRIBUTE_READONLY)) { + if (state.isReadOnly()) { selectMode = SelectMode.NONE; } else if (uidl.getStringAttribute("selectmode").equals("multi")) { selectMode = SelectMode.MULTI; diff --git a/src/com/vaadin/terminal/gwt/client/ui/VScrollTablePaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VScrollTablePaintable.java index a95ac5ef79..7bd2fae337 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VScrollTablePaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VScrollTablePaintable.java @@ -72,8 +72,7 @@ public class VScrollTablePaintable extends VAbstractPaintableWidgetContainer { getWidgetForPaintable().client = client; getWidgetForPaintable().paintableId = uidl.getStringAttribute("id"); - getWidgetForPaintable().immediate = uidl - .getBooleanAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); int previousTotalRows = getWidgetForPaintable().totalRows; getWidgetForPaintable().updateTotalRows(uidl); @@ -81,7 +80,7 @@ public class VScrollTablePaintable extends VAbstractPaintableWidgetContainer { getWidgetForPaintable().updateDragMode(uidl); - getWidgetForPaintable().updateSelectionProperties(uidl); + getWidgetForPaintable().updateSelectionProperties(uidl, getState()); if (uidl.hasAttribute("alb")) { getWidgetForPaintable().bodyActionKeys = uidl diff --git a/src/com/vaadin/terminal/gwt/client/ui/VSliderPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VSliderPaintable.java index 2c25c6b16e..e119bfec5c 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VSliderPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VSliderPaintable.java @@ -24,15 +24,14 @@ public class VSliderPaintable extends VAbstractPaintableWidget { return; } - getWidgetForPaintable().immediate = uidl - .getBooleanAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); getWidgetForPaintable().disabled = uidl .getBooleanAttribute(ATTRIBUTE_DISABLED); - getWidgetForPaintable().readonly = uidl - .getBooleanAttribute(ATTRIBUTE_READONLY); + getWidgetForPaintable().readonly = getState().isReadOnly(); getWidgetForPaintable().vertical = uidl.hasAttribute("vertical"); + // TODO should these style names be used? String style = ""; if (uidl.hasAttribute(ATTRIBUTE_STYLE)) { style = uidl.getStringAttribute(ATTRIBUTE_STYLE); diff --git a/src/com/vaadin/terminal/gwt/client/ui/VTextFieldPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VTextFieldPaintable.java index 5736e77565..5714d6f8d1 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VTextFieldPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VTextFieldPaintable.java @@ -27,11 +27,7 @@ public class VTextFieldPaintable extends VAbstractPaintableWidget implements return; } - if (uidl.getBooleanAttribute(ATTRIBUTE_READONLY)) { - getWidgetForPaintable().setReadOnly(true); - } else { - getWidgetForPaintable().setReadOnly(false); - } + getWidgetForPaintable().setReadOnly(getState().isReadOnly()); getWidgetForPaintable().inputPrompt = uidl .getStringAttribute(VTextField.ATTR_INPUTPROMPT); @@ -40,8 +36,7 @@ public class VTextFieldPaintable extends VAbstractPaintableWidget implements uidl.hasAttribute("maxLength") ? uidl .getIntAttribute("maxLength") : -1); - getWidgetForPaintable().immediate = uidl - .getBooleanAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); getWidgetForPaintable().listenTextChangeEvents = client .hasEventListeners(this, "ie"); diff --git a/src/com/vaadin/terminal/gwt/client/ui/VTreePaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VTreePaintable.java index acb8f8b467..7ee67df69c 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VTreePaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VTreePaintable.java @@ -41,13 +41,11 @@ public class VTreePaintable extends VAbstractPaintableWidget { getWidgetForPaintable().paintableId = uidl.getId(); - getWidgetForPaintable().immediate = uidl - .hasAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); getWidgetForPaintable().disabled = uidl .getBooleanAttribute(ATTRIBUTE_DISABLED); - getWidgetForPaintable().readonly = uidl - .getBooleanAttribute(ATTRIBUTE_READONLY); + getWidgetForPaintable().readonly = getState().isReadOnly(); getWidgetForPaintable().dragMode = uidl.hasAttribute("dragMode") ? uidl .getIntAttribute("dragMode") : 0; diff --git a/src/com/vaadin/terminal/gwt/client/ui/VUploadPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VUploadPaintable.java index cabf17be73..ca622c35c6 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VUploadPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VUploadPaintable.java @@ -25,8 +25,7 @@ public class VUploadPaintable extends VAbstractPaintableWidget { getWidgetForPaintable().submit(); return; } - getWidgetForPaintable().setImmediate( - uidl.getBooleanAttribute(ATTRIBUTE_IMMEDIATE)); + getWidgetForPaintable().setImmediate(getState().isImmediate()); getWidgetForPaintable().client = client; getWidgetForPaintable().paintableId = uidl.getId(); getWidgetForPaintable().nextUploadId = uidl.getIntAttribute("nextid"); @@ -43,8 +42,7 @@ public class VUploadPaintable extends VAbstractPaintableWidget { getWidgetForPaintable().fu.setName(getWidgetForPaintable().paintableId + "_file"); - if (uidl.hasAttribute(ATTRIBUTE_DISABLED) - || uidl.hasAttribute(ATTRIBUTE_READONLY)) { + if (uidl.hasAttribute(ATTRIBUTE_DISABLED) || getState().isReadOnly()) { getWidgetForPaintable().disableUpload(); } else if (!uidl.getBooleanAttribute("state")) { // Enable the button only if an upload is not in progress diff --git a/src/com/vaadin/terminal/gwt/client/ui/VViewPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VViewPaintable.java index ea4a4dee7b..65c7bd2635 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VViewPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VViewPaintable.java @@ -41,8 +41,7 @@ public class VViewPaintable extends VAbstractPaintableWidgetContainer { boolean firstPaint = getWidgetForPaintable().connection == null; getWidgetForPaintable().connection = client; - getWidgetForPaintable().immediate = uidl - .hasAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); getWidgetForPaintable().resizeLazy = uidl .hasAttribute(VView.RESIZE_LAZY); String newTheme = uidl.getStringAttribute("theme"); diff --git a/src/com/vaadin/terminal/gwt/client/ui/VWindowPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/VWindowPaintable.java index b018554e0c..3e060996bf 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VWindowPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VWindowPaintable.java @@ -90,11 +90,9 @@ public class VWindowPaintable extends VAbstractPaintableWidgetContainer clickEventHandler.handleEventHandlerRegistration(client); - getWidgetForPaintable().immediate = uidl - .hasAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().immediate = getState().isImmediate(); - getWidgetForPaintable().setClosable( - !uidl.getBooleanAttribute(ATTRIBUTE_READONLY)); + getWidgetForPaintable().setClosable(!getState().isReadOnly()); // Initialize the position form UIDL int positionx = uidl.getIntVariable("positionx"); diff --git a/src/com/vaadin/terminal/gwt/client/ui/richtextarea/VRichTextAreaPaintable.java b/src/com/vaadin/terminal/gwt/client/ui/richtextarea/VRichTextAreaPaintable.java index 9fa6aeeda0..4a88fba9c1 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/richtextarea/VRichTextAreaPaintable.java +++ b/src/com/vaadin/terminal/gwt/client/ui/richtextarea/VRichTextAreaPaintable.java @@ -40,10 +40,8 @@ public class VRichTextAreaPaintable extends VAbstractPaintableWidget implements return; } - getWidgetForPaintable().setReadOnly( - uidl.getBooleanAttribute(ATTRIBUTE_READONLY)); - getWidgetForPaintable().immediate = uidl - .getBooleanAttribute(ATTRIBUTE_IMMEDIATE); + getWidgetForPaintable().setReadOnly(getState().isReadOnly()); + getWidgetForPaintable().immediate = getState().isImmediate(); int newMaxLength = uidl.hasAttribute("maxLength") ? uidl .getIntAttribute("maxLength") : -1; if (newMaxLength >= 0) { diff --git a/src/com/vaadin/ui/AbstractComponent.java b/src/com/vaadin/ui/AbstractComponent.java index 2a0370e24f..0a2914b8aa 100644 --- a/src/com/vaadin/ui/AbstractComponent.java +++ b/src/com/vaadin/ui/AbstractComponent.java @@ -776,15 +776,6 @@ public abstract class AbstractComponent implements Component, MethodEventSource VAbstractPaintableWidget.ATTRIBUTE_STYLE, getStyle()); } - if (isReadOnly()) { - target.addAttribute( - VAbstractPaintableWidget.ATTRIBUTE_READONLY, true); - } - - if (isImmediate()) { - target.addAttribute( - VAbstractPaintableWidget.ATTRIBUTE_IMMEDIATE, true); - } if (!isEnabled()) { target.addAttribute( VAbstractPaintableWidget.ATTRIBUTE_DISABLED, true); @@ -903,6 +894,9 @@ public abstract class AbstractComponent implements Component, MethodEventSource sharedState.setWidth("" + getCSSWidth()); } + sharedState.setImmediate(isImmediate()); + sharedState.setReadOnly(isReadOnly()); + // if (getCaption() != null) { // state.put(ComponentState.STATE_CAPTION, getCaption()); // } @@ -912,13 +906,6 @@ public abstract class AbstractComponent implements Component, MethodEventSource // if (styles != null && styles.size() > 0) { // state.put(ComponentState.STATE_STYLE, getStyle()); // } - // if (isReadOnly()) { - // state.put(ComponentState.STATE_READONLY, true); - // } - // - // if (isImmediate()) { - // state.put(ComponentState.STATE_IMMEDIATE, true); - // } // if (!isEnabled()) { // state.put(ComponentState.STATE_DISABLED, true); // }