blob: d14614c77031637f15a966897a9dc202b88c2220 (
plain)
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
|
/****************************************************************************
KHotKeys
Copyright (C) 2003 Mike Pilone <mpilone@slac.com>
Copyright (C) 2003 Lubos Lunak <l.lunak@kde.org>
Distributed under the terms of the GNU General Public License version 2.
****************************************************************************/
#include <qcolor.h>
#include <qevent.h>
#include "gesturerecorder.h"
namespace KHotKeys
{
GestureRecorder::GestureRecorder(QWidget *parent, const char *name)
: QFrame(parent, name), _mouseButtonDown(false)
{
setBackgroundColor( colorGroup().base());
setFrameStyle(QFrame::Sunken | QFrame::Panel);
setLineWidth(2);
setMidLineWidth(0);
}
GestureRecorder::~GestureRecorder()
{
}
void GestureRecorder::mousePressEvent(QMouseEvent *ev)
{
if (ev->button() == QMouseEvent::LeftButton)
{
_mouseButtonDown = true;
stroke.reset();
QPoint pos = ev->pos();
stroke.record(pos.x(), pos.y());
}
}
void GestureRecorder::mouseReleaseEvent(QMouseEvent *ev)
{
if ((ev->button() == QMouseEvent::LeftButton) && (_mouseButtonDown))
{
QPoint pos = ev->pos();
stroke.record(pos.x(), pos.y());
QString data( stroke.translate());
if( !data.isEmpty())
emit recorded(data);
}
}
void GestureRecorder::mouseMoveEvent(QMouseEvent *ev)
{
if (_mouseButtonDown)
{
QPoint pos = ev->pos();
stroke.record(pos.x(), pos.y());
}
}
} // namespace KHotKeys
#include "gesturerecorder.moc"
|