X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b372319fa08ce9b2794040bcdcb82b559d53da25..d1b736b7968ceea4233f3fceecdb01173f68a9a3:/wxPython/wx/tools/XRCed/params.py?ds=sidebyside diff --git a/wxPython/wx/tools/XRCed/params.py b/wxPython/wx/tools/XRCed/params.py index 3a05721ca0..fd7601985c 100644 --- a/wxPython/wx/tools/XRCed/params.py +++ b/wxPython/wx/tools/XRCed/params.py @@ -25,17 +25,19 @@ 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): wx.Panel.__init__(self, parent, -1, name=name) self.modified = self.freeze = False def Enable(self, value): + self.enabled = value # Something strange is going on with enable so we make sure... for w in self.GetChildren(): w.Enable(value) @@ -57,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): @@ -260,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: @@ -284,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 @@ -389,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 @@ -450,12 +457,12 @@ class ParamMultilineText(PPanel): dlg.Destroy() class ParamText(PPanel): - def __init__(self, parent, name, textWidth=-1): + def __init__(self, parent, name, textWidth=-1, style=0): PPanel.__init__(self, parent, name) self.ID_TEXT_CTRL = wx.NewId() # We use sizer even here to have the same size of text control sizer = wx.BoxSizer() - self.text = wx.TextCtrl(self, self.ID_TEXT_CTRL, size=wx.Size(textWidth,-1)) + self.text = wx.TextCtrl(self, self.ID_TEXT_CTRL, size=wx.Size(textWidth,-1), style=style) if textWidth == -1: option = 1 else: option = 0 sizer.Add(self.text, option, wx.ALIGN_CENTER_VERTICAL | wx.TOP | wx.BOTTOM, 2) @@ -486,7 +493,8 @@ class ParamEncoding(ParamText): class ParamComment(ParamText): def __init__(self, parent, name): - ParamText.__init__(self, parent, name, 330 + buttonSize[0]) + ParamText.__init__(self, parent, name, 330 + buttonSize[0], + style=wx.TE_PROCESS_ENTER) class ContentDialog(wx.Dialog): def __init__(self, parent, value):