Qwt User's Guide  6.1.6
QwtEventPattern Class Reference

A collection of event patterns. More...

#include <qwt_event_pattern.h>

Inheritance diagram for QwtEventPattern:

Classes

class  KeyPattern
 A pattern for key events. More...
 
class  MousePattern
 A pattern for mouse events. More...
 

Public Types

enum  MousePatternCode {
  MouseSelect1, MouseSelect2, MouseSelect3, MouseSelect4,
  MouseSelect5, MouseSelect6, MousePatternCount
}
 Symbolic mouse input codes. More...
 
enum  KeyPatternCode {
  KeySelect1, KeySelect2, KeyAbort, KeyLeft,
  KeyRight, KeyUp, KeyDown, KeyRedo,
  KeyUndo, KeyHome, KeyPatternCount
}
 Symbolic keyboard input codes. More...
 

Public Member Functions

 QwtEventPattern ()
 
virtual ~QwtEventPattern ()
 Destructor.
 
void initMousePattern (int numButtons)
 
void initKeyPattern ()
 
void setMousePattern (MousePatternCode, Qt::MouseButton button, Qt::KeyboardModifiers=Qt::NoModifier)
 
void setKeyPattern (KeyPatternCode, int key, Qt::KeyboardModifiers modifiers=Qt::NoModifier)
 
void setMousePattern (const QVector< MousePattern > &)
 Change the mouse event patterns.
 
void setKeyPattern (const QVector< KeyPattern > &)
 Change the key event patterns.
 
const QVector< MousePattern > & mousePattern () const
 
const QVector< KeyPattern > & keyPattern () const
 
QVector< MousePattern > & mousePattern ()
 
QVector< KeyPattern > & keyPattern ()
 
bool mouseMatch (MousePatternCode, const QMouseEvent *) const
 Compare a mouse event with an event pattern. More...
 
bool keyMatch (KeyPatternCode, const QKeyEvent *) const
 Compare a key event with an event pattern. More...
 

Protected Member Functions

virtual bool mouseMatch (const MousePattern &, const QMouseEvent *) const
 Compare a mouse event with an event pattern. More...
 
virtual bool keyMatch (const KeyPattern &, const QKeyEvent *) const
 Compare a key event with an event pattern. More...
 

Detailed Description

A collection of event patterns.

QwtEventPattern introduces an level of indirection for mouse and keyboard inputs. Those are represented by symbolic names, so the application code can be configured by individual mappings.

See also
QwtPicker, QwtPickerMachine, QwtPlotZoomer

Member Enumeration Documentation

◆ KeyPatternCode

Symbolic keyboard input codes.

Individual settings can be configured using setKeyPattern()

See also
setKeyPattern(), setMousePattern()
Enumerator
KeySelect1 

Qt::Key_Return.

KeySelect2 

Qt::Key_Space.

KeyAbort 

Qt::Key_Escape.

KeyLeft 

Qt::Key_Left.

KeyRight 

Qt::Key_Right.

KeyUp 

Qt::Key_Up.

KeyDown 

Qt::Key_Down.

KeyRedo 

Qt::Key_Plus.

KeyUndo 

Qt::Key_Minus.

KeyHome 

Qt::Key_Escape.

KeyPatternCount 

Number of key patterns.

◆ MousePatternCode

Symbolic mouse input codes.

QwtEventPattern implements 3 different settings for mice with 1, 2, or 3 buttons that can be activated using initMousePattern(). The default setting is for 3 button mice.

Individual settings can be configured using setMousePattern().

See also
initMousePattern(), setMousePattern(), setKeyPattern()
Enumerator
MouseSelect1 

The default setting for 1, 2 and 3 button mice is:

  • Qt::LeftButton
  • Qt::LeftButton
  • Qt::LeftButton
MouseSelect2 

The default setting for 1, 2 and 3 button mice is:

  • Qt::LeftButton + Qt::ControlModifier
  • Qt::RightButton
  • Qt::RightButton
MouseSelect3 

The default setting for 1, 2 and 3 button mice is:

  • Qt::LeftButton + Qt::AltModifier
  • Qt::LeftButton + Qt::AltModifier
  • Qt::MidButton
MouseSelect4 

The default setting for 1, 2 and 3 button mice is:

  • Qt::LeftButton + Qt::ShiftModifier
  • Qt::LeftButton + Qt::ShiftModifier
  • Qt::LeftButton + Qt::ShiftModifier
MouseSelect5 

The default setting for 1, 2 and 3 button mice is:

  • Qt::LeftButton + Qt::ControlButton | Qt::ShiftModifier
  • Qt::RightButton + Qt::ShiftModifier
  • Qt::RightButton + Qt::ShiftModifier
MouseSelect6 

The default setting for 1, 2 and 3 button mice is:

  • Qt::LeftButton + Qt::AltModifier + Qt::ShiftModifier
  • Qt::LeftButton + Qt::AltModifier | Qt::ShiftModifier
  • Qt::MidButton + Qt::ShiftModifier
MousePatternCount 

Number of mouse patterns.

Constructor & Destructor Documentation

◆ QwtEventPattern()

QwtEventPattern::QwtEventPattern ( )

Constructor

See also
MousePatternCode, KeyPatternCode

Member Function Documentation

◆ initKeyPattern()

void QwtEventPattern::initKeyPattern ( )

Set default mouse patterns.

See also
KeyPatternCode

◆ initMousePattern()

void QwtEventPattern::initMousePattern ( int  numButtons)

Set default mouse patterns, depending on the number of mouse buttons

Parameters
numButtonsNumber of mouse buttons ( <= 3 )
See also
MousePatternCode

◆ keyMatch() [1/2]

bool QwtEventPattern::keyMatch ( const KeyPattern pattern,
const QKeyEvent *  event 
) const
protectedvirtual

Compare a key event with an event pattern.

A key event matches the pattern when both have the same key value and in the state value the same key flags (Qt::KeyButtonMask) are set.

Parameters
patternKey event pattern
eventKey event
Returns
true if matches
See also
mouseMatch()

◆ keyMatch() [2/2]

bool QwtEventPattern::keyMatch ( KeyPatternCode  code,
const QKeyEvent *  event 
) const

Compare a key event with an event pattern.

A key event matches the pattern when both have the same key value and in the state value the same key flags (Qt::KeyButtonMask) are set.

Parameters
codeIndex of the event pattern
eventKey event
Returns
true if matches
See also
mouseMatch()

◆ keyPattern() [1/2]

QVector< QwtEventPattern::KeyPattern > & QwtEventPattern::keyPattern ( )
Returns
Key pattern

◆ keyPattern() [2/2]

const QVector< QwtEventPattern::KeyPattern > & QwtEventPattern::keyPattern ( ) const
Returns
Key pattern

◆ mouseMatch() [1/2]

bool QwtEventPattern::mouseMatch ( const MousePattern pattern,
const QMouseEvent *  event 
) const
protectedvirtual

Compare a mouse event with an event pattern.

A mouse event matches the pattern when both have the same button value and in the state value the same key flags(Qt::KeyButtonMask) are set.

Parameters
patternMouse event pattern
eventMouse event
Returns
true if matches
See also
keyMatch()

◆ mouseMatch() [2/2]

bool QwtEventPattern::mouseMatch ( MousePatternCode  code,
const QMouseEvent *  event 
) const

Compare a mouse event with an event pattern.

A mouse event matches the pattern when both have the same button value and in the state value the same key flags(Qt::KeyButtonMask) are set.

Parameters
codeIndex of the event pattern
eventMouse event
Returns
true if matches
See also
keyMatch()

◆ mousePattern() [1/2]

QVector< QwtEventPattern::MousePattern > & QwtEventPattern::mousePattern ( )
Returns
Mouse pattern

◆ mousePattern() [2/2]

const QVector< QwtEventPattern::MousePattern > & QwtEventPattern::mousePattern ( ) const
Returns
Mouse pattern

◆ setKeyPattern()

void QwtEventPattern::setKeyPattern ( KeyPatternCode  pattern,
int  key,
Qt::KeyboardModifiers  modifiers = Qt::NoModifier 
)

Change one key pattern

Parameters
patternIndex of the pattern
keyKey
modifiersKeyboard modifiers
See also
QKeyEvent

◆ setMousePattern()

void QwtEventPattern::setMousePattern ( MousePatternCode  pattern,
Qt::MouseButton  button,
Qt::KeyboardModifiers  modifiers = Qt::NoModifier 
)

Change one mouse pattern

Parameters
patternIndex of the pattern
buttonButton
modifiersKeyboard modifiers
See also
QMouseEvent