Annotation Interface StudioElement


@Target({METHOD,TYPE}) @Inherited public @interface StudioElement
Indicates that the annotated interface should be available in Studio Screen Designer as a part of UI Component, e.g. column, action, field, etc. Provides metadata for Component Inspector of Screen Designer.

When used on the getter or setter method, indicates that the annotated method should be shown in Studio Screen Designer as a nested element of UI component, e.g. validator, formatter. Method return type or parameter type will be used to determine element type.

  • Element Details

    • caption

      String caption
      Returns:
      caption of the element in Studio Screen Designer
      Default:
      ""
    • description

      String description
      Returns:
      description of the element in Studio Screen Designer
      Default:
      ""
    • icon

      String icon
      Specifies path to the component icon, SVG or PNG. Relative to the component module root. The icon used in the Component Hierarchy.
      Returns:
      relative path to the SVG or PNG icon file.
      Default:
      ""
    • xmlElement

      String xmlElement
      Returns:
      XML tag of the element
      Default:
      ""
    • xmlns

      String xmlns
      Specifies xml namespace required for the element.
      Returns:
      xml namespace
      Default:
      ""
    • xmlnsAlias

      String xmlnsAlias
      Specifies xml namespace alias required for the element.
      Returns:
      xml namespace alias
      Default:
      ""
    • defaultProperty

      String defaultProperty
      Returns:
      name of the default property, it will be automatically selected in Properties panel
      Default:
      ""
    • unsupportedProperties

      String[] unsupportedProperties
      Returns:
      names of unsupported properties that should be hidden from Properties panel
      Default:
      {}
    • documentationURL

      String documentationURL
      Specifies URL pointing to the documentation page for the annotated element. Used in Jmix Documentation action in the Studio Screen Designer.
      If the documentation is version dependent, use %VERSION% as a placeholder. It will be replaced with the minor version (e.g. 1.2) of the artifact containing UI component.
      Returns:
      URL of the documentation page
      Default:
      ""
    • target

      String[] target
      Fully-qualified class names of the components to which the element can be applied. Some base interface is expected in most cases. E.g. "io.jmix.ui.component.ListComponent"
      Default:
      {}
    • unsupportedTarget

      String[] unsupportedTarget
      Fully-qualified class names of the components to which the element cannot be applied. Some base interface is expected in most cases. E.g. "io.jmix.ui.component.ListComponent"
      Default:
      {}
    • unsupportedHandlers

      String[] unsupportedHandlers
      Returns:
      names of unsupported handlers that should be hidden from Handlers and Generate Handler panels
      Default:
      {}