Commit 36e62b10 authored by jean-pierre charras's avatar jean-pierre charras

Eeschema: fix Bug #1298868 (Can't create new schematic from main toolbar icon)

parent 44e1f4fa
...@@ -368,20 +368,24 @@ bool SCH_EDIT_FRAME::OpenProjectFiles( const std::vector<wxString>& aFileSet, in ...@@ -368,20 +368,24 @@ bool SCH_EDIT_FRAME::OpenProjectFiles( const std::vector<wxString>& aFileSet, in
// Delete old caches. // Delete old caches.
CMP_LIBRARY::RemoveCacheLibrary(); CMP_LIBRARY::RemoveCacheLibrary();
libCacheExist = LoadCacheLibrary( g_RootSheet->GetScreen()->GetFileName() ); if( !wxFileExists( g_RootSheet->GetScreen()->GetFileName() ) )
if( !wxFileExists( g_RootSheet->GetScreen()->GetFileName() ) && !libCacheExist )
{ {
Zoom_Automatique( false ); Zoom_Automatique( false );
if( aCtl == 0 )
{
msg.Printf( _( "File '%s' not found." ), msg.Printf( _( "File '%s' not found." ),
GetChars( g_RootSheet->GetScreen()->GetFileName() ) ); GetChars( g_RootSheet->GetScreen()->GetFileName() ) );
DisplayInfoMessage( this, msg ); DisplayInfoMessage( this, msg );
// return false; return false;
}
return true; // do not close Eeschema if the file if not found: return true; // do not close Eeschema if the file if not found:
// we may have to create a new schematic file. // we may have to create a new schematic file.
} }
// load the project. // load the project.
libCacheExist = LoadCacheLibrary( g_RootSheet->GetScreen()->GetFileName() );
g_RootSheet->SetScreen( NULL ); g_RootSheet->SetScreen( NULL );
bool diag = g_RootSheet->Load( this ); bool diag = g_RootSheet->Load( this );
SetScreen( m_CurrentSheet->LastScreen() ); SetScreen( m_CurrentSheet->LastScreen() );
......
...@@ -730,13 +730,13 @@ void SCH_EDIT_FRAME::OnLoadCmpToFootprintLinkFile( wxCommandEvent& event ) ...@@ -730,13 +730,13 @@ void SCH_EDIT_FRAME::OnLoadCmpToFootprintLinkFile( wxCommandEvent& event )
void SCH_EDIT_FRAME::OnNewProject( wxCommandEvent& event ) void SCH_EDIT_FRAME::OnNewProject( wxCommandEvent& event )
{ {
wxFileDialog dlg( this, _( "Open Schematic" ), wxGetCwd(), wxFileDialog dlg( this, _( "New Schematic" ), wxGetCwd(),
wxEmptyString, SchematicFileWildcard, wxEmptyString, SchematicFileWildcard,
wxFD_OPEN | wxFD_FILE_MUST_EXIST ); wxFD_SAVE );
if( dlg.ShowModal() != wxID_CANCEL ) if( dlg.ShowModal() != wxID_CANCEL )
{ {
OpenProjectFiles( std::vector<wxString>( 1, dlg.GetPath() ) ); OpenProjectFiles( std::vector<wxString>( 1, dlg.GetPath() ), 1 );
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment