Don't create the fonts until after they are needed (after the App
object has been created.) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -10,11 +10,6 @@ import sys
|
||||
|
||||
# Global constants
|
||||
|
||||
sysFont = wxSystemSettings_GetFont(wxSYS_SYSTEM_FONT)
|
||||
labelFont = wxFont(sysFont.GetPointSize(), wxDEFAULT, wxNORMAL, wxBOLD)
|
||||
modernFont = wxFont(sysFont.GetPointSize(), wxMODERN, wxNORMAL, wxNORMAL)
|
||||
smallerFont = wxFont(sysFont.GetPointSize()-2, wxDEFAULT, wxNORMAL, wxNORMAL)
|
||||
|
||||
progname = 'XRCed'
|
||||
version = '0.1.2-1'
|
||||
|
||||
@@ -37,4 +32,25 @@ class Globals:
|
||||
currentXXX = None
|
||||
currentEncoding = sys.getdefaultencoding() # wxLocale_GetSystemEncodingName()
|
||||
|
||||
def _makeFonts(self):
|
||||
self._sysFont = wxSystemSettings_GetFont(wxSYS_SYSTEM_FONT)
|
||||
self._labelFont = wxFont(self._sysFont.GetPointSize(), wxDEFAULT, wxNORMAL, wxBOLD)
|
||||
self._modernFont = wxFont(self._sysFont.GetPointSize(), wxMODERN, wxNORMAL, wxNORMAL)
|
||||
self._smallerFont = wxFont(self._sysFont.GetPointSize()-2, wxDEFAULT, wxNORMAL, wxNORMAL)
|
||||
|
||||
def sysFont(self):
|
||||
if not hasattr(self, "_sysFont"): self._makeFonts()
|
||||
return self._sysFont
|
||||
def labelFont(self):
|
||||
if not hasattr(self, "_labelFont"): self._makeFonts()
|
||||
return self._labelFont
|
||||
def modernFont(self):
|
||||
if not hasattr(self, "_modernFont"): self._makeFonts()
|
||||
return self._modernFont
|
||||
def smallerFont(self):
|
||||
if not hasattr(self, "_smallerFont"): self._makeFonts()
|
||||
return self._smallerFont
|
||||
|
||||
|
||||
|
||||
g = Globals()
|
||||
|
@@ -261,7 +261,7 @@ class PropPage(ParamPage):
|
||||
def __init__(self, parent, label, xxx):
|
||||
ParamPage.__init__(self, parent, xxx)
|
||||
self.box = wxStaticBox(self, -1, label)
|
||||
self.box.SetFont(labelFont)
|
||||
self.box.SetFont(g.labelFont())
|
||||
topSizer = wxStaticBoxSizer(self.box, wxVERTICAL)
|
||||
sizer = wxFlexGridSizer(len(xxx.allParams), 2, 1, 1)
|
||||
sizer.AddGrowableCol(1)
|
||||
@@ -334,7 +334,7 @@ class StylePage(ParamPage):
|
||||
def __init__(self, parent, label, xxx):
|
||||
ParamPage.__init__(self, parent, xxx)
|
||||
box = wxStaticBox(self, -1, label)
|
||||
box.SetFont(labelFont)
|
||||
box.SetFont(g.labelFont())
|
||||
topSizer = wxStaticBoxSizer(box, wxVERTICAL)
|
||||
sizer = wxFlexGridSizer(len(xxx.styles), 2, 1, 1)
|
||||
sizer.AddGrowableCol(1)
|
||||
|
@@ -114,7 +114,7 @@ class Tools(wxPanel):
|
||||
def AddGroup(self, name):
|
||||
# Each group is inside box
|
||||
box = wxStaticBox(self, -1, name, style=wxWANTS_CHARS)
|
||||
box.SetFont(smallerFont)
|
||||
box.SetFont(g.smallerFont())
|
||||
boxSizer = wxStaticBoxSizer(box, wxVERTICAL)
|
||||
boxSizer.Add((0, 4))
|
||||
self.curSizer = wxGridSizer(0, 3)
|
||||
|
@@ -65,10 +65,10 @@ class ScrolledMessageDialog(wxDialog):
|
||||
wxDialog.__init__(self, parent, -1, caption, pos, size)
|
||||
text = wxTextCtrl(self, -1, msg, wxDefaultPosition,
|
||||
wxDefaultSize, wxTE_MULTILINE | wxTE_READONLY)
|
||||
text.SetFont(modernFont)
|
||||
text.SetFont(g.modernFont())
|
||||
dc = wxWindowDC(text)
|
||||
# !!! possible bug - GetTextExtent without font returns sysfont dims
|
||||
w, h = dc.GetFullTextExtent(' ', modernFont)[:2]
|
||||
w, h = dc.GetFullTextExtent(' ', g.modernFont())[:2]
|
||||
ok = wxButton(self, wxID_OK, "OK")
|
||||
text.SetConstraints(Layoutf('t=t5#1;b=t5#2;l=l5#1;r=r5#1', (self,ok)))
|
||||
text.SetSize((w * 80 + 30, h * 40))
|
||||
|
Reference in New Issue
Block a user