]> git.saurik.com Git - wxWidgets.git/blame_incremental - src/x11/settings.cpp
limit TLW size to display size in wxSizer::Fit() instead of doing it in wxTLW::GetMax...
[wxWidgets.git] / src / x11 / settings.cpp
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: src/x11/settings.cpp
3// Purpose: wxSettings
4// Author: Julian Smart
5// Modified by:
6// Created: 17/09/98
7// RCS-ID: $Id$
8// Copyright: (c) Julian Smart
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12// for compilers that support precompilation, includes "wx.h".
13#include "wx/wxprec.h"
14
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
19#include "wx/settings.h"
20
21#ifndef WX_PRECOMP
22 #include "wx/gdicmn.h"
23#endif
24
25#include "wx/x11/private.h"
26
27wxColour wxSystemSettingsNative::GetColour(wxSystemColour index)
28{
29 switch (index)
30 {
31 case wxSYS_COLOUR_APPWORKSPACE:
32 return wxColour( 0xc0c0c0 );
33
34 default:
35 break;
36 }
37
38 // Overridden mostly by wxSystemSettings::GetColour in wxUniversal
39 return *wxWHITE;
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 {
56 return wxFont(12, wxSWISS, wxNORMAL, wxNORMAL, FALSE);
57 break;
58 }
59 }
60
61 return wxFont();
62}
63
64// Get a system metric, e.g. scrollbar size
65int wxSystemSettingsNative::GetMetric(wxSystemMetric index, wxWindow* WXUNUSED(win))
66{
67 switch ( index)
68 {
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:
89
90 case wxSYS_SCREEN_X:
91 return DisplayWidth( wxGlobalDisplay(), 0 );
92
93 case wxSYS_SCREEN_Y:
94 return DisplayHeight( wxGlobalDisplay(), 0 );
95
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:
111
112 default:
113 return -1; // unsupported metric
114 }
115}
116
117bool wxSystemSettingsNative::HasFeature(wxSystemFeature index)
118{
119 switch (index)
120 {
121 case wxSYS_CAN_ICONIZE_FRAME:
122 case wxSYS_CAN_DRAW_FRAME_DECORATIONS:
123 return true;
124
125 default:
126 return false;
127 }
128}