3.5.4. Facets

Facet 是不会被添加到界面布局的界面元素,与可视化组件不同,它们为界面或者界面组件提供补充功能。

在 XML 描述中,使用 facets 元素定义 facet。CUBA 框架提供以下 facet:

应用程序或者扩展组件可以提供其自有的 facet。可以按照下面的步骤创建自定义的 facet:

  1. 创建接口,继承自 com.haulmont.cuba.gui.components.Facet

  2. 创建基于 com.haulmont.cuba.web.gui.WebAbstractFacet 的实现类。

  3. 创建 Spring Bean,实现 com.haulmont.cuba.gui.xml.FacetProvider 接口,使用你定义的 facet 作为参数。

  4. 创建能在界面 XML 中使用的 XSD。

  5. 另外,还可以使用 元数据注解 标记 facet 接口和方法,这样可以在 CUBA Studio 的界面设计器支持这些 facet。

框架中的 ClipboardTriggerWebClipboardTriggerClipboardTriggerFacetProvider,这三个类可以作为 facet 的示范参考。