ConfigUtil.h 927 B

12345678910111213141516171819202122
  1. #pragma once
  2. namespace winrt::Maple_App::implementation {
  3. struct ConfigUtil
  4. {
  5. static Windows::Storage::ApplicationData GetCurrentAppData();
  6. static Windows::Foundation::IAsyncOperation<Windows::Storage::IStorageFolder> GetConfigFolder();
  7. static Windows::Foundation::IAsyncOperation<Windows::Storage::StorageFolder> GetDefaultConfigFolder();
  8. static void SetConfigFolder(Windows::Storage::IStorageFolder folder);
  9. static bool UsingDefaultConfigFolder() noexcept;
  10. inline const static auto LocalFolder{ GetCurrentAppData().LocalFolder() };
  11. private:
  12. constexpr static std::wstring_view ConfigFolderAccessListKey = L"configFolder";
  13. constexpr static std::wstring_view LocalFolderConfigDirName = L"config";
  14. static inline Windows::Storage::IStorageFolder cachedConfigFolder{ nullptr };
  15. static inline bool usingDefaultConfigFolder{};
  16. };
  17. }