tahoma2d/toonz/sources/include/tversion.h
Ivan Mahonin 13b0349095 #common: release note in full application name
add option to add edition, revision, build method etc.
to the end of the full application name:

OpenToonz 1.3.0
OpenToonz 1.3.0.1 (Nightly Build)
OpenToonz 1.3.1.1 (Experimental Release)
OpenToonz 1.3.0.2 (My Great Edition)
2019-09-09 11:13:23 +07:00

69 lines
1.7 KiB
C++

#pragma once
#ifndef TVER_INCLUDED
#define TVER_INCLUDED
namespace TVER {
class ToonzVersion {
public:
std::string getAppName(void);
float getAppVersion(void);
float getAppRevision(void);
std::string getAppNote(void);
bool hasAppNote(void);
std::string getAppVersionString(void);
std::string getAppRevisionString(void);
std::string getAppVersionInfo(std::string msg);
private:
const char *applicationName = "OpenToonz";
const float applicationVersion = 1.3;
const float applicationRevision = 0;
const char *applicationNote = "";
};
std::string ToonzVersion::getAppName(void) {
std::string appname = applicationName;
return appname;
}
float ToonzVersion::getAppVersion(void) {
float appver = applicationVersion;
return appver;
}
float ToonzVersion::getAppRevision(void) {
float apprev = applicationRevision;
return apprev;
}
std::string ToonzVersion::getAppNote(void) {
std::string appnote = applicationNote;
return appnote;
}
bool ToonzVersion::hasAppNote(void) {
return *applicationNote != 0;
}
std::string ToonzVersion::getAppVersionString(void) {
char buffer[50];
sprintf(buffer, "%.1f", applicationVersion);
std::string appver = std::string(buffer);
return appver;
}
std::string ToonzVersion::getAppRevisionString(void) {
char buffer[50];
sprintf(buffer, "%g", applicationRevision);
std::string apprev = std::string(buffer);
return apprev;
}
std::string ToonzVersion::getAppVersionInfo(std::string msg) {
std::string appinfo = std::string(applicationName);
appinfo += " " + msg + " v";
appinfo += getAppVersionString();
appinfo += "." + getAppRevisionString();
if (hasAppNote())
appinfo += " " + std::string(applicationNote);
return appinfo;
}
} // namespace TVER
#endif // TVER_INCLUDED