From 5d1154c24e2475ed2b7ac248de27ab7b501a1e5e Mon Sep 17 00:00:00 2001 From: Tannin Date: Sat, 16 Feb 2013 19:09:57 +0100 Subject: - hooks for CreateHardLink - createprocess hook will now reroute the cwd (fixes SUM, may break other tools?) - profile code moved to separate file - executables can now be linked to toolbar - category filters are now represented as a tree - csv export of mod list - ModInfoDialog is now "window modal" instead of "application modal" - nexus dialog now updates the mod-id field while browsing - right-click in nexus browser allows to open in external browser - ini viewer is no longer modal - bugfix: another attempt to fix processing of invalid header lines in fomod xmls (bom now handled) - bugfix: integrated fomod installer will no longer overwrite detected mod name by the one from the xml - bugfix: "hide file" from conflicted files list now updates that list - bugfix: conflicted files list no longer offers to hide files in BSAs - bugfix: pressing delete on the mod list with multiplie files selected offered to delete the wrong files - regression: mod name guessing with the old regular expression was less likely to lead to an empty mod name. Now both are tried --- src/modlistsortproxy.h | 124 +++++++++++++++++++++++++------------------------ 1 file changed, 63 insertions(+), 61 deletions(-) (limited to 'src/modlistsortproxy.h') diff --git a/src/modlistsortproxy.h b/src/modlistsortproxy.h index aad87f06..f7a9b587 100644 --- a/src/modlistsortproxy.h +++ b/src/modlistsortproxy.h @@ -17,64 +17,66 @@ You should have received a copy of the GNU General Public License along with Mod Organizer. If not, see . */ -#ifndef MODLISTSORTPROXY_H -#define MODLISTSORTPROXY_H - -#include -#include -#include "modlist.h" - -class Profile; - -class ModListSortProxy : public QSortFilterProxyModel -{ - Q_OBJECT - -public: - - explicit ModListSortProxy(Profile *profile, QObject *parent = 0); - - void setProfile(Profile *profile); - - void setCategoryFilter(int category); - - virtual Qt::ItemFlags flags(const QModelIndex &modelIndex) const; - virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, - int row, int column, const QModelIndex &parent); - - /** - * @brief enable all mods visible under the current filter - **/ - void enableAllVisible(); - - /** - * @brief disable all mods visible under the current filter - **/ - void disableAllVisible(); - -public slots: - - void displayColumnSelection(const QPoint &pos); - void updateFilter(const QString &filter); - -protected: - - virtual bool lessThan(const QModelIndex &left, const QModelIndex &right) const; - virtual bool filterAcceptsRow(int row, const QModelIndex &parent) const; -// virtual bool filterAcceptsColumn(int source_column, const QModelIndex &source_parent) const; - -private: - - bool hasConflictFlag(const std::vector &flags) const; - -private: - - Profile *m_Profile; - - int m_CategoryFilter; - std::bitset m_EnabledColumns; - QString m_CurrentFilter; - -}; - -#endif // MODLISTSORTPROXY_H +#ifndef MODLISTSORTPROXY_H +#define MODLISTSORTPROXY_H + +#include +#include +#include "modlist.h" + +class Profile; + +class ModListSortProxy : public QSortFilterProxyModel +{ + Q_OBJECT + +public: + + explicit ModListSortProxy(Profile *profile, QObject *parent = 0); + + void setProfile(Profile *profile); + + void setCategoryFilter(int category); + + virtual Qt::ItemFlags flags(const QModelIndex &modelIndex) const; + virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, + int row, int column, const QModelIndex &parent); + + /** + * @brief enable all mods visible under the current filter + **/ + void enableAllVisible(); + + /** + * @brief disable all mods visible under the current filter + **/ + void disableAllVisible(); + + bool filterMatches(ModInfo::Ptr info, bool enabled) const; + +public slots: + + void displayColumnSelection(const QPoint &pos); + void updateFilter(const QString &filter); + +protected: + + virtual bool lessThan(const QModelIndex &left, const QModelIndex &right) const; + virtual bool filterAcceptsRow(int row, const QModelIndex &parent) const; +// virtual bool filterAcceptsColumn(int source_column, const QModelIndex &source_parent) const; + +private: + + bool hasConflictFlag(const std::vector &flags) const; + +private: + + Profile *m_Profile; + + int m_CategoryFilter; + std::bitset m_EnabledColumns; + QString m_CurrentFilter; + +}; + +#endif // MODLISTSORTPROXY_H -- cgit v1.3.1