#pragma hdrstop
#endif
+#if wxUSE_STDPATHS
+
+#ifndef WX_PRECOMP
+ #include "wx/app.h"
+#endif //WX_PRECOMP
+#include "wx/apptrait.h"
+
+#include "wx/filename.h"
#include "wx/stdpaths.h"
// ----------------------------------------------------------------------------
// ============================================================================
/* static */
-wxStandardPaths& wxStandardPathsBase::Get()
+wxStandardPathsBase& wxStandardPathsBase::Get()
+{
+ wxAppTraits * const traits = wxTheApp ? wxTheApp->GetTraits() : NULL;
+ wxCHECK_MSG( traits, gs_stdPaths, _T("create wxApp before calling this") );
+
+ return traits->GetStandardPaths();
+}
+
+wxStandardPathsBase& wxAppTraitsBase::GetStandardPaths()
{
return gs_stdPaths;
}
return GetUserDataDir();
}
+/* static */
+wxString wxStandardPathsBase::AppendAppName(const wxString& dir)
+{
+ wxString subdir(dir);
+
+ // empty string indicates that an error has occurred, don't touch it then
+ if ( !subdir.empty() )
+ {
+ const wxString appname = wxTheApp->GetAppName();
+ if ( !appname.empty() )
+ {
+ const wxChar ch = *(subdir.end() - 1);
+ if ( !wxFileName::IsPathSeparator(ch) && ch != _T('.') )
+ subdir += wxFileName::GetPathSeparator();
+
+ subdir += appname;
+ }
+ }
+
+ return subdir;
+}
+
+#endif // wxUSE_STDPATHS