Moved wxStandardPathsCF into base library when using CarbonLib or Darwin.
Make wxStandardPathsBase::Get() return a wxStandardPathsBase reference. Implement it using wxAppTraits::GetStandardPaths() which is overridden by wxMac and wxCocoa GUI libraries to return a reference to a wxStandardPathsCF. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
3072
Makefile.in
3072
Makefile.in
File diff suppressed because it is too large
Load Diff
@@ -257,6 +257,12 @@ dnl ### begin block 1_COND_PLATFORM_MACOSX_1_TOOLKIT_MAC ###
|
|||||||
COND_PLATFORM_MACOSX_1_TOOLKIT_MAC=""
|
COND_PLATFORM_MACOSX_1_TOOLKIT_MAC=""
|
||||||
fi
|
fi
|
||||||
AC_SUBST(COND_PLATFORM_MACOSX_1_TOOLKIT_MAC)
|
AC_SUBST(COND_PLATFORM_MACOSX_1_TOOLKIT_MAC)
|
||||||
|
dnl ### begin block 1_COND_PLATFORM_MACOSX_1_TOOLKIT_MAC_USE_GUI_1 ###
|
||||||
|
COND_PLATFORM_MACOSX_1_TOOLKIT_MAC_USE_GUI_1="#"
|
||||||
|
if test "x$PLATFORM_MACOSX" = "x1" -a "x$TOOLKIT" = "xMAC" -a "x$USE_GUI" = "x1" ; then
|
||||||
|
COND_PLATFORM_MACOSX_1_TOOLKIT_MAC_USE_GUI_1=""
|
||||||
|
fi
|
||||||
|
AC_SUBST(COND_PLATFORM_MACOSX_1_TOOLKIT_MAC_USE_GUI_1)
|
||||||
dnl ### begin block 1_COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF ###
|
dnl ### begin block 1_COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF ###
|
||||||
COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF="#"
|
COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF="#"
|
||||||
if test "x$PLATFORM_MACOSX" = "x1" -a "x$TOOLKIT" = "xMOTIF" ; then
|
if test "x$PLATFORM_MACOSX" = "x1" -a "x$TOOLKIT" = "xMOTIF" ; then
|
||||||
|
@@ -43,6 +43,9 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
<!-- wxBase -->
|
<!-- wxBase -->
|
||||||
<!-- ====================================================================== -->
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
|
<!-- UNIX -->
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
<set var="BASE_UNIX_SRC" hints="files">
|
<set var="BASE_UNIX_SRC" hints="files">
|
||||||
src/unix/baseunix.cpp
|
src/unix/baseunix.cpp
|
||||||
src/unix/dir.cpp
|
src/unix/dir.cpp
|
||||||
@@ -63,6 +66,9 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
wx/unix/stdpaths.h
|
wx/unix/stdpaths.h
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
|
<!-- Windows -->
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
<set var="BASE_WIN32_SRC" hints="files">
|
<set var="BASE_WIN32_SRC" hints="files">
|
||||||
src/msw/basemsw.cpp
|
src/msw/basemsw.cpp
|
||||||
src/msw/crashrpt.cpp
|
src/msw/crashrpt.cpp
|
||||||
@@ -101,6 +107,20 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
<if cond="TOOLKIT=='WINCE'">wx/msw/wince/time.h</if>
|
<if cond="TOOLKIT=='WINCE'">wx/msw/wince/time.h</if>
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
|
<!-- Mac -->
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
|
|
||||||
|
<!-- Used on Mac OS CarbonLib, Mac OS X wxMac base, and Mac OS X darwin base -->
|
||||||
|
<set var="BASE_COREFOUNDATION_SRC" hints="files">
|
||||||
|
src/mac/corefoundation/cfstring.cpp
|
||||||
|
src/mac/corefoundation/stdpaths_cf.cpp
|
||||||
|
</set>
|
||||||
|
<set var="BASE_COREFOUNDATION_HDR" hints="files">
|
||||||
|
wx/mac/corefoundation/cfstring.h
|
||||||
|
wx/mac/corefoundation/stdpaths.h
|
||||||
|
</set>
|
||||||
|
|
||||||
<!-- Base files used by Carbon on OS X and CarbonLib (not true Classic) -->
|
<!-- Base files used by Carbon on OS X and CarbonLib (not true Classic) -->
|
||||||
<!-- FIXME: Maybe this ought to be named BASE_MAC_CARBON_SRC -->
|
<!-- FIXME: Maybe this ought to be named BASE_MAC_CARBON_SRC -->
|
||||||
<set var="BASE_MAC_SRC" hints="files">
|
<set var="BASE_MAC_SRC" hints="files">
|
||||||
@@ -112,14 +132,22 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
<!-- One would think MoreFilesX is only for OS X but it seems to
|
<!-- One would think MoreFilesX is only for OS X but it seems to
|
||||||
apply to CarbonLib as well (FSRefMakeFSSpec) -->
|
apply to CarbonLib as well (FSRefMakeFSSpec) -->
|
||||||
src/mac/carbon/morefilex/MoreFilesX.c
|
src/mac/carbon/morefilex/MoreFilesX.c
|
||||||
<!-- Shared wxMac and wxCocoa files -->
|
$(BASE_COREFOUNDATION_SRC)
|
||||||
src/mac/corefoundation/cfstring.cpp
|
</set>
|
||||||
src/mac/corefoundation/stdpaths_cf.cpp
|
<set var="BASE_MAC_HDR" hints="files">
|
||||||
|
$(BASE_COREFOUNDATION_HDR)
|
||||||
|
</set>
|
||||||
|
<!-- Base and GUI files used by both OS X and CarbonLib -->
|
||||||
|
<set var="BASE_AND_GUI_MAC_SRC" hints="files">
|
||||||
|
src/mac/carbon/utils.cpp
|
||||||
|
src/mac/carbon/uma.cpp
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
<!-- Base files used by Classic (not CarbonLib or OS X builds) -->
|
<!-- Base files used by Classic (not CarbonLib or OS X builds) -->
|
||||||
<!-- set var="BASE_MAC_CLASSIC_SRC">
|
<!-- set var="BASE_MAC_CLASSIC_SRC">
|
||||||
</set -->
|
</set -->
|
||||||
|
<!-- set var="BASE_MAC_CLASSIC_HDR">
|
||||||
|
</set -->
|
||||||
|
|
||||||
<!-- Base files used only by CarbonLib builds (not Classic or OS X) -->
|
<!-- Base files used only by CarbonLib builds (not Classic or OS X) -->
|
||||||
<set var="BASE_MAC_CARBONLIB_SRC" hints="files">
|
<set var="BASE_MAC_CARBONLIB_SRC" hints="files">
|
||||||
@@ -133,24 +161,31 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
src/mac/carbon/morefile/MoreFilesExtras.c
|
src/mac/carbon/morefile/MoreFilesExtras.c
|
||||||
src/mac/carbon/morefile/Search.c
|
src/mac/carbon/morefile/Search.c
|
||||||
</set>
|
</set>
|
||||||
|
<!-- set var="BASE_MAC_CARBONLIB_HDR" hints="files">
|
||||||
|
</set -->
|
||||||
|
|
||||||
<!-- Base files used only by OS X builds (not CarbonLib or Classic) -->
|
<!-- Base files used only by OS X builds (not CarbonLib or Classic) -->
|
||||||
<set var="BASE_MAC_OSX_SRC" hints="files">
|
<set var="BASE_MAC_OSX_SRC" hints="files">
|
||||||
src/unix/baseunix.cpp
|
src/unix/baseunix.cpp
|
||||||
|
src/unix/stdpaths.cpp
|
||||||
|
</set>
|
||||||
|
<set var="BASE_MAC_OSX_HDR" hints="files">
|
||||||
|
wx/unix/stdpaths.h
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
<!-- Base and GUI files used by both OS X and CarbonLib -->
|
<!-- Base files used by non-wxMac OS X builds -->
|
||||||
<set var="BASE_AND_GUI_MAC_SRC" hints="files">
|
<set var="BASE_DARWIN_SRC" hints="files">
|
||||||
src/mac/carbon/utils.cpp
|
$(BASE_UNIX_SRC)
|
||||||
src/mac/carbon/uma.cpp
|
$(BASE_COREFOUNDATION_SRC)
|
||||||
</set>
|
</set>
|
||||||
|
<set var="BASE_DARWIN_HDR" hints="files">
|
||||||
<set var="BASE_MAC_HDR" hints="files">
|
$(BASE_UNIX_HDR)
|
||||||
<!-- Shared wxMac and wxCocoa files -->
|
$(BASE_COREFOUNDATION_HDR)
|
||||||
wx/mac/corefoundation/cfstring.h
|
|
||||||
wx/mac/corefoundation/stdpaths.h
|
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
|
<!-- OS/2 -->
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
<set var="BASE_OS2_SRC" hints="files">
|
<set var="BASE_OS2_SRC" hints="files">
|
||||||
src/os2/dir.cpp
|
src/os2/dir.cpp
|
||||||
src/os2/mimetype.cpp
|
src/os2/mimetype.cpp
|
||||||
@@ -168,6 +203,9 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
wx/os2/stdpaths.h
|
wx/os2/stdpaths.h
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
|
<!-- Common -->
|
||||||
|
<!-- =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -->
|
||||||
<set var="BASE_CMN_SRC" hints="files">
|
<set var="BASE_CMN_SRC" hints="files">
|
||||||
src/common/appbase.cpp
|
src/common/appbase.cpp
|
||||||
src/common/clntdata.cpp
|
src/common/clntdata.cpp
|
||||||
@@ -1612,10 +1650,18 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
<!-- wxMac -->
|
<!-- wxMac -->
|
||||||
<!-- ====================================================================== -->
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
|
<set var="MAC_OSX_LOWLEVEL_SRC" hints="files">
|
||||||
|
<!-- Shared wxMac and wxCocoa files -->
|
||||||
|
src/mac/corefoundation/gsockosx.cpp
|
||||||
|
src/mac/corefoundation/utilsexc_cf.cpp
|
||||||
|
</set>
|
||||||
|
|
||||||
<set var="MAC_LOWLEVEL_SRC" hints="files">
|
<set var="MAC_LOWLEVEL_SRC" hints="files">
|
||||||
|
<if cond="PLATFORM_MACOSX=='1'">$(MAC_OSX_LOWLEVEL_SRC)</if>
|
||||||
</set>
|
</set>
|
||||||
<set var="MAC_LOWLEVEL_HDR" hints="files">
|
<set var="MAC_LOWLEVEL_HDR" hints="files">
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
<set var="MAC_SRC" hints="files">
|
<set var="MAC_SRC" hints="files">
|
||||||
src/mac/carbon/accel.cpp
|
src/mac/carbon/accel.cpp
|
||||||
src/mac/carbon/aga.cpp
|
src/mac/carbon/aga.cpp
|
||||||
@@ -1703,11 +1749,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
<!-- wxWebKit files -->
|
<!-- wxWebKit files -->
|
||||||
src/html/htmlctrl/webkit/webkit.mm
|
src/html/htmlctrl/webkit/webkit.mm
|
||||||
</set>
|
</set>
|
||||||
<set var="MAC_OSX_SRC" hints="files">
|
|
||||||
<!-- Shared wxMac and wxCocoa files -->
|
|
||||||
src/mac/corefoundation/gsockosx.cpp
|
|
||||||
src/mac/corefoundation/utilsexc_cf.cpp
|
|
||||||
</set>
|
|
||||||
|
|
||||||
<!-- Header files like wx/mac/foo.h which include wx/mac/carbon/foo.h -->
|
<!-- Header files like wx/mac/foo.h which include wx/mac/carbon/foo.h -->
|
||||||
<set var="MAC_CMN_HDR" hints="files">
|
<set var="MAC_CMN_HDR" hints="files">
|
||||||
@@ -1896,6 +1937,9 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
<!-- ====================================================================== -->
|
<!-- ====================================================================== -->
|
||||||
|
|
||||||
<set var="COCOA_LOWLEVEL_SRC" hints="files">
|
<set var="COCOA_LOWLEVEL_SRC" hints="files">
|
||||||
|
<!-- Shared wxMac and wxCocoa files -->
|
||||||
|
src/mac/corefoundation/gsockosx.cpp
|
||||||
|
src/mac/corefoundation/utilsexc_cf.cpp
|
||||||
</set>
|
</set>
|
||||||
<set var="COCOA_LOWLEVEL_HDR" hints="files">
|
<set var="COCOA_LOWLEVEL_HDR" hints="files">
|
||||||
</set>
|
</set>
|
||||||
@@ -1988,11 +2032,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
src/generic/statusbr.cpp
|
src/generic/statusbr.cpp
|
||||||
src/generic/tabg.cpp
|
src/generic/tabg.cpp
|
||||||
src/generic/timer.cpp
|
src/generic/timer.cpp
|
||||||
<!-- Shared wxMac and wxCocoa files -->
|
|
||||||
src/mac/corefoundation/cfstring.cpp
|
|
||||||
src/mac/corefoundation/gsockosx.cpp
|
|
||||||
src/mac/corefoundation/stdpaths_cf.cpp
|
|
||||||
src/mac/corefoundation/utilsexc_cf.cpp
|
|
||||||
</set>
|
</set>
|
||||||
<set var="COCOA_HDR" hints="files">
|
<set var="COCOA_HDR" hints="files">
|
||||||
wx/cocoa/NSApplication.h
|
wx/cocoa/NSApplication.h
|
||||||
@@ -2076,9 +2115,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
wx/generic/region.h
|
wx/generic/region.h
|
||||||
wx/generic/statusbr.h
|
wx/generic/statusbr.h
|
||||||
wx/generic/tabg.h
|
wx/generic/tabg.h
|
||||||
<!-- Shared wxMac and wxCocoa files -->
|
|
||||||
wx/mac/corefoundation/cfstring.h
|
|
||||||
wx/mac/corefoundation/stdpaths.h
|
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
|
|
||||||
@@ -2584,15 +2620,15 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
<!-- These are the files for PLATFORM_MACOSX -->
|
<!-- These are the files for PLATFORM_MACOSX -->
|
||||||
<set var="BASE_MACOSX_SRC" hints="files">
|
<set var="BASE_MACOSX_SRC" hints="files">
|
||||||
<if cond="TOOLKIT=='MAC'">$(BASE_MAC_SRC) $(BASE_MAC_OSX_SRC)</if>
|
<if cond="TOOLKIT=='MAC'">$(BASE_MAC_SRC) $(BASE_MAC_OSX_SRC)</if>
|
||||||
<if cond="TOOLKIT=='COCOA'">$(BASE_UNIX_SRC)</if>
|
<if cond="TOOLKIT=='COCOA'">$(BASE_DARWIN_SRC)</if>
|
||||||
<if cond="TOOLKIT=='GTK'">$(BASE_UNIX_SRC)</if>
|
<if cond="TOOLKIT=='GTK'">$(BASE_DARWIN_SRC)</if>
|
||||||
<if cond="TOOLKIT=='X11'">$(BASE_UNIX_SRC)</if>
|
<if cond="TOOLKIT=='X11'">$(BASE_DARWIN_SRC)</if>
|
||||||
<if cond="TOOLKIT=='MOTIF'">$(BASE_UNIX_SRC)</if>
|
<if cond="TOOLKIT=='MOTIF'">$(BASE_DARWIN_SRC)</if>
|
||||||
<!-- FIXME: TOOLKIT!='MAC' is what we really want -->
|
<!-- FIXME: TOOLKIT!='MAC' is what we really want -->
|
||||||
|
|
||||||
<!-- FIXME: a hack because there are two wxBase versions on
|
<!-- FIXME: a hack because there are two wxBase versions on
|
||||||
Mac; once fixed, this would no longer be needed -->
|
Mac; once fixed, this would no longer be needed -->
|
||||||
<if cond="TOOLKIT==''">$(BASE_UNIX_SRC)</if>
|
<if cond="TOOLKIT==''">$(BASE_DARWIN_SRC)</if>
|
||||||
</set>
|
</set>
|
||||||
<set var="BASE_PLATFORM_SRC" hints="files">
|
<set var="BASE_PLATFORM_SRC" hints="files">
|
||||||
<if cond="PLATFORM_UNIX=='1'">$(BASE_UNIX_SRC)</if>
|
<if cond="PLATFORM_UNIX=='1'">$(BASE_UNIX_SRC)</if>
|
||||||
@@ -2614,7 +2650,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
<set var="BASE_PLATFORM_HDR" hints="files">
|
<set var="BASE_PLATFORM_HDR" hints="files">
|
||||||
<if cond="PLATFORM_UNIX=='1'">$(BASE_UNIX_HDR)</if>
|
<if cond="PLATFORM_UNIX=='1'">$(BASE_UNIX_HDR)</if>
|
||||||
<if cond="PLATFORM_WIN32=='1'">$(BASE_WIN32_HDR) $(BASE_WINCE_HDR)</if>
|
<if cond="PLATFORM_WIN32=='1'">$(BASE_WIN32_HDR) $(BASE_WINCE_HDR)</if>
|
||||||
<if cond="TOOLKIT=='MAC'">$(BASE_MAC_HDR)</if>
|
<if cond="TOOLKIT=='MAC'">$(BASE_MAC_HDR) $(BASE_MAC_OSX_HDR)</if>
|
||||||
<if cond="TOOLKIT=='COCOA'">$(BASE_UNIX_HDR)</if>
|
<if cond="TOOLKIT=='COCOA'">$(BASE_UNIX_HDR)</if>
|
||||||
</set>
|
</set>
|
||||||
|
|
||||||
@@ -2678,7 +2714,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
|||||||
<if cond="TOOLKIT=='MOTIF'">$(MOTIF_SRC)</if>
|
<if cond="TOOLKIT=='MOTIF'">$(MOTIF_SRC)</if>
|
||||||
<if cond="TOOLKIT=='MSW'">$(MSW_SRC) $(MSW_ONLY_SRC)</if>
|
<if cond="TOOLKIT=='MSW'">$(MSW_SRC) $(MSW_ONLY_SRC)</if>
|
||||||
<if cond="TOOLKIT=='WINCE'">$(MSW_SRC) $(WINCE_SRC)</if>
|
<if cond="TOOLKIT=='WINCE'">$(MSW_SRC) $(WINCE_SRC)</if>
|
||||||
<if cond="TOOLKIT=='MAC'">$(MAC_SRC) $(MAC_OSX_SRC)</if>
|
<if cond="TOOLKIT=='MAC'">$(MAC_SRC)</if>
|
||||||
<if cond="TOOLKIT=='COCOA'">$(COCOA_SRC)</if>
|
<if cond="TOOLKIT=='COCOA'">$(COCOA_SRC)</if>
|
||||||
<if cond="TOOLKIT=='PM'">$(OS2_SRC)</if>
|
<if cond="TOOLKIT=='PM'">$(OS2_SRC)</if>
|
||||||
</set>
|
</set>
|
||||||
|
@@ -49,6 +49,8 @@ struct WXDLLIMPEXP_BASE wxToolkitInfo
|
|||||||
// wxAppTraits: this class defines various configurable aspects of wxApp
|
// wxAppTraits: this class defines various configurable aspects of wxApp
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
class WXDLLIMPEXP_BASE wxStandardPathsBase;
|
||||||
|
|
||||||
class WXDLLIMPEXP_BASE wxAppTraitsBase
|
class WXDLLIMPEXP_BASE wxAppTraitsBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@@ -75,6 +77,9 @@ public:
|
|||||||
// NB: returned pointer will be deleted by the caller
|
// NB: returned pointer will be deleted by the caller
|
||||||
virtual wxRendererNative *CreateRenderer() = 0;
|
virtual wxRendererNative *CreateRenderer() = 0;
|
||||||
|
|
||||||
|
// wxStandardPaths object is normally the same for wxBase and wxGUI
|
||||||
|
// except in the case of wxMac and wxCocoa
|
||||||
|
virtual wxStandardPathsBase& GetStandardPaths();
|
||||||
|
|
||||||
// functions abstracting differences between GUI and console modes
|
// functions abstracting differences between GUI and console modes
|
||||||
// ------------------------------------------------------------------------
|
// ------------------------------------------------------------------------
|
||||||
|
@@ -24,10 +24,6 @@ public:
|
|||||||
wxStandardPathsCF();
|
wxStandardPathsCF();
|
||||||
~wxStandardPathsCF();
|
~wxStandardPathsCF();
|
||||||
|
|
||||||
// return the global standard paths object
|
|
||||||
// Overrides wxStandardPathsBase version for GUI code.
|
|
||||||
static wxStandardPathsCF& Get();
|
|
||||||
|
|
||||||
// wxMac specific: allow user to specify a different bundle
|
// wxMac specific: allow user to specify a different bundle
|
||||||
wxStandardPathsCF(struct __CFBundle *bundle);
|
wxStandardPathsCF(struct __CFBundle *bundle);
|
||||||
void SetBundle(struct __CFBundle *bundle);
|
void SetBundle(struct __CFBundle *bundle);
|
||||||
@@ -43,13 +39,14 @@ protected:
|
|||||||
struct __CFBundle *m_bundle;
|
struct __CFBundle *m_bundle;
|
||||||
};
|
};
|
||||||
|
|
||||||
// wxMac has its own base so it always uses this version.
|
// If using UNIX (i.e. darwin) then use UNIX standard paths
|
||||||
// Otherwise, we want to use this version only when compiling GUI code.
|
#if defined(__UNIX__)
|
||||||
// The CoreFoundation version is always available by its full name to all code.
|
|
||||||
#if defined(__WXMAC__) || wxUSE_BASE == 0
|
|
||||||
#define wxStandardPaths wxStandardPathsCF
|
|
||||||
#else
|
|
||||||
#include "wx/unix/stdpaths.h"
|
#include "wx/unix/stdpaths.h"
|
||||||
|
#else
|
||||||
|
// If compiling wxMac for CarbonLib then we are wxStandardPaths
|
||||||
|
class WXDLLIMPEXP_BASE wxStandardPaths: public wxStandardPathsCF
|
||||||
|
{
|
||||||
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif // _WX_MAC_STDPATHS_H_
|
#endif // _WX_MAC_STDPATHS_H_
|
||||||
|
@@ -14,13 +14,6 @@
|
|||||||
|
|
||||||
#include "wx/string.h"
|
#include "wx/string.h"
|
||||||
|
|
||||||
#if defined(__WXMAC__)
|
|
||||||
class WXDLLIMPEXP_BASE wxStandardPathsCF;
|
|
||||||
#define wxStandardPaths wxStandardPathsCF
|
|
||||||
#else
|
|
||||||
class WXDLLIMPEXP_BASE wxStandardPaths;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// wxStandardPaths returns the standard locations in the file system
|
// wxStandardPaths returns the standard locations in the file system
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -29,7 +22,7 @@ class WXDLLIMPEXP_BASE wxStandardPathsBase
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
// return the global standard paths object
|
// return the global standard paths object
|
||||||
static wxStandardPaths& Get();
|
static wxStandardPathsBase& Get();
|
||||||
|
|
||||||
|
|
||||||
// return the directory with system config files:
|
// return the directory with system config files:
|
||||||
@@ -89,7 +82,8 @@ protected:
|
|||||||
|
|
||||||
#if defined(__WXMSW__)
|
#if defined(__WXMSW__)
|
||||||
#include "wx/msw/stdpaths.h"
|
#include "wx/msw/stdpaths.h"
|
||||||
#elif defined(__WXMAC__) || defined(__WXCOCOA__)
|
// We want CoreFoundation paths on both CarbonLib and Darwin (for all ports)
|
||||||
|
#elif defined(__WXMAC__) || defined(__DARWIN__)
|
||||||
#include "wx/mac/corefoundation/stdpaths.h"
|
#include "wx/mac/corefoundation/stdpaths.h"
|
||||||
#elif defined(__OS2__)
|
#elif defined(__OS2__)
|
||||||
#include "wx/os2/stdpaths.h"
|
#include "wx/os2/stdpaths.h"
|
||||||
|
@@ -37,6 +37,9 @@ public:
|
|||||||
virtual void DetachWriteFDOfEndProcessPipe(wxExecuteData& execData);
|
virtual void DetachWriteFDOfEndProcessPipe(wxExecuteData& execData);
|
||||||
virtual int WaitForChild(wxExecuteData& execData);
|
virtual int WaitForChild(wxExecuteData& execData);
|
||||||
|
|
||||||
|
#if defined(__WXMAC__) || defined(__WXCOCOA__)
|
||||||
|
virtual wxStandardPathsBase& GetStandardPaths();
|
||||||
|
#endif
|
||||||
virtual wxToolkitInfo& GetToolkitInfo();
|
virtual wxToolkitInfo& GetToolkitInfo();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -27,6 +27,7 @@
|
|||||||
#ifndef WX_PRECOMP
|
#ifndef WX_PRECOMP
|
||||||
#include "wx/app.h"
|
#include "wx/app.h"
|
||||||
#endif //WX_PRECOMP
|
#endif //WX_PRECOMP
|
||||||
|
#include "wx/apptrait.h"
|
||||||
|
|
||||||
#include "wx/filename.h"
|
#include "wx/filename.h"
|
||||||
#include "wx/stdpaths.h"
|
#include "wx/stdpaths.h"
|
||||||
@@ -42,7 +43,12 @@ static wxStandardPaths gs_stdPaths;
|
|||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|
||||||
/* static */
|
/* static */
|
||||||
wxStandardPaths& wxStandardPathsBase::Get()
|
wxStandardPathsBase& wxStandardPathsBase::Get()
|
||||||
|
{
|
||||||
|
return wxTheApp->GetTraits()->GetStandardPaths();
|
||||||
|
}
|
||||||
|
|
||||||
|
wxStandardPathsBase& wxAppTraitsBase::GetStandardPaths()
|
||||||
{
|
{
|
||||||
return gs_stdPaths;
|
return gs_stdPaths;
|
||||||
}
|
}
|
||||||
|
@@ -26,11 +26,6 @@
|
|||||||
#include <CFURL.h>
|
#include <CFURL.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// See comment in include/wx/mac/corefoundation/stdpaths.h
|
|
||||||
#ifndef wxStandardPaths
|
|
||||||
#warning "wxStandardPaths should be defined to wxStandardPathsCF when compiling this file."
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(__WXCOCOA__) || defined(__WXMAC_OSX__)
|
#if defined(__WXCOCOA__) || defined(__WXMAC_OSX__)
|
||||||
#define kDefaultPathStyle kCFURLPOSIXPathStyle
|
#define kDefaultPathStyle kCFURLPOSIXPathStyle
|
||||||
#else
|
#else
|
||||||
@@ -46,50 +41,43 @@ static wxString BundleRelativeURLToPath(CFURLRef relativeURL)
|
|||||||
return wxMacCFStringHolder(cfStrPath).AsString(wxLocale::GetSystemEncoding());
|
return wxMacCFStringHolder(cfStrPath).AsString(wxLocale::GetSystemEncoding());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
wxStandardPathsCF::wxStandardPathsCF()
|
||||||
static wxStandardPaths gs_stdPaths;
|
|
||||||
/* static */ wxStandardPaths& wxStandardPaths::Get()
|
|
||||||
{
|
|
||||||
return gs_stdPaths;
|
|
||||||
}
|
|
||||||
|
|
||||||
wxStandardPaths::wxStandardPaths()
|
|
||||||
: m_bundle(CFBundleGetMainBundle())
|
: m_bundle(CFBundleGetMainBundle())
|
||||||
{
|
{
|
||||||
CFRetain(m_bundle);
|
CFRetain(m_bundle);
|
||||||
}
|
}
|
||||||
|
|
||||||
wxStandardPaths::wxStandardPaths(struct __CFBundle *bundle)
|
wxStandardPathsCF::wxStandardPathsCF(struct __CFBundle *bundle)
|
||||||
: m_bundle(bundle)
|
: m_bundle(bundle)
|
||||||
{
|
{
|
||||||
CFRetain(m_bundle);
|
CFRetain(m_bundle);
|
||||||
}
|
}
|
||||||
|
|
||||||
wxStandardPaths::~wxStandardPaths()
|
wxStandardPathsCF::~wxStandardPathsCF()
|
||||||
{
|
{
|
||||||
CFRelease(m_bundle);
|
CFRelease(m_bundle);
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxStandardPaths::SetBundle(struct __CFBundle *bundle)
|
void wxStandardPathsCF::SetBundle(struct __CFBundle *bundle)
|
||||||
{
|
{
|
||||||
CFRetain(bundle);
|
CFRetain(bundle);
|
||||||
CFRelease(m_bundle);
|
CFRelease(m_bundle);
|
||||||
m_bundle = bundle;
|
m_bundle = bundle;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxStandardPaths::GetConfigDir() const
|
wxString wxStandardPathsCF::GetConfigDir() const
|
||||||
{
|
{
|
||||||
// TODO: What do we do for pure Carbon?
|
// TODO: What do we do for pure Carbon?
|
||||||
return wxT("/Library/Preferences");
|
return wxT("/Library/Preferences");
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxStandardPaths::GetUserConfigDir() const
|
wxString wxStandardPathsCF::GetUserConfigDir() const
|
||||||
{
|
{
|
||||||
// TODO: What do we do for pure Carbon?
|
// TODO: What do we do for pure Carbon?
|
||||||
return wxFileName::GetHomeDir() + wxT("/Library/Preferences");
|
return wxFileName::GetHomeDir() + wxT("/Library/Preferences");
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxStandardPaths::GetDataDir() const
|
wxString wxStandardPathsCF::GetDataDir() const
|
||||||
{
|
{
|
||||||
wxCHECK_MSG(m_bundle, wxEmptyString, wxT("wxStandardPaths for CoreFoundation only works with bundled apps"));
|
wxCHECK_MSG(m_bundle, wxEmptyString, wxT("wxStandardPaths for CoreFoundation only works with bundled apps"));
|
||||||
CFURLRef relativeURL = CFBundleCopySharedSupportURL(m_bundle);
|
CFURLRef relativeURL = CFBundleCopySharedSupportURL(m_bundle);
|
||||||
@@ -99,17 +87,17 @@ wxString wxStandardPaths::GetDataDir() const
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxStandardPaths::GetLocalDataDir() const
|
wxString wxStandardPathsCF::GetLocalDataDir() const
|
||||||
{
|
{
|
||||||
return AppendAppName(wxT("/Library/Application Support"));
|
return AppendAppName(wxT("/Library/Application Support"));
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxStandardPaths::GetUserDataDir() const
|
wxString wxStandardPathsCF::GetUserDataDir() const
|
||||||
{
|
{
|
||||||
return AppendAppName(wxFileName::GetHomeDir() + _T("/Library/Application Support"));
|
return AppendAppName(wxFileName::GetHomeDir() + _T("/Library/Application Support"));
|
||||||
}
|
}
|
||||||
|
|
||||||
wxString wxStandardPaths::GetPluginsDir() const
|
wxString wxStandardPathsCF::GetPluginsDir() const
|
||||||
{
|
{
|
||||||
wxCHECK_MSG(m_bundle, wxEmptyString, wxT("wxStandardPaths for CoreFoundation only works with bundled apps"));
|
wxCHECK_MSG(m_bundle, wxEmptyString, wxT("wxStandardPaths for CoreFoundation only works with bundled apps"));
|
||||||
CFURLRef relativeURL = CFBundleCopyBuiltInPlugInsURL(m_bundle);
|
CFURLRef relativeURL = CFBundleCopyBuiltInPlugInsURL(m_bundle);
|
||||||
|
@@ -16,6 +16,8 @@
|
|||||||
#include "wx/utils.h"
|
#include "wx/utils.h"
|
||||||
#endif //ndef WX_PRECOMP
|
#endif //ndef WX_PRECOMP
|
||||||
#include "wx/unix/execute.h"
|
#include "wx/unix/execute.h"
|
||||||
|
#include "wx/stdpaths.h"
|
||||||
|
#include "wx/apptrait.h"
|
||||||
|
|
||||||
#include <CoreFoundation/CFMachPort.h>
|
#include <CoreFoundation/CFMachPort.h>
|
||||||
#include <sys/wait.h>
|
#include <sys/wait.h>
|
||||||
@@ -109,3 +111,11 @@ int wxAddProcessCallbackForPid(wxEndProcessData *proc_data, int pid)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NOTE: This doens't really belong here but this was a handy file to
|
||||||
|
// put it in because it's already compiled for wxCocoa and wxMac GUI lib.
|
||||||
|
static wxStandardPathsCF gs_stdPaths;
|
||||||
|
wxStandardPathsBase& wxGUIAppTraits::GetStandardPaths()
|
||||||
|
{
|
||||||
|
return gs_stdPaths;
|
||||||
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user