summaryrefslogtreecommitdiff
path: root/src/modinfowithconflictinfo.h
diff options
context:
space:
mode:
authorSilarn <jrim@rimpo.org>2018-08-02 11:54:48 -0500
committerLostDragonist <lost.dragonist@gmail.com>2018-12-12 20:16:07 -0600
commitf9f70b224e25c2d5bff017fd08d32521d39d5b08 (patch)
treeb49cd0f84795ffd4b061948a4dab8c1953b29088 /src/modinfowithconflictinfo.h
parent01e1232cf85f09efde780537bbbca40fd6f0c097 (diff)
Add loose file/archive conflict icons
Diffstat (limited to 'src/modinfowithconflictinfo.h')
-rw-r--r--src/modinfowithconflictinfo.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/modinfowithconflictinfo.h b/src/modinfowithconflictinfo.h
index 5cf2d24e..13d87d25 100644
--- a/src/modinfowithconflictinfo.h
+++ b/src/modinfowithconflictinfo.h
@@ -27,6 +27,10 @@ public:
virtual std::set<unsigned int> getModArchiveOverwritten() { return m_ArchiveOverwrittenList; }
+ virtual std::set<unsigned int> getModArchiveLooseOverwrite() { return m_ArchiveLooseOverwriteList; }
+
+ virtual std::set<unsigned int> getModArchiveLooseOverwritten() { return m_ArchiveLooseOverwrittenList; }
+
virtual void doConflictCheck() const;
private:
@@ -36,7 +40,8 @@ private:
CONFLICT_OVERWRITE,
CONFLICT_OVERWRITTEN,
CONFLICT_MIXED,
- CONFLICT_REDUNDANT
+ CONFLICT_REDUNDANT,
+ CONFLICT_CROSS
};
private:
@@ -52,6 +57,11 @@ private:
EConflictType isArchiveConflicted() const;
/**
+ * @return true if there are archive conflicts with loose files in this mod
+ */
+ EConflictType isLooseArchiveConflicted() const;
+
+ /**
* @return true if this mod is completely replaced by others
*/
bool isRedundant() const;
@@ -62,12 +72,16 @@ private:
mutable EConflictType m_CurrentConflictState;
mutable EConflictType m_ArchiveConflictState;
+ mutable EConflictType m_ArchiveConflictLooseState;
+ mutable bool m_HasLooseOverwrite;
mutable QTime m_LastConflictCheck;
mutable std::set<unsigned int> m_OverwriteList; // indices of mods overritten by this mod
mutable std::set<unsigned int> m_OverwrittenList; // indices of mods overwriting this mod
mutable std::set<unsigned int> m_ArchiveOverwriteList; // indices of mods with archive files overritten by this mod
mutable std::set<unsigned int> m_ArchiveOverwrittenList; // indices of mods with archive files overwriting this mod
+ mutable std::set<unsigned int> m_ArchiveLooseOverwriteList; // indices of mods with archives being overwritten by this mod's loose files
+ mutable std::set<unsigned int> m_ArchiveLooseOverwrittenList; // indices of mods with loose files overwriting this mod's archive files
};