diff options
author | Sebastian Geerken <devnull@localhost> | 2013-12-09 14:44:42 +0100 |
---|---|---|
committer | Sebastian Geerken <devnull@localhost> | 2013-12-09 14:44:42 +0100 |
commit | 01f697091153846bdffc73b3150ba37c763301cc (patch) | |
tree | 84773dff07a8498e7cc62695d89a6ecb29378a82 /dw/widget.hh | |
parent | ee66f4f97e38d11e68b9515b7043aa8ac6f63c74 (diff) | |
parent | 6c7572f8bd23064f96ba716e1ba8ba8a34847001 (diff) |
Merge (large!).
Diffstat (limited to 'dw/widget.hh')
-rw-r--r-- | dw/widget.hh | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/dw/widget.hh b/dw/widget.hh index 7dd12267..c9aeb427 100644 --- a/dw/widget.hh +++ b/dw/widget.hh @@ -97,6 +97,28 @@ protected: BLOCK_LEVEL = 1 << 9, }; + /** + * \brief Implementation which represents the whole widget. + * + * The only instance is set created needed. + */ + class WidgetImgRenderer: public style::StyleImage::ExternalWidgetImgRenderer + { + private: + Widget *widget; + + public: + inline WidgetImgRenderer (Widget *widget) { this->widget = widget; } + + bool readyToDraw (); + void getBgArea (int *x, int *y, int *width, int *height); + void getRefArea (int *xRef, int *yRef, int *widthRef, int *heightRef); + style::Style *getStyle (); + void draw (int x, int y, int width, int height); + }; + + WidgetImgRenderer *widgetImgRenderer; + private: /** * \brief The parent widget, NULL for top-level widgets. @@ -351,6 +373,8 @@ public: void scrollTo (HPosition hpos, VPosition vpos, int x, int y, int width, int height); + void getPaddingArea (int *xPad, int *yPad, int *widthPad, int *heightPad); + /** * \brief Return an iterator for this widget. * |