aboutsummaryrefslogtreecommitdiff
path: root/api/logic/modplatform/ftb/FtbPrivatePackManager.cpp
diff options
context:
space:
mode:
authorJannis Lübke <werbung.janrupf@t-online.de>2018-08-02 00:52:31 +0200
committerPetr Mrázek <peterix@gmail.com>2018-08-02 00:52:31 +0200
commit6aada8adf7df5075d5838512670a0b2cc2bc12a1 (patch)
tree46460efee6d3f1bd66bc611e4ad4665362d36bf0 /api/logic/modplatform/ftb/FtbPrivatePackManager.cpp
parent6cee50eac6c25796eb3642239385b0c58860cd58 (diff)
downloadPrismLauncher-6aada8adf7df5075d5838512670a0b2cc2bc12a1.tar.gz
PrismLauncher-6aada8adf7df5075d5838512670a0b2cc2bc12a1.tar.bz2
PrismLauncher-6aada8adf7df5075d5838512670a0b2cc2bc12a1.zip
NOISSUE FTB pack code implementation, cleaned up
Diffstat (limited to 'api/logic/modplatform/ftb/FtbPrivatePackManager.cpp')
-rw-r--r--api/logic/modplatform/ftb/FtbPrivatePackManager.cpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/api/logic/modplatform/ftb/FtbPrivatePackManager.cpp b/api/logic/modplatform/ftb/FtbPrivatePackManager.cpp
new file mode 100644
index 00000000..15449592
--- /dev/null
+++ b/api/logic/modplatform/ftb/FtbPrivatePackManager.cpp
@@ -0,0 +1,36 @@
+#include "FtbPrivatePackManager.h"
+
+#include <QDebug>
+
+#include "FileSystem.h"
+
+void FtbPrivatePackManager::load()
+{
+ try
+ {
+ currentPacks = QString::fromUtf8(FS::read(m_filename)).split('\n', QString::SkipEmptyParts).toSet();
+ dirty = false;
+ }
+ catch(...)
+ {
+ currentPacks = {};
+ qWarning() << "Failed to read third party FTB pack codes from" << m_filename;
+ }
+}
+
+void FtbPrivatePackManager::save() const
+{
+ if(!dirty)
+ {
+ return;
+ }
+ try
+ {
+ FS::write(m_filename, currentPacks.toList().join('\n').toUtf8());
+ dirty = false;
+ }
+ catch(...)
+ {
+ qWarning() << "Failed to write third party FTB pack codes to" << m_filename;
+ }
+}