aboutsummaryrefslogtreecommitdiffstats
path: root/src/menu/drawable_control.cpp
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2011-12-25 16:33:45 +0100
committerAlexander Sulfrian <alexander@sulfrian.net>2013-01-05 17:17:50 +0100
commit2d1c84a16c36869ca292b74348f2ef852f2f8a62 (patch)
tree6da35292564452e77dabb315507008da7652b0c0 /src/menu/drawable_control.cpp
parent0f42e8231f3af3d518a5c438ec41a3d849d37a29 (diff)
downloadusdx-2d1c84a16c36869ca292b74348f2ef852f2f8a62.tar.gz
usdx-2d1c84a16c36869ca292b74348f2ef852f2f8a62.tar.xz
usdx-2d1c84a16c36869ca292b74348f2ef852f2f8a62.zip
menu: Container could contains and draw DrawableControls
DrawableControls register/unregister itself during construction/destruction at the Container (supplied as owner) and get automatically drawn
Diffstat (limited to '')
-rw-r--r--src/menu/drawable_control.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/menu/drawable_control.cpp b/src/menu/drawable_control.cpp
index 895193f4..bf2ddc74 100644
--- a/src/menu/drawable_control.cpp
+++ b/src/menu/drawable_control.cpp
@@ -25,15 +25,22 @@
*/
#include "drawable_control.hpp"
+#include "container.hpp"
namespace usdx
{
- DrawableControl::DrawableControl(Control* parent)
- : Control(parent)
+ DrawableControl::DrawableControl(Container* parent)
+ : Control(parent), parent(parent)
{
+ if (parent) {
+ parent->add(this);
+ }
}
DrawableControl::~DrawableControl()
{
+ if (parent) {
+ parent->remove(this);
+ }
}
};