]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/platinfo.tex
[ 1550698 ] Bottom aligned toolbar
[wxWidgets.git] / docs / latex / wx / platinfo.tex
1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2 %% Name: platinfo.tex
3 %% Purpose: wxPlatformInfo
4 %% Author: Francesco Montorsi
5 %% Modified by:
6 %% Created: 31-7-2006
7 %% RCS-ID: $Id$
8 %% Copyright: (c) wxWidgets Team
9 %% License: wxWindows license
10 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11
12 \section{\class{wxPlatformInfo}}\label{wxplatforminfo}
13
14 This class holds informations about the operating system and the toolkit that the application
15 is running under and some basic architecture info of the machine where it's running.
16
17 \wxheading{Derived from}
18
19 \helpref{wxObject}{wxobject}
20
21 \wxheading{Include files}
22
23 <include/wx/platinfo.h>
24
25 \wxheading{See also}
26
27 \helpref{wxGetOSVersion}{wxgetosversion}, \helpref{wxIsPlatformLittleEndian}{wxisplatformlittleendian},
28 \helpref{wxIsPlatform64Bit}{wxisplatform64bit}, \helpref{wxAppTraits}{wxapptraits}
29
30 \wxheading{Data structures}
31
32 The following are the operating systems which are recognized by wxWidgets
33 and whose version can be detected at run-time. The values of the constants
34 are chosen so that they can be combined as flags; this allows to check
35 for operating system {\it families} like e.g. wxOS\_MAC and wxOS\_UNIX.
36
37 \begin{verbatim}
38 enum wxOperatingSystemId
39 {
40 wxOS_UNKNOWN = 0, // returned on error
41
42 wxOS_MAC_OS = 1 << 0, // Apple Mac OS 8/9/X with Mac paths
43 wxOS_MAC_OSX_DARWIN = 1 << 1, // Apple Mac OS X with Unix paths
44 wxOS_MAC = wxOS_MAC_OS|wxOS_MAC_OSX_DARWIN,
45
46 wxOS_WINDOWS_9X = 1 << 2, // Windows 9x family (95/98/ME)
47 wxOS_WINDOWS_NT = 1 << 3, // Windows NT family (NT/2000/XP)
48 wxOS_WINDOWS_MICRO = 1 << 4, // MicroWindows
49 wxOS_WINDOWS_CE = 1 << 5, // Windows CE (Window Mobile)
50 wxOS_WINDOWS = wxOS_WINDOWS_9X |
51 wxOS_WINDOWS_NT |
52 wxOS_WINDOWS_MICRO |
53 wxOS_WINDOWS_CE,
54
55 wxOS_UNIX_LINUX = 1 << 6, // Linux
56 wxOS_UNIX_FREEBSD = 1 << 7, // FreeBSD
57 wxOS_UNIX_OPENBSD = 1 << 8, // OpenBSD
58 wxOS_UNIX_NETBSD = 1 << 9, // NetBSD
59 wxOS_UNIX_SOLARIS = 1 << 10, // SunOS
60 wxOS_UNIX_AIX = 1 << 11, // AIX
61 wxOS_UNIX_HPUX = 1 << 12, // HP/UX
62 wxOS_UNIX = wxOS_UNIX_LINUX |
63 wxOS_UNIX_FREEBSD |
64 wxOS_UNIX_OPENBSD |
65 wxOS_UNIX_NETBSD |
66 wxOS_UNIX_SOLARIS |
67 wxOS_UNIX_AIX |
68 wxOS_UNIX_HPUX,
69
70 wxOS_DOS = 1 << 15, // Microsoft DOS
71 wxOS_OS2 = 1 << 16 // OS/2
72 };
73 \end{verbatim}
74
75 The list of wxWidgets ports. Some of them can be used with more than
76 a single (native) toolkit; e.g. wxWinCE port sources can be used with
77 smartphones, pocket PCs and handheld devices SDKs.
78
79 \begin{verbatim}
80 enum wxPortId
81 {
82 wxPORT_UNKNOWN = 0, // returned on error
83
84 wxPORT_BASE = 1 << 0, // wxBase, no native toolkit used
85
86 wxPORT_MSW = 1 << 1, // wxMSW, native toolkit is Windows API
87 wxPORT_MOTIF = 1 << 2, // wxMotif, using [Open]Motif or Lesstif
88 wxPORT_GTK = 1 << 3, // wxGTK, using GTK+ 1.x, 2.x, GPE or Maemo
89 wxPORT_MGL = 1 << 4, // wxMGL, using wxUniversal
90 wxPORT_X11 = 1 << 5, // wxX11, using wxUniversal
91 wxPORT_OS2 = 1 << 6, // wxOS2, using OS/2 Presentation Manager
92 wxPORT_MAC = 1 << 7, // wxMac, using Carbon or Classic Mac API
93 wxPORT_COCOA = 1 << 8, // wxCocoa, using Cocoa NextStep/Mac API
94 wxPORT_WINCE = 1 << 9, // wxWinCE, toolkit is WinCE SDK API
95 wxPORT_PALMOS = 1 << 10 // wxPalmOS, toolkit is PalmOS API
96 };
97 \end{verbatim}
98
99 The architecture of the operating system (regardless of the build environment
100 of wxWidgets library - see \helpref{wxIsPlatform64bit}{wxisplatform64bit} documentation
101 for more info).
102
103 \begin{verbatim}
104 enum wxArchitecture
105 {
106 wxARCH_INVALID = -1, // returned on error
107
108 wxARCH_32, // 32 bit
109 wxARCH_64,
110
111 wxARCH_MAX
112 }
113 \end{verbatim}
114
115 The endian-ness of the machine.
116
117 \begin{verbatim}
118 enum wxEndianness
119 {
120 wxENDIAN_INVALID = -1, // returned on error
121
122 wxENDIAN_BIG, // 4321
123 wxENDIAN_LITTLE, // 1234
124 wxENDIAN_PDP, // 3412
125
126 wxENDIAN_MAX
127 }
128 \end{verbatim}
129
130 \latexignore{\rtfignore{\wxheading{Members}}}
131
132
133 \membersection{wxPlatformInfo::wxPlatformInfo}\label{wxplatforminfowxplatforminfo}
134
135 \func{}{wxPlatformInfo}{}
136
137 Initializes the instance with the values corresponding to the currently running platform.
138
139 \func{}{wxPlatformInfo}{\param{wxPortId }{pid = wxPORT\_UNKNOWN}, \param{int }{tkMajor = -1}, \param{int }{tkMinor = -1}, \param{wxOperatingSystemId }{id = wxOS\_UNKNOWN}, \param{int }{osMajor = -1}, \param{int }{osMinor = -1}, \param{wxArchitecture }{arch = wxARCH\_INVALID}, \param{wxEndianness }{endian = wxENDIAN\_INVALID}}
140
141 Initializes the object using given values.
142
143
144
145 \membersection{wxPlatformInfo::CheckOSVersion}\label{wxplatforminfocheckosversion}
146
147 \constfunc{bool}{CheckOSVersion}{\param{int major}, \param{int minor}}
148
149 Returns \true if the OS version is at least \texttt{major.minor}.
150
151 \wxheading{See also}
152
153 \helpref{GetOSMajorVersion}{wxplatforminfogetosmajorversion},
154 \helpref{GetOSMinorVersion}{wxplatforminfogetosminorversion},
155 \helpref{CheckToolkitVersion}{wxplatforminfochecktoolkitversion}
156
157
158 \membersection{wxPlatformInfo::CheckToolkitVersion}\label{wxplatforminfochecktoolkitversion}
159
160 \constfunc{bool}{CheckToolkitVersion}{\param{int major}, \param{int minor}}
161
162 Returns \true if the toolkit version is at least \texttt{major.minor}.
163
164 \wxheading{See also}
165
166 \helpref{GetToolkitMajorVersion}{wxplatforminfogettoolkitmajorversion},
167 \helpref{GetToolkitMinorVersion}{wxplatforminfogettoolkitminorversion},
168 \helpref{CheckOSVersion}{wxplatforminfocheckosversion}
169
170
171
172 \membersection{wxPlatformInfo::GetArch}\label{wxplatforminfogetarch}
173
174 \func{static wxArchitecture}{GetArch}{\param{const wxString\& }{arch}}
175
176 Converts the given string to a wxArchitecture enum value or to
177 wxARCH\_INVALID if the given string is not a valid architecture string
178 (i.e. does not contain nor {\tt 32} nor {\tt 64} strings).
179
180
181 \membersection{wxPlatformInfo::GetArchName}\label{wxplatforminfogetarchname}
182
183 \func{static wxString}{GetArchName}{\param{wxArchitecture }{arch}}
184
185 Returns the name for the given wxArchitecture enumeration value.
186
187 \constfunc{wxString}{GetArchName}{\void}
188
189 Returns the name for the architecture of this wxPlatformInfo instance.
190
191
192 \membersection{wxPlatformInfo::GetArchitecture}\label{wxplatforminfogetarchitecture}
193
194 \constfunc{wxArchitecture}{GetArchitecture}{\void}
195
196 Returns the architecture ID of this wxPlatformInfo instance.
197
198
199
200
201 \membersection{wxPlatformInfo::GetEndianness}\label{wxplatforminfogetendianness}
202
203 \func{static wxEndianness}{GetEndianness}{\param{const wxString\& }{end}}
204
205 Converts the given string to a wxEndianness enum value or to
206 wxENDIAN\_INVALID if the given string is not a valid endianness string
207 (i.e. does not contain nor {\tt little} nor {\tt big} strings).
208
209 \constfunc{wxEndianness}{GetEndianness}{\void}
210
211 Returns the endianness ID of this wxPlatformInfo instance.
212
213 \membersection{wxPlatformInfo::GetEndiannessName}\label{wxplatforminfogetendiannessname}
214
215 \func{static wxString}{GetEndiannessName}{\param{wxEndianness }{end}}
216
217 Returns name for the given wxEndianness enumeration value.
218
219 \constfunc{wxString}{GetEndiannessName}{\void}
220
221 Returns the name for the endianness of this wxPlatformInfo instance.
222
223
224
225
226
227 \membersection{wxPlatformInfo::GetOSMajorVersion}\label{wxplatforminfogetosmajorversion}
228
229 \constfunc{int}{GetOSMajorVersion}{\void}
230
231 Returns the major version of the OS associated with this wxPlatformInfo instance.
232
233 \wxheading{See also}
234
235 \helpref{CheckOSVersion}{wxplatforminfocheckosversion}
236
237
238 \membersection{wxPlatformInfo::GetOSMinorVersion}\label{wxplatforminfogetosminorversion}
239
240 \constfunc{int}{GetOSMinorVersion}{\void}
241
242 Returns the minor version of the OS associated with this wxPlatformInfo instance.
243
244 \helpref{CheckOSVersion}{wxplatforminfocheckosversion}
245
246
247
248 \membersection{wxPlatformInfo::GetOperatingSystemFamilyName}\label{wxplatforminfogetoperatingsystemfamilyname}
249
250 \func{static wxString}{GetOperatingSystemFamilyName}{\param{wxOperatingSystemId }{os}}
251
252 Returns the operating system family name for the given wxOperatingSystemId enumeration value:
253 {\tt Unix} for wxOS\_UNIX, {\tt Macintosh} for wxOS\_MAC, {\tt Windows} for wxOS\_WINDOWS,
254 {\tt DOS} for wxOS\_DOS, {\tt OS/2} for wxOS\_OS2.
255
256 \constfunc{wxString}{GetOperatingSystemFamilyName}{\void}
257
258 Returns the operating system family name of the OS associated with this wxPlatformInfo instance.
259
260
261
262 \membersection{wxPlatformInfo::GetOperatingSystemId}\label{wxplatforminfogetoperatingsystemid}
263
264 \func{static wxOperatingSystemId}{GetOperatingSystemId}{\param{const wxString\& }{name}}
265
266 Converts the given string to a wxOperatingSystemId enum value or to
267 wxOS\_UNKNOWN if the given string is not a valid operating system name.
268
269 \constfunc{wxOperatingSystemId}{GetOperatingSystemId}{\void}
270
271 Returns the operating system ID of this wxPlatformInfo instance.
272
273
274
275 \membersection{wxPlatformInfo::GetOperatingSystemIdName}\label{wxplatforminfogetoperatingsystemidname}
276
277 \func{static wxString}{GetOperatingSystemIdName}{\param{wxOperatingSystemId }{os}}
278
279 Returns the name for the given operating system ID value. This can be a long name
280 (e.g. {\tt Microsoft Windows NT}); use \helpref{GetOperatingSystemFamilyName}{wxplatforminfogetoperatingsystemfamilyname} to
281 retrieve a short, generic name.
282
283
284 \constfunc{wxString}{GetOperatingSystemIdName}{\void}
285
286 Returns the operating system name of the OS associated with this wxPlatformInfo instance.
287
288
289
290
291
292 \membersection{wxPlatformInfo::GetPortId}\label{wxplatforminfogetportid}
293
294 \func{static wxPortId}{GetPortId}{\param{const wxString\& }{portname}}
295
296 Converts the given string to a wxWidgets port ID value or to wxPORT\_UNKNOWN if
297 the given string does not match any of the wxWidgets canonical name ports ("wxGTK", "wxMSW", etc)
298 nor any of the short wxWidgets name ports ("gtk", "msw", etc).
299
300 \constfunc{wxPortId}{GetPortId}{\void}
301
302 Returns the wxWidgets port ID associated with this wxPlatformInfo instance.
303
304 \membersection{wxPlatformInfo::GetPortIdName}\label{wxplatforminfogetportidname}
305
306 \func{static wxString}{GetPortIdName}{\param{wxPortId }{port}, \param{bool }{usingUniversal}}
307
308 Returns the name of the given wxWidgets port ID value. The \arg{usingUniversal}
309 argument specifies whether the port is in its native or wxUniversal variant.
310
311 The returned string always starts with the "wx" prefix and is a mixed-case
312 string.
313
314 \constfunc{wxString}{GetPortIdName}{\void}
315
316 Returns the name of the wxWidgets port ID associated with this wxPlatformInfo instance.
317
318
319
320
321 \membersection{wxPlatformInfo::GetPortIdShortName}\label{wxplatforminfogetportidshortname}
322
323 \func{static wxString}{GetPortIdShortName}{\param{wxPortId }{port}, \param{bool }{usingUniversal}}
324
325 Returns the short name of the given wxWidgets port ID value. The
326 \arg{usingUniversal} argument specifies whether the port is in its native or
327 wxUniversal variant.
328
329 The returned string does not start with the "wx" prefix and is always lower
330 case.
331
332 \constfunc{wxString}{GetPortIdShortName}{\void}
333
334 Returns the short name of the wxWidgets port ID associated with this wxPlatformInfo instance.
335
336
337
338
339 \membersection{wxPlatformInfo::GetToolkitMajorVersion}\label{wxplatforminfogettoolkitmajorversion}
340
341 \constfunc{int}{GetToolkitMajorVersion}{\void}
342
343 Returns the major version of the toolkit associated with this wxPlatformInfo instance.
344 Note that if {GetPortId}{wxplatforminfogetportid} returns wxPORT\_BASE, then this value is zero (unless externally modified with SetToolkitVersion); that is, no native toolkit is in use.
345
346 \wxheading{See also}
347
348 \helpref{CheckToolkitVersion}{wxplatforminfochecktoolkitversion}
349
350
351 \membersection{wxPlatformInfo::GetToolkitMinorVersion}\label{wxplatforminfogettoolkitminorversion}
352
353 \constfunc{int}{GetToolkitMinorVersion}{\void}
354
355 Returns the minor version of the toolkit associated with this wxPlatformInfo instance.
356 Note that if {GetPortId}{wxplatforminfogetportid} returns wxPORT\_BASE, then this value is zero (unless externally modified with SetToolkitVersion); that is, no native toolkit is in use.
357
358 \wxheading{See also}
359
360 \helpref{CheckToolkitVersion}{wxplatforminfochecktoolkitversion}
361
362
363
364
365 \membersection{wxPlatformInfo::IsOk}\label{wxplatforminfoisok}
366
367 \constfunc{bool}{IsOk}{\void}
368
369 Returns \true if this instance is fully initialized with valid values.
370
371
372
373 \membersection{wxPlatformInfo::IsUsingUniversalWidgets}\label{wxplatforminfoisusinguniversalwidgets}
374
375 \constfunc{bool}{IsUsingUniversalWidgets}{\void}
376
377 Returns \true if this wxPlatformInfo describes wxUniversal build.
378
379
380 \membersection{wxPlatformInfo::SetArchitecture}\label{wxplatforminfosetarchitecture}
381
382 \func{void}{SetArchitecture}{\param{wxArchitecture }{n}}
383
384 Sets the architecture enum value associated with this wxPlatformInfo instance.
385
386
387
388 \membersection{wxPlatformInfo::SetEndianness}\label{wxplatforminfosetendianness}
389
390 \func{void}{SetEndianness}{\param{wxEndianness }{n}}
391
392 Sets the endianness enum value associated with this wxPlatformInfo instance.
393
394
395 \membersection{wxPlatformInfo::SetOSVersion}\label{wxplatforminfosetosversion}
396
397 \func{void}{SetOSVersion}{\param{int }{major}, \param{int }{minor}}
398
399 Sets the version of the operating system associated with this wxPlatformInfo instance.
400
401
402
403 \membersection{wxPlatformInfo::SetOperatingSystemId}\label{wxplatforminfosetoperatingsystemid}
404
405 \func{void}{SetOperatingSystemId}{\param{wxOperatingSystemId }{n}}
406
407 Sets the operating system associated with this wxPlatformInfo instance.
408
409
410
411 \membersection{wxPlatformInfo::SetPortId}\label{wxplatforminfosetportid}
412
413 \func{void}{SetPortId}{\param{wxPortId }{n}}
414
415 Sets the wxWidgets port ID associated with this wxPlatformInfo instance.
416
417
418
419 \membersection{wxPlatformInfo::SetToolkitVersion}\label{wxplatforminfosettoolkitversion}
420
421 \func{void}{SetToolkitVersion}{\param{int }{major}, \param{int }{minor}}
422
423 Sets the version of the toolkit associated with this wxPlatformInfo instance.
424
425
426
427 \membersection{wxPlatformInfo::operator!=}\label{wxplatforminfooperatorunknown}
428
429 \constfunc{bool}{operator!=}{\param{const wxPlatformInfo\& }{t}}
430
431 Inequality operator. Tests all class' internal variables.
432
433
434 \membersection{wxPlatformInfo::operator==}\label{wxplatforminfooperatorequal}
435
436 \constfunc{bool}{operator==}{\param{const wxPlatformInfo\& }{t}}
437
438 Equality operator. Tests all class' internal variables.
439