Added support for global default font settings. (jvr)
diff --git a/Mac/Tools/IDE/Wwindows.py b/Mac/Tools/IDE/Wwindows.py
index 8e4d665..f48e11e 100644
--- a/Mac/Tools/IDE/Wwindows.py
+++ b/Mac/Tools/IDE/Wwindows.py
@@ -19,8 +19,12 @@
windowkind = Windows.documentProc
- def __init__(self, possize, title = "", minsize = None, maxsize = None, tabbable = 1, show = 1):
+ def __init__(self, possize, title="", minsize=None, maxsize=None,
+ tabbable=1, show=1, fontsettings=None):
import W
+ if fontsettings is None:
+ fontsettings = W.getdefaultfont()
+ self._fontsettings = fontsettings
W.SelectableWidget.__init__(self, possize)
self._globalbounds = l, t, r, b = self.getwindowbounds(possize, minsize)
self._bounds = (0, 0, r - l, b - t)
@@ -92,11 +96,13 @@
self.wid = Win.NewCWindow(self._globalbounds, self.title, self._show,
self.windowkind, -1, self.hasclosebox, 0)
self.SetPort()
- fnum = Fm.GetFNum("Python-Sans")
+ fontname, fontstyle, fontsize, fontcolor = self._fontsettings
+ fnum = Fm.GetFNum(fontname)
if fnum == 0:
fnum = Fm.GetFNum("Geneva")
- Qd.TextFont(fnum) # XXX font&size from a function?
- Qd.TextSize(9) # XXX font&size from a function?
+ Qd.TextFont(fnum)
+ Qd.TextFace(fontstyle)
+ Qd.TextSize(fontsize)
if self._bindings.has_key("<open>"):
callback = self._bindings["<open>"]
callback()
@@ -286,7 +292,7 @@
(what, message, when, where, modifiers) = event
key = char
if Wkeys.keynames.has_key(key):
- key = Wkeys.keynames[char]
+ key = Wkeys.keynames[key]
if modifiers & Events.shiftKey:
key = 'shift' + key
if modifiers & Events.cmdKey: