]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/settings.tex
Patches-1851591 ] dataview sample is crashing (under MSW)
[wxWidgets.git] / docs / latex / wx / settings.tex
1 \section{\class{wxSystemSettings}}\label{wxsystemsettings}
2
3 wxSystemSettings allows the application to ask for details about
4 the system. This can include settings such as standard colours, fonts,
5 and user interface element sizes.
6
7 \wxheading{Derived from}
8
9 \helpref{wxObject}{wxobject}
10
11 \wxheading{Include files}
12
13 <wx/settings.h>
14
15 \wxheading{Library}
16
17 \helpref{wxCore}{librarieslist}
18
19 \wxheading{See also}
20
21 \helpref{wxFont}{wxfont}, \helpref{wxColour}{wxcolour}
22
23 \latexignore{\rtfignore{\wxheading{Members}}}
24
25 \membersection{wxSystemSettings::wxSystemSettings}\label{wxsystemsettingsctor}
26
27 \func{}{wxSystemSettings}{\void}
28
29 Default constructor. You don't need to create an instance of wxSystemSettings
30 since all of its functions are static.
31
32 \membersection{wxSystemSettings::GetColour}\label{wxsystemsettingsgetcolour}
33
34 \func{static wxColour}{GetColour}{\param{wxSystemColour}{ index}}
35
36 Returns a system colour.
37
38 {\it index} can be one of:
39
40 \twocolwidtha{7cm}
41 \begin{twocollist}\itemsep=0pt
42 \twocolitem{{\bf wxSYS\_COLOUR\_SCROLLBAR}}{The scrollbar grey area.}
43 \twocolitem{{\bf wxSYS\_COLOUR\_BACKGROUND}}{The desktop colour.}
44 \twocolitem{{\bf wxSYS\_COLOUR\_ACTIVECAPTION}}{Active window caption.}
45 \twocolitem{{\bf wxSYS\_COLOUR\_INACTIVECAPTION}}{Inactive window caption.}
46 \twocolitem{{\bf wxSYS\_COLOUR\_MENU}}{Menu background.}
47 \twocolitem{{\bf wxSYS\_COLOUR\_WINDOW}}{Window background.}
48 \twocolitem{{\bf wxSYS\_COLOUR\_WINDOWFRAME}}{Window frame.}
49 \twocolitem{{\bf wxSYS\_COLOUR\_MENUTEXT}}{Menu text.}
50 \twocolitem{{\bf wxSYS\_COLOUR\_WINDOWTEXT}}{Text in windows.}
51 \twocolitem{{\bf wxSYS\_COLOUR\_CAPTIONTEXT}}{Text in caption, size box and scrollbar arrow box.}
52 \twocolitem{{\bf wxSYS\_COLOUR\_ACTIVEBORDER}}{Active window border.}
53 \twocolitem{{\bf wxSYS\_COLOUR\_INACTIVEBORDER}}{Inactive window border.}
54 \twocolitem{{\bf wxSYS\_COLOUR\_APPWORKSPACE}}{Background colour MDI applications.}
55 \twocolitem{{\bf wxSYS\_COLOUR\_HIGHLIGHT}}{Item(s) selected in a control.}
56 \twocolitem{{\bf wxSYS\_COLOUR\_HIGHLIGHTTEXT}}{Text of item(s) selected in a control.}
57 \twocolitem{{\bf wxSYS\_COLOUR\_BTNFACE}}{Face shading on push buttons.}
58 \twocolitem{{\bf wxSYS\_COLOUR\_BTNSHADOW}}{Edge shading on push buttons.}
59 \twocolitem{{\bf wxSYS\_COLOUR\_GRAYTEXT}}{Greyed (disabled) text.}
60 \twocolitem{{\bf wxSYS\_COLOUR\_BTNTEXT}}{Text on push buttons.}
61 \twocolitem{{\bf wxSYS\_COLOUR\_INACTIVECAPTIONTEXT}}{Colour of text in active captions.}
62 \twocolitem{{\bf wxSYS\_COLOUR\_BTNHIGHLIGHT}}{Highlight colour for buttons (same as wxSYS\_COLOUR\_3DHILIGHT).}
63 \twocolitem{{\bf wxSYS\_COLOUR\_3DDKSHADOW}}{Dark shadow for three-dimensional display elements.}
64 \twocolitem{{\bf wxSYS\_COLOUR\_3DLIGHT}}{Light colour for three-dimensional display elements.}
65 \twocolitem{{\bf wxSYS\_COLOUR\_INFOTEXT}}{Text colour for tooltip controls.}
66 \twocolitem{{\bf wxSYS\_COLOUR\_INFOBK}}{Background colour for tooltip controls.}
67 \twocolitem{{\bf wxSYS\_COLOUR\_DESKTOP}}{Same as wxSYS\_COLOUR\_BACKGROUND.}
68 \twocolitem{{\bf wxSYS\_COLOUR\_3DFACE}}{Same as wxSYS\_COLOUR\_BTNFACE.}
69 \twocolitem{{\bf wxSYS\_COLOUR\_3DSHADOW}}{Same as wxSYS\_COLOUR\_BTNSHADOW.}
70 \twocolitem{{\bf wxSYS\_COLOUR\_3DHIGHLIGHT}}{Same as wxSYS\_COLOUR\_BTNHIGHLIGHT.}
71 \twocolitem{{\bf wxSYS\_COLOUR\_3DHILIGHT}}{Same as wxSYS\_COLOUR\_BTNHIGHLIGHT.}
72 \twocolitem{{\bf wxSYS\_COLOUR\_BTNHILIGHT}}{Same as wxSYS\_COLOUR\_BTNHIGHLIGHT.}
73 \end{twocollist}
74
75 \pythonnote{This static method is implemented in Python as a
76 standalone function named {\tt wxSystemSettings\_GetColour}}
77
78 \membersection{wxSystemSettings::GetFont}\label{wxsystemsettingsgetfont}
79
80 \func{static wxFont}{GetFont}{\param{wxSystemFont}{ index}}
81
82 Returns a system font.
83
84 {\it index} can be one of:
85
86 \twocolwidtha{7cm}
87 \begin{twocollist}\itemsep=0pt
88 \twocolitem{{\bf wxSYS\_OEM\_FIXED\_FONT}}{Original equipment manufacturer dependent fixed-pitch font.}
89 \twocolitem{{\bf wxSYS\_ANSI\_FIXED\_FONT}}{Windows fixed-pitch font.}
90 \twocolitem{{\bf wxSYS\_ANSI\_VAR\_FONT}}{Windows variable-pitch (proportional) font.}
91 \twocolitem{{\bf wxSYS\_SYSTEM\_FONT}}{System font.}
92 \twocolitem{{\bf wxSYS\_DEVICE\_DEFAULT\_FONT}}{Device-dependent font (Windows NT only).}
93 \twocolitem{{\bf wxSYS\_DEFAULT\_GUI\_FONT}}{Default font for user interface
94 objects such as menus and dialog boxes. Note that with modern GUIs nothing
95 guarantees that the same font is used for all GUI elements, so some controls
96 might use a different font by default.}
97 \end{twocollist}
98
99 \pythonnote{This static method is implemented in Python as a
100 standalone function named {\tt wxSystemSettings\_GetFont}}
101
102 \membersection{wxSystemSettings::GetMetric}\label{wxsystemsettingsgetmetric}
103
104 \func{static int}{GetMetric}{\param{wxSystemMetric}{ index}, \param{wxWindow*}{ win = NULL}}
105
106 Returns the value of a system metric, or -1 if the metric is not supported on the current system.
107 The value of {\it win} determines if the metric returned is a global value or
108 a \helpref{wxWindow}{wxwindow} based value, in which case it might determine the widget, the
109 display the window is on, or something similar. The window given should be as close to the
110 metric as possible (e.g a wxTopLevelWindow in case of the wxSYS\_CAPTION\_Y metric).
111
112 {\it index} can be one of:
113
114 \twocolwidtha{7cm}
115 \begin{twocollist}\itemsep=0pt
116 \twocolitem{{\bf wxSYS\_MOUSE\_BUTTONS}}{Number of buttons on mouse, or zero if no mouse was installed.}
117 \twocolitem{{\bf wxSYS\_BORDER\_X}}{Width of single border.}
118 \twocolitem{{\bf wxSYS\_BORDER\_Y}}{Height of single border.}
119 \twocolitem{{\bf wxSYS\_CURSOR\_X}}{Width of cursor.}
120 \twocolitem{{\bf wxSYS\_CURSOR\_Y}}{Height of cursor.}
121 \twocolitem{{\bf wxSYS\_DCLICK\_X}}{Width in pixels of rectangle within which two successive mouse
122 clicks must fall to generate a double-click.}
123 \twocolitem{{\bf wxSYS\_DCLICK\_Y}}{Height in pixels of rectangle within which two successive mouse
124 clicks must fall to generate a double-click.}
125 \twocolitem{{\bf wxSYS\_DCLICK\_MSEC}}{Maximal time, in milliseconds, which may
126 pass between subsequent clicks for a double click to be generated.}
127 \twocolitem{{\bf wxSYS\_DRAG\_X}}{Width in pixels of a rectangle centered on a drag point
128 to allow for limited movement of the mouse pointer before a drag operation begins.}
129 \twocolitem{{\bf wxSYS\_DRAG\_Y}}{Height in pixels of a rectangle centered on a drag point
130 to allow for limited movement of the mouse pointer before a drag operation begins.}
131 \twocolitem{{\bf wxSYS\_EDGE\_X}}{Width of a 3D border, in pixels. }
132 \twocolitem{{\bf wxSYS\_EDGE\_Y}}{Height of a 3D border, in pixels. }
133 \twocolitem{{\bf wxSYS\_HSCROLL\_ARROW\_X}}{Width of arrow bitmap on horizontal scrollbar.}
134 \twocolitem{{\bf wxSYS\_HSCROLL\_ARROW\_Y}}{Height of arrow bitmap on horizontal scrollbar.}
135 \twocolitem{{\bf wxSYS\_HTHUMB\_X}}{Width of horizontal scrollbar thumb.}
136 \twocolitem{{\bf wxSYS\_ICON\_X}}{The default width of an icon.}
137 \twocolitem{{\bf wxSYS\_ICON\_Y}}{The default height of an icon.}
138 \twocolitem{{\bf wxSYS\_ICONSPACING\_X}}{Width of a grid cell for items in large icon view,
139 in pixels. Each item fits into a rectangle of this size when arranged.}
140 \twocolitem{{\bf wxSYS\_ICONSPACING\_Y}}{Height of a grid cell for items in large icon view,
141 in pixels. Each item fits into a rectangle of this size when arranged.}
142 \twocolitem{{\bf wxSYS\_WINDOWMIN\_X}}{Minimum width of a window.}
143 \twocolitem{{\bf wxSYS\_WINDOWMIN\_Y}}{Minimum height of a window.}
144 \twocolitem{{\bf wxSYS\_SCREEN\_X}}{Width of the screen in pixels.}
145 \twocolitem{{\bf wxSYS\_SCREEN\_Y}}{Height of the screen in pixels.}
146 \twocolitem{{\bf wxSYS\_FRAMESIZE\_X}}{Width of the window frame for a wxTHICK\_FRAME window.}
147 \twocolitem{{\bf wxSYS\_FRAMESIZE\_Y}}{Height of the window frame for a wxTHICK\_FRAME window.}
148 \twocolitem{{\bf wxSYS\_SMALLICON\_X}}{Recommended width of a small icon (in window captions, and small icon view).}
149 \twocolitem{{\bf wxSYS\_SMALLICON\_Y}}{Recommended height of a small icon (in window captions, and small icon view).}
150 \twocolitem{{\bf wxSYS\_HSCROLL\_Y}}{Height of horizontal scrollbar in pixels.}
151 \twocolitem{{\bf wxSYS\_VSCROLL\_X}}{Width of vertical scrollbar in pixels.}
152 \twocolitem{{\bf wxSYS\_VSCROLL\_ARROW\_X}}{Width of arrow bitmap on a vertical scrollbar.}
153 \twocolitem{{\bf wxSYS\_VSCROLL\_ARROW\_Y}}{Height of arrow bitmap on a vertical scrollbar.}
154 \twocolitem{{\bf wxSYS\_VTHUMB\_Y}}{Height of vertical scrollbar thumb.}
155 \twocolitem{{\bf wxSYS\_CAPTION\_Y}}{Height of normal caption area.}
156 \twocolitem{{\bf wxSYS\_MENU\_Y}}{Height of single-line menu bar.}
157 \twocolitem{{\bf wxSYS\_NETWORK\_PRESENT}}{1 if there is a network present, 0 otherwise.}
158 \twocolitem{{\bf wxSYS\_PENWINDOWS\_PRESENT}}{1 if PenWindows is installed, 0 otherwise.}
159 \twocolitem{{\bf wxSYS\_SHOW\_SOUNDS}}{Non-zero if the user requires an application to present information visually in situations
160 where it would otherwise present the information only in audible form; zero otherwise.}
161 \twocolitem{{\bf wxSYS\_SWAP\_BUTTONS}}{Non-zero if the meanings of the left and right mouse buttons are swapped; zero otherwise.}
162 \end{twocollist}
163
164 {\it win} is a pointer to the window for which the metric is requested.
165 Specifying the {\it win} parameter is encouraged, because some metrics on some ports are not supported without one,
166 or they might be capable of reporting better values if given one. If a window does not make sense for a metric,
167 one should still be given, as for example it might determine which displays cursor width is requested with
168 wxSYS\_CURSOR\_X.
169
170 \pythonnote{This static method is implemented in Python as a
171 standalone function named {\tt wxSystemSettings\_GetMetric}}
172
173 \membersection{wxSystemSettings::GetScreenType}\label{wxsystemsettingsgetscreentype}
174
175 \func{static wxSystemScreenType}{GetScreenType}{\void}
176
177 Returns the screen type. The return value is one of:
178
179 \twocolwidtha{7cm}
180 \begin{twocollist}\itemsep=0pt
181 \twocolitem{{\bf wxSYS\_SCREEN\_NONE}}{Undefined screen type}
182 \twocolitem{{\bf wxSYS\_SCREEN\_TINY}}{Tiny screen, less than 320x240}
183 \twocolitem{{\bf wxSYS\_SCREEN\_PDA}}{PDA screen, 320x240 or more but less than 640x480}
184 \twocolitem{{\bf wxSYS\_SCREEN\_SMALL}}{Small screen, 640x480 or more but less than 800x600}
185 \twocolitem{{\bf wxSYS\_SCREEN\_DESKTOP}}{Desktop screen, 800x600 or more}
186 \end{twocollist}
187