Platform Explorer / Nuxeo Platform 5.6

Contribution org.nuxeo.ecm.platform.forms.layouts.webapp.base--widgettypes

This contribution is part of XML component org.nuxeo.ecm.platform.forms.layouts.webapp.base inside nuxeo-platform-webapp-base-5.6.jar

Extension point

Extension point widgettypes of component WebLayoutManager.

Contributed items

  • <widgetType name="select_path_tree">
          <configuration>
            <sinceVersion>5.4.0</sinceVersion>
            <title>Path tree</title>
            <description>
              Widget allowing to select one or more values from a Tree
              constructed
              from the navigation tree.
    
              Set 'showAllDomains' property to
              true if you want to be able to select
              a path from an other domain than
              the current one.
            </description>
            <categories>
              <category>configuration_not_ready</category>
            </categories>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/select_path_tree_widget_template.xhtml
          </property>
        </widgetType>

    Widget allowing to select one or more values from a Tree constructed from the navigation tree.

    Set 'showAllDomains' property to true if you want to be able to select a path from an other domain than the current one.

  • <widgetType name="singleUserSuggestion">
          <configuration>
            <title>Single user/group suggestion</title>
            <sinceVersion>5.4.2</sinceVersion>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <categories>
              <category>document</category>
            </categories>
            <properties>
              <layouts mode="view">
                <layout name="singleUserSuggestion_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_firstLabelField</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_secondLabelField</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_thirdLabelField</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_hideFirstLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_hideSecondLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_hideThirdLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_displayAction</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="singleUserSuggestion_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">required</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionMaxSearchResults</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_requestDelay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/single_user_suggestion_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="multipleUsersSuggestion">
          <configuration>
            <title>Multiple users/groups suggestion</title>
            <sinceVersion>5.4.2</sinceVersion>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>true</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <categories>
              <category>document</category>
            </categories>
            <properties>
              <layouts mode="view">
                <layout name="multipleUsersSuggestion_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_firstLabelField</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_secondLabelField</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_thirdLabelField</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_hideFirstLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_hideSecondLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_hideThirdLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="multipleUsersSuggestion_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">required</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionMaxSearchResults</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_requestDelay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_orderable</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/user_suggestion_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="multiplePrefixedUsersSuggestion">
          <configuration>
            <title>Multiple prefixed users/groups suggestion</title>
            <sinceVersion>5.4.2</sinceVersion>
            <supportedModes>
              <mode>view</mode>
              <mode>edit</mode>
            </supportedModes>
            <fields>
              <list>true</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <categories>
              <category>document</category>
            </categories>
            <properties>
              <layouts mode="edit">
                <layout name="multiplePrefixedUsersSuggestion_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">required</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionMaxSearchResults</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_requestDelay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_orderable</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/user_prefixed_suggestion_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="multipleDocumentsSuggestion">
          <configuration>
            <title>Multiple documents suggestion</title>
            <sinceVersion>5.4.2</sinceVersion>
            <supportedModes>
              <mode>view</mode>
              <mode>edit</mode>
            </supportedModes>
            <fields>
              <list>true</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <categories>
              <category>document</category>
            </categories>
            <properties>
              <layouts mode="view">
                <layout name="multipleDocumentsSuggestion_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_tab</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_subTab</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="multipleDocumentsSuggestion_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">required</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_pageProviderName</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_tab</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_subTab</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_requestDelay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_orderable</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/multiple_document_suggestion_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="singleDocumentSuggestion">
          <configuration>
            <title>Single document suggestion</title>
            <sinceVersion>5.5</sinceVersion>
            <supportedModes>
              <mode>view</mode>
              <mode>edit</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <categories>
              <category>document</category>
            </categories>
            <properties>
              <layouts mode="view">
                <layout name="singleDocumentSuggestion_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_tab</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_subTab</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="singleDocumentSuggestion_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">required</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_tab</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_subTab</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_pageProviderName</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_requestDelay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_width</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/single_document_suggestion_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="title_and_permlink">
          <configuration>
            <sinceVersion>5.4.2</sinceVersion>
            <title>Title and permanent link</title>
            <description>
              This widgets displays the document title with a permlink icon. If the
              document is a version, the major and minor are displayed in
              parenthesis.
    
              One field is required :
              <ul>
                <li>an empty field to map the document</li>
              </ul>
    
              Since 5.5, it also displays the document header related actions.
              They
              must be contributed in one of the following categories:
              <ul>
                <li>DOCUMENT_HEADER_ACTIONS_LIST</li>
                <li>DOCUMENT_HEADER_ACTIONS_LIST_HREF</li>
              </ul>
    
            </description>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <defaultConfiguration>
                <field/>
                <field>uid:major_version</field>
                <field>uid:minor_version</field>
              </defaultConfiguration>
            </fields>
            <categories>
              <category>document</category>
            </categories>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/title_with_permlink_widget_template.xhtml
          </property>
        </widgetType>

    This widgets displays the document title with a permlink icon. If the document is a version, the major and minor are displayed in parenthesis.

    One field is required :

    • an empty field to map the document

    Since 5.5, it also displays the document header related actions. They must be contributed in one of the following categories:

    • DOCUMENT_HEADER_ACTIONS_LIST
    • DOCUMENT_HEADER_ACTIONS_LIST_HREF
  • <widgetType name="select_l10n_vocabulary_tree">
          <configuration>
            <sinceVersion>5.5</sinceVersion>
            <title>Localized vocabulary tree</title>
            <description>
              Widget allowing to select one or more values in a tree
              constructed
              from a l10nvocabulary or l10nxvocabulary directory.
            </description>
            <categories>
              <category>configuration_not_ready</category>
            </categories>
            <properties>
              <layouts mode="any">
                <layout name="select_l10n_vocabulary_tree_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>directoryName</widget>
                    </row>
                    <row>
                      <widget>directoryNameDemoPreview</widget>
                    </row>
                    <row>
                      <widget>selectIdOnly</widget>
                    </row>
                    <row>
                      <widget>keySeparator</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>
                  <widget name="selectIdOnly" type="checkbox">
                    <labels>
                      <label mode="any">Select id only</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, only the entries id are
                        stored instead of
                        their path.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>selectIdOnly</field>
                    </fields>
                  </widget>
                  <widget name="keySeparator" type="text">
                    <labels>
                      <label mode="any">Key separator</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The string used to separate directory keys
                        in the value.
                        Defaults to "/".
                      </label>
                    </helpLabels>
                    <fields>
                      <field>keySeparator</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="select_l10n_vocabulary_tree_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>multiSelect</widget>
                    </row>
                    <row>
                      <widget>displayObsoleteEntries</widget>
                    </row>
                    <row>
                      <widget>ordering</widget>
                    </row>
                  </rows>
                  <widget name="multiSelect" type="checkbox">
                    <labels>
                      <label mode="any">Multiple selection</label>
                    </labels>
                    <fields>
                      <field>multiSelect</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="ordering" type="selectOneListbox">
                    <labels>
                      <label mode="any">Sort criterion</label>
                    </labels>
                    <fields>
                      <field>ordering</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="Label (default)" itemValue="label"/>
                      <option itemLabel="Ordering" itemValue="ordering"/>
                      <option itemLabel="Id" itemValue="id"/>
                    </selectOptions>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/select_l10n_vocabulary_tree_widget_template.xhtml
          </property>
        </widgetType>

    Widget allowing to select one or more values in a tree constructed from a l10nvocabulary or l10nxvocabulary directory.

  • <widgetType name="contentViewWithForms">
          <configuration>
            <sinceVersion>5.6</sinceVersion>
            <title>Content view</title>
            <description>
              This widget displays a content view, with forms inside it.
    
              Note that usually layouts do not contain any forms, but are surrounded
              by one, and nesting forms breaks the available actions. So you should
              make sure there is no enclosing form around the layout, or around this
              widget, when using it.
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <containingForm>true</containingForm>
            <handlingLabels>true</handlingLabels>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <layouts mode="any">
                <layout name="contentView_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>contentViewName</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>useAjaxForm</widget>
                    </row>
                    <row>
                      <widget>useAjaxPagination</widget>
                    </row>
                    <row>
                      <widget>hideTopPaginationControls</widget>
                    </row>
                    <row>
                      <widget>defaultPageSize</widget>
                    </row>
                    <row>
                      <widget>showPageSizeSelector</widget>
                    </row>
                    <row>
                      <widget>showRefreshCommand</widget>
                    </row>
                    <row>
                      <widget>showFilterForm</widget>
                    </row>
                    <row>
                      <widget>showSyndicationLinks</widget>
                    </row>
                    <row>
                      <widget>showCSVExport</widget>
                    </row>
                    <row>
                      <widget>showPDFExport</widget>
                    </row>
                    <!-- not exposed in studio for now -->
                    <row>
                      <widget>foldable</widget>
                    </row>
                    <row>
                      <widget>foldableBoxStyleClass</widget>
                    </row>
                    <row>
                      <widget>foldedByDefault</widget>
                    </row>
                    <row>
                      <widget>foldedIfEmpty</widget>
                    </row>
                    <row>
                      <widget>hideEmpty</widget>
                    </row>
                    <row>
                      <widget>contentViewIconPath</widget>
                    </row>
                    <!-- not sure this is a good idea: there are other forms in the template -->
                    <!--
                      <row>
                      <widget>removeForm</widget>
                      </row>
                    -->
                  </rows>
                  <widget name="contentViewName" type="selectOneResource">
                    <labels>
                      <label mode="any">Content View name</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The content view to display.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>contentViewName</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">contentViews</property>
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The given style class will be put in a "div"
                        element around the content view.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="useAjaxForm" type="checkbox">
                    <labels>
                      <label mode="any">Use ajax actions</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, selection actions will be
                        performed using ajax. Note that sometimes, selection actions
                        will require you to reload the whole page for other elements
                        than the content view to be re-rendered, so using ajax will
                        not be user friendly in these cases. Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>useAjaxForm</field>
                    </fields>
                  </widget>
                  <widget name="useAjaxPagination" type="checkbox">
                    <labels>
                      <label mode="any">Use ajax pagination</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, pagination actions (first,
                        previous, next, last) actions will be performed using ajax.
                        Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>useAjaxPagination</field>
                    </fields>
                  </widget>
                  <widget name="hideTopPaginationControls" type="checkbox">
                    <labels>
                      <label mode="any">Show only bottom pagination controls</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, pagination actions (first,
                        previous, next, last) actions will only be displayed below
                        the results. Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>hideTopPaginationControls</field>
                    </fields>
                  </widget>
                  <widget name="defaultPageSize" type="int">
                    <labels>
                      <label mode="any">Default page size</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The default page size to use instead of the
                        value set on the content view definition.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>defaultPageSize</field>
                    </fields>
                  </widget>
                  <widget name="showPageSizeSelector" type="checkbox">
                    <labels>
                      <label mode="any">Show page size selector</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Boolean to show or hide the page size
                        selector, overriding the value set on the content view
                        definition.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>showPageSizeSelector</field>
                    </fields>
                  </widget>
                  <widget name="showRefreshCommand" type="checkbox">
                    <labels>
                      <label mode="any">Show refresh command</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Boolean to show or hide the refresh command,
                        overriding the value set on the content view
                        definition.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>showRefreshCommand</field>
                    </fields>
                  </widget>
                  <widget name="showFilterForm" type="checkbox">
                    <labels>
                      <label mode="any">Show filter form</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Boolean to show or hide the filter form,
                        overriding the value set on the content view
                        definition.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>showFilterForm</field>
                    </fields>
                  </widget>
                  <widget name="showSyndicationLinks" type="checkbox">
                    <labels>
                      <label mode="any">Show syndication links</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Boolean to show or hide syndication links,
                        overriding the value set on the content view
                        definition.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>showSyndicationLinks</field>
                    </fields>
                  </widget>
                  <widget name="showCSVExport" type="checkbox">
                    <labels>
                      <label mode="any">Show CSV export</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Boolean to show or hide the CSV export link,
                        overriding the value set on the content view definition for
                        every result layouts. Warning: the content view result
                        layouts should be configured to handle a CSV export.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>showCSVExport</field>
                    </fields>
                  </widget>
                  <widget name="showPDFExport" type="checkbox">
                    <labels>
                      <label mode="any">Show PDF export</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Boolean to show or hide the PDF export link,
                        overriding the value set on the content view definition for
                        every result layouts. Warning: the content view result
                        layouts should be configured to handle a CSV export.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>showPDFExport</field>
                    </fields>
                  </widget>
                  <!-- not exposed in studio for now -->
                  <widget name="foldable" type="checkbox">
                    <labels>
                      <label mode="any">Make this content view foldable</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, the content view will be
                        displayed in a box that can be folded if users would like to
                        hide this content view content. Note that this state is not
                        persisted. Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>foldable</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="foldableBoxStyleClass" type="text">
                    <labels>
                      <label mode="any">Foldable Box Style class</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The given style class will be used on the
                        foldable box.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>foldableBoxStyleClass</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="foldedByDefault" type="checkbox">
                    <labels>
                      <label mode="any">Folded by default</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>foldedByDefault</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="foldedIfEmpty" type="checkbox">
                    <labels>
                      <label mode="any">Folded if empty</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>foldedIfEmpty</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="hideEmpty" type="checkbox">
                    <labels>
                      <label mode="any">Hide if empty</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Boolean to hide the complete rendering when
                        content view is empty
                      </label>
                    </helpLabels>
                    <fields>
                      <field>hideEmpty</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="contentViewIconPath" type="text">
                    <labels>
                      <label mode="any">Content icon path</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The icon to display instead of the value set
                        on the content view definition.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>contentViewIconPath</field>
                    </fields>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <widget name="removeForm" type="checkbox">
                    <labels>
                      <label mode="any">Remove form on content listing</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>removeForm</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.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/content_view_with_forms_widget.xhtml
          </property>
        </widgetType>

    This widget displays a content view, with forms inside it.

    Note that usually layouts do not contain any forms, but are surrounded by one, and nesting forms breaks the available actions. So you should make sure there is no enclosing form around the layout, or around this widget, when using it.

  • <widgetType name="toggleableLayoutWithForms">
          <configuration>
            <sinceVersion>5.6</sinceVersion>
            <title>Toggleable layout</title>
            <description>
              This widget displays a layout which mode can be toggled,
              with forms inside it.
    
              Note that usually layouts do not contain any
              forms, but are surrounded by one, and nesting forms breaks the
              available actions. So you should make sure there is no enclosing form
              around the layout, or around this widget, when using it.
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>true</containingForm>
            <supportedModes>
              <mode>view</mode>
              <mode>edit</mode>
            </supportedModes>
            <properties>
              <layouts mode="any">
                <layout name="toggleableLayoutViewWithForms_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>initialLayoutName</widget>
                    </row>
                    <row>
                      <widget>toggledLayoutName</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>canToggleMode</widget>
                    </row>
                    <row>
                      <widget>hideDefaultActions</widget>
                    </row>
                    <row>
                      <widget>additionalActionsCategory</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">formActionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">widgetsDisplay</widget>
                    </row>
                    <row>
                      <widget>showEditOptions</widget>
                    </row>
                    <row>
                      <widget>useAjaxForm</widget>
                    </row>
                    <row>
                      <widget>initialActionLabel</widget>
                    </row>
                    <row>
                      <widget>cancelActionLabel</widget>
                    </row>
                    <row>
                      <widget>template</widget>
                    </row>
                  </rows>
                  <widget name="initialLayoutName" type="selectOneResource">
                    <labels>
                      <label mode="any">Layout(s)</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The layout to display before toggling the
                        mode. Also accepts a list of multiple layout names,
                        separated by commas.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>initialLayoutName</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">layouts</property>
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="toggledLayoutName" type="selectOneResource">
                    <labels>
                      <label mode="any">Toggled layout(s)</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The layout to display after toggling the
                        mode. Also accepts a list of multiple layout names,
                        separated by commas. If not filled, defaults to the initial
                        layout name(s).
                      </label>
                    </helpLabels>
                    <fields>
                      <field>toggledLayoutName</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">layouts</property>
                    </properties>
                  </widget>
                  <widget name="template" type="selectOneResource">
                    <labels>
                      <label mode="any">Template</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The layout template to use instead of the
                        one already set
                        on the layout(s) definition(s).
                      </label>
                    </helpLabels>
                    <fields>
                      <field>template</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">layout_templates</property>
                    </properties>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The given style class will be put in a "div"
                        element around the layout.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="canToggleMode" type="text">
                    <labels>
                      <label mode="any">Can toggle mode</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The boolean property to resolve when
                        deciding whether the toggle button should be displayed or
                        not. Defaults to an EL expression checking permission
                        'Write' on the document. Examples: false,
                        #{nxd:hasPermission(value, 'Write') and
                        currentUser.isMemberOf('togglers_groups')}
                      </label>
                    </helpLabels>
                    <fields>
                      <field>canToggleMode</field>
                    </fields>
                  </widget>
                  <widget name="hideDefaultActions" type="checkbox">
                    <labels>
                      <label mode="any">Hide default actions</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, actions from the default
                        category 'EDIT_DOCUMENT_FORM' will not be displayed on the
                        layout in toggled mode. Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>hideDefaultActions</field>
                    </fields>
                  </widget>
                  <widget name="additionalActionsCategory" type="text">
                    <labels>
                      <label mode="any">Additional actions category</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The additional actions category to use when
                        displaying the layout in toggled mode.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>additionalActionsCategory</field>
                    </fields>
                  </widget>
                  <widget name="showEditOptions" type="checkbox">
                    <labels>
                      <label mode="any">Show edit options</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, additional edit options
                        (like a textarea for comment to be visible in the document
                        history) will be visible after the layout in toggled (edit)
                        mode. Only visible if value bound to the layout is a
                        document model. Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>showEditOptions</field>
                    </fields>
                  </widget>
                  <widget name="useAjaxForm" type="checkbox">
                    <labels>
                      <label mode="any">Use ajax actions</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, actions will be performed
                        using ajax. Note that sometimes, actions will require you to
                        reload the whole page for other elements than the current
                        zone to be re-rendered, so using ajax will not be user
                        friendly in these cases. Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>useAjaxForm</field>
                    </fields>
                  </widget>
                  <widget name="initialActionLabel" type="text">
                    <labels>
                      <label mode="any">Initial action label</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The initial action label to display.
                        Defaults to 'action.view.modification' (Edit), is translated
                        when the widget is translated.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>initialActionLabel</field>
                    </fields>
                  </widget>
                  <widget name="cancelActionLabel" type="text">
                    <labels>
                      <label mode="any">Cancel action label</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The toggled action label to display.
                        Defaults to 'command.cancel' (Cancel), is translated when
                        the widget is translated.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>cancelActionLabel</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/toggleable_layout_with_forms_widget.xhtml
          </property>
        </widgetType>

    This widget displays a layout which mode can be toggled, with forms inside it.

    Note that usually layouts do not contain any forms, but are surrounded by one, and nesting forms breaks the available actions. So you should make sure there is no enclosing form around the layout, or around this widget, when using it.

  • <widgetType name="actions">
          <configuration>
            <sinceVersion>5.6</sinceVersion>
            <title>Actions</title>
            <description>
              <p>This widget displays actions.</p>
              <p>
                It needs the list of actions as property "actions".
                <br/>
                Its bound value is used for actions with type "widget".
              </p>
            </description>
            <categories>
              <category>hidden</category>
            </categories>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <layouts mode="any">
                <layout name="generic_actions_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>actions</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget>overallDisplay</widget>
                    </row>
                    <row>
                      <widget>maxActionsNumber</widget>
                    </row>
                    <row>
                      <widget>headerStyleClass</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>subStyleClass</widget>
                    </row>
                    <row>
                      <widget>moreMenuLabel</widget>
                    </row>
                  </rows>
                  <widget name="actions" type="actions">
                    <labels>
                      <label mode="any">Actions</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The list of actions to display.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>actions</field>
                    </fields>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                  </widget>
                  <widget name="headerStyleClass" type="text">
                    <labels>
                      <label mode="any">Header style class</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Style class for the header, displaying this
                        widget label.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>headerStyleClass</field>
                    </fields>
                  </widget>
                  <widget name="overallDisplay" type="selectOneListbox">
                    <categories>
                      <category>widgetTypeConf</category>
                    </categories>
                    <labels>
                      <label mode="any">Overall display</label>
                    </labels>
                    <fields>
                      <field>overallDisplay</field>
                    </fields>
                    <selectOptions>
                      <option itemLabel="Vertical block (default)" itemValue=""/>
                      <option itemLabel="Horizontal block" itemValue="horizontal_block"/>
                      <option itemLabel="Menu" itemValue="menu"/>
                    </selectOptions>
                  </widget>
                  <widget name="styleClass" type="text">
                    <labels>
                      <label mode="any">Style class</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Style class for the global container div.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                  <widget name="subStyleClass" type="text">
                    <labels>
                      <label mode="any">Sub style class</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Style class for div containing actions.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>subStyleClass</field>
                    </fields>
                  </widget>
                  <widget name="actionStyleClass" type="text">
                    <labels>
                      <label mode="any">Action style class</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Style class for each action link.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>subStyleClass</field>
                    </fields>
                  </widget>
                  <widget name="maxActionsNumber" type="int">
                    <labels>
                      <label mode="any">Maximum number of actions</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Integer indicating the maximum number of
                        actions to display. When this limit is reached, other
                        actions are displayed in a menu.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>maxActionsNumber</field>
                    </fields>
                  </widget>
                  <widget name="moreMenuLabel" type="text">
                    <labels>
                      <label mode="any">Label for the "more" menu</label>
                    </labels>
                    <fields>
                      <field>moreMenuLabel</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/generic_actions_widget_template.xhtml
          </property>
        </widgetType>

    This widget displays actions.

    It needs the list of actions as property "actions".

    Its bound value is used for actions with type "widget".

  • <widgetType name="userVirtualGroups">
          <configuration>
            <sinceVersion>5.5</sinceVersion>
            <title>User virtual groups</title>
            <description>
              This widget displays the user virtual groups.
            </description>
            <categories>
              <category>configuration_not_ready</category>
            </categories>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/user_vgoups_widget_template.xhtml
          </property>
        </widgetType>

    This widget displays the user virtual groups.

XML source

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

    <widgetType name="select_path_tree">
      <configuration>
        <sinceVersion>5.4.0</sinceVersion>
        <title>Path tree</title>
        <description>
          Widget allowing to select one or more values from a Tree
          constructed
          from the navigation tree.

          Set 'showAllDomains' property to
          true if you want to be able to select
          a path from an other domain than
          the current one.
        </description>
        <categories>
          <category>configuration_not_ready</category>
        </categories>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/select_path_tree_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="singleUserSuggestion">
      <configuration>
        <title>Single user/group suggestion</title>
        <sinceVersion>5.4.2</sinceVersion>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <categories>
          <category>document</category>
        </categories>
        <properties>
          <layouts mode="view">
            <layout name="singleUserSuggestion_widget_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_firstLabelField</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_secondLabelField</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_thirdLabelField</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_hideFirstLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_hideSecondLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_hideThirdLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_displayAction</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion</widget>
                </row>
              </rows>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="singleUserSuggestion_widget_type_properties_edit">
              <rows>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionMaxSearchResults</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_requestDelay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/single_user_suggestion_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="multipleUsersSuggestion">
      <configuration>
        <title>Multiple users/groups suggestion</title>
        <sinceVersion>5.4.2</sinceVersion>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>true</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <categories>
          <category>document</category>
        </categories>
        <properties>
          <layouts mode="view">
            <layout name="multipleUsersSuggestion_widget_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_firstLabelField</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_secondLabelField</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_thirdLabelField</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_hideFirstLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_hideSecondLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_hideThirdLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion</widget>
                </row>
              </rows>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="multipleUsersSuggestion_widget_type_properties_edit">
              <rows>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionMaxSearchResults</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_requestDelay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_orderable</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/user_suggestion_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="multiplePrefixedUsersSuggestion">
      <configuration>
        <title>Multiple prefixed users/groups suggestion</title>
        <sinceVersion>5.4.2</sinceVersion>
        <supportedModes>
          <mode>view</mode>
          <mode>edit</mode>
        </supportedModes>
        <fields>
          <list>true</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <categories>
          <category>document</category>
        </categories>
        <properties>
          <layouts mode="edit">
            <layout name="multiplePrefixedUsersSuggestion_widget_type_properties_edit">
              <rows>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionMaxSearchResults</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_requestDelay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_orderable</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/user_prefixed_suggestion_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="multipleDocumentsSuggestion">
      <configuration>
        <title>Multiple documents suggestion</title>
        <sinceVersion>5.4.2</sinceVersion>
        <supportedModes>
          <mode>view</mode>
          <mode>edit</mode>
        </supportedModes>
        <fields>
          <list>true</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <categories>
          <category>document</category>
        </categories>
        <properties>
          <layouts mode="view">
            <layout name="multipleDocumentsSuggestion_widget_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_tab</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_subTab</widget>
                </row>
              </rows>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="multipleDocumentsSuggestion_widget_type_properties_edit">
              <rows>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_pageProviderName</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_tab</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_subTab</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_requestDelay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_orderable</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/multiple_document_suggestion_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="singleDocumentSuggestion">
      <configuration>
        <title>Single document suggestion</title>
        <sinceVersion>5.5</sinceVersion>
        <supportedModes>
          <mode>view</mode>
          <mode>edit</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <categories>
          <category>document</category>
        </categories>
        <properties>
          <layouts mode="view">
            <layout name="singleDocumentSuggestion_widget_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_tab</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_subTab</widget>
                </row>
              </rows>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="singleDocumentSuggestion_widget_type_properties_edit">
              <rows>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_tab</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_subTab</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_pageProviderName</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_requestDelay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_width</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/single_document_suggestion_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="title_and_permlink">
      <configuration>
        <sinceVersion>5.4.2</sinceVersion>
        <title>Title and permanent link</title>
        <description>
          This widgets displays the document title with a permlink icon. If the
          document is a version, the major and minor are displayed in
          parenthesis.

          One field is required :
          <ul>
            <li>an empty field to map the document</li>
          </ul>

          Since 5.5, it also displays the document header related actions.
          They
          must be contributed in one of the following categories:
          <ul>
            <li>DOCUMENT_HEADER_ACTIONS_LIST</li>
            <li>DOCUMENT_HEADER_ACTIONS_LIST_HREF</li>
          </ul>

        </description>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <defaultConfiguration>
            <field/>
            <field>uid:major_version</field>
            <field>uid:minor_version</field>
          </defaultConfiguration>
        </fields>
        <categories>
          <category>document</category>
        </categories>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/title_with_permlink_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="select_l10n_vocabulary_tree">
      <configuration>
        <sinceVersion>5.5</sinceVersion>
        <title>Localized vocabulary tree</title>
        <description>
          Widget allowing to select one or more values in a tree
          constructed
          from a l10nvocabulary or l10nxvocabulary directory.
        </description>
        <categories>
          <category>configuration_not_ready</category>
        </categories>
        <properties>
          <layouts mode="any">
            <layout name="select_l10n_vocabulary_tree_widget_type_properties_any">
              <rows>
                <row>
                  <widget>directoryName</widget>
                </row>
                <row>
                  <widget>directoryNameDemoPreview</widget>
                </row>
                <row>
                  <widget>selectIdOnly</widget>
                </row>
                <row>
                  <widget>keySeparator</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>
              <widget name="selectIdOnly" type="checkbox">
                <labels>
                  <label mode="any">Select id only</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, only the entries id are
                    stored instead of
                    their path.
                  </label>
                </helpLabels>
                <fields>
                  <field>selectIdOnly</field>
                </fields>
              </widget>
              <widget name="keySeparator" type="text">
                <labels>
                  <label mode="any">Key separator</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The string used to separate directory keys
                    in the value.
                    Defaults to "/".
                  </label>
                </helpLabels>
                <fields>
                  <field>keySeparator</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="select_l10n_vocabulary_tree_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>multiSelect</widget>
                </row>
                <row>
                  <widget>displayObsoleteEntries</widget>
                </row>
                <row>
                  <widget>ordering</widget>
                </row>
              </rows>
              <widget name="multiSelect" type="checkbox">
                <labels>
                  <label mode="any">Multiple selection</label>
                </labels>
                <fields>
                  <field>multiSelect</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="ordering" type="selectOneListbox">
                <labels>
                  <label mode="any">Sort criterion</label>
                </labels>
                <fields>
                  <field>ordering</field>
                </fields>
                <selectOptions>
                  <option itemLabel="Label (default)" itemValue="label"/>
                  <option itemLabel="Ordering" itemValue="ordering"/>
                  <option itemLabel="Id" itemValue="id"/>
                </selectOptions>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/select_l10n_vocabulary_tree_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="contentViewWithForms">
      <configuration>
        <sinceVersion>5.6</sinceVersion>
        <title>Content view</title>
        <description>
          This widget displays a content view, with forms inside it.

          Note that usually layouts do not contain any forms, but are surrounded
          by one, and nesting forms breaks the available actions. So you should
          make sure there is no enclosing form around the layout, or around this
          widget, when using it.
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <containingForm>true</containingForm>
        <handlingLabels>true</handlingLabels>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <layouts mode="any">
            <layout name="contentView_widget_type_properties_any">
              <rows>
                <row>
                  <widget>contentViewName</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>useAjaxForm</widget>
                </row>
                <row>
                  <widget>useAjaxPagination</widget>
                </row>
                <row>
                  <widget>hideTopPaginationControls</widget>
                </row>
                <row>
                  <widget>defaultPageSize</widget>
                </row>
                <row>
                  <widget>showPageSizeSelector</widget>
                </row>
                <row>
                  <widget>showRefreshCommand</widget>
                </row>
                <row>
                  <widget>showFilterForm</widget>
                </row>
                <row>
                  <widget>showSyndicationLinks</widget>
                </row>
                <row>
                  <widget>showCSVExport</widget>
                </row>
                <row>
                  <widget>showPDFExport</widget>
                </row>
                <!-- not exposed in studio for now -->
                <row>
                  <widget>foldable</widget>
                </row>
                <row>
                  <widget>foldableBoxStyleClass</widget>
                </row>
                <row>
                  <widget>foldedByDefault</widget>
                </row>
                <row>
                  <widget>foldedIfEmpty</widget>
                </row>
                <row>
                  <widget>hideEmpty</widget>
                </row>
                <row>
                  <widget>contentViewIconPath</widget>
                </row>
                <!-- not sure this is a good idea: there are other forms in the template -->
                <!--
                  <row>
                  <widget>removeForm</widget>
                  </row>
                -->
              </rows>
              <widget name="contentViewName" type="selectOneResource">
                <labels>
                  <label mode="any">Content View name</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The content view to display.
                  </label>
                </helpLabels>
                <fields>
                  <field>contentViewName</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">contentViews</property>
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The given style class will be put in a "div"
                    element around the content view.
                  </label>
                </helpLabels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="useAjaxForm" type="checkbox">
                <labels>
                  <label mode="any">Use ajax actions</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, selection actions will be
                    performed using ajax. Note that sometimes, selection actions
                    will require you to reload the whole page for other elements
                    than the content view to be re-rendered, so using ajax will
                    not be user friendly in these cases. Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>useAjaxForm</field>
                </fields>
              </widget>
              <widget name="useAjaxPagination" type="checkbox">
                <labels>
                  <label mode="any">Use ajax pagination</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, pagination actions (first,
                    previous, next, last) actions will be performed using ajax.
                    Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>useAjaxPagination</field>
                </fields>
              </widget>
              <widget name="hideTopPaginationControls" type="checkbox">
                <labels>
                  <label mode="any">Show only bottom pagination controls</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, pagination actions (first,
                    previous, next, last) actions will only be displayed below
                    the results. Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>hideTopPaginationControls</field>
                </fields>
              </widget>
              <widget name="defaultPageSize" type="int">
                <labels>
                  <label mode="any">Default page size</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The default page size to use instead of the
                    value set on the content view definition.
                  </label>
                </helpLabels>
                <fields>
                  <field>defaultPageSize</field>
                </fields>
              </widget>
              <widget name="showPageSizeSelector" type="checkbox">
                <labels>
                  <label mode="any">Show page size selector</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Boolean to show or hide the page size
                    selector, overriding the value set on the content view
                    definition.
                  </label>
                </helpLabels>
                <fields>
                  <field>showPageSizeSelector</field>
                </fields>
              </widget>
              <widget name="showRefreshCommand" type="checkbox">
                <labels>
                  <label mode="any">Show refresh command</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Boolean to show or hide the refresh command,
                    overriding the value set on the content view
                    definition.
                  </label>
                </helpLabels>
                <fields>
                  <field>showRefreshCommand</field>
                </fields>
              </widget>
              <widget name="showFilterForm" type="checkbox">
                <labels>
                  <label mode="any">Show filter form</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Boolean to show or hide the filter form,
                    overriding the value set on the content view
                    definition.
                  </label>
                </helpLabels>
                <fields>
                  <field>showFilterForm</field>
                </fields>
              </widget>
              <widget name="showSyndicationLinks" type="checkbox">
                <labels>
                  <label mode="any">Show syndication links</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Boolean to show or hide syndication links,
                    overriding the value set on the content view
                    definition.
                  </label>
                </helpLabels>
                <fields>
                  <field>showSyndicationLinks</field>
                </fields>
              </widget>
              <widget name="showCSVExport" type="checkbox">
                <labels>
                  <label mode="any">Show CSV export</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Boolean to show or hide the CSV export link,
                    overriding the value set on the content view definition for
                    every result layouts. Warning: the content view result
                    layouts should be configured to handle a CSV export.
                  </label>
                </helpLabels>
                <fields>
                  <field>showCSVExport</field>
                </fields>
              </widget>
              <widget name="showPDFExport" type="checkbox">
                <labels>
                  <label mode="any">Show PDF export</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Boolean to show or hide the PDF export link,
                    overriding the value set on the content view definition for
                    every result layouts. Warning: the content view result
                    layouts should be configured to handle a CSV export.
                  </label>
                </helpLabels>
                <fields>
                  <field>showPDFExport</field>
                </fields>
              </widget>
              <!-- not exposed in studio for now -->
              <widget name="foldable" type="checkbox">
                <labels>
                  <label mode="any">Make this content view foldable</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, the content view will be
                    displayed in a box that can be folded if users would like to
                    hide this content view content. Note that this state is not
                    persisted. Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>foldable</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="foldableBoxStyleClass" type="text">
                <labels>
                  <label mode="any">Foldable Box Style class</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The given style class will be used on the
                    foldable box.
                  </label>
                </helpLabels>
                <fields>
                  <field>foldableBoxStyleClass</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="foldedByDefault" type="checkbox">
                <labels>
                  <label mode="any">Folded by default</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>foldedByDefault</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="foldedIfEmpty" type="checkbox">
                <labels>
                  <label mode="any">Folded if empty</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>foldedIfEmpty</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="hideEmpty" type="checkbox">
                <labels>
                  <label mode="any">Hide if empty</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Boolean to hide the complete rendering when
                    content view is empty
                  </label>
                </helpLabels>
                <fields>
                  <field>hideEmpty</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="contentViewIconPath" type="text">
                <labels>
                  <label mode="any">Content icon path</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The icon to display instead of the value set
                    on the content view definition.
                  </label>
                </helpLabels>
                <fields>
                  <field>contentViewIconPath</field>
                </fields>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="view_reference">view</mode>
                </widgetModes>
              </widget>
              <widget name="removeForm" type="checkbox">
                <labels>
                  <label mode="any">Remove form on content listing</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>removeForm</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.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/content_view_with_forms_widget.xhtml
      </property>
    </widgetType>

    <widgetType name="toggleableLayoutWithForms">
      <configuration>
        <sinceVersion>5.6</sinceVersion>
        <title>Toggleable layout</title>
        <description>
          This widget displays a layout which mode can be toggled,
          with forms inside it.

          Note that usually layouts do not contain any
          forms, but are surrounded by one, and nesting forms breaks the
          available actions. So you should make sure there is no enclosing form
          around the layout, or around this widget, when using it.
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>true</containingForm>
        <supportedModes>
          <mode>view</mode>
          <mode>edit</mode>
        </supportedModes>
        <properties>
          <layouts mode="any">
            <layout name="toggleableLayoutViewWithForms_widget_type_properties_any">
              <rows>
                <row>
                  <widget>initialLayoutName</widget>
                </row>
                <row>
                  <widget>toggledLayoutName</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>canToggleMode</widget>
                </row>
                <row>
                  <widget>hideDefaultActions</widget>
                </row>
                <row>
                  <widget>additionalActionsCategory</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">formActionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">widgetsDisplay</widget>
                </row>
                <row>
                  <widget>showEditOptions</widget>
                </row>
                <row>
                  <widget>useAjaxForm</widget>
                </row>
                <row>
                  <widget>initialActionLabel</widget>
                </row>
                <row>
                  <widget>cancelActionLabel</widget>
                </row>
                <row>
                  <widget>template</widget>
                </row>
              </rows>
              <widget name="initialLayoutName" type="selectOneResource">
                <labels>
                  <label mode="any">Layout(s)</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The layout to display before toggling the
                    mode. Also accepts a list of multiple layout names,
                    separated by commas.
                  </label>
                </helpLabels>
                <fields>
                  <field>initialLayoutName</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">layouts</property>
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="toggledLayoutName" type="selectOneResource">
                <labels>
                  <label mode="any">Toggled layout(s)</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The layout to display after toggling the
                    mode. Also accepts a list of multiple layout names,
                    separated by commas. If not filled, defaults to the initial
                    layout name(s).
                  </label>
                </helpLabels>
                <fields>
                  <field>toggledLayoutName</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">layouts</property>
                </properties>
              </widget>
              <widget name="template" type="selectOneResource">
                <labels>
                  <label mode="any">Template</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The layout template to use instead of the
                    one already set
                    on the layout(s) definition(s).
                  </label>
                </helpLabels>
                <fields>
                  <field>template</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">layout_templates</property>
                </properties>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The given style class will be put in a "div"
                    element around the layout.
                  </label>
                </helpLabels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="canToggleMode" type="text">
                <labels>
                  <label mode="any">Can toggle mode</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The boolean property to resolve when
                    deciding whether the toggle button should be displayed or
                    not. Defaults to an EL expression checking permission
                    'Write' on the document. Examples: false,
                    #{nxd:hasPermission(value, 'Write') and
                    currentUser.isMemberOf('togglers_groups')}
                  </label>
                </helpLabels>
                <fields>
                  <field>canToggleMode</field>
                </fields>
              </widget>
              <widget name="hideDefaultActions" type="checkbox">
                <labels>
                  <label mode="any">Hide default actions</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, actions from the default
                    category 'EDIT_DOCUMENT_FORM' will not be displayed on the
                    layout in toggled mode. Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>hideDefaultActions</field>
                </fields>
              </widget>
              <widget name="additionalActionsCategory" type="text">
                <labels>
                  <label mode="any">Additional actions category</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The additional actions category to use when
                    displaying the layout in toggled mode.
                  </label>
                </helpLabels>
                <fields>
                  <field>additionalActionsCategory</field>
                </fields>
              </widget>
              <widget name="showEditOptions" type="checkbox">
                <labels>
                  <label mode="any">Show edit options</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, additional edit options
                    (like a textarea for comment to be visible in the document
                    history) will be visible after the layout in toggled (edit)
                    mode. Only visible if value bound to the layout is a
                    document model. Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>showEditOptions</field>
                </fields>
              </widget>
              <widget name="useAjaxForm" type="checkbox">
                <labels>
                  <label mode="any">Use ajax actions</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, actions will be performed
                    using ajax. Note that sometimes, actions will require you to
                    reload the whole page for other elements than the current
                    zone to be re-rendered, so using ajax will not be user
                    friendly in these cases. Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>useAjaxForm</field>
                </fields>
              </widget>
              <widget name="initialActionLabel" type="text">
                <labels>
                  <label mode="any">Initial action label</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The initial action label to display.
                    Defaults to 'action.view.modification' (Edit), is translated
                    when the widget is translated.
                  </label>
                </helpLabels>
                <fields>
                  <field>initialActionLabel</field>
                </fields>
              </widget>
              <widget name="cancelActionLabel" type="text">
                <labels>
                  <label mode="any">Cancel action label</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The toggled action label to display.
                    Defaults to 'command.cancel' (Cancel), is translated when
                    the widget is translated.
                  </label>
                </helpLabels>
                <fields>
                  <field>cancelActionLabel</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/toggleable_layout_with_forms_widget.xhtml
      </property>
    </widgetType>

    <widgetType name="actions">
      <configuration>
        <sinceVersion>5.6</sinceVersion>
        <title>Actions</title>
        <description>
          <p>This widget displays actions.</p>
          <p>
            It needs the list of actions as property "actions".
            <br/>
            Its bound value is used for actions with type "widget".
          </p>
        </description>
        <categories>
          <category>hidden</category>
        </categories>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <layouts mode="any">
            <layout name="generic_actions_widget_type_properties_any">
              <rows>
                <row>
                  <widget>actions</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget>overallDisplay</widget>
                </row>
                <row>
                  <widget>maxActionsNumber</widget>
                </row>
                <row>
                  <widget>headerStyleClass</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>subStyleClass</widget>
                </row>
                <row>
                  <widget>moreMenuLabel</widget>
                </row>
              </rows>
              <widget name="actions" type="actions">
                <labels>
                  <label mode="any">Actions</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The list of actions to display.
                  </label>
                </helpLabels>
                <fields>
                  <field>actions</field>
                </fields>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
              </widget>
              <widget name="headerStyleClass" type="text">
                <labels>
                  <label mode="any">Header style class</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Style class for the header, displaying this
                    widget label.
                  </label>
                </helpLabels>
                <fields>
                  <field>headerStyleClass</field>
                </fields>
              </widget>
              <widget name="overallDisplay" type="selectOneListbox">
                <categories>
                  <category>widgetTypeConf</category>
                </categories>
                <labels>
                  <label mode="any">Overall display</label>
                </labels>
                <fields>
                  <field>overallDisplay</field>
                </fields>
                <selectOptions>
                  <option itemLabel="Vertical block (default)" itemValue=""/>
                  <option itemLabel="Horizontal block" itemValue="horizontal_block"/>
                  <option itemLabel="Menu" itemValue="menu"/>
                </selectOptions>
              </widget>
              <widget name="styleClass" type="text">
                <labels>
                  <label mode="any">Style class</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Style class for the global container div.
                  </label>
                </helpLabels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
              <widget name="subStyleClass" type="text">
                <labels>
                  <label mode="any">Sub style class</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Style class for div containing actions.
                  </label>
                </helpLabels>
                <fields>
                  <field>subStyleClass</field>
                </fields>
              </widget>
              <widget name="actionStyleClass" type="text">
                <labels>
                  <label mode="any">Action style class</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Style class for each action link.
                  </label>
                </helpLabels>
                <fields>
                  <field>subStyleClass</field>
                </fields>
              </widget>
              <widget name="maxActionsNumber" type="int">
                <labels>
                  <label mode="any">Maximum number of actions</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Integer indicating the maximum number of
                    actions to display. When this limit is reached, other
                    actions are displayed in a menu.
                  </label>
                </helpLabels>
                <fields>
                  <field>maxActionsNumber</field>
                </fields>
              </widget>
              <widget name="moreMenuLabel" type="text">
                <labels>
                  <label mode="any">Label for the "more" menu</label>
                </labels>
                <fields>
                  <field>moreMenuLabel</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/generic_actions_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="userVirtualGroups">
      <configuration>
        <sinceVersion>5.5</sinceVersion>
        <title>User virtual groups</title>
        <description>
          This widget displays the user virtual groups.
        </description>
        <categories>
          <category>configuration_not_ready</category>
        </categories>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/user_vgoups_widget_template.xhtml
      </property>
    </widgetType>

  </extension>