Package com.explodingpixels.macwidgets

## Class IAppWidgetFactory

- java.lang.Object
- - com.explodingpixels.macwidgets.IAppWidgetFactory

    public class IAppWidgetFactory
    extends java.lang.Object

A factory for iApp style widgets.

### Method Summary

All Methods Static Methods Concrete Methods
`static javax.swing.JScrollPane` `createScrollPane​(java.awt.Component view)` Creates an iApp style `JScrollPane`, with vertical and horizontal scrollbars shown as needed.
`static javax.swing.JScrollPane` `createScrollPane​(java.awt.Component view, int verticalScrollBarPolicy, int horizontalScrollBarPolicy)` Creates an iApp style `JScrollPane` using the given scroll bar policies.
`static javax.swing.JComponent` `createScrollPaneCorner()` Creates an iApp style scrollpane corner.
`static javax.swing.JComponent` `createScrollPaneCornerLowerLeft()` Creates an iApp style scrollpane corner.
`static javax.swing.JScrollPane` `makeIAppScrollPane​(javax.swing.JScrollPane scrollPane)` Makes the given `JScrollPane` an iApp style scroll pane that looks like this:
`static void` `setIAppScrollBarButtonsSeparate​(boolean buttonsApart)` Sets the default "buttons separate" status for scroll bars.

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

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

### Method Detail

#### createScrollPane

    public static javax.swing.JScrollPane createScrollPane​(java.awt.Component view)

Creates an iApp style `JScrollPane`, with vertical and horizontal scrollbars shown as needed. The increment/decrement buttons will be placed together or separatebased on the value of `IAppScrollBarUI.areButtonsSeparate()`.

Parameters:
  `view` - the view to wrap inside the `JScrollPane`.
Returns:
  an iApp style `JScrollPane`.
See Also:
  `makeIAppScrollPane(javax.swing.JScrollPane)`

#### createScrollPane

    public static javax.swing.JScrollPane createScrollPane​(java.awt.Component view,
                                                           int verticalScrollBarPolicy,
                                                           int horizontalScrollBarPolicy)

Creates an iApp style `JScrollPane` using the given scroll bar policies. The increment/decrement buttons will be placed together or separatebased on the value of `IAppScrollBarUI.areButtonsSeparate()`.

Parameters:
  `view` - the view to wrap inside the `JScrollPane`.
  `verticalScrollBarPolicy` - the vertical scroll bar policy.
  `horizontalScrollBarPolicy` - the horizontal scroll bar policy.
Returns:
  an iApp style `JScrollPane` using the given scroll bar policies.
See Also:
  `makeIAppScrollPane(javax.swing.JScrollPane)`

#### makeIAppScrollPane

    public static javax.swing.JScrollPane makeIAppScrollPane​(javax.swing.JScrollPane scrollPane)

Makes the given `JScrollPane` an iApp style scroll pane that looks like this:

Parameters:
  `scrollPane` - the `JScrollPane` to make an iApp style scroll pane.
Returns:
  an iApp style scroll pane.

#### setIAppScrollBarButtonsSeparate

    public static void setIAppScrollBarButtonsSeparate​(boolean buttonsApart)

Sets the default "buttons separate" status for scroll bars. The default value is `false`, meaning that the buttons will be placed together at the right or bottom of the scroll bar. A value of `true` means that the buttons will be placed at opposite ends of the scroll bar.

Parameters:
  `buttonsApart` - the "buttons apart" status.

#### createScrollPaneCorner

    public static javax.swing.JComponent createScrollPaneCorner()

Creates an iApp style scrollpane corner.

Returns:
  returns a `JComponent` that represents the scroll pane corner.

#### createScrollPaneCornerLowerLeft

    public static javax.swing.JComponent createScrollPaneCornerLowerLeft()

Creates an iApp style scrollpane corner.

Returns:
  returns a `JComponent` that represents the scroll pane corner.