]> git.saurik.com Git - wxWidgets.git/blobdiff - src/x11/utilsx.cpp
applying patch, fixes #10523
[wxWidgets.git] / src / x11 / utilsx.cpp
index a2ba48cb008b3369f17764cc379bd16be7afa4ad..a635f8f7e816cb8ae0209c9677a3872e76e313b6 100644 (file)
@@ -9,13 +9,30 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
+// for compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __VMS
+#define XShapeQueryExtension XSHAPEQUERYEXTENSION
+#endif
+
 #include "wx/x11/privx.h"
 
 #ifdef HAVE_XSHAPE
 #include "wx/x11/privx.h"
 
 #ifdef HAVE_XSHAPE
-#include <X11/extensions/shape.h>
-#include "wx/region.h"
-#include "wx/bitmap.h"
-#include "wx/dcmemory.h"
+
+    #ifndef WX_PRECOMP
+        #include "wx/bitmap.h"
+        #include "wx/region.h"
+    #endif
+
+    #ifdef __VMS
+        #include "wx/vms_x_fix.h"
+        #include <X11/shape.h>
+    #else
+        #include <X11/extensions/shape.h>
+    #endif
+
+    #include "wx/dcmemory.h"
 #endif
 
 // ----------------------------------------------------------------------------
 #endif
 
 // ----------------------------------------------------------------------------
@@ -41,14 +58,14 @@ bool wxDoSetShape( Display* xdisplay,
     else
     {
         // wxRegion::ConvertToBitmap gives us the wrong Pixmap:
     else
     {
         // wxRegion::ConvertToBitmap gives us the wrong Pixmap:
-        // polichrome and with black and whire reversed
+        // polychrome and with black and white reversed
         wxRect box = region.GetBox();
         wxBitmap bmp(box.GetRight(), box.GetBottom(), 1);
         wxMemoryDC dc;
         dc.SelectObject(bmp);
         dc.SetBackground(*wxBLACK_BRUSH);
         dc.Clear();
         wxRect box = region.GetBox();
         wxBitmap bmp(box.GetRight(), box.GetBottom(), 1);
         wxMemoryDC dc;
         dc.SelectObject(bmp);
         dc.SetBackground(*wxBLACK_BRUSH);
         dc.Clear();
-        dc.SetClippingRegion(region);
+        dc.SetDeviceClippingRegion(region);
         dc.SetBackground(*wxWHITE_BRUSH);
         dc.Clear();
         dc.SelectObject(wxNullBitmap);
         dc.SetBackground(*wxWHITE_BRUSH);
         dc.Clear();
         dc.SelectObject(wxNullBitmap);
@@ -170,7 +187,7 @@ void wxXVisualInfo::Init( Display* dpy, XVisualInfo* vi )
     XColor* colors = (XColor*) m_visualColormap;
 
     for (int i = 0; i < m_visualColormapSize; i++)
     XColor* colors = (XColor*) m_visualColormap;
 
     for (int i = 0; i < m_visualColormapSize; i++)
-           colors[i].pixel = i;
+        colors[i].pixel = i;
 
     XQueryColors( dpy, DefaultColormap(dpy, vi->screen),
                   colors, m_visualColormapSize );
 
     XQueryColors( dpy, DefaultColormap(dpy, vi->screen),
                   colors, m_visualColormapSize );
@@ -212,7 +229,7 @@ void wxXVisualInfo::Init( Display* dpy, XVisualInfo* vi )
                     index |= (g >> (5 - m_visualGreenPrec)) << m_visualGreenShift;
                     index |= (b >> (5 - m_visualBluePrec)) << m_visualBlueShift;
                 }
                     index |= (g >> (5 - m_visualGreenPrec)) << m_visualGreenShift;
                     index |= (b >> (5 - m_visualBluePrec)) << m_visualBlueShift;
                 }
-                m_colorCube[ (r*1024) + (g*32) + b ] = index;
+                m_colorCube[ (r*1024) + (g*32) + b ] = (unsigned char)index;
             }
         }
     }
             }
         }
     }