4 #include "basewidget.hh"
5 #include "eventdispatcher.hh"
13 class OtkWidget : public OtkBaseWidget, public OtkEventHandler {
17 enum Direction { Horizontal, Vertical };
19 OtkWidget(OtkWidget *parent, Direction = Horizontal);
20 OtkWidget(OtkEventDispatcher *event_dispatcher, Style *style,
21 Direction direction = Horizontal, Cursor cursor = 0,
26 virtual void update(void);
28 void exposeHandler(const XExposeEvent &e);
29 void configureHandler(const XConfigureEvent &e);
31 inline bool isStretchableHorz(void) const { return _stretchable_horz; }
32 void setStretchableHorz(bool s_horz = true) { _stretchable_horz = s_horz; }
34 inline bool isStretchableVert(void) const { return _stretchable_vert; }
35 void setStretchableVert(bool s_vert = true) { _stretchable_vert = s_vert; }
37 inline Direction getDirection(void) const { return _direction; }
38 void setDirection(Direction dir) { _direction = dir; }
40 inline OtkEventDispatcher *getEventDispatcher(void)
41 { return _event_dispatcher; }
42 void setEventDispatcher(OtkEventDispatcher *disp);
47 void adjustHorz(void);
48 void adjustVert(void);
49 void internalResize(int width, int height);
53 bool _stretchable_vert;
54 bool _stretchable_horz;
56 OtkEventDispatcher *_event_dispatcher;