]>
Commit | Line | Data |
---|---|---|
1 | ||
2 | import wx | |
3 | ||
4 | #---------------------------------------------------------------------- | |
5 | ||
6 | ||
7 | class TestPanel(wx.Panel): | |
8 | def __init__(self, parent, log): | |
9 | wx.Panel.__init__(self, parent, -1) | |
10 | ||
11 | e = wx.FontEnumerator() | |
12 | e.EnumerateFacenames() | |
13 | list = e.GetFacenames() | |
14 | ||
15 | list.sort() | |
16 | ||
17 | s1 = wx.StaticText(self, -1, "Face names:") | |
18 | ||
19 | self.lb1 = wx.ListBox(self, -1, wx.DefaultPosition, (200, 250), | |
20 | list, wx.LB_SINGLE) | |
21 | ||
22 | self.Bind(wx.EVT_LISTBOX, self.OnSelect, id=self.lb1.GetId()) | |
23 | ||
24 | self.txt = wx.StaticText(self, -1, "Sample text...", (285, 50)) | |
25 | ||
26 | row = wx.BoxSizer(wx.HORIZONTAL) | |
27 | row.Add(s1, 0, wx.ALL, 5) | |
28 | row.Add(self.lb1, 0, wx.ALL, 5) | |
29 | row.Add(self.txt, 0, wx.ALL|wx.ADJUST_MINSIZE, 5) | |
30 | ||
31 | sizer = wx.BoxSizer(wx.VERTICAL) | |
32 | sizer.Add(row, 0, wx.ALL, 30) | |
33 | self.SetSizer(sizer) | |
34 | self.Layout() | |
35 | ||
36 | self.lb1.SetSelection(0) | |
37 | self.OnSelect(None) | |
38 | wx.FutureCall(300, self.SetTextSize) | |
39 | ||
40 | ||
41 | def SetTextSize(self): | |
42 | self.txt.SetSize(self.txt.GetBestSize()) | |
43 | ||
44 | ||
45 | def OnSelect(self, evt): | |
46 | face = self.lb1.GetStringSelection() | |
47 | font = wx.Font(28, wx.DEFAULT, wx.NORMAL, wx.NORMAL, False, face) | |
48 | self.txt.SetLabel(face) | |
49 | self.txt.SetFont(font) | |
50 | if wx.Platform == "__WXMAC__": self.Refresh() | |
51 | ||
52 | ## st = font.GetNativeFontInfo().ToString() | |
53 | ## ni2 = wx.NativeFontInfo() | |
54 | ## ni2.FromString(st) | |
55 | ## font2 = wx.FontFromNativeInfo(ni2) | |
56 | ||
57 | #---------------------------------------------------------------------- | |
58 | ||
59 | def runTest(frame, nb, log): | |
60 | win = TestPanel(nb, log) | |
61 | return win | |
62 | ||
63 | #---------------------------------------------------------------------- | |
64 | ||
65 | ||
66 | ||
67 | overview = """<html><body> | |
68 | wxFontEnumerator enumerates either all available fonts on the system or only | |
69 | the ones with given attributes - either only fixed-width (suited for use in | |
70 | programs such as terminal emulators and the like) or the fonts available in | |
71 | the given encoding. | |
72 | </body></html> | |
73 | """ | |
74 | ||
75 | ||
76 | if __name__ == '__main__': | |
77 | import sys,os | |
78 | import run | |
79 | run.main(['', os.path.basename(sys.argv[0])]) | |
80 |