File indexing completed on 2024-06-23 05:20:46
0001 /* 0002 Copyright (C) 2012, 2013 by Glad Deschrijver <glad.deschrijver@gmail.com> 0003 0004 This program is free software; you can redistribute it and/or 0005 modify it under the terms of the GNU General Public License as 0006 published by the Free Software Foundation; either version 2 of 0007 the License or (at your option) version 3 or any later version 0008 accepted by the membership of KDE e.V. (or its successor approved 0009 by the membership of KDE e.V.), which shall act as a proxy 0010 defined in Section 14 of version 3 of the license. 0011 0012 This program is distributed in the hope that it will be useful, 0013 but WITHOUT ANY WARRANTY; without even the implied warranty of 0014 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0015 GNU General Public License for more details. 0016 0017 You should have received a copy of the GNU General Public License 0018 along with this program. If not, see <http://www.gnu.org/licenses/>. 0019 */ 0020 0021 #ifndef SHORTCUTCONFIGDIALOG_H 0022 #define SHORTCUTCONFIGDIALOG_H 0023 0024 #ifndef QT_NO_SHORTCUT 0025 0026 #include <QDialog> 0027 0028 class QAction; 0029 class QKeySequence; 0030 0031 namespace Gui 0032 { 0033 0034 class ActionDescription; 0035 class ShortcutConfigWidget; 0036 0037 /** 0038 * Application programmers are not supposed to access this class directly. 0039 * \see ShortcutHandler 0040 */ 0041 class ShortcutConfigDialog : public QDialog 0042 { 0043 Q_OBJECT 0044 0045 public: 0046 explicit ShortcutConfigDialog(QWidget *parent = 0); 0047 ~ShortcutConfigDialog(); 0048 0049 void setExclusivityGroups(const QList<QStringList> &groups); 0050 void setActionDescriptions(const QHash<QString, ActionDescription> &actionDescriptions); 0051 0052 Q_SIGNALS: 0053 void shortcutsChanged(const QHash<QString, ActionDescription> &actionDescriptions); 0054 0055 protected Q_SLOTS: 0056 void accept(); 0057 void reject(); 0058 0059 private: 0060 ShortcutConfigWidget *m_shortcutConfigWidget; 0061 }; 0062 0063 } // namespace Gui 0064 0065 #endif // QT_NO_SHORTCUT 0066 0067 #endif // SHORTCUTCONFIGDIALOG_H