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

Reply via email to