File indexing completed on 2024-05-12 13:30:20
0001 /* 0002 * SPDX-FileCopyrightText: 2014 Hugo Pereira Da Costa <hugo.pereira@free.fr> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef breezemnemonics_h 0008 #define breezemnemonics_h 0009 0010 #include <QApplication> 0011 #include <QEvent> 0012 #include <QObject> 0013 0014 #include "breezestyleconfigdata.h" 0015 0016 namespace Breeze 0017 { 0018 class Mnemonics : public QObject 0019 { 0020 Q_OBJECT 0021 0022 public: 0023 //* constructor 0024 explicit Mnemonics(QObject *parent) 0025 : QObject(parent) 0026 { 0027 } 0028 0029 //* set mode 0030 void setMode(int); 0031 0032 //* event filter 0033 bool eventFilter(QObject *, QEvent *) override; 0034 0035 //* true if mnemonics are enabled 0036 bool enabled() const 0037 { 0038 return _enabled; 0039 } 0040 0041 //* alignment flag 0042 int textFlags() const 0043 { 0044 return _enabled ? Qt::TextShowMnemonic : Qt::TextHideMnemonic; 0045 } 0046 0047 protected: 0048 //* set enable state 0049 void setEnabled(bool); 0050 0051 private: 0052 //* enable state 0053 bool _enabled = true; 0054 }; 0055 0056 } 0057 0058 #endif