summaryrefslogtreecommitdiffstats
path: root/qt-models/filtermodels.h
diff options
context:
space:
mode:
Diffstat (limited to 'qt-models/filtermodels.h')
-rw-r--r--qt-models/filtermodels.h109
1 files changed, 0 insertions, 109 deletions
diff --git a/qt-models/filtermodels.h b/qt-models/filtermodels.h
index 6956146e1..61b82be33 100644
--- a/qt-models/filtermodels.h
+++ b/qt-models/filtermodels.h
@@ -34,119 +34,11 @@ struct FilterData {
bool invertFilter;
};
-class FilterModelBase : public QAbstractListModel {
- Q_OBJECT
-private:
- int findInsertionIndex(const QString &name);
-protected:
- struct Item {
- QString name;
- bool checked;
- int count;
- };
- std::vector<Item> items;
- int indexOf(const QString &name) const;
- void addItem(const QString &name, bool checked, int count);
- int rowCount(const QModelIndex &parent = QModelIndex()) const override;
- void decreaseCount(const QString &d);
- void increaseCount(const QString &d);
-public:
- virtual bool doFilter(const dive *d) const = 0;
- virtual void diveAdded(const dive *d) = 0;
- virtual void diveDeleted(const dive *d) = 0;
- void clearFilter();
- void selectAll();
- void invertSelection();
- bool anyChecked;
- bool negate;
-public
-slots:
- void setNegate(bool negate);
- void changeName(const QString &oldName, const QString &newName);
-protected:
- explicit FilterModelBase(QObject *parent = 0);
- void updateList(QStringList &new_list);
- virtual int countDives(const char *) const = 0;
-private:
- Qt::ItemFlags flags(const QModelIndex &index) const;
- QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const;
- bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole);
-};
-
-class TagFilterModel : public FilterModelBase {
- Q_OBJECT
-public:
- static TagFilterModel *instance();
- bool doFilter(const dive *d) const;
-public
-slots:
- void repopulate();
-
-private:
- explicit TagFilterModel(QObject *parent = 0);
- int countDives(const char *) const;
- void diveAdded(const dive *d);
- void diveDeleted(const dive *d);
-};
-
-class BuddyFilterModel : public FilterModelBase {
- Q_OBJECT
-public:
- static BuddyFilterModel *instance();
- bool doFilter(const dive *d) const;
-public
-slots:
- void repopulate();
-
-private:
- explicit BuddyFilterModel(QObject *parent = 0);
- int countDives(const char *) const;
- void diveAdded(const dive *d);
- void diveDeleted(const dive *d);
-};
-
-class LocationFilterModel : public FilterModelBase {
- Q_OBJECT
-public:
- static LocationFilterModel *instance();
- bool doFilter(const dive *d) const;
-public
-slots:
- void repopulate();
- void addName(const QString &newName);
-
-private:
- explicit LocationFilterModel(QObject *parent = 0);
- int countDives(const char *) const;
- void diveAdded(const dive *d);
- void diveDeleted(const dive *d);
-};
-
-class SuitsFilterModel : public FilterModelBase {
- Q_OBJECT
-public:
- static SuitsFilterModel *instance();
- bool doFilter(const dive *d) const;
-public
-slots:
- void repopulate();
-
-private:
- explicit SuitsFilterModel(QObject *parent = 0);
- int countDives(const char *) const;
- void diveAdded(const dive *d);
- void diveDeleted(const dive *d);
-};
-
class MultiFilterSortModel : public QSortFilterProxyModel {
Q_OBJECT
public:
static MultiFilterSortModel *instance();
bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override;
- void addFilterModel(FilterModelBase *model);
- void removeFilterModel(FilterModelBase *model);
- void divesAdded(const QVector<dive *> &dives);
- void divesDeleted(const QVector<dive *> &dives);
bool showDive(const struct dive *d) const;
int divesDisplayed;
bool lessThan(const QModelIndex &, const QModelIndex &) const override;
@@ -165,7 +57,6 @@ signals:
private:
MultiFilterSortModel(QObject *parent = 0);
- QList<FilterModelBase *> models;
struct dive_site *curr_dive_site;
DiveTripModel *model;
FilterData filterData;