File: qwt_event_pattern.sip

package info (click to toggle)
pyqt-qwt 1.02.02-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, forky, sid, trixie
  • size: 796 kB
  • sloc: python: 5,663; cpp: 273; makefile: 16; sh: 13
file content (88 lines) | stat: -rw-r--r-- 2,640 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
/* 
 * python-qwt. Python wrapper for the Qwt Widget Library
 * Copyright (C) 1997   Josef Wilgen
 * Copyright (C) 2002   Uwe Rathmann
 * Copyright (C) 2015   Gudjon I. Gudjonsson
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the Qwt License, Version 1.0
 *****************************************************************************/


class QwtEventPattern
{
%TypeHeaderCode
#include <qwt_event_pattern.h>
%End

public:
    enum MousePatternCode
    {
        MouseSelect1,
        MouseSelect2,
        MouseSelect3,
        MouseSelect4,
        MouseSelect5,
        MouseSelect6,
        MousePatternCount
    };

    enum KeyPatternCode
    {
        KeySelect1,
        KeySelect2,
        KeyAbort,
        KeyLeft,
        KeyRight,
        KeyUp,
        KeyDown,
        KeyRedo,
        KeyUndo,
        KeyHome,
        KeyPatternCount
    };

    //! A pattern for mouse events
    class MousePattern
    {
%TypeHeaderCode
#include <qwt_event_pattern.h>
%End
    public:
        //! Constructor
        Qt::MouseButton button;
        Qt::KeyboardModifiers modifiers;
        MousePattern( Qt::MouseButton btn = Qt::NoButton, Qt::KeyboardModifiers modifierCodes = Qt::NoModifier );
    };

    //! A pattern for key events
    class KeyPattern
    {
%TypeHeaderCode
#include <qwt_event_pattern.h>
%End
    public:
        //! Constructor
        int key;
        Qt::KeyboardModifiers modifiers;
        KeyPattern( int keyCode = Qt::Key_unknown, Qt::KeyboardModifiers modifierCodes = Qt::NoModifier );
    };

    QwtEventPattern();
    virtual ~QwtEventPattern();
    void initMousePattern( int numButtons );
    void initKeyPattern();
    void setMousePattern( MousePatternCode, Qt::MouseButton button, Qt::KeyboardModifiers = Qt::NoModifier );
    void setKeyPattern( KeyPatternCode, int keyCode, Qt::KeyboardModifiers modifierCodes = Qt::NoModifier );
    void setMousePattern( const QVector<QwtEventPattern::MousePattern> & );
    void setKeyPattern( const QVector<QwtEventPattern::KeyPattern> & );
    //FIXME const QVector<MousePattern> &mousePattern() const;
    //FIXME const QVector<KeyPattern> &keyPattern() const;
    QVector<QwtEventPattern::MousePattern> &mousePattern();
    QVector<QwtEventPattern::KeyPattern> &keyPattern();
    bool mouseMatch( MousePatternCode, const QMouseEvent *) const;
    bool keyMatch( KeyPatternCode, const QKeyEvent *) const;
protected:
    virtual bool mouseMatch( const QwtEventPattern::MousePattern &, const QMouseEvent *) const;
    virtual bool keyMatch( const QwtEventPattern::KeyPattern &, const QKeyEvent *) const;
};