fix Bug #578532, document and embellish QuoteFullPath()

This commit is contained in:
Dick Hollenbeck 2010-05-11 09:35:13 -05:00
parent d9c42e27b4
commit 74cc5a75a8
3 changed files with 11 additions and 6 deletions

View File

@ -685,5 +685,5 @@ void OpenFile( const wxString& file )
wxString QuoteFullPath( wxFileName& fn, wxPathFormat format )
{
return wxT( "\"" ) + fn.GetFullPath() + wxT( "\"" );
return wxT( "\"" ) + fn.GetFullPath( format ) + wxT( "\"" );
}

View File

@ -458,7 +458,7 @@ wxString WinEDA_SchematicFrame::GetUniqueFilenameForCurrentSheet()
#else
fn.ClearExt();
wxString filename = fn.GetFullPath();
if( ( filename.Len() + m_CurrentSheet->PathHumanReadable().Len() ) < 80 )
if( ( filename.Len() + m_CurrentSheet->PathHumanReadable().Len() ) < 80 )
#endif
{
@ -702,8 +702,11 @@ void WinEDA_SchematicFrame::OnOpenPcbnew( wxCommandEvent& event )
if( fn.IsOk() )
{
fn.ClearExt();
ExecuteFile( this, PCBNEW_EXE, QuoteFullPath( fn ) );
fn.SetExt( BoardFileExtension );
wxString filename = QuoteFullPath( fn );
ExecuteFile( this, PCBNEW_EXE, filename );
}
else
ExecuteFile( this, PCBNEW_EXE );

View File

@ -77,8 +77,10 @@ wxString FindKicadFile( const wxString& shortname );
* Quote return value of wxFileName::GetFullPath().
*
* This allows file name paths with spaces to be used as parameters to
* ProcessExecute function calls. This is a cheap and dirty hack and
* should probably should be done in a class derived from wxFileName.
* ProcessExecute function calls.
* @param fn is the filename to wrap
* @param format if provided, can be used to transform the nature of the
* wrapped filename to another platform.
*/
extern wxString QuoteFullPath( wxFileName& fn,
wxPathFormat format = wxPATH_NATIVE );