#include "mainwindow.h"
#include <QApplication>

#include <QKeyEvent>
#include <QDebug>

class myEventFilter: public QObject
{
public:
    myEventFilter():QObject()  {}

    ~myEventFilter() {}

    bool eventFilter(QObject* object,QEvent* event)
    {
        if(event->type() == QEvent::KeyPress)
        {
            QKeyEvent* pKeyEvent = static_cast<QKeyEvent *>(event);
            qDebug() << "Filtered KeyPress Event.." << pKeyEvent->key() << ", " << QChar(pKeyEvent->key());
            return true;
        }
        else
        {
            return QObject::eventFilter(object,event);
        }
    }
};

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();

    a.installEventFilter(new myEventFilter());

    return a.exec();
}
