Platform Explorer / Nuxeo Platform 2021.26

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-2021.26.5.jar /OSGI-INF/layouts-contrib.xml

Extension Point

Extension point widgettypes of component WebLayoutManager.

Registration Order

9
The registration order represents the order in which this contribution was registered on its target extention point. This will impact the override/merge behaviour when it is implemented on the target service, and is useful for proper customization of existing contributions.
You can influence this order by adding "require" tags in the containing component declaration, to make sure it is resolved after another component (see "Resolution Order" on components).

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>search</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>true</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
                <type>path</type>
              </supportedTypes>
            </fields>
          </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>
              <defaultValues mode="any">
                <property name="width">100%</property>
              </defaultValues>
              <defaultValues mode="edit">
                <property name="minChars">3</property>
              </defaultValues>
              <layouts mode="view">
                <layout name="singleUserSuggestion_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_prefixed</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_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">placeholder</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_groupRestriction
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_prefixed</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionMaxSearchResults
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_containerCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejs</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_suggestionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dropdownOnArrow</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>
              <defaultValues mode="any">
                <property name="width">100%</property>
              </defaultValues>
              <defaultValues mode="edit">
                <property name="minChars">3</property>
              </defaultValues>
              <layouts mode="view">
                <layout name="multipleUsersSuggestion_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_prefixed</widget>
                    </row>
                    <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_displayAction</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">placeholder</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_closeOnSelect</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_orderable</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_groupRestriction
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_prefixed</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestionMaxSearchResults
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_containerCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejs</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_suggestionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_separator</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="suggestOneDirectory">
          <configuration>
            <sinceVersion>5.7.3</sinceVersion>
            <title>Single directory suggestion</title>
            <description>
              <p>Uses Select2 JS library to render a selection / suggestion widget
                where suggestions are loaded from a given directory.
              </p>
            </description>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>view</mode>
              <mode>edit</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <defaultValues mode="any">
                <property name="width">100%</property>
              </defaultValues>
              <defaultValues mode="edit">
                <property name="minChars">0</property>
              </defaultValues>
              <layouts mode="view">
                <layout name="suggestOneDirectory_type_properties_view">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_name</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">directory_localize</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dbl10n</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_labelFieldName
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_containerCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejs</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="suggestOneDirectory_type_properties_edit">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_name</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">required</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">placeholder</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_resultLimit</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_fetch_mode</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">directory_localize</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dbl10n</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_labelFieldName
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_canSelectParent</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_filterParent</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">displayObsoleteEntries</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_containerCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejs</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_suggestionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dropdownOnArrow</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directorySuggestion_canAddNewEntry</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directorySuggestion_addNewEntryFilter</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/suggest_one_directory_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="suggestManyDirectory">
          <configuration>
            <sinceVersion>5.7.3</sinceVersion>
            <title>Multiple directory suggestion</title>
            <description>
              <p>Uses Select2 JS library to render a selection / suggestion widget
                where suggestions are loaded from a given directory.
              </p>
            </description>
            <categories>
              <category>document</category>
            </categories>
            <supportedModes>
              <mode>view</mode>
              <mode>edit</mode>
            </supportedModes>
            <fields>
              <list>true</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <defaultValues mode="any">
                <property name="width">100%</property>
              </defaultValues>
              <defaultValues mode="edit">
                <property name="minChars">0</property>
              </defaultValues>
              <layouts mode="view">
                <layout name="suggestManyDirectory_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_name</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">directory_localize</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dbl10n</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_labelFieldName
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_containerCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejs</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_separator</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="suggestManyDirectory_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_name</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">required</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">placeholder</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_closeOnSelect</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_resultLimit</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_fetch_mode</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_orderable</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">directory_localize</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dbl10n</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directory_labelFieldName
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_canSelectParent</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_filterParent</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">displayObsoleteEntries</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_containerCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejs</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_suggestionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directorySuggestion_canAddNewEntry</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_directorySuggestion_addNewEntryFilter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_separator</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/suggest_many_directory_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="multiplePrefixedUsersSuggestion">
          <configuration>
            <title>Multiple prefixed users/groups suggestion</title>
            <sinceVersion>5.4.2</sinceVersion>
            <deprecatedVersion>5.7.3</deprecatedVersion>
            <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">suggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_requestDelay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_orderable</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_displaySuggestionOnTop
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">userSuggestion_hideSearchTypeText
                      </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>
              <defaultValues mode="any">
                <property name="width">100%</property>
              </defaultValues>
              <defaultValues mode="edit">
                <property name="pageProviderName">default_document_suggestion</property>
                <property name="documentSchemas">dublincore,common</property>
                <property name="minChars">3</property>
                <property name="restoreSeamCtx">true</property>
              </defaultValues>
              <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">placeholder</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_closeOnSelect</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_orderable</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_query</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_queryDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_pageProviderName
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_pageProviderPageSize
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_repository</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_documentSchemas
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_containerCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejs</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_suggestionFormatter
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_additionalParam</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_separator</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>
              <defaultValues mode="any">
                <property name="width">100%</property>
              </defaultValues>
              <defaultValues mode="edit">
                <property name="pageProviderName">default_document_suggestion</property>
                <property name="documentSchemas">dublincore,common</property>
                <property name="minChars">3</property>
                <property name="restoreSeamCtx">true</property>
              </defaultValues>
              <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">placeholder</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_width</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_frequency</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_minChars</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_query</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_queryDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_pageProviderName
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_pageProviderPageSize
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_repository</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">documentSuggestion_documentSchemas
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_containerCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejs</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_suggestionFormatter
                      </widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_additionalParam</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">select2_dropdownOnArrow</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_link">
          <configuration>
            <sinceVersion>6.0</sinceVersion>
            <title>Title with link</title>
            <description>
              <p>
                This widget type displays a link to navigate to a document, as well
                as a download link for the document binary content.
              </p>
              <p>
                It requires the following fields configuration:
                <ul>
                  <li>
                    first field maps the document model, it will be used to
                    display the document link and its title
                  </li>
                  <li>
                    second field maps the unique id to be used for contextual menu
                    (e.g. the document model id)
                  </li>
                  <li>
                    third field maps the displayed link title (can be the document
                    model description)
                  </li>
                  <li>
                    fourth field maps the document model file to be used for
                    download link
                  </li>
                  <li>
                    fifth field maps the file name to be used for download link
                    (can be the document model file name property value)
                  </li>
                </ul>
              </p>
              <p>
                It also requires the following properties configuration:
                <ul>
                  <li>
                    file_schema: the file schema name, used to check whether
                    download link should be displayed (e.g: file)
                  </li>
                  <li>
                    file_property_name: the file property name (e.g file:content)
                  </li>
                </ul>
              </p>
            </description>
            <demo id="title_linkWidget"/>
            <confProperties>
              <property name="sortPropertyName">dc:title</property>
            </confProperties>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <defaultConfiguration>
                <field/>
                <field>ref</field>
                <field>dc.description</field>
                <field>file.content</field>
                <field>file.content.filename</field>
              </defaultConfiguration>
            </fields>
            <categories>
              <category>standalone</category>
            </categories>
            <properties>
              <defaultValues mode="any">
                <property name="hideExternalLink">true</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="title_link_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>tab</widget>
                    </row>
                    <row>
                      <widget>subTab</widget>
                    </row>
                    <row>
                      <widget>target</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">localize</widget>
                    </row>
                    <row>
                      <widget>hideExternalLink</widget>
                    </row>
                    <row>
                      <widget>hideDownloadLink</widget>
                    </row>
                  </rows>
                  <widget name="tab" type="text">
                    <labels>
                      <label mode="any">Tab</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The tab to select when clicking on the
                        document link.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>tab</field>
                    </fields>
                  </widget>
                  <widget name="subTab" type="text">
                    <labels>
                      <label mode="any">Sub Tab</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The sub tab to select when clicking on the
                        document link.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>subTab</field>
                    </fields>
                  </widget>
                  <widget name="target" type="text">
                    <labels>
                      <label mode="any">Target</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The target attribute of the link.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>target</field>
                    </fields>
                  </widget>
                  <widget name="localize" type="checkbox">
                    <categories>
                      <category>widgetTypeConf</category>
                    </categories>
                    <labels>
                      <label mode="any">Localize</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Flag indicating that the title is localized.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>localize</field>
                    </fields>
                  </widget>
                  <widget name="hideExternalLink" type="checkbox">
                    <labels>
                      <label mode="any">Hide External Link</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Flag indicating that the external link, opening the document
                        in a new conversation, must be hidden.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>hideExternalLink</field>
                    </fields>
                  </widget>
                  <widget name="hideDownloadLink" type="checkbox">
                    <labels>
                      <label mode="any">Hide Download Link</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Flag indicating that the download link must be hidden.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>hideDownloadLink</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/listing/listing_title_link_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>standalone</category>
            </categories>
            <properties>
              <layouts mode="any">
                <layout name="title_and_permlink_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">localize</widget>
                    </row>
                  </rows>
                  <widget name="localize" type="checkbox">
                    <categories>
                      <category>widgetTypeConf</category>
                    </categories>
                    <labels>
                      <label mode="any">Localize</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Available since 5.7.1. Flag indicating that
                        the title is localized.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>localize</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </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 : Since 5.5, it also displays the document header related actions. They must be contributed in one of the following categories:

  • <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>search</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>true</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <properties>
              <layouts mode="any">
                <layout name="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 category="widgetTypeConf">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="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>
              <defaultValues mode="any">
                <property name="useAjaxPagination">true</property>
              </defaultValues>
              <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>ajaxReRender</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>
                    <row>
                      <widget>foldable</widget>
                    </row>
                    <row>
                      <widget>foldedByDefault</widget>
                    </row>
                    <!-- not exposed in studio for now -->
                    <row>
                      <widget>foldableBoxStyleClass</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 true since version 7.10.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>useAjaxPagination</field>
                    </fields>
                  </widget>
                  <widget name="ajaxReRender" type="text">
                    <labels>
                      <label mode="any">Ajax reRender</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The given ajax reRender ids will be added to
                        the zones to
                        reRender on some actions (page navigation,
                        result layout
                        selection, selection actions...). Available
                        since 5.7.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>ajaxReRender</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="selectOneListbox">
                    <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>
                    <selectOptions>
                      <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                      <option itemLabel="No" itemValue="false"/>
                      <option itemLabel="Yes" itemValue="true"/>
                    </selectOptions>
                  </widget>
                  <widget name="showRefreshCommand" type="selectOneListbox">
                    <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>
                    <selectOptions>
                      <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                      <option itemLabel="No" itemValue="false"/>
                      <option itemLabel="Yes" itemValue="true"/>
                    </selectOptions>
                  </widget>
                  <widget name="showFilterForm" type="selectOneListbox">
                    <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>
                    <selectOptions>
                      <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                      <option itemLabel="No" itemValue="false"/>
                      <option itemLabel="Yes" itemValue="true"/>
                    </selectOptions>
                  </widget>
                  <widget name="showSyndicationLinks" type="selectOneListbox">
                    <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>
                    <selectOptions>
                      <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                      <option itemLabel="No" itemValue="false"/>
                      <option itemLabel="Yes" itemValue="true"/>
                    </selectOptions>
                  </widget>
                  <widget name="showCSVExport" type="selectOneListbox">
                    <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>
                    <selectOptions>
                      <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                      <option itemLabel="No" itemValue="false"/>
                      <option itemLabel="Yes" itemValue="true"/>
                    </selectOptions>
                  </widget>
                  <widget name="showPDFExport" type="selectOneListbox">
                    <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>
                    <selectOptions>
                      <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                      <option itemLabel="No" itemValue="false"/>
                      <option itemLabel="Yes" itemValue="true"/>
                    </selectOptions>
                  </widget>
                  <widget name="foldable" type="checkbox">
                    <labels>
                      <label mode="any">Foldable</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, the content view will be
                        displayed in a box that can be folded/unfolded in
                        javascript. Ignored if the widget is not marked as handling
                        labels as the header will not be displayed in this case. If
                        the widget label is empty, the content view title will be
                        used. If this title is also empty, a default label will be
                        shown. Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>foldable</field>
                    </fields>
                    <widgetModes>
                      <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="view_reference">view</mode>
                    </widgetModes>
                  </widget>
                  <!-- not exposed in studio for now -->
                  <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="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="contentViewSearchLayout">
          <configuration>
            <sinceVersion>5.7.2</sinceVersion>
            <title>Content view search layout</title>
            <description>
              This widget displays the search layout of a content view.
            </description>
            <categories>
              <category>configuration_not_ready</category>
            </categories>
            <properties>
              <layouts mode="any">
                <layout name="contentView_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>contentViewName</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                  </rows>
                  <widget name="contentViewName" type="selectOneResource">
                    <labels>
                      <label mode="any">Content View name</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Displays the search layout of this content
                        view.
                      </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 search layout.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>styleClass</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/content_view_search_layout_widget.xhtml
          </property>
        </widgetType>

    This widget displays the search layout of a content view.

  • <widgetType name="saveBox">
          <configuration>
            <sinceVersion>5.7</sinceVersion>
            <title>Save box</title>
            <description>
              <p>This widget displays a save box with one input for the title and
                one button to save.
              </p>
    
              <p>The input is mapped to the field of the widget.</p>
    
              <p>It needs the action id as property "actionId" for
                the "save" button.
              </p>
            </description>
            <categories>
              <category>configuration_not_ready</category>
              <!--
                <category>tab_designer</category>
              -->
            </categories>
            <handlingLabels>true</handlingLabels>
            <supportedModes>
              <mode>view</mode>
              <mode>edit</mode>
            </supportedModes>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/save_box_widget.xhtml
          </property>
        </widgetType>
  • <widgetType name="toggleableLayoutWithForms">
          <configuration>
            <sinceVersion>5.6</sinceVersion>
            <title>Toggleable form</title>
            <description>
              This widget displays a form 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>
            <handlingLabels>true</handlingLabels>
            <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>initialLayoutNameDemoPreview</widget>
                    </row>
                    <row>
                      <widget>toggledLayoutName</widget>
                    </row>
                    <row>
                      <widget>toggledLayoutNameDemoPreview</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>canToggleMode</widget>
                    </row>
                    <row>
                      <widget>hideDefaultActions</widget>
                    </row>
                    <row>
                      <widget>additionalActionsCategory</widget>
                    </row>
                    <row>
                      <widget>additionalActionsCategoryDemo</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>foldable</widget>
                    </row>
                    <row>
                      <widget>foldedByDefault</widget>
                    </row>
                    <row>
                      <widget>displayToggleActionInHeader</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>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                    <properties mode="any">
                      <property name="resourceName">layouts</property>
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="initialLayoutNameDemoPreview" type="text">
                    <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>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="edit_demo_preview">view</mode>
                    </widgetModes>
                    <properties mode="any">
                      <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>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                    <properties mode="any">
                      <property name="resourceName">layouts</property>
                    </properties>
                  </widget>
                  <widget name="toggledLayoutNameDemoPreview" type="text">
                    <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>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="edit_demo_preview">view</mode>
                    </widgetModes>
                  </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>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                    <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,
                        #{webActions.checkFilter('canToggleLayoutToEditMode') and
                        currentUser.isMemberOf('togglers_groups')}.
                        Default
                        expression used (includes check for permission 'Write',
                        check if document is in the trash, and check if document is
                        mutable -- not a proxy nor a version):
                        #{webActions.checkFilter('canToggleLayoutToEditMode')}
                      </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>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                  </widget>
                  <widget name="additionalActionsCategoryDemo" 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>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="edit_demo_preview">view</mode>
                    </widgetModes>
                  </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="displayToggleActionInHeader" type="checkbox">
                    <labels>
                      <label mode="any">Display toggle action in header</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true (and widget has a header,
                        because it handles its label), actions will be displayed in
                        the header. This includes the "toggle" action, as well as
                        "save" actions. Only the "toggle" action is hidden from the
                        rendering when it is displayed on top. "Save" actions are
                        shown twice. Available since 5.7, defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>displayToggleActionInHeader</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>
                  <widget name="foldable" type="checkbox">
                    <labels>
                      <label mode="any">Foldable</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, the layout will be
                        displayed
                        in a box that can be folded/unfolded in
                        javascript. Ignored
                        if the widget is not marked as handling
                        labels as the header
                        will not be displayed in this case. If
                        the widget label is
                        empty, a default label will be
                        shown. Available since 5.7,
                        defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>foldable</field>
                    </fields>
                    <widgetModes>
                      <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">
                        Available since 5.7, defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>foldedByDefault</field>
                    </fields>
                    <widgetModes>
                      <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/toggleable_layout_with_forms_widget.xhtml
          </property>
        </widgetType>

    This widget displays a form 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="toggleableDocumentLayoutWithForms">
          <configuration>
            <sinceVersion>5.7.2</sinceVersion>
            <title>Toggleable Document Form</title>
            <description>
              This widget displays the document layouts of a document
              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>
            <handlingLabels>true</handlingLabels>
            <supportedModes>
              <mode>view</mode>
              <mode>edit</mode>
            </supportedModes>
            <properties>
              <layouts mode="any">
                <layout name="toggleableLayoutViewWithForms_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>initialDocumentMode</widget>
                    </row>
                    <row>
                      <widget>toggledDocumentMode</widget>
                    </row>
                    <row>
                      <widget>styleClass</widget>
                    </row>
                    <row>
                      <widget>canToggleMode</widget>
                    </row>
                    <row>
                      <widget>hideDefaultActions</widget>
                    </row>
                    <row>
                      <widget>additionalActionsCategory</widget>
                    </row>
                    <row>
                      <widget>additionalActionsCategoryDemo</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>foldable</widget>
                    </row>
                    <row>
                      <widget>foldedByDefault</widget>
                    </row>
                    <row>
                      <widget>displayToggleActionInHeader</widget>
                    </row>
                    <row>
                      <widget>initialActionLabel</widget>
                    </row>
                    <row>
                      <widget>cancelActionLabel</widget>
                    </row>
                    <row>
                      <widget>defaultLayout</widget>
                    </row>
                    <row>
                      <widget>template</widget>
                    </row>
                  </rows>
                  <widget name="initialDocumentMode" type="text">
                    <labels>
                      <label mode="any">Initial document mode</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The initial document mode to use.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>initialDocumentMode</field>
                    </fields>
                  </widget>
                  <widget name="toggledDocumentMode" type="text">
                    <labels>
                      <label mode="any">Toggled document mode</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The toggled document mode to use.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>toggledDocumentMode</field>
                    </fields>
                  </widget>
                  <widget name="defaultLayout" type="selectOneResource">
                    <labels>
                      <label mode="any">Default layout</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The default layout to use if no layout are defined
                        for the given document mode.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>defaultLayout</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')}.
                        Default
                        expression used:
                        #{webActions.checkFilter('canToggleLayoutToEditMode')}
                      </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>
                    <widgetModes>
                      <mode value="edit_demo_preview">hidden</mode>
                    </widgetModes>
                  </widget>
                  <widget name="additionalActionsCategoryDemo" 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>
                    <widgetModes>
                      <mode value="any">hidden</mode>
                      <mode value="edit_demo_preview">view</mode>
                    </widgetModes>
                  </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="displayToggleActionInHeader" type="checkbox">
                    <labels>
                      <label mode="any">Display toggle action in header</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true (and widget has a header,
                        because it handles its label), actions will be displayed in
                        the header. This includes the "toggle" action, as well as
                        "save" actions. Only the "toggle" action is hidden from the
                        rendering when it is displayed on top. "Save" actions are
                        shown twice. Available since 5.7, defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>displayToggleActionInHeader</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>
                  <widget name="foldable" type="checkbox">
                    <labels>
                      <label mode="any">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. Available since 5.7, defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>foldable</field>
                    </fields>
                    <widgetModes>
                      <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">
                        Available since 5.7, defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>foldedByDefault</field>
                    </fields>
                    <widgetModes>
                      <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/toggleable_document_layout_with_forms_widget.xhtml
          </property>
        </widgetType>

    This widget displays the document layouts of a document 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="documentLayout">
          <configuration>
            <sinceVersion>6.0</sinceVersion>
            <title>Document Layouts</title>
            <description>
              This widget displays the document layouts of a document
              for the given mode.
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>false</containingForm>
            <handlingLabels>true</handlingLabels>
            <supportedModes>
              <mode>view</mode>
              <mode>edit</mode>
            </supportedModes>
            <properties>
              <layouts mode="any">
                <layout name="documentLayoutView_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>mode</widget>
                    </row>
                    <row>
                      <widget>documentMode</widget>
                    </row>
                    <row>
                      <widget>template</widget>
                    </row>
                    <row>
                      <widget>defaultLayout</widget>
                    </row>
                    <row>
                      <widget>canToggleMode</widget>
                    </row>
                  </rows>
                  <widget name="mode" type="text">
                    <labels>
                      <label mode="any">Mode</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The layout mode to use.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>mode</field>
                    </fields>
                  </widget>
                  <widget name="documentMode" type="text">
                    <labels>
                      <label mode="any">Document mode</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The document mode to use.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>documentMode</field>
                    </fields>
                  </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="defaultLayout" type="selectOneResource">
                    <labels>
                      <label mode="any">Default layout</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The default layout to use if no layout are defined
                        for the given document mode.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>defaultLayout</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">layouts</property>
                      <property name="required">true</property>
                    </properties>
                  </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')}.
                        Default
                        expression used:
                        #{webActions.checkFilter('canToggleLayoutToEditMode')}
                      </label>
                    </helpLabels>
                    <fields>
                      <field>canToggleMode</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/document_layout_widget.xhtml
          </property>
        </widgetType>

    This widget displays the document layouts of a document for the given mode.

  • <widgetType name="documentActions">
          <configuration>
            <sinceVersion>5.7</sinceVersion>
            <title>Form actions</title>
            <description>
              <p>This widget displays actions filtered on the document given as
                field mapping.
              </p>
              <p>
                It will display actions in the category given in the 'category'
                property. The widget label and help label will be displayed above
                the actions.
              </p>
              <p>
                This widget requires to be surrounded by a form, so if it displays
                fancybox actions for instance, their popup content cannot contain
                another form.
              </p>
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>false</containingForm>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <defaultValues mode="any">
                <property name="trackCurrentAction">true</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="documentActions_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">actions_category</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_overallDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_maxActionsNumber</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_moreMenuLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_disableFiltered</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/actions/document_actions_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="currentDocumentActions">
          <configuration>
            <sinceVersion>5.7</sinceVersion>
            <deprecatedVersion>5.7.3</deprecatedVersion>
            <title>Form actions</title>
            <description>
              <p>This widget displays actions filtered on the current document.</p>
              <p>Since 5.7.3, use "documentActions" instead.</p>
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>false</containingForm>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <defaultValues mode="any">
                <property name="trackCurrentAction">true</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="currentDocumentActions_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">actions_category</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_overallDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_maxActionsNumber</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_moreMenuLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_disableFiltered</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/actions/document_actions_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="documentActionsWithForms">
          <configuration>
            <sinceVersion>5.7</sinceVersion>
            <title>Toolbar actions</title>
            <description>
              <p>This widget displays actions filtered on the document given as
                field mapping, and surrounds them by a form.
              </p>
              <p>
                It will display actions in the category given in the 'category'
                property. The widget label and help label will be displayed above
                the actions.
              </p>
              <p>
                The fact that actions are surrounded by their own form makes it
                possible to use fancybox actions for instance, whose popup content
                would use a different form.
              </p>
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>true</containingForm>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <defaultValues mode="any">
                <property name="trackCurrentAction">true</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="documentActionsWithForms_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">actions_category</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_overallDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_maxActionsNumber</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_moreMenuLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_disableFiltered</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/actions/document_actions_with_forms_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="currentDocumentActionsWithForms">
          <configuration>
            <sinceVersion>5.7</sinceVersion>
            <deprecatedVersion>5.7.3</deprecatedVersion>
            <title>Toolbar actions</title>
            <description>
              <p>This widget displays actions filtered on the current document, and
                surrounds them by a form.
              </p>
              <p>Since 5.7.3, use "documentActionsWithForms" instead.</p>
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>true</containingForm>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <defaultValues mode="any">
                <property name="trackCurrentAction">true</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="currentDocumentActionsWithForms_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">actions_category</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_overallDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_maxActionsNumber</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_moreMenuLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_disableFiltered</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/actions/document_actions_with_forms_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="documentAction">
          <configuration>
            <sinceVersion>5.7</sinceVersion>
            <title>Form action</title>
            <description>
              <p>This widget displays an action filtered on context using document
                given as field mapping.
              </p>
              <p>
                It needs the action id as property "actionId".
                <br/>
                Its bound value is used for actions with type "widget".
              </p>
              <p>
                This widget requires to be surrounded by a form, so if it displays
                fancybox actions for instance, their popup content cannot contain
                another form.
              </p>
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>false</containingForm>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <defaultValues mode="any">
                <property name="trackCurrentAction">true</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="documentAction_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">actions_actionId</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_disableFiltered</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/actions/document_action_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="currentDocumentAction">
          <configuration>
            <sinceVersion>5.7</sinceVersion>
            <deprecatedVersion>5.7.3</deprecatedVersion>
            <title>Form action</title>
            <description>
              <p>This widget displays an action filtered on current document context
              </p>
              <p>Since 5.7.3, use "documentAction" instead.</p>
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>false</containingForm>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <defaultValues mode="any">
                <property name="trackCurrentAction">true</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="currentDocumentAction_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">actions_actionId</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_addForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_disableFiltered</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/actions/document_action_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="documentActionWithForms">
          <configuration>
            <sinceVersion>5.7</sinceVersion>
            <title>Toolbar action</title>
            <description>
              <p>This widget displays an action filtered on current document context
              </p>
              <p>
                It needs the action id as property "actionId".
                <br/>
                Its bound value is used for actions with type "widget".
              </p>
              <p>
                The fact that action is surrounded by its own form makes it
                possible to use fancybox actions for instance, whose popup content
                would use a different form.
              </p>
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>true</containingForm>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <defaultValues mode="any">
                <property name="trackCurrentAction">true</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="documentActionWithForms_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">actions_actionId</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_disableFiltered</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/actions/document_action_with_forms_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="currentDocumentActionWithForms">
          <configuration>
            <sinceVersion>5.7</sinceVersion>
            <deprecatedVersion>5.7.3</deprecatedVersion>
            <title>Toolbar action</title>
            <description>
              <p>This widget displays an action filtered on current document context
              </p>
              <p>Since 5.7.3, use "documentActionWithForms" instead.</p>
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>true</containingForm>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <defaultValues mode="any">
                <property name="trackCurrentAction">true</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="currentDocumentActionWithForms_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">actions_actionId</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_disableFiltered</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/actions/document_action_with_forms_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="documentTabsWithForms">
          <configuration>
            <sinceVersion>5.7.3</sinceVersion>
            <title>Tabs</title>
            <description>
              <p>This widget displays tabs filtered on current document context</p>
              <p>
                It needs the action id as property "actionId".
                <br/>
                Its bound value is used for actions with type "widget".
              </p>
              <p>
                The fact that action is surrounded by its own form makes it
                possible to use fancybox actions for instance, whose popup content
                would use a different form.
              </p>
            </description>
            <categories>
              <category>tab_designer</category>
            </categories>
            <fields>
              <defaultConfiguration>
                <field/>
              </defaultConfiguration>
            </fields>
            <containingForm>true</containingForm>
            <supportedModes>
              <mode>view</mode>
            </supportedModes>
            <properties>
              <defaultValues mode="any">
                <property name="trackCurrentAction">false</property>
              </defaultValues>
              <layouts mode="any">
                <layout name="documentTabsWithForms_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">tabs_category</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">ajaxReRender</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actionsDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">actions_styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">tabs_overallDisplay</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">tabs_hideSingleTab</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">tabs_link_view</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">tabs_link_pattern</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/actions/document_tabs_with_forms_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>

    This widget displays the user virtual groups.

  • <widgetType name="datetimeRange">
          <configuration>
            <title>Datetime range</title>
            <documentation>
              Widget used to search on a date range.
              Two fields are required:
              <ul>
                <li>A field to map the min date</li>
                <li>A field to map the max date</li>
              </ul>
            </documentation>
            <sinceVersion>5.7</sinceVersion>
            <categories>
              <category>search</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>date</type>
              </supportedTypes>
            </fields>
            <properties>
              <defaultValues mode="edit">
                <property name="startDefaultTime">00:00:00</property>
                <property name="endDefaultTime">23:59:59</property>
              </defaultValues>
              <layouts mode="view">
                <layout name="daterange_widget_type_properties_view">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">datetime_pattern</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">datetime_timeZone</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">styleClass</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="daterange_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">required</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">datetime_format</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">datetime_locale</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">styleClass</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">datetime_timeZone</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">datetime_triggerImg</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">datetime_triggerLabel</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">datetime_triggerStyleClass</widget>
                    </row>
                    <row>
                      <widget>datetimeRange_startDefaultTime</widget>
                    </row>
                    <row>
                      <widget>datetimeRange_endDefaultTime</widget>
                    </row>
                  </rows>
                  <widget name="datetimeRange_startDefaultTime" type="text">
                    <labels>
                      <label mode="any">Datetime Range Start Default Time</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The start default time, ignore if time is
                        not taken into account in the date pattern/format. Defaults
                        to 00:00:00, available since 7.1.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>startDefaultTime</field>
                    </fields>
                    <controls mode="any">
                      <control name="sinceVersion">7.1</control>
                    </controls>
                  </widget>
                  <widget name="datetimeRange_endDefaultTime" type="text">
                    <labels>
                      <label mode="any">Datetime Range End Default Time</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        The end default time, ignore if time is
                        not taken into account in the date pattern/format. Defaults
                        to 23:59:59, available since 7.1.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>endDefaultTime</field>
                    </fields>
                    <controls mode="any">
                      <control name="sinceVersion">7.1</control>
                    </controls>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/date_range_widget_template.xhtml
          </property>
        </widgetType>

    Widget used to search on a date range. Two fields are required:

  • <widgetType name="path">
          <configuration>
            <title>Path</title>
            <documentation>
              The path widget displays a popup browser in the document
              hierarchy.
            </documentation>
            <sinceVersion>5.7</sinceVersion>
            <supportedModes>
              <mode>edit</mode>
            </supportedModes>
            <fields>
              <list>false</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
                <type>path</type>
              </supportedTypes>
              <defaultTypes>
                <type>path</type>
              </defaultTypes>
            </fields>
            <categories>
              <category>document</category>
            </categories>
            <properties>
              <layouts mode="edit">
                <layout name="path_widget_type_properties">
                  <rows>
                    <row>
                      <widget category="widgetTypeConf">required</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">styleClass</widget>
                    </row>
                  </rows>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">/widgets/search_path_widget.xhtml</property>
        </widgetType>

    The path widget displays a popup browser in the document hierarchy.

  • <widgetType name="dropZone">
          <configuration>
            <sinceVersion>5.8</sinceVersion>
            <title>Drop zone</title>
            <description>
              <p>
                The dropZone widget wraps its subwidgets with a div acting as
                the
                drop zone to be able to drop files inside it.
              </p>
              <p>
                More information is available on the
                <a href="http://doc.nuxeo.com/x/c4ao" target="_blank">Drag and
                  Drop Service
                  documentation</a>
                .
              </p>
            </description>
            <categories>
              <category>decoration</category>
            </categories>
            <supportedModes>
              <mode>edit</mode>
              <mode>view</mode>
            </supportedModes>
            <acceptingSubWidgets>true</acceptingSubWidgets>
            <properties>
              <layouts mode="edit">
                <layout name="dropZone_widget_type_properties">
                  <rows>
                    <row>
                      <widget>dropContext</widget>
                    </row>
                    <row>
                      <widget category="widgetTypeConf">styleClass</widget>
                    </row>
                    <row>
                      <widget>isEmpty</widget>
                    </row>
                    <row>
                      <widget>emptyMessage</widget>
                    </row>
                    <row>
                      <widget>cannotDrop</widget>
                    </row>
                    <row>
                      <widget>cannotDropMessage</widget>
                    </row>
                  </rows>
                  <widget name="dropContext" type="text">
                    <labels>
                      <label mode="any">Drop context</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">The drop context is a marker used to
                        identify which action will be called on drop. Actions with
                        the given category will be be taken into account. Their id
                        should correspond to the operation or automation chain
                        identifier.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>dropContext</field>
                    </fields>
                    <properties mode="any">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="isEmpty" type="text">
                    <labels>
                      <label mode="any">Is empty</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">Expression resolving to a boolean stating if
                        the drop zone is empty. If it resolves to true, subwidgets
                        are not displayed.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>isEmpty</field>
                    </fields>
                  </widget>
                  <widget name="emptyMessage" type="text">
                    <labels>
                      <label mode="any">Empty message</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">Message to display if the drop zone is
                        empty.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>emptyMessage</field>
                    </fields>
                  </widget>
                  <widget name="cannotDrop" type="text">
                    <labels>
                      <label mode="any">Cannot drop</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">Expression resolving to a boolean stating if
                        user should not be able to drop elements inside the drop
                        zone (because user does not have enough rights to create
                        documents, for instance).
                      </label>
                    </helpLabels>
                    <fields>
                      <field>cannotDrop</field>
                    </fields>
                  </widget>
                  <widget name="cannotDropMessage" type="text">
                    <labels>
                      <label mode="any">Cannot drop message</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">Message to display if user cannot drop items
                        in the drop zone.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>cannotDropMessage</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
            </properties>
          </configuration>
          <handler-class>
            org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
          </handler-class>
          <property name="template">
            /widgets/drop_zone_widget_template.xhtml
          </property>
        </widgetType>
  • <widgetType name="chainedDirectory">
          <configuration>
            <title>Chained Vocabulary</title>
            <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="any">
                <layout name="chainedDirectory_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>childDirectory</widget>
                    </row>
                    <row>
                      <widget>localize</widget>
                    </row>
                  </rows>
                  <widget name="childDirectory" type="selectOneResource">
                    <labels>
                      <label mode="any">Vocabulary</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Select the child or hierarchical directory
                        mapped.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>childDirectory</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">child_vocabularies</property>
                    </properties>
                    <properties widgetMode="edit">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="localize" type="checkbox">
                    <labels>
                      <label mode="any">Localize</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">If true, labels will be localized.</label>
                    </helpLabels>
                    <fields>
                      <field>localize</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="chainedDirectory_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>allowBranchSelection</widget>
                    </row>
                    <row>
                      <widget>on2rows</widget>
                    </row>
                    <row>
                      <widget>directory_ordering</widget>
                    </row>
                  </rows>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="allowBranchSelection" type="checkbox">
                    <labels>
                      <label mode="any">Allow incomplete selection</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, user cannot select only the
                        first item in the selection, he will have to select a second
                        item too. Defaults to false, available since 5.6.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>allowBranchSelection</field>
                    </fields>
                  </widget>
                  <widget name="on2rows" type="checkbox">
                    <labels>
                      <label mode="any">On 2 rows</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If true, display the selectors on two rows.
                        Defaults to
                        false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>on2rows</field>
                    </fields>
                  </widget>
                  <widget name="directory_ordering" type="selectOneListbox">
                    <categories>
                      <category>widgetTypeConf</category>
                    </categories>
                    <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/chain_monoselect_2levels_widget.xhtml
          </property>
        </widgetType>
  • <widgetType name="multiChainedDirectory">
          <configuration>
            <title>Multiple chained Vocabulary</title>
            <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="any">
                <layout name="multiChainedDirectory_widget_type_properties_any">
                  <rows>
                    <row>
                      <widget>childDirectory</widget>
                    </row>
                    <row>
                      <widget>localize</widget>
                    </row>
                  </rows>
                  <widget name="childDirectory" type="selectOneResource">
                    <labels>
                      <label mode="any">Vocabulary</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        Select the child or hierarchical directory
                        mapped.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>childDirectory</field>
                    </fields>
                    <properties mode="any">
                      <property name="resourceName">child_vocabularies</property>
                    </properties>
                    <properties widgetMode="edit">
                      <property name="required">true</property>
                    </properties>
                  </widget>
                  <widget name="localize" type="checkbox">
                    <labels>
                      <label mode="any">Localize</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">If true, labels will be localized.</label>
                    </helpLabels>
                    <fields>
                      <field>localize</field>
                    </fields>
                  </widget>
                </layout>
              </layouts>
              <layouts mode="edit">
                <layout name="multiChainedDirectory_widget_type_properties_edit">
                  <rows>
                    <row>
                      <widget>required</widget>
                    </row>
                    <row>
                      <widget>allowBranchSelection</widget>
                    </row>
                    <row>
                      <widget>on2rows</widget>
                    </row>
                    <row>
                      <widget>directory_ordering</widget>
                    </row>
                  </rows>
                  <widget name="required" type="checkbox">
                    <labels>
                      <label mode="any">Required</label>
                    </labels>
                    <fields>
                      <field>required</field>
                    </fields>
                  </widget>
                  <widget name="allowBranchSelection" type="checkbox">
                    <labels>
                      <label mode="any">Allow incomplete selection</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If set to true, user cannot select only the
                        first item in the selection, he will have to select a second
                        item too. Defaults to false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>allowBranchSelection</field>
                    </fields>
                  </widget>
                  <widget name="on2rows" type="checkbox">
                    <labels>
                      <label mode="any">On 2 rows</label>
                    </labels>
                    <helpLabels>
                      <label mode="any">
                        If true, display the selectors on two rows.
                        Defaults to
                        false.
                      </label>
                    </helpLabels>
                    <fields>
                      <field>on2rows</field>
                    </fields>
                  </widget>
                  <widget name="directory_ordering" type="selectOneListbox">
                    <categories>
                      <category>widgetTypeConf</category>
                    </categories>
                    <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/chain_multiselect_2levels_widget.xhtml
          </property>
        </widgetType>
  • <widgetType name="shuttle">
          <configuration>
            <title>Shuttle widget</title>
            <sinceVersion>6.0</sinceVersion>
            <supportedModes>
              <mode>edit</mode>
            </supportedModes>
            <fields>
              <list>true</list>
              <complex>false</complex>
              <supportedTypes>
                <type>string</type>
              </supportedTypes>
            </fields>
            <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/shuttle_widget_template.xhtml
          </property>
        </widgetType>

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>search</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>true</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
            <type>path</type>
          </supportedTypes>
        </fields>
      </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>
          <defaultValues mode="any">
            <property name="width">100%</property>
          </defaultValues>
          <defaultValues mode="edit">
            <property name="minChars">3</property>
          </defaultValues>
          <layouts mode="view">
            <layout name="singleUserSuggestion_widget_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_prefixed</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_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">placeholder</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_groupRestriction
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_prefixed</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionMaxSearchResults
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_containerCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejs</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_suggestionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dropdownOnArrow</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>
          <defaultValues mode="any">
            <property name="width">100%</property>
          </defaultValues>
          <defaultValues mode="edit">
            <property name="minChars">3</property>
          </defaultValues>
          <layouts mode="view">
            <layout name="multipleUsersSuggestion_widget_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_prefixed</widget>
                </row>
                <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_displayAction</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">placeholder</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_closeOnSelect</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_orderable</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionSearchType</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_groupRestriction
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_prefixed</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestionMaxSearchResults
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_displayEmailInSuggestion
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_containerCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejs</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_suggestionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_separator</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="suggestOneDirectory">
      <configuration>
        <sinceVersion>5.7.3</sinceVersion>
        <title>Single directory suggestion</title>
        <description>
          <p>Uses Select2 JS library to render a selection / suggestion widget
            where suggestions are loaded from a given directory.
          </p>
        </description>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>view</mode>
          <mode>edit</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <defaultValues mode="any">
            <property name="width">100%</property>
          </defaultValues>
          <defaultValues mode="edit">
            <property name="minChars">0</property>
          </defaultValues>
          <layouts mode="view">
            <layout name="suggestOneDirectory_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">select2_directory_name</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">directory_localize</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dbl10n</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directory_labelFieldName
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_containerCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejs</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                </row>
              </rows>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="suggestOneDirectory_type_properties_edit">
              <rows>
                <row>
                  <widget category="widgetTypeConf">select2_directory_name</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">placeholder</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_resultLimit</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directory_fetch_mode</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">directory_localize</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dbl10n</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directory_labelFieldName
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_canSelectParent</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_filterParent</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">displayObsoleteEntries</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_containerCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejs</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_suggestionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dropdownOnArrow</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directorySuggestion_canAddNewEntry</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directorySuggestion_addNewEntryFilter</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/suggest_one_directory_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="suggestManyDirectory">
      <configuration>
        <sinceVersion>5.7.3</sinceVersion>
        <title>Multiple directory suggestion</title>
        <description>
          <p>Uses Select2 JS library to render a selection / suggestion widget
            where suggestions are loaded from a given directory.
          </p>
        </description>
        <categories>
          <category>document</category>
        </categories>
        <supportedModes>
          <mode>view</mode>
          <mode>edit</mode>
        </supportedModes>
        <fields>
          <list>true</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <defaultValues mode="any">
            <property name="width">100%</property>
          </defaultValues>
          <defaultValues mode="edit">
            <property name="minChars">0</property>
          </defaultValues>
          <layouts mode="view">
            <layout name="suggestManyDirectory_widget_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">select2_directory_name</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">directory_localize</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dbl10n</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directory_labelFieldName
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_containerCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejs</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_separator</widget>
                </row>
              </rows>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="suggestManyDirectory_widget_type_properties_edit">
              <rows>
                <row>
                  <widget category="widgetTypeConf">select2_directory_name</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">placeholder</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_closeOnSelect</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_resultLimit</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directory_fetch_mode</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_orderable</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">directory_localize</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dbl10n</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directory_labelFieldName
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_canSelectParent</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_filterParent</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">displayObsoleteEntries</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_containerCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejs</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_suggestionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directorySuggestion_canAddNewEntry</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_directorySuggestion_addNewEntryFilter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_separator</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/suggest_many_directory_widget_template.xhtml
      </property>
    </widgetType>

    <!-- deprecated since 5.7.3, use a multipleUsersSuggestion with "prefixed" property
      = true now -->
    <widgetType name="multiplePrefixedUsersSuggestion">
      <configuration>
        <title>Multiple prefixed users/groups suggestion</title>
        <sinceVersion>5.4.2</sinceVersion>
        <deprecatedVersion>5.7.3</deprecatedVersion>
        <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">suggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_requestDelay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_orderable</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_displaySuggestionOnTop
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">userSuggestion_hideSearchTypeText
                  </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>
          <defaultValues mode="any">
            <property name="width">100%</property>
          </defaultValues>
          <defaultValues mode="edit">
            <property name="pageProviderName">default_document_suggestion</property>
            <property name="documentSchemas">dublincore,common</property>
            <property name="minChars">3</property>
            <property name="restoreSeamCtx">true</property>
          </defaultValues>
          <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">placeholder</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_closeOnSelect</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_orderable</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_query</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_queryDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_pageProviderName
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_pageProviderPageSize
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_repository</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_documentSchemas
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_containerCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejs</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_suggestionFormatter
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_additionalParam</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_separator</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>
          <defaultValues mode="any">
            <property name="width">100%</property>
          </defaultValues>
          <defaultValues mode="edit">
            <property name="pageProviderName">default_document_suggestion</property>
            <property name="documentSchemas">dublincore,common</property>
            <property name="minChars">3</property>
            <property name="restoreSeamCtx">true</property>
          </defaultValues>
          <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">placeholder</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_width</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_frequency</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_minChars</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_query</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_queryDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_pageProviderName
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_pageProviderPageSize
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_repository</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">documentSuggestion_documentSchemas
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_helpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">suggestion_hideHelpLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_containerCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dropdownCssClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejs</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_inlinejsDemoPreview</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_selectionFormatter</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_suggestionFormatter
                  </widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_additionalParam</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">select2_dropdownOnArrow</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_link">
      <configuration>
        <sinceVersion>6.0</sinceVersion>
        <title>Title with link</title>
        <description>
          <p>
            This widget type displays a link to navigate to a document, as well
            as a download link for the document binary content.
          </p>
          <p>
            It requires the following fields configuration:
            <ul>
              <li>
                first field maps the document model, it will be used to
                display the document link and its title
              </li>
              <li>
                second field maps the unique id to be used for contextual menu
                (e.g. the document model id)
              </li>
              <li>
                third field maps the displayed link title (can be the document
                model description)
              </li>
              <li>
                fourth field maps the document model file to be used for
                download link
              </li>
              <li>
                fifth field maps the file name to be used for download link
                (can be the document model file name property value)
              </li>
            </ul>
          </p>
          <p>
            It also requires the following properties configuration:
            <ul>
              <li>
                file_schema: the file schema name, used to check whether
                download link should be displayed (e.g: file)
              </li>
              <li>
                file_property_name: the file property name (e.g file:content)
              </li>
            </ul>
          </p>
        </description>
        <demo id="title_linkWidget"/>
        <confProperties>
          <property name="sortPropertyName">dc:title</property>
        </confProperties>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <defaultConfiguration>
            <field/>
            <field>ref</field>
            <field>dc.description</field>
            <field>file.content</field>
            <field>file.content.filename</field>
          </defaultConfiguration>
        </fields>
        <categories>
          <category>standalone</category>
        </categories>
        <properties>
          <defaultValues mode="any">
            <property name="hideExternalLink">true</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="title_link_widget_type_properties_any">
              <rows>
                <row>
                  <widget>tab</widget>
                </row>
                <row>
                  <widget>subTab</widget>
                </row>
                <row>
                  <widget>target</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">localize</widget>
                </row>
                <row>
                  <widget>hideExternalLink</widget>
                </row>
                <row>
                  <widget>hideDownloadLink</widget>
                </row>
              </rows>
              <widget name="tab" type="text">
                <labels>
                  <label mode="any">Tab</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The tab to select when clicking on the
                    document link.
                  </label>
                </helpLabels>
                <fields>
                  <field>tab</field>
                </fields>
              </widget>
              <widget name="subTab" type="text">
                <labels>
                  <label mode="any">Sub Tab</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The sub tab to select when clicking on the
                    document link.
                  </label>
                </helpLabels>
                <fields>
                  <field>subTab</field>
                </fields>
              </widget>
              <widget name="target" type="text">
                <labels>
                  <label mode="any">Target</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The target attribute of the link.
                  </label>
                </helpLabels>
                <fields>
                  <field>target</field>
                </fields>
              </widget>
              <widget name="localize" type="checkbox">
                <categories>
                  <category>widgetTypeConf</category>
                </categories>
                <labels>
                  <label mode="any">Localize</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Flag indicating that the title is localized.
                  </label>
                </helpLabels>
                <fields>
                  <field>localize</field>
                </fields>
              </widget>
              <widget name="hideExternalLink" type="checkbox">
                <labels>
                  <label mode="any">Hide External Link</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Flag indicating that the external link, opening the document
                    in a new conversation, must be hidden.
                  </label>
                </helpLabels>
                <fields>
                  <field>hideExternalLink</field>
                </fields>
              </widget>
              <widget name="hideDownloadLink" type="checkbox">
                <labels>
                  <label mode="any">Hide Download Link</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Flag indicating that the download link must be hidden.
                  </label>
                </helpLabels>
                <fields>
                  <field>hideDownloadLink</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/listing/listing_title_link_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>standalone</category>
        </categories>
        <properties>
          <layouts mode="any">
            <layout name="title_and_permlink_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">localize</widget>
                </row>
              </rows>
              <widget name="localize" type="checkbox">
                <categories>
                  <category>widgetTypeConf</category>
                </categories>
                <labels>
                  <label mode="any">Localize</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Available since 5.7.1. Flag indicating that
                    the title is localized.
                  </label>
                </helpLabels>
                <fields>
                  <field>localize</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </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>search</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>true</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <properties>
          <layouts mode="any">
            <layout name="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 category="widgetTypeConf">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="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>
          <defaultValues mode="any">
            <property name="useAjaxPagination">true</property>
          </defaultValues>
          <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>ajaxReRender</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>
                <row>
                  <widget>foldable</widget>
                </row>
                <row>
                  <widget>foldedByDefault</widget>
                </row>
                <!-- not exposed in studio for now -->
                <row>
                  <widget>foldableBoxStyleClass</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 true since version 7.10.
                  </label>
                </helpLabels>
                <fields>
                  <field>useAjaxPagination</field>
                </fields>
              </widget>
              <widget name="ajaxReRender" type="text">
                <labels>
                  <label mode="any">Ajax reRender</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The given ajax reRender ids will be added to
                    the zones to
                    reRender on some actions (page navigation,
                    result layout
                    selection, selection actions...). Available
                    since 5.7.
                  </label>
                </helpLabels>
                <fields>
                  <field>ajaxReRender</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="selectOneListbox">
                <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>
                <selectOptions>
                  <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                  <option itemLabel="No" itemValue="false"/>
                  <option itemLabel="Yes" itemValue="true"/>
                </selectOptions>
              </widget>
              <widget name="showRefreshCommand" type="selectOneListbox">
                <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>
                <selectOptions>
                  <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                  <option itemLabel="No" itemValue="false"/>
                  <option itemLabel="Yes" itemValue="true"/>
                </selectOptions>
              </widget>
              <widget name="showFilterForm" type="selectOneListbox">
                <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>
                <selectOptions>
                  <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                  <option itemLabel="No" itemValue="false"/>
                  <option itemLabel="Yes" itemValue="true"/>
                </selectOptions>
              </widget>
              <widget name="showSyndicationLinks" type="selectOneListbox">
                <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>
                <selectOptions>
                  <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                  <option itemLabel="No" itemValue="false"/>
                  <option itemLabel="Yes" itemValue="true"/>
                </selectOptions>
              </widget>
              <widget name="showCSVExport" type="selectOneListbox">
                <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>
                <selectOptions>
                  <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                  <option itemLabel="No" itemValue="false"/>
                  <option itemLabel="Yes" itemValue="true"/>
                </selectOptions>
              </widget>
              <widget name="showPDFExport" type="selectOneListbox">
                <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>
                <selectOptions>
                  <option itemLabel="(Default value from content view configuration)" itemValue=""/>
                  <option itemLabel="No" itemValue="false"/>
                  <option itemLabel="Yes" itemValue="true"/>
                </selectOptions>
              </widget>
              <widget name="foldable" type="checkbox">
                <labels>
                  <label mode="any">Foldable</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, the content view will be
                    displayed in a box that can be folded/unfolded in
                    javascript. Ignored if the widget is not marked as handling
                    labels as the header will not be displayed in this case. If
                    the widget label is empty, the content view title will be
                    used. If this title is also empty, a default label will be
                    shown. Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>foldable</field>
                </fields>
                <widgetModes>
                  <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="view_reference">view</mode>
                </widgetModes>
              </widget>
              <!-- not exposed in studio for now -->
              <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="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="contentViewSearchLayout">
      <configuration>
        <sinceVersion>5.7.2</sinceVersion>
        <title>Content view search layout</title>
        <description>
          This widget displays the search layout of a content view.
        </description>
        <categories>
          <category>configuration_not_ready</category>
        </categories>
        <properties>
          <layouts mode="any">
            <layout name="contentView_widget_type_properties_any">
              <rows>
                <row>
                  <widget>contentViewName</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
              </rows>
              <widget name="contentViewName" type="selectOneResource">
                <labels>
                  <label mode="any">Content View name</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Displays the search layout of this content
                    view.
                  </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 search layout.
                  </label>
                </helpLabels>
                <fields>
                  <field>styleClass</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/content_view_search_layout_widget.xhtml
      </property>
    </widgetType>

    <widgetType name="saveBox">
      <configuration>
        <sinceVersion>5.7</sinceVersion>
        <title>Save box</title>
        <description>
          <p>This widget displays a save box with one input for the title and
            one button to save.
          </p>

          <p>The input is mapped to the field of the widget.</p>

          <p>It needs the action id as property "actionId" for
            the "save" button.
          </p>
        </description>
        <categories>
          <category>configuration_not_ready</category>
          <!--
            <category>tab_designer</category>
          -->
        </categories>
        <handlingLabels>true</handlingLabels>
        <supportedModes>
          <mode>view</mode>
          <mode>edit</mode>
        </supportedModes>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/save_box_widget.xhtml
      </property>
    </widgetType>

    <widgetType name="toggleableLayoutWithForms">
      <configuration>
        <sinceVersion>5.6</sinceVersion>
        <title>Toggleable form</title>
        <description>
          This widget displays a form 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>
        <handlingLabels>true</handlingLabels>
        <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>initialLayoutNameDemoPreview</widget>
                </row>
                <row>
                  <widget>toggledLayoutName</widget>
                </row>
                <row>
                  <widget>toggledLayoutNameDemoPreview</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>canToggleMode</widget>
                </row>
                <row>
                  <widget>hideDefaultActions</widget>
                </row>
                <row>
                  <widget>additionalActionsCategory</widget>
                </row>
                <row>
                  <widget>additionalActionsCategoryDemo</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>foldable</widget>
                </row>
                <row>
                  <widget>foldedByDefault</widget>
                </row>
                <row>
                  <widget>displayToggleActionInHeader</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>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
                <properties mode="any">
                  <property name="resourceName">layouts</property>
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="initialLayoutNameDemoPreview" type="text">
                <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>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="edit_demo_preview">view</mode>
                </widgetModes>
                <properties mode="any">
                  <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>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
                <properties mode="any">
                  <property name="resourceName">layouts</property>
                </properties>
              </widget>
              <widget name="toggledLayoutNameDemoPreview" type="text">
                <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>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="edit_demo_preview">view</mode>
                </widgetModes>
              </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>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
                <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,
                    #{webActions.checkFilter('canToggleLayoutToEditMode') and
                    currentUser.isMemberOf('togglers_groups')}.
                    Default
                    expression used (includes check for permission 'Write',
                    check if document is in the trash, and check if document is
                    mutable -- not a proxy nor a version):
                    #{webActions.checkFilter('canToggleLayoutToEditMode')}
                  </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>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
              </widget>
              <widget name="additionalActionsCategoryDemo" 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>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="edit_demo_preview">view</mode>
                </widgetModes>
              </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="displayToggleActionInHeader" type="checkbox">
                <labels>
                  <label mode="any">Display toggle action in header</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true (and widget has a header,
                    because it handles its label), actions will be displayed in
                    the header. This includes the "toggle" action, as well as
                    "save" actions. Only the "toggle" action is hidden from the
                    rendering when it is displayed on top. "Save" actions are
                    shown twice. Available since 5.7, defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>displayToggleActionInHeader</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>
              <widget name="foldable" type="checkbox">
                <labels>
                  <label mode="any">Foldable</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, the layout will be
                    displayed
                    in a box that can be folded/unfolded in
                    javascript. Ignored
                    if the widget is not marked as handling
                    labels as the header
                    will not be displayed in this case. If
                    the widget label is
                    empty, a default label will be
                    shown. Available since 5.7,
                    defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>foldable</field>
                </fields>
                <widgetModes>
                  <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">
                    Available since 5.7, defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>foldedByDefault</field>
                </fields>
                <widgetModes>
                  <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/toggleable_layout_with_forms_widget.xhtml
      </property>
    </widgetType>

    <widgetType name="toggleableDocumentLayoutWithForms">
      <configuration>
        <sinceVersion>5.7.2</sinceVersion>
        <title>Toggleable Document Form</title>
        <description>
          This widget displays the document layouts of a document
          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>
        <handlingLabels>true</handlingLabels>
        <supportedModes>
          <mode>view</mode>
          <mode>edit</mode>
        </supportedModes>
        <properties>
          <layouts mode="any">
            <layout name="toggleableLayoutViewWithForms_widget_type_properties_any">
              <rows>
                <row>
                  <widget>initialDocumentMode</widget>
                </row>
                <row>
                  <widget>toggledDocumentMode</widget>
                </row>
                <row>
                  <widget>styleClass</widget>
                </row>
                <row>
                  <widget>canToggleMode</widget>
                </row>
                <row>
                  <widget>hideDefaultActions</widget>
                </row>
                <row>
                  <widget>additionalActionsCategory</widget>
                </row>
                <row>
                  <widget>additionalActionsCategoryDemo</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>foldable</widget>
                </row>
                <row>
                  <widget>foldedByDefault</widget>
                </row>
                <row>
                  <widget>displayToggleActionInHeader</widget>
                </row>
                <row>
                  <widget>initialActionLabel</widget>
                </row>
                <row>
                  <widget>cancelActionLabel</widget>
                </row>
                <row>
                  <widget>defaultLayout</widget>
                </row>
                <row>
                  <widget>template</widget>
                </row>
              </rows>
              <widget name="initialDocumentMode" type="text">
                <labels>
                  <label mode="any">Initial document mode</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The initial document mode to use.
                  </label>
                </helpLabels>
                <fields>
                  <field>initialDocumentMode</field>
                </fields>
              </widget>
              <widget name="toggledDocumentMode" type="text">
                <labels>
                  <label mode="any">Toggled document mode</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The toggled document mode to use.
                  </label>
                </helpLabels>
                <fields>
                  <field>toggledDocumentMode</field>
                </fields>
              </widget>
              <widget name="defaultLayout" type="selectOneResource">
                <labels>
                  <label mode="any">Default layout</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The default layout to use if no layout are defined
                    for the given document mode.
                  </label>
                </helpLabels>
                <fields>
                  <field>defaultLayout</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')}.
                    Default
                    expression used:
                    #{webActions.checkFilter('canToggleLayoutToEditMode')}
                  </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>
                <widgetModes>
                  <mode value="edit_demo_preview">hidden</mode>
                </widgetModes>
              </widget>
              <widget name="additionalActionsCategoryDemo" 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>
                <widgetModes>
                  <mode value="any">hidden</mode>
                  <mode value="edit_demo_preview">view</mode>
                </widgetModes>
              </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="displayToggleActionInHeader" type="checkbox">
                <labels>
                  <label mode="any">Display toggle action in header</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true (and widget has a header,
                    because it handles its label), actions will be displayed in
                    the header. This includes the "toggle" action, as well as
                    "save" actions. Only the "toggle" action is hidden from the
                    rendering when it is displayed on top. "Save" actions are
                    shown twice. Available since 5.7, defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>displayToggleActionInHeader</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>
              <widget name="foldable" type="checkbox">
                <labels>
                  <label mode="any">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. Available since 5.7, defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>foldable</field>
                </fields>
                <widgetModes>
                  <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">
                    Available since 5.7, defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>foldedByDefault</field>
                </fields>
                <widgetModes>
                  <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/toggleable_document_layout_with_forms_widget.xhtml
      </property>
    </widgetType>

    <widgetType name="documentLayout">
      <configuration>
        <sinceVersion>6.0</sinceVersion>
        <title>Document Layouts</title>
        <description>
          This widget displays the document layouts of a document
          for the given mode.
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>false</containingForm>
        <handlingLabels>true</handlingLabels>
        <supportedModes>
          <mode>view</mode>
          <mode>edit</mode>
        </supportedModes>
        <properties>
          <layouts mode="any">
            <layout name="documentLayoutView_widget_type_properties_any">
              <rows>
                <row>
                  <widget>mode</widget>
                </row>
                <row>
                  <widget>documentMode</widget>
                </row>
                <row>
                  <widget>template</widget>
                </row>
                <row>
                  <widget>defaultLayout</widget>
                </row>
                <row>
                  <widget>canToggleMode</widget>
                </row>
              </rows>
              <widget name="mode" type="text">
                <labels>
                  <label mode="any">Mode</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The layout mode to use.
                  </label>
                </helpLabels>
                <fields>
                  <field>mode</field>
                </fields>
              </widget>
              <widget name="documentMode" type="text">
                <labels>
                  <label mode="any">Document mode</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The document mode to use.
                  </label>
                </helpLabels>
                <fields>
                  <field>documentMode</field>
                </fields>
              </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="defaultLayout" type="selectOneResource">
                <labels>
                  <label mode="any">Default layout</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The default layout to use if no layout are defined
                    for the given document mode.
                  </label>
                </helpLabels>
                <fields>
                  <field>defaultLayout</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">layouts</property>
                  <property name="required">true</property>
                </properties>
              </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')}.
                    Default
                    expression used:
                    #{webActions.checkFilter('canToggleLayoutToEditMode')}
                  </label>
                </helpLabels>
                <fields>
                  <field>canToggleMode</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/document_layout_widget.xhtml
      </property>
    </widgetType>

    <widgetType name="documentActions">
      <configuration>
        <sinceVersion>5.7</sinceVersion>
        <title>Form actions</title>
        <description>
          <p>This widget displays actions filtered on the document given as
            field mapping.
          </p>
          <p>
            It will display actions in the category given in the 'category'
            property. The widget label and help label will be displayed above
            the actions.
          </p>
          <p>
            This widget requires to be surrounded by a form, so if it displays
            fancybox actions for instance, their popup content cannot contain
            another form.
          </p>
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>false</containingForm>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <defaultValues mode="any">
            <property name="trackCurrentAction">true</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="documentActions_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">actions_category</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_overallDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_maxActionsNumber</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_moreMenuLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_disableFiltered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/actions/document_actions_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="currentDocumentActions">
      <configuration>
        <sinceVersion>5.7</sinceVersion>
        <deprecatedVersion>5.7.3</deprecatedVersion>
        <title>Form actions</title>
        <description>
          <p>This widget displays actions filtered on the current document.</p>
          <p>Since 5.7.3, use "documentActions" instead.</p>
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>false</containingForm>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <defaultValues mode="any">
            <property name="trackCurrentAction">true</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="currentDocumentActions_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">actions_category</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_overallDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_maxActionsNumber</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_moreMenuLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_disableFiltered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/actions/document_actions_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="documentActionsWithForms">
      <configuration>
        <sinceVersion>5.7</sinceVersion>
        <title>Toolbar actions</title>
        <description>
          <p>This widget displays actions filtered on the document given as
            field mapping, and surrounds them by a form.
          </p>
          <p>
            It will display actions in the category given in the 'category'
            property. The widget label and help label will be displayed above
            the actions.
          </p>
          <p>
            The fact that actions are surrounded by their own form makes it
            possible to use fancybox actions for instance, whose popup content
            would use a different form.
          </p>
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>true</containingForm>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <defaultValues mode="any">
            <property name="trackCurrentAction">true</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="documentActionsWithForms_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">actions_category</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_overallDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_maxActionsNumber</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_moreMenuLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_disableFiltered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/actions/document_actions_with_forms_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="currentDocumentActionsWithForms">
      <configuration>
        <sinceVersion>5.7</sinceVersion>
        <deprecatedVersion>5.7.3</deprecatedVersion>
        <title>Toolbar actions</title>
        <description>
          <p>This widget displays actions filtered on the current document, and
            surrounds them by a form.
          </p>
          <p>Since 5.7.3, use "documentActionsWithForms" instead.</p>
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>true</containingForm>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <defaultValues mode="any">
            <property name="trackCurrentAction">true</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="currentDocumentActionsWithForms_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">actions_category</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_overallDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_maxActionsNumber</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_moreMenuLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_disableFiltered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/actions/document_actions_with_forms_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="documentAction">
      <configuration>
        <sinceVersion>5.7</sinceVersion>
        <title>Form action</title>
        <description>
          <p>This widget displays an action filtered on context using document
            given as field mapping.
          </p>
          <p>
            It needs the action id as property "actionId".
            <br/>
            Its bound value is used for actions with type "widget".
          </p>
          <p>
            This widget requires to be surrounded by a form, so if it displays
            fancybox actions for instance, their popup content cannot contain
            another form.
          </p>
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>false</containingForm>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <defaultValues mode="any">
            <property name="trackCurrentAction">true</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="documentAction_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">actions_actionId</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_disableFiltered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/actions/document_action_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="currentDocumentAction">
      <configuration>
        <sinceVersion>5.7</sinceVersion>
        <deprecatedVersion>5.7.3</deprecatedVersion>
        <title>Form action</title>
        <description>
          <p>This widget displays an action filtered on current document context
          </p>
          <p>Since 5.7.3, use "documentAction" instead.</p>
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>false</containingForm>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <defaultValues mode="any">
            <property name="trackCurrentAction">true</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="currentDocumentAction_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">actions_actionId</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_addForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_disableFiltered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/actions/document_action_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="documentActionWithForms">
      <configuration>
        <sinceVersion>5.7</sinceVersion>
        <title>Toolbar action</title>
        <description>
          <p>This widget displays an action filtered on current document context
          </p>
          <p>
            It needs the action id as property "actionId".
            <br/>
            Its bound value is used for actions with type "widget".
          </p>
          <p>
            The fact that action is surrounded by its own form makes it
            possible to use fancybox actions for instance, whose popup content
            would use a different form.
          </p>
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>true</containingForm>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <defaultValues mode="any">
            <property name="trackCurrentAction">true</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="documentActionWithForms_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">actions_actionId</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_disableFiltered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/actions/document_action_with_forms_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="currentDocumentActionWithForms">
      <configuration>
        <sinceVersion>5.7</sinceVersion>
        <deprecatedVersion>5.7.3</deprecatedVersion>
        <title>Toolbar action</title>
        <description>
          <p>This widget displays an action filtered on current document context
          </p>
          <p>Since 5.7.3, use "documentActionWithForms" instead.</p>
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>true</containingForm>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <defaultValues mode="any">
            <property name="trackCurrentAction">true</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="currentDocumentActionWithForms_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">actions_actionId</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_disableFiltered</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/actions/document_action_with_forms_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="documentTabsWithForms">
      <configuration>
        <sinceVersion>5.7.3</sinceVersion>
        <title>Tabs</title>
        <description>
          <p>This widget displays tabs filtered on current document context</p>
          <p>
            It needs the action id as property "actionId".
            <br/>
            Its bound value is used for actions with type "widget".
          </p>
          <p>
            The fact that action is surrounded by its own form makes it
            possible to use fancybox actions for instance, whose popup content
            would use a different form.
          </p>
        </description>
        <categories>
          <category>tab_designer</category>
        </categories>
        <fields>
          <defaultConfiguration>
            <field/>
          </defaultConfiguration>
        </fields>
        <containingForm>true</containingForm>
        <supportedModes>
          <mode>view</mode>
        </supportedModes>
        <properties>
          <defaultValues mode="any">
            <property name="trackCurrentAction">false</property>
          </defaultValues>
          <layouts mode="any">
            <layout name="documentTabsWithForms_widget_type_properties_any">
              <rows>
                <row>
                  <widget category="widgetTypeConf">tabs_category</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_useAjaxForm</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">ajaxReRender</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actionsDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">actions_styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">tabs_overallDisplay</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">tabs_hideSingleTab</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">tabs_link_view</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">tabs_link_pattern</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/actions/document_tabs_with_forms_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>

    <widgetType name="datetimeRange">
      <configuration>
        <title>Datetime range</title>
        <documentation>
          Widget used to search on a date range.
          Two fields are required:
          <ul>
            <li>A field to map the min date</li>
            <li>A field to map the max date</li>
          </ul>
        </documentation>
        <sinceVersion>5.7</sinceVersion>
        <categories>
          <category>search</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>date</type>
          </supportedTypes>
        </fields>
        <properties>
          <defaultValues mode="edit">
            <property name="startDefaultTime">00:00:00</property>
            <property name="endDefaultTime">23:59:59</property>
          </defaultValues>
          <layouts mode="view">
            <layout name="daterange_widget_type_properties_view">
              <rows>
                <row>
                  <widget category="widgetTypeConf">datetime_pattern</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">datetime_timeZone</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">styleClass</widget>
                </row>
              </rows>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="daterange_widget_type_properties_edit">
              <rows>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">datetime_format</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">datetime_locale</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">styleClass</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">datetime_timeZone</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">datetime_triggerImg</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">datetime_triggerLabel</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">datetime_triggerStyleClass</widget>
                </row>
                <row>
                  <widget>datetimeRange_startDefaultTime</widget>
                </row>
                <row>
                  <widget>datetimeRange_endDefaultTime</widget>
                </row>
              </rows>
              <widget name="datetimeRange_startDefaultTime" type="text">
                <labels>
                  <label mode="any">Datetime Range Start Default Time</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The start default time, ignore if time is
                    not taken into account in the date pattern/format. Defaults
                    to 00:00:00, available since 7.1.
                  </label>
                </helpLabels>
                <fields>
                  <field>startDefaultTime</field>
                </fields>
                <controls mode="any">
                  <control name="sinceVersion">7.1</control>
                </controls>
              </widget>
              <widget name="datetimeRange_endDefaultTime" type="text">
                <labels>
                  <label mode="any">Datetime Range End Default Time</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    The end default time, ignore if time is
                    not taken into account in the date pattern/format. Defaults
                    to 23:59:59, available since 7.1.
                  </label>
                </helpLabels>
                <fields>
                  <field>endDefaultTime</field>
                </fields>
                <controls mode="any">
                  <control name="sinceVersion">7.1</control>
                </controls>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/date_range_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="path">
      <configuration>
        <title>Path</title>
        <documentation>
          The path widget displays a popup browser in the document
          hierarchy.
        </documentation>
        <sinceVersion>5.7</sinceVersion>
        <supportedModes>
          <mode>edit</mode>
        </supportedModes>
        <fields>
          <list>false</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
            <type>path</type>
          </supportedTypes>
          <defaultTypes>
            <type>path</type>
          </defaultTypes>
        </fields>
        <categories>
          <category>document</category>
        </categories>
        <properties>
          <layouts mode="edit">
            <layout name="path_widget_type_properties">
              <rows>
                <row>
                  <widget category="widgetTypeConf">required</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">styleClass</widget>
                </row>
              </rows>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">/widgets/search_path_widget.xhtml</property>
    </widgetType>

    <widgetType name="dropZone">
      <configuration>
        <sinceVersion>5.8</sinceVersion>
        <title>Drop zone</title>
        <description>
          <p>
            The dropZone widget wraps its subwidgets with a div acting as
            the
            drop zone to be able to drop files inside it.
          </p>
          <p>
            More information is available on the
            <a href="http://doc.nuxeo.com/x/c4ao" target="_blank">Drag and
              Drop Service
              documentation</a>
            .
          </p>
        </description>
        <categories>
          <category>decoration</category>
        </categories>
        <supportedModes>
          <mode>edit</mode>
          <mode>view</mode>
        </supportedModes>
        <acceptingSubWidgets>true</acceptingSubWidgets>
        <properties>
          <layouts mode="edit">
            <layout name="dropZone_widget_type_properties">
              <rows>
                <row>
                  <widget>dropContext</widget>
                </row>
                <row>
                  <widget category="widgetTypeConf">styleClass</widget>
                </row>
                <row>
                  <widget>isEmpty</widget>
                </row>
                <row>
                  <widget>emptyMessage</widget>
                </row>
                <row>
                  <widget>cannotDrop</widget>
                </row>
                <row>
                  <widget>cannotDropMessage</widget>
                </row>
              </rows>
              <widget name="dropContext" type="text">
                <labels>
                  <label mode="any">Drop context</label>
                </labels>
                <helpLabels>
                  <label mode="any">The drop context is a marker used to
                    identify which action will be called on drop. Actions with
                    the given category will be be taken into account. Their id
                    should correspond to the operation or automation chain
                    identifier.
                  </label>
                </helpLabels>
                <fields>
                  <field>dropContext</field>
                </fields>
                <properties mode="any">
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="isEmpty" type="text">
                <labels>
                  <label mode="any">Is empty</label>
                </labels>
                <helpLabels>
                  <label mode="any">Expression resolving to a boolean stating if
                    the drop zone is empty. If it resolves to true, subwidgets
                    are not displayed.
                  </label>
                </helpLabels>
                <fields>
                  <field>isEmpty</field>
                </fields>
              </widget>
              <widget name="emptyMessage" type="text">
                <labels>
                  <label mode="any">Empty message</label>
                </labels>
                <helpLabels>
                  <label mode="any">Message to display if the drop zone is
                    empty.
                  </label>
                </helpLabels>
                <fields>
                  <field>emptyMessage</field>
                </fields>
              </widget>
              <widget name="cannotDrop" type="text">
                <labels>
                  <label mode="any">Cannot drop</label>
                </labels>
                <helpLabels>
                  <label mode="any">Expression resolving to a boolean stating if
                    user should not be able to drop elements inside the drop
                    zone (because user does not have enough rights to create
                    documents, for instance).
                  </label>
                </helpLabels>
                <fields>
                  <field>cannotDrop</field>
                </fields>
              </widget>
              <widget name="cannotDropMessage" type="text">
                <labels>
                  <label mode="any">Cannot drop message</label>
                </labels>
                <helpLabels>
                  <label mode="any">Message to display if user cannot drop items
                    in the drop zone.
                  </label>
                </helpLabels>
                <fields>
                  <field>cannotDropMessage</field>
                </fields>
              </widget>
            </layout>
          </layouts>
        </properties>
      </configuration>
      <handler-class>
        org.nuxeo.ecm.platform.forms.layout.facelets.plugins.TemplateWidgetTypeHandler
      </handler-class>
      <property name="template">
        /widgets/drop_zone_widget_template.xhtml
      </property>
    </widgetType>

    <widgetType name="chainedDirectory">
      <configuration>
        <title>Chained Vocabulary</title>
        <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="any">
            <layout name="chainedDirectory_widget_type_properties_any">
              <rows>
                <row>
                  <widget>childDirectory</widget>
                </row>
                <row>
                  <widget>localize</widget>
                </row>
              </rows>
              <widget name="childDirectory" type="selectOneResource">
                <labels>
                  <label mode="any">Vocabulary</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Select the child or hierarchical directory
                    mapped.
                  </label>
                </helpLabels>
                <fields>
                  <field>childDirectory</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">child_vocabularies</property>
                </properties>
                <properties widgetMode="edit">
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="localize" type="checkbox">
                <labels>
                  <label mode="any">Localize</label>
                </labels>
                <helpLabels>
                  <label mode="any">If true, labels will be localized.</label>
                </helpLabels>
                <fields>
                  <field>localize</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="chainedDirectory_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>allowBranchSelection</widget>
                </row>
                <row>
                  <widget>on2rows</widget>
                </row>
                <row>
                  <widget>directory_ordering</widget>
                </row>
              </rows>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="allowBranchSelection" type="checkbox">
                <labels>
                  <label mode="any">Allow incomplete selection</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, user cannot select only the
                    first item in the selection, he will have to select a second
                    item too. Defaults to false, available since 5.6.
                  </label>
                </helpLabels>
                <fields>
                  <field>allowBranchSelection</field>
                </fields>
              </widget>
              <widget name="on2rows" type="checkbox">
                <labels>
                  <label mode="any">On 2 rows</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If true, display the selectors on two rows.
                    Defaults to
                    false.
                  </label>
                </helpLabels>
                <fields>
                  <field>on2rows</field>
                </fields>
              </widget>
              <widget name="directory_ordering" type="selectOneListbox">
                <categories>
                  <category>widgetTypeConf</category>
                </categories>
                <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/chain_monoselect_2levels_widget.xhtml
      </property>
    </widgetType>

    <widgetType name="multiChainedDirectory">
      <configuration>
        <title>Multiple chained Vocabulary</title>
        <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="any">
            <layout name="multiChainedDirectory_widget_type_properties_any">
              <rows>
                <row>
                  <widget>childDirectory</widget>
                </row>
                <row>
                  <widget>localize</widget>
                </row>
              </rows>
              <widget name="childDirectory" type="selectOneResource">
                <labels>
                  <label mode="any">Vocabulary</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    Select the child or hierarchical directory
                    mapped.
                  </label>
                </helpLabels>
                <fields>
                  <field>childDirectory</field>
                </fields>
                <properties mode="any">
                  <property name="resourceName">child_vocabularies</property>
                </properties>
                <properties widgetMode="edit">
                  <property name="required">true</property>
                </properties>
              </widget>
              <widget name="localize" type="checkbox">
                <labels>
                  <label mode="any">Localize</label>
                </labels>
                <helpLabels>
                  <label mode="any">If true, labels will be localized.</label>
                </helpLabels>
                <fields>
                  <field>localize</field>
                </fields>
              </widget>
            </layout>
          </layouts>
          <layouts mode="edit">
            <layout name="multiChainedDirectory_widget_type_properties_edit">
              <rows>
                <row>
                  <widget>required</widget>
                </row>
                <row>
                  <widget>allowBranchSelection</widget>
                </row>
                <row>
                  <widget>on2rows</widget>
                </row>
                <row>
                  <widget>directory_ordering</widget>
                </row>
              </rows>
              <widget name="required" type="checkbox">
                <labels>
                  <label mode="any">Required</label>
                </labels>
                <fields>
                  <field>required</field>
                </fields>
              </widget>
              <widget name="allowBranchSelection" type="checkbox">
                <labels>
                  <label mode="any">Allow incomplete selection</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If set to true, user cannot select only the
                    first item in the selection, he will have to select a second
                    item too. Defaults to false.
                  </label>
                </helpLabels>
                <fields>
                  <field>allowBranchSelection</field>
                </fields>
              </widget>
              <widget name="on2rows" type="checkbox">
                <labels>
                  <label mode="any">On 2 rows</label>
                </labels>
                <helpLabels>
                  <label mode="any">
                    If true, display the selectors on two rows.
                    Defaults to
                    false.
                  </label>
                </helpLabels>
                <fields>
                  <field>on2rows</field>
                </fields>
              </widget>
              <widget name="directory_ordering" type="selectOneListbox">
                <categories>
                  <category>widgetTypeConf</category>
                </categories>
                <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/chain_multiselect_2levels_widget.xhtml
      </property>
    </widgetType>

    <widgetType name="shuttle">
      <configuration>
        <title>Shuttle widget</title>
        <sinceVersion>6.0</sinceVersion>
        <supportedModes>
          <mode>edit</mode>
        </supportedModes>
        <fields>
          <list>true</list>
          <complex>false</complex>
          <supportedTypes>
            <type>string</type>
          </supportedTypes>
        </fields>
        <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/shuttle_widget_template.xhtml
      </property>
    </widgetType>

  </extension>