]> git.mxchange.org Git - flightgear.git/blobdiff - src/GUI/dialog.hxx
Added two missing files from JSBSim.org that were missing in the last sync.
[flightgear.git] / src / GUI / dialog.hxx
index e272e96a9e76a9a1c37f6efa5d6c76a5e00bea80..749c355cbdd6f215e75e7b5441e95cac783016db 100644 (file)
@@ -8,21 +8,20 @@
 #endif
 
 #include <plib/puAux.h>
-#include <plib/sg.h>
 
 #include <simgear/compiler.h>  // for SG_USING_STD
 #include <simgear/props/props.hxx>
 #include <simgear/misc/sg_path.hxx>
 
 #include <vector>
-SG_USING_STD(vector);
+using std::vector;
 
 
 // ugly temporary workaround for plib's lack of user defined class ids  FIXME
 #define FGCLASS_LIST          0x00000001
 #define FGCLASS_AIRPORTLIST   0x00000002
 #define FGCLASS_PROPERTYLIST  0x00000004
-class GUI_ID { public: GUI_ID(int id) : id(id) {} int id; };
+class GUI_ID { public: GUI_ID(int id) : id(id) {} virtual ~GUI_ID() {} int id; };
 
 
 
@@ -175,16 +174,25 @@ private:
 //
 class fgPopup : public puPopup {
 public:
-    fgPopup(int x, int y, bool d = true) : puPopup(x, y) { _dragging = false; _draggable = d;}
+    fgPopup(int x, int y, bool r = true, bool d = true) :
+            puPopup(x, y), _draggable(d), _resizable(r), _dragging(false)
+    {}
     int checkHit(int b, int up, int x, int y);
     int checkKey(int key, int updown);
     int getHitObjects(puObject *, int x, int y);
     puObject *getKeyObject(puObject *, int key);
     puObject *getActiveInputField(puObject *);
+    void applySize(puObject *);
 private:
+    enum { LEFT = 1, RIGHT = 2, TOP = 4, BOTTOM = 8 };
     bool _draggable;
+    bool _resizable;
     bool _dragging;
-    int _dX, _dY;
+    int _resizing;
+    int _start_cursor;
+    int _cursor;
+    int _dlgX, _dlgY, _dlgW, _dlgH;
+    int _startX, _startY;
 };