Added ReplaceIllegalFileNameChars() for wxString&
This commit is contained in:
parent
23f49f014b
commit
dfc47464d7
|
@ -484,6 +484,7 @@ bool ReplaceIllegalFileNameChars( std::string* aName, int aReplaceChar )
|
||||||
{
|
{
|
||||||
bool changed = false;
|
bool changed = false;
|
||||||
std::string result;
|
std::string result;
|
||||||
|
result.reserve( aName->length() );
|
||||||
|
|
||||||
for( std::string::iterator it = aName->begin(); it != aName->end(); ++it )
|
for( std::string::iterator it = aName->begin(); it != aName->end(); ++it )
|
||||||
{
|
{
|
||||||
|
@ -507,3 +508,33 @@ bool ReplaceIllegalFileNameChars( std::string* aName, int aReplaceChar )
|
||||||
|
|
||||||
return changed;
|
return changed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool ReplaceIllegalFileNameChars( wxString& aName, int aReplaceChar )
|
||||||
|
{
|
||||||
|
bool changed = false;
|
||||||
|
wxString result;
|
||||||
|
result.reserve( aName.Length() );
|
||||||
|
|
||||||
|
for( wxString::iterator it = aName.begin(); it != aName.end(); ++it )
|
||||||
|
{
|
||||||
|
if( strchr( illegalFileNameChars, *it ) )
|
||||||
|
{
|
||||||
|
if( aReplaceChar )
|
||||||
|
result += aReplaceChar;
|
||||||
|
else
|
||||||
|
result += wxString::Format( "%%%02x", *it );
|
||||||
|
|
||||||
|
changed = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result += *it;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if( changed )
|
||||||
|
aName = result;
|
||||||
|
|
||||||
|
return changed;
|
||||||
|
}
|
||||||
|
|
|
@ -172,6 +172,7 @@ wxString GetIllegalFileNameWxChars();
|
||||||
* @return true if any characters have been replaced in \a aName.
|
* @return true if any characters have been replaced in \a aName.
|
||||||
*/
|
*/
|
||||||
bool ReplaceIllegalFileNameChars( std::string* aName, int aReplaceChar = 0 );
|
bool ReplaceIllegalFileNameChars( std::string* aName, int aReplaceChar = 0 );
|
||||||
|
bool ReplaceIllegalFileNameChars( wxString& aName, int aReplaceChar = 0 );
|
||||||
|
|
||||||
#ifndef HAVE_STRTOKR
|
#ifndef HAVE_STRTOKR
|
||||||
// common/strtok_r.c optionally:
|
// common/strtok_r.c optionally:
|
||||||
|
|
Loading…
Reference in New Issue