]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dc.cpp
IMHO these are the correct flags for borland
[wxWidgets.git] / src / msw / dc.cpp
index 33423e3172232d21b22a124b9378f9fd78198bcc..ad8039c3263af9f2e82b86b714142ea8eddcb545 100644 (file)
     #include <print.h>
 #endif
 
-#ifdef DrawText
-    #undef DrawText
-#endif
-
-#ifdef GetCharWidth
-    #undef GetCharWidth
-#endif
-
-#ifdef StartDoc
-    #undef StartDoc
-#endif
-
 #if !USE_SHARED_LIBRARY
     IMPLEMENT_ABSTRACT_CLASS(wxDC, wxObject)
 #endif
 // constants
 // ---------------------------------------------------------------------------
 
-#define VIEWPORT_EXTENT 1000
+static const int VIEWPORT_EXTENT = 1000;
+
+static const int MM_POINTS = 9;
+static const int MM_METRIC = 10;
 
 // ---------------------------------------------------------------------------
 // macros
 // ---------------------------------------------------------------------------
 
+// Logical to device
+// Absolute
+#define XLOG2DEV(x) (x)
+#define YLOG2DEV(y) (y)
+
+// Relative
+#define XLOG2DEVREL(x) (x)
+#define YLOG2DEVREL(y) (y)
+
+// Device to logical
+// Absolute
+#define XDEV2LOG(x) (x)
+
+#define YDEV2LOG(y) (y)
+
+// Relative
+#define XDEV2LOGREL(x) (x)
+#define YDEV2LOGREL(y) (y)
+
+/*
+ * Have the same macros as for XView but not for every operation:
+ * just for calculating window/viewport extent (a better way of scaling).
+ */
+
+// Logical to device
+// Absolute
+#define MS_XLOG2DEV(x) LogicalToDevice(x)
+
+#define MS_YLOG2DEV(y) LogicalToDevice(y)
+
+// Relative
+#define MS_XLOG2DEVREL(x) LogicalToDeviceXRel(x)
+#define MS_YLOG2DEVREL(y) LogicalToDeviceYRel(y)
+
+// Device to logical
+// Absolute
+#define MS_XDEV2LOG(x) DeviceToLogicalX(x)
+
+#define MS_YDEV2LOG(y) DeviceToLogicalY(y)
+
+// Relative
+#define MS_XDEV2LOGREL(x) DeviceToLogicalXRel(x)
+#define MS_YDEV2LOGREL(y) DeviceToLogicalYRel(y)
+
 #define YSCALE(y) (yorigin - (y))
 
+#define     wx_round(a)    (int)((a)+.5)
+
 // ===========================================================================
 // implementation
 // ===========================================================================