]> git.saurik.com Git - wxWidgets.git/blame - src/x11/settings.cpp
disable select root menu command when the root is hidden
[wxWidgets.git] / src / x11 / settings.cpp
CommitLineData
83df96d6 1/////////////////////////////////////////////////////////////////////////////
9eddec69 2// Name: src/x11/settings.cpp
83df96d6
JS
3// Purpose: wxSettings
4// Author: Julian Smart
5// Modified by:
6// Created: 17/09/98
7// RCS-ID: $Id$
8// Copyright: (c) Julian Smart
9eddec69 9// Licence: wxWindows licence
83df96d6
JS
10/////////////////////////////////////////////////////////////////////////////
11
9eddec69
WS
12// for compilers that support precompilation, includes "wx.h".
13#include "wx/wxprec.h"
14
83df96d6
JS
15// TODO: these settings should probably be configurable from some central or
16// per-user file, which can be edited using a Windows-control-panel clone.
17// Also they should be documented better. Some are very MS Windows-ish.
18
83df96d6 19#include "wx/settings.h"
9eddec69 20
dd05139a
WS
21#ifndef WX_PRECOMP
22 #include "wx/gdicmn.h"
23#endif
24
2b5f62a0 25#include "wx/x11/private.h"
83df96d6
JS
26
27wxColour wxSystemSettingsNative::GetColour(wxSystemColour index)
28{
c2c0dabf
RR
29 switch (index)
30 {
31 case wxSYS_COLOUR_APPWORKSPACE:
32 return wxColour( 0xc0c0c0 );
9eddec69 33
c2c0dabf
RR
34 default:
35 break;
36 }
9eddec69 37
c2c0dabf 38 // Overridden mostly by wxSystemSettings::GetColour in wxUniversal
b28d3abf 39 return *wxWHITE;
83df96d6
JS
40}
41
42wxFont wxSystemSettingsNative::GetFont(wxSystemFont index)
43{
44 switch (index)
45 {
46 case wxSYS_SYSTEM_FIXED_FONT:
47 {
48 return wxFont(12, wxMODERN, wxNORMAL, wxNORMAL, FALSE);
49 break;
50 }
51 case wxSYS_DEVICE_DEFAULT_FONT:
52 case wxSYS_SYSTEM_FONT:
53 case wxSYS_DEFAULT_GUI_FONT:
54 default:
55 {
ad0e4b66 56 return wxFont(12, wxSWISS, wxNORMAL, wxNORMAL, FALSE);
83df96d6
JS
57 break;
58 }
59 }
60
61 return wxFont();
62}
63
64// Get a system metric, e.g. scrollbar size
9b0b5ba7 65int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow* WXUNUSED(win))
83df96d6 66{
9eddec69
WS
67 switch ( index)
68 {
1d451c5b
RD
69 // TODO case wxSYS_MOUSE_BUTTONS:
70 // TODO case wxSYS_BORDER_X:
71 // TODO case wxSYS_BORDER_Y:
72 // TODO case wxSYS_CURSOR_X:
73 // TODO case wxSYS_CURSOR_Y:
74 // TODO case wxSYS_DCLICK_X:
75 // TODO case wxSYS_DCLICK_Y:
76 // TODO case wxSYS_DRAG_X:
77 // TODO case wxSYS_DRAG_Y:
78 // TODO case wxSYS_EDGE_X:
79 // TODO case wxSYS_EDGE_Y:
80 // TODO case wxSYS_HSCROLL_ARROW_X:
81 // TODO case wxSYS_HSCROLL_ARROW_Y:
82 // TODO case wxSYS_HTHUMB_X:
83 // TODO case wxSYS_ICON_X:
84 // TODO case wxSYS_ICON_Y:
85 // TODO case wxSYS_ICONSPACING_X:
86 // TODO case wxSYS_ICONSPACING_Y:
87 // TODO case wxSYS_WINDOWMIN_X:
88 // TODO case wxSYS_WINDOWMIN_Y:
9eddec69 89
83df96d6 90 case wxSYS_SCREEN_X:
2b5f62a0 91 return DisplayWidth( wxGlobalDisplay(), 0 );
9eddec69 92
83df96d6 93 case wxSYS_SCREEN_Y:
2b5f62a0 94 return DisplayHeight( wxGlobalDisplay(), 0 );
9eddec69 95
1d451c5b
RD
96 // TODO case wxSYS_FRAMESIZE_X:
97 // TODO case wxSYS_FRAMESIZE_Y:
98 // TODO case wxSYS_SMALLICON_X:
99 // TODO case wxSYS_SMALLICON_Y:
100 // TODO case wxSYS_HSCROLL_Y:
101 // TODO case wxSYS_VSCROLL_X:
102 // TODO case wxSYS_VSCROLL_ARROW_X:
103 // TODO case wxSYS_VSCROLL_ARROW_Y:
104 // TODO case wxSYS_VTHUMB_Y:
105 // TODO case wxSYS_CAPTION_Y:
106 // TODO case wxSYS_MENU_Y:
107 // TODO case wxSYS_NETWORK_PRESENT:
108 // TODO case wxSYS_PENWINDOWS_PRESENT:
109 // TODO case wxSYS_SHOW_SOUNDS:
110 // TODO case wxSYS_SWAP_BUTTONS:
9eddec69 111
83df96d6 112 default:
1d451c5b 113 return -1; // unsupported metric
83df96d6
JS
114 }
115}
116
117bool wxSystemSettingsNative::HasFeature(wxSystemFeature index)
118{
119 switch (index)
120 {
9eddec69 121 case wxSYS_CAN_ICONIZE_FRAME:
83df96d6 122 case wxSYS_CAN_DRAW_FRAME_DECORATIONS:
9eddec69
WS
123 return true;
124
83df96d6 125 default:
9eddec69 126 return false;
83df96d6
JS
127 }
128}