Class TitledTabProperties


  • public class TitledTabProperties
    extends PropertyMapContainer

    TitledTabProperties holds all properties for a TitledTab.

    A titled tab can have three states, normal, highlighted and disabled. Each state is represented by a TitledTabStateProperties object containing all properties that can be set for a state.

    By default the property values in the highlighted and disabled state are references to corresponding values in the normal state. This means that if you set a property value in the normal state, then highlighted and the disabled state will use that property value if the property has not been set in the highlighted or disabled state.

    Example:
    Setting the background color in the normal state means that normal, highlighted and disabled state will use that color as background color. If you set background color for highlighted state, then the highlighted state will use that color regardless of the background color for the normal state.

    By default the tool tip text in all states is the same as the tab text in the normal state. For example, if you change the tab text in the highlighted state and want the tooltip to display the same text, you must set the "Tool Tip Text" property TitledTabStateProperties.TOOL_TIP_TEXT in the highlighted state.

    See Also:
    TitledTab, TitledTabStateProperties
    • Constructor Detail

      • TitledTabProperties

        public TitledTabProperties()
        Constructs an empty TitledTabProperties object
      • TitledTabProperties

        public TitledTabProperties​(PropertyMap object)
        Constructs a TitledTabProperties object with the give object as property storage
        Parameters:
        object - object to store properties in
      • TitledTabProperties

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

      • addSuperObject

        public TitledTabProperties addSuperObject​(TitledTabProperties 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 TitledTabProperties removeSuperObject()
        Removes the last added super object.
        Returns:
        this
      • removeSuperObject

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

        public TitledTabProperties replaceSuperObject​(TitledTabProperties oldSuperObject,
                                                      TitledTabProperties newSuperObject)
        Replaces the given super objects.
        Parameters:
        oldSuperObject - super object to replace
        newSuperObject - new super object
        Returns:
        this
        Since:
        ITP 1.4.0
      • getDefaultProperties

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

        public TitledTabStateProperties getNormalProperties()
        Gets the properties for the normal state
        Returns:
        the normal state properties
      • getHighlightedProperties

        public TitledTabStateProperties getHighlightedProperties()
        Gets the properties for the highlighted state
        Returns:
        the highlighted state properties
      • getDisabledProperties

        public TitledTabStateProperties getDisabledProperties()
        Gets the properties for the disabled state
        Returns:
        the disabled state properties
      • setFocusable

        public TitledTabProperties setFocusable​(boolean value)
        Sets if this TitledTab should be focusable
        Parameters:
        value - true for focusable, otherwise false
        Returns:
        this TitledTabProperties
      • getFocusable

        public boolean getFocusable()
        Gets if this TitledTab is focusable
        Returns:
        true for focusable, otherwise false
      • setFocusMarkerEnabled

        public TitledTabProperties setFocusMarkerEnabled​(boolean value)

        Sets if this TitledTab should show its built-in focus marker when this tab has focus.

        Note: Disabling the focus marker is useful when for example creating a theme that draws its own focus marker.

        Parameters:
        value - true for enabled, otherwise false
        Returns:
        this TitledTabProperties
        Since:
        ITP 1.4.0
      • getFocusMarkerEnabled

        public boolean getFocusMarkerEnabled()

        Gets if this TitledTab should show its built-in focus marker when this tab has focus.

        Note: Disabling the focus marker is useful when for example creating a theme that draws its own focus marker.

        Returns:
        true for enabled, otherwise false
        Since:
        ITP 1.4.0
      • setSizePolicy

        public TitledTabProperties setSizePolicy​(TitledTabSizePolicy sizePolicy)
        Sets the size policy for this TitledTab
        Parameters:
        sizePolicy - the size policy
        Returns:
        this TitledTabProperties
      • getSizePolicy

        public TitledTabSizePolicy getSizePolicy()
        Gets the size policy for this TitledTab
        Returns:
        the size policy
      • setBorderSizePolicy

        public TitledTabProperties setBorderSizePolicy​(TitledTabBorderSizePolicy sizePolicy)
        Sets the border size policy for this TitledTab
        Parameters:
        sizePolicy - the border size policy
        Returns:
        this TitledTabProperties
      • getBorderSizePolicy

        public TitledTabBorderSizePolicy getBorderSizePolicy()
        Gets the border size policy for this TitledTab
        Returns:
        the border size policy
      • setMinimumSizeProvider

        public TitledTabProperties setMinimumSizeProvider​(DimensionProvider size)
        Sets the tab's minimum size dimension provider
        Parameters:
        size - the minimum size dimension provider or null if tab's default minimum size should be used instead
        Returns:
        this TitledTabProperties
      • getMinimumSizeProvider

        public DimensionProvider getMinimumSizeProvider()
        Gets the dimension provider for the tab's minimum size
        Returns:
        the minimum size provider or null if default tab minimum size is to be used instead
      • setHighlightedRaised

        public TitledTabProperties setHighlightedRaised​(int amount)
        Sets how many pixels higher this TitledTab will be when it is in its highlighted state compared to its normal and disabled state
        Parameters:
        amount - number of pixels
        Returns:
        this TitledTabProperties
      • getHighlightedRaised

        public int getHighlightedRaised()
        Gets how many pixels higher this TitledTab will be when it is in its highlighted state compared to its normal and disabled state
        Returns:
        number of pixels
      • setEnabled

        public TitledTabProperties setEnabled​(boolean value)

        Sets if this TitledTab should be enabled or not.

        Note: Calling TitledTab.setEnabled(boolean) will modify this property for the tab.

        Parameters:
        value - true for enabled, otherwise false
        Returns:
        this TitledTabProperties
        Since:
        ITP 1.5.0
      • getEnabled

        public boolean getEnabled()
        Gets if this TitledTab is enabled or disabled
        Returns:
        true for enabled, otherwise false
        Since:
        ITP 1.5.0
      • setHoverListener

        public TitledTabProperties setHoverListener​(HoverListener listener)

        Sets the hover listener that will be triggered when the tab is hovered by the mouse.

        The hovered titled tab will be the source of the hover event sent to the hover listener.

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

        public HoverListener getHoverListener()

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

        The hovered titled tab will be the source of the hover event sent to the hover listener.

        Returns:
        the hover listener
        Since:
        ITP 1.3.0