aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/itmill/toolkit/ui/AbstractComponentContainer.java
diff options
context:
space:
mode:
authorArtur Signell <artur.signell@itmill.com>2008-08-25 08:42:23 +0000
committerArtur Signell <artur.signell@itmill.com>2008-08-25 08:42:23 +0000
commit25009782651273d7ce8309b01fbaed2288a0ac74 (patch)
tree6a05203660ebf15760867d64b25b8decac5f9d3c /src/com/itmill/toolkit/ui/AbstractComponentContainer.java
parentbdc3f94efde8402e714d0dff8706a6790ecdc638 (diff)
downloadvaadin-framework-25009782651273d7ce8309b01fbaed2288a0ac74.tar.gz
vaadin-framework-25009782651273d7ce8309b01fbaed2288a0ac74.zip
Fixed #677 disabling components inside a disabled container
svn changeset:5252/svn branch:trunk
Diffstat (limited to 'src/com/itmill/toolkit/ui/AbstractComponentContainer.java')
-rw-r--r--src/com/itmill/toolkit/ui/AbstractComponentContainer.java25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/com/itmill/toolkit/ui/AbstractComponentContainer.java b/src/com/itmill/toolkit/ui/AbstractComponentContainer.java
index 93af36d248..bce552e3d9 100644
--- a/src/com/itmill/toolkit/ui/AbstractComponentContainer.java
+++ b/src/com/itmill/toolkit/ui/AbstractComponentContainer.java
@@ -205,4 +205,27 @@ public abstract class AbstractComponentContainer extends AbstractComponent
}
}
-}
+ public void setEnabled(boolean enabled) {
+ super.setEnabled(enabled);
+
+ updateComponentDisabledState(!enabled);
+ }
+
+ public void setDisabledByContainer(boolean disabledByContainer) {
+ super.setDisabledByContainer(disabledByContainer);
+
+ updateComponentDisabledState(disabledByContainer);
+ }
+
+ private void updateComponentDisabledState(boolean disabled) {
+ // Update the disabledByContainer state for all subcomponents
+ for (Iterator i = getComponentIterator(); i.hasNext();) {
+ Component c = (Component) i.next();
+ if (c instanceof AbstractComponent) {
+ ((AbstractComponent) c).setDisabledByContainer(disabled);
+ }
+ }
+
+ }
+
+} \ No newline at end of file