Class BasicTaskPaneUI

Direct Known Subclasses:
GlossyTaskPaneUI, MetalTaskPaneUI, NimbusTaskPaneUI, WindowsClassicTaskPaneUI, WindowsTaskPaneUI

public class BasicTaskPaneUI extends TaskPaneUI
Base implementation of the JXTaskPane UI.
Author:
Frederic Lavigne
  • Field Details

    • titleHeight

      protected int titleHeight
    • roundHeight

      protected int roundHeight
    • group

      protected JXTaskPane group
    • mouseOver

      protected boolean mouseOver
    • mouseListener

      protected MouseInputListener mouseListener
    • propertyListener

      protected PropertyChangeListener propertyListener
  • Constructor Details

    • BasicTaskPaneUI

      public BasicTaskPaneUI()
  • Method Details

    • createUI

      public static ComponentUI createUI(JComponent c)
      factory
      Parameters:
      c - JComponent not used
      Returns:
      new instance of BasicTaskPaneUI
    • installUI

      public void installUI(JComponent c)
      Overrides:
      installUI in class ComponentUI
    • installDefaults

      protected void installDefaults()
      Installs default properties. Following properties are installed:
      • TaskPane.background
      • TaskPane.foreground
      • TaskPane.font
      • TaskPane.borderColor
      • TaskPane.titleForeground
      • TaskPane.titleBackgroundGradientStart
      • TaskPane.titleBackgroundGradientEnd
      • TaskPane.titleOver
      • TaskPane.specialTitleOver
      • TaskPane.specialTitleForeground
      • TaskPane.specialTitleBackground
    • installListeners

      protected void installListeners()
      Installs listeners for UI delegate.
    • installKeyboardActions

      protected void installKeyboardActions()
      Installs keyboard actions to allow task pane to react on hot keys.
    • uninstallUI

      public void uninstallUI(JComponent c)
      Overrides:
      uninstallUI in class ComponentUI
    • uninstallListeners

      protected void uninstallListeners()
      Uninstalls previously installed listeners to free component for garbage collection.
    • createMouseInputListener

      protected MouseInputListener createMouseInputListener()
      Creates new toggle listener.
      Returns:
      MouseInputListener reacting on toggle events of task pane.
    • createPropertyListener

      protected PropertyChangeListener createPropertyListener()
      Creates property change listener for task pane.
      Returns:
      Property change listener reacting on changes to the task pane.
    • isInBorder

      protected boolean isInBorder(MouseEvent event)
      Evaluates whenever given mouse even have occurred within borders of task pane.
      Parameters:
      event - Evaluated event.
      Returns:
      True if event occurred within task pane area, false otherwise.
    • getTitleHeight

      protected int getTitleHeight(Component c)
      Gets current title height. Default value is 25 if not specified otherwise. Method checks provided component for user set font (!instanceof FontUIResource), if font is set, height will be calculated from font metrics instead of using internal preset height.
      Parameters:
      c - Component
      Returns:
      Current title height.
    • createPaneBorder

      protected Border createPaneBorder()
      Creates new border for task pane.
      Returns:
      Fresh border on every call.
    • getPreferredSize

      public Dimension getPreferredSize(JComponent c)
      Overrides:
      getPreferredSize in class ComponentUI
    • createContentPaneBorder

      protected Border createContentPaneBorder()
      Creates content pane border.
      Returns:
      Fresh content pane border initialized with current value of TaskPane.borderColor on every call.
    • createAction

      public Component createAction(Action action)
      Description copied from class: TaskPaneUI
      Called by the component when an action is added to the component through the JXTaskPane.add(Action) method.

      The strategie to create the button icon in AbstractButton.setIconFromAction is first try Action.LARGE_ICON_KEY, if not exists then use Action.SMALL_ICON

      Overrides:
      createAction in class TaskPaneUI
      Parameters:
      action - ui action
      Returns:
      a component built from the action.
    • configure

      protected void configure(JXHyperlink link)
      Configures internally used hyperlink on new action creation and on every call to updateUI().
      Parameters:
      link - Configured hyperlink.
    • ensureVisible

      protected void ensureVisible()
      Ensures expanded group is visible. Issues delayed request for scrolling to visible.
    • getRoundHeight

      protected int getRoundHeight()
      Gets size of arc used to round corners.
      Returns:
      size of arc used to round corners of the panel.