Platform Explorer / CMF 1.8

Contribution org.nuxeo.ecm.platform.forms.layout.MainContribution--widgettypes

This contribution is part of XML component org.nuxeo.ecm.platform.forms.layout.MainContribution inside nuxeo-platform-forms-layout-client-5.4.2-HF05.jar

Extension Point

Extension point widgettypes of component WebLayoutManager.

Contributed Items

  • <widgetType name="text">
          <configuration>
            <title>Text</title>
            <description>
              <p>
                The text widget displays an input text in create or edit mode, with
                additional message tag for errors, and a regular text output in any
                other mode.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;h:inputText /&gt; tag in create or edit mode, and properties
                accepted on a &lt;h:outputText /&gt; tag in other modes.
              </p>
            </description>
            <demo id="textWidget" previewEnabled="true"/>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
                <type>path</type>
              </supportedTypes>
              <defaultTypes>
                <type>string</type>
              </defaultTypes>
            </fields>
            <categories>
              <category>document</category>
            </categories>
            <properties>
              <layouts mode="view">
                <layout name="text_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                    <row>
                      <widget>escape</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="escape" type="checkbox">
                    <labels>
                      <label mode="any">Escape</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to false, the held value will not be escaped. For
                        instance if it contains HTML tags, they will be rendered as
                        part of the rendered HTML page instead of being rendered as
                        text content. Defaults to true.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>escape</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="text_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>maxlength</widget>
                    </row>
                    <row>
                      <widget>size</widget>
                    </row>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                    <row>
                      <widget>accesskey</widget>
                    </row>
                    <row>
                      <widget>alt</widget>
                    </row>
                    <row>
                      <widget>dir</widget>
                    </row>
                    <row>
                      <widget>disabled</widget>
                    </row>
                    <row>
                      <widget>immediate</widget>
                    </row>
                    <row>
                      <widget>lang</widget>
                    </row>
                    <row>
                      <widget>validator</widget>
                    </row>
                    <row>
                      <widget>valueChangeListener</widget>
                    </row>
                  </rows>
                  <widget name="accesskey" type="text">
                    <labels>
                      <label mode="any">Access key</label>
                    </labels>
                    <fields>
                      <field>accesskey</field>
                    </fields>
                  </widget>
                  <widget name="alt" type="text">
                    <labels>
                      <label mode="any">Alt</label>
                    </labels>
                    <fields>
                      <field>alt</field>
                    </fields>
                  </widget>
                  <widget name="dir" type="selectOneListbox">
                    <labels>
                      <label mode="any">Direction</label>
                    </labels>
                    <fields>
                      <field>dir</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="" itemValue=""/>
                      <option itemLabel="Left to right" itemValue="LTR"/>
                      <option itemLabel="Right to left" itemValue="RTL"/>
                    </selectOptions>
                  </widget>
                  <widget name="disabled" type="checkbox">
                    <labels>
                      <label mode="any">Disabled</label>
                    </labels>
                    <fields>
                      <field>disabled</field>
                    </fields>
                  </widget>
                  <widget name="immediate" type="checkbox">
                    <labels>
                      <label mode="any">Immediate</label>
                    </labels>
                    <fields>
                      <field>immediate</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="lang" type="text">
                    <labels>
                      <label mode="any">Lang</label>
                    </labels>
                    <fields>
                      <field>lang</field>
                    </fields>
                  </widget>
                  <widget name="maxlength" type="int">
                    <labels>
                      <label mode="any">Max length</label>
                    </labels>
                    <fields>
                      <field>maxlength</field>
                    </fields>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="size" type="int">
                    <labels>
                      <label mode="any">Size</label>
                    </labels>
                    <fields>
                      <field>size</field>
                    </fields>
                  </widget>
                  <widget name="validator" type="text">
                    <labels>
                      <label mode="any">Validator</label>
                    </labels>
                    <fields>
                      <field>validator</field>
                    </fields>
                  </widget>
                  <widget name="valueChangeListener" type="text">
                    <labels>
                      <label mode="any">Value change listener</label>
                    </labels>
                    <fields>
                      <field>valueChangeListener</field>
                    </fields>
                  </widget>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TextWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="int">
          <configuration>
            <title>Integer</title>
            <description>
              <p>
                The int widget displays an input text in create or edit mode, with
                additional message tag for errors, and a regular text output in any
                other mode. It uses a number converter.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;h:inputText /&gt; tag in create or edit mode, and properties
                accepted on a &lt;h:outputText /&gt; tag in other modes.
              </p>
            </description>
            <demo id="intWidget" previewEnabled="true"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>integer</type>
              </supportedTypes>
              <defaultTypes>
                <type>integer</type>
              </defaultTypes>
            </fields>
            <properties>
              <layouts mode="view">
                <layout name="int_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="int_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>maxlength</widget>
                    </row>
                    <row>
                      <widget>size</widget>
                    </row>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                    <row>
                      <widget>accesskey</widget>
                    </row>
                    <row>
                      <widget>alt</widget>
                    </row>
                    <row>
                      <widget>dir</widget>
                    </row>
                    <row>
                      <widget>disabled</widget>
                    </row>
                    <row>
                      <widget>immediate</widget>
                    </row>
                    <row>
                      <widget>lang</widget>
                    </row>
                    <row>
                      <widget>validator</widget>
                    </row>
                    <row>
                      <widget>valueChangeListener</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="accesskey" type="text">
                    <labels>
                      <label mode="any">Access key</label>
                    </labels>
                    <fields>
                      <field>accesskey</field>
                    </fields>
                  </widget>
                  <widget name="alt" type="text">
                    <labels>
                      <label mode="any">Alt</label>
                    </labels>
                    <fields>
                      <field>alt</field>
                    </fields>
                  </widget>
                  <widget name="dir" type="selectOneListbox">
                    <labels>
                      <label mode="any">Direction</label>
                    </labels>
                    <fields>
                      <field>dir</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="" itemValue=""/>
                      <option itemLabel="Left to right" itemValue="LTR"/>
                      <option itemLabel="Right to left" itemValue="RTL"/>
                    </selectOptions>
                  </widget>
                  <widget name="disabled" type="checkbox">
                    <labels>
                      <label mode="any">Disabled</label>
                    </labels>
                    <fields>
                      <field>disabled</field>
                    </fields>
                  </widget>
                  <widget name="immediate" type="checkbox">
                    <labels>
                      <label mode="any">Immediate</label>
                    </labels>
                    <fields>
                      <field>immediate</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="lang" type="text">
                    <labels>
                      <label mode="any">Lang</label>
                    </labels>
                    <fields>
                      <field>lang</field>
                    </fields>
                  </widget>
                  <widget name="maxlength" type="int">
                    <labels>
                      <label mode="any">Max length</label>
                    </labels>
                    <fields>
                      <field>maxlength</field>
                    </fields>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="size" type="int">
                    <labels>
                      <label mode="any">Size</label>
                    </labels>
                    <fields>
                      <field>size</field>
                    </fields>
                  </widget>
                  <widget name="validator" type="text">
                    <labels>
                      <label mode="any">Validator</label>
                    </labels>
                    <fields>
                      <field>validator</field>
                    </fields>
                  </widget>
                  <widget name="valueChangeListener" type="text">
                    <labels>
                      <label mode="any">Value change listener</label>
                    </labels>
                    <fields>
                      <field>valueChangeListener</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.IntWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="double">
          <configuration>
            <title>Decimal number</title>
            <sinceVersion>5.4.2</sinceVersion>
            <description>
              <p>
                The double widget displays an input text in create or edit mode,
                with additional message tag for errors, and a regular text output in
                any other mode. It uses a double converter.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;h:inputText /&gt; tag in create or edit mode, and properties
                accepted on a &lt;h:outputText /&gt; tag in other modes.
              </p>
            </description>
            <!--<demo id="doubleWidget" />-->
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>double</type>
              </supportedTypes>
              <defaultTypes>
                <type>double</type>
              </defaultTypes>
            </fields>
            <properties>
              <layouts mode="view">
                <layout name="double_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="double_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>maxlength</widget>
                    </row>
                    <row>
                      <widget>size</widget>
                    </row>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                    <row>
                      <widget>accesskey</widget>
                    </row>
                    <row>
                      <widget>alt</widget>
                    </row>
                    <row>
                      <widget>dir</widget>
                    </row>
                    <row>
                      <widget>disabled</widget>
                    </row>
                    <row>
                      <widget>immediate</widget>
                    </row>
                    <row>
                      <widget>lang</widget>
                    </row>
                    <row>
                      <widget>validator</widget>
                    </row>
                    <row>
                      <widget>valueChangeListener</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="accesskey" type="text">
                    <labels>
                      <label mode="any">Access key</label>
                    </labels>
                    <fields>
                      <field>accesskey</field>
                    </fields>
                  </widget>
                  <widget name="alt" type="text">
                    <labels>
                      <label mode="any">Alt</label>
                    </labels>
                    <fields>
                      <field>alt</field>
                    </fields>
                  </widget>
                  <widget name="dir" type="selectOneListbox">
                    <labels>
                      <label mode="any">Direction</label>
                    </labels>
                    <fields>
                      <field>dir</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="" itemValue=""/>
                      <option itemLabel="Left to right" itemValue="LTR"/>
                      <option itemLabel="Right to left" itemValue="RTL"/>
                    </selectOptions>
                  </widget>
                  <widget name="disabled" type="checkbox">
                    <labels>
                      <label mode="any">Disabled</label>
                    </labels>
                    <fields>
                      <field>disabled</field>
                    </fields>
                  </widget>
                  <widget name="immediate" type="checkbox">
                    <labels>
                      <label mode="any">Immediate</label>
                    </labels>
                    <fields>
                      <field>immediate</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="lang" type="text">
                    <labels>
                      <label mode="any">Lang</label>
                    </labels>
                    <fields>
                      <field>lang</field>
                    </fields>
                  </widget>
                  <widget name="maxlength" type="int">
                    <labels>
                      <label mode="any">Max length</label>
                    </labels>
                    <fields>
                      <field>maxlength</field>
                    </fields>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="size" type="int">
                    <labels>
                      <label mode="any">Size</label>
                    </labels>
                    <fields>
                      <field>size</field>
                    </fields>
                  </widget>
                  <widget name="validator" type="text">
                    <labels>
                      <label mode="any">Validator</label>
                    </labels>
                    <fields>
                      <field>validator</field>
                    </fields>
                  </widget>
                  <widget name="valueChangeListener" type="text">
                    <labels>
                      <label mode="any">Value change listener</label>
                    </labels>
                    <fields>
                      <field>valueChangeListener</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.DoubleWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="secret">
          <configuration>
            <title>Secret</title>
            <description>
              <p>
                The secret widget displays an input secret text in create or edit
                mode, with additional message tag for errors, and nothing in any
                other mode.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;h:inputSecret /&gt; tag in create or edit mode.
              </p>
            </description>
            <demo id="secretWidget" previewEnabled="true"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <layouts mode="edit">
                <layout name="secret_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>maxlength</widget>
                    </row>
                    <row>
                      <widget>size</widget>
                    </row>
                    <row>
                      <widget>accesskey</widget>
                    </row>
                    <row>
                      <widget>alt</widget>
                    </row>
                    <row>
                      <widget>dir</widget>
                    </row>
                    <row>
                      <widget>disabled</widget>
                    </row>
                    <row>
                      <widget>immediate</widget>
                    </row>
                    <row>
                      <widget>lang</widget>
                    </row>
                    <row>
                      <widget>redisplay</widget>
                    </row>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                    <row>
                      <widget>validator</widget>
                    </row>
                    <row>
                      <widget>valueChangeListener</widget>
                    </row>
                  </rows>
                  <widget name="accesskey" type="text">
                    <labels>
                      <label mode="any">Access key</label>
                    </labels>
                    <fields>
                      <field>accesskey</field>
                    </fields>
                  </widget>
                  <widget name="alt" type="text">
                    <labels>
                      <label mode="any">Alt</label>
                    </labels>
                    <fields>
                      <field>alt</field>
                    </fields>
                  </widget>
                  <widget name="dir" type="selectOneListbox">
                    <labels>
                      <label mode="any">Direction</label>
                    </labels>
                    <fields>
                      <field>dir</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="" itemValue=""/>
                      <option itemLabel="Left to right" itemValue="LTR"/>
                      <option itemLabel="Right to left" itemValue="RTL"/>
                    </selectOptions>
                  </widget>
                  <widget name="disabled" type="checkbox">
                    <labels>
                      <label mode="any">Disabled</label>
                    </labels>
                    <fields>
                      <field>disabled</field>
                    </fields>
                  </widget>
                  <widget name="immediate" type="checkbox">
                    <labels>
                      <label mode="any">Immediate</label>
                    </labels>
                    <fields>
                      <field>immediate</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="lang" type="text">
                    <labels>
                      <label mode="any">Lang</label>
                    </labels>
                    <fields>
                      <field>lang</field>
                    </fields>
                  </widget>
                  <widget name="maxlength" type="int">
                    <labels>
                      <label mode="any">Max length</label>
                    </labels>
                    <fields>
                      <field>maxlength</field>
                    </fields>
                  </widget>
                  <widget name="redisplay" type="checkbox">
                    <labels>
                      <label mode="any">Redisplay</label>
                    </labels>
                    <fields>
                      <field>redisplay</field>
                    </fields>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="size" type="int">
                    <labels>
                      <label mode="any">Size</label>
                    </labels>
                    <fields>
                      <field>size</field>
                    </fields>
                  </widget>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="validator" type="text">
                    <labels>
                      <label mode="any">Validator</label>
                    </labels>
                    <fields>
                      <field>validator</field>
                    </fields>
                  </widget>
                  <widget name="valueChangeListener" type="text">
                    <labels>
                      <label mode="any">Value change listener</label>
                    </labels>
                    <fields>
                      <field>valueChangeListener</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.SecretWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="textarea">
          <configuration>
            <title>Textarea</title>
            <description>
              <p>
                The textarea widget displays a textarea in create or edit mode, with
                additional message tag for errors, and a regular text output in any
                other mode.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;h:inputTextarea /&gt; tag in create or edit mode, and properties
                accepted on a &lt;h:outputText /&gt; tag in other modes.
              </p>
            </description>
            <demo id="textareaWidget" previewEnabled="true"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <layouts mode="view">
                <layout name="textarea_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                    <row>
                      <widget>escape</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="escape" type="checkbox">
                    <labels>
                      <label mode="any">Escape</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to false, the held value will not be escaped. For
                        instance if it contains HTML tags, they will be rendered as
                        part of the rendered HTML page instead of being rendered as
                        text content. Defaults to true.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>escape</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="textarea_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>cols</widget>
                    </row>
                    <row>
                      <widget>rows</widget>
                    </row>
                    <row>
                      <widget>maxlength</widget>
                    </row>
                    <row>
                      <widget>accesskey</widget>
                    </row>
                    <row>
                      <widget>dir</widget>
                    </row>
                    <row>
                      <widget>disabled</widget>
                    </row>
                    <row>
                      <widget>immediate</widget>
                    </row>
                    <row>
                      <widget>lang</widget>
                    </row>
                    <row>
                      <widget>validator</widget>
                    </row>
                    <row>
                      <widget>valueChangeListener</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="accesskey" type="text">
                    <labels>
                      <label mode="any">Access key</label>
                    </labels>
                    <fields>
                      <field>accesskey</field>
                    </fields>
                  </widget>
                  <widget name="cols" type="int">
                    <labels>
                      <label mode="any">Number of columns</label>
                    </labels>
                    <fields>
                      <field>cols</field>
                    </fields>
                  </widget>
                  <widget name="rows" type="int">
                    <labels>
                      <label mode="any">Number of rows</label>
                    </labels>
                    <fields>
                      <field>rows</field>
                    </fields>
                  </widget>
                  <widget name="dir" type="selectOneListbox">
                    <labels>
                      <label mode="any">Direction</label>
                    </labels>
                    <fields>
                      <field>dir</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="" itemValue=""/>
                      <option itemLabel="Left to right" itemValue="LTR"/>
                      <option itemLabel="Right to left" itemValue="RTL"/>
                    </selectOptions>
                  </widget>
                  <widget name="disabled" type="checkbox">
                    <labels>
                      <label mode="any">Disabled</label>
                    </labels>
                    <fields>
                      <field>disabled</field>
                    </fields>
                  </widget>
                  <widget name="immediate" type="checkbox">
                    <labels>
                      <label mode="any">Immediate</label>
                    </labels>
                    <fields>
                      <field>immediate</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="lang" type="text">
                    <labels>
                      <label mode="any">Lang</label>
                    </labels>
                    <fields>
                      <field>lang</field>
                    </fields>
                  </widget>
                  <widget name="maxlength" type="int">
                    <labels>
                      <label mode="any">Max length</label>
                    </labels>
                    <fields>
                      <field>maxlength</field>
                    </fields>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="validator" type="text">
                    <labels>
                      <label mode="any">Validator</label>
                    </labels>
                    <fields>
                      <field>validator</field>
                    </fields>
                  </widget>
                  <widget name="valueChangeListener" type="text">
                    <labels>
                      <label mode="any">Value change listener</label>
                    </labels>
                    <fields>
                      <field>valueChangeListener</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TextareaWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="datetime">
          <configuration>
            <title>Datetime</title>
            <description>
              <p>
                The datetime widget displays a javascript calendar in create or edit
                mode, with additional message tag for errors, and a regular text
                output in any other mode. It uses a date time converter.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;nxu:inputDatetime /&gt; tag in create or edit mode, and
                properties accepted on a &lt;h:outputText /&gt; tag in other modes.
                The converter will also be given these properties.
              </p>
            </description>
            <demo id="datetimeWidget" previewEnabled="true"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>date</type>
              </supportedTypes>
              <defaultTypes>
                <type>date</type>
              </defaultTypes>
            </fields>
            <properties>
              <layouts mode="view">
                <layout name="datetime_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>pattern</widget>
                    </row>
                    <row>
                      <widget>timeZone</widget>
                    </row>
                  </rows>
                  <widget name="pattern" type="text">
                    <labels>
                      <label mode="any">Pattern</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        String pattern for the date and time, as described by the
                        java.text.SimpleDateFormat class, and as used in the
                        standard DateTimeConverter. Default value is "dd/MM/yyyy
                        HH:mm". Sample value: "#{nxu:basicDateFormater()}" or
                        "#{nxu:basicDateAndTimeFormater()}".
                      </label>
                    </helpLabels>
                    <fields>
                      <field>pattern</field>
                    </fields>
                  </widget>
                  <widget name="timeZone" type="text">
                    <labels>
                      <label mode="any">Time zone</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        String timeZone ID. The server time zone is used if not set.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>timeZone</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="datetime_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>format</widget>
                    </row>
                    <row>
                      <widget>showsTime</widget>
                    </row>
                    <row>
                      <widget>locale</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>timeZone</widget>
                    </row>
                    <row>
                      <widget>triggerImg</widget>
                    </row>
                    <row>
                      <widget>triggerLabel</widget>
                    </row>
                    <row>
                      <widget>triggerStyleClass</widget>
                    </row>
                  </rows>
                  <widget name="format" type="text">
                    <labels>
                      <label mode="any">Format</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        String format for the date and time, as described by the
                        java.text.SimpleDateFormat class, and as used in the
                        standard DateTimeConverter. Default value is "dd/MM/yyyy
                        HH:mm". Sample value: "#{nxu:basicDateFormater()}" or
                        "#{nxu:basicDateAndTimeFormater()}".
                      </label>
                    </helpLabels>
                    <fields>
                      <field>format</field>
                    </fields>
                  </widget>
                  <widget name="locale" type="selectOneListbox">
                    <labels>
                      <label mode="any">Locale</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        String representing the locale to use for the calendar.
                        Current locale is used if not set.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>locale</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="" itemValue=""/>
                      <option itemLabel="Catalan" itemValue="ca"/>
                      <option itemLabel="Chinese" itemValue="cn"/>
                      <option itemLabel="Czech" itemValue="cz"/>
                      <option itemLabel="Deutsch" itemValue="de"/>
                      <option itemLabel="English" itemValue="en"/>
                      <option itemLabel="Spanish" itemValue="es"/>
                      <option itemLabel="French" itemValue="fr"/>
                      <option itemLabel="Italiano" itemValue="it"/>
                      <option itemLabel="Japanese" itemValue="jp"/>
                      <option itemLabel="Nederlands" itemValue="nl"/>
                      <option itemLabel="Polish" itemValue="pl"/>
                      <option itemLabel="Portuguese" itemValue="pt"/>
                      <option itemLabel="Romanian" itemValue="ro"/>
                      <option itemLabel="Russian" itemValue="ru"/>
                      <option itemLabel="svenska" itemValue="sv"/>
                    </selectOptions>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="showsTime" type="checkbox">
                    <labels>
                      <label mode="any">Shows time</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Flag indicating that the calendar must show a time choice.
                        Since 5.4.2, this property is ignored and time is shown
                        depending on the date format.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>showsTime</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="timeZone" type="text">
                    <labels>
                      <label mode="any">Time zone</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        String timeZone ID. The server time zone is used if not set.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>timeZone</field>
                    </fields>
                  </widget>
                  <widget name="triggerImg" type="text">
                    <labels>
                      <label mode="any">Trigger image</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Image path to use for the trigger. Available since 5.4.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>triggerImg</field>
                    </fields>
                  </widget>
                  <widget name="triggerLabel" type="text">
                    <labels>
                      <label mode="any">Trigger label</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Label to display on the trigger image. Defaults to "...".
                      </label>
                    </helpLabels>
                    <fields>
                      <field>triggerLabel</field>
                    </fields>
                  </widget>
                  <widget name="triggerStyleClass" type="text">
                    <labels>
                      <label mode="any">Trigger style class</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Style class to set on the trigger button tag, defaults to
                        'calendarTrigger'.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>triggerStyleClass</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.DateTimeWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="template">
          <configuration>
            <title>Template</title>
            <description>
              <p>
                The template widget displays a template content whatever the mode.
              </p>
              <p>
                Widgets using this type must provide the path to this template ;
                this template can check the mode to adapt the rendering.
              </p>
              <p>
                Note that the same handler class can be used to define a new widget
                type using a designated template, by registering it as is:
              </p>
              <p>
                &lt;widgetType name="template"&gt; &lt;handler-class&gt;
                org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
                &lt;/handler-class&gt; &lt;property name="template"&gt;
                /widgets/my_custom_widget_template.xhtml &lt;/property&gt;
                &lt;/widgetType&gt;
              </p>
            </description>
            <demo id="templateWidget" previewEnabled="false"/>
            <categories>
              <category>dev</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <layouts mode="any">
                <layout name="template_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>template</widget>
                    </row>
                  </rows>
                  <widget name="template" type="selectOneResource">
                    <labels>
                      <label mode="any">Template</label>
                    </labels>
                    <fields>
                      <field>template</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">xhtml_templates</property>
                    </properties>
                    <properties widgetMode="any">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="file">
          <configuration>
            <title>File</title>
            <description>
              <p>
                The file widget displays a file uploader/editor in create or edit
                mode, with additional message tag for errors, and a link to the file
                in other modes.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;nxu:inputFile /&gt; tag in create or edit mode, and properties
                accepted on a &lt;nxu:outputFile /&gt; tag in other modes.
              </p>
            </description>
            <demo id="fileWidget" previewEnabled="true"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>blob</type>
              </supportedTypes>
              <defaultTypes>
                <type>blob</type>
              </defaultTypes>
            </fields>
            <properties>
              <layouts mode="view">
                <layout name="file_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>downloadLabel</widget>
                    </row>
                    <row>
                      <widget>iconRendered</widget>
                    </row>
                  </rows>
                  <widget name="downloadLabel" type="text">
                    <labels>
                      <label mode="any">Download label</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Value binding that will be used as the download link value,
                        and will attempt to be translated.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>downloadLabel</field>
                    </fields>
                  </widget>
                  <widget name="iconRendered" type="checkbox">
                    <labels>
                      <label mode="any">Icon rendered</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Boolean flag indicating whether or not the file icon should
                        be rendered. Defaults to true.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>iconRendered</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="file_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>downloadLabel</widget>
                    </row>
                    <row>
                      <widget>iconRendered</widget>
                    </row>
                  </rows>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="downloadLabel" type="text">
                    <labels>
                      <label mode="any">Download label</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Value binding that will be used as the download link value,
                        and will attempt to be translated.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>downloadLabel</field>
                    </fields>
                  </widget>
                  <widget name="iconRendered" type="checkbox">
                    <labels>
                      <label mode="any">Icon rendered</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Boolean flag indicating whether or not the file icon should
                        be rendered. Defaults to true.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>iconRendered</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.FileWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="htmltext">
          <configuration>
            <title>HTML text</title>
            <description>
              <p>
                The htmltext widget displays an html text editor in create or edit
                mode, with additional message tag for errors, and a regular text
                output in other modes (without escaping the text).
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;nxu:editor /&gt; tag in create or edit mode, and properties
                accepted on a &lt;nxu:outputText /&gt; tag in other modes.
              </p>
            </description>
            <demo id="htmltextWidget" previewEnabled="true"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <layouts mode="view">
                <layout name="htmltext_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="htmltext_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>width</widget>
                    </row>
                    <row>
                      <widget>height</widget>
                    </row>
                    <row>
                      <widget>disableHtmlInit</widget>
                    </row>
                    <row>
                      <widget>editorSelector</widget>
                    </row>
                  </rows>
                  <widget name="disableHtmlInit" type="checkbox">
                    <labels>
                      <label mode="any">Disable HTML init</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, the default display will be the text display
                        (not html editor). Available since 5.3.1.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>disableHtmlInit</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="width" type="int">
                    <labels>
                      <label mode="any">Width</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The textarea width. Defaults to "640".
                      </label>
                    </helpLabels>
                    <fields>
                      <field>width</field>
                    </fields>
                  </widget>
                  <widget name="height" type="int">
                    <labels>
                      <label mode="any">Height</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The textarea height. Defaults to "400".
                      </label>
                    </helpLabels>
                    <fields>
                      <field>height</field>
                    </fields>
                  </widget>
                  <widget name="editorSelector" type="text">
                    <labels>
                      <label mode="any">Editor selector</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The class to use to identify text areas to turn into html
                        editors. Defaults to "mceEditor". See the editor_selector
                        option in tiny_mce
                        (http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/editor_selector).
                      </label>
                    </helpLabels>
                    <fields>
                      <field>editorSelector</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.HtmlTextWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="selectOneDirectory">
          <configuration>
            <title>Vocabulary</title>
            <description>
              <p>
                The selectOneDirectory widget displays a selection of vocabulary
                entries in create or edit mode, with additional message tag for
                errors, and the directory entry label in other modes.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;nxd:selectOneListbox /&gt; tag in create or edit mode, and
                properties accepted on a &lt;nxd:directoryEntryOutput /&gt; tag in
                other modes.
              </p>
            </description>
            <demo id="selectOneDirectoryWidget" previewEnabled="true"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <layouts mode="any">
                <layout name="selectOneDirectory_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>directoryName</widget>
                    </row>
                    <row>
                      <widget>directoryNameDemoPreview</widget>
                    </row>
                  </rows>
                  <widget name="directoryName" type="selectOneResource">
                    <labels>
                      <label mode="any">Vocabulary</label>
                    </labels>
                    <fields>
                      <field>directoryName</field>
                    </fields>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                    <properties mode="any">
                      <property name="resourceName">vocabularies</property>
                    </properties>
                    <properties widgetMode="any">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="directoryNameDemoPreview" type="text">
                    <labels>
                      <label mode="any">Vocabulary</label>
                    </labels>
                    <fields>
                      <field>directoryName</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="edit_demo_preview">view</mode>
                    </widgetModes>
                    <properties widgetMode="any">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="view">
                <layout name="selectOneDirectory_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>localize</widget>
                    </row>
                    <row>
                      <widget>displayIdAndLabel</widget>
                    </row>
                  </rows>
                  <widget name="localize" type="checkbox">
                    <labels>
                      <label mode="any">Localize</label>
                    </labels>
                    <fields>
                      <field>localize</field>
                    </fields>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                  </widget>
                  <widget name="displayIdAndLabel" type="checkbox">
                    <labels>
                      <label mode="any">Display id and label</label>
                    </labels>
                    <fields>
                      <field>displayIdAndLabel</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="selectOneDirectory_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>localize</widget>
                    </row>
                    <row>
                      <widget>displayIdAndLabel</widget>
                    </row>
                    <row>
                      <widget>displayObsoleteEntries</widget>
                    </row>
                    <row>
                      <widget>notDisplayDefaultOption</widget>
                    </row>
                    <row>
                      <widget>ordering</widget>
                    </row>
                    <row>
                      <widget>cssStyle</widget>
                    </row>
                    <row>
                      <widget>cssStyleClass</widget>
                    </row>
                  </rows>
                  <widget name="directoryName" type="selectOneResource">
                    <labels>
                      <label mode="any">Vocabulary</label>
                    </labels>
                    <fields>
                      <field>directoryName</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">vocabularies</property>
                    </properties>
                    <properties widgetMode="any">
                      <property name="required">true</property>
                    </properties>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                  </widget>
                  <widget name="localize" type="checkbox">
                    <labels>
                      <label mode="any">Localize</label>
                    </labels>
                    <fields>
                      <field>localize</field>
                    </fields>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                  </widget>
                  <widget name="displayIdAndLabel" type="checkbox">
                    <labels>
                      <label mode="any">Display id and label</label>
                    </labels>
                    <fields>
                      <field>displayIdAndLabel</field>
                    </fields>
                  </widget>
                  <widget name="cssStyle" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>cssStyle</field>
                    </fields>
                  </widget>
                  <widget name="cssStyleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>cssStyleClass</field>
                    </fields>
                  </widget>
                  <widget name="displayObsoleteEntries" type="checkbox">
                    <labels>
                      <label mode="any">Display obsolete entries</label>
                    </labels>
                    <fields>
                      <field>displayObsoleteEntries</field>
                    </fields>
                  </widget>
                  <widget name="notDisplayDefaultOption" type="checkbox">
                    <labels>
                      <label mode="any">Do not display the default option</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        True if there should not be displayed a "Please select a
                        value" option
                      </label>
                    </helpLabels>
                    <fields>
                      <field>notDisplayDefaultOption</field>
                    </fields>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="ordering" type="selectOneListbox">
                    <labels>
                      <label mode="any">Sort criterion</label>
                    </labels>
                    <fields>
                      <field>ordering</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="Label" itemValue="label"/>
                      <option itemLabel="Id" itemValue="id"/>
                    </selectOptions>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.DirectorySelectOneWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="selectOneListbox">
          <configuration>
            <sinceVersion>5.4.2</sinceVersion>
            <title>Select One Listbox</title>
            <description/>
            <categories>
              <!-- don't export it yet -->
              <!--
                <category>document</category>
              -->
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <!--  TODO
                <mode>view</mode>
              -->
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.SelectOneListboxWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="selectOneMenu">
          <configuration>
            <sinceVersion>5.4.2</sinceVersion>
            <title>Select One Menu</title>
            <description/>
            <categories>
              <!-- don't export it yet -->
              <!--
                <category>document</category>
              -->
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <!--  TODO
                <mode>view</mode>
              -->
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.SelectOneMenuWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="selectManyDirectory">
          <configuration>
            <title>Multiple vocabulary</title>
            <description>
              <p>
                The selectManyDirectory widget displays a multi selection of
                vocabulary entries in create or edit mode, with additional message
                tag for errors, and the directory entries labels in other modes.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a c tag
                in create or edit mode, and properties accepted on a
                &lt;nxd:directoryEntryOutput /&gt; tag in other modes.
              </p>
            </description>
            <demo id="selectManyDirectoryWidget" previewEnabled="true"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>true</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <layouts mode="any">
                <layout name="selectManyDirectory_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>directoryName</widget>
                    </row>
                    <row>
                      <widget>directoryNameDemoPreview</widget>
                    </row>
                  </rows>
                  <widget name="directoryName" type="selectOneResource">
                    <labels>
                      <label mode="any">Vocabulary</label>
                    </labels>
                    <fields>
                      <field>directoryName</field>
                    </fields>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                    <properties mode="any">
                      <property name="resourceName">vocabularies</property>
                    </properties>
                    <properties widgetMode="any">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="directoryNameDemoPreview" type="text">
                    <labels>
                      <label mode="any">Vocabulary</label>
                    </labels>
                    <fields>
                      <field>directoryName</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="edit_demo_preview">view</mode>
                    </widgetModes>
                    <properties widgetMode="any">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="view">
                <layout name="selectManyDirectory_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>localize</widget>
                    </row>
                    <row>
                      <widget>displayIdAndLabel</widget>
                    </row>
                  </rows>
                  <widget name="localize" type="checkbox">
                    <labels>
                      <label mode="any">Localize</label>
                    </labels>
                    <fields>
                      <field>localize</field>
                    </fields>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                  </widget>
                  <widget name="displayIdAndLabel" type="checkbox">
                    <labels>
                      <label mode="any">Display id and label</label>
                    </labels>
                    <fields>
                      <field>displayIdAndLabel</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="selectManyDirectory_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>localize</widget>
                    </row>
                    <row>
                      <widget>displayIdAndLabel</widget>
                    </row>
                    <row>
                      <widget>displayObsoleteEntries</widget>
                    </row>
                    <row>
                      <widget>notDisplayDefaultOption</widget>
                    </row>
                    <row>
                      <widget>ordering</widget>
                    </row>
                    <row>
                      <widget>cssStyle</widget>
                    </row>
                    <row>
                      <widget>cssStyleClass</widget>
                    </row>
                  </rows>
                  <widget name="localize" type="checkbox">
                    <labels>
                      <label mode="any">Localize</label>
                    </labels>
                    <fields>
                      <field>localize</field>
                    </fields>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                  </widget>
                  <widget name="displayIdAndLabel" type="checkbox">
                    <labels>
                      <label mode="any">Display id and label</label>
                    </labels>
                    <fields>
                      <field>displayIdAndLabel</field>
                    </fields>
                  </widget>
                  <widget name="cssStyle" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>cssStyle</field>
                    </fields>
                  </widget>
                  <widget name="cssStyleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>cssStyleClass</field>
                    </fields>
                  </widget>
                  <widget name="displayObsoleteEntries" type="checkbox">
                    <labels>
                      <label mode="any">Display obsolete entries</label>
                    </labels>
                    <fields>
                      <field>displayObsoleteEntries</field>
                    </fields>
                  </widget>
                  <widget name="notDisplayDefaultOption" type="checkbox">
                    <labels>
                      <label mode="any">Do not display the default option</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        True if there should not be displayed a "Please select a
                        value" option
                      </label>
                    </helpLabels>
                    <fields>
                      <field>notDisplayDefaultOption</field>
                    </fields>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="ordering" type="selectOneListbox">
                    <labels>
                      <label mode="any">Sort criterion</label>
                    </labels>
                    <fields>
                      <field>ordering</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="Label" itemValue="label"/>
                      <option itemLabel="Id" itemValue="id"/>
                    </selectOptions>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.DirectorySelectManyWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="list">
          <configuration>
            <title>List</title>
            <description>
              <p>
                The list widget displays an editable list of items in create or edit
                mode, with additional message tag for errors, and the same list of
                items in other modes. It is not usable within a list widget (see
                sublist widget for this feature).
              </p>
              <p>Items are defined using sub wigdets configuration.</p>
              <p>
                This is actually a template widget type whose template uses a
                &lt;nxu:inputList /&gt; tag in edit or create mode, and a table
                iterating over items in other modes.
              </p>
            </description>
            <demo id="listWidget" previewEnabled="false"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>true</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
                <type>path</type>
                <type>date</type>
                <type>blob</type>
                <type>integer</type>
                <type>double</type>
                <type>boolean</type>
              </supportedTypes>
              <defaultTypes>
                <type>string</type>
                <type>path</type>
                <type>date</type>
                <type>blob</type>
                <type>integer</type>
                <type>double</type>
                <type>boolean</type>
              </defaultTypes>
            </fields>
            <properties>
              <layouts mode="any">
                <layout name="list_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>display</widget>
                    </row>
                    <row>
                      <widget>hideSubLabels</widget>
                    </row>
                  </rows>
                  <widget name="display" type="selectOneListbox">
                    <labels>
                      <label mode="any">Display</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The display attribute controls the rendering of subwidgets,
                        either in a table, either inline. Available since 5.4.2.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>display</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="Table (default)" itemValue="table"/>
                      <option itemLabel="In line" itemValue="inline"/>
                    </selectOptions>
                  </widget>
                  <widget name="hideSubLabels" type="checkbox">
                    <labels>
                      <label mode="any">Hide subwidgets labels</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        This attribute controls the rendering of subwidgets labels.
                        Available since 5.4.2.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>hideSubLabels</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="list_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>diff</widget>
                    </row>
                    <row>
                      <widget>orderable</widget>
                    </row>
                  </rows>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="diff" type="checkbox">
                    <labels>
                      <label mode="any">Diff</label>
                    </labels>
                    <fields>
                      <field>diff</field>
                    </fields>
                  </widget>
                  <widget name="orderable" type="checkbox">
                    <labels>
                      <label mode="any">Orderable</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        This attribute controls the possibility to order the items.
                        Available since 5.4.3.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>orderable</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">/widgets/list_widget_template.xhtml</property>
        </widgetType>
  • <widgetType name="complex">
          <configuration>
            <sinceVersion>5.4.2</sinceVersion>
            <title>Complex</title>
            <description>
              <p>
                The complex widget displays its sub widgets, and is controlling of a
                map-like. Each of the map items rendering is done through sub
                widgets configuration.
              </p>
            </description>
            <demo id="complexWidget" previewEnabled="false"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>true</complex>
            </fields>
            <properties>
              <layouts mode="any">
                <layout name="complex_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>display</widget>
                    </row>
                    <row>
                      <widget>hideSubLabels</widget>
                    </row>
                  </rows>
                  <widget name="display" type="selectOneListbox">
                    <labels>
                      <label mode="any">Display</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The display attribute controls the rendering of subwidgets,
                        either in a table, either inline. Available since 5.4.2.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>display</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="Table (default)" itemValue="table"/>
                      <option itemLabel="In line" itemValue="inline"/>
                    </selectOptions>
                  </widget>
                  <widget name="hideSubLabels" type="checkbox">
                    <labels>
                      <label mode="any">Hide subwidgets labels</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        This attribute controls the rendering of subwidgets labels.
                        Available since 5.4.2.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>hideSubLabels</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/complex_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="checkbox">
          <configuration>
            <title>Checkbox</title>
            <description>
              <p>
                The checkbox widget displays a checkbox in create, edit and any
                other mode, with additional message tag for errors.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;h:selectBooleanCheckbox /&gt; tag in create, edit mode, and
                other modes.
              </p>
            </description>
            <demo id="checkboxWidget" previewEnabled="true"/>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>boolean</type>
              </supportedTypes>
              <defaultTypes>
                <type>boolean</type>
              </defaultTypes>
            </fields>
            <properties>
              <layouts mode="view">
                <layout name="checkbox_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="checkbox_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                    <row>
                      <widget>accesskey</widget>
                    </row>
                    <row>
                      <widget>dir</widget>
                    </row>
                    <row>
                      <widget>disabled</widget>
                    </row>
                    <row>
                      <widget>immediate</widget>
                    </row>
                    <row>
                      <widget>lang</widget>
                    </row>
                    <row>
                      <widget>validator</widget>
                    </row>
                    <row>
                      <widget>valueChangeListener</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="accesskey" type="text">
                    <labels>
                      <label mode="any">Access key</label>
                    </labels>
                    <fields>
                      <field>accesskey</field>
                    </fields>
                  </widget>
                  <widget name="dir" type="selectOneListbox">
                    <labels>
                      <label mode="any">Direction</label>
                    </labels>
                    <fields>
                      <field>dir</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="" itemValue=""/>
                      <option itemLabel="Left to right" itemValue="LTR"/>
                      <option itemLabel="Right to left" itemValue="RTL"/>
                    </selectOptions>
                  </widget>
                  <widget name="disabled" type="checkbox">
                    <labels>
                      <label mode="any">Disabled</label>
                    </labels>
                    <fields>
                      <field>disabled</field>
                    </fields>
                  </widget>
                  <widget name="immediate" type="checkbox">
                    <labels>
                      <label mode="any">Immediate</label>
                    </labels>
                    <fields>
                      <field>immediate</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="lang" type="text">
                    <labels>
                      <label mode="any">Lang</label>
                    </labels>
                    <fields>
                      <field>lang</field>
                    </fields>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="validator" type="text">
                    <labels>
                      <label mode="any">Validator</label>
                    </labels>
                    <fields>
                      <field>validator</field>
                    </fields>
                  </widget>
                  <widget name="valueChangeListener" type="text">
                    <labels>
                      <label mode="any">Value change listener</label>
                    </labels>
                    <fields>
                      <field>valueChangeListener</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.CheckboxWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="hidden">
          <configuration>
            <title>Hidden</title>
            <description>
              <p>
                The hidden widget is for a hidden field in create, edit and any
                other mode, with additional message tag for errors.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;h:inputHidden /&gt; tag in create, edit mode, and other modes.
              </p>
            </description>
            <!-- demo does not present it (yet?) -->
            <!--
              <demo id="hiddenWidget" previewEnabled="false"/>
            -->
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <layouts mode="view">
                <layout name="hidden_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>style</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>title</widget>
                    </row>
                  </rows>
                  <widget name="style" type="text">
                    <labels>
                      <label mode="any">Style</label>
                    </labels>
                    <fields>
                      <field>style</field>
                    </fields>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="title" type="text">
                    <labels>
                      <label mode="any">Title</label>
                    </labels>
                    <fields>
                      <field>title</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="hidden_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>immediate</widget>
                    </row>
                    <row>
                      <widget>validator</widget>
                    </row>
                    <row>
                      <widget>valueChangeListener</widget>
                    </row>
                  </rows>
                  <widget name="immediate" type="checkbox">
                    <labels>
                      <label mode="any">Immediate</label>
                    </labels>
                    <fields>
                      <field>immediate</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="validator" type="text">
                    <labels>
                      <label mode="any">Validator</label>
                    </labels>
                    <fields>
                      <field>validator</field>
                    </fields>
                  </widget>
                  <widget name="valueChangeListener" type="text">
                    <labels>
                      <label mode="any">Value change listener</label>
                    </labels>
                    <fields>
                      <field>valueChangeListener</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.HiddenWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="layout">
          <configuration>
            <sinceVersion>5.4.0</sinceVersion>
            <title>Layout</title>
            <description>
              <p>The layout widget renders a layout.</p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;nxl:layout /&gt; tag in all modes.
              </p>
            </description>
            <categories>
              <category>dev</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <layouts mode="any">
                <layout name="layout_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>name</widget>
                    </row>
                    <row>
                      <widget>mode</widget>
                    </row>
                    <row>
                      <widget>template</widget>
                    </row>
                  </rows>
                  <widget name="name" type="text">
                    <labels>
                      <label mode="any">Layout name</label>
                    </labels>
                    <fields>
                      <field>name</field>
                    </fields>
                    <properties widgetMode="any">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="mode" type="text">
                    <labels>
                      <label mode="any">Layout mode</label>
                    </labels>
                    <fields>
                      <field>mode</field>
                    </fields>
                    <properties widgetMode="any">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="template" type="selectOneResource">
                    <labels>
                      <label mode="any">Template</label>
                    </labels>
                    <fields>
                      <field>template</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">xhtml_templates</property>
                    </properties>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.LayoutWidgetTypeHandler
          </handler-class>
        </widgetType>
  • <widgetType name="richtext_with_mimetype">
          <configuration>
            <sinceVersion>5.3.1</sinceVersion>
            <title>Richtext</title>
            <description>
              <p>
                This widget displays an html text editor or a textarea in create or
                edit mode, depending on the mimetype defined.
              </p>
              <p>
                Widgets using this type can provide properties accepted on a
                &lt;nxu:editor /&gt; tag in create or edit mode.
              </p>
            </description>
            <categories>
              <!-- do not export with documents -->
              <!--
                <category>document</category>
              -->
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <layouts mode="view">
                <layout name="richtext_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget>cssClass</widget>
                    </row>
                    <row>
                      <widget>translatedHtml</widget>
                    </row>
                  </rows>
                  <widget name="cssClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <fields>
                      <field>cssClass</field>
                    </fields>
                  </widget>
                  <widget name="translatedHtml" type="text">
                    <labels>
                      <label mode="any">Translate HTML (?)</label>
                    </labels>
                    <fields>
                      <field>translatedHtml</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="richtext_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>height</widget>
                    </row>
                    <row>
                      <widget>width</widget>
                    </row>
                    <row>
                      <widget>cols</widget>
                    </row>
                    <row>
                      <widget>rows</widget>
                    </row>
                    <row>
                      <widget>editorSelector</widget>
                    </row>
                  </rows>
                  <widget name="width" type="int">
                    <labels>
                      <label mode="any">Width</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The textarea width. Defaults to "640".
                      </label>
                    </helpLabels>
                    <fields>
                      <field>width</field>
                    </fields>
                  </widget>
                  <widget name="height" type="int">
                    <labels>
                      <label mode="any">Height</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The textarea height. Defaults to "400".
                      </label>
                    </helpLabels>
                    <fields>
                      <field>height</field>
                    </fields>
                  </widget>
                  <widget name="cols" type="int">
                    <labels>
                      <label mode="any">Number of columns</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The cols attribute sets the number of columns to display.
                        Available since 5.3.1.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>cols</field>
                    </fields>
                  </widget>
                  <widget name="rows" type="int">
                    <labels>
                      <label mode="any">Number of rows</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The rows attribute sets the number of rows to display.
                        Available since 5.3.1.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>rows</field>
                    </fields>
                  </widget>
                  <widget name="editorSelector" type="text">
                    <labels>
                      <label mode="any">Editor selector</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The class to use to identify text areas to turn into html
                        editors. Defaults to "mceEditor". See the editor_selector
                        option in tiny_mce
                        (http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/editor_selector).
                      </label>
                    </helpLabels>
                    <fields>
                      <field>editorSelector</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/richtext_with_mimetype_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="duration">
          <configuration>
            <sinceVersion>5.3.2</sinceVersion>
            <title>Duration</title>
            <description>
              This widget displays a i18n formatted duration of a field holding a
              value measured in seconds (can be Long, Double or String valued). NB:
              only view mode is supported right now.
            </description>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
                <type>int</type>
                <type>double</type>
              </supportedTypes>
            </fields>
            <!-- no props -->
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/duration_widget_template.xhtml
          </property>
        </widgetType>

    This widget displays a i18n formatted duration of a field holding a value measured in seconds (can be Long, Double or String valued). NB: only view mode is supported right now.

XML Source

<extension point="widgettypes" target="org.nuxeo.ecm.platform.forms.layout.WebLayoutManager">

    <widgetType name="text">
      <configuration>
        <title>Text</title>
        <description>
          <p>
            The text widget displays an input text in create or edit mode, with
            additional message tag for errors, and a regular text output in any
            other mode.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;h:inputText /&gt; tag in create or edit mode, and properties
            accepted on a &lt;h:outputText /&gt; tag in other modes.
          </p>
        </description>
        <demo id="textWidget" previewEnabled="true"/>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
            <type>path</type>
          </supportedTypes>
          <defaultTypes>
            <type>string</type>
          </defaultTypes>
        </fields>
        <categories>
          <category>document</category>
        </categories>
        <properties>
          <layouts mode="view">
            <layout name="text_widget_type_properties_view">
              <rows>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
                <row>
                  <widget>escape</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="escape" type="checkbox">
                <labels>
                  <label mode="any">Escape</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to false, the held value will not be escaped. For
                    instance if it contains HTML tags, they will be rendered as
                    part of the rendered HTML page instead of being rendered as
                    text content. Defaults to true.
                  </label>
                </helpLabels>
                <fields>
                  <field>escape</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="text_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>maxlength</widget>
                </row>
                <row>
                  <widget>size</widget>
                </row>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
                <row>
                  <widget>accesskey</widget>
                </row>
                <row>
                  <widget>alt</widget>
                </row>
                <row>
                  <widget>dir</widget>
                </row>
                <row>
                  <widget>disabled</widget>
                </row>
                <row>
                  <widget>immediate</widget>
                </row>
                <row>
                  <widget>lang</widget>
                </row>
                <row>
                  <widget>validator</widget>
                </row>
                <row>
                  <widget>valueChangeListener</widget>
                </row>
              </rows>
              <widget name="accesskey" type="text">
                <labels>
                  <label mode="any">Access key</label>
                </labels>
                <fields>
                  <field>accesskey</field>
                </fields>
              </widget>
              <widget name="alt" type="text">
                <labels>
                  <label mode="any">Alt</label>
                </labels>
                <fields>
                  <field>alt</field>
                </fields>
              </widget>
              <widget name="dir" type="selectOneListbox">
                <labels>
                  <label mode="any">Direction</label>
                </labels>
                <fields>
                  <field>dir</field>
                </fields>
                <selectOptions>
                  <option itemLabel="" itemValue=""/>
                  <option itemLabel="Left to right" itemValue="LTR"/>
                  <option itemLabel="Right to left" itemValue="RTL"/>
                </selectOptions>
              </widget>
              <widget name="disabled" type="checkbox">
                <labels>
                  <label mode="any">Disabled</label>
                </labels>
                <fields>
                  <field>disabled</field>
                </fields>
              </widget>
              <widget name="immediate" type="checkbox">
                <labels>
                  <label mode="any">Immediate</label>
                </labels>
                <fields>
                  <field>immediate</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="lang" type="text">
                <labels>
                  <label mode="any">Lang</label>
                </labels>
                <fields>
                  <field>lang</field>
                </fields>
              </widget>
              <widget name="maxlength" type="int">
                <labels>
                  <label mode="any">Max length</label>
                </labels>
                <fields>
                  <field>maxlength</field>
                </fields>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="size" type="int">
                <labels>
                  <label mode="any">Size</label>
                </labels>
                <fields>
                  <field>size</field>
                </fields>
              </widget>
              <widget name="validator" type="text">
                <labels>
                  <label mode="any">Validator</label>
                </labels>
                <fields>
                  <field>validator</field>
                </fields>
              </widget>
              <widget name="valueChangeListener" type="text">
                <labels>
                  <label mode="any">Value change listener</label>
                </labels>
                <fields>
                  <field>valueChangeListener</field>
                </fields>
              </widget>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TextWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="int">
      <configuration>
        <title>Integer</title>
        <description>
          <p>
            The int widget displays an input text in create or edit mode, with
            additional message tag for errors, and a regular text output in any
            other mode. It uses a number converter.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;h:inputText /&gt; tag in create or edit mode, and properties
            accepted on a &lt;h:outputText /&gt; tag in other modes.
          </p>
        </description>
        <demo id="intWidget" previewEnabled="true"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>integer</type>
          </supportedTypes>
          <defaultTypes>
            <type>integer</type>
          </defaultTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="int_widget_type_properties_view">
              <rows>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="int_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>maxlength</widget>
                </row>
                <row>
                  <widget>size</widget>
                </row>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
                <row>
                  <widget>accesskey</widget>
                </row>
                <row>
                  <widget>alt</widget>
                </row>
                <row>
                  <widget>dir</widget>
                </row>
                <row>
                  <widget>disabled</widget>
                </row>
                <row>
                  <widget>immediate</widget>
                </row>
                <row>
                  <widget>lang</widget>
                </row>
                <row>
                  <widget>validator</widget>
                </row>
                <row>
                  <widget>valueChangeListener</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="accesskey" type="text">
                <labels>
                  <label mode="any">Access key</label>
                </labels>
                <fields>
                  <field>accesskey</field>
                </fields>
              </widget>
              <widget name="alt" type="text">
                <labels>
                  <label mode="any">Alt</label>
                </labels>
                <fields>
                  <field>alt</field>
                </fields>
              </widget>
              <widget name="dir" type="selectOneListbox">
                <labels>
                  <label mode="any">Direction</label>
                </labels>
                <fields>
                  <field>dir</field>
                </fields>
                <selectOptions>
                  <option itemLabel="" itemValue=""/>
                  <option itemLabel="Left to right" itemValue="LTR"/>
                  <option itemLabel="Right to left" itemValue="RTL"/>
                </selectOptions>
              </widget>
              <widget name="disabled" type="checkbox">
                <labels>
                  <label mode="any">Disabled</label>
                </labels>
                <fields>
                  <field>disabled</field>
                </fields>
              </widget>
              <widget name="immediate" type="checkbox">
                <labels>
                  <label mode="any">Immediate</label>
                </labels>
                <fields>
                  <field>immediate</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="lang" type="text">
                <labels>
                  <label mode="any">Lang</label>
                </labels>
                <fields>
                  <field>lang</field>
                </fields>
              </widget>
              <widget name="maxlength" type="int">
                <labels>
                  <label mode="any">Max length</label>
                </labels>
                <fields>
                  <field>maxlength</field>
                </fields>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="size" type="int">
                <labels>
                  <label mode="any">Size</label>
                </labels>
                <fields>
                  <field>size</field>
                </fields>
              </widget>
              <widget name="validator" type="text">
                <labels>
                  <label mode="any">Validator</label>
                </labels>
                <fields>
                  <field>validator</field>
                </fields>
              </widget>
              <widget name="valueChangeListener" type="text">
                <labels>
                  <label mode="any">Value change listener</label>
                </labels>
                <fields>
                  <field>valueChangeListener</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.IntWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="double">
      <configuration>
        <title>Decimal number</title>
        <sinceVersion>5.4.2</sinceVersion>
        <description>
          <p>
            The double widget displays an input text in create or edit mode,
            with additional message tag for errors, and a regular text output in
            any other mode. It uses a double converter.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;h:inputText /&gt; tag in create or edit mode, and properties
            accepted on a &lt;h:outputText /&gt; tag in other modes.
          </p>
        </description>
        <!--<demo id="doubleWidget" />-->
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>double</type>
          </supportedTypes>
          <defaultTypes>
            <type>double</type>
          </defaultTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="double_widget_type_properties_view">
              <rows>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="double_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>maxlength</widget>
                </row>
                <row>
                  <widget>size</widget>
                </row>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
                <row>
                  <widget>accesskey</widget>
                </row>
                <row>
                  <widget>alt</widget>
                </row>
                <row>
                  <widget>dir</widget>
                </row>
                <row>
                  <widget>disabled</widget>
                </row>
                <row>
                  <widget>immediate</widget>
                </row>
                <row>
                  <widget>lang</widget>
                </row>
                <row>
                  <widget>validator</widget>
                </row>
                <row>
                  <widget>valueChangeListener</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="accesskey" type="text">
                <labels>
                  <label mode="any">Access key</label>
                </labels>
                <fields>
                  <field>accesskey</field>
                </fields>
              </widget>
              <widget name="alt" type="text">
                <labels>
                  <label mode="any">Alt</label>
                </labels>
                <fields>
                  <field>alt</field>
                </fields>
              </widget>
              <widget name="dir" type="selectOneListbox">
                <labels>
                  <label mode="any">Direction</label>
                </labels>
                <fields>
                  <field>dir</field>
                </fields>
                <selectOptions>
                  <option itemLabel="" itemValue=""/>
                  <option itemLabel="Left to right" itemValue="LTR"/>
                  <option itemLabel="Right to left" itemValue="RTL"/>
                </selectOptions>
              </widget>
              <widget name="disabled" type="checkbox">
                <labels>
                  <label mode="any">Disabled</label>
                </labels>
                <fields>
                  <field>disabled</field>
                </fields>
              </widget>
              <widget name="immediate" type="checkbox">
                <labels>
                  <label mode="any">Immediate</label>
                </labels>
                <fields>
                  <field>immediate</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="lang" type="text">
                <labels>
                  <label mode="any">Lang</label>
                </labels>
                <fields>
                  <field>lang</field>
                </fields>
              </widget>
              <widget name="maxlength" type="int">
                <labels>
                  <label mode="any">Max length</label>
                </labels>
                <fields>
                  <field>maxlength</field>
                </fields>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="size" type="int">
                <labels>
                  <label mode="any">Size</label>
                </labels>
                <fields>
                  <field>size</field>
                </fields>
              </widget>
              <widget name="validator" type="text">
                <labels>
                  <label mode="any">Validator</label>
                </labels>
                <fields>
                  <field>validator</field>
                </fields>
              </widget>
              <widget name="valueChangeListener" type="text">
                <labels>
                  <label mode="any">Value change listener</label>
                </labels>
                <fields>
                  <field>valueChangeListener</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.DoubleWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="secret">
      <configuration>
        <title>Secret</title>
        <description>
          <p>
            The secret widget displays an input secret text in create or edit
            mode, with additional message tag for errors, and nothing in any
            other mode.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;h:inputSecret /&gt; tag in create or edit mode.
          </p>
        </description>
        <demo id="secretWidget" previewEnabled="true"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <layouts mode="edit">
            <layout name="secret_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>maxlength</widget>
                </row>
                <row>
                  <widget>size</widget>
                </row>
                <row>
                  <widget>accesskey</widget>
                </row>
                <row>
                  <widget>alt</widget>
                </row>
                <row>
                  <widget>dir</widget>
                </row>
                <row>
                  <widget>disabled</widget>
                </row>
                <row>
                  <widget>immediate</widget>
                </row>
                <row>
                  <widget>lang</widget>
                </row>
                <row>
                  <widget>redisplay</widget>
                </row>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
                <row>
                  <widget>validator</widget>
                </row>
                <row>
                  <widget>valueChangeListener</widget>
                </row>
              </rows>
              <widget name="accesskey" type="text">
                <labels>
                  <label mode="any">Access key</label>
                </labels>
                <fields>
                  <field>accesskey</field>
                </fields>
              </widget>
              <widget name="alt" type="text">
                <labels>
                  <label mode="any">Alt</label>
                </labels>
                <fields>
                  <field>alt</field>
                </fields>
              </widget>
              <widget name="dir" type="selectOneListbox">
                <labels>
                  <label mode="any">Direction</label>
                </labels>
                <fields>
                  <field>dir</field>
                </fields>
                <selectOptions>
                  <option itemLabel="" itemValue=""/>
                  <option itemLabel="Left to right" itemValue="LTR"/>
                  <option itemLabel="Right to left" itemValue="RTL"/>
                </selectOptions>
              </widget>
              <widget name="disabled" type="checkbox">
                <labels>
                  <label mode="any">Disabled</label>
                </labels>
                <fields>
                  <field>disabled</field>
                </fields>
              </widget>
              <widget name="immediate" type="checkbox">
                <labels>
                  <label mode="any">Immediate</label>
                </labels>
                <fields>
                  <field>immediate</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="lang" type="text">
                <labels>
                  <label mode="any">Lang</label>
                </labels>
                <fields>
                  <field>lang</field>
                </fields>
              </widget>
              <widget name="maxlength" type="int">
                <labels>
                  <label mode="any">Max length</label>
                </labels>
                <fields>
                  <field>maxlength</field>
                </fields>
              </widget>
              <widget name="redisplay" type="checkbox">
                <labels>
                  <label mode="any">Redisplay</label>
                </labels>
                <fields>
                  <field>redisplay</field>
                </fields>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="size" type="int">
                <labels>
                  <label mode="any">Size</label>
                </labels>
                <fields>
                  <field>size</field>
                </fields>
              </widget>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="validator" type="text">
                <labels>
                  <label mode="any">Validator</label>
                </labels>
                <fields>
                  <field>validator</field>
                </fields>
              </widget>
              <widget name="valueChangeListener" type="text">
                <labels>
                  <label mode="any">Value change listener</label>
                </labels>
                <fields>
                  <field>valueChangeListener</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.SecretWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="textarea">
      <configuration>
        <title>Textarea</title>
        <description>
          <p>
            The textarea widget displays a textarea in create or edit mode, with
            additional message tag for errors, and a regular text output in any
            other mode.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;h:inputTextarea /&gt; tag in create or edit mode, and properties
            accepted on a &lt;h:outputText /&gt; tag in other modes.
          </p>
        </description>
        <demo id="textareaWidget" previewEnabled="true"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="textarea_widget_type_properties_view">
              <rows>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
                <row>
                  <widget>escape</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="escape" type="checkbox">
                <labels>
                  <label mode="any">Escape</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to false, the held value will not be escaped. For
                    instance if it contains HTML tags, they will be rendered as
                    part of the rendered HTML page instead of being rendered as
                    text content. Defaults to true.
                  </label>
                </helpLabels>
                <fields>
                  <field>escape</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="textarea_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>cols</widget>
                </row>
                <row>
                  <widget>rows</widget>
                </row>
                <row>
                  <widget>maxlength</widget>
                </row>
                <row>
                  <widget>accesskey</widget>
                </row>
                <row>
                  <widget>dir</widget>
                </row>
                <row>
                  <widget>disabled</widget>
                </row>
                <row>
                  <widget>immediate</widget>
                </row>
                <row>
                  <widget>lang</widget>
                </row>
                <row>
                  <widget>validator</widget>
                </row>
                <row>
                  <widget>valueChangeListener</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="accesskey" type="text">
                <labels>
                  <label mode="any">Access key</label>
                </labels>
                <fields>
                  <field>accesskey</field>
                </fields>
              </widget>
              <widget name="cols" type="int">
                <labels>
                  <label mode="any">Number of columns</label>
                </labels>
                <fields>
                  <field>cols</field>
                </fields>
              </widget>
              <widget name="rows" type="int">
                <labels>
                  <label mode="any">Number of rows</label>
                </labels>
                <fields>
                  <field>rows</field>
                </fields>
              </widget>
              <widget name="dir" type="selectOneListbox">
                <labels>
                  <label mode="any">Direction</label>
                </labels>
                <fields>
                  <field>dir</field>
                </fields>
                <selectOptions>
                  <option itemLabel="" itemValue=""/>
                  <option itemLabel="Left to right" itemValue="LTR"/>
                  <option itemLabel="Right to left" itemValue="RTL"/>
                </selectOptions>
              </widget>
              <widget name="disabled" type="checkbox">
                <labels>
                  <label mode="any">Disabled</label>
                </labels>
                <fields>
                  <field>disabled</field>
                </fields>
              </widget>
              <widget name="immediate" type="checkbox">
                <labels>
                  <label mode="any">Immediate</label>
                </labels>
                <fields>
                  <field>immediate</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="lang" type="text">
                <labels>
                  <label mode="any">Lang</label>
                </labels>
                <fields>
                  <field>lang</field>
                </fields>
              </widget>
              <widget name="maxlength" type="int">
                <labels>
                  <label mode="any">Max length</label>
                </labels>
                <fields>
                  <field>maxlength</field>
                </fields>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="validator" type="text">
                <labels>
                  <label mode="any">Validator</label>
                </labels>
                <fields>
                  <field>validator</field>
                </fields>
              </widget>
              <widget name="valueChangeListener" type="text">
                <labels>
                  <label mode="any">Value change listener</label>
                </labels>
                <fields>
                  <field>valueChangeListener</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TextareaWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="datetime">
      <configuration>
        <title>Datetime</title>
        <description>
          <p>
            The datetime widget displays a javascript calendar in create or edit
            mode, with additional message tag for errors, and a regular text
            output in any other mode. It uses a date time converter.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;nxu:inputDatetime /&gt; tag in create or edit mode, and
            properties accepted on a &lt;h:outputText /&gt; tag in other modes.
            The converter will also be given these properties.
          </p>
        </description>
        <demo id="datetimeWidget" previewEnabled="true"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>date</type>
          </supportedTypes>
          <defaultTypes>
            <type>date</type>
          </defaultTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="datetime_widget_type_properties_view">
              <rows>
                <row>
                  <widget>pattern</widget>
                </row>
                <row>
                  <widget>timeZone</widget>
                </row>
              </rows>
              <widget name="pattern" type="text">
                <labels>
                  <label mode="any">Pattern</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    String pattern for the date and time, as described by the
                    java.text.SimpleDateFormat class, and as used in the
                    standard DateTimeConverter. Default value is "dd/MM/yyyy
                    HH:mm". Sample value: "#{nxu:basicDateFormater()}" or
                    "#{nxu:basicDateAndTimeFormater()}".
                  </label>
                </helpLabels>
                <fields>
                  <field>pattern</field>
                </fields>
              </widget>
              <widget name="timeZone" type="text">
                <labels>
                  <label mode="any">Time zone</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    String timeZone ID. The server time zone is used if not set.
                  </label>
                </helpLabels>
                <fields>
                  <field>timeZone</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="datetime_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>format</widget>
                </row>
                <row>
                  <widget>showsTime</widget>
                </row>
                <row>
                  <widget>locale</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>timeZone</widget>
                </row>
                <row>
                  <widget>triggerImg</widget>
                </row>
                <row>
                  <widget>triggerLabel</widget>
                </row>
                <row>
                  <widget>triggerStyleClass</widget>
                </row>
              </rows>
              <widget name="format" type="text">
                <labels>
                  <label mode="any">Format</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    String format for the date and time, as described by the
                    java.text.SimpleDateFormat class, and as used in the
                    standard DateTimeConverter. Default value is "dd/MM/yyyy
                    HH:mm". Sample value: "#{nxu:basicDateFormater()}" or
                    "#{nxu:basicDateAndTimeFormater()}".
                  </label>
                </helpLabels>
                <fields>
                  <field>format</field>
                </fields>
              </widget>
              <widget name="locale" type="selectOneListbox">
                <labels>
                  <label mode="any">Locale</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    String representing the locale to use for the calendar.
                    Current locale is used if not set.
                  </label>
                </helpLabels>
                <fields>
                  <field>locale</field>
                </fields>
                <selectOptions>
                  <option itemLabel="" itemValue=""/>
                  <option itemLabel="Catalan" itemValue="ca"/>
                  <option itemLabel="Chinese" itemValue="cn"/>
                  <option itemLabel="Czech" itemValue="cz"/>
                  <option itemLabel="Deutsch" itemValue="de"/>
                  <option itemLabel="English" itemValue="en"/>
                  <option itemLabel="Spanish" itemValue="es"/>
                  <option itemLabel="French" itemValue="fr"/>
                  <option itemLabel="Italiano" itemValue="it"/>
                  <option itemLabel="Japanese" itemValue="jp"/>
                  <option itemLabel="Nederlands" itemValue="nl"/>
                  <option itemLabel="Polish" itemValue="pl"/>
                  <option itemLabel="Portuguese" itemValue="pt"/>
                  <option itemLabel="Romanian" itemValue="ro"/>
                  <option itemLabel="Russian" itemValue="ru"/>
                  <option itemLabel="svenska" itemValue="sv"/>
                </selectOptions>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="showsTime" type="checkbox">
                <labels>
                  <label mode="any">Shows time</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Flag indicating that the calendar must show a time choice.
                    Since 5.4.2, this property is ignored and time is shown
                    depending on the date format.
                  </label>
                </helpLabels>
                <fields>
                  <field>showsTime</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="timeZone" type="text">
                <labels>
                  <label mode="any">Time zone</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    String timeZone ID. The server time zone is used if not set.
                  </label>
                </helpLabels>
                <fields>
                  <field>timeZone</field>
                </fields>
              </widget>
              <widget name="triggerImg" type="text">
                <labels>
                  <label mode="any">Trigger image</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Image path to use for the trigger. Available since 5.4.
                  </label>
                </helpLabels>
                <fields>
                  <field>triggerImg</field>
                </fields>
              </widget>
              <widget name="triggerLabel" type="text">
                <labels>
                  <label mode="any">Trigger label</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Label to display on the trigger image. Defaults to "...".
                  </label>
                </helpLabels>
                <fields>
                  <field>triggerLabel</field>
                </fields>
              </widget>
              <widget name="triggerStyleClass" type="text">
                <labels>
                  <label mode="any">Trigger style class</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Style class to set on the trigger button tag, defaults to
                    'calendarTrigger'.
                  </label>
                </helpLabels>
                <fields>
                  <field>triggerStyleClass</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.DateTimeWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="template">
      <configuration>
        <title>Template</title>
        <description>
          <p>
            The template widget displays a template content whatever the mode.
          </p>
          <p>
            Widgets using this type must provide the path to this template ;
            this template can check the mode to adapt the rendering.
          </p>
          <p>
            Note that the same handler class can be used to define a new widget
            type using a designated template, by registering it as is:
          </p>
          <p>
            &lt;widgetType name="template"&gt; &lt;handler-class&gt;
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
            &lt;/handler-class&gt; &lt;property name="template"&gt;
            /widgets/my_custom_widget_template.xhtml &lt;/property&gt;
            &lt;/widgetType&gt;
          </p>
        </description>
        <demo id="templateWidget" previewEnabled="false"/>
        <categories>
          <category>dev</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <layouts mode="any">
            <layout name="template_widget_type_properties_any">
              <rows>
                <row>
                  <widget>template</widget>
                </row>
              </rows>
              <widget name="template" type="selectOneResource">
                <labels>
                  <label mode="any">Template</label>
                </labels>
                <fields>
                  <field>template</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">xhtml_templates</property>
                </properties>
                <properties widgetMode="any">
                  <property name="required">true</property>
                </properties>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="file">
      <configuration>
        <title>File</title>
        <description>
          <p>
            The file widget displays a file uploader/editor in create or edit
            mode, with additional message tag for errors, and a link to the file
            in other modes.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;nxu:inputFile /&gt; tag in create or edit mode, and properties
            accepted on a &lt;nxu:outputFile /&gt; tag in other modes.
          </p>
        </description>
        <demo id="fileWidget" previewEnabled="true"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>blob</type>
          </supportedTypes>
          <defaultTypes>
            <type>blob</type>
          </defaultTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="file_widget_type_properties_view">
              <rows>
                <row>
                  <widget>downloadLabel</widget>
                </row>
                <row>
                  <widget>iconRendered</widget>
                </row>
              </rows>
              <widget name="downloadLabel" type="text">
                <labels>
                  <label mode="any">Download label</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Value binding that will be used as the download link value,
                    and will attempt to be translated.
                  </label>
                </helpLabels>
                <fields>
                  <field>downloadLabel</field>
                </fields>
              </widget>
              <widget name="iconRendered" type="checkbox">
                <labels>
                  <label mode="any">Icon rendered</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Boolean flag indicating whether or not the file icon should
                    be rendered. Defaults to true.
                  </label>
                </helpLabels>
                <fields>
                  <field>iconRendered</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="file_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>downloadLabel</widget>
                </row>
                <row>
                  <widget>iconRendered</widget>
                </row>
              </rows>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="downloadLabel" type="text">
                <labels>
                  <label mode="any">Download label</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Value binding that will be used as the download link value,
                    and will attempt to be translated.
                  </label>
                </helpLabels>
                <fields>
                  <field>downloadLabel</field>
                </fields>
              </widget>
              <widget name="iconRendered" type="checkbox">
                <labels>
                  <label mode="any">Icon rendered</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Boolean flag indicating whether or not the file icon should
                    be rendered. Defaults to true.
                  </label>
                </helpLabels>
                <fields>
                  <field>iconRendered</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.FileWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="htmltext">
      <configuration>
        <title>HTML text</title>
        <description>
          <p>
            The htmltext widget displays an html text editor in create or edit
            mode, with additional message tag for errors, and a regular text
            output in other modes (without escaping the text).
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;nxu:editor /&gt; tag in create or edit mode, and properties
            accepted on a &lt;nxu:outputText /&gt; tag in other modes.
          </p>
        </description>
        <demo id="htmltextWidget" previewEnabled="true"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="htmltext_widget_type_properties_view">
              <rows>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="htmltext_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>width</widget>
                </row>
                <row>
                  <widget>height</widget>
                </row>
                <row>
                  <widget>disableHtmlInit</widget>
                </row>
                <row>
                  <widget>editorSelector</widget>
                </row>
              </rows>
              <widget name="disableHtmlInit" type="checkbox">
                <labels>
                  <label mode="any">Disable HTML init</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, the default display will be the text display
                    (not html editor). Available since 5.3.1.
                  </label>
                </helpLabels>
                <fields>
                  <field>disableHtmlInit</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="width" type="int">
                <labels>
                  <label mode="any">Width</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The textarea width. Defaults to "640".
                  </label>
                </helpLabels>
                <fields>
                  <field>width</field>
                </fields>
              </widget>
              <widget name="height" type="int">
                <labels>
                  <label mode="any">Height</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The textarea height. Defaults to "400".
                  </label>
                </helpLabels>
                <fields>
                  <field>height</field>
                </fields>
              </widget>
              <widget name="editorSelector" type="text">
                <labels>
                  <label mode="any">Editor selector</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The class to use to identify text areas to turn into html
                    editors. Defaults to "mceEditor". See the editor_selector
                    option in tiny_mce
                    (http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/editor_selector).
                  </label>
                </helpLabels>
                <fields>
                  <field>editorSelector</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.HtmlTextWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="selectOneDirectory">
      <configuration>
        <title>Vocabulary</title>
        <description>
          <p>
            The selectOneDirectory widget displays a selection of vocabulary
            entries in create or edit mode, with additional message tag for
            errors, and the directory entry label in other modes.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;nxd:selectOneListbox /&gt; tag in create or edit mode, and
            properties accepted on a &lt;nxd:directoryEntryOutput /&gt; tag in
            other modes.
          </p>
        </description>
        <demo id="selectOneDirectoryWidget" previewEnabled="true"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <layouts mode="any">
            <layout name="selectOneDirectory_widget_type_properties_any">
              <rows>
                <row>
                  <widget>directoryName</widget>
                </row>
                <row>
                  <widget>directoryNameDemoPreview</widget>
                </row>
              </rows>
              <widget name="directoryName" type="selectOneResource">
                <labels>
                  <label mode="any">Vocabulary</label>
                </labels>
                <fields>
                  <field>directoryName</field>
                </fields>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
                <properties mode="any">
                  <property name="resourceName">vocabularies</property>
                </properties>
                <properties widgetMode="any">
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="directoryNameDemoPreview" type="text">
                <labels>
                  <label mode="any">Vocabulary</label>
                </labels>
                <fields>
                  <field>directoryName</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="edit_demo_preview">view</mode>
                </widgetModes>
                <properties widgetMode="any">
                  <property name="required">true</property>
                </properties>
              </widget>
            </layout>
          </layouts>
          <layouts mode="view">
            <layout name="selectOneDirectory_widget_type_properties_view">
              <rows>
                <row>
                  <widget>localize</widget>
                </row>
                <row>
                  <widget>displayIdAndLabel</widget>
                </row>
              </rows>
              <widget name="localize" type="checkbox">
                <labels>
                  <label mode="any">Localize</label>
                </labels>
                <fields>
                  <field>localize</field>
                </fields>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
              </widget>
              <widget name="displayIdAndLabel" type="checkbox">
                <labels>
                  <label mode="any">Display id and label</label>
                </labels>
                <fields>
                  <field>displayIdAndLabel</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="selectOneDirectory_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>localize</widget>
                </row>
                <row>
                  <widget>displayIdAndLabel</widget>
                </row>
                <row>
                  <widget>displayObsoleteEntries</widget>
                </row>
                <row>
                  <widget>notDisplayDefaultOption</widget>
                </row>
                <row>
                  <widget>ordering</widget>
                </row>
                <row>
                  <widget>cssStyle</widget>
                </row>
                <row>
                  <widget>cssStyleClass</widget>
                </row>
              </rows>
              <widget name="directoryName" type="selectOneResource">
                <labels>
                  <label mode="any">Vocabulary</label>
                </labels>
                <fields>
                  <field>directoryName</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">vocabularies</property>
                </properties>
                <properties widgetMode="any">
                  <property name="required">true</property>
                </properties>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
              </widget>
              <widget name="localize" type="checkbox">
                <labels>
                  <label mode="any">Localize</label>
                </labels>
                <fields>
                  <field>localize</field>
                </fields>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
              </widget>
              <widget name="displayIdAndLabel" type="checkbox">
                <labels>
                  <label mode="any">Display id and label</label>
                </labels>
                <fields>
                  <field>displayIdAndLabel</field>
                </fields>
              </widget>
              <widget name="cssStyle" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>cssStyle</field>
                </fields>
              </widget>
              <widget name="cssStyleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>cssStyleClass</field>
                </fields>
              </widget>
              <widget name="displayObsoleteEntries" type="checkbox">
                <labels>
                  <label mode="any">Display obsolete entries</label>
                </labels>
                <fields>
                  <field>displayObsoleteEntries</field>
                </fields>
              </widget>
              <widget name="notDisplayDefaultOption" type="checkbox">
                <labels>
                  <label mode="any">Do not display the default option</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    True if there should not be displayed a "Please select a
                    value" option
                  </label>
                </helpLabels>
                <fields>
                  <field>notDisplayDefaultOption</field>
                </fields>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="ordering" type="selectOneListbox">
                <labels>
                  <label mode="any">Sort criterion</label>
                </labels>
                <fields>
                  <field>ordering</field>
                </fields>
                <selectOptions>
                  <option itemLabel="Label" itemValue="label"/>
                  <option itemLabel="Id" itemValue="id"/>
                </selectOptions>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.DirectorySelectOneWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="selectOneListbox">
      <configuration>
        <sinceVersion>5.4.2</sinceVersion>
        <title>Select One Listbox</title>
        <description/>
        <categories>
          <!-- don't export it yet -->
          <!--
            <category>document</category>
          -->
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <!--  TODO
            <mode>view</mode>
          -->
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.SelectOneListboxWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="selectOneMenu">
      <configuration>
        <sinceVersion>5.4.2</sinceVersion>
        <title>Select One Menu</title>
        <description/>
        <categories>
          <!-- don't export it yet -->
          <!--
            <category>document</category>
          -->
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <!--  TODO
            <mode>view</mode>
          -->
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.SelectOneMenuWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="selectManyDirectory">
      <configuration>
        <title>Multiple vocabulary</title>
        <description>
          <p>
            The selectManyDirectory widget displays a multi selection of
            vocabulary entries in create or edit mode, with additional message
            tag for errors, and the directory entries labels in other modes.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a c tag
            in create or edit mode, and properties accepted on a
            &lt;nxd:directoryEntryOutput /&gt; tag in other modes.
          </p>
        </description>
        <demo id="selectManyDirectoryWidget" previewEnabled="true"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>true</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <layouts mode="any">
            <layout name="selectManyDirectory_widget_type_properties_any">
              <rows>
                <row>
                  <widget>directoryName</widget>
                </row>
                <row>
                  <widget>directoryNameDemoPreview</widget>
                </row>
              </rows>
              <widget name="directoryName" type="selectOneResource">
                <labels>
                  <label mode="any">Vocabulary</label>
                </labels>
                <fields>
                  <field>directoryName</field>
                </fields>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
                <properties mode="any">
                  <property name="resourceName">vocabularies</property>
                </properties>
                <properties widgetMode="any">
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="directoryNameDemoPreview" type="text">
                <labels>
                  <label mode="any">Vocabulary</label>
                </labels>
                <fields>
                  <field>directoryName</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="edit_demo_preview">view</mode>
                </widgetModes>
                <properties widgetMode="any">
                  <property name="required">true</property>
                </properties>
              </widget>
            </layout>
          </layouts>
          <layouts mode="view">
            <layout name="selectManyDirectory_widget_type_properties_view">
              <rows>
                <row>
                  <widget>localize</widget>
                </row>
                <row>
                  <widget>displayIdAndLabel</widget>
                </row>
              </rows>
              <widget name="localize" type="checkbox">
                <labels>
                  <label mode="any">Localize</label>
                </labels>
                <fields>
                  <field>localize</field>
                </fields>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
              </widget>
              <widget name="displayIdAndLabel" type="checkbox">
                <labels>
                  <label mode="any">Display id and label</label>
                </labels>
                <fields>
                  <field>displayIdAndLabel</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="selectManyDirectory_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>localize</widget>
                </row>
                <row>
                  <widget>displayIdAndLabel</widget>
                </row>
                <row>
                  <widget>displayObsoleteEntries</widget>
                </row>
                <row>
                  <widget>notDisplayDefaultOption</widget>
                </row>
                <row>
                  <widget>ordering</widget>
                </row>
                <row>
                  <widget>cssStyle</widget>
                </row>
                <row>
                  <widget>cssStyleClass</widget>
                </row>
              </rows>
              <widget name="localize" type="checkbox">
                <labels>
                  <label mode="any">Localize</label>
                </labels>
                <fields>
                  <field>localize</field>
                </fields>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
              </widget>
              <widget name="displayIdAndLabel" type="checkbox">
                <labels>
                  <label mode="any">Display id and label</label>
                </labels>
                <fields>
                  <field>displayIdAndLabel</field>
                </fields>
              </widget>
              <widget name="cssStyle" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>cssStyle</field>
                </fields>
              </widget>
              <widget name="cssStyleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>cssStyleClass</field>
                </fields>
              </widget>
              <widget name="displayObsoleteEntries" type="checkbox">
                <labels>
                  <label mode="any">Display obsolete entries</label>
                </labels>
                <fields>
                  <field>displayObsoleteEntries</field>
                </fields>
              </widget>
              <widget name="notDisplayDefaultOption" type="checkbox">
                <labels>
                  <label mode="any">Do not display the default option</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    True if there should not be displayed a "Please select a
                    value" option
                  </label>
                </helpLabels>
                <fields>
                  <field>notDisplayDefaultOption</field>
                </fields>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="ordering" type="selectOneListbox">
                <labels>
                  <label mode="any">Sort criterion</label>
                </labels>
                <fields>
                  <field>ordering</field>
                </fields>
                <selectOptions>
                  <option itemLabel="Label" itemValue="label"/>
                  <option itemLabel="Id" itemValue="id"/>
                </selectOptions>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.DirectorySelectManyWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="list">
      <configuration>
        <title>List</title>
        <description>
          <p>
            The list widget displays an editable list of items in create or edit
            mode, with additional message tag for errors, and the same list of
            items in other modes. It is not usable within a list widget (see
            sublist widget for this feature).
          </p>
          <p>Items are defined using sub wigdets configuration.</p>
          <p>
            This is actually a template widget type whose template uses a
            &lt;nxu:inputList /&gt; tag in edit or create mode, and a table
            iterating over items in other modes.
          </p>
        </description>
        <demo id="listWidget" previewEnabled="false"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>true</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
            <type>path</type>
            <type>date</type>
            <type>blob</type>
            <type>integer</type>
            <type>double</type>
            <type>boolean</type>
          </supportedTypes>
          <defaultTypes>
            <type>string</type>
            <type>path</type>
            <type>date</type>
            <type>blob</type>
            <type>integer</type>
            <type>double</type>
            <type>boolean</type>
          </defaultTypes>
        </fields>
        <properties>
          <layouts mode="any">
            <layout name="list_widget_type_properties_any">
              <rows>
                <row>
                  <widget>display</widget>
                </row>
                <row>
                  <widget>hideSubLabels</widget>
                </row>
              </rows>
              <widget name="display" type="selectOneListbox">
                <labels>
                  <label mode="any">Display</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The display attribute controls the rendering of subwidgets,
                    either in a table, either inline. Available since 5.4.2.
                  </label>
                </helpLabels>
                <fields>
                  <field>display</field>
                </fields>
                <selectOptions>
                  <option itemLabel="Table (default)" itemValue="table"/>
                  <option itemLabel="In line" itemValue="inline"/>
                </selectOptions>
              </widget>
              <widget name="hideSubLabels" type="checkbox">
                <labels>
                  <label mode="any">Hide subwidgets labels</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    This attribute controls the rendering of subwidgets labels.
                    Available since 5.4.2.
                  </label>
                </helpLabels>
                <fields>
                  <field>hideSubLabels</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="list_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>diff</widget>
                </row>
                <row>
                  <widget>orderable</widget>
                </row>
              </rows>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="diff" type="checkbox">
                <labels>
                  <label mode="any">Diff</label>
                </labels>
                <fields>
                  <field>diff</field>
                </fields>
              </widget>
              <widget name="orderable" type="checkbox">
                <labels>
                  <label mode="any">Orderable</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    This attribute controls the possibility to order the items.
                    Available since 5.4.3.
                  </label>
                </helpLabels>
                <fields>
                  <field>orderable</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">/widgets/list_widget_template.xhtml</property>
    </widgetType>

    <widgetType name="complex">
      <configuration>
        <sinceVersion>5.4.2</sinceVersion>
        <title>Complex</title>
        <description>
          <p>
            The complex widget displays its sub widgets, and is controlling of a
            map-like. Each of the map items rendering is done through sub
            widgets configuration.
          </p>
        </description>
        <demo id="complexWidget" previewEnabled="false"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>true</complex>
        </fields>
        <properties>
          <layouts mode="any">
            <layout name="complex_widget_type_properties_any">
              <rows>
                <row>
                  <widget>display</widget>
                </row>
                <row>
                  <widget>hideSubLabels</widget>
                </row>
              </rows>
              <widget name="display" type="selectOneListbox">
                <labels>
                  <label mode="any">Display</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The display attribute controls the rendering of subwidgets,
                    either in a table, either inline. Available since 5.4.2.
                  </label>
                </helpLabels>
                <fields>
                  <field>display</field>
                </fields>
                <selectOptions>
                  <option itemLabel="Table (default)" itemValue="table"/>
                  <option itemLabel="In line" itemValue="inline"/>
                </selectOptions>
              </widget>
              <widget name="hideSubLabels" type="checkbox">
                <labels>
                  <label mode="any">Hide subwidgets labels</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    This attribute controls the rendering of subwidgets labels.
                    Available since 5.4.2.
                  </label>
                </helpLabels>
                <fields>
                  <field>hideSubLabels</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/complex_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="checkbox">
      <configuration>
        <title>Checkbox</title>
        <description>
          <p>
            The checkbox widget displays a checkbox in create, edit and any
            other mode, with additional message tag for errors.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;h:selectBooleanCheckbox /&gt; tag in create, edit mode, and
            other modes.
          </p>
        </description>
        <demo id="checkboxWidget" previewEnabled="true"/>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>boolean</type>
          </supportedTypes>
          <defaultTypes>
            <type>boolean</type>
          </defaultTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="checkbox_widget_type_properties_view">
              <rows>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="checkbox_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
                <row>
                  <widget>accesskey</widget>
                </row>
                <row>
                  <widget>dir</widget>
                </row>
                <row>
                  <widget>disabled</widget>
                </row>
                <row>
                  <widget>immediate</widget>
                </row>
                <row>
                  <widget>lang</widget>
                </row>
                <row>
                  <widget>validator</widget>
                </row>
                <row>
                  <widget>valueChangeListener</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="accesskey" type="text">
                <labels>
                  <label mode="any">Access key</label>
                </labels>
                <fields>
                  <field>accesskey</field>
                </fields>
              </widget>
              <widget name="dir" type="selectOneListbox">
                <labels>
                  <label mode="any">Direction</label>
                </labels>
                <fields>
                  <field>dir</field>
                </fields>
                <selectOptions>
                  <option itemLabel="" itemValue=""/>
                  <option itemLabel="Left to right" itemValue="LTR"/>
                  <option itemLabel="Right to left" itemValue="RTL"/>
                </selectOptions>
              </widget>
              <widget name="disabled" type="checkbox">
                <labels>
                  <label mode="any">Disabled</label>
                </labels>
                <fields>
                  <field>disabled</field>
                </fields>
              </widget>
              <widget name="immediate" type="checkbox">
                <labels>
                  <label mode="any">Immediate</label>
                </labels>
                <fields>
                  <field>immediate</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="lang" type="text">
                <labels>
                  <label mode="any">Lang</label>
                </labels>
                <fields>
                  <field>lang</field>
                </fields>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="validator" type="text">
                <labels>
                  <label mode="any">Validator</label>
                </labels>
                <fields>
                  <field>validator</field>
                </fields>
              </widget>
              <widget name="valueChangeListener" type="text">
                <labels>
                  <label mode="any">Value change listener</label>
                </labels>
                <fields>
                  <field>valueChangeListener</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.CheckboxWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="hidden">
      <configuration>
        <title>Hidden</title>
        <description>
          <p>
            The hidden widget is for a hidden field in create, edit and any
            other mode, with additional message tag for errors.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;h:inputHidden /&gt; tag in create, edit mode, and other modes.
          </p>
        </description>
        <!-- demo does not present it (yet?) -->
        <!--
          <demo id="hiddenWidget" previewEnabled="false"/>
        -->
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="hidden_widget_type_properties_view">
              <rows>
                <row>
                  <widget>style</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>title</widget>
                </row>
              </rows>
              <widget name="style" type="text">
                <labels>
                  <label mode="any">Style</label>
                </labels>
                <fields>
                  <field>style</field>
                </fields>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="title" type="text">
                <labels>
                  <label mode="any">Title</label>
                </labels>
                <fields>
                  <field>title</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="hidden_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>immediate</widget>
                </row>
                <row>
                  <widget>validator</widget>
                </row>
                <row>
                  <widget>valueChangeListener</widget>
                </row>
              </rows>
              <widget name="immediate" type="checkbox">
                <labels>
                  <label mode="any">Immediate</label>
                </labels>
                <fields>
                  <field>immediate</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="validator" type="text">
                <labels>
                  <label mode="any">Validator</label>
                </labels>
                <fields>
                  <field>validator</field>
                </fields>
              </widget>
              <widget name="valueChangeListener" type="text">
                <labels>
                  <label mode="any">Value change listener</label>
                </labels>
                <fields>
                  <field>valueChangeListener</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.HiddenWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="layout">
      <configuration>
        <sinceVersion>5.4.0</sinceVersion>
        <title>Layout</title>
        <description>
          <p>The layout widget renders a layout.</p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;nxl:layout /&gt; tag in all modes.
          </p>
        </description>
        <categories>
          <category>dev</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <layouts mode="any">
            <layout name="layout_widget_type_properties_any">
              <rows>
                <row>
                  <widget>name</widget>
                </row>
                <row>
                  <widget>mode</widget>
                </row>
                <row>
                  <widget>template</widget>
                </row>
              </rows>
              <widget name="name" type="text">
                <labels>
                  <label mode="any">Layout name</label>
                </labels>
                <fields>
                  <field>name</field>
                </fields>
                <properties widgetMode="any">
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="mode" type="text">
                <labels>
                  <label mode="any">Layout mode</label>
                </labels>
                <fields>
                  <field>mode</field>
                </fields>
                <properties widgetMode="any">
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="template" type="selectOneResource">
                <labels>
                  <label mode="any">Template</label>
                </labels>
                <fields>
                  <field>template</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">xhtml_templates</property>
                </properties>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.LayoutWidgetTypeHandler
      </handler-class>
    </widgetType>

    <widgetType name="richtext_with_mimetype">
      <configuration>
        <sinceVersion>5.3.1</sinceVersion>
        <title>Richtext</title>
        <description>
          <p>
            This widget displays an html text editor or a textarea in create or
            edit mode, depending on the mimetype defined.
          </p>
          <p>
            Widgets using this type can provide properties accepted on a
            &lt;nxu:editor /&gt; tag in create or edit mode.
          </p>
        </description>
        <categories>
          <!-- do not export with documents -->
          <!--
            <category>document</category>
          -->
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <layouts mode="view">
            <layout name="richtext_widget_type_properties_view">
              <rows>
                <row>
                  <widget>cssClass</widget>
                </row>
                <row>
                  <widget>translatedHtml</widget>
                </row>
              </rows>
              <widget name="cssClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <fields>
                  <field>cssClass</field>
                </fields>
              </widget>
              <widget name="translatedHtml" type="text">
                <labels>
                  <label mode="any">Translate HTML (?)</label>
                </labels>
                <fields>
                  <field>translatedHtml</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="richtext_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>height</widget>
                </row>
                <row>
                  <widget>width</widget>
                </row>
                <row>
                  <widget>cols</widget>
                </row>
                <row>
                  <widget>rows</widget>
                </row>
                <row>
                  <widget>editorSelector</widget>
                </row>
              </rows>
              <widget name="width" type="int">
                <labels>
                  <label mode="any">Width</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The textarea width. Defaults to "640".
                  </label>
                </helpLabels>
                <fields>
                  <field>width</field>
                </fields>
              </widget>
              <widget name="height" type="int">
                <labels>
                  <label mode="any">Height</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The textarea height. Defaults to "400".
                  </label>
                </helpLabels>
                <fields>
                  <field>height</field>
                </fields>
              </widget>
              <widget name="cols" type="int">
                <labels>
                  <label mode="any">Number of columns</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The cols attribute sets the number of columns to display.
                    Available since 5.3.1.
                  </label>
                </helpLabels>
                <fields>
                  <field>cols</field>
                </fields>
              </widget>
              <widget name="rows" type="int">
                <labels>
                  <label mode="any">Number of rows</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The rows attribute sets the number of rows to display.
                    Available since 5.3.1.
                  </label>
                </helpLabels>
                <fields>
                  <field>rows</field>
                </fields>
              </widget>
              <widget name="editorSelector" type="text">
                <labels>
                  <label mode="any">Editor selector</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The class to use to identify text areas to turn into html
                    editors. Defaults to "mceEditor". See the editor_selector
                    option in tiny_mce
                    (http://wiki.moxiecode.com/index.php/TinyMCE:Configuration/editor_selector).
                  </label>
                </helpLabels>
                <fields>
                  <field>editorSelector</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/richtext_with_mimetype_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="duration">
      <configuration>
        <sinceVersion>5.3.2</sinceVersion>
        <title>Duration</title>
        <description>
          This widget displays a i18n formatted duration of a field holding a
          value measured in seconds (can be Long, Double or String valued). NB:
          only view mode is supported right now.
        </description>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
            <type>int</type>
            <type>double</type>
          </supportedTypes>
        </fields>
        <!-- no props -->
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/duration_widget_template.xhtml
      </property>
    </widgetType>

  </extension>