This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author terry.reedy
Recipients gpolo, terry.reedy
Date 2013-06-05.01:24:12
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1370395453.94.0.856336733302.issue4343@psf.upfronthosting.co.za>
In-reply-to
Content
After searching through tkinter.py for '_default_root', the patch looks better. The point I missed before is that Tk().__init__(self,...) normally calls _loadtk(self) which installs self as _default_tk if it was None before. So the new function will return the same Tk object each call after the first (unless _default_tk is somehow reset to None.) This also means that the assignment in BaseWidget.setup, "_default_root = Tk()", which the patch deletes, is redundant and misleading, and should go.

I think 'getmaster' or 'get_master' would be a better name than 'setup_master' as setting up a new master is the 2nd backup choice and will happen only once in a session. Most call will get an existing master -- either the one passed in or the once stored as _default_root 

The patch needs to be updated for 3.4 and run with current tests.
History
Date User Action Args
2013-06-05 01:24:14terry.reedysetrecipients: + terry.reedy, gpolo
2013-06-05 01:24:13terry.reedysetmessageid: <1370395453.94.0.856336733302.issue4343@psf.upfronthosting.co.za>
2013-06-05 01:24:13terry.reedylinkissue4343 messages
2013-06-05 01:24:12terry.reedycreate