6 #if !TTK_QT_VERSION_CHECK(5,0,0)
15 m_mods(Qt::NoModifier)
19 #if !TTK_QT_VERSION_CHECK(5,0,0)
22 QAbstractEventDispatcher::instance()->installNativeEventFilter(
this);
29 if(!--
m_ref && QAbstractEventDispatcher::instance())
31 #if !TTK_QT_VERSION_CHECK(5,0,0)
34 QAbstractEventDispatcher::instance()->removeNativeEventFilter(
this);
41 Qt::KeyboardModifiers allMods = Qt::ShiftModifier | Qt::ControlModifier | Qt::AltModifier | Qt::MetaModifier;
43 m_mods = shortcut.isEmpty() ? Qt::KeyboardModifiers() : Qt::KeyboardModifiers(
QtKeyCombine(shortcut[0]) & allMods);
47 const QPair<quint32, quint32> &
key = qMakePair(nativeKey, nativeMods);
60 qWarning() <<
"QGlobalShortcut failed to register:" << sequence.toString();
69 const QPair<quint32, quint32> &
key = qMakePair(nativeKey, nativeMods);
74 m_mods = Qt::KeyboardModifiers();
84 qWarning() <<
"QGlobalShortcut failed to unregister:" << sequence.toString();
88 m_mods = Qt::KeyboardModifiers();
121 return QKeySequence(d->m_key | d->m_mods);
128 return d->setShortcut(shortcut);
155 d->m_enabled = !disabled;
static quint32 nativeKeycode(Qt::Key keycode)
QGlobalShortcut * ttk_q() const
bool setShortcut(const QKeySequence &shortcut)
bool setShortcut(const QKeySequence &shortcut)
static constexpr wchar_t key[]
Qt::KeyboardModifiers m_mods
static quint32 nativeModifiers(Qt::KeyboardModifiers modifiers)
static QAbstractEventDispatcher::EventFilter m_prevEventFilter
void setEnabled(bool enabled=true)
QGlobalShortcut(QObject *parent=nullptr)
static bool unregisterShortcut(quint32 nativeKey, quint32 nativeMods)
#define QtKeySequence(k, m)
KeySequence.
The class of the qglobal shortcut.
static bool eventFilter(void *message)
static bool registerShortcut(quint32 nativeKey, quint32 nativeMods)
#define TTK_INIT_PRIVATE(Class)
#define QtKeyCombine(p)
KeySequence data.
void setDisabled(bool disabled=true)
QKeySequence shortcut() const
static QHash< QPair< quint32, quint32 >, QGlobalShortcut * > m_shortcuts
~QGlobalShortcutPrivate()
static void activateShortcut(quint32 nativeKey, quint32 nativeMods)