]> Shamusworld >> Repos - architektonas/blobdiff - src/global.h
GUI functionality fixes.
[architektonas] / src / global.h
index 33fcd7a44e87f99ea27fbbabb851d4a7af622c91..93ad6f7f9484a23ecdba2b373f60413b587cb37f 100644 (file)
@@ -4,18 +4,27 @@
 // Global variable class. Note that all vars are class vars, so we don't have
 // to do any instantiation shite.
 
+#include <stdint.h>
+#include <string>
+#include <vector>
 #include <QRectF>
 #include "vector.h"
 
 class QFont;
 
+enum LineStyle { LSNone, LSSolid, LSDash, LSDot, LSDashDot, LSDashDotDot };
+
+typedef std::vector<void *> VPVector;
+typedef std::vector<void *>::iterator VPVectorIter;
+typedef std::vector<bool> BVector;
+typedef std::vector<std::string> SVector;
+
 class Global
 {
        public:
                static double gridSpacing;
                static bool selectionInProgress;
                static QRectF selection;
-               static int currentLayer;
                static QFont * font;
                static Point snapPoint;
                static bool snapPointIsValid;
@@ -29,11 +38,31 @@ class Global
                static bool snapToGrid;
                static bool ignoreClicks;
                static bool dontMove;
+               static uint32_t objectID;
+               static int tool;
+               static int toolState;
 
-               // Coming soon...
                static Point origin;
                static double zoom;
                static Vector screenSize;
+
+               static float scale;
+
+               static float penWidth;
+               static int penStyle;
+               static uint32_t penColor;
+               static bool penStamp;
+
+               static Point intersectPoint[16]; // Overkill, yes
+               static double intersectParam[16]; // Ditto
+               static int numIntersectPoints;
+               static int numIntersectParams;
+
+               static int activeLayer;
+               static int numLayers;
+               static BVector layerHidden;
+               static BVector layerLocked;
+               static SVector layerName;
 };
 
 #endif // __GLOBALS_H__