Package org.pushingpixels.substance.internal.utils.icon

# Class ArrowButtonTransitionAwareIcon

java.lang.Object
org.pushingpixels.substance.internal.utils.icon.ArrowButtonTransitionAwareIcon

All Implemented Interfaces:
  `Icon`

public class ArrowButtonTransitionAwareIcon extends Object implements Icon
Transition aware implementation of arrow button icons. Used for implementing icons of scroll bar buttons, combobox buttons, menus and more.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected JComponent`
`component`
`protected TransitionAwareIcon.Delegate`
`delegate`
Delegate to compute the actual icons.
`protected int`
`iconHeight`
Icon height.
`protected int`
`iconWidth`
Icon width.

## Constructor Summary

Constructors
Constructor
Description
`ArrowButtonTransitionAwareIcon(AbstractButton button, int orientation)`
`ArrowButtonTransitionAwareIcon(JComponent component, TransitionAwareIcon.TransitionAwareUIDelegate transitionAwareUIDelegate, int orientation)`
Creates an arrow icon.

## Method Summary

Modifier and Type
Method
Description
`int`
`getIconHeight()`
`int`
`getIconWidth()`
`void`
`paintIcon(Component c, Graphics g, int x, int y)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### iconWidth

protected int iconWidth
Icon width.

### iconHeight

protected int iconHeight
Icon height.

### delegate

protected TransitionAwareIcon.Delegate delegate
Delegate to compute the actual icons.

### component

protected JComponent component

## Constructor Details

### ArrowButtonTransitionAwareIcon

public ArrowButtonTransitionAwareIcon(AbstractButton button, int orientation)

### ArrowButtonTransitionAwareIcon

public ArrowButtonTransitionAwareIcon(JComponent component, TransitionAwareIcon.TransitionAwareUIDelegate transitionAwareUIDelegate, int orientation)
Creates an arrow icon.

Parameters:
  `component` - Arrow button.
  `orientation` - Arrow icon orientation.

## Method Details

### paintIcon

public void paintIcon(Component c, Graphics g, int x, int y)

Specified by:
  `paintIcon` in interface `Icon`

### getIconHeight

public int getIconHeight()

Specified by:
  `getIconHeight` in interface `Icon`

### getIconWidth

public int getIconWidth()

Specified by:
  `getIconWidth` in interface `Icon`