cmake: avoid de-duplication of user's CXXFLAGS
[quassel.git] / src / qtui / settingspages / shortcutsmodel.h
index a52e073..8daf69c 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2010 by the Quassel Project                             *
+ *   Copyright (C) 2005-2022 by the Quassel Project                        *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -15,7 +15,7 @@
  *   You should have received a copy of the GNU General Public License     *
  *   along with this program; if not, write to the                         *
  *   Free Software Foundation, Inc.,                                       *
- *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
 #ifndef SHORTCUTSMODEL_H
@@ -32,65 +32,73 @@ class ActionCollection;
  *  Note that the ShortcutsModel will not react to changes in the ActionCollection (e.g. adding,
  *  removing actions), because it is supposed to be used after all actions being defined.
  */
-class ShortcutsModel : public QAbstractItemModel {
-  Q_OBJECT
+class ShortcutsModel : public QAbstractItemModel
+{
+    Q_OBJECT
 public:
-  enum Role {
-    ActionRole = Qt::UserRole,
-    DefaultShortcutRole,
-    ActiveShortcutRole,
-    IsConfigurableRole
-  };
+    enum Role
+    {
+        ActionRole = Qt::UserRole,
+        DefaultShortcutRole,
+        ActiveShortcutRole,
+        IsConfigurableRole
+    };
 
-  ShortcutsModel(const QHash<QString, ActionCollection *> &actionCollections, QObject *parent = 0);
-  ~ShortcutsModel();
+    ShortcutsModel(const QHash<QString, ActionCollection*>& actionCollections, QObject* parent = nullptr);
+    ~ShortcutsModel() override;
 
-  QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const;
-  QModelIndex parent(const QModelIndex &child) const;
-  int columnCount(const QModelIndex &parent = QModelIndex()) const;
-  int rowCount(const QModelIndex &parent = QModelIndex()) const;
-  QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
-  QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
-  bool setData(const QModelIndex &index, const QVariant &value, int role = ActiveShortcutRole);
+    QModelIndex index(int row, int column, const QModelIndex& parent = QModelIndex()) const override;
+    QModelIndex parent(const QModelIndex& child) const override;
+    int columnCount(const QModelIndex& parent = QModelIndex()) const override;
+    int rowCount(const QModelIndex& parent = QModelIndex()) const override;
+    QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
+    QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override;
+    bool setData(const QModelIndex& index, const QVariant& value, int role = ActiveShortcutRole) override;
 
 public slots:
-  //! Load shortcuts from the ActionCollections
-  /** Note that this will not rebuild the internal structure of the model, as we assume the
-   *  ActionCollections to be static during the lifetime of the settingspage. This will merely
-   *  re-read the shortcuts currently set in Quassel.
-   */
-  void load();
+    //! Load shortcuts from the ActionCollections
+    /** Note that this will not rebuild the internal structure of the model, as we assume the
+     *  ActionCollections to be static during the lifetime of the settingspage. This will merely
+     *  re-read the shortcuts currently set in Quassel.
+     */
+    void load();
 
-  //! Load default shortcuts from the ActionCollections
-  /** Note that this will not rebuild the internal structure of the model, as we assume the
-   *  ActionCollections to be static during the lifetime of the settingspage. This will update
-   *  the model's state from the ActionCollections' defaults.
-   */
-  void defaults();
+    //! Load default shortcuts from the ActionCollections
+    /** Note that this will not rebuild the internal structure of the model, as we assume the
+     *  ActionCollections to be static during the lifetime of the settingspage. This will update
+     *  the model's state from the ActionCollections' defaults.
+     */
+    void defaults();
 
-  //! Commit the model changes to the ActionCollections
-  void commit();
+    //! Commit the model changes to the ActionCollections
+    void commit();
 
-  inline bool hasChanged() const { return _changedCount; }
+    inline bool hasChanged() const { return _changedCount; }
 
 signals:
-  //! Reflects the difference between model contents and the ActionCollections we loaded this from
-  void hasChanged(bool changed);
+    //! Reflects the difference between model contents and the ActionCollections we loaded this from
+    void changed(bool changed);
 
 private:
-  struct Item {
-    inline Item() { parentItem = 0; collection = 0; action = 0; }
-    inline ~Item() { qDeleteAll(actionItems); }
-    int row;
-    Item *parentItem;
-    ActionCollection *collection;
-    Action *action;
-    QKeySequence shortcut;
-    QList<Item *> actionItems;
-  };
+    struct Item
+    {
+        inline Item()
+        {
+            parentItem = nullptr;
+            collection = nullptr;
+            action = nullptr;
+        }
+        inline ~Item() { qDeleteAll(actionItems); }
+        int row;
+        Item* parentItem;
+        ActionCollection* collection;
+        Action* action;
+        QKeySequence shortcut;
+        QList<Item*> actionItems;
+    };
 
-  QList<Item *> _categoryItems;
-  int _changedCount;
+    QList<Item*> _categoryItems;
+    int _changedCount;
 };
 
-#endif // SHORTCUTSMODEL_H
+#endif  // SHORTCUTSMODEL_H