libedit: Set initial pin properties when editing
This allows the invisible pins to be drawn as grey Fixes: lp:1816178 * https://bugs.launchpad.net/kicad/+bug/1816178
This commit is contained in:
parent
79f990266b
commit
c37aac56e6
|
@ -100,6 +100,8 @@ bool DIALOG_LIB_EDIT_PIN::TransferDataToWindow()
|
||||||
m_checkApplyToAllConversions->SetValue( m_pin->GetConvert() == 0 );
|
m_checkApplyToAllConversions->SetValue( m_pin->GetConvert() == 0 );
|
||||||
m_checkShow->SetValue( m_pin->IsVisible() );
|
m_checkShow->SetValue( m_pin->IsVisible() );
|
||||||
|
|
||||||
|
m_dummyPin->SetVisible( m_pin->IsVisible() );
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -157,7 +159,7 @@ void DIALOG_LIB_EDIT_PIN::OnPaintShowPanel( wxPaintEvent& event )
|
||||||
m_dummyPin->SetParent( libframe->GetCurPart() );
|
m_dummyPin->SetParent( libframe->GetCurPart() );
|
||||||
|
|
||||||
// Calculate a suitable scale to fit the available draw area
|
// Calculate a suitable scale to fit the available draw area
|
||||||
EDA_RECT bBox = m_dummyPin->GetBoundingBox();
|
EDA_RECT bBox = m_dummyPin->GetBoundingBox( true );
|
||||||
double xscale = (double) dc_size.x / bBox.GetWidth();
|
double xscale = (double) dc_size.x / bBox.GetWidth();
|
||||||
double yscale = (double) dc_size.y / bBox.GetHeight();
|
double yscale = (double) dc_size.y / bBox.GetHeight();
|
||||||
double scale = std::min( xscale, yscale );
|
double scale = std::min( xscale, yscale );
|
||||||
|
|
|
@ -600,7 +600,7 @@ void LIB_PIN::drawGraphic( EDA_DRAW_PANEL* aPanel,
|
||||||
// They are drawn in GetInvisibleItemColor().
|
// They are drawn in GetInvisibleItemColor().
|
||||||
if( ! IsVisible() )
|
if( ! IsVisible() )
|
||||||
{
|
{
|
||||||
bool drawHidden = false;
|
bool drawHidden = true;
|
||||||
|
|
||||||
if( aPanel && aPanel->GetParent() )
|
if( aPanel && aPanel->GetParent() )
|
||||||
{
|
{
|
||||||
|
@ -608,8 +608,6 @@ void LIB_PIN::drawGraphic( EDA_DRAW_PANEL* aPanel,
|
||||||
|
|
||||||
if( frame->IsType( FRAME_SCH ) )
|
if( frame->IsType( FRAME_SCH ) )
|
||||||
drawHidden = static_cast<SCH_EDIT_FRAME*>( frame )->GetShowAllPins();
|
drawHidden = static_cast<SCH_EDIT_FRAME*>( frame )->GetShowAllPins();
|
||||||
else if( frame->IsType( FRAME_SCH_LIB_EDITOR ) )
|
|
||||||
drawHidden = true; // must be able to edit
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if( !drawHidden )
|
if( !drawHidden )
|
||||||
|
|
Loading…
Reference in New Issue