aboutsummaryrefslogtreecommitdiffstats
path: root/src/menu/control.cpp
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2010-04-23 11:43:21 +0200
committerAlexander Sulfrian <alexander@sulfrian.net>2013-01-05 17:17:47 +0100
commitb3f87944ba62ee82684f30fc89d8bbd5cf472b48 (patch)
tree0099a83f05ae70506c1355fc2f3c7c29803664cd /src/menu/control.cpp
parentf2b29d039424262426fd4598ce076f54e31854cf (diff)
downloadusdx-b3f87944ba62ee82684f30fc89d8bbd5cf472b48.tar.gz
usdx-b3f87944ba62ee82684f30fc89d8bbd5cf472b48.tar.xz
usdx-b3f87944ba62ee82684f30fc89d8bbd5cf472b48.zip
added parent to control
parent is used to delete the objects if the parent is deleted
Diffstat (limited to '')
-rw-r--r--src/menu/control.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/menu/control.cpp b/src/menu/control.cpp
index 373fb482..68b5c328 100644
--- a/src/menu/control.cpp
+++ b/src/menu/control.cpp
@@ -24,15 +24,31 @@
* $Id$
*/
+#include <stddef.h>
#include "control.hpp"
namespace usdx
{
- Control::Control()
+ Control::Control(Control *parent)
+ : parent(parent)
{
}
Control::~Control()
{
+ if (parent) {
+ delete parent;
+ parent = NULL;
+ }
+ }
+
+ void Control::set_parent(Control *parent)
+ {
+ this->parent = parent;
+ }
+
+ Control* Control::get_parent(void) const
+ {
+ return parent;
}
};