Being unjust

Runsun Pan python.pan at
Wed Jan 18 19:34:35 EST 2006

I would prefer to see a core gui library that has a dom like structure and
the core lib doesn't really define the interface but only serves as "an
interface to other interfaces".

For example, a button class in this library will work like this :

   b = Button('Submit')
   b.setStyles( {'backgroundColor': 'yellow', 'fontSize': 20} )
   ( which can also be done with:'yellow' = 20

   # Define the style change when mouse over it = { 'backgroundColor':'red', 'fontColor':'blue' }

   # Define what happen when mouse over it
   b.onMouseOver.action = showText( 'Click to submit the article' )

That means, b.onMouseOver returns an "Event" object that has .style and

   b.onClick.action = launchIt

   b.stickTo( 'right-top' )   # stick to the right-top corner of its parent
(whatever it's parent is)

   p = Panel( )
   p.add( b )     # This also defines b.parent= p, so b will stick to
right-top of p
The above are the 'core style and behavior', doesn't define to where those
style and behavior will apply.

Now comes the real fun part:

Define a mechnism to allow this "core styles and actions" be applied to
different "faces" the choice of users.

For example,

   print p.toGui( face = 'html')   # generate a webpage

   p.toGui( face = 'wxPython' ).run  # generate a desktop program, using

There are many advantages for this sort of "universal gui core". At least, a
user will only need to learn one set of gui approach.

Runsun Pan, PhD
python.pan at
Nat'l Center for Macromolecular Imaging
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Python-list mailing list