]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/AlphaDrawing.py
added wxSizerFlags::Shaped() and FixedMinSize() methods
[wxWidgets.git] / wxPython / demo / AlphaDrawing.py
index 8c3f973d96a74df3cfe71363e8dfde49a96885c5..7023b7bedadc11a448f579c9b98626a34e5fdaa8 100644 (file)
@@ -7,20 +7,26 @@ class TestPanel(wx.Panel):
     def __init__(self, parent, log):
         self.log = log
         wx.Panel.__init__(self, parent, -1)
-        
-        wx.StaticText(self, -1,
-                      "On the Mac these squares should be transparent,\n"
-                      "if the CoreGrahics option is turned on.",
-                      (20, 20))
-        
         self.Bind(wx.EVT_PAINT, self.OnPaint)
 
+        txt = """\
+If this build of wxPython includes the new wx.GCDC class (which
+provides the wx.DC API on top of the new wx.GraphicsContext class)
+then these squares should be transparent.
+"""
+        wx.StaticText(self, -1, txt, (20, 20))
+        
+
     def OnPaint(self, evt):
-        dc = wx.PaintDC(self)
+        pdc = wx.PaintDC(self)
+        try:
+            dc = wx.GCDC(pdc)
+        except:
+            dc = pdc
         rect = wx.Rect(0,0, 100, 100)
-        for RGB, pos in [((178,  34,  34), ( 50,  70)),
-                         (( 35, 142,  35), (110, 130)),
-                         ((  0,   0, 139), (170,  70))
+        for RGB, pos in [((178,  34,  34), ( 50,  90)),
+                         (( 35, 142,  35), (110, 150)),
+                         ((  0,   0, 139), (170,  90))
                          ]:
             r, g, b = RGB
             penclr   = wx.Colour(r, g, b, wx.ALPHA_OPAQUE)
@@ -28,7 +34,7 @@ class TestPanel(wx.Panel):
             dc.SetPen(wx.Pen(penclr))
             dc.SetBrush(wx.Brush(brushclr))
             rect.SetPosition(pos)
-            dc.DrawRectangleRect(rect)
+            dc.DrawRoundedRectangleRect(rect, 8)
             
         
 #----------------------------------------------------------------------
@@ -44,10 +50,13 @@ def runTest(frame, nb, log):
 overview = """<html><body>
 <h2><center>Alpha Drawing</center></h2>
 
-The wx.DC on Mac now supports alpha transparent drawing using pens and
-brushes.  This is accomplished by enabling the wx.Colour class to have
-a fourth component for the alpha value, where 0 is fully transparent,
-and 255 is fully opaque.
+The wx.GCDC class is a class that implemented the wx.DC API using the
+new wx.GraphicsContext class, and so it supports anti-aliased drawing
+using pens and brushes, that can optionally also be drawn using an
+alpha transparency.  (On the Mac all the DC classes are using this new
+implementation.)  This is accomplished by enabling the wx.Colour class
+to have a fourth component for the alpha value, where 0 is fully
+transparent, and 255 is fully opaque.
 
 </body></html>
 """