mirror of
https://github.com/zhuzichu520/FluentUI.git
synced 2025-07-06 10:45:26 +08:00
add hotkey
This commit is contained in:
32
src/FluHotkey.cpp
Normal file
32
src/FluHotkey.cpp
Normal file
@ -0,0 +1,32 @@
|
||||
#include "FluHotkey.h"
|
||||
|
||||
|
||||
#include "QGuiApplication"
|
||||
|
||||
FluHotkey::FluHotkey(QObject *parent)
|
||||
: QObject{parent}
|
||||
{
|
||||
_sequence = "";
|
||||
_isRegistered = false;
|
||||
connect(this,&FluHotkey::sequenceChanged,this,[=]{
|
||||
if(_hotkey){
|
||||
delete _hotkey;
|
||||
_hotkey = nullptr;
|
||||
}
|
||||
_hotkey = new QHotkey(QKeySequence(_sequence), true, qApp);
|
||||
this->isRegistered(_hotkey->isRegistered());
|
||||
QObject::connect(_hotkey, &QHotkey::activated, qApp, [=](){
|
||||
Q_EMIT this->activated();
|
||||
});
|
||||
QObject::connect(_hotkey, &QHotkey::registeredChanged, qApp, [=](){
|
||||
this->isRegistered(_hotkey->isRegistered());
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
FluHotkey::~FluHotkey(){
|
||||
if(_hotkey){
|
||||
delete _hotkey;
|
||||
_hotkey = nullptr;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user