So you think PythonCard is old? Here's new wine in an old bottle.

John Henry john106henry at hotmail.com
Sat Apr 26 02:18:24 EDT 2008


For serveral years, I have been looking for a way to migrate away from
desktop GUI/client-server programming onto the browser based network
computing model of programming.  Unfortunately, up until recently,
browser based programs are very limited - due to the limitation of
HTML itself.  Eventhough PythonCard hasn't keep up with the latest
widgets in wxpython, the programs so created still works a lot better
- until now.

If you look at programs at some of the major sites these days - like
Google calendar, Netflix, blockbuster, and so forth - you would
undoubtedly notice that the quality of the programs are pretty much at
par with the desktop programs we use everyday.  Since the curious mind
wanted to know how these programs are done, I started investigating
and found out that what a difference a few years have made to
Javascript - the once much hated beast of the Internet age - and
during my search for perfection, I found Qooxdoo (http://
qooxdoo.org/).

Qooxdoo is a Javascript toolkit that sits on top of Ajax.  Take a look
at some of the *impressive* widgets
at http://demo.qooxdoo.org/current/showcase/#Form.

So, what's that got to do with Pythoncard?  Read on.

After trying for a few days learning Qooxdoo, my head really really
hurts.  Getting too old to learn this stuff, I was mumbling.

Then I looked some more.  I found QxTransformer (http://
sites.google.com/a/qxtransformer.org/qxtransformer/Home) which is a
XSLT toolkit that creats XML code that invoke qooxdoo.

So, what's that got to do with Pythoncard?  Read on.

After trying for a few days learning QxTransformer, my head really
really hurts.  Getting too old to learn
this stuff, I was mumbling.

I want Pythoncard.

Damn Pythoncard!  Once you got hooked, everything else looks
impossibly complicated and unproductive.

But then I looked closer.  It turns out the XML file created by
QxTransformer is *very* similar in structure when compared to the
resource files used in PythonCard.  Since there are no GUI builders
for QxTransformer, and I can't affort to buy the one for Qooxdoo
(Java!  Yuk!), I decided to roll up my sleeves, took the Pythoncard's
Layout Manager and modified it and created my own "Poor Man's Qooxdoo
GUI Layout Designer".

The result?  See the partially completed application at:

http://test.powersystemadvisors.com/

and the same application running from the desktop:

http://test.powersystemadvisors.com/desktopHelloWorld.jpg

It shouldn't be long before I can fill in the gaps and have the GUI
builder maps the rest of the Pythoncard widgets to Qooxdoo widgets.
Once I've done that, I can have the same application running from the
desktop, or from the browser.  And it shouldn't take more than minutes
to create such applications.

Welcome to the modernized world of Pythoncard!!!



More information about the Python-list mailing list