#----------------------------------------------------------------------
-## class MyFontEnumerator(wxFontEnumerator):
-## def __init__(self, list):
-## wxFontEnumerator.__init__(self)
-## self.list = list
-
-## def OnFacename(self, face):
-## self.list.append(face)
-## return true
-
-
class TestPanel(wxPanel):
def __init__(self, parent, log):
wxPanel.__init__(self, parent, -1)
-## list = []
-## e = MyFontEnumerator(list)
-## e.EnumerateFacenames()
-
e = wxFontEnumerator()
e.EnumerateFacenames()
list = e.GetFacenames()
list.sort()
- wxStaticText(self, -1, "Face names:", wxPoint(15, 50), wxSize(65, 18))
- self.lb1 = wxListBox(self, 60, wxPoint(80, 50), wxSize(200, 250),
+ s1 = wxStaticText(self, -1, "Face names:")
+ self.lb1 = wxListBox(self, -1, wxDefaultPosition, (200, 250),
list, wxLB_SINGLE)
+ EVT_LISTBOX(self, self.lb1.GetId(), self.OnSelect)
+
+ self.txt = wxStaticText(self, -1, "Sample text...", (285, 50))
+
+ row = wxBoxSizer(wxHORIZONTAL)
+ row.Add(s1, 0, wxALL, 5)
+ row.Add(self.lb1, 0, wxALL, 5)
+ row.Add(self.txt, 0, wxALL|wxADJUST_MINSIZE, 5)
+
+ sizer = wxBoxSizer(wxVERTICAL)
+ sizer.Add(row, 0, wxALL, 30)
+ self.SetSizer(sizer)
+ self.Layout()
+
self.lb1.SetSelection(0)
+ self.OnSelect(None)
+ wxFutureCall(300, self.SetTextSize)
+ def SetTextSize(self):
+ self.txt.SetSize(self.txt.GetBestSize())
+
+
+ def OnSelect(self, evt):
+ #print "OnSelect: "
+ face = self.lb1.GetStringSelection()
+ #print '\t '+face
+ font = wxFont(28, wxDEFAULT, wxNORMAL, wxNORMAL, False, face)
+ #print "\t got font"
+ self.txt.SetLabel(face)
+ #print "\t set label"
+ self.txt.SetFont(font)
+ #print "\t set font"
+ #self.txt.SetSize(self.txt.GetBestSize())
+ #print "\t set size"
+
+
+## st = font.GetNativeFontInfo().ToString()
+## ni2 = wxNativeFontInfo()
+## ni2.FromString(st)
+## font2 = wxFontFromNativeInfo(ni2)
#----------------------------------------------------------------------
+overview = """<html><body>
+wxFontEnumerator enumerates either all available fonts on the system or only
+the ones with given attributes - either only fixed-width (suited for use in
+programs such as terminal emulators and the like) or the fonts available in
+the given encoding.
+</body></html>
+"""
+if __name__ == '__main__':
+ import sys,os
+ import run
+ run.main(['', os.path.basename(sys.argv[0])])
-
-overview = """\
-wxFontEnumerator enumerates either all available fonts on the system or only the ones with given attributes - either only fixed-width (suited for use in programs such as terminal emulators and the like) or the fonts available in the given encoding.
-
-"""