# Class SplitPane.Settings

java.lang.Object
com.codename1.components.SplitPane.Settings

Enclosing class:
  `SplitPane`

public static class SplitPane.Settings extends Object
An object to configure settings for a SplitPane. Build an instance of this class to define such things as the divider thickness, the insets, and the UIIDs to use for the various icons (collapse/expand/drag) on the divider. Once you have set all of the settings, you can pass this to `com.codename1.ui.Component, com.codename1.ui.Component)` to create the corresponding SplitPane instance.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Settings()`
  Creates a new Settings with default values.
  `Settings(int orientation, String minInset, String preferredInset, String maxInset)`
  Creates a new Settings with the provided orientation, and insets.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `SplitPane.Settings`
  `buttonUIIDs(String uiid)`
  Sets the UIID to use for all of the buttons on the divider.
  `SplitPane.Settings`
  `collapseButtonUIID(String collapseButtonUIID)`
  Sets the UIID to use for the collapse button.
  `SplitPane.Settings`
  `collapseIcon(Image icon)`
  Sets the icon to use for the collapse button.
  `SplitPane.Settings`
  `collapseMaterialIcon(char icon)`
  Sets the material icon to use for the collapse button.
  `SplitPane.Settings`
  `dividerThicknessMM(float dividerThicknessMM)`
  Sets the preferred divider thickness in Millimetres.
  `SplitPane.Settings`
  `dividerUIID(String uiid)`
  A custom UIID to use for the divider.
  `SplitPane.Settings`
  `dragHandleIcon(Image icon)`
  Sets the icon to use for the drag handle.
  `SplitPane.Settings`
  `dragHandleMaterialIcon(char icon)`
  Sets the material icon to use for the drag handle.
  `SplitPane.Settings`
  `dragHandleUIID(String dragHandleUIID)`
  Sets the UIID to use for the drag handle on the divider.
  `SplitPane.Settings`
  `expandButtonUIID(String expandButtonUIID)`
  Sets the UIID to use for the expand button.
  `SplitPane.Settings`
  `expandIcon(Image icon)`
  Sets the icon to use for the expand button.
  `SplitPane.Settings`
  `expandMaterialIcon(char icon)`
  Sets the material icon to use for the expand button.
  `SplitPane.Settings`
  `insets(String min, String preferred, String max)`
  Sets the min, preferred, and max insets in a single method.
  `SplitPane.Settings`
  `maxInset(String maxInset)`
  Sets the max inset for the divider.
  `SplitPane.Settings`
  `minInset(String minInset)`
  Sets the minimum inset for the divider.
  `SplitPane.Settings`
  `orientation(int orientation)`
  Sets the orientation.
  `SplitPane.Settings`
  `preferredInset(String preferredInset)`
  Sets the preferred inset for the divider.
  `SplitPane.Settings`
  `showDragHandle(boolean show)`
  Set whether to show the drag handle on the divider.
  `SplitPane.Settings`
  `showExpandCollapseButtons(boolean show)`
  Set whether to show the expand/collapse buttons on the divider.

  ### Methods inherited from class Object

  `clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
  Modifier and Type
  Method
  Description
  `protected Object`
  `clone()`
  `boolean`
  `equals(Object obj)`
  Indicates whether some other object is "equal to" this one.
  `final Class`
  `getClass()`
  Returns the runtime class of an object.
  `int`
  `hashCode()`
  Returns a hash code value for the object.
  `final void`
  `notify()`
  Wakes up a single thread that is waiting on this object's monitor.
  `final void`
  `notifyAll()`
  Wakes up all threads that are waiting on this object's monitor.
  `String`
  `toString()`
  Returns a string representation of the object.
  `final void`
  `wait()`
  Causes current thread to wait until another thread invokes the method or the method for this object.
  `final void`
  `wait(long timeout)`
  Causes current thread to wait until either another thread invokes the method or the method for this object, or a specified amount of time has elapsed.
  `final void`
  `wait(long timeout, int nanos)`
  Causes current thread to wait until another thread invokes the method or the method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.

- ## Constructor Details

  - ### Settings

    public Settings()
    Creates a new Settings with default values.

  - ### Settings

    public Settings(int orientation, String minInset, String preferredInset, String maxInset)

    Creates a new Settings with the provided orientation, and insets.

    ###### Parameters

    - `orientation`: The orientation. One of `#HORIZONTAL_SPLIT` or `#VERTICAL_SPLIT`.

    - `minInset`: The minimum allowable inset for the divider. The inset should be expressed as a string with both a value and a unit. E.g. "75%", "50mm", "200px".

    - `preferredInset`: The default preferred inset for the divider. The inset should be expressed as a string with both value and unit. E.g. "75%", "50mm", "20px".

    - `maxInset`: The maximum allowable inset for the divider. The inset should be expressed as a string with both a value and a unit. E.g. "75%", "50mm", "20px".

- ## Method Details

  - ### orientation

    public SplitPane.Settings orientation(int orientation)

    Sets the orientation.

    ###### Parameters

    - `orientation`: The orientation. One of `#HORIZONTAL_SPLIT` or `#VERTICAL_SPLIT`.

    ###### Returns

    Self for chaining.

  - ### expandButtonUIID

    public SplitPane.Settings expandButtonUIID(String expandButtonUIID)

    Sets the UIID to use for the expand button. Default is "Label"

    ###### Parameters

    - `expandButtonUIID`: The UIID to use for the expand button.

    ###### Returns

    Self for chaining.

    ###### See also

    - #collapseButtonUIID(java.lang.String)

    - #dragHandleUIID(java.lang.String)

    - #buttonUIIDs(java.lang.String)

  - ### collapseButtonUIID

    public SplitPane.Settings collapseButtonUIID(String collapseButtonUIID)

    Sets the UIID to use for the collapse button. Default is "Label"

    ###### Parameters

    - `collapseButtonUIID`: The UIID to use for the collapse button.

    ###### Returns

    Self for chaining.

    ###### See also

    - #dragHandleUIID(java.lang.String)

    - #buttonUIIDs(java.lang.String)

    - #expandButtonUIID(java.lang.String)

  - ### dragHandleUIID

    public SplitPane.Settings dragHandleUIID(String dragHandleUIID)

    Sets the UIID to use for the drag handle on the divider. Default is "Label"

    ###### Parameters

    - `dragHandleUIID`: The UIID to use for the drag handle of the divider.

    ###### Returns

    Self for chaining.

    ###### See also

    - #buttonUIIDs(java.lang.String)

    - #expandButtonUIID(java.lang.String)

    - #collapseButtonUIID(java.lang.String)

  - ### buttonUIIDs

    public SplitPane.Settings buttonUIIDs(String uiid)

    Sets the UIID to use for all of the buttons on the divider. This includes the drag handle, the collapse button, and the expand button. This is a convenience method that is equivalent of calling `#expandButtonUIID(java.lang.String)`, `#collapseButtonUIID(java.lang.String)`, and `#dragHandleUIID(java.lang.String)` all with the same value.

    ###### Parameters

    - `uiid`: The UIID to use for the buttons on the divider.

    ###### Returns

    Self for chaining.

  - ### collapseIcon

    public SplitPane.Settings collapseIcon(Image icon)

    Sets the icon to use for the collapse button.

    ###### Parameters

    - `icon`

  - ### expandIcon

    public SplitPane.Settings expandIcon(Image icon)

    Sets the icon to use for the expand button.

    ###### Parameters

    - `icon`

  - ### dragHandleIcon

    public SplitPane.Settings dragHandleIcon(Image icon)

    Sets the icon to use for the drag handle.

    ###### Parameters

    - `icon`

  - ### collapseMaterialIcon

    public SplitPane.Settings collapseMaterialIcon(char icon)

    Sets the material icon to use for the collapse button.

    ###### Parameters

    - `icon`

  - ### expandMaterialIcon

    public SplitPane.Settings expandMaterialIcon(char icon)

    Sets the material icon to use for the expand button.

    ###### Parameters

    - `icon`

  - ### dragHandleMaterialIcon

    public SplitPane.Settings dragHandleMaterialIcon(char icon)

    Sets the material icon to use for the drag handle.

    ###### Parameters

    - `icon`

  - ### dividerThicknessMM

    public SplitPane.Settings dividerThicknessMM(float dividerThicknessMM)

    Sets the preferred divider thickness in Millimetres.

    ###### Parameters

    - `dividerThicknessMM`: The divider thickness in Millimetres.

    ###### Returns

    Self for chaining.

  - ### dividerUIID

    public SplitPane.Settings dividerUIID(String uiid)

    A custom UIID to use for the divider. Leave null to use default.

    ###### Parameters

    - `uiid`: The custom UIID

    ###### Returns

    self for chaining.

  - ### minInset

    public SplitPane.Settings minInset(String minInset)

    Sets the minimum inset for the divider.

    ###### Parameters

    - `minInset`: The minimum allowable inset for the divider. The inset should be expressed as a string with both a value and a unit. E.g. "75%", "50mm", "200px".

    ###### Returns

    Self for chaining.

  - ### preferredInset

    public SplitPane.Settings preferredInset(String preferredInset)

    Sets the preferred inset for the divider.

    ###### Parameters

    - `preferredInset`: The preferred inset for the divider. The inset should be expressed as a string with both a value and a unit. E.g. "75%", "50mm", "200px".

    ###### Returns

    Self for chaining.

  - ### maxInset

    public SplitPane.Settings maxInset(String maxInset)

    Sets the max inset for the divider.

    ###### Parameters

    - `maxInset`: The max inset for the divider. The inset should be expressed as a string with both a value and a unit. E.g. "75%", "50mm", "200px".

  - ### insets

    public SplitPane.Settings insets(String min, String preferred, String max)

    Sets the min, preferred, and max insets in a single method. This is equivalent of calling `#minInset(java.lang.String)`, `#maxInset(java.lang.String)`, and `#preferredInset(java.lang.String)` separately.

    ###### Parameters

    - `min`: The min inset for the divider. The inset should be expressed as a string with both a value and a unit. E.g. "75%", "50mm", "200px".

    - `preferred`: The preferred inset for the divider. The inset should be expressed as a string with both a value and a unit. E.g. "75%", "50mm", "200px".

    - `max`: The max inset for the divider.

    ###### Returns

    Self for chaining.

  - ### showExpandCollapseButtons

    public SplitPane.Settings showExpandCollapseButtons(boolean show)

    Set whether to show the expand/collapse buttons on the divider. Default is true.

    ###### Parameters

    - `show`: true to show the expand/collapse buttons. false to hide them.

    ###### Returns

    Self for chaining.

  - ### showDragHandle

    public SplitPane.Settings showDragHandle(boolean show)

    Set whether to show the drag handle on the divider. Default is true.

    ###### Parameters

    - `show`: true to show the expand/collapse buttons. false to hide them.

    ###### Returns

    Self for chaining.