summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-06-14 16:12:35 +0300
committerAndrei Karas <akaras@inbox.ru>2015-06-14 16:12:35 +0300
commit812193ffc15ce42487b92c6c2294475bfcf0b5d9 (patch)
treef5491e9b6c349e6b21e5ab3f2a5bd7f269ebc50d
parent33dc4573f4defbfb40b62d2d5ee1ed8f423c9db7 (diff)
downloadplus-812193ffc15ce42487b92c6c2294475bfcf0b5d9.tar.gz
plus-812193ffc15ce42487b92c6c2294475bfcf0b5d9.tar.bz2
plus-812193ffc15ce42487b92c6c2294475bfcf0b5d9.tar.xz
plus-812193ffc15ce42487b92c6c2294475bfcf0b5d9.zip
Add macro for create widget, call postInit and return widget.
-rw-r--r--src/gui/widgets/createwidget.h2
-rw-r--r--src/gui/widgets/widget.cpp6
-rw-r--r--src/gui/widgets/widget.h2
3 files changed, 9 insertions, 1 deletions
diff --git a/src/gui/widgets/createwidget.h b/src/gui/widgets/createwidget.h
index 3a2102676..61f85e4c0 100644
--- a/src/gui/widgets/createwidget.h
+++ b/src/gui/widgets/createwidget.h
@@ -26,6 +26,6 @@
var->postInit()
#define CREATEWIDGET2(type, ...) \
- static_cast<type>(Widget::callPostInit(new type(__VA_ARGS__)))
+ static_cast<type*>(Widget::callPostInit(new type(__VA_ARGS__)))
#endif // GUI_WIDGETS_CREATEWIDGET_H
diff --git a/src/gui/widgets/widget.cpp b/src/gui/widgets/widget.cpp
index 3be80c772..7fdab305e 100644
--- a/src/gui/widgets/widget.cpp
+++ b/src/gui/widgets/widget.cpp
@@ -513,3 +513,9 @@ void Widget::windowResized()
{
mRedraw = true;
}
+
+Widget *Widget::callPostInit(Widget *const widget)
+{
+ widget->postInit();
+ return widget;
+}
diff --git a/src/gui/widgets/widget.h b/src/gui/widgets/widget.h
index 5868e20aa..416782dc2 100644
--- a/src/gui/widgets/widget.h
+++ b/src/gui/widgets/widget.h
@@ -1027,6 +1027,8 @@ class Widget notfinal : public Widget2
void windowResized();
+ static Widget *callPostInit(Widget *const widget);
+
virtual void postInit()
{ }