mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-22 23:05:36 +08:00
72 lines
1.6 KiB
C++
72 lines
1.6 KiB
C++
/* Copyright (C) 2013 VATSIM Community / contributors
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#ifndef BLACKSAMPLE_HOTKEY_H
|
|
#define BLACKSAMPLE_HOTKEY_H
|
|
|
|
#include "led.h"
|
|
#include "blackinput/keyboard.h"
|
|
#include "blackmisc/hardware/keyboardkey.h"
|
|
|
|
#include <QDialog>
|
|
#include <QPushButton>
|
|
#include <QLabel>
|
|
#include <QScopedPointer>
|
|
|
|
class HotkeyDialog : public QDialog
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
/*!
|
|
* \brief Constructor
|
|
* \param parent
|
|
*/
|
|
explicit HotkeyDialog(QWidget *parent = 0);
|
|
|
|
//! Destructor
|
|
~HotkeyDialog();
|
|
|
|
public slots:
|
|
//! \brief Slot to select a new hot key
|
|
void selectHotKey();
|
|
|
|
private slots:
|
|
/*!
|
|
* \brief Slot when the selected key set has changed
|
|
* \param keySet
|
|
*/
|
|
void keySelectionChanged(BlackMisc::Hardware::CKeyboardKey key);
|
|
|
|
/*!
|
|
* \brief Slot when the key selection is finished
|
|
* \param keySet
|
|
*/
|
|
void keySelectionFinished(BlackMisc::Hardware::CKeyboardKey key);
|
|
|
|
void processKeyDown(const BlackMisc::Hardware::CKeyboardKey &);
|
|
|
|
void processKeyUp(const BlackMisc::Hardware::CKeyboardKey &);
|
|
|
|
private:
|
|
/*!
|
|
* \brief Set the key status
|
|
* \param isPressed
|
|
*/
|
|
void setPressed(bool isPressed);
|
|
|
|
private:
|
|
void setupUi();
|
|
void setupConnections();
|
|
|
|
BlackInput::IKeyboard *m_keyboard;
|
|
BlackMisc::Hardware::CKeyboardKey m_key;
|
|
QPushButton *m_pbSelect;
|
|
QLabel *m_lblHotkey;
|
|
CLed *m_led;
|
|
};
|
|
|
|
#endif // BLACKSAMPLE_HOTKEY_H
|