Browse Source

Implement and enable option to not shove vias during push & shove routing

7.0
Stefan Hamminga 3 years ago
committed by Mike Williams
parent
commit
2ff6a6aee1
  1. 1
      pcbnew/dialogs/dialog_pns_settings.cpp
  2. 1
      pcbnew/dialogs/dialog_pns_settings_base.cpp
  3. 2
      pcbnew/router/pns_shove.cpp

1
pcbnew/dialogs/dialog_pns_settings.cpp

@ -55,7 +55,6 @@ DIALOG_PNS_SETTINGS::DIALOG_PNS_SETTINGS( wxWindow* aParent, PNS::ROUTING_SETTIN
// Don't show options that are not implemented
m_suggestEnding->Hide();
m_shoveVias->Hide();
SetDefaultItem( m_stdButtonsOK );
GetSizer()->Fit( this );

1
pcbnew/dialogs/dialog_pns_settings_base.cpp

@ -29,7 +29,6 @@ DIALOG_PNS_SETTINGS_BASE::DIALOG_PNS_SETTINGS_BASE( wxWindow* parent, wxWindowID
bOptions->Add( m_freeAngleMode, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
m_shoveVias = new wxCheckBox( bOptions->GetStaticBox(), wxID_ANY, _("Shove vias"), wxDefaultPosition, wxDefaultSize, 0 );
m_shoveVias->Enable( false );
m_shoveVias->SetToolTip( _("When disabled, vias are treated as un-movable objects and hugged instead of shoved.") );
bOptions->Add( m_shoveVias, 0, wxTOP|wxRIGHT|wxLEFT, 5 );

2
pcbnew/router/pns_shove.cpp

@ -880,7 +880,7 @@ SHOVE::SHOVE_STATUS SHOVE::pushOrShoveVia( VIA* aVia, const VECTOR2I& aForce, in
return SH_INCOMPLETE;
}
if( aVia->IsLocked() )
if( Settings().ShoveVias() == false || aVia->IsLocked() )
return SH_TRY_WALK;
if( jt->IsLocked() )

Loading…
Cancel
Save