Package org.eclipse.ui.forms.widgets

# Class Twistie

java.lang.Object
org.eclipse.swt.widgets.Widget
org.eclipse.swt.widgets.Control
org.eclipse.swt.widgets.Scrollable
org.eclipse.swt.widgets.Composite
org.eclipse.swt.widgets.Canvas
org.eclipse.ui.forms.widgets.AbstractHyperlink
org.eclipse.ui.forms.widgets.ToggleHyperlink
org.eclipse.ui.forms.widgets.Twistie

All Implemented Interfaces:
  `Drawable`

public class Twistie extends ToggleHyperlink
A custom selectable control that can be used to control areas that can be expanded or collapsed. The control control can be toggled between selected and deselected state with a mouse or by pressing 'Enter' while the control has focus.

The control is rendered as a triangle that points to the right in the collapsed and down in the expanded state. Triangle color can be changed.

Styles:
  None

Since:
  3.0
See Also:
  - `TreeNode`

## Field Summary

### Fields inherited from class org.eclipse.ui.forms.widgets.ToggleHyperlink

`hover, innerHeight, innerWidth`

### Fields inherited from class org.eclipse.ui.forms.widgets.AbstractHyperlink

`marginHeight, marginWidth`

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

`handle`

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

`nativeZoom`

## Constructor Summary

Constructors
Constructor
Description
`Twistie(Composite parent, int style)`
Creates a control in a provided composite.

## Method Summary

Modifier and Type
Method
Description
`protected void`
`paintHyperlink(GC gc)`
Paints the hyperlink as a reaction to the provided paint event.
`void`
`setEnabled(boolean enabled)`
Enables the receiver if the argument is `true`, and disables it otherwise.

### Methods inherited from class org.eclipse.ui.forms.widgets.ToggleHyperlink

`computeSize, geHoverDecorationColor, getDecorationColor, getHoverDecorationColor, isExpanded, setDecorationColor, setExpanded, setHoverDecorationColor`

### Methods inherited from class org.eclipse.ui.forms.widgets.AbstractHyperlink

`addHyperlinkListener, getHref, getSelection, getText, handleActivate, handleEnter, handleExit, paint, removeHyperlinkListener, setHref`

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

`drawBackground, getCaret, getIME, scroll, setCaret, setFont, setIME`

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

`changed, checkSubclass, drawBackground, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayout, setLayoutDeferred, setTabList, toString`

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

`computeTrim, getClientArea, getHorizontalBar, getScrollbarsMode, getVerticalBar, setScrollbarsMode`

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

`addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBorderWidth, getBounds, getCursor, getData, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getOrientation, getParent, getRegion, getShell, getSize, getTextDirection, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, requestLayout, setAutoscalingMode, setBackground, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setData, setDragDetect, setForeground, setLayoutData, setLocation, setLocation, setMenu, setOrientation, setParent, setRedraw, setRegion, setSize, setSize, setTextDirection, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update`

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

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

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

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

### Methods inherited from interface org.eclipse.swt.graphics.Drawable

`isAutoScalable`

## Constructor Details

### Twistie

public Twistie(Composite parent, int style)
Creates a control in a provided composite.

Parameters:
  `parent` - the parent
  `style` - the style

## Method Details

### paintHyperlink

protected void paintHyperlink(GC gc)
Description copied from class: `AbstractHyperlink`
Paints the hyperlink as a reaction to the provided paint event.

Specified by:
  `paintHyperlink` in class `AbstractHyperlink`
Parameters:
  `gc` - graphic context

### setEnabled

public void setEnabled(boolean enabled)
Description copied from class: `Control`
Enables the receiver if the argument is `true`, and disables it otherwise. A disabled control is typically not selectable from the user interface and draws with an inactive or "grayed" look.

Overrides:
  `setEnabled` in class `AbstractHyperlink`
Parameters:
  `enabled` - the new enabled state