| com.sun.rave.web.ui.renderer.ListRendererBase
All known Subclasses: com.sun.rave.web.ui.renderer.SelectRenderer, com.sun.rave.web.ui.renderer.OrderableListRenderer, com.sun.rave.web.ui.renderer.AddRemoveRenderer, com.sun.rave.web.ui.renderer.DropDownRenderer, com.sun.rave.web.ui.renderer.EditableListRenderer, com.sun.rave.web.ui.renderer.ListboxRenderer,
ListRendererBase | abstract public class ListRendererBase extends Renderer (Code) | | The ListRendererBase is the base class for the listbox renderers
(Drop-down Menu and Selectable List). These are both rendered using
the same HTML tag (select) so a lot of the renderering functionality
is shared.
|
Method Summary | |
public void | decode(FacesContext context, UIComponent component) Retrieve user input from the UI. | protected void | decode(FacesContext context, UIComponent component, String id) Retrieve user input from the UI. | public void | encodeChildren(javax.faces.context.FacesContext context, javax.faces.component.UIComponent component) Overrides encodeChildren of Renderer to do nothing. | protected String | getOnChangeJavaScript(ListManager component, String functionName, FacesContext context) Append the webui component's own JavaScript function at the end
of any component-specific event handling code. | public boolean | getRendersChildren() The list is not responsible for rendering any child components,
so this method returns false. | String[] | getUserInput(FacesContext context, UIComponent component) Retrieves the selected values as Strings. | void | log(String s) Log an error - only used during development time. | protected void | renderHiddenValue(UIComponent component, FacesContext context, ResponseWriter writer, String hiddenStyle) | protected void | renderList(ListManager component, String id, FacesContext context, String[] styles) This is the base method for rendering a HTML select
element. | void | renderListComponent(ListSelector component, FacesContext context, String[] styles) This method determines whether the component should be
rendered as a standalone list, or laid out together with a
label that was defined as part of the component.
A label will be rendered if either of the following is
true:
- The page author defined a label facet; or
- The page author specified text in the label attribute.
If there is a label, the component will be laid out using a
HTML table. | void | renderListOption(UIComponent list, ListItem listItem, ResponseWriter writer, String[] styles) This is the method responsible for rendering an individual
option for a HTML select element.
Parameters: option - The ListItem to render Parameters: writer - The ResponseWriter used to render the option Parameters: styles - A String array of styles used to render thecomponent. | void | renderListOptions(UIComponent component, Iterator optionsIterator, ResponseWriter writer, String[] styles) This is the method responsible for rendering the options of a
HTML select element. | protected void | renderOpenEncloser(ListManager component, FacesContext context, String element, String hiddenStyle) Renders the opening div tag.
Parameters: component - The component associated with therenderer. | void | renderReadOnlyList(ListManager component, UIComponent label, FacesContext context, String hiddenStyle) This method is used by some of the renderers that extend
ListRenderBase (not ListBox and DropDown). | void | renderSeparator(UIComponent component, ResponseWriter writer, String style) This method is responsible for rendering a separator for an
option group. |
STRING_ATTRIBUTES | final public static String[] STRING_ATTRIBUTES(Code) | | The list of attribute names in the HTML 4.01 Specification that
correspond to the entity type %events;.
|
decode | public void decode(FacesContext context, UIComponent component)(Code) | | Retrieve user input from the UI.
Parameters: context - The FacesContext of this request Parameters: component - The component associated with the renderer |
decode | protected void decode(FacesContext context, UIComponent component, String id)(Code) | | Retrieve user input from the UI.
The expected format of the request parameter of interest is
valuevalue ...
If a value is an empty string the format is
If there is no value there is a single separator.
Parameters: context - The FacesContext of this request Parameters: component - The component associated with the renderer Parameters: id - The DOM id of the select element which represents the value of the list |
encodeChildren | public void encodeChildren(javax.faces.context.FacesContext context, javax.faces.component.UIComponent component) throws java.io.IOException(Code) | | Overrides encodeChildren of Renderer to do nothing. This
renderer renders its own children, but not through this
method.
Parameters: context - The FacesContext of the request Parameters: component - The component associated with therenderer. Must be a subclass of ListSelector. |
getOnChangeJavaScript | protected String getOnChangeJavaScript(ListManager component, String functionName, FacesContext context)(Code) | | Append the webui component's own JavaScript function at the end
of any component-specific event handling code.
Parameters: component - The ListManager for which we create the function call Parameters: functionName - The name of the function Parameters: context - The FacesContext of this request |
getRendersChildren | public boolean getRendersChildren()(Code) | | The list is not responsible for rendering any child components,
so this method returns false. (This is unintuitive, but it
causes the right behaviour). I need to understand this better.
|
getUserInput | String[] getUserInput(FacesContext context, UIComponent component)(Code) | | Retrieves the selected values as Strings.
Parameters: context - The FacesContext of this request Parameters: component - The component associated with the renderer |
log | void log(String s)(Code) | | Log an error - only used during development time.
|
renderHiddenValue | protected void renderHiddenValue(UIComponent component, FacesContext context, ResponseWriter writer, String hiddenStyle) throws IOException(Code) | | |
renderList | protected void renderList(ListManager component, String id, FacesContext context, String[] styles) throws IOException(Code) | | This is the base method for rendering a HTML select
element. This method is based on the functionality of the RI
version, so it invokes a method renderSelectItems which in term
invokes renderSelectItem. Currently, this renderer requires for
the options to be specified using the JSF SelectItem construct,
but this should be replaced with a Lockhart version, because
the JSF version lacks the ability to associate an id with the
list item. I'm not sure whether it should be possible to use
SelectItem as well yet.
Parameters: component - The UI Component associated with therenderer. Parameters: context - The FacesContext of the request Parameters: styles - A String array of styles used to render thecomponent. The first item of the array is the name of theJavaScript method that handles change event. The second item isthe style used when the list is enabled. The third style is theone to use when the list is disabled. The fourth item is thestyle to use for an item that is enabled, the fifth to use foran item that is disabled, and the sixth to use when the item isselected. throws: java.io.IOException - if the renderer fails to write tothe response |
renderListComponent | void renderListComponent(ListSelector component, FacesContext context, String[] styles) throws IOException(Code) | | This method determines whether the component should be
rendered as a standalone list, or laid out together with a
label that was defined as part of the component.
A label will be rendered if either of the following is
true:
- The page author defined a label facet; or
- The page author specified text in the label attribute.
If there is a label, the component will be laid out using a
HTML table. If not, the component will be rendered as a
standalone HTML select element.
Parameters: component - The component associated with therenderer. Must be a subclass of ListSelector. Parameters: context - The FacesContext of the request Parameters: styles - A String array of styles used to render thecomponent. The first item of the array is the name of theJavaScript method that handles change event. The second item isthe style used when the list is enabled. The third style is theone to use when the list is disabled. The fourth item is thestyle to use for an item that is enabled, the fifth to use foran item that is disabled, and the sixth to use when the item isselected. throws: java.io.IOException - if the renderer fails to write tothe response |
renderListOption | void renderListOption(UIComponent list, ListItem listItem, ResponseWriter writer, String[] styles) throws IOException(Code) | | This is the method responsible for rendering an individual
option for a HTML select element.
Parameters: option - The ListItem to render Parameters: writer - The ResponseWriter used to render the option Parameters: styles - A String array of styles used to render thecomponent. The first item of the array is the name of theJavaScript method that handles change event. The second item isthe style used when the list is enabled. The third style is theone to use when the list is disabled. The fourth item is thestyle to use for an item that is enabled, the fifth to use foran item that is disabled, and the sixth to use when the item isselected. throws: java.io.IOException - if the renderer fails to write tothe response |
renderListOptions | void renderListOptions(UIComponent component, Iterator optionsIterator, ResponseWriter writer, String[] styles) throws IOException(Code) | | This is the method responsible for rendering the options of a
HTML select element. This method is based on the corresponding
method from the JSF RI, so the options to be specified using
the JSF SelectItem construct. This will have to be replaced -
see the renderList method for details.
Note - option groups are not yet implemented w.r.t. any
styles specified by the HCI guidelines.
Parameters: component - The UI Component associated with the renderer Parameters: styles - A String array of styles used to render thecomponent. The first item of the array is the name of theJavaScript method that handles change event. The second item isthe style used when the list is enabled. The third style is theone to use when the list is disabled. The fourth item is thestyle to use for an item that is enabled, the fifth to use foran item that is disabled, and the sixth to use when the item isselected. throws: java.io.IOException - if the renderer fails to write tothe response |
renderOpenEncloser | protected void renderOpenEncloser(ListManager component, FacesContext context, String element, String hiddenStyle) throws IOException(Code) | | Renders the opening div tag.
Parameters: component - The component associated with therenderer. Must implement ListManager Parameters: context - The FacesContext of the request Parameters: element - One of "span" or "div" throws: java.io.IOException - if the renderer fails to write tothe response |
renderReadOnlyList | void renderReadOnlyList(ListManager component, UIComponent label, FacesContext context, String hiddenStyle) throws IOException(Code) | | This method is used by some of the renderers that extend
ListRenderBase (not ListBox and DropDown). I should
probably refactor things so that we always know what
the hidden style is instead - then renderListComponent
would do.
TODO.
|
renderSeparator | void renderSeparator(UIComponent component, ResponseWriter writer, String style) throws IOException(Code) | | This method is responsible for rendering a separator for an
option group.
Parameters: option - The component for which we render the separator Parameters: writer - The ResponseWriter used to render the separator Parameters: style - The style to use when rendering the option. throws: java.io.IOException - if the renderer fails to write tothe response |
|
|