goldendict-ng/hotkeyedit.hh

42 lines
838 B
C++
Raw Normal View History

2012-02-20 21:47:14 +00:00
/* This file is (c) 2008-2012 Konstantin Isakov <ikm@goldendict.org>
* Part of GoldenDict. Licensed under GPLv3 or later, see the LICENSE file */
#ifndef __HOTKEYEDIT_HH_INCLUDED__
#define __HOTKEYEDIT_HH_INCLUDED__
#include "config.hh"
#include <QLineEdit>
// This widget allows grabbing a hotkey
class HotKeyEdit: public QLineEdit
{
Q_OBJECT
Qt::KeyboardModifiers currentModifiers;
int currentKey1, currentKey2;
bool continuingCombo;
public:
HotKeyEdit( QWidget * parent = 0 );
void setHotKey( Config::HotKey const & );
Config::HotKey getHotKey() const;
protected:
void keyPressEvent( QKeyEvent * event );
void keyReleaseEvent( QKeyEvent * event );
private:
void renderCurrentValue();
bool eventFilter( QObject *, QEvent * event );
#ifdef Q_OS_WIN
int VkeyToQTkey( quint32 vkey );
#endif
};
#endif