]> git.saurik.com Git - wxWidgets.git/blame - include/wx/version.h
take the address of the member in wxON_BLOCK_EXIT_OBJ macros
[wxWidgets.git] / include / wx / version.h
CommitLineData
e0c749a7 1/**
cab1a605
WS
2* Name: wx/version.h
3* Purpose: wxWidgets version numbers
77ffb593 4* Author: Julian Smart
e0c749a7 5* Modified by: Ryan Norton (Converted to C)
cab1a605
WS
6* Created: 29/01/98
7* RCS-ID: $Id$
8* Copyright: (c) 1998 Julian Smart
9* Licence: wxWindows licence
e0c749a7 10*/
34cbe514
RN
11
12/* THIS IS A C FILE, DON'T USE C++ FEATURES (IN PARTICULAR COMMENTS) IN IT */
c801d85f 13
1fd4a033
VZ
14#ifndef _WX_VERSION_H_
15#define _WX_VERSION_H_
c801d85f 16
34cbe514
RN
17/* the constants below must be changed with each new version */
18/* ---------------------------------------------------------------------------- */
c0589c62 19
34cbe514
RN
20/* NB: this file is parsed by Perl code in tmake templates in distrib/msw/tmake */
21/* so don't change its format too much or they could break */
eeade4cc 22#define wxMAJOR_VERSION 2
4818141b 23#define wxMINOR_VERSION 6
7a070ef1 24#define wxRELEASE_NUMBER 1
063c96c1 25#define wxSUBRELEASE_NUMBER 1
7a070ef1 26#define wxVERSION_STRING _T("wxWidgets 2.6.1")
1fd4a033 27
34cbe514
RN
28/* nothing to update below this line when updating the version */
29/* ---------------------------------------------------------------------------- */
c0589c62 30
67d124f6
MW
31/* Users can pre-define wxABI_VERSION to a lower value in their
32 * makefile/project settings to compile code that will be binary compatible
33 * with earlier versions of the ABI within the same minor version (between
34 * minor versions binary compatibility breaks anyway). The default is the
35 * version of wxWidgets being used. A single number with two decimal digits
36 * for each component, e.g. 20601 for 2.6.1 */
37#ifndef wxABI_VERSION
45a9a137 38#define wxABI_VERSION ( wxMAJOR_VERSION * 10000 + wxMINOR_VERSION * 100 + 99 )
67d124f6
MW
39#endif
40
34cbe514 41/* helpers for wxVERSION_NUM_XXX */
d70471fe
VZ
42#define wxSTRINGIZE(x) #x
43#define wxMAKE_VERSION_STRING(x, y, z) \
44 wxSTRINGIZE(x) wxSTRINGIZE(y) wxSTRINGIZE(z)
45#define wxMAKE_VERSION_DOT_STRING(x, y, z) \
46 wxSTRINGIZE(x) "." wxSTRINGIZE(y) "." wxSTRINGIZE(z)
1fd4a033 47
34cbe514 48/* these are used by src/msw/version.rc and should always be ASCII, not Unicode */
c0589c62
VZ
49#define wxVERSION_NUM_STRING \
50 wxMAKE_VERSION_STRING(wxMAJOR_VERSION, wxMINOR_VERSION, wxRELEASE_NUMBER)
51#define wxVERSION_NUM_DOT_STRING \
52 wxMAKE_VERSION_DOT_STRING(wxMAJOR_VERSION, wxMINOR_VERSION, wxRELEASE_NUMBER)
1fd4a033 53
34cbe514 54/* some more defines, not really sure if they're [still] useful */
d0ee33f5 55#define wxVERSION_NUMBER ( (wxMAJOR_VERSION * 1000) + (wxMINOR_VERSION * 100) + wxRELEASE_NUMBER )
d5a07b9e 56#define wxBETA_NUMBER 0
d0ee33f5 57#define wxVERSION_FLOAT ( wxMAJOR_VERSION + (wxMINOR_VERSION/10.0) + (wxRELEASE_NUMBER/100.0) + (wxBETA_NUMBER/10000.0) )
c801d85f 58
34cbe514 59/* check if the current version is at least major.minor.release */
f6bcfd97
BP
60#define wxCHECK_VERSION(major,minor,release) \
61 (wxMAJOR_VERSION > (major) || \
62 (wxMAJOR_VERSION == (major) && wxMINOR_VERSION > (minor)) || \
63 (wxMAJOR_VERSION == (major) && wxMINOR_VERSION == (minor) && wxRELEASE_NUMBER >= (release)))
64
eeade4cc
VZ
65/* the same but check the subrelease also */
66#define wxCHECK_VERSION_FULL(major,minor,release,subrel) \
d0ee33f5 67 (wxCHECK_VERSION(major, minor, release) && \
eeade4cc
VZ
68 ((major) != wxMAJOR_VERSION || \
69 (minor) != wxMINOR_VERSION || \
70 (release) != wxRELEASE_NUMBER || \
d0ee33f5 71 (subrel) <= wxSUBRELEASE_NUMBER))
eeade4cc 72
34cbe514 73#endif /* _WX_VERSION_H_ */
1fd4a033 74