NOISSUE dissolve util library
This commit is contained in:
@ -23,7 +23,7 @@
|
||||
#include <QDebug>
|
||||
|
||||
#include "AssetsUtils.h"
|
||||
#include <pathutils.h>
|
||||
#include <FileSystem.h>
|
||||
|
||||
namespace AssetsUtils
|
||||
{
|
||||
@ -125,13 +125,13 @@ bool loadAssetsIndexJson(QString path, AssetsIndex *index)
|
||||
QDir reconstructAssets(QString assetsId)
|
||||
{
|
||||
QDir assetsDir = QDir("assets/");
|
||||
QDir indexDir = QDir(PathCombine(assetsDir.path(), "indexes"));
|
||||
QDir objectDir = QDir(PathCombine(assetsDir.path(), "objects"));
|
||||
QDir virtualDir = QDir(PathCombine(assetsDir.path(), "virtual"));
|
||||
QDir indexDir = QDir(FS::PathCombine(assetsDir.path(), "indexes"));
|
||||
QDir objectDir = QDir(FS::PathCombine(assetsDir.path(), "objects"));
|
||||
QDir virtualDir = QDir(FS::PathCombine(assetsDir.path(), "virtual"));
|
||||
|
||||
QString indexPath = PathCombine(indexDir.path(), assetsId + ".json");
|
||||
QString indexPath = FS::PathCombine(indexDir.path(), assetsId + ".json");
|
||||
QFile indexFile(indexPath);
|
||||
QDir virtualRoot(PathCombine(virtualDir.path(), assetsId));
|
||||
QDir virtualRoot(FS::PathCombine(virtualDir.path(), assetsId));
|
||||
|
||||
if (!indexFile.exists())
|
||||
{
|
||||
@ -152,13 +152,12 @@ QDir reconstructAssets(QString assetsId)
|
||||
for (QString map : index.objects.keys())
|
||||
{
|
||||
AssetObject asset_object = index.objects.value(map);
|
||||
QString target_path = PathCombine(virtualRoot.path(), map);
|
||||
QString target_path = FS::PathCombine(virtualRoot.path(), map);
|
||||
QFile target(target_path);
|
||||
|
||||
QString tlk = asset_object.hash.left(2);
|
||||
|
||||
QString original_path =
|
||||
PathCombine(PathCombine(objectDir.path(), tlk), asset_object.hash);
|
||||
QString original_path = FS::PathCombine(objectDir.path(), tlk, asset_object.hash);
|
||||
QFile original(original_path);
|
||||
if (!original.exists())
|
||||
continue;
|
||||
|
@ -17,8 +17,6 @@
|
||||
#include <QDir>
|
||||
#include <QImage>
|
||||
#include <settings/Setting.h>
|
||||
#include <pathutils.h>
|
||||
#include <cmdutils.h>
|
||||
|
||||
#include "LegacyInstance.h"
|
||||
|
||||
@ -35,6 +33,7 @@
|
||||
#include "minecraft/ModList.h"
|
||||
#include "minecraft/WorldList.h"
|
||||
#include <MMCZip.h>
|
||||
#include <FileSystem.h>
|
||||
|
||||
LegacyInstance::LegacyInstance(SettingsObjectPtr globalSettings, SettingsObjectPtr settings, const QString &rootDir)
|
||||
: MinecraftInstance(globalSettings, settings, rootDir)
|
||||
@ -109,7 +108,7 @@ std::shared_ptr<LaunchTask> LegacyInstance::createLaunchTask(AuthSessionPtr sess
|
||||
QString launchScript;
|
||||
QIcon icon = ENV.icons()->getIcon(iconKey());
|
||||
auto pixmap = icon.pixmap(128, 128);
|
||||
pixmap.save(PathCombine(minecraftRoot(), "icon.png"), "PNG");
|
||||
pixmap.save(FS::PathCombine(minecraftRoot(), "icon.png"), "PNG");
|
||||
|
||||
// create the launch script
|
||||
{
|
||||
@ -331,56 +330,56 @@ std::shared_ptr<WorldList> LegacyInstance::worldList() const
|
||||
|
||||
QString LegacyInstance::jarModsDir() const
|
||||
{
|
||||
return PathCombine(instanceRoot(), "instMods");
|
||||
return FS::PathCombine(instanceRoot(), "instMods");
|
||||
}
|
||||
|
||||
QString LegacyInstance::binDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "bin");
|
||||
return FS::PathCombine(minecraftRoot(), "bin");
|
||||
}
|
||||
|
||||
QString LegacyInstance::libDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "lib");
|
||||
return FS::PathCombine(minecraftRoot(), "lib");
|
||||
}
|
||||
|
||||
QString LegacyInstance::savesDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "saves");
|
||||
return FS::PathCombine(minecraftRoot(), "saves");
|
||||
}
|
||||
|
||||
QString LegacyInstance::loaderModsDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "mods");
|
||||
return FS::PathCombine(minecraftRoot(), "mods");
|
||||
}
|
||||
|
||||
QString LegacyInstance::coreModsDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "coremods");
|
||||
return FS::PathCombine(minecraftRoot(), "coremods");
|
||||
}
|
||||
|
||||
QString LegacyInstance::resourceDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "resources");
|
||||
return FS::PathCombine(minecraftRoot(), "resources");
|
||||
}
|
||||
QString LegacyInstance::texturePacksDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "texturepacks");
|
||||
return FS::PathCombine(minecraftRoot(), "texturepacks");
|
||||
}
|
||||
|
||||
QString LegacyInstance::runnableJar() const
|
||||
{
|
||||
return PathCombine(binDir(), "minecraft.jar");
|
||||
return FS::PathCombine(binDir(), "minecraft.jar");
|
||||
}
|
||||
|
||||
QString LegacyInstance::modListFile() const
|
||||
{
|
||||
return PathCombine(instanceRoot(), "modlist");
|
||||
return FS::PathCombine(instanceRoot(), "modlist");
|
||||
}
|
||||
|
||||
QString LegacyInstance::instanceConfigFolder() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "config");
|
||||
return FS::PathCombine(minecraftRoot(), "config");
|
||||
}
|
||||
|
||||
bool LegacyInstance::shouldRebuild() const
|
||||
@ -442,7 +441,7 @@ QString LegacyInstance::defaultBaseJar() const
|
||||
|
||||
QString LegacyInstance::defaultCustomBaseJar() const
|
||||
{
|
||||
return PathCombine(binDir(), "mcbackup.jar");
|
||||
return FS::PathCombine(binDir(), "mcbackup.jar");
|
||||
}
|
||||
|
||||
QString LegacyInstance::lwjglFolder() const
|
||||
|
@ -14,7 +14,6 @@
|
||||
*/
|
||||
|
||||
#include <QStringList>
|
||||
#include <pathutils.h>
|
||||
#include <quazip.h>
|
||||
#include <quazipfile.h>
|
||||
#include <QDebug>
|
||||
@ -30,6 +29,7 @@
|
||||
#include "minecraft/MinecraftVersionList.h"
|
||||
#include "minecraft/ModList.h"
|
||||
#include "minecraft/LegacyInstance.h"
|
||||
#include <FileSystem.h>
|
||||
|
||||
LegacyUpdate::LegacyUpdate(BaseInstance *inst, QObject *parent) : Task(parent), m_inst(inst)
|
||||
{
|
||||
@ -92,7 +92,7 @@ void LegacyUpdate::fmllibsStart()
|
||||
// now check the lib folder inside the instance for files.
|
||||
for (auto &lib : libList)
|
||||
{
|
||||
QFileInfo libInfo(PathCombine(inst->libDir(), lib.filename));
|
||||
QFileInfo libInfo(FS::PathCombine(inst->libDir(), lib.filename));
|
||||
if (libInfo.exists())
|
||||
continue;
|
||||
fmlLibsToProcess.append(lib);
|
||||
@ -137,13 +137,13 @@ void LegacyUpdate::fmllibsFinished()
|
||||
{
|
||||
progress(index, fmlLibsToProcess.size());
|
||||
auto entry = metacache->resolveEntry("fmllibs", lib.filename);
|
||||
auto path = PathCombine(inst->libDir(), lib.filename);
|
||||
if(!ensureFilePathExists(path))
|
||||
auto path = FS::PathCombine(inst->libDir(), lib.filename);
|
||||
if(!FS::ensureFilePathExists(path))
|
||||
{
|
||||
emitFailed(tr("Failed creating FML library folder inside the instance."));
|
||||
return;
|
||||
}
|
||||
if (!QFile::copy(entry->getFullPath(), PathCombine(inst->libDir(), lib.filename)))
|
||||
if (!QFile::copy(entry->getFullPath(), FS::PathCombine(inst->libDir(), lib.filename)))
|
||||
{
|
||||
emitFailed(tr("Failed copying Forge/FML library: %1.").arg(lib.filename));
|
||||
return;
|
||||
@ -166,11 +166,11 @@ void LegacyUpdate::lwjglStart()
|
||||
LegacyInstance *inst = (LegacyInstance *)m_inst;
|
||||
|
||||
lwjglVersion = inst->lwjglVersion();
|
||||
lwjglTargetPath = PathCombine(inst->lwjglFolder(), lwjglVersion);
|
||||
lwjglNativesPath = PathCombine(lwjglTargetPath, "natives");
|
||||
lwjglTargetPath = FS::PathCombine(inst->lwjglFolder(), lwjglVersion);
|
||||
lwjglNativesPath = FS::PathCombine(lwjglTargetPath, "natives");
|
||||
|
||||
// if the 'done' file exists, we don't have to download this again
|
||||
QFileInfo doneFile(PathCombine(lwjglTargetPath, "done"));
|
||||
QFileInfo doneFile(FS::PathCombine(lwjglTargetPath, "done"));
|
||||
if (doneFile.exists())
|
||||
{
|
||||
jarStart();
|
||||
@ -256,7 +256,7 @@ void LegacyUpdate::extractLwjgl()
|
||||
{
|
||||
// make sure the directories are there
|
||||
|
||||
bool success = ensureFolderPathExists(lwjglNativesPath);
|
||||
bool success = FS::ensureFolderPathExists(lwjglNativesPath);
|
||||
|
||||
if (!success)
|
||||
{
|
||||
@ -295,7 +295,7 @@ void LegacyUpdate::extractLwjgl()
|
||||
{
|
||||
if (name.endsWith(jarNames[i]))
|
||||
{
|
||||
destFileName = PathCombine(lwjglTargetPath, jarNames[i]);
|
||||
destFileName = FS::PathCombine(lwjglTargetPath, jarNames[i]);
|
||||
}
|
||||
}
|
||||
// Not found? look for the natives
|
||||
@ -318,7 +318,7 @@ void LegacyUpdate::extractLwjgl()
|
||||
name = name.mid(lastSlash + 1);
|
||||
else if (lastBackSlash != -1)
|
||||
name = name.mid(lastBackSlash + 1);
|
||||
destFileName = PathCombine(lwjglNativesPath, name);
|
||||
destFileName = FS::PathCombine(lwjglNativesPath, name);
|
||||
}
|
||||
}
|
||||
// Now if destFileName is still empty, go to the next file.
|
||||
@ -334,7 +334,7 @@ void LegacyUpdate::extractLwjgl()
|
||||
}
|
||||
zip.close();
|
||||
m_reply.reset();
|
||||
QFile doneFile(PathCombine(lwjglTargetPath, "done"));
|
||||
QFile doneFile(FS::PathCombine(lwjglTargetPath, "done"));
|
||||
doneFile.open(QIODevice::WriteOnly);
|
||||
doneFile.write("done.");
|
||||
doneFile.close();
|
||||
|
@ -1,12 +1,12 @@
|
||||
#include "MinecraftInstance.h"
|
||||
#include <settings/Setting.h>
|
||||
#include "settings/SettingsObject.h"
|
||||
#include <pathutils.h>
|
||||
#include "Env.h"
|
||||
#include "minecraft/MinecraftVersionList.h"
|
||||
#include <MMCStrings.h>
|
||||
#include <pathmatcher/RegexpMatcher.h>
|
||||
#include <pathmatcher/MultiMatcher.h>
|
||||
#include <FileSystem.h>
|
||||
|
||||
#define IBUS "@im=ibus"
|
||||
|
||||
@ -67,8 +67,8 @@ MinecraftInstance::MinecraftInstance(SettingsObjectPtr globalSettings, SettingsO
|
||||
|
||||
QString MinecraftInstance::minecraftRoot() const
|
||||
{
|
||||
QFileInfo mcDir(PathCombine(instanceRoot(), "minecraft"));
|
||||
QFileInfo dotMCDir(PathCombine(instanceRoot(), ".minecraft"));
|
||||
QFileInfo mcDir(FS::PathCombine(instanceRoot(), "minecraft"));
|
||||
QFileInfo dotMCDir(FS::PathCombine(instanceRoot(), ".minecraft"));
|
||||
|
||||
if (dotMCDir.exists() && !mcDir.exists())
|
||||
return dotMCDir.filePath();
|
||||
@ -115,7 +115,7 @@ QStringList MinecraftInstance::javaArguments() const
|
||||
}
|
||||
|
||||
args << "-Duser.language=en";
|
||||
args << "-jar" << PathCombine(QCoreApplication::applicationDirPath(), "jars", "NewLaunch.jar");
|
||||
args << "-jar" << FS::PathCombine(QCoreApplication::applicationDirPath(), "jars", "NewLaunch.jar");
|
||||
|
||||
return args;
|
||||
}
|
||||
|
@ -18,7 +18,6 @@
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonArray>
|
||||
#include <QDebug>
|
||||
#include <pathutils.h>
|
||||
|
||||
#include "minecraft/MinecraftProfile.h"
|
||||
#include "ProfileUtils.h"
|
||||
|
@ -27,8 +27,7 @@
|
||||
#include "ParseUtils.h"
|
||||
#include "ProfileUtils.h"
|
||||
#include "VersionFilterData.h"
|
||||
|
||||
#include <pathutils.h>
|
||||
#include <FileSystem.h>
|
||||
|
||||
static const char * localVersionCache = "versions/versions.dat";
|
||||
|
||||
@ -548,7 +547,7 @@ void MCVListVersionUpdateTask::json_downloaded()
|
||||
auto doc = file->toJson(false);
|
||||
auto newdata = doc.toBinaryData();
|
||||
QString targetPath = "versions/" + versionToUpdate + "/" + versionToUpdate + ".dat";
|
||||
ensureFilePathExists(targetPath);
|
||||
FS::ensureFilePathExists(targetPath);
|
||||
QSaveFile vfile1(targetPath);
|
||||
if (!vfile1.open(QIODevice::Truncate | QIODevice::WriteOnly))
|
||||
{
|
||||
@ -582,7 +581,7 @@ std::shared_ptr<Task> MinecraftVersionList::createUpdateTask(QString version)
|
||||
void MinecraftVersionList::saveCachedList()
|
||||
{
|
||||
// FIXME: throw.
|
||||
if (!ensureFilePathExists(localVersionCache))
|
||||
if (!FS::ensureFilePathExists(localVersionCache))
|
||||
return;
|
||||
QSaveFile tfile(localVersionCache);
|
||||
if (!tfile.open(QIODevice::WriteOnly | QIODevice::Truncate))
|
||||
|
@ -23,8 +23,8 @@
|
||||
#include <quazipfile.h>
|
||||
|
||||
#include "Mod.h"
|
||||
#include <pathutils.h>
|
||||
#include "settings/INIFile.h"
|
||||
#include <FileSystem.h>
|
||||
#include <QDebug>
|
||||
|
||||
Mod::Mod(const QFileInfo &file)
|
||||
@ -113,7 +113,7 @@ void Mod::repath(const QFileInfo &file)
|
||||
}
|
||||
else if (m_type == MOD_FOLDER)
|
||||
{
|
||||
QFileInfo mcmod_info(PathCombine(m_file.filePath(), "mcmod.info"));
|
||||
QFileInfo mcmod_info(FS::PathCombine(m_file.filePath(), "mcmod.info"));
|
||||
if (mcmod_info.isFile())
|
||||
{
|
||||
QFile mcmod(mcmod_info.filePath());
|
||||
@ -278,7 +278,7 @@ bool Mod::replace(Mod &with)
|
||||
}
|
||||
if (t == MOD_FOLDER)
|
||||
{
|
||||
success = copyPath(with.m_file.filePath(), m_file.path());
|
||||
success = FS::copyPath(with.m_file.filePath(), m_file.path());
|
||||
}
|
||||
if (success)
|
||||
{
|
||||
|
@ -14,7 +14,7 @@
|
||||
*/
|
||||
|
||||
#include "ModList.h"
|
||||
#include <pathutils.h>
|
||||
#include <FileSystem.h>
|
||||
#include <QMimeData>
|
||||
#include <QUrl>
|
||||
#include <QUuid>
|
||||
@ -25,7 +25,7 @@
|
||||
ModList::ModList(const QString &dir, const QString &list_file)
|
||||
: QAbstractListModel(), m_dir(dir), m_list_file(list_file)
|
||||
{
|
||||
ensureFolderPathExists(m_dir.absolutePath());
|
||||
FS::ensureFolderPathExists(m_dir.absolutePath());
|
||||
m_dir.setFilter(QDir::Readable | QDir::NoDotAndDotDot | QDir::Files | QDir::Dirs |
|
||||
QDir::NoSymLinks);
|
||||
m_dir.setSorting(QDir::Name | QDir::IgnoreCase | QDir::LocaleAware);
|
||||
@ -270,7 +270,7 @@ bool ModList::installMod(const QFileInfo &filename, int index)
|
||||
return false;
|
||||
if (type == Mod::MOD_SINGLEFILE || type == Mod::MOD_ZIPFILE || type == Mod::MOD_LITEMOD)
|
||||
{
|
||||
QString newpath = PathCombine(m_dir.path(), filename.fileName());
|
||||
QString newpath = FS::PathCombine(m_dir.path(), filename.fileName());
|
||||
if (!QFile::copy(filename.filePath(), newpath))
|
||||
return false;
|
||||
m.repath(newpath);
|
||||
@ -285,8 +285,8 @@ bool ModList::installMod(const QFileInfo &filename, int index)
|
||||
{
|
||||
|
||||
QString from = filename.filePath();
|
||||
QString to = PathCombine(m_dir.path(), filename.fileName());
|
||||
if (!copyPath(from, to))
|
||||
QString to = FS::PathCombine(m_dir.path(), filename.fileName());
|
||||
if (!FS::copyPath(from, to))
|
||||
return false;
|
||||
m.repath(to);
|
||||
beginInsertRows(QModelIndex(), index, index);
|
||||
|
@ -14,7 +14,6 @@
|
||||
*/
|
||||
|
||||
#include <QIcon>
|
||||
#include <pathutils.h>
|
||||
#include <QDebug>
|
||||
|
||||
#include "minecraft/OneSixInstance.h"
|
||||
@ -36,6 +35,7 @@
|
||||
#include "minecraft/AssetsUtils.h"
|
||||
#include "icons/IconList.h"
|
||||
#include "minecraft/WorldList.h"
|
||||
#include <FileSystem.h>
|
||||
|
||||
OneSixInstance::OneSixInstance(SettingsObjectPtr globalSettings, SettingsObjectPtr settings, const QString &rootDir)
|
||||
: MinecraftInstance(globalSettings, settings, rootDir)
|
||||
@ -136,7 +136,7 @@ std::shared_ptr<LaunchTask> OneSixInstance::createLaunchTask(AuthSessionPtr sess
|
||||
QString launchScript;
|
||||
QIcon icon = ENV.icons()->getIcon(iconKey());
|
||||
auto pixmap = icon.pixmap(128, 128);
|
||||
pixmap.save(PathCombine(minecraftRoot(), "icon.png"), "PNG");
|
||||
pixmap.save(FS::PathCombine(minecraftRoot(), "icon.png"), "PNG");
|
||||
|
||||
if (!m_version)
|
||||
return nullptr;
|
||||
@ -222,7 +222,7 @@ std::shared_ptr<LaunchTask> OneSixInstance::createLaunchTask(AuthSessionPtr sess
|
||||
|
||||
// native libraries (mostly LWJGL)
|
||||
{
|
||||
QDir natives_dir(PathCombine(instanceRoot(), "natives/"));
|
||||
QDir natives_dir(FS::PathCombine(instanceRoot(), "natives/"));
|
||||
for (auto native : m_version->getActiveNativeLibs())
|
||||
{
|
||||
QFileInfo finfo(native->storagePath());
|
||||
@ -348,7 +348,7 @@ std::shared_ptr<Task> OneSixInstance::createJarModdingTask()
|
||||
|
||||
void OneSixInstance::cleanupAfterRun()
|
||||
{
|
||||
QString target_dir = PathCombine(instanceRoot(), "natives/");
|
||||
QString target_dir = FS::PathCombine(instanceRoot(), "natives/");
|
||||
QDir dir(target_dir);
|
||||
dir.removeRecursively();
|
||||
}
|
||||
@ -515,42 +515,42 @@ bool OneSixInstance::reload()
|
||||
|
||||
QString OneSixInstance::loaderModsDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "mods");
|
||||
return FS::PathCombine(minecraftRoot(), "mods");
|
||||
}
|
||||
|
||||
QString OneSixInstance::coreModsDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "coremods");
|
||||
return FS::PathCombine(minecraftRoot(), "coremods");
|
||||
}
|
||||
|
||||
QString OneSixInstance::resourcePacksDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "resourcepacks");
|
||||
return FS::PathCombine(minecraftRoot(), "resourcepacks");
|
||||
}
|
||||
|
||||
QString OneSixInstance::texturePacksDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "texturepacks");
|
||||
return FS::PathCombine(minecraftRoot(), "texturepacks");
|
||||
}
|
||||
|
||||
QString OneSixInstance::instanceConfigFolder() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "config");
|
||||
return FS::PathCombine(minecraftRoot(), "config");
|
||||
}
|
||||
|
||||
QString OneSixInstance::jarModsDir() const
|
||||
{
|
||||
return PathCombine(instanceRoot(), "jarmods");
|
||||
return FS::PathCombine(instanceRoot(), "jarmods");
|
||||
}
|
||||
|
||||
QString OneSixInstance::libDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "lib");
|
||||
return FS::PathCombine(minecraftRoot(), "lib");
|
||||
}
|
||||
|
||||
QString OneSixInstance::worldDir() const
|
||||
{
|
||||
return PathCombine(minecraftRoot(), "saves");
|
||||
return FS::PathCombine(minecraftRoot(), "saves");
|
||||
}
|
||||
|
||||
QStringList OneSixInstance::extraArguments() const
|
||||
|
@ -3,8 +3,8 @@
|
||||
#include "minecraft/OneSixInstance.h"
|
||||
#include "minecraft/MinecraftVersionList.h"
|
||||
#include "Env.h"
|
||||
#include <FileSystem.h>
|
||||
|
||||
#include <pathutils.h>
|
||||
#include <QDir>
|
||||
#include <QUuid>
|
||||
#include <QJsonDocument>
|
||||
@ -17,9 +17,9 @@ OneSixProfileStrategy::OneSixProfileStrategy(OneSixInstance* instance)
|
||||
|
||||
void OneSixProfileStrategy::upgradeDeprecatedFiles()
|
||||
{
|
||||
auto versionJsonPath = PathCombine(m_instance->instanceRoot(), "version.json");
|
||||
auto customJsonPath = PathCombine(m_instance->instanceRoot(), "custom.json");
|
||||
auto mcJson = PathCombine(m_instance->instanceRoot(), "patches" , "net.minecraft.json");
|
||||
auto versionJsonPath = FS::PathCombine(m_instance->instanceRoot(), "version.json");
|
||||
auto customJsonPath = FS::PathCombine(m_instance->instanceRoot(), "custom.json");
|
||||
auto mcJson = FS::PathCombine(m_instance->instanceRoot(), "patches" , "net.minecraft.json");
|
||||
|
||||
QString sourceFile;
|
||||
QString renameFile;
|
||||
@ -36,7 +36,7 @@ void OneSixProfileStrategy::upgradeDeprecatedFiles()
|
||||
}
|
||||
if(!sourceFile.isEmpty() && !QFile::exists(mcJson))
|
||||
{
|
||||
if(!ensureFilePathExists(mcJson))
|
||||
if(!FS::ensureFilePathExists(mcJson))
|
||||
{
|
||||
qWarning() << "Couldn't create patches folder for" << m_instance->name();
|
||||
return;
|
||||
@ -79,7 +79,7 @@ void OneSixProfileStrategy::upgradeDeprecatedFiles()
|
||||
void OneSixProfileStrategy::loadDefaultBuiltinPatches()
|
||||
{
|
||||
{
|
||||
auto mcJson = PathCombine(m_instance->instanceRoot(), "patches" , "net.minecraft.json");
|
||||
auto mcJson = FS::PathCombine(m_instance->instanceRoot(), "patches" , "net.minecraft.json");
|
||||
// load up the base minecraft patch
|
||||
ProfilePatchPtr minecraftPatch;
|
||||
if(QFile::exists(mcJson))
|
||||
@ -107,7 +107,7 @@ void OneSixProfileStrategy::loadDefaultBuiltinPatches()
|
||||
}
|
||||
|
||||
{
|
||||
auto lwjglJson = PathCombine(m_instance->instanceRoot(), "patches" , "org.lwjgl.json");
|
||||
auto lwjglJson = FS::PathCombine(m_instance->instanceRoot(), "patches" , "org.lwjgl.json");
|
||||
ProfilePatchPtr lwjglPatch;
|
||||
if(QFile::exists(lwjglJson))
|
||||
{
|
||||
@ -138,8 +138,8 @@ void OneSixProfileStrategy::loadUserPatches()
|
||||
{
|
||||
// load all patches, put into map for ordering, apply in the right order
|
||||
ProfileUtils::PatchOrder userOrder;
|
||||
ProfileUtils::readOverrideOrders(PathCombine(m_instance->instanceRoot(), "order.json"), userOrder);
|
||||
QDir patches(PathCombine(m_instance->instanceRoot(),"patches"));
|
||||
ProfileUtils::readOverrideOrders(FS::PathCombine(m_instance->instanceRoot(), "order.json"), userOrder);
|
||||
QDir patches(FS::PathCombine(m_instance->instanceRoot(),"patches"));
|
||||
|
||||
// first, load things by sort order.
|
||||
for (auto id : userOrder)
|
||||
@ -215,7 +215,7 @@ void OneSixProfileStrategy::load()
|
||||
|
||||
bool OneSixProfileStrategy::saveOrder(ProfileUtils::PatchOrder order)
|
||||
{
|
||||
return ProfileUtils::writeOverrideOrders(PathCombine(m_instance->instanceRoot(), "order.json"), order);
|
||||
return ProfileUtils::writeOverrideOrders(FS::PathCombine(m_instance->instanceRoot(), "order.json"), order);
|
||||
}
|
||||
|
||||
bool OneSixProfileStrategy::resetOrder()
|
||||
@ -241,7 +241,7 @@ bool OneSixProfileStrategy::removePatch(ProfilePatchPtr patch)
|
||||
|
||||
auto preRemoveJarMod = [&](JarmodPtr jarMod) -> bool
|
||||
{
|
||||
QString fullpath = PathCombine(m_instance->jarModsDir(), jarMod->name);
|
||||
QString fullpath = FS::PathCombine(m_instance->jarModsDir(), jarMod->name);
|
||||
QFileInfo finfo (fullpath);
|
||||
if(finfo.exists())
|
||||
{
|
||||
@ -270,8 +270,8 @@ bool OneSixProfileStrategy::customizePatch(ProfilePatchPtr patch)
|
||||
return false;
|
||||
}
|
||||
|
||||
auto filename = PathCombine(m_instance->instanceRoot(), "patches" , patch->getPatchID() + ".json");
|
||||
if(!ensureFilePathExists(filename))
|
||||
auto filename = FS::PathCombine(m_instance->instanceRoot(), "patches" , patch->getPatchID() + ".json");
|
||||
if(!FS::ensureFilePathExists(filename))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@ -333,13 +333,13 @@ bool OneSixProfileStrategy::revertPatch(ProfilePatchPtr patch)
|
||||
|
||||
bool OneSixProfileStrategy::installJarMods(QStringList filepaths)
|
||||
{
|
||||
QString patchDir = PathCombine(m_instance->instanceRoot(), "patches");
|
||||
if(!ensureFolderPathExists(patchDir))
|
||||
QString patchDir = FS::PathCombine(m_instance->instanceRoot(), "patches");
|
||||
if(!FS::ensureFolderPathExists(patchDir))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!ensureFolderPathExists(m_instance->jarModsDir()))
|
||||
if (!FS::ensureFolderPathExists(m_instance->jarModsDir()))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@ -352,7 +352,7 @@ bool OneSixProfileStrategy::installJarMods(QStringList filepaths)
|
||||
QString target_filename = id + ".jar";
|
||||
QString target_id = "org.multimc.jarmod." + id;
|
||||
QString target_name = sourceInfo.completeBaseName() + " (jar mod)";
|
||||
QString finalPath = PathCombine(m_instance->jarModsDir(), target_filename);
|
||||
QString finalPath = FS::PathCombine(m_instance->jarModsDir(), target_filename);
|
||||
|
||||
QFileInfo targetInfo(finalPath);
|
||||
if(targetInfo.exists())
|
||||
@ -373,7 +373,7 @@ bool OneSixProfileStrategy::installJarMods(QStringList filepaths)
|
||||
f->name = target_name;
|
||||
f->fileId = target_id;
|
||||
f->order = profile->getFreeOrderNumber();
|
||||
QString patchFileName = PathCombine(patchDir, target_id + ".json");
|
||||
QString patchFileName = FS::PathCombine(patchDir, target_id + ".json");
|
||||
f->filename = patchFileName;
|
||||
f->setMovable(true);
|
||||
f->setRemovable(true);
|
||||
|
@ -22,7 +22,6 @@
|
||||
#include <QFileInfo>
|
||||
#include <QTextStream>
|
||||
#include <QDataStream>
|
||||
#include <pathutils.h>
|
||||
#include <JlCompress.h>
|
||||
|
||||
#include "BaseInstance.h"
|
||||
@ -35,6 +34,7 @@
|
||||
#include "minecraft/AssetsUtils.h"
|
||||
#include "Exception.h"
|
||||
#include "MMCZip.h"
|
||||
#include <FileSystem.h>
|
||||
|
||||
OneSixUpdate::OneSixUpdate(OneSixInstance *inst, QObject *parent) : Task(parent), m_inst(inst)
|
||||
{
|
||||
@ -344,7 +344,7 @@ void OneSixUpdate::fmllibsStart()
|
||||
// now check the lib folder inside the instance for files.
|
||||
for (auto &lib : libList)
|
||||
{
|
||||
QFileInfo libInfo(PathCombine(inst->libDir(), lib.filename));
|
||||
QFileInfo libInfo(FS::PathCombine(inst->libDir(), lib.filename));
|
||||
if (libInfo.exists())
|
||||
continue;
|
||||
fmlLibsToProcess.append(lib);
|
||||
@ -389,13 +389,13 @@ void OneSixUpdate::fmllibsFinished()
|
||||
{
|
||||
progress(index, fmlLibsToProcess.size());
|
||||
auto entry = metacache->resolveEntry("fmllibs", lib.filename);
|
||||
auto path = PathCombine(inst->libDir(), lib.filename);
|
||||
if (!ensureFilePathExists(path))
|
||||
auto path = FS::PathCombine(inst->libDir(), lib.filename);
|
||||
if (!FS::ensureFilePathExists(path))
|
||||
{
|
||||
emitFailed(tr("Failed creating FML library folder inside the instance."));
|
||||
return;
|
||||
}
|
||||
if (!QFile::copy(entry->getFullPath(), PathCombine(inst->libDir(), lib.filename)))
|
||||
if (!QFile::copy(entry->getFullPath(), FS::PathCombine(inst->libDir(), lib.filename)))
|
||||
{
|
||||
emitFailed(tr("Failed copying Forge/FML library: %1.").arg(lib.filename));
|
||||
return;
|
||||
|
@ -2,7 +2,7 @@
|
||||
using namespace Json;
|
||||
|
||||
#include "RawLibrary.h"
|
||||
#include <pathutils.h>
|
||||
#include <FileSystem.h>
|
||||
|
||||
RawLibraryPtr RawLibrary::fromJson(const QJsonObject &libObj, const QString &filename)
|
||||
{
|
||||
@ -314,7 +314,7 @@ QString RawLibrary::storageSuffix() const
|
||||
|
||||
QString RawLibrary::storagePath() const
|
||||
{
|
||||
return PathCombine(storagePrefix(), storageSuffix());
|
||||
return FS::PathCombine(storagePrefix(), storageSuffix());
|
||||
}
|
||||
|
||||
bool RawLibrary::storagePathIsDefault() const
|
||||
|
@ -1,6 +1,5 @@
|
||||
#include <QJsonArray>
|
||||
#include <QJsonDocument>
|
||||
#include <modutils.h>
|
||||
|
||||
#include <QDebug>
|
||||
|
||||
@ -14,6 +13,7 @@
|
||||
using namespace Json;
|
||||
|
||||
#include "VersionBuildError.h"
|
||||
#include <Version.h>
|
||||
|
||||
#define CURRENT_MINIMUM_LAUNCHER_VERSION 14
|
||||
|
||||
@ -427,8 +427,8 @@ void VersionFile::applyTo(MinecraftProfile *version)
|
||||
|
||||
// otherwise apply differences, if allowed
|
||||
auto existingLibrary = version->libraries.at(index);
|
||||
const Util::Version addedVersion = addedLibrary->version();
|
||||
const Util::Version existingVersion = existingLibrary->version();
|
||||
const Version addedVersion(addedLibrary->version());
|
||||
const Version existingVersion(existingLibrary->version());
|
||||
// if the existing version is a hard dependency we can either use it or
|
||||
// fail, but we can't change it
|
||||
if (existingLibrary->dependType == OneSixLibrary::Hard)
|
||||
|
@ -18,10 +18,10 @@
|
||||
#include <QDebug>
|
||||
#include <QSaveFile>
|
||||
#include "World.h"
|
||||
#include <pathutils.h>
|
||||
|
||||
#include "GZip.h"
|
||||
#include <MMCZip.h>
|
||||
#include <FileSystem.h>
|
||||
#include <sstream>
|
||||
#include <io/stream_reader.h>
|
||||
#include <tag_string.h>
|
||||
@ -179,8 +179,8 @@ void World::readFromZip(const QFileInfo &file)
|
||||
|
||||
bool World::install(const QString &to, const QString &name)
|
||||
{
|
||||
auto finalPath = PathCombine(to, DirNameFromString(m_actualName, to));
|
||||
if(!ensureFolderPathExists(finalPath))
|
||||
auto finalPath = FS::PathCombine(to, FS::DirNameFromString(m_actualName, to));
|
||||
if(!FS::ensureFolderPathExists(finalPath))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@ -197,7 +197,7 @@ bool World::install(const QString &to, const QString &name)
|
||||
else if(m_containerFile.isDir())
|
||||
{
|
||||
QString from = m_containerFile.filePath();
|
||||
ok = copyPath(from, finalPath);
|
||||
ok = FS::copyPath(from, finalPath);
|
||||
}
|
||||
|
||||
if(ok && !name.isEmpty() && m_actualName != name)
|
||||
@ -245,7 +245,7 @@ bool World::rename(const QString &newName)
|
||||
QDir parentDir(m_containerFile.absoluteFilePath());
|
||||
parentDir.cdUp();
|
||||
QFile container(m_containerFile.absoluteFilePath());
|
||||
auto dirName = DirNameFromString(m_actualName, parentDir.absolutePath());
|
||||
auto dirName = FS::DirNameFromString(m_actualName, parentDir.absolutePath());
|
||||
container.rename(parentDir.absoluteFilePath(dirName));
|
||||
|
||||
return true;
|
||||
@ -350,7 +350,7 @@ bool World::replace(World &with)
|
||||
{
|
||||
if (!destroy())
|
||||
return false;
|
||||
bool success = copyPath(with.m_containerFile.filePath(), m_containerFile.path());
|
||||
bool success = FS::copyPath(with.m_containerFile.filePath(), m_containerFile.path());
|
||||
if (success)
|
||||
{
|
||||
m_folderName = with.m_folderName;
|
||||
|
@ -14,7 +14,7 @@
|
||||
*/
|
||||
|
||||
#include "WorldList.h"
|
||||
#include <pathutils.h>
|
||||
#include <FileSystem.h>
|
||||
#include <QMimeData>
|
||||
#include <QUrl>
|
||||
#include <QUuid>
|
||||
@ -25,7 +25,7 @@
|
||||
WorldList::WorldList(const QString &dir)
|
||||
: QAbstractListModel(), m_dir(dir)
|
||||
{
|
||||
ensureFolderPathExists(m_dir.absolutePath());
|
||||
FS::ensureFolderPathExists(m_dir.absolutePath());
|
||||
m_dir.setFilter(QDir::Readable | QDir::NoDotAndDotDot | QDir::Files | QDir::Dirs |
|
||||
QDir::NoSymLinks);
|
||||
m_dir.setSorting(QDir::Name | QDir::IgnoreCase | QDir::LocaleAware);
|
||||
|
Reference in New Issue
Block a user