]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/wxMask.py
reSWIGed
[wxWidgets.git] / wxPython / demo / wxMask.py
index 7f93f019012d577ba03f545618a61558a65fa983..fb4f453497eae5d3c00e0c0089a045d666466254 100644 (file)
@@ -26,20 +26,21 @@ logicList = [
     ('wxXOR', wxXOR),
 ]
 
+import images
+
 class TestMaskWindow(wxScrolledWindow):
     def __init__(self, parent):
         wxScrolledWindow.__init__(self, parent, -1)
         self.SetBackgroundColour(wxColour(0,128,0))
 
         # A reference bitmap that we won't mask
-        self.bmp_nomask  = wxBitmap('bitmaps/test_image.png', wxBITMAP_TYPE_PNG)
+        self.bmp_nomask  = images.getTestStar2Bitmap()
 
         # One that we will
-        self.bmp_withmask  = wxBitmap('bitmaps/test_image.png', wxBITMAP_TYPE_PNG)
+        self.bmp_withmask  = images.getTestStar2Bitmap()
 
         # this mask comes from a monochrome bitmap
-        self.bmp_themask = wxBitmap('bitmaps/test_mask.bmp',  wxBITMAP_TYPE_BMP)
-        self.bmp_themask.SetDepth(1)
+        self.bmp_themask = wxBitmapFromImage(images.getTestMaskImage(), 1)
         mask = wxMask(self.bmp_themask)
 
         # set the mask on our bitmap
@@ -47,7 +48,7 @@ class TestMaskWindow(wxScrolledWindow):
 
         # Now we'll create a mask in a bit of an easier way, by picking a
         # colour in the image that is to be the transparent colour.
-        self.bmp_withcolourmask  = wxBitmap('bitmaps/test_image.png', wxBITMAP_TYPE_PNG)
+        self.bmp_withcolourmask  = images.getTestStar2Bitmap()
         mask = wxMaskColour(self.bmp_withcolourmask, wxWHITE)
         self.bmp_withcolourmask.SetMask(mask)
 
@@ -64,17 +65,17 @@ class TestMaskWindow(wxScrolledWindow):
         # make an interesting background...
         dc.SetPen(wxMEDIUM_GREY_PEN)
         for i in range(100):
-            dc.DrawLine(0,i*10,i*10,0)
+            dc.DrawLine((0,i*10), (i*10,0))
 
         # draw raw image, mask, and masked images
-        dc.DrawText('original image', 0,0)
-        dc.DrawBitmap(self.bmp_nomask, 0,20, 0)
-        dc.DrawText('with colour mask', 0,100)
-        dc.DrawBitmap(self.bmp_withcolourmask, 0,120, 1)
-        dc.DrawText('the mask image', 0,200)
-        dc.DrawBitmap(self.bmp_themask, 0,220, 0)
-        dc.DrawText('masked image', 0,300)
-        dc.DrawBitmap(self.bmp_withmask, 0,320, 1)
+        dc.DrawText('original image', (0,0))
+        dc.DrawBitmap(self.bmp_nomask, (0,20), 0)
+        dc.DrawText('with colour mask', (0,100))
+        dc.DrawBitmap(self.bmp_withcolourmask, (0,120), 1)
+        dc.DrawText('the mask image', (0,200))
+        dc.DrawBitmap(self.bmp_themask, (0,220), 0)
+        dc.DrawText('masked image', (0,300))
+        dc.DrawBitmap(self.bmp_withmask, (0,320), 1)
 
         cx,cy = self.bmp_themask.GetWidth(), self.bmp_themask.GetHeight()
 
@@ -83,18 +84,28 @@ class TestMaskWindow(wxScrolledWindow):
         i = 0
         for text, code in logicList:
             x,y = 120+150*(i%4), 20+100*(i/4)
-            dc.DrawText(text, x, y-20)
+            dc.DrawText(text, (x, y-20))
             mdc.SelectObject(self.bmp_withcolourmask)
-            dc.Blit(x,y, cx,cy, mdc, 0,0, code, true)
+            dc.Blit((x,y), (cx,cy), mdc, (0,0), code, True)
             i = i + 1
 
 
+# On wxGTK there needs to be a panel under wxScrolledWindows if they are
+# going to be in a wxNotebook...
+class TestPanel(wxPanel):
+    def __init__(self, parent, ID):
+        wxPanel.__init__(self, parent, ID)
+        self.win = TestMaskWindow(self)
+        EVT_SIZE(self, self.OnSize)
+
+    def OnSize(self, evt):
+        self.win.SetSize(evt.GetSize())
 
 
 #----------------------------------------------------------------------
 
 def runTest(frame, nb, log):
-    win = TestMaskWindow(nb)
+    win = TestPanel(nb, -1)
     return win
 
 #----------------------------------------------------------------------
@@ -103,3 +114,11 @@ def runTest(frame, nb, log):
 
 overview = """\
 """
+
+
+
+if __name__ == '__main__':
+    import sys,os
+    import run
+    run.main(['', os.path.basename(sys.argv[0])])
+