aboutsummaryrefslogtreecommitdiffstats
path: root/src/menu/container.cpp
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2012-03-22 17:07:36 +0100
committerAlexander Sulfrian <alexander@sulfrian.net>2013-01-05 17:17:52 +0100
commite53dba73eca8238775df52e4177d83eb0a473de2 (patch)
tree52bf6e5800bc7e777769b5e57692cbb5719fb6e8 /src/menu/container.cpp
parent1c39e66f571fb9767257740ee74889ce0eb78993 (diff)
downloadusdx-e53dba73eca8238775df52e4177d83eb0a473de2.tar.gz
usdx-e53dba73eca8238775df52e4177d83eb0a473de2.tar.xz
usdx-e53dba73eca8238775df52e4177d83eb0a473de2.zip
menu: keep frame in container
before the current frame was stored in application, now every container could keep a frame and paint it before all other content
Diffstat (limited to 'src/menu/container.cpp')
-rw-r--r--src/menu/container.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/menu/container.cpp b/src/menu/container.cpp
index a5519f0d..379dd7c1 100644
--- a/src/menu/container.cpp
+++ b/src/menu/container.cpp
@@ -25,6 +25,7 @@
*/
#include "container.hpp"
+#include "frame.hpp"
namespace usdx
{
@@ -43,6 +44,10 @@ namespace usdx
void Container::draw(void)
{
+ if (frame) {
+ frame->repaint();
+ }
+
for (std::list<DrawableControl*>::iterator it =
controls.begin(); it != controls.end(); it++) {
(*it)->repaint();
@@ -58,4 +63,15 @@ namespace usdx
{
controls.remove(child);
}
+
+ void Container::setFrame(Frame *f)
+ {
+ f->set_size(get_size());
+ frame = f;
+ }
+
+ void Container::removeFrame(void)
+ {
+ frame = NULL;
+ }
};