Include wx/choicdlg.h, wx/textdlg.h and wx/filedlg.h according to precompiled headers...
[wxWidgets.git] / src / common / sysopt.cpp
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: src/common/sysopt.cpp
3 // Purpose: wxSystemOptions
4 // Author: Julian Smart
5 // Modified by:
6 // Created: 2001-07-10
7 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
11
12 // ============================================================================
13 // declarations
14 // ============================================================================
15
16 // ---------------------------------------------------------------------------
17 // headers
18 // ---------------------------------------------------------------------------
19
20 // For compilers that support precompilation, includes "wx.h".
21 #include "wx/wxprec.h"
22
23 #if defined(__BORLANDC__)
24 #pragma hdrstop
25 #endif
26
27 #if wxUSE_SYSTEM_OPTIONS
28
29 #include "wx/sysopt.h"
30
31 #ifndef WX_PRECOMP
32 #include "wx/list.h"
33 #include "wx/string.h"
34 #endif
35
36 #include "wx/arrstr.h"
37
38 // ----------------------------------------------------------------------------
39 // private globals
40 // ----------------------------------------------------------------------------
41
42 static wxArrayString gs_optionNames,
43 gs_optionValues;
44
45 // ============================================================================
46 // wxSystemOptions implementation
47 // ============================================================================
48
49 // Option functions (arbitrary name/value mapping)
50 void wxSystemOptions::SetOption(const wxString& name, const wxString& value)
51 {
52 int idx = gs_optionNames.Index(name, false);
53 if (idx == wxNOT_FOUND)
54 {
55 gs_optionNames.Add(name);
56 gs_optionValues.Add(value);
57 }
58 else
59 {
60 gs_optionNames[idx] = name;
61 gs_optionValues[idx] = value;
62 }
63 }
64
65 void wxSystemOptions::SetOption(const wxString& name, int value)
66 {
67 SetOption(name, wxString::Format(wxT("%d"), value));
68 }
69
70 wxString wxSystemOptions::GetOption(const wxString& name)
71 {
72 int idx = gs_optionNames.Index(name, false);
73 if (idx == wxNOT_FOUND)
74 return wxEmptyString;
75 else
76 return gs_optionValues[idx];
77 }
78
79 int wxSystemOptions::GetOptionInt(const wxString& name)
80 {
81 return wxAtoi(GetOption(name));
82 }
83
84 bool wxSystemOptions::HasOption(const wxString& name)
85 {
86 return gs_optionNames.Index(name, false) != wxNOT_FOUND;
87 }
88
89 #endif // wxUSE_SYSTEM_OPTIONS