com.raritantechnologies.quickstart.taglibrary.forms
Class CheckboxElementRenderer

java.lang.Object
  extended bycom.raritantechnologies.searchApp.taglibrary.BasicSearchElementRenderer
      extended bycom.raritantechnologies.quickstart.taglibrary.forms.CheckboxElementRenderer
All Implemented Interfaces:
IConfigurable, IElementValueBuilder, ISearchElementRenderer

public class CheckboxElementRenderer
extends BasicSearchElementRenderer
implements IElementValueBuilder

Renders a Checkbox field in a SearchForm. A checkbox field can have one or more choices, which can be statically defined or obtained dynamically from a SearchSource lookup.

XML Configuration Template:
  <SearchElementRenderer
     rendererClass="com.raritantechnologies.quickstart.taglibrary.forms.CheckboxElementRenderer"
     fieldID="theFieldID"
     action="[onClick action: do this when checked]"
     cssClass="[ css class ]"
     trueValue="[val if true]"
     initClear="false"
     initFrom="request|lastQuery|session"
     label="[the checkbox label - or label type (see LabelRenderers below )]"
     labelPos="left(default)|right|top|bottom"
     useHiddenField="false"
     defaultChecked="[true|false(default)" >

    <!-- add Data section if multiple checkboxes wanted - get Choices from Configuration XML -->
    <Data nCols="4">
      <Choice value="aVal" name="A Value" />
      <Choice value="bVal" name="B Value" />
      <Choice value="cVal" name="C Value" />

      <Choice value="DVal name="D value" >
        <!-- Optional Flyover Description -->
        <Flyover >
          <!-- Flyover text here -->
        </Flyover>

        <!-- Alternatively, Flyover text can come from a SearchSource -->
        <Flyover searchSource="searchSourceName" 
                descriptionField="[ result field with description ]" >

            <!-- Optional query to search source -->
            <Query>
                <Param ID="[ name of query param ]" value="[ query value ]" />
            </Query>

        </Flyover>

        <CheckAccess securityManagerName="[ name of securityManager ]" uri="[ access URI ]" />

      </Choice>
    </Data>

    <Data searchSource="searchSourceName"
             resultNameField="[field ID from search result that has choice name]"
             resultValueField="[field ID from search result that has choice value]"
             labelValueField="[ field ID from search result that has checkbox label value]"
             nCols="4" >
      <!-- Optional query to search source -->
      <Query>
        <Param ID="[ name of query param ]" value="[ query value ]" />
      </Query>
    </Data>

    <!-- Alternative method of getting label: use LabelRenderer in the form of an ICustomTag -->
    <!-- Fixed or dynamic label value can be used as a key by the label Renderer -->
    <LabelRenderers labelParam="[ parameter name to pass label value to renderer via RaritanPageContext ]" >

        <LabelRenderer class="[ class of com.raritantechnologies.searchApp.taglibrary.ICustomTag ]"
                          labelValues="[ ALL | comma separated list of values to use this label renderer with ]" >

        </LabelRenderer>
    </LabelRenderers>

    <!-- Optional Flyover Description for single checkbox -->
    <Flyover >
      <!-- Flyover text here -->
    </Flyover>

    <!-- Alternatively, Flyover text can come from a SearchSource -->
    <Flyover searchSource="searchSourceName" 
                descriptionField="[ result field with description ]" >

        <!-- Optional query to search source -->
        <Query>
            <Param ID="[ name of query param ]" value="[ query value ]" />
        </Query>

    </Flyover>

  </SearchElementRenderer>
  

Developed by Raritan Technologies Inc..

Author:
Ted Sullivan

Field Summary
 
Fields inherited from class com.raritantechnologies.searchApp.taglibrary.BasicSearchElementRenderer
enabled, name
 
Constructor Summary
CheckboxElementRenderer()
           
CheckboxElementRenderer(java.lang.String fieldID, java.lang.String label)
           
CheckboxElementRenderer(java.lang.String fieldID, java.lang.String label, java.lang.String labelPos, java.lang.String cssClass, java.lang.String action, boolean initClear, java.lang.String trueValue)
           
 
Method Summary
 void addDataChoice(java.lang.String choiceVal, java.lang.String choiceName)
           
 void clearDataChoices()
           
protected  java.lang.String doGetBody(ISearchFormRenderer parent, RaritanPageContext pageContext)
           
 java.lang.String getAction()
           
 OrderedMap getChoiceData()
           
 boolean getClearField()
           
 java.lang.String getConfigurationXML()
           
 void getConfigurationXML(java.io.Writer writer)
           
 java.lang.String getCssClass()
           
 boolean getDefaultChecked()
           
 java.lang.String getFieldID()
           
 java.lang.String getInitFrom()
           
 boolean getIsMultiple()
           
 java.lang.String getLabel()
           
 java.lang.String getLabelPos()
           
 int getNColumns()
           
 OrderedMap getQueryMap()
           
 java.lang.String getResultNameField()
           
 java.lang.String getResultValueField()
           
 java.lang.String getSearchSourceName()
           
 java.lang.String getTrueValue()
           
 java.lang.String getUncheckedValue()
           
 boolean getUseHiddenField()
           
 void initialize(org.w3c.dom.Element elem)
          Initialize renderer-specific parameters from the configuration XML tag.
 void setAction(java.lang.String action)
           
 void setChoiceData(java.lang.String[] values, java.lang.String[] names)
           
 void setClearField(boolean clearField)
           
 void setCssClass(java.lang.String cssClass)
           
 void setDefaultChecked(boolean defaultChecked)
           
 void setFieldID(java.lang.String fieldID)
           
 void setInitFrom(java.lang.String initFrom)
           
 void setIsMultiple(boolean isMultiple)
           
 void setLabel(java.lang.String label)
           
 void setLabelPos(java.lang.String labelPos)
           
 void setNColumns(int nColumns)
           
 void setQueryMap(java.lang.String[] fieldIDs, java.lang.String[] values)
           
 void setResultNameField(java.lang.String resultNameField)
           
 void setResultValueField(java.lang.String resultValueField)
           
 void setSearchSourceName(java.lang.String searchSourceName)
           
 void setSelectedValues(java.util.ArrayList values)
           
 void setTrueValue(java.lang.String trueValue)
           
 void setUncheckedValue(java.lang.String uncheckedValue)
           
 void setUseHiddenField(boolean useHiddenField)
           
 void setValue(java.lang.String value)
           
 
Methods inherited from class com.raritantechnologies.searchApp.taglibrary.BasicSearchElementRenderer
doGetBodyDisabled, getBody, getInitValue, getInitValue, getInitValue, getRenderer, isHidden, setEnable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CheckboxElementRenderer

public CheckboxElementRenderer()

CheckboxElementRenderer

public CheckboxElementRenderer(java.lang.String fieldID,
                               java.lang.String label,
                               java.lang.String labelPos,
                               java.lang.String cssClass,
                               java.lang.String action,
                               boolean initClear,
                               java.lang.String trueValue)

CheckboxElementRenderer

public CheckboxElementRenderer(java.lang.String fieldID,
                               java.lang.String label)
Method Detail

clearDataChoices

public void clearDataChoices()
Specified by:
clearDataChoices in interface IElementValueBuilder

addDataChoice

public void addDataChoice(java.lang.String choiceVal,
                          java.lang.String choiceName)
Specified by:
addDataChoice in interface IElementValueBuilder

setValue

public void setValue(java.lang.String value)
Specified by:
setValue in interface IElementValueBuilder

setSelectedValues

public void setSelectedValues(java.util.ArrayList values)
Specified by:
setSelectedValues in interface IElementValueBuilder

initialize

public void initialize(org.w3c.dom.Element elem)
Description copied from interface: ISearchElementRenderer
Initialize renderer-specific parameters from the configuration XML tag.

Specified by:
initialize in interface ISearchElementRenderer
Overrides:
initialize in class BasicSearchElementRenderer

doGetBody

protected java.lang.String doGetBody(ISearchFormRenderer parent,
                                     RaritanPageContext pageContext)
Specified by:
doGetBody in class BasicSearchElementRenderer

setFieldID

public void setFieldID(java.lang.String fieldID)

getFieldID

public java.lang.String getFieldID()

setTrueValue

public void setTrueValue(java.lang.String trueValue)

getTrueValue

public java.lang.String getTrueValue()

setAction

public void setAction(java.lang.String action)

getAction

public java.lang.String getAction()

setCssClass

public void setCssClass(java.lang.String cssClass)

getCssClass

public java.lang.String getCssClass()

setClearField

public void setClearField(boolean clearField)

getClearField

public boolean getClearField()

setLabel

public void setLabel(java.lang.String label)

getLabel

public java.lang.String getLabel()

setLabelPos

public void setLabelPos(java.lang.String labelPos)

getLabelPos

public java.lang.String getLabelPos()

setInitFrom

public void setInitFrom(java.lang.String initFrom)

getInitFrom

public java.lang.String getInitFrom()

setUseHiddenField

public void setUseHiddenField(boolean useHiddenField)

getUseHiddenField

public boolean getUseHiddenField()

setIsMultiple

public void setIsMultiple(boolean isMultiple)

getIsMultiple

public boolean getIsMultiple()

setChoiceData

public void setChoiceData(java.lang.String[] values,
                          java.lang.String[] names)

getChoiceData

public OrderedMap getChoiceData()

setQueryMap

public void setQueryMap(java.lang.String[] fieldIDs,
                        java.lang.String[] values)

getQueryMap

public OrderedMap getQueryMap()

setSearchSourceName

public void setSearchSourceName(java.lang.String searchSourceName)

getSearchSourceName

public java.lang.String getSearchSourceName()

setResultNameField

public void setResultNameField(java.lang.String resultNameField)

getResultNameField

public java.lang.String getResultNameField()

setResultValueField

public void setResultValueField(java.lang.String resultValueField)

getResultValueField

public java.lang.String getResultValueField()

setNColumns

public void setNColumns(int nColumns)

getNColumns

public int getNColumns()

setDefaultChecked

public void setDefaultChecked(boolean defaultChecked)

getDefaultChecked

public boolean getDefaultChecked()

setUncheckedValue

public void setUncheckedValue(java.lang.String uncheckedValue)

getUncheckedValue

public java.lang.String getUncheckedValue()

getConfigurationXML

public void getConfigurationXML(java.io.Writer writer)
                         throws java.io.IOException
Throws:
java.io.IOException

getConfigurationXML

public java.lang.String getConfigurationXML()