forked from wxWidgets/Phoenix
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest_font.py
238 lines (205 loc) · 6.95 KB
/
test_font.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
import unittest
from unittests import wtc
import wx
import os
#---------------------------------------------------------------------------
class font_Tests(wtc.WidgetTestCase):
def test_fontFlags(self):
wx.FONTFAMILY_DEFAULT
wx.FONTFAMILY_DECORATIVE
wx.FONTFAMILY_ROMAN
wx.FONTFAMILY_SCRIPT
wx.FONTFAMILY_SWISS
wx.FONTFAMILY_MODERN
wx.FONTFAMILY_TELETYPE
wx.FONTFAMILY_UNKNOWN
wx.FONTSTYLE_NORMAL
wx.FONTSTYLE_ITALIC
wx.FONTSTYLE_SLANT
wx.FONTWEIGHT_NORMAL
wx.FONTWEIGHT_LIGHT
wx.FONTWEIGHT_BOLD
wx.FONTSIZE_XX_SMALL
wx.FONTSIZE_X_SMALL
wx.FONTSIZE_SMALL
wx.FONTSIZE_MEDIUM
wx.FONTSIZE_LARGE
wx.FONTSIZE_X_LARGE
wx.FONTSIZE_XX_LARGE
wx.FONTFLAG_DEFAULT
wx.FONTFLAG_ITALIC
wx.FONTFLAG_SLANT
wx.FONTFLAG_LIGHT
wx.FONTFLAG_BOLD
wx.FONTFLAG_ANTIALIASED
wx.FONTFLAG_NOT_ANTIALIASED
wx.FONTFLAG_UNDERLINED
wx.FONTFLAG_STRIKETHROUGH
wx.FONTENCODING_SYSTEM
wx.FONTENCODING_DEFAULT
wx.FONTENCODING_ISO8859_1
wx.FONTENCODING_ISO8859_2
wx.FONTENCODING_ISO8859_3
wx.FONTENCODING_ISO8859_4
wx.FONTENCODING_ISO8859_5
wx.FONTENCODING_ISO8859_6
wx.FONTENCODING_ISO8859_7
wx.FONTENCODING_ISO8859_8
wx.FONTENCODING_ISO8859_9
wx.FONTENCODING_ISO8859_10
wx.FONTENCODING_ISO8859_11
wx.FONTENCODING_ISO8859_12
wx.FONTENCODING_ISO8859_13
wx.FONTENCODING_ISO8859_14
wx.FONTENCODING_ISO8859_15
wx.FONTENCODING_ISO8859_MAX
wx.FONTENCODING_KOI8
wx.FONTENCODING_KOI8_U
wx.FONTENCODING_ALTERNATIVE
wx.FONTENCODING_BULGARIAN
wx.FONTENCODING_CP437
wx.FONTENCODING_CP850
wx.FONTENCODING_CP852
wx.FONTENCODING_CP855
wx.FONTENCODING_CP866
wx.FONTENCODING_CP874
wx.FONTENCODING_CP932
wx.FONTENCODING_CP936
wx.FONTENCODING_CP949
wx.FONTENCODING_CP950
wx.FONTENCODING_CP1250
wx.FONTENCODING_CP1251
wx.FONTENCODING_CP1252
wx.FONTENCODING_CP1253
wx.FONTENCODING_CP1254
wx.FONTENCODING_CP1255
wx.FONTENCODING_CP1256
wx.FONTENCODING_CP1257
wx.FONTENCODING_CP12_MAX
wx.FONTENCODING_UTF7
wx.FONTENCODING_UTF8
wx.FONTENCODING_EUC_JP
wx.FONTENCODING_UTF16BE
wx.FONTENCODING_UTF16LE
wx.FONTENCODING_UTF32BE
wx.FONTENCODING_UTF32LE
wx.FONTENCODING_MACROMAN
wx.FONTENCODING_MACJAPANESE
wx.FONTENCODING_MACCHINESETRAD
wx.FONTENCODING_MACKOREAN
wx.FONTENCODING_MACARABIC
wx.FONTENCODING_MACHEBREW
wx.FONTENCODING_MACGREEK
wx.FONTENCODING_MACCYRILLIC
wx.FONTENCODING_MACDEVANAGARI
wx.FONTENCODING_MACGURMUKHI
wx.FONTENCODING_MACGUJARATI
wx.FONTENCODING_MACORIYA
wx.FONTENCODING_MACBENGALI
wx.FONTENCODING_MACTAMIL
wx.FONTENCODING_MACTELUGU
wx.FONTENCODING_MACKANNADA
wx.FONTENCODING_MACMALAJALAM
wx.FONTENCODING_MACSINHALESE
wx.FONTENCODING_MACBURMESE
wx.FONTENCODING_MACKHMER
wx.FONTENCODING_MACTHAI
wx.FONTENCODING_MACLAOTIAN
wx.FONTENCODING_MACGEORGIAN
wx.FONTENCODING_MACARMENIAN
wx.FONTENCODING_MACCHINESESIMP
wx.FONTENCODING_MACTIBETAN
wx.FONTENCODING_MACMONGOLIAN
wx.FONTENCODING_MACETHIOPIC
wx.FONTENCODING_MACCENTRALEUR
wx.FONTENCODING_MACVIATNAMESE
wx.FONTENCODING_MACARABICEXT
wx.FONTENCODING_MACSYMBOL
wx.FONTENCODING_MACDINGBATS
wx.FONTENCODING_MACTURKISH
wx.FONTENCODING_MACCROATIAN
wx.FONTENCODING_MACICELANDIC
wx.FONTENCODING_MACROMANIAN
wx.FONTENCODING_MACCELTIC
wx.FONTENCODING_MACGAELIC
wx.FONTENCODING_MACKEYBOARD
wx.FONTENCODING_ISO2022_JP
wx.FONTENCODING_MAX
wx.FONTENCODING_MACMIN
wx.FONTENCODING_MACMAX
wx.FONTENCODING_UTF16
wx.FONTENCODING_UTF32
wx.FONTENCODING_UNICODE
wx.FONTENCODING_GB2312
wx.FONTENCODING_BIG5
wx.FONTENCODING_SHIFT_JIS
wx.FONTENCODING_EUC_KR
def test_fontFlagsOld(self):
wx.DEFAULT
wx.DECORATIVE
wx.ROMAN
wx.SCRIPT
wx.SWISS
wx.MODERN
wx.TELETYPE
wx.NORMAL
wx.LIGHT
wx.BOLD
wx.NORMAL
wx.ITALIC
wx.SLANT
def test_font(self):
f1 = wx.Font()
f2 = wx.Font(f1)
f3 = wx.Font(18, wx.FONTFAMILY_ROMAN, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL, False)
f4 = wx.Font(wx.Size(12,12), wx.FONTFAMILY_ROMAN, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL, False)
f5 = wx.FFont(18, wx.FONTFAMILY_ROMAN)
f6 = wx.Font.New(18, wx.FONTFAMILY_SWISS)
# this ctor was removed
#f7 = wx.Font(18, wx.FONTFAMILY_SWISS, wx.FONTFLAG_BOLD|wx.FONTFLAG_ITALIC)
def test_fontFontinfo1(self):
fi1 = wx.FontInfo().Family(wx.FONTFAMILY_ROMAN).Bold().Italic().Underlined().Strikethrough()
fi2 = wx.FontInfo(12).FaceName('Ariel').Light().Encoding(wx.FONTENCODING_ISO8859_1)
fi3 = wx.FontInfo((8,12)).AllFlags(wx.FONTFLAG_BOLD|wx.FONTFLAG_ITALIC)
def test_fontFontinfo2(self):
f1 = wx.Font(wx.FontInfo(12).Family(wx.FONTFAMILY_SWISS).Italic())
def test_fontOk(self):
f1 = wx.Font()
f2 = wx.FFont(18, wx.FONTFAMILY_ROMAN)
self.assertTrue(not f1.IsOk())
self.assertTrue( f2.IsOk())
if f1:
self.fail('f1 should not be True')
if not f2:
self.fail('f2 should not be False')
def test_fontEquality(self):
f1 = wx.Font(18, wx.FONTFAMILY_ROMAN, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL, False)
f2 = wx.FFont(18, wx.FONTFAMILY_ROMAN)
f3 = wx.Font(wx.Size(12,12), wx.FONTFAMILY_ROMAN, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL, False)
self.assertTrue(f1 == f2)
self.assertTrue(f1 != f3)
def test_fontProperties(self):
f = wx.FFont(18, wx.FONTFAMILY_SWISS)
f.Encoding
f.FaceName
f.Family
f.NativeFontInfoDesc
f.NativeFontInfoUserDesc
f.PointSize
f.PixelSize
f.Style
f.Weight
def test_stockFonts(self):
self.assertTrue(not wx.NullFont.IsOk())
self.assertTrue(wx.NORMAL_FONT.IsOk())
self.assertTrue(wx.SMALL_FONT.IsOk())
self.assertTrue(wx.ITALIC_FONT.IsOk())
self.assertTrue(wx.SWISS_FONT.IsOk())
def test_fontFixedWidth(self):
f = wx.FFont(10, wx.FONTFAMILY_TELETYPE)
self.assertTrue(f.IsFixedWidth())
def test_fontOldStyleNames(self):
f = wx.Font(8, wx.SWISS, wx.NORMAL, wx.NORMAL)
#---------------------------------------------------------------------------
if __name__ == '__main__':
unittest.main()