diff options
| author | LostDragonist <lost.dragonist@gmail.com> | 2019-01-25 10:19:44 -0600 |
|---|---|---|
| committer | LostDragonist <lost.dragonist@gmail.com> | 2019-01-25 10:19:44 -0600 |
| commit | a68a027febe6e094218654a24d4b5f9bdc31391a (patch) | |
| tree | a259919f61020f9f74553c63d3a5e6f8b023f7b7 /src/modinfowithconflictinfo.h | |
| parent | 63511cd390e1c1b7d6b28edcd691c1f72a81ca48 (diff) | |
| parent | 0ab87850c4cb405b93c592e455a9d052ec84f66f (diff) | |
Merge remote-tracking branch 'remotes/origin/archive_conflicts_2' into Develop
Diffstat (limited to 'src/modinfowithconflictinfo.h')
| -rw-r--r-- | src/modinfowithconflictinfo.h | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/src/modinfowithconflictinfo.h b/src/modinfowithconflictinfo.h index 6c1591c5..13d87d25 100644 --- a/src/modinfowithconflictinfo.h +++ b/src/modinfowithconflictinfo.h @@ -23,6 +23,14 @@ public: virtual std::set<unsigned int> getModOverwritten() { return m_OverwrittenList; } + virtual std::set<unsigned int> getModArchiveOverwrite() { return m_ArchiveOverwriteList; } + + 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: @@ -32,7 +40,8 @@ private: CONFLICT_OVERWRITE, CONFLICT_OVERWRITTEN, CONFLICT_MIXED, - CONFLICT_REDUNDANT + CONFLICT_REDUNDANT, + CONFLICT_CROSS }; private: @@ -43,6 +52,16 @@ private: EConflictType isConflicted() const; /** + * @return true if there are archive conflicts for files in this mod + */ + 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; @@ -52,10 +71,17 @@ private: MOShared::DirectoryEntry **m_DirectoryStructure; 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 }; |
