]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/wx/tools/XRCed/params.py
Send the calendar and date changed events to the datepicker ctrl first
[wxWidgets.git] / wxPython / wx / tools / XRCed / params.py
index 7142449f847963328d686208c44793040386c9bb..fd7601985c82e1b5bcacfb1af96f22b8fcf6ade4 100644 (file)
@@ -25,11 +25,12 @@ genericExStyles = [
     'wxWS_EX_PROCESS_UI_UPDATES'
     ]
 
-# Global var initialized in Panel.__init__ for button size in screen pixels
-buttonSize = None
-# Button size in dialog units
+# Global vars initialized in Panel.__init__ for button and textbox size in screen pixels
+buttonSize = textSise = None
+# Default Button size in dialog units
 buttonSizeD = (35,-1)
 
+
 # Class that can properly disable children
 class PPanel(wx.Panel):
     def __init__(self, parent, name):
@@ -58,9 +59,10 @@ class ParamBinaryOr(PPanel):
         sizer = wx.BoxSizer()
         self.text = wx.TextCtrl(self, self.ID_TEXT_CTRL, size=wx.Size(200,-1))
         sizer.Add(self.text, 0, wx.RIGHT | wx.ALIGN_CENTER_VERTICAL, 5)
-        self.button = wx.Button(self, self.ID_BUTTON_CHOICES, 'Edit...', size=buttonSize)
-        sizer.Add(self.button, 0, wx.ALIGN_CENTER_VERTICAL)
-        self.SetSizer(sizer)
+        self.button = wx.Button(self, self.ID_BUTTON_CHOICES, 'Edit...', 
+                                size=(buttonSize[0], textSize[1]))
+        sizer.Add(self.button, 0, wx.EXPAND)
+        self.SetSizerAndFit(sizer)
         wx.EVT_BUTTON(self, self.ID_BUTTON_CHOICES, self.OnButtonChoices)
         wx.EVT_TEXT(self, self.ID_TEXT_CTRL, self.OnChange)
     def GetValue(self):
@@ -261,7 +263,7 @@ class ParamFont(PPanel):
         PPanel.OnChange(self, evt)
         self.textModified = True
     def _defaultValue(self):
-        return [`g._sysFont.GetPointSize()`, 'default', 'normal', 'normal', '0', '', '']
+        return [`g.sysFont().GetPointSize()`, 'default', 'normal', 'normal', '0', '', '']
     def GetValue(self):
         if self.textModified:           # text has newer value
             try:
@@ -285,7 +287,7 @@ class ParamFont(PPanel):
                 self.value = self._defaultValue()
         # Make initial font
         # Default values
-        size = g._sysFont.GetPointSize()
+        size = g.sysFont().GetPointSize()
         family = wx.DEFAULT
         style = weight = wx.NORMAL
         underlined = 0
@@ -390,12 +392,16 @@ class ParamUnit(PPanel):
         self.SetSizer(sizer)
         self.spin.Bind(wx.EVT_SPIN_UP, self.OnSpinUp)
         self.spin.Bind(wx.EVT_SPIN_DOWN, self.OnSpinDown)
+        self.text.Bind(wx.EVT_TEXT, self.OnChange)
+        
     def GetValue(self):
         return self.text.GetValue()
     def SetValue(self, value):
+        self.freeze = True
         if not value: value = '0'        
         self.text.SetValue(value)
         self.Change(0)
+        self.freeze = False
     def Change(self, x):
         self.freeze = True
         # Check if we are working with dialog units