# r

- XML Declaration Syntax:
    `<anyxmlelement xmlns:r="http://richfaces.org/rich"/>`
  Description:
    No Description

- Tag Library Information
  Info | Value
  --- | ---
  ID (tag prefix) | `r`
  URI | `http://richfaces.org/rich`

- Tag Summary
  Tag | Description
  --- | ---
  menuSeparator | The <r:menuSeparator> component represents a separating divider in a menu control.
  dataTable | The <r:dataTable> component is used to render a table, including the table's caption. It works in conjunction with the <r:column> and <r:columnGroup> components to list the contents of a data model. @author Anton Belevich
  tooltip | The <r:tooltip> component provides an informational tool-tip. The tool-tip can be attached to any control and is displayed when hovering the mouse cursor over the control. @author amarkhel
  region | The <r:region> component specifies a part of the JSF component tree to be processed on the server. The region causes all the richfaces Ajax controls to execute: decoding, validating, and updating the model. The region causes these components to execute even if not explicitly declared. As such, processing areas can more easily be marked using a declarative approach. Regions can be nested, in which case only the parent region of the component initiating the request will be processed. @author Nick Belaevski
  treeModelRecursiveAdaptor | The component iterates through recursive collections in order to populate a tree with hierarchical nodes, such as for a file system with multiple levels of directories and files. @author Nick Belaevski
  extendedDataTable | The <r:extendedDataTable> component builds on the functionality of the <r:dataTable> component, adding features such as scrolling for the table body (both horizontal and vertical), Ajax loading for vertical scrolling, frozen columns, row selection, and rearranging of columns. It also supports all the basic table features such as sorting, filtering, and paging using the <r:dataScroller> component. @author Konstantin Mishin
  list | The <r:list> component renders a list of items. The list can be an numerically ordered list, an un-ordered bullet-point list, or a data definition list. The component uses a data model for managing the list items, which can be updated dynamically.
  collapsiblePanel | The <r:collapsiblePanel> component is a collapsible panel that shows or hides content when the header bar is activated. It is a simplified version of <r:togglePanel> component. @author akolonitsky
  tabPanel | The <r:tabPanel> component provides a set of tabbed panels for displaying one panel of content at a time. The tabs can be highly customized and themed. Each tab within a <r:tabPanel> container is a <r:tab> component. @author akolonitsky
  inplaceSelect | The <r:inplaceSelect> component is similar to the <r:inplaceInput> component, except that the <r:inplaceSelect> component uses a drop-down selection box to enter text instead of a regular text field. Changes can be rendered either in-line or for the whole block, and inputs can be focused with keyboard navigation. The component is based on the JSF UISelectOne component, so all the standard rules for value definition, processing, conversion, and validation apply. @author Anton Belevich
  panel | The <r:panel> component is a bordered panel with an optional header.
  dropTarget | The <r:dropTarget> component can be added to a component so that the component can accept dragged items. The dragged items must be defined with a compatible drop type for the <r:dragSource> component. @author abelevich
  popupPanel | The <r:popupPanel> component provides a pop-up panel or window that appears in front of the rest of the application. The <r:popupPanel> component functions either as a modal window which blocks interaction with the rest of the application while active, or as a non-modal window. It can be positioned on the screen, dragged to a new position by the user, and re-sized.
  dragSource | The <r:dragSource> component can be added to a component to indicate it is capable of being dragged by the user. The dragged item can then be dropped into a compatible drop area, designated using the <r:dropTarget> component. @author abelevich
  select | The <r:select> component provides a drop-down list box for selecting a single value from multiple options. The <r:select> component can be configured as a combo-box, where it will accept typed input. The component also supports keyboard navigation. The <r:select> component functions similarly to the JSF UISelectOne component. @author abelevich
  attachQueue | The <r:attachQueue> behavior is used together with a <r:queue> component to further customize queuing for particular components and behaviors. The <r:attachQueue> behavior can override the scope-wide queue settings for an individual component, or attach specific requests to a queue. @author Nick Belaevski
  notifyStack | Notifications emited by <r:notify>, <r:notifyMessage> and <r:notifyMessages> are displayed in top-right corner of the screen by default. It is <r:notifyStack> which defines where messages will appear and handles their stacking. Stack also provides way how to remove messages from screen - when stack is re-rendered, current notifications are destroyed, freeing place for new notifications. @author Bernard Labno @author Lukas Fryc
  pickList | The <r:pickList> is a component for selecting items from a list. Additionally, it allows for the selected items to be ordered (client-side). From the client side perspective, items are added/removed from the source list, and removed/added to the target list. @author Brian Leathem
  togglePanel | The <r:togglePanel> component is used as a base for the other switchable components, the <r:accordion> component and the <r:tabPanel> component. It provides an abstract switchable component without any associated markup. As such, the <r:togglePanel> component could be customized to provide a switchable component when neither an accordion component or a tab panel component is appropriate. @author akolonitsky @author Brian Leathem
  log | The <r:log> component generates JavaScript that opens a debug window, logging application information such as requests, responses, and DOM changes. @author Nick Belaevski
  message | The <r:message> component renders a single FacesMessage message instance added for the component. The appearance of the message can be customized, and tool-tips can be used for further information about the message. @author asmirnov@exadel.com
  repeat | The non-visual <r:repeat> component is used to iterate through a data model. The component renders child content for every iteration according to the current object data. @author Nick Belaevski
  poll | The <r:poll> component allows periodical sending of Ajax requests to the server. It is used for repeatedly updating a page at specific time intervals. @author shura
  tree | The <r:tree> component provides a hierarchical tree control. Each <r:tree> component typically consists of <r:treeNode> child components. The appearance and behavior of the tree and its nodes can be fully customized. @author Nick Belaevski
  jsFunction | The <r:jsFunction> component performs Ajax requests directly from JavaScript code and retrieves server-side data. The server-side data is returned in JavaScript Object Notation (JSON) format prior to the execution of any JavaScript code defined using the "oncomplete" attribute. @author asmirnov@exadel.com
  status | The <r:status> component displays the status of current Ajax requests. The status can be either in progress, complete, or an error is shown after a failed request. @author Nick Belaevski
  calendar | The <r:calendar> component allows the user to enter a date and time through an in-line or pop-up calendar. The pop-up calendar can navigate through months and years, and its look and feel can be highly customized. @author amarkhel
  jQuery | The <r:jQuery> component applies styles and custom behavior to both JSF (JavaServer Faces) objects and regular DOM (Document Object Model) objects. It uses the jQuery JavaScript framework to add functionality to web applications. This component is for use as a facelet tag. See the <rich:jQuery> EL function for access to the jQuery library via EL. @author nick
  mediaOutput | The <r:mediaOutput> component is used for generating images, video, sounds, and other resources defined on the fly. @author shura
  panelMenuItem | The <r:panelMenuItem> component represents a single item inside a <r:panelMenuGroup> component, which is in turn part of a <r:panelMenu> component. @author akolonitsky
  hotKey | The <r:hotKey> component allows registering hot keys on the page or particular elements and defining client side processing functions for these keys. @author ilya_shaikovsky @author Lukas Fryc
  tab | The <r:tab> component represents an individual tab inside a <r:tabPanel> component, including the tab's content. Clicking on the tab header will bring its corresponding content to the front of other tabs. @author akolonitsky
  outputPanel | The <r:outputPanel> component is used to group together components in to update them as a whole, rather than having to specify the components individually. @author asmirnov@exadel.com
  menuItem | The <r:menuItem> component represents a single item in a menu control. The <r:menuItem> component can be also be used as a seperate component without a parent menu component, such as on a toolbar.
  columnGroup | The <r:columnGroup> component combines multiple columns in a single row to organize complex parts of a table. The resulting effect is similar to using the breakRowBefore attribute of the <r:column> component, but is clearer and easier to follow in the source code.
  togglePanelItem | The <r:togglePanelItem> component is a switchable panel for use with the <r:togglePanel> component. Use the <r:togglePanelItem> component to define the content for a panel using nested components. Switching between <r:togglePanelItem> components is handled by the <r:toggleControl> behavior. @author akolonitsky @author Brian Leathem
  hashParam | The <r:hashParam> component allows client-side parameters to be grouped into a hash map. The hash map can then be passed to the client JavaScript API functions of any RichFaces component. @author Anton Belevich
  toolbar | The <r:toolbar> component is a horizontal toolbar. Any JavaServer Faces (JSF) component can be added to the toolbar.
  panelMenu | The <r:panelMenu> component is used in conjunction with <r:panelMenuItem> and <r:panelMenuGroup> to create an expanding, hierarchical menu. The <r:panelMenu> component's appearance can be highly customized, and the hierarchy can stretch to any number of sub-levels. @author akolonitsky
  fileUpload | The <r:fileUpload> component allows the user to upload files to a server. It features multiple uploads, progress bars, restrictions on file types, and restrictions on sizes of the files to be uploaded. @author Konstantin Mishin
  toolbarGroup | The <r:toolbarGroup> component is a child component of the <r:toolbar> component. The <r:toolbarGroup> component is used to group a number of items together on a toolbar.
  placeholder | Adds placeholder capability to HTML input and textarea elements. A placeholder typically appears as light gray text within an input or textarea element whenever the element is empty and does not have focus. This provides a hint to the user as to what the input or textarea element is used for, or the type of input that is required.
  menuGroup | The <r:menuGroup> component represents an expandable sub-menu in a menu control. The <r:menuGroup> component can contain a number of <r:menuItem> components, or further nested <r:menuGroup> components.
  editor | The <r:editor> component is used for creating a WYSIWYG editor on a page. @author Lukas Fryc
  column | The <r:column> component facilitates columns in a table. It supports merging columns and rows, sorting, filtering, and customized skinning. @author Anton Belevich
  collapsibleSubTable | The <r:collapsibleSubTable> component acts as a child element to a <r:dataTable> component. The <r:collapsibleSubTable> component iterates through the child collections in the currently iterated object to create master-detail tables. @author Anton Belevich
  treeNode | The component is a child component of the component. It represents nodes in the parent tree. The appearance and functionality of each tree node can be customized. @author Nick Belaevski
  param | The <r:param> behavior combines the functionality of the JavaServer Faces (JSF) components <f:param> and <f:actionListener>. @author shura, alexsmirnov
  push | The <r:push> component performs real-time updates on the client side from events triggered at the server side. The events are pushed out to the client through the RichFaces messaging queue (which is bound to Java Messaging Service - JMS). When the <r:push> component is triggered by a server event, it can in turn cause Ajax updates and changes. @author Nick Belaevski @author Lukas Fryc
  autocomplete | The <r:autocomplete> component is an auto-completing input-box with built-in Ajax capabilities. It supports client-side suggestions, browser-like selection, and customization of the look and feel. @author Nick Belaevski
  contextMenu | The <r:contextMenu> component is used for creating a hierarchical context menu that are activated on events like onmouseover, onclick etc. The component can be applied to any element on the page. @author Brian Leathem
  progressBar | The <r:progressBar> component displays a progress bar to indicate the status of a process to the user. It can update either through Ajax or on the client side, and the look and feel can be fully customized. @author "Andrey Markavtsov"
  dataGrid | The <r:dataGrid> component is used to arrange data objects in a grid. Values in the grid can be updated dynamically from the data model, and Ajax updates can be limited to specific rows. The component supports header, footer, and caption facets. @author Anton Belevich
  dropDownMenu | The <r:dropDownMenu> component is used for creating a drop-down, hierarchical menu. It can be used with the <r:toolbar> component to create menus in an application's toolbar.
  focus | Focus component allows to set focus based on validation of components or alternatively it can preserve focus on currently focused form input. Focus can be bound to form (in case of placement to h:form) or to whole view (when placed outside of forms) - in latter case, all forms will be managed by one Focus. There can be at most one Focus per form. When there is one view-scoped Focus and form defines own Focus, form-scoped Focus settings will be used. Focus is applied each time the component is rendered - for each full page submit and for each partial page request (in case of ajaxRendered=true). Alternatively, you can use JavaScript API: `applyFocus()` function will immediately cause.
  messages | The <r:messages> components works similarly to the <r:message> component, but can display all the validation messages added for the current view instead of just a single message. @author asmirnov@exadel.com
  accordionItem | The <r:accordionItem> component is a panel for use with the <r:accordion> component. <r:accordionItem> components can be added dynamically using iteration models with the <c:forEach> tag. @author akolonitsky
  notifyMessage | The <r:notifyMessage> component is built on top of <r:notify>, the difference is in usage. The <r:notifyMessage> component displays FacesMessages associated with a given component, similar to <r:message>: one notification is displayed for first FacesMessage in the stack that is risen either programatically or during conversion/validation of the component. The severity of the message determines the color and icon of the resulting notification. @author Lukas Fryc @author Brian Leathem
  notifyMessages | The <r:notifyMessages> component is the same as the <r:notifyMessage> component, but each of the available messages generates one notification. @author Lukas Fryc @author Brian Leathem
  queue | The <r:queue> component manages the JSF queue of Ajax requests. It provides additional options for a finer control of request processing. @author Nick Belaevski
  orderingList | The <r:orderingList> is a component for ordering items in a list (client-side). @author Brian Leathem
  dragIndicator | The <r:dragIndicator> component defines a graphical element to display under the mouse cursor during a drag-and-drop operation. @author abelevich
  accordion | The <r:accordion> is a series of panels stacked on top of each other, each collapsed such that only the header of the panel is showing. When the header of a panel is clicked, it is expanded to show the content of the panel. Clicking on a different header will collapse the previous panel and epand the selected one. Each panel contained in a <r:accordion> component is a <r:accordionItem> component. @author akolonitsky
  commandLink | The <r:commandLink> component is similar to the JavaServer Faces (JSF) <h:commandLink> component, except that it includes plugged-in Ajax behavior. @author Nick Belaevski
  graphValidator | The <r:graphValidator> component is used to wrap a set of input components related to one object. The object defined by the <r:graphValidator> component can then be completely validated. The validation includes all object properties, even those which are not bound to the individual form components. Validation performed in this way allows for cross-field validation in complex forms.
  panelMenuGroup | The <r:panelMenuGroup> component defines a group of <r:panelMenuItem> components inside a <r:panelMenu>. @author akolonitsky
  commandButton | The <r:commandButton> component is similar to the JavaServer Faces (JSF) <h:commandButton> component, but additionally includes Ajax support. @author Nick Belaevski
  notify | The <r:notify> component serves for advanced user interaction, using notification boxes to give the user instant feedback on what's happening within the application. Each time this component is rendered, a floating notification box is displayed in the selected corner of the browser screen. @author Lukas Fryc @author Brian Leathem
  dataScroller | The <r:dataScroller> component is used for navigating through multiple pages of tables or grids.
  treeModelAdaptor | The component takes an object which implements the Map or Iterable interfaces. It adds all the object entries to the parent node as child nodes. @author Nick Belaevski
  collapsibleSubTableToggler | The <r:collapsibleSubTableToggler> component provides a toggle control for the user to expand and collapse sub-tables. @author Anton Belevich
  inplaceInput | The <r:inplaceInput> component allows information to be entered in-line in blocks of text, improving readability of the text. Multiple input regions can be navigated with keyboard navigation. The component has three functional states: the view state, where the component displays its initial setting, such as "click to edit"; the edit state, where the user can input text; and the "changed" state, where the new value for the component has been confirmed but can be edited again if required. @author Anton Belevich
  inputNumberSlider | The <r:inputNumberSlider> component provides a slider for changing numerical values. Optional features include control arrows to step through the values, a tool-tip to display the value while sliding, and a text field for typing the numerical value which can then be validated against the slider's range.
  inputNumberSpinner | The <r:inputNumberSpinner> component is a single-line input field with buttons to increase and decrease a numerical value. The value can be changed using the corresponding directional keys on a keyboard, or by typing into the field.
  actionListener | No Description
  itemChangeListener | Associates item change listener with any toggleable panel (accordion, collapsiblePanel, tabPanel, togglePanel, panelMenu) in order to listen for item change events.
  panelToggleListener | Associates panel toggle listener with collapsiblePanel in order to listen for panel toggle events.
  treeToggleListener | Associates tree toggle listener with component in order to listen for tree toggling events on server-side.
  treeSelectionChangeListener | Associates tree selection change listener with component in order to listen for tree selection events on server-side.
  componentControl | The <r:componentControl> behavior allows JavaScript API functions to be called on target components. The functions are called after defined events are triggered on the component to with the <r:componentControl> behavior is attached. Initialization variants and activation events can be customized, and parameters can be passed to the target component. @author Anton Belevich
  ajax | The <r:ajax> behavior allows Ajax capability to be added to a non-Ajax component. The non-Ajax component must implement the ClientBehaviorHolder interface for all the event attributes that support behavior rendering. @author Anton Belevich
  toggleControl | The <r:toggleControl> behavior can be attached to any interface component, whether inside or outside the controlled panel itself. It works with a <r:togglePanel> component to switch between different <r:togglePanelItem> components. @author akolonitsky
  validator | The <r:validator> behavior adds client-side validation to a form input control based on registered server-side validators. It provides this validation without the need to reproduce the server-side annotations. The <r:validator> behavior triggers all client validator annotations listed in the relevant managed bean. @author asmirnov@exadel.com

- Function Summary
  Type | Function | Description
  --- | --- | ---
  `java.lang.String` | `clientId(java.lang.String)` | The r:clientId('id') function returns the client identifier related to the passed component identifier ('id'). If the specified component identifier is not found, null is returned instead.
  `java.lang.String` | `component(java.lang.String)` | The r:component('id') function is equivalent to the RichFaces.$('clientId') code. It returns the client object instance based on the passed server-side component identifier ('id'). If the specified component identifier is not found, null is returned instead. The function can be used to get an object from a component to call a JavaScript API function without using the component.
  `java.lang.String` | `element(java.lang.String)` | The r:element('id') function is a shortcut for the equivalent document.getElementById(#{r:clientId('id')}) code. It returns the element from the client, based on the passed server-side component identifier. If the specified component identifier is not found, null is returned instead.
  `java.lang.String` | `jQuerySelector(java.lang.String)` | The r:jQuerySelector('id') function will perform nearly the same function as r:clientId('id') but will transform the resulting id into a jQuery id selector which means that it will add a "#" character at the beginning and escape all reserved characters in CSS selectors.
  `java.lang.String` | `jQuery(java.lang.String)` | The r:jQuery('id') function is a shortcut for the equivalent jQuery(#{r:element('id')}) code. It returns the jQuery object from the client, based on the passed server-side component identifier. If the specified component identifier is not found, empty jQuery object is returned instead. This function is for use in EL. Refer to the <rich:jQuery> component for access to the jQuery library as a facelet tag.
  `javax.faces.component.UIComponent` | `findComponent(java.lang.String)` | The r:findComponent('id') function returns the a UIComponent instance of the passed component identifier. If the specified component identifier is not found, null is returned instead.
  `boolean` | `isUserInRole(java.lang.Object)` | The r:isUserInRole(Object) function checks whether the logged-in user belongs to a certain user role, such as being an administrator. User roles are defined in the web.xml settings file. @since 3.3.1
  `java.lang.String` | `toScript(java.lang.Object)` | Convert any Java Object to JavaScript representation, converting types properly, e.g.: `Java primitives` `Arrays: toScript(new int[] { 1, 2, 3 }) -> [1, 2, 3]` `Collections (sets, lists): toScript(Arrays.asList(new int[] { 1, 2, 3 })) -> [1, 2, 3]` `Maps: toScript((Map<String, String>)map) -> {\"a\":\"foo\",\"b\":\"bar\",\"c\":\"baz\"}` `Beans / Objects: toScript(new Bean[] { new Bean(1, true, "bar") }) -> [{\"bool\":true,\"foo\":\"bar\",\"integer\":1}]` `Dates and Timezones` `Combinations of above` This function delegates to org.richfaces.javascript.ScriptUtils#toScript(Object)

Output generated by Vdldoc View Declaration Language Documentation Generator.