On Sat, Mar 31, 2007 at 12:32:23PM +0200, Norbert Hartl wrote:
For customization I put every little bit in a wrapper
class
around the generated Magritte component. This is for customizing
the generated component as well as to do some manual html if
it isn't avoidable. I have the feeling that this is not the
right way to do but I have no better idea. To minimize the effort
to do a component for a model component I've built a base class
which should ease the customization of the component.
Nice description!
In the applications I've been building I also noticed a basic
pattern of
- search for an object with a limited number of search fields
- present a list of conforming objects
- edit/display the selected object
That would also be nice as a wrapper component. Depending on the
number of fields and found objects the search could be eliminated, or
put on the same page as the list.
- buttons
A Collection of Associations (button label -> selector). MAForm-
Decoration is only useful if you have save and cancel buttons. As the
selectors are performed on the MAContainerComponent there is no way of
extending it. I extendend MAFormDecoration to have associations for
buttons (to distinguish the button label and the selector to use) and
to be created with a delegator. The selector is than performed on the
delegate which leads to a usage form
In Nakedobjects, there are not just descriptions of objects fields,
but also of actions. Zero-parameter ones are shown as menu items
(or buttons in the Sanssoucci system), one-parameter actions are
invoked by drag-and-drop.
Stephan