]> git.saurik.com Git - wxWidgets.git/blob - include/wx/osx/core/stdpaths.h
Merge in from trunk r68684 - r69046
[wxWidgets.git] / include / wx / osx / core / stdpaths.h
1 ///////////////////////////////////////////////////////////////////////////////
2 // Name: wx/osx/core/stdpaths.h
3 // Purpose: wxStandardPaths for CoreFoundation systems
4 // Author: David Elliott
5 // Modified by:
6 // Created: 2004-10-27
7 // RCS-ID: $Id$
8 // Copyright: (c) 2004 David Elliott
9 // Licence: wxWindows licence
10 ///////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_MAC_STDPATHS_H_
13 #define _WX_MAC_STDPATHS_H_
14
15 struct __CFBundle;
16 struct __CFURL;
17
18 typedef const __CFURL * wxCFURLRef;
19 typedef __CFBundle * wxCFBundleRef;
20
21 // we inherit the GUI CF-based wxStandardPaths implementation from the Unix one
22 // used for console programs if possible (i.e. if we're under a Unix system at
23 // all)
24 #if defined(__UNIX__)
25 #include "wx/unix/stdpaths.h"
26 #define wxStandardPathsCFBase wxStandardPaths
27 #else
28 #define wxStandardPathsCFBase wxStandardPathsBase
29 #endif
30
31 // ----------------------------------------------------------------------------
32 // wxStandardPaths
33 // ----------------------------------------------------------------------------
34
35 class WXDLLIMPEXP_BASE wxStandardPathsCF : public wxStandardPathsCFBase
36 {
37 public:
38 wxStandardPathsCF();
39 virtual ~wxStandardPathsCF();
40
41 // wxMac specific: allow user to specify a different bundle
42 wxStandardPathsCF(wxCFBundleRef bundle);
43 void SetBundle(wxCFBundleRef bundle);
44
45 // implement base class pure virtuals
46 virtual wxString GetExecutablePath() const;
47 virtual wxString GetConfigDir() const;
48 virtual wxString GetUserConfigDir() const;
49 virtual wxString GetDataDir() const;
50 virtual wxString GetLocalDataDir() const;
51 virtual wxString GetUserDataDir() const;
52 virtual wxString GetPluginsDir() const;
53 virtual wxString GetResourcesDir() const;
54 virtual wxString
55 GetLocalizedResourcesDir(const wxString& lang,
56 ResourceCat category = ResourceCat_None) const;
57 virtual wxString GetDocumentsDir() const;
58
59 protected:
60 // this function can be called with any of CFBundleCopyXXXURL function
61 // pointer as parameter
62 wxString GetFromFunc(wxCFURLRef (*func)(wxCFBundleRef)) const;
63
64 wxCFBundleRef m_bundle;
65 };
66
67 #endif // _WX_MAC_STDPATHS_H_