Bump version to 0.9.0
[quandoparte] / application / keypressforwarder.cpp
1 /*
2
3 Copyright (C) 2011 Luciano Montanaro <mikelima@cirulla.net>
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; see the file COPYING.  If not, write to
17 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 Boston, MA 02110-1301, USA.
19
20 */
21
22 #include "keypressforwarder.h"
23
24 #include <QApplication>
25 #include <QDebug>
26 #include <QEvent>
27 #include <QKeyEvent>
28 #include <QWidget>
29
30 KeyPressForwarder::KeyPressForwarder(QObject *parent) :
31     QObject(parent), target(0)
32 {
33 }
34
35 bool KeyPressForwarder::eventFilter(QObject *obj, QEvent *event)
36 {
37     if (event->type() == QEvent::KeyPress) {
38         QKeyEvent *keyEvent = static_cast<QKeyEvent *>(event);
39         qDebug() << keyEvent->key();
40         if (target) {
41             target->show();
42             target->setFocus();
43             return QApplication::sendEvent(target, event);
44         }
45     }
46     return QObject::eventFilter(obj, event);
47 }
48
49 void KeyPressForwarder::setTarget(QWidget *w)
50 {
51     target = w;
52 }