File indexing completed on 2024-07-21 13:06:23

0001 /*
0002    SPDX-FileCopyrightText: 2008 Michael Jansen <kde@michael-jansen.biz>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 #ifndef KCMHOTKEYS_H
0007 #define KCMHOTKEYS_H
0008 
0009 #include <KCModule>
0010 
0011 #include <QModelIndex>
0012 
0013 class KCMHotkeysPrivate;
0014 class QWidget;
0015 
0016 namespace KHotKeys
0017 {
0018 class ActionDataBase;
0019 }
0020 
0021 /**
0022  * @brief KCMHotkeys KDE KCM Hotkeys Configuration Module
0023  * @author Michael Jansen <kde@michael-jansen.biz>
0024  * @date 2008-03-07
0025  */
0026 class KCMHotkeys : public KCModule
0027 {
0028     Q_OBJECT
0029 
0030 public:
0031     /**
0032      * Create the module.
0033      *
0034      * @param parent Parent widget
0035      */
0036     KCMHotkeys(QWidget *parent, const QVariantList &arg);
0037 
0038     /**
0039      * Destroy the module
0040      */
0041     ~KCMHotkeys() override;
0042 
0043     /**
0044      * Set all settings back to defaults.
0045      */
0046     void defaults() override;
0047 
0048     /**
0049      * Load all settings.
0050      */
0051     void load() override;
0052 
0053     /**
0054      * Save the settings
0055      */
0056     void save() override;
0057 
0058 public Q_SLOTS:
0059 
0060     void slotChanged();
0061 
0062     void slotReset();
0063 
0064     /**
0065      * Call when the current item has changed
0066      */
0067     void currentChanged(const QModelIndex &current, const QModelIndex &previous);
0068 
0069     /**
0070      * Show global settings dialog
0071      */
0072     void showGlobalSettings();
0073 
0074 private:
0075     KCMHotkeysPrivate *d;
0076 };
0077 
0078 #endif /* #ifndef KCMHOTKEYS_HPP */