Don Taylor wrote:
Ed Leafe wrote:
IMO, getting people used to learning sizers now will avoid a ton of
problems later on; sorta like Guido's decision to enforce
indentation. ;-)
Except that they are a lot harder to understand than indentation!
And even harder to find a nice UI for :-(
I think that you are going to need something really nice in the UI if
you are going to make this work for the great unwashed like myself.
This ain't gonna be easy - the Pythoncard folks have ducked on this
one for a long time now,
Not so much "ducked" as "tried 4 different ways and none of them worked
well enough to release" :-)
and Boa's UI for sizers is just bizarre. Even wxDesigner avoids the
wxGridBagSizer. So maybe it is just not doable, but...
I don't really want to know about sizers per se. I imagine having a
blank design pane and simply drawing lines on it to represent a
template into which I can drop controls. I want to do most of my
adjustments by simply add/removing lines or by grabbing lines and
sliding them. If my layout calls for three vertical panels with a two
slot horizontal panel in one, a three slot horizonantal panel in
another and a single slot that is filled with a control in the other
then I don't really want to know how it is done. I don't want to know
about vertical sizers, horizontal sizers and gridbag sizers.
Something should just generate these things for me.
I suspect that the current set of sizers (boxsizer, gridsizer,
flexgridsizer and gridbagsizer) were designed to function well for
programmatic use, and that they won't necessarily be the best underlying
model for a designer-based (i.e. layout-editor-based, or UI-based)
approach. But since they are mature, and relatively well understood,
it's hard to give them up in favour of some new approach that might lend
itself better to UI layout.
I suspect at some point, I'll try adding something to Pythoncard's
layout editor which is close to what Ed has done with sizers in Dabo
Designer (but I'll wait a few months until he's smoothed out a few more
wrinkles first :-). And I'll also try a completely different approach
which won't use any of the the existing wxSizers (because none of them
works the way *I* think about laying things out).
Maybe we should look at how the non-wxPython (MS, Java/Swing, SWT)
world presents this stuff, perhaps there is something there worth
stealing.
I haven't looked at those specifically, but most other approaches I've
seen have been either simple (relative) grid based, or constraint-based
(a la Hypercard) - neither of those approaches works well when the
underlying "native" controls need to vary in size due to cross-platform
differences.
--
Alex Tweedly http://www.tweedly.net
--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.1.375 / Virus Database: 267.14.23/240 - Release Date: 25/01/2006
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-users