summaryrefslogtreecommitdiff
path: root/src/modlistsortproxy.h
diff options
context:
space:
mode:
authorTannin <devnull@localhost>2014-05-13 21:20:44 +0200
committerTannin <devnull@localhost>2014-05-13 21:20:44 +0200
commit977b4075254ca79e68bbdec2e689eccb291fe701 (patch)
tree0afa2ad971bb786ca6acfa19944cd8381e925c8b /src/modlistsortproxy.h
parentf4b1aba61ae81b4151695798006b3a787e0de6de (diff)
- mod list context menu split into two menus (one for whole list, one for selected mods)
- added option to combine category filters using "or" - added context menu option for deselecting category filters - slightly changed ui on the category filters - added a sample plugin for cpp that can be built without building the rest of MO - simple installer can now be configured to run without any user interaction - extended interface for python plugins - iorganizer implementation moved out of the main window - nexus requests from plugins will now be identified in the user agent - bugfix: shortcuts created from MO used the wrong working directory - bugfix: deactivation of bsas didn't stick - bugfix: file hiding mechanism wasn't active - bugfix: executables linked on the toolbar couldn't be removed if the executable was removed first - bugfix: the endorsement-filter couldn't be combined with other filters - bugfix: python interface to repository bridge was broken
Diffstat (limited to 'src/modlistsortproxy.h')
-rw-r--r--src/modlistsortproxy.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/modlistsortproxy.h b/src/modlistsortproxy.h
index f1b01c7e..c04ba28d 100644
--- a/src/modlistsortproxy.h
+++ b/src/modlistsortproxy.h
@@ -32,6 +32,13 @@ class ModListSortProxy : public QSortFilterProxyModel
public:
+ enum FilterMode {
+ FILTER_AND,
+ FILTER_OR
+ };
+
+public:
+
explicit ModListSortProxy(Profile *profile, QObject *parent = 0);
void setProfile(Profile *profile);
@@ -65,6 +72,8 @@ public:
*/
bool isFilterActive() const { return m_FilterActive; }
+ void setFilterMode(FilterMode mode);
+
/**
* @brief tests if the specified index has child nodes
* @param parent the node to test
@@ -93,6 +102,8 @@ private:
bool hasConflictFlag(const std::vector<ModInfo::EFlag> &flags) const;
void updateFilterActive();
+ bool filterMatchesModAnd(ModInfo::Ptr info, bool enabled) const;
+ bool filterMatchesModOr(ModInfo::Ptr info, bool enabled) const;
private:
@@ -103,6 +114,7 @@ private:
QString m_CurrentFilter;
bool m_FilterActive;
+ FilterMode m_FilterMode;
};