Author: reinhard
Date: 2006-10-16 04:43:21 -0500 (Mon, 16 Oct 2006)
New Revision: 8791

Modified:
   trunk/gnue-forms/src/uidrivers/wx/widgets/_base.py
   trunk/gnue-forms/src/uidrivers/wx/widgets/entry.py
Log:
Fixed wx uidriver for 3-state checkboxes (now used in queries).


Modified: trunk/gnue-forms/src/uidrivers/wx/widgets/_base.py
===================================================================
--- trunk/gnue-forms/src/uidrivers/wx/widgets/_base.py  2006-10-16 09:39:16 UTC 
(rev 8790)
+++ trunk/gnue-forms/src/uidrivers/wx/widgets/_base.py  2006-10-16 09:43:21 UTC 
(rev 8791)
@@ -190,7 +190,16 @@
     except AttributeError:
       pass
 
-    widget.SetValue(wxEncode(value))
+    if isinstance(widget, wx.CheckBox):
+        if value is None:
+            widget.Set3StateValue(wx.CHK_UNDETERMINED)
+        elif value:
+            widget.Set3StateValue(wx.CHK_CHECKED)
+        else:
+            widget.Set3StateValue(wx.CHK_UNCHECKED)
+    else:
+        widget.SetValue(wxEncode(value))
+
     widget.SetEvtHandlerEnabled(TRUE)
 
     if widget.IsEnabled():

Modified: trunk/gnue-forms/src/uidrivers/wx/widgets/entry.py
===================================================================
--- trunk/gnue-forms/src/uidrivers/wx/widgets/entry.py  2006-10-16 09:39:16 UTC 
(rev 8790)
+++ trunk/gnue-forms/src/uidrivers/wx/widgets/entry.py  2006-10-16 09:43:21 UTC 
(rev 8791)
@@ -124,8 +124,9 @@
       newWidget.GetValue = newWidget.GetLabel
 
     elif style == 'checkbox':
-      newWidget = wxCheckBox(event.container, -1, wxEncode(object.label), 
defaultPoint,
-                             defaultSize, wxNO_BORDER | wxWANTS_CHARS)
+      newWidget = wxCheckBox(event.container, -1, wxEncode(object.label),
+              defaultPoint, defaultSize,
+              wxNO_BORDER | wxWANTS_CHARS | wxCHK_3STATE)
       if event.initialize:
         newWidget.SetValue(0)
         EVT_CHECKBOX(newWidget, newWidget.GetId(), self.checkboxHandler)



_______________________________________________
commit-gnue mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/commit-gnue

Reply via email to