GpgFrontend Project
A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.
GlobalSettingStation.h
1 
29 #pragma once
30 
31 #include "core/function/basic/GpgFunctionObject.h"
32 
33 namespace GpgFrontend {
34 
42 class GPGFRONTEND_CORE_EXPORT GlobalSettingStation
43  : public SingletonFunctionObject<GlobalSettingStation> {
44  public:
49  explicit GlobalSettingStation(
50  int channel = SingletonFunctionObject::GetDefaultChannel()) noexcept;
51 
56  ~GlobalSettingStation() noexcept override;
57 
63  [[nodiscard]] auto GetSettings() const -> QSettings;
64 
70  [[nodiscard]] auto GetAppDir() const -> QString;
71 
76  [[nodiscard]] auto GetAppDataPath() const -> QString;
77 
83  [[nodiscard]] auto GetLogDir() const -> QString;
84 
90  [[nodiscard]] auto GetLogFilesSize() const -> QString;
91 
97  [[nodiscard]] auto GetDataObjectsFilesSize() const -> QString;
98 
103  void ClearAllLogFiles() const;
104 
109  void ClearAllDataObjects() const;
110 
111  private:
112  class Impl;
113  SecureUniquePtr<Impl> p_;
114 };
115 } // namespace GpgFrontend
Definition: GlobalSettingStation.cpp:36
Singleton class for managing global settings in the application.
Definition: GlobalSettingStation.h:43
~GlobalSettingStation() noexcept override
Destroy the Global Setting Station object.
Definition: GpgFunctionObject.h:58
static auto GetDefaultChannel() -> int
Get the Default Channel object.
Definition: GpgFunctionObject.h:131
Executive files related to the basic operations of GPG.
Definition: app.cpp:39