thigns
This commit is contained in:
parent
ab097e2370
commit
875b9c7dd1
|
@ -1,12 +1,20 @@
|
|||
#include <fmt/core.h>
|
||||
|
||||
#include "config.h"
|
||||
|
||||
fn Config::getInstance()->const Config& {
|
||||
using rfl::Result;
|
||||
|
||||
fn Config::getInstance()->Config {
|
||||
#ifdef __WIN32__
|
||||
const string path = string(getenv("LOCALAPPDATA")) + "\\draconis++\\config.toml";
|
||||
#else
|
||||
const string path = string(getenv("HOME")) + "/.config/draconis++/config.toml";
|
||||
#endif
|
||||
// ReSharper disable once CppDFAMemoryLeak
|
||||
static const Config* INSTANCE = new Config(rfl::toml::load<Config>(path).value());
|
||||
return *INSTANCE;
|
||||
const Result<Config> result = rfl::toml::load<Config>(path);
|
||||
|
||||
if (result)
|
||||
return result.value();
|
||||
|
||||
fmt::println("Failed to load config file: {}", result.error().value().what());
|
||||
return {};
|
||||
}
|
|
@ -30,5 +30,5 @@ struct Config {
|
|||
rfl::Field<"now_playing", NowPlaying> now_playing = NowPlaying();
|
||||
rfl::Field<"weather", Weather> weather = Weather();
|
||||
|
||||
static fn getInstance() -> const Config&;
|
||||
static fn getInstance()->Config;
|
||||
};
|
||||
|
|
|
@ -6,7 +6,6 @@
|
|||
#include "config.h"
|
||||
|
||||
using rfl::Error;
|
||||
using rfl::Nothing;
|
||||
using rfl::Result;
|
||||
|
||||
// Function to read cache from file
|
||||
|
|
|
@ -48,7 +48,7 @@ fn GetDate()->string {
|
|||
fn main()->i32 {
|
||||
using std::future;
|
||||
|
||||
const Config& config = Config::getInstance();
|
||||
const Config config = Config::getInstance();
|
||||
|
||||
auto weatherFuture =
|
||||
std::async(std::launch::async, [&config]() { return config.weather.get().getWeatherInfo(); });
|
||||
|
|
|
@ -27,9 +27,7 @@ fn GetNowPlaying()->string {
|
|||
|
||||
if (const Session currentSession = sessionManager.GetCurrentSession()) {
|
||||
// Try to get the media properties asynchronously
|
||||
const IAsyncOperation<MediaProperties> mediaPropertiesOp =
|
||||
currentSession.TryGetMediaPropertiesAsync();
|
||||
const MediaProperties mediaProperties = mediaPropertiesOp.get();
|
||||
const MediaProperties mediaProperties = currentSession.TryGetMediaPropertiesAsync().get();
|
||||
|
||||
// Convert the hstring title to string
|
||||
return to_string(mediaProperties.Title());
|
||||
|
@ -46,7 +44,8 @@ fn GetRegistryValue(const HKEY& hKey, const string& subKey, const string& valueN
|
|||
return "";
|
||||
|
||||
DWORD dataSize = 0;
|
||||
if (RegQueryValueExA(key, valueName.c_str(), nullptr, nullptr, nullptr, &dataSize) != ERROR_SUCCESS) {
|
||||
if (RegQueryValueExA(key, valueName.c_str(), nullptr, nullptr, nullptr, &dataSize) !=
|
||||
ERROR_SUCCESS) {
|
||||
RegCloseKey(key);
|
||||
return "";
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue