/***************************************************************************
- * Copyright (C) 2005-2015 by the Quassel Project *
+ * Copyright (C) 2005-2018 by the Quassel Project *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
-#ifndef FLATPROXYMODEL_H
-#define FLATPROXYMODEL_H
+#pragma once
+
+#include "uisupport-export.h"
#include <QAbstractProxyModel>
-class FlatProxyModel : public QAbstractProxyModel
+class UISUPPORT_EXPORT FlatProxyModel : public QAbstractProxyModel
{
Q_OBJECT
public:
- FlatProxyModel(QObject *parent = 0);
+ FlatProxyModel(QObject *parent = nullptr);
- virtual QModelIndex mapFromSource(const QModelIndex &sourceIndex) const;
- virtual QModelIndex mapToSource(const QModelIndex &proxyIndex) const;
+ QModelIndex mapFromSource(const QModelIndex &sourceIndex) const override;
+ QModelIndex mapToSource(const QModelIndex &proxyIndex) const override;
- virtual QItemSelection mapSelectionFromSource(const QItemSelection &sourceSelection) const;
- virtual QItemSelection mapSelectionToSource(const QItemSelection &proxySelection) const;
+ QItemSelection mapSelectionFromSource(const QItemSelection &sourceSelection) const override;
+ QItemSelection mapSelectionToSource(const QItemSelection &proxySelection) const override;
- virtual void setSourceModel(QAbstractItemModel *sourceModel);
+ void setSourceModel(QAbstractItemModel *sourceModel) override;
- virtual QModelIndex index(int row, int column, const QModelIndex &parent) const;
- virtual QModelIndex parent(const QModelIndex &index) const;
+ QModelIndex index(int row, int column, const QModelIndex &parent) const override;
+ QModelIndex parent(const QModelIndex &index) const override;
- virtual int rowCount(const QModelIndex &index) const;
- virtual int columnCount(const QModelIndex &index) const;
+ int rowCount(const QModelIndex &index) const override;
+ int columnCount(const QModelIndex &index) const override;
public slots:
void linkTest() const;
QList<int> _childCount;
class SourceItem;
- SourceItem *_rootSourceItem;
+ SourceItem *_rootSourceItem{nullptr};
void insertSubTree(const QModelIndex &source_idx, bool emitInsert = true);
SourceItem *insertSubTreeHelper(SourceItem *parentItem, SourceItem *lastItem_, const QModelIndex &source_idx);
class FlatProxyModel::SourceItem
{
public:
- SourceItem(int row = 0, SourceItem *parent = 0);
+ SourceItem(int row = 0, SourceItem *parent = nullptr);
~SourceItem();
inline SourceItem *parent() const { return _parent; }
SourceItem *_parent;
QList<SourceItem *> _childs;
- int _pos;
- SourceItem *_next;
+ int _pos{-1};
+ SourceItem *_next{nullptr};
friend class FlatProxyModel;
};
-
-
-#endif //FLATPROXYMODEL_H