Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!newsfeed.xs4all.nl!newsfeed4a.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.002 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'languages,': 0.04; 'subject:Python': 0.06; 'granted,': 0.07; 'importerror:': 0.07; 'linux,': 0.07; 'tkinter': 0.07; 'app,': 0.09; 'dependency': 0.09; 'so?': 0.09; 'subset': 0.09; 'sure,': 0.09; 'try:': 0.09; 'windows,': 0.09; 'runs': 0.10; 'python': 0.11; '12:04': 0.16; '24,': 0.16; 'assumptions': 0.16; 'entirely.': 0.16; 'incorrect': 0.16; 'make,': 0.16; 'sane': 0.16; 'subject:GUI': 0.16; 'subject:desktop': 0.16; 'terribly': 0.16; 'those,': 0.16; 'wxpython': 0.16; 'sender:addr:gmail.com': 0.17; 'wrote:': 0.18; 'thu,': 0.19; 'import': 0.22; 'to:name:python-list@python.org': 0.22; 'mind.': 0.24; 'rid': 0.24; 'stick': 0.24; 'fine': 0.24; "haven't": 0.24; 'looks': 0.24; 'this:': 0.26; 'header:In-Reply- To:1': 0.27; 'chris': 0.29; 'strongly': 0.30; 'especially': 0.30; 'message-id:@mail.gmail.com': 0.30; 'code': 0.31; 'subject:next': 0.31; 'anyone': 0.31; 'worked': 0.33; 'checking': 0.33; 'plain': 0.33; 'could': 0.34; 'problem': 0.35; "can't": 0.35; 'except': 0.35; 'something': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'add': 0.35; 'building': 0.35; 'there': 0.35; 'programming,': 0.36; 'right?': 0.36; 'done': 0.36; 'two': 0.37; 'expected': 0.38; 'to:addr:python-list': 0.38; 'fact': 0.38; 'pm,': 0.38; 'rather': 0.38; 'that,': 0.38; 'anything': 0.39; 'to:addr:python.org': 0.39; 'either': 0.39; 'how': 0.40; 'even': 0.60; 'easy': 0.60; 'most': 0.60; 'ago.': 0.61; 'matter': 0.61; 'back': 0.62; 'skip:n 10': 0.64; 'skip:\xe2 10': 0.65; 'talking': 0.65; 'worth': 0.66; 'due': 0.66; 'close': 0.67; '8bit%:43': 0.74; 'jul': 0.74; 'obvious': 0.74; '100%': 0.77; 'choices.': 0.84; 'irrelevant': 0.84; 'native.': 0.84; 'subject:Project': 0.84; 'absolutely': 0.87 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:content-type:content-transfer-encoding; bh=EL8Hzmhzc+fc8b0GDk7RMCQYyyyb60gXQwr3HX1asKE=; b=vFdXuBPVMalUl9UGyM5FKDXOoYPwR6WtvlF3K2qG+1K1hoQH0xTW+oUFa+dYU500AM 1kcRJjaxKnwVO2X+yOOoN3tshDv4BSupdQoWjnP3a2dHFPPRLHvOppvgMZmCq55K2N+i 22+6y9IkntyB51jXbq7WDv7NF18UNcfUYhwYicAj3ghO92nSm3KE8llZE+4MSRecMlPu weK3SqrfZq3EYHSrTmP5krzsvcfxe5u62nnB9kTEtmEJV0X+lLQSu4ied7asusNNLAFm ik3SHdizrfAdmlREJUrjNhYErjP6YdfXdsQTDXEUAX7WEWG2KCR43SAA5blnn0flSr6S bnOQ== X-Received: by 10.182.142.69 with SMTP id ru5mr16192253obb.6.1406226829691; Thu, 24 Jul 2014 11:33:49 -0700 (PDT) MIME-Version: 1.0 Sender: zachary.ware@gmail.com In-Reply-To: References: <93c42547-557b-4839-baba-9ed54120595e@googlegroups.com> From: Zachary Ware Date: Thu, 24 Jul 2014 13:33:29 -0500 X-Google-Sender-Auth: zDGBSmQqpzca9q4kdvIlAcIN6ms Subject: Re: Exploring Python for next desktop GUI Project To: "python-list@python.org" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 58 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1406226837 news.xs4all.nl 2907 [2001:888:2000:d::a6]:53755 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:75169 On Thu, Jul 24, 2014 at 12:04 PM, Chris =E2=80=9CKwpolska=E2=80=9D Warrick wrote: > Tk is neither sane How so? Like any other facet of programming, using Tk(inter) has it's frustrations, but for the most part it has always worked as expected for me. Granted, I haven't done anything terribly fancy. > nor native-feeling, especially on Linux, where it looks > like something from two decades ago. The problem there is that on Linux, "native" could mean "GTK", "QT", or something else entirely. Also, just to make sure, you are talking about "ttk" rather than plain "tk", right? > On other platforms, it also is not 100% > native. On Windows, at least, ttk comes very very close to it. > I personally recommend PyQt4/PySide. wxPython is also worth checking out. I have used neither of those, but I have seen many people report happiness with them. For anyone with experience with those toolkits in other languages, those would be the obvious choices. > And it might be better to stay with Python 2, there are still things that > don't work with Py3k that you might find crucial. I strongly disagree with this: there's no reason to stick with Python 2 until you have a dependency that you can't get rid of that absolutely requires Python 2.x. The fact that "there are still things that don't work with Py3k" is irrelevant if you don't use them. And if you find that, halfway through building your app, you find that you need to add a dependency that requires Python 2, just backport your project. In the majority of cases, it is very easy to port from Python 3 to either the subset of Python that runs fine in both 2 and 3, or straight to 2. It may just be a matter of going from: import tkinter as tk from tkinter import ttk to: try: import tkinter as tk from tkinter import ttk except ImportError: import Tkinter as tk import ttk It's not necessarily as easy to go from native Python 2 to 2and3 or 3 due to some incorrect assumptions that Python 2 will let you make, but even that can be mitigated by writing your Python 2 code with Python 3 in the back of your mind. --=20 Zach