aboutsummaryrefslogtreecommitdiff
path: root/libs/game_features/src/dataarchives.h
diff options
context:
space:
mode:
authorSulfurNitride <SulfurNitride@users.noreply.github.com>2026-02-11 02:37:39 -0600
committerSulfurNitride <SulfurNitride@users.noreply.github.com>2026-02-11 02:37:39 -0600
commit7ee008e150bc5bcf76082d726f719ee0fdfda982 (patch)
tree27fb39be241fdb5ac2734c574de678977d1856d0 /libs/game_features/src/dataarchives.h
Fluorine Manager: full Linux port of Mod Organizer 2
Complete native Linux port with FUSE-based virtual filesystem, Proton/umu-run integration, and Flatpak packaging. Key features: - FUSE VFS replacing Windows USVFS (in-process + standalone helper for Flatpak) - Proton/GE-Proton/umu-run launcher with env var forwarding - Flatpak support (sandbox-aware VFS, NXM handler, umu-run) - Wine prefix management UI - Case-insensitive path resolution for Linux filesystems - QSettings-safe INI handling (avoids Bethesda INI corruption) - Portable instance support with auto-generated launcher scripts Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Diffstat (limited to 'libs/game_features/src/dataarchives.h')
-rw-r--r--libs/game_features/src/dataarchives.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/libs/game_features/src/dataarchives.h b/libs/game_features/src/dataarchives.h
new file mode 100644
index 0000000..26688ba
--- /dev/null
+++ b/libs/game_features/src/dataarchives.h
@@ -0,0 +1,32 @@
+#ifndef DATAARCHIVES
+#define DATAARCHIVES
+
+namespace MOBase { class IProfile; }
+
+class QString;
+class QStringList;
+
+class DataArchives {
+
+public:
+
+ virtual ~DataArchives() {}
+
+ virtual QStringList vanillaArchives() const = 0;
+
+ virtual QStringList archives(const MOBase::IProfile *profile) const = 0;
+
+ /**
+ * @brief add an archive to the archive list
+ * @param profile the profile for which to change the archive list
+ * @param index index to insert before. 0 is the beginning of the list, INT_MAX can be used for the end of the list
+ * @param archiveName the archive to add
+ */
+ virtual void addArchive(MOBase::IProfile *profile, int index, const QString &archiveName) = 0;
+
+ virtual void removeArchive(MOBase::IProfile *profile, const QString &archiveName) = 0;
+
+};
+
+#endif // DATAARCHIVES
+