Tkinter: The good, the bad, and the ugly!

Kevin Walzer kw at codebykevin.com
Sun Jan 16 12:39:41 EST 2011


On 1/16/11 11:30 AM, rantingrick wrote:

>
> #######################
> # Start Quote by Rick #
> #######################
> Exactly! All we need to do is replace the existing Tkinter with a
> small sub-set of wxPython widgets that mirrors exactly what we have
> now...
> Toplevel
> Label
> Entry
> Button
> Radiobutton
> Checkbutton
> Canvas
> Textbox
> Listbox
> Menu
> Scale
> Scrollbar
> ...thats all you need in the std library "widget wise".

Rick,

So, after all this discussion, your idea (it's not quite a proposal 
since you haven't initiated the PEP process for it)  boils down to 
replacing Tkinter in the stdlib with a very stripped-down subset of 
wxPython?

I'm not quite clear on what this accomplishes. Some of these widgets in 
Tkinter are ugly, but they have themed (ttk) equivalents (such as label, 
entry, button) that wrap native widgets in a manner similar to wxPython. 
So there's no real advantage to wx here.

Your suggestion that developers who want a larger widget set can 
download the entire wxPython package is, again, answered by the 
observation that numerous Tk extensions, with Tkinter wrappers, exist to 
expand the standard Tk widget set. And there are pure-Python extension 
packages that are not dependent on binary Tk extensions, cf. Python 
Megawidgets. Again, no real advantage to wxPython.

Your initial criticism that Python's standard GUI toolkit should not 
dependent on the priorities and development schedule of an outside 
project (Tcl/Tk) seems to have gone by the wayside here, because 
wxPython is an outside project (led by Robin Dunn) that is in turn 
dependent on the timeline of yet another outside project--wxWidgets, the 
underlying C++ library.

Finally, there are licensing issues to consider. Tcl/Tk's license is 
very liberal, BSD-style, and it is quite similar to Python's. wxWidget's 
library is basically LGPL with a couple of exceptions to make it 
friendlier to proprietary software. Could code under such a license be 
gracefully included in the stlib?

--Kevin
-- 
Kevin Walzer
Code by Kevin
http://www.codebykevin.com



More information about the Python-list mailing list