# Class SelectionEvent

java.lang.Object
java.util.EventObject
org.eclipse.swt.events.TypedEvent
org.eclipse.swt.events.SelectionEvent

All Implemented Interfaces:
  `Serializable`

Direct Known Subclasses:
  `ExpandEvent, TreeEvent`

public class SelectionEvent extends TypedEvent
Instances of this class are sent as a result of widgets being selected.

Note: The fields that are filled in depend on the widget.

See Also:
  - `SelectionListener`
  - Sample code and further information
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`int`
`detail`
Extra detail information about the selection, depending on the widget.
`boolean`
`doit`
A flag indicating whether the operation should be allowed.
`int`
`height`
The height of selected area.
`Widget`
`item`
The item that was selected.
`int`
`stateMask`
The state of the keyboard modifier keys and mouse masks at the time the event was generated.
`String`
`text`
The text of the hyperlink that was selected.
`int`
`width`
The width of selected area.
`int`
`x`
The x location of the selected area.
`int`
`y`
The y location of selected area.

### Fields inherited from class TypedEvent

`data, display, time, widget`

### Fields inherited from class EventObject

`source`

## Constructor Summary

Constructors
Constructor
Description
`SelectionEvent(Event e)`
Constructs a new instance of this class based on the information in the given untyped event.

## Method Summary

Modifier and Type
Method
Description
`String`
`toString()`
Returns a string containing a concise, human-readable description of the receiver.

### Methods inherited from class EventObject

`getSource`

### Methods inherited from class Object

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

## Field Details

### item

public Widget item
The item that was selected.

### detail

public int detail
Extra detail information about the selection, depending on the widget.

Sash

- `SWT.DRAG`

ScrollBar and Slider

- `SWT.DRAG`
- `SWT.HOME`
- `SWT.END`
- `SWT.ARROW_DOWN`
- `SWT.ARROW_UP`
- `SWT.PAGE_DOWN`
- `SWT.PAGE_UP`

Table and Tree

- `SWT.CHECK`

Text

- `SWT.CANCEL`

CoolItem and ToolItem

- `SWT.ARROW`

### x

public int x
The x location of the selected area.

### y

public int y
The y location of selected area.

### width

public int width
The width of selected area.

### height

public int height
The height of selected area.

### stateMask

public int stateMask
The state of the keyboard modifier keys and mouse masks at the time the event was generated.

Note: Mouse button states are currently not included consistently for all widgets on all platforms. Clients should be prepared to receive button states, but should not rely on getting them everywhere.

See Also:
  - `SWT.MODIFIER_MASK`
  - `SWT.BUTTON_MASK`

### text

public String text
The text of the hyperlink that was selected. This will be either the text of the hyperlink or the value of its HREF, if one was specified.

Since:
  3.1
See Also:
  - `Link.setText(String)`

### doit

public boolean doit
A flag indicating whether the operation should be allowed. Setting this field to `false` will cancel the operation, depending on the widget.

## Constructor Details

### SelectionEvent

public SelectionEvent(Event e)
Constructs a new instance of this class based on the information in the given untyped event.

Parameters:
  `e` - the untyped event containing the information

## Method Details

### toString

public String toString()
Returns a string containing a concise, human-readable description of the receiver.

Overrides:
  `toString` in class `TypedEvent`
Returns:
  a string representation of the event