Class TabbedPanelProperties

    • Constructor Detail

      • TabbedPanelProperties

        public TabbedPanelProperties()
        Constructs an empty TabbedPanelProperties object
      • TabbedPanelProperties

        public TabbedPanelProperties​(PropertyMap map)
        Constructs a TabbedPanelProperties map with the given map as property storage
        Parameters:
        map - map to store properties in
      • TabbedPanelProperties

        public TabbedPanelProperties​(TabbedPanelProperties inheritFrom)
        Constructs a TabbedPanelProperties object that inherits its properties from the given TabbedPanelProperties object
        Parameters:
        inheritFrom - TabbedPanelProperties object to inherit properties from
    • Method Detail

      • getDefaultProperties

        public static TabbedPanelProperties getDefaultProperties()
        Creates a properties object with default properties based on the current look and feel
        Returns:
        properties object
      • addSuperObject

        public TabbedPanelProperties addSuperObject​(TabbedPanelProperties superObject)
        Adds a super object from which property values are inherited.
        Parameters:
        superObject - the object from which to inherit property values
        Returns:
        this
      • removeSuperObject

        public TabbedPanelProperties removeSuperObject()
        Removes the last added super object.
        Returns:
        this
      • removeSuperObject

        public TabbedPanelProperties removeSuperObject​(TabbedPanelProperties superObject)
        Removes the given super object.
        Parameters:
        superObject - super object to remove
        Returns:
        this
        Since:
        ITP 1.3.0
      • setShadowStrength

        public TabbedPanelProperties setShadowStrength​(float strength)

        Sets the shadow strength. 0 means the shadow color is the same as the backgound color and 1 means the shadow color is the same as shadow color.

        Note: This property will only have effect if shadow is enabled.

        Parameters:
        strength - the strength between 0 and 1
        Returns:
        this TabbedPanelProperties
        See Also:
        setShadowColor(java.awt.Color), setShadowEnabled(boolean)
      • setShadowBlendAreaSize

        public TabbedPanelProperties setShadowBlendAreaSize​(int size)

        Sets the shadow blend area size, i.e. number of pixels for the shadow color fading.

        Note: This property will only have effect if shadow is enabled.

        Parameters:
        size - the shadow blend area size in pixels
        Returns:
        this TabbedPanelProperties
        See Also:
        setShadowEnabled(boolean)
      • setShadowSize

        public TabbedPanelProperties setShadowSize​(int size)

        Sets the shadow size, i.e. the width/height of the shadow in pixels.

        Note: This property will only have effect if shadow is enabled.

        Parameters:
        size - shadow size in pixels
        Returns:
        this TabbedPanelProperties
        See Also:
        setShadowEnabled(boolean)
      • setShadowColor

        public TabbedPanelProperties setShadowColor​(java.awt.Color color)

        Sets the shadow color.

        Note: This property will only have effect if shadow is enabled.

        Parameters:
        color - the shadow color
        Returns:
        this TabbedPanelProperties
        See Also:
        setShadowEnabled(boolean)
      • setShadowEnabled

        public TabbedPanelProperties setShadowEnabled​(boolean value)
        Sets shadow enabled
        Parameters:
        value - true for enabled, otherwise false
        Returns:
        this TabbedPanelProperties
      • setAutoSelectTab

        public TabbedPanelProperties setAutoSelectTab​(boolean value)
        Sets if automatic selection of a tab is enabled. Automatic selection means that if no tab is selected and a tab is added to the TabbedPanel, then the added tab will automatically be selected. If a selected tab is removed from the TabbedPanel then the tab next to the selected tab will automatically be selected.
        Parameters:
        value - true for automactic selection, otherwise false
        Returns:
        this TabbedPanelProperties
      • setTabDeselectable

        public TabbedPanelProperties setTabDeselectable​(boolean value)
        Sets if tab is deselectable. This means that if the selected tab is clicked then the selected tab will be deselected. Clicking it again will select the tab again.
        Parameters:
        value - true for deselectable, otherwise false
        Returns:
        this TabbedPanelProperties
      • setEnsureSelectedTabVisible

        public TabbedPanelProperties setEnsureSelectedTabVisible​(boolean value)

        Sets if a tab should be made visible if it is selected, i.e. if scrolling is enabled, a tab will be scrolled into the visible part of the tab area when it becomes selected.

        Note: This will only have effect if scolling is enabled.

        Parameters:
        value - true for selected visible, otherwise false
        Returns:
        this TabbedPanelProperties
        See Also:
        setTabLayoutPolicy(net.infonode.tabbedpanel.TabLayoutPolicy)
      • setTabReorderEnabled

        public TabbedPanelProperties setTabReorderEnabled​(boolean enabled)
        Sets if the tabs can be reordered using the mouse
        Parameters:
        enabled - true for enabled, otherwise disabled
        Returns:
        this TabbedPanelProperties
      • setHighlightPressedTab

        public TabbedPanelProperties setHighlightPressedTab​(boolean highlightEnabled)
        Set to true if the tab pressed with the mouse should be highlighted, otherwise it's not changed.
        Parameters:
        highlightEnabled - true if the tab pressed with the mouse should be highlighted
        Returns:
        this
      • setAbortDragKey

        public TabbedPanelProperties setAbortDragKey​(int keyCode)

        Sets the key code for aborting a tab drag or reorder operation.

        Note: The right mouse button can also be used to abort the operation.

        Parameters:
        keyCode - key code
        Returns:
        this TabbedPanelProperties
      • setTabLayoutPolicy

        public TabbedPanelProperties setTabLayoutPolicy​(TabLayoutPolicy policy)
        Sets the tab layout policy for the tab area, i.e. how the line of tabs should be laid out
        Parameters:
        policy - the tab area layout policy
        Returns:
        this TabbedPanelProperties
      • setTabDropDownListVisiblePolicy

        public TabbedPanelProperties setTabDropDownListVisiblePolicy​(TabDropDownListVisiblePolicy policy)

        Sets the tab drop down list visible policy, i.e. when a drop down list with the tabs should be visible

        The drop down list will show an icon for the tab if the tab implements the IconProvider and the text will be retrieved by calling toString() on the tab.

        Parameters:
        policy - the tab drop down list visible policy
        Returns:
        this TabbedPanelProperties
        Since:
        ITP 1.1.0
      • setTabSelectTrigger

        public TabbedPanelProperties setTabSelectTrigger​(TabSelectTrigger trigger)
        Sets the tab select trigger, i.e. what triggers a tab selection
        Parameters:
        trigger - the tab select trigger
        Returns:
        this TabbedPanelProperties
        Since:
        ITP 1.1.0
      • setTabAreaOrientation

        public TabbedPanelProperties setTabAreaOrientation​(Direction direction)
        Sets the tab area orientation, i.e. if the tab area should be placed up, down, left or right of the content area.
        Parameters:
        direction - the orientation
        Returns:
        this TabbedPanelProperties
      • setTabSpacing

        public TabbedPanelProperties setTabSpacing​(int value)

        Sets the tab spacing, i.e. number of pixels between the tabs in the tab area.

        This can be a negative value i.e. tabs will be overlapping each other. The depth order can be controlled with the property TAB_DEPTH_ORDER.

        Parameters:
        value - number of pixels. A negative value reuslts in tabs overlapping each other with the number of pixels.
        Returns:
        this TabbedPanelProperties
        See Also:
        setTabDepthOrderPolicy(net.infonode.tabbedpanel.TabDepthOrderPolicy)
      • setTabDepthOrderPolicy

        public TabbedPanelProperties setTabDepthOrderPolicy​(TabDepthOrderPolicy policy)

        Sets the tab depth order policy to be used when tabs are overlapping i.e. negative tab spacing.

        If the depth order is descending, the first tab will be the top most and the last tab the bottom most. If the depth order is ascending, then the first tab will be the bottom most and the last tab the top most. Note that if a tab is highlighted, it will always be shown as the top most tab.

        Parameters:
        policy - the tab depth order policy
        Returns:
        this TabbedPanelProperties
        Since:
        ITP 1.2.0
        See Also:
        setTabSpacing(int)
      • getShadowStrength

        public float getShadowStrength()

        Gets the shadow strength. 0 means the shadow color is the same as the backgound color and 1 means the shadow color is the same as shadow color.

        Note: This property will only have effect if shadow is enabled.

        Returns:
        the shadow strength between 0 and 1
        See Also:
        getShadowColor(), getShadowEnabled()
      • getShadowBlendAreaSize

        public int getShadowBlendAreaSize()

        Gets the shadow blend area size, i.e. number of pixels for the shadow color fading.

        Note: This property will only have effect if shadow is enabled.

        Returns:
        the shadow blend area size in pixels
        See Also:
        getShadowEnabled()
      • getShadowSize

        public int getShadowSize()

        Gets the shadow size, i.e. the width/height of the shadow in pixels.

        Note: This property will only have effect if shadow is enabled.

        Returns:
        shadow size in pixels
        See Also:
        getShadowEnabled()
      • getShadowColor

        public java.awt.Color getShadowColor()

        Gets the shadow color.

        Note: This property will only have effect if shadow is enabled.

        Returns:
        the shadow color
        See Also:
        getShadowEnabled()
      • getShadowEnabled

        public boolean getShadowEnabled()
        Gets shadow enabled
        Returns:
        true if shadow is enabled, otherwise false
      • getAutoSelectTab

        public boolean getAutoSelectTab()
        Gets if automatic selection of a tab is enabled. Automatic selection means that if no tab is selected and a tab is added to the TabbedPanel, then the added tab will automatically be selected. If a selected tab is removed from the TabbedPanel then the tab next to the selected tab will automatically be selected.
        Returns:
        true if automactic selection, otherwise false
      • getHighlightPressedTab

        public boolean getHighlightPressedTab()
        Gets if the tab pressed with the mouse will be highlighted.
        Returns:
        true if the tab pressed with the mouse will be highlighted
      • getTabDeselectable

        public boolean getTabDeselectable()
        Gets if tab is deselectable. This means that if the selected tab is clicked then the selected tab will be deselected. Clicking it again will select the tab again.
        Returns:
        true if deselectable, otherwise false
      • getEnsureSelectedTabVisible

        public boolean getEnsureSelectedTabVisible()

        Gets if a tab should be made visible if it is selected, i.e. if scrolling is enabled, a tab will be scrolled into the visible part of the tab area when it becomes selected.

        Note: This will only have effect if scolling is enabled.

        Returns:
        true if selected visible should be made visible, otherwise false
        See Also:
        getTabLayoutPolicy()
      • getPaintTabAreaShadow

        public boolean getPaintTabAreaShadow()
        Returns true if a shadow is painted for the tab area, false if a shadow is painted for the highlighted tab and the tab area components panel.
        Returns:
        true if a shadow is painted for the tab area, false if a shadow is painted for the highlighted tab and the tab area components panel
        Since:
        ITP 1.1.0
      • setPaintTabAreaShadow

        public TabbedPanelProperties setPaintTabAreaShadow​(boolean paintShadow)
        Set to true if a shadow should be painted for the tab area, false if a shadow should be painted for the highlighted tab and the tab area components panel.
        Parameters:
        paintShadow - true if a shadow should be painted for the tab area, false if a shadow should be painted for the highlighted tab and the tab area components panel
        Returns:
        this
        Since:
        ITP 1.1.0
      • getTabScrollingOffset

        public int getTabScrollingOffset()

        Gets number of pixels to be shown for the last scrolled tab.

        Note: This will only have effect if scolling is enabled.

        Returns:
        number of pixels
        See Also:
        getTabLayoutPolicy()
      • getTabReorderEnabled

        public boolean getTabReorderEnabled()
        Gets if the tabs can be reorder using the mouse.
        Returns:
        true if enabled, otherwise disabled
      • getAbortDragKey

        public int getAbortDragKey()

        Gets the key code for aborting a tab drag or reorder operation.

        Note that the right mouse button can also be used to abort the operation.

        Returns:
        the key code
      • getTabLayoutPolicy

        public TabLayoutPolicy getTabLayoutPolicy()
        Gets the tab layout policy for the tab area, i.e. how the line of tabs should be laid out
        Returns:
        the tab area layout policy
      • getTabDropDownListVisiblePolicy

        public TabDropDownListVisiblePolicy getTabDropDownListVisiblePolicy()

        Gets the tab drop down list visible policy, i.e. when a drop down list with the tabs should be visible.

        The drop down list will show an icon for the tab if the tab implements the IconProvider and the text will be retrieved by calling toString() on the tab.

        Returns:
        the tab drop down list visible policy
        Since:
        ITP 1.1.0
      • getTabSelectTrigger

        public TabSelectTrigger getTabSelectTrigger()
        Gets the tab select trigger, i.e. what triggers a tab selection
        Returns:
        the tab select trigger
        Since:
        ITP 1.1.0
      • getTabAreaOrientation

        public Direction getTabAreaOrientation()
        Gets the tab area orientation, i.e. if the tab area should be placed up, down, left or right of the content area
        Returns:
        the orientation
      • getTabSpacing

        public int getTabSpacing()

        Gets the tab spacing, i.e. number of pixels between the tabs in the tab area.

        This can be a negative value i.e. tabs will be overlapping each other. The depth order can be controlled with the property TAB_DEPTH_ORDER.

        Returns:
        number of pixels, can be negative i.e. tabs will be overlapping
        See Also:
        getTabDepthOrderPolicy()
      • getTabDepthOrderPolicy

        public TabDepthOrderPolicy getTabDepthOrderPolicy()

        Gets the tab depth order policy to be used when tabs are overlapping i.e. negative tab spacing.

        If the depth order is descending, the first tab will be the top most and the last tab the bottom most. If the depth order is ascending, then the first tab will be the bottom most and the last tab the top most. Note that if a tab is highlighted, it will always be shown as the top most tab.

        Returns:
        the tab depth order policy
        Since:
        ITP 1.2.0
        See Also:
        getTabSpacing()
      • setHoverListener

        public TabbedPanelProperties setHoverListener​(HoverListener listener)

        Sets the hover listener that will be triggered when the tabbed panel is hoverd by the mouse.

        The hovered tabbed panel will be the source of the hover event sent to the hover listener.

        Parameters:
        listener - the hover listener
        Returns:
        this TabbedPanelProperties
        Since:
        ITP 1.3.0
      • getHoverListener

        public HoverListener getHoverListener()

        Gets the hover listener that will be triggered when the tabbed panel is hovered by the mouse.

        The hovered tabbed panel will be the source of the hover event sent to the hover listener.

        Returns:
        the hover listener
        Since:
        ITP 1.3.0
      • setHoverPolicy

        public TabbedPanelProperties setHoverPolicy​(TabbedPanelHoverPolicy hoverPolicy)

        Sets the hover policy.

        The hover policy determines when the tabbed panel is considered hovered by the mouse and the hover listener is called. The default hover policy is NO_HOVERED_CHILD.

        Parameters:
        hoverPolicy - the hover policy
        Returns:
        this TabbedPanelProperties
        Since:
        ITP 1.3.0
      • getHoverPolicy

        public TabbedPanelHoverPolicy getHoverPolicy()

        Gets the hover policy.

        The hover policy determines when the tabbed panel is considered hovered by the mouse and the hover listener is called. The default hover policy is NO_HOVERED_CHILD.

        Returns:
        the hover policy
        Since:
        ITP 1.3.0
      • getContentPanelProperties

        public TabbedPanelContentPanelProperties getContentPanelProperties()
        Gets the properties getMap() with properties for the tabbed panel's content area
        Returns:
        the properties for the content area
      • getTabAreaProperties

        public TabAreaProperties getTabAreaProperties()
        Gets the properties getMap() with properties for the tabbed panel's tab area
        Returns:
        the properties for the tab area
      • getTabAreaComponentsProperties

        public TabAreaComponentsProperties getTabAreaComponentsProperties()
        Gets the properties getMap() with properties for the area in a tabbed panel's tab area where the tab area components are shown.
        Returns:
        the properties for the tab area components
        Since:
        ITP 1.1.0
      • getButtonProperties

        public TabbedPanelButtonProperties getButtonProperties()
        Gets the properties getMap() with properties for all the buttons in a tabbed panel.
        Returns:
        the properties for the buttons
        Since:
        ITP 1.3.0