class %ZEN.Component.radioSet
extends listControl
This is a specialized control that displays a complete set
of radio buttons based on a list of values.
The list of values is specified by the valueList. This
is a csv-list of values that the user can select. If displayList is
provided, it is used to provide the displayed captions for the buttons.
If there is an empty value ("") within the items in valueList (e.g., ",A,B,C"),
then an additional button will be displayed for the empty value. The caption for this empty
value is specified by the emptyCaption.
It is assumed that every value within the set of value is distinct;
A valueList containing duplicate items (e.g., "A,A,A") will lead to strange
beahavior for the user.
It is possible to programmatically set the value of the radioSet to any arbitary value
using the setValue method. If the value of the radioSet does
not correspond to an item in the set of values, then all buttons in the set will be unchecked.
property captionClass
as %ZEN.Datatype.cssClass [ InitialExpression = "radioSetCaption" ];
CSS class to apply to the control's captions.
property emptyCaption
as %ZEN.Datatype.caption [ InitialExpression = "None" ];
This caption is used for any radio buttons within this radioSet
that have an empty ("") display value.
property layout
as %ZEN.Datatype.string(VALUELIST=",horizontal,vertical") [ InitialExpression = "horizontal" ];
Specifies whether the radio buttons appear horizontally (default) or vertically
property optionCount
as %ZEN.Datatype.integer(XMLPROJECTION="none") [ InitialExpression = 0 ];
Count of options within this radioSet.
property titleList
as %ZEN.Datatype.csv(ZENLOCALIZE=1);
Defines set of titles (tooltip text) for each of
the choices of this radioSet as a csv-list.
method %DrawHTML()
Static HTML display method: draw the BODY of this component
as HTML.
Subclasses implement this in order to render the static HTML
contents of a component.
method %SetDefaultValues()
This method fills in reasonable default values for
this control. Used by tools (such as Control Tester) to
dynamically create controls.
method clickItem(choice)
[ Language = javascript ]
User click on radio button or caption for radio button choice;
select associated button and invoke callbacks.
method setProperty(property, value, value2)
[ Language = javascript ]
Set the value of a named property.