X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fsettingspages%2Fignorelistmodel.h;h=262358b53036373aa990e217dfa05635783dfa48;hp=6065fb0db3cb884a993ede02778afb5f6e553361;hb=673ded0d543cbdc2cf6e746b6bee7c1d21af8f90;hpb=e50ae7a06fc4e5d3a911c361d30953410deab609 diff --git a/src/qtui/settingspages/ignorelistmodel.h b/src/qtui/settingspages/ignorelistmodel.h index 6065fb0d..262358b5 100644 --- a/src/qtui/settingspages/ignorelistmodel.h +++ b/src/qtui/settingspages/ignorelistmodel.h @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005-2015 by the Quassel Project * + * Copyright (C) 2005-2020 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -18,11 +18,11 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#ifndef IGNORELISTMODEL_H -#define IGNORELISTMODEL_H +#pragma once + +#include #include -#include #include "clientignorelistmanager.h" @@ -31,34 +31,34 @@ class IgnoreListModel : public QAbstractItemModel Q_OBJECT public: - IgnoreListModel(QObject *parent = 0); + IgnoreListModel(QObject* parent = nullptr); - virtual QVariant data(const QModelIndex &index, int role) const; - virtual bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole); + QVariant data(const QModelIndex& index, int role) const override; + bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole) override; - virtual Qt::ItemFlags flags(const QModelIndex &index) const; + Qt::ItemFlags flags(const QModelIndex& index) const override; - QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; + QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override; - QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; + QModelIndex index(int row, int column, const QModelIndex& parent = QModelIndex()) const override; - inline QModelIndex parent(const QModelIndex &) const { return QModelIndex(); } + inline QModelIndex parent(const QModelIndex&) const override { return {}; } - inline int rowCount(const QModelIndex &parent = QModelIndex()) const; - inline int columnCount(const QModelIndex &parent = QModelIndex()) const; + inline int rowCount(const QModelIndex& parent = QModelIndex()) const override; + inline int columnCount(const QModelIndex& parent = QModelIndex()) const override; - inline bool configChanged() const { return _configChanged; } + inline bool hasConfigChanged() const { return static_cast(_clonedIgnoreListManager); } inline bool isReady() const { return _modelReady; } - const IgnoreListManager::IgnoreListItem &ignoreListItemAt(int row) const; - void setIgnoreListItemAt(int row, const IgnoreListManager::IgnoreListItem &item); - bool newIgnoreRule(const IgnoreListManager::IgnoreListItem &item); - const QModelIndex indexOf(const QString &rule); + const IgnoreListManager::IgnoreListItem& ignoreListItemAt(int row) const; + void setIgnoreListItemAt(int row, const IgnoreListManager::IgnoreListItem& item); + bool newIgnoreRule(const IgnoreListManager::IgnoreListItem& item); + const QModelIndex indexOf(const QString& rule); public slots: void loadDefaults(); void removeIgnoreRule(int index); - void revert(); + void revert() override; void commit(); signals: @@ -66,13 +66,12 @@ signals: void modelReady(bool); private: - ClientIgnoreListManager _clonedIgnoreListManager; - bool _configChanged; - bool _modelReady; + std::unique_ptr _clonedIgnoreListManager; + bool _modelReady{false}; - const IgnoreListManager &ignoreListManager() const; - IgnoreListManager &ignoreListManager(); - IgnoreListManager &cloneIgnoreListManager(); + const IgnoreListManager& ignoreListManager() const; + IgnoreListManager& ignoreListManager(); + IgnoreListManager& cloneIgnoreListManager(); private slots: void clientConnected(); @@ -80,20 +79,15 @@ private slots: void initDone(); }; - // Inlines -int IgnoreListModel::rowCount(const QModelIndex &parent) const +int IgnoreListModel::rowCount(const QModelIndex& parent) const { Q_UNUSED(parent); return isReady() ? ignoreListManager().count() : 0; } - -int IgnoreListModel::columnCount(const QModelIndex &parent) const +int IgnoreListModel::columnCount(const QModelIndex& parent) const { Q_UNUSED(parent); return isReady() ? 3 : 0; } - - -#endif //IGNORELISTMODEL_H