#ifndef SHORTCUTSSETTINGS_H #define SHORTCUTSSETTINGS_H #include #include #include #include class ShortcutsSettings : public QObject { Q_OBJECT public: ShortcutsSettings(QString settingsFilePath, QObject *parent = 0); ~ShortcutsSettings() { } QList getShortcut(QString name); QKeySequence getSingleShortcut(QString name); QString getDefaultShortcutString(QString name); QString getShortcutString(QString name); void setShortcuts(QString name, QList Sequence); void setShortcuts(QString name, QKeySequence Sequence); void setShortcuts(QString name, QString Sequences); bool isValid(QString name, QString Sequences); void resetAllShortcuts(); void clearAllShortcuts(); signals: void shortCutchanged(); void allShortCutsReset(); void allShortCutsClear(); private: QString settingsFilePath; QMap > shortCuts; QMap > defaultShortCuts; void fillDefaultShorcuts(); QString stringifySequence(QList Sequence) const; QList parseSequenceString(QString stringSequence); }; #endif // SHORTCUTSSETTINGS_H