Package org.eclipse.swt.widgets

# Class ExpandItem

java.lang.Object
org.eclipse.swt.widgets.Widget
org.eclipse.swt.widgets.Item
org.eclipse.swt.widgets.ExpandItem

public class ExpandItem extends Item
Instances of this class represent a selectable user interface object that represents a expandable item in a expand bar.

Styles:
  (none)
Events:
  (none)

IMPORTANT: This class is not intended to be subclassed.

Since:
  3.2
See Also:
  - `ExpandBar`
  - Sample code and further information
Restriction:
  This class is not intended to be subclassed by clients.

## Field Summary

### Fields inherited from class org.eclipse.swt.widgets.Widget

`nativeZoom`

## Constructor Summary

Constructors
Constructor
Description
`ExpandItem(ExpandBar parent, int style)`
Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.
`ExpandItem(ExpandBar parent, int style, int index)`
Constructs a new instance of this class given its parent, a style value describing its behavior and appearance, and the index at which to place it in the items maintained by its parent.

## Method Summary

Modifier and Type
Method
Description
`Control`
`getControl()`
Returns the control that is shown when the item is expanded.
`boolean`
`getExpanded()`
Returns `true` if the receiver is expanded, and false otherwise.
`int`
`getHeaderHeight()`
Returns the height of the receiver's header
`int`
`getHeight()`
Gets the height of the receiver.
`ExpandBar`
`getParent()`
Returns the receiver's parent, which must be a `ExpandBar`.
`void`
`setControl(Control control)`
Sets the control that is shown when the item is expanded.
`void`
`setExpanded(boolean expanded)`
Sets the expanded state of the receiver.
`void`
`setHeight(int height)`
Sets the height of the receiver.
`void`
`setImage(Image image)`
Sets the receiver's image to the argument, which may be null indicating that no image should be displayed.
`void`
`setText(String string)`
Sets the receiver's text.

### Methods inherited from class org.eclipse.swt.widgets.Item

`checkSubclass, getImage, getText`

### Methods inherited from class org.eclipse.swt.widgets.Widget

`addDisposeListener, addListener, addTypedListener, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, getTypedListeners, isAutoDirection, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, removeListener, removeTypedListener, reskin, setData, setData, toString`

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

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

## Constructor Details

### ExpandItem

public ExpandItem(ExpandBar parent, int style)
Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

The style value is either one of the style constants defined in class `SWT` which is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using the `int` "|" operator) two or more of those `SWT` style constants. The class description lists the style constants that are applicable to the class. Style bits are also inherited from superclasses.

Parameters:
  `parent` - a composite control which will be the parent of the new instance (cannot be null)
  `style` - the style of control to construct
Throws:
  `IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if the parent is null
  `SWTException` -
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
  - ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass
See Also:
  - `Widget.checkSubclass()`
  - `Widget.getStyle()`

### ExpandItem

public ExpandItem(ExpandBar parent, int style, int index)
Constructs a new instance of this class given its parent, a style value describing its behavior and appearance, and the index at which to place it in the items maintained by its parent.

The style value is either one of the style constants defined in class `SWT` which is applicable to instances of this class, or must be built by bitwise OR'ing together (that is, using the `int` "|" operator) two or more of those `SWT` style constants. The class description lists the style constants that are applicable to the class. Style bits are also inherited from superclasses.

Parameters:
  `parent` - a composite control which will be the parent of the new instance (cannot be null)
  `style` - the style of control to construct
  `index` - the zero-relative index to store the receiver in its parent
Throws:
  `IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if the parent is null
  - ERROR_INVALID_RANGE - if the index is not between 0 and the number of elements in the parent (inclusive)
  `SWTException` -
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
  - ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass
See Also:
  - `Widget.checkSubclass()`
  - `Widget.getStyle()`

## Method Details

### getControl

public Control getControl()
Returns the control that is shown when the item is expanded. If no control has been set, return `null`.

Returns:
  the control
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getExpanded

public boolean getExpanded()
Returns `true` if the receiver is expanded, and false otherwise.

Returns:
  the expanded state
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getHeaderHeight

public int getHeaderHeight()
Returns the height of the receiver's header

Returns:
  the height of the header
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getHeight

public int getHeight()
Gets the height of the receiver.

Returns:
  the height
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### getParent

public ExpandBar getParent()
Returns the receiver's parent, which must be a `ExpandBar`.

Returns:
  the receiver's parent
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setControl

public void setControl(Control control)
Sets the control that is shown when the item is expanded.

Parameters:
  `control` - the new control (or null)
Throws:
  `IllegalArgumentException` -
  - ERROR_INVALID_ARGUMENT - if the control has been disposed
  - ERROR_INVALID_PARENT - if the control is not in the same widget tree
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setExpanded

public void setExpanded(boolean expanded)
Sets the expanded state of the receiver.

Parameters:
  `expanded` - the new expanded state
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setHeight

public void setHeight(int height)
Sets the height of the receiver. This is height of the item when it is expanded, excluding the height of the header.

Parameters:
  `height` - the new height
Throws:
  `SWTException` -
  - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setImage

public void setImage(Image image)
Description copied from class: `Item`
Sets the receiver's image to the argument, which may be null indicating that no image should be displayed.

Overrides:
  `setImage` in class `Item`
Parameters:
  `image` - the image to display on the receiver (may be null)

### setText

public void setText(String string)
Description copied from class: `Item`
Sets the receiver's text.

Note: If control characters like '\n', '\t' etc. are used in the string, then the behavior is platform dependent.

Overrides:
  `setText` in class `Item`
Parameters:
  `string` - the new text