Message333532
font.Font.__init__, font.families, and font.names have a 'root=None' argument and start with
if not root:
root = tkinter._default_root
But font.nametofont does not, and so it calls Font without passing a root argument:
return Font(name=name, exists=True)
Font fails if there is no default root. There cannot be one if, as recommended, one disables it.
import tkinter as tk
from tkinter import font
tk.NoDefaultRoot()
root = tk.Tk()
font.nametofont('TkFixedFont')
# AttributeError: module 'tkinter' has no attribute '_default_root'
Proposed fix: add 'root=None' parameter to nametofont (at end, to not break code) and 'root=root' to Font call. |
|
Date |
User |
Action |
Args |
2019-01-12 21:33:35 | terry.reedy | set | recipients:
+ terry.reedy, serhiy.storchaka |
2019-01-12 21:33:32 | terry.reedy | set | messageid: <1547328812.09.0.281453810047.issue35728@roundup.psfhosted.org> |
2019-01-12 21:33:32 | terry.reedy | link | issue35728 messages |
2019-01-12 21:33:31 | terry.reedy | create | |
|