]> git.tdb.fi Git - libs/gltk.git/commitdiff
Take a Window pointer along with custom input devices
authorMikko Rasa <tdb@tdb.fi>
Sun, 24 Mar 2013 15:42:16 +0000 (17:42 +0200)
committerMikko Rasa <tdb@tdb.fi>
Sun, 24 Mar 2013 15:42:16 +0000 (17:42 +0200)
source/root.cpp
source/root.h

index 1b47e8a0ff3843fb645d5ef6abffdb076b62de8f..eaf58194863a961e209f22ee175c90b1ac852aac 100644 (file)
@@ -15,22 +15,23 @@ Root::Root(const Resources &r, Graphics::Window &window):
        mouse(new Input::Mouse(window)),
        own_input(true)
 {
-       set_geometry(Geometry(0, 0, window.get_width(), window.get_height()));
-
-       init();
+       init(&window);
 }
 
-Root::Root(const Resources &r, Input::Keyboard *k, Input::Mouse *m):
+Root::Root(const Resources &r, Graphics::Window *window, Input::Keyboard *k, Input::Mouse *m):
        resources(r),
        keyboard(k),
        mouse(m),
        own_input(false)
 {
-       init();
+       init(window);
 }
 
-void Root::init()
+void Root::init(Graphics::Window *window)
 {
+       if(window)
+               set_geometry(Geometry(0, 0, window->get_width(), window->get_height()));
+
        lbl_tooltip = 0;
        tooltip_target = 0;
 
index 5d5a3d1fa5e8e84c6f9f27eb96888fdc19238f77..64829e767899fac2bcf32c8465777f724f68d9f4 100644 (file)
@@ -38,9 +38,11 @@ public:
        window's size, and input devices are created automatically. */
        Root(const Resources &, Graphics::Window &);
 
-       Root(const Resources &, Input::Keyboard *, Input::Mouse *);
+       /** Creates a Root widget with custom input devices.  If window is not null,
+       it is used to set the widget's initial geometry. */
+       Root(const Resources &, Graphics::Window *, Input::Keyboard *, Input::Mouse *);
 private:
-       void init();
+       void init(Graphics::Window *);
 public:
        virtual ~Root();