From 6ae3ead6f0ed2b7b1bfc40317e65ffe71e0b3321 Mon Sep 17 00:00:00 2001 From: =?utf8?q?V=C3=A1clav=20Slav=C3=ADk?= Date: Fri, 15 Jun 2007 15:21:57 +0000 Subject: [PATCH] always compile at least a minimal version of wxStandardPaths class, it's used too often git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/apptrait.h | 2 -- include/wx/stdpaths.h | 44 ++++++++++++++++++++++++++------------------ include/wx/unix/apptrait.h | 2 +- src/common/stdpbase.cpp | 4 ---- 4 files changed, 27 insertions(+), 25 deletions(-) diff --git a/include/wx/apptrait.h b/include/wx/apptrait.h index b6447ed..596c29d 100644 --- a/include/wx/apptrait.h +++ b/include/wx/apptrait.h @@ -73,11 +73,9 @@ public: // NB: returned pointer will be deleted by the caller virtual wxRendererNative *CreateRenderer() = 0; -#if wxUSE_STDPATHS // wxStandardPaths object is normally the same for wxBase and wxGUI // except in the case of wxMac and wxCocoa virtual wxStandardPathsBase& GetStandardPaths(); -#endif // wxUSE_STDPATHS #if wxUSE_INTL // called during wxApp initialization to set the locale to correspond to diff --git a/include/wx/stdpaths.h b/include/wx/stdpaths.h index ca16733..9f6c619 100644 --- a/include/wx/stdpaths.h +++ b/include/wx/stdpaths.h @@ -14,8 +14,6 @@ #include "wx/defs.h" -#if wxUSE_STDPATHS - #include "wx/string.h" #include "wx/filefn.h" @@ -23,6 +21,8 @@ // wxStandardPaths returns the standard locations in the file system // ---------------------------------------------------------------------------- +// NB: This is always compiled in, wxUSE_STDPATHS=0 only disables native +// wxStandardPaths class, but a minimal version is always available class WXDLLIMPEXP_BASE wxStandardPathsBase { public: @@ -135,23 +135,34 @@ protected: static wxString AppendAppName(const wxString& dir); }; -#if defined(__WXMSW__) - #include "wx/msw/stdpaths.h" -// We want CoreFoundation paths on both CarbonLib and Darwin (for all ports) -#elif defined(__WXMAC__) || defined(__DARWIN__) - #include "wx/mac/corefoundation/stdpaths.h" -#elif defined(__OS2__) - #include "wx/os2/stdpaths.h" -#elif defined(__UNIX__) - #include "wx/unix/stdpaths.h" -#elif defined(__PALMOS__) - #include "wx/palmos/stdpaths.h" -#else +#if wxUSE_STDPATHS + #if defined(__WXMSW__) + #include "wx/msw/stdpaths.h" + #define wxHAS_NATIVE_STDPATHS + // We want CoreFoundation paths on both CarbonLib and Darwin (for all ports) + #elif defined(__WXMAC__) || defined(__DARWIN__) + #include "wx/mac/corefoundation/stdpaths.h" + #define wxHAS_NATIVE_STDPATHS + #elif defined(__OS2__) + #include "wx/os2/stdpaths.h" + #define wxHAS_NATIVE_STDPATHS + #elif defined(__UNIX__) + #include "wx/unix/stdpaths.h" + #define wxHAS_NATIVE_STDPATHS + #elif defined(__PALMOS__) + #include "wx/palmos/stdpaths.h" + #define wxHAS_NATIVE_STDPATHS + #endif +#endif // ---------------------------------------------------------------------------- // Minimal generic implementation // ---------------------------------------------------------------------------- +// NB: Note that this minimal implementation is compiled in even if +// wxUSE_STDPATHS=0, so that our code can still use wxStandardPaths. + +#ifndef wxHAS_NATIVE_STDPATHS class WXDLLIMPEXP_BASE wxStandardPaths : public wxStandardPathsBase { public: @@ -170,10 +181,7 @@ public: private: wxString m_prefix; }; - -#endif - -#endif // wxUSE_STDPATHS +#endif // !wxHAS_NATIVE_STDPATHS #endif // _WX_STDPATHS_H_ diff --git a/include/wx/unix/apptrait.h b/include/wx/unix/apptrait.h index b8de87f..229ae70 100644 --- a/include/wx/unix/apptrait.h +++ b/include/wx/unix/apptrait.h @@ -43,7 +43,7 @@ public: virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer); #endif -#if defined(__WXMAC__) || defined(__WXCOCOA__) +#if (defined(__WXMAC__) || defined(__WXCOCOA__)) && wxUSE_STDPATHS virtual wxStandardPathsBase& GetStandardPaths(); #endif virtual wxPortId GetToolkitVersion(int *majVer, int *minVer) const; diff --git a/src/common/stdpbase.cpp b/src/common/stdpbase.cpp index 3aacd46..6d0609e 100644 --- a/src/common/stdpbase.cpp +++ b/src/common/stdpbase.cpp @@ -24,8 +24,6 @@ #pragma hdrstop #endif -#if wxUSE_STDPATHS - #ifndef WX_PRECOMP #include "wx/app.h" #endif //WX_PRECOMP @@ -126,5 +124,3 @@ wxString wxStandardPathsBase::AppendAppName(const wxString& dir) return subdir; } - -#endif // wxUSE_STDPATHS -- 2.7.4