Python and GUI

Brian Blais bblais at bryant.edu
Thu May 24 10:22:23 EDT 2007


Peter Decker wrote:
> On 5/21/07, Paul McNett <p at ulmcnett.com> wrote:
> 
>> Shameless plug: consider using Dabo on top of wxPython - we feel it
>> makes wxPython even easier and more pythonic, but admittedly there's a
>> bit of a learning curve there too. Even though Dabo is a full
>> application framework originally meant for desktop database
>> applications, it is modular and you can choose to only use the UI
>> bits... http://dabodev.com
> 
> I second this. I used (and struggled!) with wxPython for over a year.
> The results were great, but I hated coding it. I switched to the Dabo
> UI wrapper, and stuff that used to take me a day to create is now done
> in an hour or two.
> 

Hello,

I'd like to ask the Python community about this, because it seems to me that there is 
  a real need that is not being met very effectively.  Almost everyone agrees that 
wxPython looks great and is very powerful, and for full-fledged cross-platform 
applications is nearly the best, if not *the* best, choice as far as *function* and 
*look* are concerned.  The next sentence out of Python programmers seems to be 
"...but wx is written in C++ and definitely shows, even in the Python port".  It's 
just not very pythonic.

Then there is Dabo, which I personally have had problems with.  I am looking for a 
pythonic, professional looking GUI framework.  I first tried dabo with python 2.4, 
and had to install sqlite, which seemed a bit odd for trying to just get a GUI 
framework...I understand why, but when you're looking for one thing, having it tied 
to a completely different thing feels a little strange.  I never got it working in 
Python2.5, either on Linux or OS X, and the problem is most definitely mine and I 
didn't have the patience to debug it.  I am really not trying to diss dabo here, 
because there enough people who swear by it, that it must be doing many things right.

My problem with Dabo is not what it is, it is what I am looking for...a pythonic GUI 
framework.  Coming from Unix, I generally feel that a program should try to do one 
thing, and one thing well.  To mix really different functionality seems to me to be a 
bad idea.  If you can use the GUI parts separately, why not package it separately? 
One might find a lot of users who only what that.

Finally, consider wax (http://zephyrfalcon.org/labs/wax.html).  In my view, this is 
*exactly* what python needs, and its not being maintained anymore as far as I can 
tell.  What I like about it is:

1) it is small...I can include the entire wax distribution in my app with only a 780k 
  footprint.
2) it is a very thin layer on wx, so when something doesn't quite work, I can 
immediately fall back onto wx, mixing and matching wax and wx objects.  it's just 
that the wax objects have more pythonic calling and use properties


Is there a reason that the port of wxPython doesn't include wax, or something 
similar?  It would seem pretty straightforward, when porting the wx to Python, to 
simply include such a wrapper.  I wish I were more clever, and had more time, to take 
over the maintenance of wax because I think it is the most straightforward, 
practical, and pythonic solution out there.


Do others think like me here?


			thanks,

				Brian Blais


-- 
-----------------

              bblais at bryant.edu
              http://web.bryant.edu/~bblais



More information about the Python-list mailing list