]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/gdicmn.cpp
dynamic event types actually work with these changes, also corrected more
[wxWidgets.git] / src / common / gdicmn.cpp
index ee750ee93bad83a8dac84cace8b79ab179b6db59..a9481d6f49b51fd8269cecfcc98153f916ae6353 100644 (file)
@@ -36,6 +36,7 @@
 #include "wx/app.h"
 #include "wx/dc.h"
 #include "wx/utils.h"
 #include "wx/app.h"
 #include "wx/dc.h"
 #include "wx/utils.h"
+#include "wx/settings.h"
 
 #include "wx/log.h"
 #include <string.h>
 
 #include "wx/log.h"
 #include <string.h>
@@ -67,8 +68,8 @@ wxRect::wxRect(const wxPoint& topLeft, const wxPoint& bottomRight)
 {
   x = topLeft.x;
   y = topLeft.y;
 {
   x = topLeft.x;
   y = topLeft.y;
-  width = bottomRight.x - topLeft.x;
-  height = bottomRight.y - topLeft.y;
+  width = bottomRight.x - topLeft.x + 1;
+  height = bottomRight.y - topLeft.y + 1;
 
   if (width < 0)
   {
 
   if (width < 0)
   {
@@ -135,6 +136,9 @@ wxColourDatabase::~wxColourDatabase ()
       delete col;
       node = next;
     }
       delete col;
       node = next;
     }
+#ifdef __WXPM__
+    delete [] m_palTable;
+#endif
 }
 
 // Colour database stuff
 }
 
 // Colour database stuff
@@ -224,11 +228,22 @@ void wxColourDatabase::Initialize ()
         {wxT("MEDIUM GREY"), 100, 100, 100},
     };
 
         {wxT("MEDIUM GREY"), 100, 100, 100},
     };
 
-    for ( size_t n = 0; n < WXSIZEOF(wxColourTable); n++ )
+    size_t      n;
+
+    for ( n = 0; n < WXSIZEOF(wxColourTable); n++ )
     {
         const wxColourDesc& cc = wxColourTable[n];
         Append(cc.name, new wxColour(cc.r,cc.g,cc.b));
     }
     {
         const wxColourDesc& cc = wxColourTable[n];
         Append(cc.name, new wxColour(cc.r,cc.g,cc.b));
     }
+#ifdef __WXPM__
+    m_palTable = new long[n];
+    for ( n = 0; n < WXSIZEOF(wxColourTable); n++ )
+    {
+        const wxColourDesc& cc = wxColourTable[n];
+        m_palTable[n] = OS2RGB(cc.r,cc.g,cc.b);
+    }
+    m_nSize = n;
+#endif
 }
 
 /*
 }
 
 /*
@@ -360,13 +375,20 @@ void wxInitializeStockObjects ()
 #endif
 
   // why under MSW fonts shouldn't have the standard system size?
 #endif
 
   // why under MSW fonts shouldn't have the standard system size?
+/*
 #ifdef __WXMSW__
   static const int sizeFont = 10;
 #else
 #ifdef __WXMSW__
   static const int sizeFont = 10;
 #else
+#endif
+*/
+#if defined(__WXPM__) || defined(__WXMAC__)
   static const int sizeFont = 12;
   static const int sizeFont = 12;
+  wxNORMAL_FONT = new wxFont (sizeFont, wxMODERN, wxNORMAL, wxNORMAL);
+#else
+  wxNORMAL_FONT = new wxFont(wxSystemSettings::GetSystemFont(wxSYS_DEFAULT_GUI_FONT));
+  static const int sizeFont = wxNORMAL_FONT->GetPointSize();
 #endif
 
 #endif
 
-  wxNORMAL_FONT = new wxFont (sizeFont, wxMODERN, wxNORMAL, wxNORMAL);
   wxSMALL_FONT = new wxFont (sizeFont - 2, wxSWISS, wxNORMAL, wxNORMAL);
   wxITALIC_FONT = new wxFont (sizeFont, wxROMAN, wxITALIC, wxNORMAL);
   wxSWISS_FONT = new wxFont (sizeFont, wxSWISS, wxNORMAL, wxNORMAL);
   wxSMALL_FONT = new wxFont (sizeFont - 2, wxSWISS, wxNORMAL, wxNORMAL);
   wxITALIC_FONT = new wxFont (sizeFont, wxROMAN, wxITALIC, wxNORMAL);
   wxSWISS_FONT = new wxFont (sizeFont, wxSWISS, wxNORMAL, wxNORMAL);
@@ -685,6 +707,13 @@ wxSize wxGetDisplaySize()
     return wxSize(x, y);
 }
 
     return wxSize(x, y);
 }
 
+wxSize wxGetDisplaySizeMM()
+{
+    int x, y;
+    wxDisplaySizeMM(& x, & y);
+    return wxSize(x, y);
+}
+
 wxResourceCache::~wxResourceCache ()
 {
     wxNode *node = First ();
 wxResourceCache::~wxResourceCache ()
 {
     wxNode *node = First ();