Implementation of any dojo widget as a tapestry component.
The formal parameter dojoType
is used to determine which dojo widget to create.
Informal parameters are used as javascript properties to create widget with.
Please have a look into the http://dojotoolkit.org/api for further information about the widget properties.
A simple example is the dojo Clock widget:
<div jwcid="@dojo:Widget" dojoType="Clock" timeZoneOffset="5" labelColor="#fff"/>
The formal parameter isContainer
allows a widget to have children.
All the widgets within the body of a container are added as childs. For example dojo tabs:
<div jwcid="@dojo:Widget" dojoType="TabContainer" isContainer="true"> <div jwcid="@dojo:Widget" dojoType="ContentPane" label="Athens">Athens</div> <div jwcid="@dojo:Widget" dojoType="ContentPane" label="Moscow">Moscow</div> </div>
DojoWidget allows you to connect any client side event to a listener method. Please see the dojo api for further information about the events fired by the particular widget. To connect a client side even just use the informal parameter with the corresponding name. For example, specifying a component definition such as:
<div jwcid="@dojo:Widget" dojoType="..." onClick="listener:onClick" onMouseDown="listener:onMouseDown"/>
Furthermore it is poossible to connect a client side event to a javascript function.
For this purpose use the prefix callback
. For example:
<div jwcid="@dojo:Widget" dojoType="SliderHorizontal" onValueChanged="callback:sliderCallback"/>
Whereby sliderCallback
is a javascript function:
function sliderCallback(value) { alert(value); }