]> git.saurik.com Git - wxWidgets.git/blob - include/wx/private/preferences.h
f68893a99de4e83cf18c7569853267eecb3f072b
[wxWidgets.git] / include / wx / private / preferences.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/private/preferences.h
3 // Purpose: wxPreferencesEditorImpl declaration.
4 // Author: Vaclav Slavik
5 // Created: 2013-02-19
6 // RCS-ID: $Id$
7 // Copyright: (c) 2013 Vaclav Slavik <vslavik@fastmail.fm>
8 // Licence: wxWindows licence
9 ///////////////////////////////////////////////////////////////////////////////
10
11 #ifndef _WX_PRIVATE_PREFERENCES_H_
12 #define _WX_PRIVATE_PREFERENCES_H_
13
14 #include "wx/preferences.h"
15
16 #if wxUSE_TOOLBAR && defined(__WXOSX_COCOA__) && wxOSX_USE_NATIVE_TOOLBAR
17 #define wxHAS_PREF_EDITOR_NATIVE
18 #endif
19
20 #if defined(__WXOSX__) || defined(__WXGTK__)
21 #define wxHAS_PREF_EDITOR_MODELESS
22 #endif
23
24 // ----------------------------------------------------------------------------
25 // wxPreferencesEditorImpl: defines wxPreferencesEditor implementation.
26 // ----------------------------------------------------------------------------
27
28 class wxPreferencesEditorImpl
29 {
30 public:
31 // This is implemented in a platform-specific way.
32 static wxPreferencesEditorImpl* Create(const wxString& title);
33
34 // These methods simply mirror the public wxPreferencesEditor ones.
35 virtual void AddPage(wxPreferencesPage* page) = 0;
36 virtual void Show(wxWindow* parent) = 0;
37 virtual void Dismiss() = 0;
38
39 virtual ~wxPreferencesEditorImpl() {}
40
41 protected:
42 wxPreferencesEditorImpl() {}
43 };
44
45 #endif // _WX_PRIVATE_PREFERENCES_H_