8ef6f9fa27
Some versions consist of four parts with the last part being called the revision or build number. wxVersionInfo is now able to save such a fourth number.
104 lines
3.0 KiB
C++
104 lines
3.0 KiB
C++
///////////////////////////////////////////////////////////////////////////////
|
|
// Name: wx/versioninfo.h
|
|
// Purpose: declaration of wxVersionInfo class
|
|
// Author: Troels K
|
|
// Created: 2010-11-22
|
|
// Copyright: (c) 2010 wxWidgets team
|
|
// Licence: wxWindows licence
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _WX_VERSIONINFO_H_
|
|
#define _WX_VERSIONINFO_H_
|
|
|
|
#include "wx/string.h"
|
|
|
|
// ----------------------------------------------------------------------------
|
|
// wxVersionInfo: represents version information
|
|
// ----------------------------------------------------------------------------
|
|
|
|
class wxVersionInfo
|
|
{
|
|
public:
|
|
wxVersionInfo(const wxString& name = wxString(),
|
|
int major = 0,
|
|
int minor = 0,
|
|
int micro = 0,
|
|
int revision = 0,
|
|
const wxString& description = wxString(),
|
|
const wxString& copyright = wxString())
|
|
{
|
|
Init(name, major, minor, micro, revision, description, copyright);
|
|
}
|
|
|
|
// This constructor exists for backward compatibility (before the revision
|
|
// part was added).
|
|
wxVersionInfo(const wxString& name,
|
|
int major, int minor, int micro,
|
|
const wxString& description,
|
|
const wxString& copyright = wxString())
|
|
{
|
|
Init(name, major, minor, micro, 0, description, copyright);
|
|
}
|
|
|
|
// Default copy ctor, assignment operator and dtor are ok.
|
|
|
|
|
|
const wxString& GetName() const { return m_name; }
|
|
|
|
int GetMajor() const { return m_major; }
|
|
int GetMinor() const { return m_minor; }
|
|
int GetMicro() const { return m_micro; }
|
|
int GetRevision() const { return m_revision; }
|
|
|
|
wxString ToString() const
|
|
{
|
|
return HasDescription() ? GetDescription() : GetVersionString();
|
|
}
|
|
|
|
wxString GetVersionString() const
|
|
{
|
|
wxString str;
|
|
str << m_name << ' ' << GetMajor() << '.' << GetMinor();
|
|
if ( GetMicro() || GetRevision() )
|
|
{
|
|
str << '.' << GetMicro();
|
|
if ( GetRevision() )
|
|
str << '.' << GetRevision();
|
|
}
|
|
|
|
return str;
|
|
}
|
|
|
|
bool HasDescription() const { return !m_description.empty(); }
|
|
const wxString& GetDescription() const { return m_description; }
|
|
|
|
bool HasCopyright() const { return !m_copyright.empty(); }
|
|
const wxString& GetCopyright() const { return m_copyright; }
|
|
|
|
private:
|
|
void Init(const wxString& name,
|
|
int major, int minor, int micro, int revision,
|
|
const wxString& description,
|
|
const wxString& copyright)
|
|
{
|
|
m_name = name;
|
|
m_description = description;
|
|
m_copyright = copyright;
|
|
m_major = major;
|
|
m_minor = minor;
|
|
m_micro = micro;
|
|
m_revision = revision;
|
|
}
|
|
|
|
wxString m_name,
|
|
m_description,
|
|
m_copyright;
|
|
|
|
int m_major,
|
|
m_minor,
|
|
m_micro,
|
|
m_revision;
|
|
};
|
|
|
|
#endif // _WX_VERSIONINFO_H_
|