GpgFrontend Project
A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.
SoftwareVersion.h
1 
29 #ifndef GPGFRONTEND_SOFTWAREVERSION_H
30 #define GPGFRONTEND_SOFTWAREVERSION_H
31 
32 #include <boost/date_time.hpp>
33 
34 namespace GpgFrontend::UI {
40  std::string latest_version;
41  std::string current_version;
42  bool latest_prerelease = false;
43  bool latest_draft = false;
44  bool current_prerelease = false;
45  bool current_draft = false;
46  bool load_info_done = false;
47  bool current_version_found = false;
48  std::string publish_date;
49  std::string release_note;
50 
57  [[nodiscard]] bool InfoVaild() const { return load_info_done; }
58 
65  [[nodiscard]] bool NeedUpgrade() const {
66  return load_info_done && !latest_prerelease && !latest_draft &&
67  current_version < latest_version;
68  }
69 
76  [[nodiscard]] bool VersionWithDrawn() const {
77  return load_info_done && !current_version_found && current_prerelease &&
78  !current_draft;
79  }
80 
87  [[nodiscard]] bool CurrentVersionReleased() const {
88  return load_info_done && current_version_found;
89  }
90 };
91 } // namespace GpgFrontend::UI
92 
93 #endif // GPGFRONTEND_SOFTWAREVERSION_H
Definition: FileReadTask.cpp:31
Definition: SoftwareVersion.h:39
bool CurrentVersionReleased() const
Definition: SoftwareVersion.h:87
bool InfoVaild() const
Definition: SoftwareVersion.h:57
bool VersionWithDrawn() const
Definition: SoftwareVersion.h:76
bool NeedUpgrade() const
Definition: SoftwareVersion.h:65