# QwtPickerMachine Class Reference

A state machine for QwtPicker selections. More...

`#include <qwt_picker_machine.h>`

Inheritance diagram for QwtPickerMachine:
[legend]

List of all members.

## Public Types

enum | Command { Begin, Append, Move, Remove, End }
enum | SelectionType { NoSelection = -1, PointSelection, RectSelection, PolygonSelection }

## Public Member Functions

| QwtPickerMachine (SelectionType)
void | reset ()
SelectionType | selectionType () const
void | setState (int)
int | state () const
virtual QList< Command > | transition (const QwtEventPattern &, const QEvent *)=0
virtual | ~QwtPickerMachine ()

## Detailed Description

A state machine for QwtPicker selections.

QwtPickerMachine accepts key and mouse events and translates them into selection commands.

See also:
  QwtEventPattern::MousePatternCode, QwtEventPattern::KeyPatternCode

## Member Enumeration Documentation

enum QwtPickerMachine::Command

Commands - the output of a state machine.

enum QwtPickerMachine::SelectionType

Type of a selection.

See also:
  selectionType()

Enumerator:

  NoSelection | The state machine not usable for any type of selection.
  PointSelection | The state machine is for selecting a single point.
  RectSelection | The state machine is for selecting a rectangle (2 points).
  PolygonSelection | The state machine is for selecting a polygon (many points).

## Constructor & Destructor Documentation

QwtPickerMachine::QwtPickerMachine | ( | SelectionType | type | ) |

Constructor.

QwtPickerMachine::~QwtPickerMachine | ( |  | ) | `[virtual]`

Destructor.

## Member Function Documentation

void QwtPickerMachine::reset | ( |  | ) |

Set the current state to 0.

QwtPickerMachine::SelectionType QwtPickerMachine::selectionType | ( |  | ) | const

Return the selection type.

void QwtPickerMachine::setState | ( | int | state | ) |

Change the current state.

int QwtPickerMachine::state | ( |  | ) | const

Return the current state.

virtual QList<Command> QwtPickerMachine::transition | ( | const QwtEventPattern & | ,
|  | const QEvent * |
| ) |  | `[pure virtual]`

Transition.

Implemented in QwtPickerTrackerMachine, QwtPickerClickPointMachine, QwtPickerDragPointMachine, QwtPickerClickRectMachine, QwtPickerDragRectMachine, and QwtPickerPolygonMachine.