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