]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/CheckBox.py
A patch from Frame Niessink which adds an additional style that
[wxWidgets.git] / wxPython / demo / CheckBox.py
index 41fb6779877d4057d6be2775c737f6f0b3f46ea0..c54edafefc2a798fe9ba7955187884949b7cc5bb 100644 (file)
@@ -1,7 +1,3 @@
-# 11/15/2003 - Jeff Grimmett (grimmtooth@softhome.net)
-#
-# o Updated for wx namespace
-# 
 
 import  wx
 
@@ -12,20 +8,46 @@ class TestCheckBox(wx.Panel):
         self.log = log
         wx.Panel.__init__(self, parent, -1)
 
-        wx.StaticText(self, -1, "This example uses the wxCheckBox control.", (10, 10))
+        st = wx.StaticText(self, -1, "This example demonstrates the wx.CheckBox control.")#, (10, 10))
 
-        cID = wx.NewId()
-        cb1 = wx.CheckBox(self, cID,   "  Apples", (65, 40), (150, 20), wx.NO_BORDER)
-        cb2 = wx.CheckBox(self, cID+1, "  Oranges", (65, 60), (150, 20), wx.NO_BORDER)
+        cb1 = wx.CheckBox(self, -1, "Apples")#, (65, 40), (150, 20), wx.NO_BORDER)
+        cb2 = wx.CheckBox(self, -1, "Oranges")#, (65, 60), (150, 20), wx.NO_BORDER)
         cb2.SetValue(True)
-        cb3 = wx.CheckBox(self, cID+2, "  Pears", (65, 80), (150, 20), wx.NO_BORDER)
+        cb3 = wx.CheckBox(self, -1, "Pears")#, (65, 80), (150, 20), wx.NO_BORDER)
+        
+        cb4 = wx.CheckBox(self, -1, "3-state checkbox",
+                          style=wx.CHK_3STATE|wx.CHK_ALLOW_3RD_STATE_FOR_USER)
+        cb5 = wx.CheckBox(self, -1, "Align Right", style=wx.ALIGN_RIGHT)
+        
 
         self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb1)
         self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb2)
         self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb3)
+        self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb4)
+        self.Bind(wx.EVT_CHECKBOX, self.EvtCheckBox, cb5)
+
+        sizer = wx.BoxSizer(wx.VERTICAL)
+        sizer.AddMany( [ cb1,
+                         cb2,
+                         cb3,
+                         (20,20),
+                         cb4,
+                         (20,20),
+                         cb5
+                         ])
+
+        border = wx.BoxSizer(wx.VERTICAL)
+        border.Add(st, 0, wx.ALL, 15)
+        border.Add(sizer, 0, wx.LEFT, 50)
+        self.SetSizer(border)
+        
 
     def EvtCheckBox(self, event):
-        self.log.WriteText('EvtCheckBox: %d\n' % event.IsChecked())
+        self.log.write('EvtCheckBox: %d\n' % event.IsChecked())
+        cb = event.GetEventObject()
+        if cb.Is3State():
+            self.log.write("\t3StateValue: %s\n" % cb.Get3StateValue())
+            
 
 #---------------------------------------------------------------------------
 
@@ -36,18 +58,16 @@ def runTest(frame, nb, log):
 #---------------------------------------------------------------------------
 
 
-
-
-
 overview = """\
-A checkbox is a labelled box which is either on (checkmark is visible) or off (no checkmark).
+A checkbox is a labelled box which is either on (checkmark is visible) or off 
+(no checkmark).
 
 """
 
-
+#---------------------------------------------------------------------------
 
 if __name__ == '__main__':
     import sys,os
     import run
-    run.main(['', os.path.basename(sys.argv[0])])
+    run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:])