aboutsummaryrefslogtreecommitdiff
path: root/dw
diff options
context:
space:
mode:
Diffstat (limited to 'dw')
-rw-r--r--dw/fltkui.cc9
-rw-r--r--dw/ui.cc5
-rw-r--r--dw/ui.hh1
3 files changed, 14 insertions, 1 deletions
diff --git a/dw/fltkui.cc b/dw/fltkui.cc
index 4e39ad7d..44957848 100644
--- a/dw/fltkui.cc
+++ b/dw/fltkui.cc
@@ -235,7 +235,14 @@ bool FltkResource::isEnabled ()
void FltkResource::setEnabled (bool enabled)
{
- /** \bug Not implemented. */
+ for (Iterator <ViewAndWidget> it = viewsAndWidgets->iterator ();
+ it.hasNext(); ) {
+ ViewAndWidget *viewAndWidget = it.getNext ();
+ if (enabled)
+ viewAndWidget->widget->activate ();
+ else
+ viewAndWidget->widget->deactivate ();
+ }
}
// ----------------------------------------------------------------------
diff --git a/dw/ui.cc b/dw/ui.cc
index b2f9531d..b58669c5 100644
--- a/dw/ui.cc
+++ b/dw/ui.cc
@@ -101,6 +101,11 @@ void Embed::setDisplayed (bool displayed)
resource->setDisplayed (displayed);
}
+void Embed::setEnabled (bool enabled)
+{
+ resource->setEnabled (enabled);
+}
+
void Embed::draw (View *view, Rectangle *area)
{
drawWidgetBox (view, area, false);
diff --git a/dw/ui.hh b/dw/ui.hh
index 37724b52..29ee8916 100644
--- a/dw/ui.hh
+++ b/dw/ui.hh
@@ -244,6 +244,7 @@ public:
void setAscent (int ascent);
void setDescent (int descent);
void setDisplayed (bool displayed);
+ void setEnabled (bool displayed);
void draw (View *view, Rectangle *area);
Iterator *iterator (Content::Type mask, bool atEnd);
void setStyle (style::Style *style);