Package org.zkoss.stateless.sul

## Interface IGoldenPanel<I extends IAnyGroup>

- All Superinterfaces:
    `IChildable<IGoldenPanel<I>,​I>`, `IComponent<IGoldenPanel<I>>`, `IHtmlBasedComponent<IGoldenPanel<I>>`, `IXulElement<IGoldenPanel<I>>`

      public interface IGoldenPanel<I extends IAnyGroup>
      extends IXulElement<IGoldenPanel<I>>, IChildable<IGoldenPanel<I>,​I>

  Immutable `GoldenPanel` component

  A GoldenPanel component. Which is the only child type for `IGoldenLayout`.

  ### Support @Action

  Name | Action Type
  --- | ---
  onActive | Denotes user has activated this GoldenPanel.
  onPanelDrop | Denotes user has dropped this GoldenPanel.
  onFlexSize | Denotes user has resized this GoldenPanel.
  onClose | Denotes user has closed this GoldenPanel.
  onMaximize | Denotes user has maximized this GoldenPanel.
  onMinimize | Denotes user has minimized this GoldenPanel.

  Author:
    katherine
  See Also:
    `GoldenPanel`

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface | Description
    --- | --- | ---
    `static class` | `IGoldenPanel.Builder<I extends IAnyGroup>` | Builds instances of type `IGoldenPanel`.
    `static class` | `IGoldenPanel.Updater` | Builds an updater of type `IGoldenPanel` for `UiAgent.smartUpdate(Locator, SmartUpdater)`.

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static IGoldenPanel<IAnyGroup>` | `DEFAULT` | Constant for default attributes of this immutable component.

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.lang.String` | `getArea()` | Return the area of this GoldenPanel.
    `default java.lang.String` | `getDraggable()` | Returns the identifier of a draggable type of objects, or `"false"` if not draggable (never null nor empty).
    `default java.lang.String` | `getDroppable()` | Returns the identifier, or a list of identifiers (split by a comma `","`) of a droppable type of objects, or `"false"` if not droppable (never null nor empty).
    `default java.lang.String` | `getHeight()` | Returns the height of the component.
    `java.lang.String` | `getTitle()` | Returns the title on the tab of the GoldenPanel.
    `default java.lang.String` | `getWidgetClass()` | Returns the client widget class.
    `default java.lang.String` | `getWidth()` | Returns the width of the component.
    `default boolean` | `isClosable()` | Returns whether this panel is closable.
    `static <I extends IAnyGroup> IGoldenPanel<I>` | `of​(I... children)` | Returns the instance with the given any group children.
    `static <I extends IAnyGroup> IGoldenPanel<I>` | `of​(java.lang.Iterable<? extends I> children)` | Returns the instance with the given any group children.
    `static <I extends IAnyGroup> IGoldenPanel` | `ofArea​(java.lang.String area)` | Returns the instance with the given area.
    `static <I extends IAnyGroup> IGoldenPanel<I>` | `ofArea​(java.lang.String area, I... children)` | Returns the instance with the given area and any group children.
    `static <I extends IAnyGroup> IGoldenPanel<I>` | `ofArea​(java.lang.String area, java.lang.Iterable<? extends I> children)` | Returns the instance with the given area and any group children.
    `static <I extends IAnyGroup> IGoldenPanel<I>` | `ofId​(java.lang.String id)` | Returns the instance with the given id.
    `static <I extends IAnyGroup> IGoldenPanel` | `ofTitle​(java.lang.String title)` | Returns the instance with the given title.
    `IGoldenPanel<I>` | `withArea​(java.lang.String area)` | Returns a copy of `this` immutable component with the specified `area`.
    `IGoldenPanel<I>` | `withClosable​(boolean closable)` | Returns a copy of `this` immutable component with the specified `closable`.
    `default IGoldenPanel<I>` | `withHeight​(java.lang.String height)` | The height can't be specified in this component because its height is determined by other region components (`INorth` or `ISouth`).
    `IGoldenPanel<I>` | `withTitle​(java.lang.String title)` | Returns a copy of `this` immutable component with the specified `title`.
    `default IGoldenPanel<I>` | `withWidth​(java.lang.String width)` | The width can't be specified in this component because its width is determined by other region components (`IWest` or `IEast`).

    - ### Methods inherited from interface org.zkoss.stateless.sul.IChildable

      `getChildren, withChildren, withChildren`

    - ### Methods inherited from interface org.zkoss.stateless.sul.IComponent

      `getAction, getActions, getClientAttributes, getId, getMold, getWidgetListeners, getWidgetOverrides, isVisible, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withAction, withActions, withActions, withClientAttribute, withClientAttributes, withId, withMold, withVisible, withWidgetClass, withWidgetListener, withWidgetListeners, withWidgetOverride, withWidgetOverrides`

    - ### Methods inherited from interface org.zkoss.stateless.sul.IHtmlBasedComponent

      `getClientAction, getHflex, getLeft, getRenderdefer, getSclass, getStyle, getTabindex, getTooltiptext, getTop, getVflex, getZclass, getZIndex, isFocus, withClientAction, withDraggable, withDroppable, withFocus, withHflex, withLeft, withRenderdefer, withSclass, withStyle, withTabindex, withTabindex, withTooltiptext, withTop, withVflex, withZclass, withZIndex`

    - ### Methods inherited from interface org.zkoss.stateless.sul.IXulElement

      `getContext, getCtrlKeys, getPopup, getTooltip, withContext, withCtrlKeys, withPopup, withTooltip`

- - ### Field Detail

    - #### DEFAULT

          static final IGoldenPanel<IAnyGroup> DEFAULT

      Constant for default attributes of this immutable component.

  - ### Method Detail

    - #### getWidgetClass

          default java.lang.String getWidgetClass()

      Returns the client widget class.

      Default: `"zkmax.goldenlayout.GoldenPanel"`

      Specified by:
        `getWidgetClass` in interface `IComponent<I extends IAnyGroup>`

    - #### getArea

          @Nullable
          java.lang.String getArea()

      Return the area of this GoldenPanel.

      Default: `null`

    - #### withArea

          IGoldenPanel<I> withArea​(@Nullable
                                   java.lang.String area)

      Returns a copy of `this` immutable component with the specified `area`.

      Sets the area of this GoldenPanel, use to represent the area of this panel on initial rendering. Note that the area is not changeable after specified (i.e. it won't work with `IGoldenPanel.Updater`). And it doesn't remain the same due to user's action.

      Parameters:
        `area` - The area of the component

        Default: `null`.

      Returns:
        A modified copy of the `this` object

    - #### getTitle

          @Nullable
          java.lang.String getTitle()

      Returns the title on the tab of the GoldenPanel.

      Default: `null`

    - #### withTitle

          IGoldenPanel<I> withTitle​(@Nullable
                                    java.lang.String title)

      Returns a copy of `this` immutable component with the specified `title`.

      Sets the title to the tab of the GoldenPanel.

      Parameters:
        `title` - The title of the component

        Default: `null`.

      Returns:
        A modified copy of the `this` object

    - #### getDraggable

          default java.lang.String getDraggable()

      Description copied from interface: `IHtmlBasedComponent`
      Returns the identifier of a draggable type of objects, or `"false"` if not draggable (never null nor empty).

      Default: `"false"`

      Specified by:
        `getDraggable` in interface `IHtmlBasedComponent<I extends IAnyGroup>`

    - #### isClosable

          default boolean isClosable()

      Returns whether this panel is closable.

      Default: `true`

    - #### withClosable

          IGoldenPanel<I> withClosable​(boolean closable)

      Returns a copy of `this` immutable component with the specified `closable`.

      Sets whether this panel is closable.

      Parameters:
        `closable` - Whether this panel is closable.

        Default: `true`.

      Returns:
        A modified copy of the `this` object

    - #### getDroppable

          default java.lang.String getDroppable()

      Description copied from interface: `IHtmlBasedComponent`
      Returns the identifier, or a list of identifiers (split by a comma `","`) of a droppable type of objects, or `"false"` if not droppable (never null nor empty).

      Default: `"false"`

      Specified by:
        `getDroppable` in interface `IHtmlBasedComponent<I extends IAnyGroup>`

    - #### getWidth

          @Derived
          @Nullable
          default java.lang.String getWidth()

      Description copied from interface: `IHtmlBasedComponent`
      Returns the width of the component. If not specified, `null` is assumed.

      Default: `null`

      Specified by:
        `getWidth` in interface `IHtmlBasedComponent<I extends IAnyGroup>`

    - #### withWidth

          default IGoldenPanel<I> withWidth​(@Nullable
                                            java.lang.String width)

      The width can't be specified in this component because its width is determined by other region components (`IWest` or `IEast`).
      Specified by:
        `withWidth` in interface `IHtmlBasedComponent<I extends IAnyGroup>`
      Parameters:
        `width` - The width of the component.

        Default: `null`

      Returns:
        A modified copy of the `this` object

    - #### getHeight

          @Derived
          @Nullable
          default java.lang.String getHeight()

      Description copied from interface: `IHtmlBasedComponent`
      Returns the height of the component. If not specified, `null` is assumed.

      Default: `null`

      Specified by:
        `getHeight` in interface `IHtmlBasedComponent<I extends IAnyGroup>`

    - #### withHeight

          default IGoldenPanel<I> withHeight​(@Nullable
                                             java.lang.String height)

      The height can't be specified in this component because its height is determined by other region components (`INorth` or `ISouth`).
      Specified by:
        `withHeight` in interface `IHtmlBasedComponent<I extends IAnyGroup>`
      Parameters:
        `height` - The height of the component.

        Default: `null`

      Returns:
        A modified copy of the `this` object

    - #### ofTitle

          static <I extends IAnyGroup> IGoldenPanel ofTitle​(java.lang.String title)

      Returns the instance with the given title.
      Parameters:
        `title` - The title of the component.

    - #### ofArea

          static <I extends IAnyGroup> IGoldenPanel ofArea​(java.lang.String area)

      Returns the instance with the given area.
      Parameters:
        `area` - The area of the component.

    - #### ofArea

          static <I extends IAnyGroup> IGoldenPanel<I> ofArea​(java.lang.String area,
                                                              java.lang.Iterable<? extends I> children)

      Returns the instance with the given area and any group children.
      Parameters:
        `area` - The area of the component.
        `children` - The children belong to any group
      See Also:
        `IAnyGroup`

    - #### ofArea

          static <I extends IAnyGroup> IGoldenPanel<I> ofArea​(java.lang.String area,
                                                              I... children)

      Returns the instance with the given area and any group children.
      Parameters:
        `area` - The area of the component.
        `children` - The children belong to any group
      See Also:
        `IAnyGroup`

    - #### of

          static <I extends IAnyGroup> IGoldenPanel<I> of​(java.lang.Iterable<? extends I> children)

      Returns the instance with the given any group children.
      Parameters:
        `children` - The children belong to any group
      See Also:
        `IAnyGroup`

    - #### of

          static <I extends IAnyGroup> IGoldenPanel<I> of​(I... children)

      Returns the instance with the given any group children.
      Parameters:
        `children` - The children belong to any group
      See Also:
        `IAnyGroup`

    - #### ofId

          static <I extends IAnyGroup> IGoldenPanel<I> ofId​(java.lang.String id)

      Returns the instance with the given id.
      Parameters:
        `id` - The id to identify this component