]> git.mxchange.org Git - flightgear.git/blobdiff - src/Canvas/gui_mgr.hxx
Refactor PropertyBasedElement and Manager
[flightgear.git] / src / Canvas / gui_mgr.hxx
index 6b010a02054c42509bde069d84dc61f7d4f9c75a..927d73eb16966ac9695862eb592a53bab999d244 100644 (file)
 #ifndef CANVAS_GUI_MGR_HXX_
 #define CANVAS_GUI_MGR_HXX_
 
-#include "property_based_mgr.hxx"
 #include <Canvas/canvas_fwd.hpp>
 #include <Canvas/placement.hxx>
 
+#include <simgear/props/PropertyBasedMgr.hxx>
 #include <simgear/props/propertyObject.hxx>
 
 #include <osg/ref_ptr>
@@ -36,7 +36,7 @@ namespace osgGA
 
 class GUIEventHandler;
 class GUIMgr:
-  public PropertyBasedMgr
+  public simgear::PropertyBasedMgr
 {
   public:
     GUIMgr();
@@ -44,21 +44,20 @@ class GUIMgr:
     virtual void init();
     virtual void shutdown();
 
-    virtual void elementCreated(PropertyBasedElementPtr element);
+    virtual void elementCreated(simgear::PropertyBasedElementPtr element);
 
     bool handleEvent(const osgGA::GUIEventAdapter& ea);
 
   protected:
     osg::ref_ptr<GUIEventHandler>       _event_handler;
     osg::ref_ptr<osg::MatrixTransform>  _transform;
-    osg::ref_ptr<osg::Geode>            _geode_windows;
 
     simgear::PropertyObject<int>        _width,
                                         _height;
 
-    int _last_push,
-        _last_x,
-        _last_y;
+    canvas::WindowWeakPtr _last_push;
+    float _last_x,
+          _last_y;
 
     canvas::WindowPtr getWindow(size_t i);
     canvas::Placements addPlacement( const SGPropertyNode*,