+#include <iostream>
#include "button.hh"
namespace otk {
OtkFocusWidget::resize(ft.measureString(_text) + bevel * 2,
ft.height() + bevel * 2);
-
OtkFocusWidget::update();
ft.drawString(getWindow(), bevel, bevel, *text_color, _text);
} else
OtkFocusWidget::update();
+
+ _dirty = false;
}
-bool OtkButton::expose(const XExposeEvent &e)
+int OtkButton::buttonPressHandler(const XButtonEvent &e)
{
+ press();
_dirty = true;
- return OtkFocusWidget::expose(e);
+ update();
+ return OtkFocusWidget::buttonPressHandler(e);
+}
+
+int OtkButton::buttonReleaseHandler(const XButtonEvent &e)
+{
+ release();
+ _dirty = true;
+ update();
+ return OtkFocusWidget::buttonReleaseHandler(e);
+}
+
+int OtkButton::exposeHandler(const XExposeEvent &e)
+{
+ _dirty = true;
+ return OtkFocusWidget::exposeHandler(e);
+}
+
+int OtkButton::configureHandler(const XConfigureEvent &e)
+{
+ if (!(e.width == width() && e.height == height()))
+ _dirty = true;
+ return OtkFocusWidget::configureHandler(e);
}
}