Class Composite

A composite widget is simply a container for other
widgets. The 'widgets' slot accessible with 'composite-widgets'
accessor contains a list of widgets. When 'render-widget' is invoked
on the composite, it invokes 'render-widget' on each widget in the

Part of:

class widget, package weblocks

Direct Superclass

widgetBase class for all widget objects.


Stores the continuation object for widgets that were invoked via one of the do-* functions ('do-page', etc.). When 'answer' is called on a widget, this value is used to resume the computation.
A name of the widget used in rendering CSS classes. If the name is not provided it will be generated automatically with 'generate-widget-id'.
Initform:(generate-widget-id), Initargs::name; Accessors:widget-name.
A list of widget paths (see 'find-widget-by-path') or widgets each of which will be made dirty when this widget is made dirty via a POST request. This slot allows setting up dependencies between widgets that will make multiple widgets update automatically during AJAX requests.
Initargs::propagate-dirty; Accessors:widget-propagate-dirty.
This slot holds a boolean flag indicating whether the widget has been rendered at least once. Because marking unrendered widgets as dirty may cause JS problems, 'mark-dirty' will use this flag to determine the status of a widget.
A function called prior to rendering the widget body. The function should expect the widget as well as any additional arguments passed to the widget.
Initargs::widget-prefix-fn; Accessors:widget-prefix-fn.
A function called after rendering the widget body. The function should expect the widget as well as any additional arguments passed to the widget.
Initargs::widget-suffix-fn; Accessors:widget-suffix-fn.
A list of widgets that are contained in this composite widget. For convinience, one can assign a single widget to this slot via 'composite-widgets', and the value will be converted to a list.
Initargs::widgets; Accessors:composite-widgets.

Direct Method

find-widget-by-path*Returns a widget object located at 'path', where 'path' is a list
of widget names starting from r...
render-widget-bodyA generic function that renders a widget in its current state. In
order to actually render the wi...

Other Method

mark-dirtyDefault implementation adds a widget to a list of dirty
widgets. Normally used during an AJAX req...
widget-css-classesReturns a string that represents applicable CSS
classes for 'widget'. Normally includes the class...