Some more setup for the config and data folders.
This commit is contained in:
parent
75773778e9
commit
cd40148961
@ -32,15 +32,26 @@ int Application::run(int argc, char** argv)
|
||||
cleanup();
|
||||
};
|
||||
|
||||
auto addConfigDir = [&](const fs::path path)
|
||||
{
|
||||
using namespace mijin::vfs_pipe;
|
||||
mFS.addAdapter(os()
|
||||
| relative_to(mijin::getKnownFolder(mijin::KnownFolder::USER_CONFIG_ROOT) / getFolderName())
|
||||
| relative_to(path)
|
||||
| map_to("/config")
|
||||
);
|
||||
};
|
||||
|
||||
auto addDataDir = [&](const fs::path path)
|
||||
{
|
||||
using namespace mijin::vfs_pipe;
|
||||
mFS.addAdapter(os()
|
||||
| relative_to(mijin::getKnownFolder(mijin::KnownFolder::USER_DATA_ROOT) / getFolderName())
|
||||
| relative_to(path)
|
||||
| map_to("/data")
|
||||
);
|
||||
};
|
||||
|
||||
addConfigDir(mijin::getKnownFolder(mijin::KnownFolder::USER_CONFIG_ROOT) / getFolderName());
|
||||
addDataDir(mijin::getKnownFolder(mijin::KnownFolder::USER_DATA_ROOT) / getFolderName());
|
||||
|
||||
auto createUserDir = [&](const fs::path& virtualPath)
|
||||
{
|
||||
@ -62,6 +73,40 @@ int Application::run(int argc, char** argv)
|
||||
createUserDir("/config");
|
||||
createUserDir("/data");
|
||||
|
||||
// in development builds, also add the development folders
|
||||
#if !defined(RAID_RELEASE)
|
||||
addConfigDir(fs::current_path() / "data/config");
|
||||
addDataDir(fs::current_path() / "data/data");
|
||||
#endif
|
||||
|
||||
// now also add the system folders
|
||||
for (const fs::path& path : mijin::getAllConfigFolders(mijin::IncludeUser::NO))
|
||||
{
|
||||
addConfigDir(path / getFolderName());
|
||||
}
|
||||
|
||||
for (const fs::path& path : mijin::getAllDataFolders(mijin::IncludeUser::NO))
|
||||
{
|
||||
addDataDir(path / getFolderName());
|
||||
}
|
||||
|
||||
#if !defined(RAID_RELEASE)
|
||||
for (const mijin::PathReference& reference : mFS.getAllPaths("/config"))
|
||||
{
|
||||
reference.getNativePath().then([&](const fs::path& path)
|
||||
{
|
||||
msgInfo("Config folder: {}", path.generic_string());
|
||||
});
|
||||
}
|
||||
for (const mijin::PathReference& reference : mFS.getAllPaths("/data"))
|
||||
{
|
||||
reference.getNativePath().then([&](const fs::path& path)
|
||||
{
|
||||
msgInfo("Data folder: {}", path.generic_string());
|
||||
});
|
||||
}
|
||||
#endif
|
||||
|
||||
if (!initSDL())
|
||||
{
|
||||
return ERR_INIT_FAILED;
|
||||
@ -121,13 +166,13 @@ void Application::handleMessage(const Message& message)
|
||||
switch (message.severity)
|
||||
{
|
||||
case MessageSeverity::INFO:
|
||||
fmt::print("INFO: {}", message.text);
|
||||
fmt::println("INFO: {}", message.text);
|
||||
break;
|
||||
case MessageSeverity::WARNING:
|
||||
fmt::print("WARNING: {}", message.text);
|
||||
fmt::println("WARNING: {}", message.text);
|
||||
break;
|
||||
case MessageSeverity::ERROR:
|
||||
fmt::print(stderr, "ERROR: {}", message.text);
|
||||
fmt::println(stderr, "ERROR: {}", message.text);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user