moved AppendAppName() from MSW to common code; modified it to not double the trailing slash, if any
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -28,9 +28,6 @@ public:
|
|||||||
virtual wxString GetPluginsDir() const;
|
virtual wxString GetPluginsDir() const;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// append "/appname" suffix if the app name is set
|
|
||||||
static wxString AppendAppName(const wxString& dir);
|
|
||||||
|
|
||||||
// get the path corresponding to the given standard CSIDL_XXX constant
|
// get the path corresponding to the given standard CSIDL_XXX constant
|
||||||
static wxString DoGetDirectory(int csidl);
|
static wxString DoGetDirectory(int csidl);
|
||||||
};
|
};
|
||||||
|
@@ -75,6 +75,11 @@ public:
|
|||||||
|
|
||||||
// virtual dtor for the base class
|
// virtual dtor for the base class
|
||||||
virtual ~wxStandardPathsBase();
|
virtual ~wxStandardPathsBase();
|
||||||
|
|
||||||
|
protected:
|
||||||
|
// append "/appname" suffix if the app name is set (doesn't append the
|
||||||
|
// slash if dir already ends with a slash or dot)
|
||||||
|
static wxString AppendAppName(const wxString& dir);
|
||||||
};
|
};
|
||||||
|
|
||||||
#if defined(__WXMSW__)
|
#if defined(__WXMSW__)
|
||||||
|
@@ -24,6 +24,11 @@
|
|||||||
#pragma hdrstop
|
#pragma hdrstop
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef WX_PRECOMP
|
||||||
|
#include "wx/app.h"
|
||||||
|
#endif //WX_PRECOMP
|
||||||
|
|
||||||
|
#include "wx/filename.h"
|
||||||
#include "wx/stdpaths.h"
|
#include "wx/stdpaths.h"
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -57,3 +62,25 @@ wxString wxStandardPathsBase::GetUserLocalDataDir() const
|
|||||||
return GetUserDataDir();
|
return GetUserDataDir();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* static */
|
||||||
|
wxString wxStandardPathsBase::AppendAppName(const wxString& dir)
|
||||||
|
{
|
||||||
|
wxString subdir(dir);
|
||||||
|
|
||||||
|
// empty string indicates that an error has occured, 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;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -216,22 +216,6 @@ wxString wxStandardPaths::DoGetDirectory(int csidl)
|
|||||||
return dir;
|
return dir;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* static */
|
|
||||||
wxString wxStandardPaths::AppendAppName(const wxString& dir)
|
|
||||||
{
|
|
||||||
wxString subdir(dir);
|
|
||||||
|
|
||||||
// empty string indicates that an error has occured, don't touch it then
|
|
||||||
if ( !subdir.empty() )
|
|
||||||
{
|
|
||||||
const wxString appname = wxTheApp->GetAppName();
|
|
||||||
if ( !appname.empty() )
|
|
||||||
subdir << _T('\\') << appname;
|
|
||||||
}
|
|
||||||
|
|
||||||
return subdir;
|
|
||||||
}
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// public functions
|
// public functions
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
Reference in New Issue
Block a user