From: Stefan Seefeld (seefeld_at_[hidden])
Date: 2003-11-27 11:18:54
Marco Oman wrote:
> Any link to a toolkit that makes extensive use of object composition
> or any which are the reasons that make this difficult?
Are you looking for a library to build your applications with ?
Or are you interested into the design aspects in general ?
The fresco project (http://www.fresco.org) makes heavy use of
composition, but it's not a toolkit in any conventional sense
of the term.
Fresco is centered around the idea of a scene graph, where individual
nodes in that graph collaborate not only for rendering but also to
provide behavior that you'd recognize as a 'widget'.
For example, a 'button' is nothing but a 'trigger' wrapper
that intercepts mouse clicks. Its subgraph determines everything
else, i.e. its frame style, label, etc.
Since these controller nodes are part of the scene graph, too,
the Model-View-Controller paradigm is even more flexible than
in its typical form, where there's only a distinction between
Model on the one hand, and View/Controller (i.e. GUI) on the other.
Ok, so much to the design. Again, fresco is not a toolkit,
as it has its own (CORBA based) client - server architecture.
So it may not be what you are looking for.
I believe composition is indeed a very powerful concept, in
GUIs in particular. But it imposes lots of constraints on the
design, and it may not always be easy (or even possible) to
fit such a paradigm with conventional GUI designs.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk