Loading eeschema/edit_component_in_lib.cpp +5 −0 Original line number Original line Diff line number Diff line Loading @@ -445,6 +445,11 @@ void DIALOG_EDIT_COMPONENT_IN_LIBRARY::BrowseAndSelectDocFile( wxCommandEvent& e wxGetApp().SaveLastVisitedLibraryPath( fn.GetPath() ); wxGetApp().SaveLastVisitedLibraryPath( fn.GetPath() ); filename = wxGetApp().ReturnFilenameWithRelativePathInLibPath(FullFileName); filename = wxGetApp().ReturnFilenameWithRelativePathInLibPath(FullFileName); // Filenames are always stored in unix like mode, ie separator "\" is stored as "/" // to ensure files are identical under unices and windows #ifdef __WINDOWS__ filename.Replace(wxT("\\"), wxT("/") ); #endif m_Docfile->SetValue( filename ); m_Docfile->SetValue( filename ); } } Loading include/wxPcbStruct.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -642,7 +642,7 @@ public: void ReOrientModules( const wxString& ModuleMask, int Orient, void ReOrientModules( const wxString& ModuleMask, int Orient, bool include_fixe ); bool include_fixe ); void FixeModule( MODULE* Module, bool Fixe ); void FixeModule( MODULE* Module, bool Fixe ); void AutoMoveModulesOnPcb( wxDC* DC, bool PlaceModulesHorsPcb ); void AutoMoveModulesOnPcb( bool PlaceModulesHorsPcb ); bool SetBoardBoundaryBoxFromEdgesOnly(); bool SetBoardBoundaryBoxFromEdgesOnly(); void AutoPlaceModule( MODULE* Module, int place_mode, wxDC* DC ); void AutoPlaceModule( MODULE* Module, int place_mode, wxDC* DC ); int RecherchePlacementModule( MODULE* Module, wxDC* DC ); int RecherchePlacementModule( MODULE* Module, wxDC* DC ); Loading pcbnew/automove.cpp +9 −11 Original line number Original line Diff line number Diff line Loading @@ -40,7 +40,7 @@ wxString ModulesMaskSelection = wxT( "*" ); void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) /******************************************************/ /******************************************************/ /* Traite les selections d'outils et les commandes appelees du menu POPUP /* Called on events (popup menus) relative to automove and autoplace footprints */ */ { { int id = event.GetId(); int id = event.GetId(); Loading @@ -55,7 +55,7 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) wxGetMousePosition( &pos.x, &pos.y ); wxGetMousePosition( &pos.x, &pos.y ); switch( id ) // Arret eventuel de la commande de dplacement en cours switch( id ) { { case ID_TOOLBARH_PCB_AUTOPLACE: case ID_TOOLBARH_PCB_AUTOPLACE: case ID_TOOLBARH_PCB_AUTOROUTE: case ID_TOOLBARH_PCB_AUTOROUTE: Loading @@ -69,7 +69,7 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) } } break; break; default: // Arret de la commande de dplacement en cours default: // Abort a current command (if any) if( DrawPanel->ManageCurseur if( DrawPanel->ManageCurseur && DrawPanel->ForceCloseManageCurseur ) && DrawPanel->ForceCloseManageCurseur ) { { Loading @@ -84,7 +84,7 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) DrawGeneralRatsnest( &dc ); DrawGeneralRatsnest( &dc ); GetBoard()->m_Status_Pcb |= DO_NOT_SHOW_GENERAL_RASTNEST; GetBoard()->m_Status_Pcb |= DO_NOT_SHOW_GENERAL_RASTNEST; switch( id ) // Traitement des commandes switch( id ) { { case ID_TOOLBARH_PCB_AUTOPLACE: case ID_TOOLBARH_PCB_AUTOPLACE: on_state = m_HToolBar->GetToolState( ID_TOOLBARH_PCB_AUTOPLACE ); on_state = m_HToolBar->GetToolState( ID_TOOLBARH_PCB_AUTOPLACE ); Loading Loading @@ -142,11 +142,11 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) break; break; case ID_POPUP_PCB_AUTOMOVE_ALL_MODULES: case ID_POPUP_PCB_AUTOMOVE_ALL_MODULES: AutoMoveModulesOnPcb( &dc, FALSE ); AutoMoveModulesOnPcb( FALSE ); break; break; case ID_POPUP_PCB_AUTOMOVE_NEW_MODULES: case ID_POPUP_PCB_AUTOMOVE_NEW_MODULES: AutoMoveModulesOnPcb( &dc, TRUE ); AutoMoveModulesOnPcb( TRUE ); break; break; case ID_POPUP_PCB_REORIENT_ALL_MODULES: case ID_POPUP_PCB_REORIENT_ALL_MODULES: Loading Loading @@ -188,7 +188,7 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) /*****************************************************************************/ /*****************************************************************************/ void WinEDA_PcbFrame::AutoMoveModulesOnPcb( wxDC* DC, bool PlaceModulesHorsPcb ) void WinEDA_PcbFrame::AutoMoveModulesOnPcb( bool PlaceModulesHorsPcb ) /*****************************************************************************/ /*****************************************************************************/ /* Routine de repartition des composants dans un rectangle de format 4 / 3, /* Routine de repartition des composants dans un rectangle de format 4 / 3, Loading Loading @@ -259,7 +259,6 @@ void WinEDA_PcbFrame::AutoMoveModulesOnPcb( wxDC* DC, bool PlaceModulesHorsPcb ) Xsize_allowed = (int) (sqrt( surface ) * 4.0 / 3.0); Xsize_allowed = (int) (sqrt( surface ) * 4.0 / 3.0); /* Placement des modules */ start = current = GetScreen()->m_Curseur; start = current = GetScreen()->m_Curseur; Ymax_size = 0; Ymax_size = 0; Loading Loading @@ -290,14 +289,13 @@ void WinEDA_PcbFrame::AutoMoveModulesOnPcb( wxDC* DC, bool PlaceModulesHorsPcb ) PutOnGrid( &GetScreen()->m_Curseur ); PutOnGrid( &GetScreen()->m_Curseur ); Module->Draw( DrawPanel, DC, GR_XOR ); Place_Module( Module, NULL, true ); Place_Module( Module, DC ); /* positionne Module et recalcule cadre */ current.x += Module->m_RealBoundaryBox.GetWidth() + pas_grille; current.x += Module->m_RealBoundaryBox.GetWidth() + pas_grille; } } MyFree( BaseListeModules ); MyFree( BaseListeModules ); GetScreen()->SetRefreshReq(); DrawPanel->Refresh(); } } Loading Loading
eeschema/edit_component_in_lib.cpp +5 −0 Original line number Original line Diff line number Diff line Loading @@ -445,6 +445,11 @@ void DIALOG_EDIT_COMPONENT_IN_LIBRARY::BrowseAndSelectDocFile( wxCommandEvent& e wxGetApp().SaveLastVisitedLibraryPath( fn.GetPath() ); wxGetApp().SaveLastVisitedLibraryPath( fn.GetPath() ); filename = wxGetApp().ReturnFilenameWithRelativePathInLibPath(FullFileName); filename = wxGetApp().ReturnFilenameWithRelativePathInLibPath(FullFileName); // Filenames are always stored in unix like mode, ie separator "\" is stored as "/" // to ensure files are identical under unices and windows #ifdef __WINDOWS__ filename.Replace(wxT("\\"), wxT("/") ); #endif m_Docfile->SetValue( filename ); m_Docfile->SetValue( filename ); } } Loading
include/wxPcbStruct.h +1 −1 Original line number Original line Diff line number Diff line Loading @@ -642,7 +642,7 @@ public: void ReOrientModules( const wxString& ModuleMask, int Orient, void ReOrientModules( const wxString& ModuleMask, int Orient, bool include_fixe ); bool include_fixe ); void FixeModule( MODULE* Module, bool Fixe ); void FixeModule( MODULE* Module, bool Fixe ); void AutoMoveModulesOnPcb( wxDC* DC, bool PlaceModulesHorsPcb ); void AutoMoveModulesOnPcb( bool PlaceModulesHorsPcb ); bool SetBoardBoundaryBoxFromEdgesOnly(); bool SetBoardBoundaryBoxFromEdgesOnly(); void AutoPlaceModule( MODULE* Module, int place_mode, wxDC* DC ); void AutoPlaceModule( MODULE* Module, int place_mode, wxDC* DC ); int RecherchePlacementModule( MODULE* Module, wxDC* DC ); int RecherchePlacementModule( MODULE* Module, wxDC* DC ); Loading
pcbnew/automove.cpp +9 −11 Original line number Original line Diff line number Diff line Loading @@ -40,7 +40,7 @@ wxString ModulesMaskSelection = wxT( "*" ); void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) /******************************************************/ /******************************************************/ /* Traite les selections d'outils et les commandes appelees du menu POPUP /* Called on events (popup menus) relative to automove and autoplace footprints */ */ { { int id = event.GetId(); int id = event.GetId(); Loading @@ -55,7 +55,7 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) wxGetMousePosition( &pos.x, &pos.y ); wxGetMousePosition( &pos.x, &pos.y ); switch( id ) // Arret eventuel de la commande de dplacement en cours switch( id ) { { case ID_TOOLBARH_PCB_AUTOPLACE: case ID_TOOLBARH_PCB_AUTOPLACE: case ID_TOOLBARH_PCB_AUTOROUTE: case ID_TOOLBARH_PCB_AUTOROUTE: Loading @@ -69,7 +69,7 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) } } break; break; default: // Arret de la commande de dplacement en cours default: // Abort a current command (if any) if( DrawPanel->ManageCurseur if( DrawPanel->ManageCurseur && DrawPanel->ForceCloseManageCurseur ) && DrawPanel->ForceCloseManageCurseur ) { { Loading @@ -84,7 +84,7 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) DrawGeneralRatsnest( &dc ); DrawGeneralRatsnest( &dc ); GetBoard()->m_Status_Pcb |= DO_NOT_SHOW_GENERAL_RASTNEST; GetBoard()->m_Status_Pcb |= DO_NOT_SHOW_GENERAL_RASTNEST; switch( id ) // Traitement des commandes switch( id ) { { case ID_TOOLBARH_PCB_AUTOPLACE: case ID_TOOLBARH_PCB_AUTOPLACE: on_state = m_HToolBar->GetToolState( ID_TOOLBARH_PCB_AUTOPLACE ); on_state = m_HToolBar->GetToolState( ID_TOOLBARH_PCB_AUTOPLACE ); Loading Loading @@ -142,11 +142,11 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) break; break; case ID_POPUP_PCB_AUTOMOVE_ALL_MODULES: case ID_POPUP_PCB_AUTOMOVE_ALL_MODULES: AutoMoveModulesOnPcb( &dc, FALSE ); AutoMoveModulesOnPcb( FALSE ); break; break; case ID_POPUP_PCB_AUTOMOVE_NEW_MODULES: case ID_POPUP_PCB_AUTOMOVE_NEW_MODULES: AutoMoveModulesOnPcb( &dc, TRUE ); AutoMoveModulesOnPcb( TRUE ); break; break; case ID_POPUP_PCB_REORIENT_ALL_MODULES: case ID_POPUP_PCB_REORIENT_ALL_MODULES: Loading Loading @@ -188,7 +188,7 @@ void WinEDA_PcbFrame::AutoPlace( wxCommandEvent& event ) /*****************************************************************************/ /*****************************************************************************/ void WinEDA_PcbFrame::AutoMoveModulesOnPcb( wxDC* DC, bool PlaceModulesHorsPcb ) void WinEDA_PcbFrame::AutoMoveModulesOnPcb( bool PlaceModulesHorsPcb ) /*****************************************************************************/ /*****************************************************************************/ /* Routine de repartition des composants dans un rectangle de format 4 / 3, /* Routine de repartition des composants dans un rectangle de format 4 / 3, Loading Loading @@ -259,7 +259,6 @@ void WinEDA_PcbFrame::AutoMoveModulesOnPcb( wxDC* DC, bool PlaceModulesHorsPcb ) Xsize_allowed = (int) (sqrt( surface ) * 4.0 / 3.0); Xsize_allowed = (int) (sqrt( surface ) * 4.0 / 3.0); /* Placement des modules */ start = current = GetScreen()->m_Curseur; start = current = GetScreen()->m_Curseur; Ymax_size = 0; Ymax_size = 0; Loading Loading @@ -290,14 +289,13 @@ void WinEDA_PcbFrame::AutoMoveModulesOnPcb( wxDC* DC, bool PlaceModulesHorsPcb ) PutOnGrid( &GetScreen()->m_Curseur ); PutOnGrid( &GetScreen()->m_Curseur ); Module->Draw( DrawPanel, DC, GR_XOR ); Place_Module( Module, NULL, true ); Place_Module( Module, DC ); /* positionne Module et recalcule cadre */ current.x += Module->m_RealBoundaryBox.GetWidth() + pas_grille; current.x += Module->m_RealBoundaryBox.GetWidth() + pas_grille; } } MyFree( BaseListeModules ); MyFree( BaseListeModules ); GetScreen()->SetRefreshReq(); DrawPanel->Refresh(); } } Loading