org.jdesktop.swingx.plaf.basic
Class BasicTaskPaneUI

java.lang.Object
  extended by javax.swing.plaf.ComponentUI
      extended by javax.swing.plaf.PanelUI
          extended by org.jdesktop.swingx.plaf.TaskPaneUI
              extended by org.jdesktop.swingx.plaf.basic.BasicTaskPaneUI
Direct Known Subclasses:
GlossyTaskPaneUI, MetalTaskPaneUI, NimbusTaskPaneUI, WindowsClassicTaskPaneUI, WindowsTaskPaneUI

public class BasicTaskPaneUI
extends TaskPaneUI

Base implementation of the JXTaskPane UI.

Author:
Frederic Lavigne

Nested Class Summary
protected static class BasicTaskPaneUI.ChevronIcon
          Toggle icon.
protected static class BasicTaskPaneUI.ContentPaneBorder
          The border around the content pane
protected  class BasicTaskPaneUI.PaneBorder
          The border of the taskpane group paints the "text", the "icon", the "expanded" status and the "special" type.
 
Field Summary
protected  JXTaskPane group
           
protected  MouseInputListener mouseListener
           
protected  boolean mouseOver
           
protected  PropertyChangeListener propertyListener
           
protected  int roundHeight
           
protected  int titleHeight
           
 
Constructor Summary
BasicTaskPaneUI()
           
 
Method Summary
protected  void configure(JXHyperlink link)
          Configures internally used hyperlink on new action creation and on every call to updateUI().
 Component createAction(Action action)
          Called by the component when an action is added to the component through the JXTaskPane.add(Action) method.
protected  Border createContentPaneBorder()
          Creates content pane border.
protected  MouseInputListener createMouseInputListener()
          Creates new toggle listener.
protected  Border createPaneBorder()
          Creates new border for task pane.
protected  PropertyChangeListener createPropertyListener()
          Creates property change listener for task pane.
static ComponentUI createUI(JComponent c)
           
protected  void ensureVisible()
          Ensures expanded group is visible.
 Dimension getPreferredSize(JComponent c)
           
protected  int getRoundHeight()
          Gets size of arc used to round corners.
protected  int getTitleHeight(Component c)
          Gets current title height.
protected  void installDefaults()
          Installs default properties.
protected  void installKeyboardActions()
          Installs keyboard actions to allow task pane to react on hot keys.
protected  void installListeners()
          Installs listeners for UI delegate.
 void installUI(JComponent c)
          
protected  boolean isInBorder(MouseEvent event)
          Evaluates whenever given mouse even have occurred within borders of task pane.
protected  void uninstallListeners()
          Uninstalls previously installed listeners to free component for garbage collection.
 void uninstallUI(JComponent c)
           
 
Methods inherited from class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, paint, update
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

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 Detail

BasicTaskPaneUI

public BasicTaskPaneUI()
Method Detail

createUI

public static ComponentUI createUI(JComponent c)

installUI

public void installUI(JComponent c)

Overrides:
installUI in class ComponentUI

installDefaults

protected void installDefaults()
Installs default properties. Following properties are installed:


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.

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.

Overrides:
createAction in class TaskPaneUI
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.


Copyright © 2012. All Rights Reserved.