MacOSX: Fix in eeschema component move
This commit is contained in:
parent
ebb85aa232
commit
a51dab7341
|
@ -72,6 +72,19 @@ void SCH_EDIT_FRAME::RedrawActiveWindow( wxDC* DC, bool EraseBg )
|
||||||
|
|
||||||
TraceWorkSheet( DC, GetScreen(), g_DrawDefaultLineThickness );
|
TraceWorkSheet( DC, GetScreen(), g_DrawDefaultLineThickness );
|
||||||
|
|
||||||
|
#ifdef USE_WX_OVERLAY
|
||||||
|
if( IsShown() )
|
||||||
|
{
|
||||||
|
m_overlay.Reset();
|
||||||
|
wxDCOverlay overlaydc( m_overlay, (wxWindowDC*)DC );
|
||||||
|
overlaydc.Clear();
|
||||||
|
/* TODO: Investigate why toolbars are affected - to be searched in wxWidgets */
|
||||||
|
m_mainToolBar->Refresh();
|
||||||
|
m_drawToolBar->Refresh();
|
||||||
|
m_optionsToolBar->Refresh();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if( m_canvas->IsMouseCaptured() )
|
if( m_canvas->IsMouseCaptured() )
|
||||||
m_canvas->CallMouseCapture( DC, wxDefaultPosition, false );
|
m_canvas->CallMouseCapture( DC, wxDefaultPosition, false );
|
||||||
|
|
||||||
|
|
|
@ -125,7 +125,7 @@ void LIB_ITEM::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
|
||||||
int color = GetDefaultColor();
|
int color = GetDefaultColor();
|
||||||
|
|
||||||
m_Fill = NO_FILL;
|
m_Fill = NO_FILL;
|
||||||
|
#ifndef USE_WX_OVERLAY
|
||||||
// Erase the old items using the previous attributes.
|
// Erase the old items using the previous attributes.
|
||||||
if( m_eraseLastDrawItem )
|
if( m_eraseLastDrawItem )
|
||||||
{
|
{
|
||||||
|
@ -133,7 +133,7 @@ void LIB_ITEM::Draw( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aOffset,
|
||||||
drawEditGraphics( aPanel->GetClipBox(), aDC, color );
|
drawEditGraphics( aPanel->GetClipBox(), aDC, color );
|
||||||
drawGraphic( aPanel, aDC, wxPoint( 0, 0 ), color, g_XorMode, aData, aTransform );
|
drawGraphic( aPanel, aDC, wxPoint( 0, 0 ), color, g_XorMode, aData, aTransform );
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
// Calculate the new attributes at the current cursor position.
|
// Calculate the new attributes at the current cursor position.
|
||||||
calcEdit( aOffset );
|
calcEdit( aOffset );
|
||||||
|
|
||||||
|
|
|
@ -598,10 +598,12 @@ static void moveItem( EDA_DRAW_PANEL* aPanel, wxDC* aDC, const wxPoint& aPositio
|
||||||
|
|
||||||
wxCHECK_RET( (item != NULL), wxT( "Cannot move invalid schematic item." ) );
|
wxCHECK_RET( (item != NULL), wxT( "Cannot move invalid schematic item." ) );
|
||||||
|
|
||||||
|
#ifndef USE_WX_OVERLAY
|
||||||
// Erase the current item at its current position.
|
// Erase the current item at its current position.
|
||||||
if( aErase )
|
if( aErase )
|
||||||
item->Draw( aPanel, aDC, wxPoint( 0, 0 ), g_XorMode );
|
item->Draw( aPanel, aDC, wxPoint( 0, 0 ), g_XorMode );
|
||||||
|
|
||||||
|
#endif
|
||||||
item->SetPosition( screen->GetCrossHairPosition() );
|
item->SetPosition( screen->GetCrossHairPosition() );
|
||||||
|
|
||||||
// Draw the item item at it's new position.
|
// Draw the item item at it's new position.
|
||||||
|
@ -671,7 +673,10 @@ void SCH_EDIT_FRAME::MoveItem( SCH_ITEM* aItem, wxDC* aDC )
|
||||||
}
|
}
|
||||||
|
|
||||||
aItem->SetFlags( IS_MOVED );
|
aItem->SetFlags( IS_MOVED );
|
||||||
|
#ifdef USE_WX_OVERLAY
|
||||||
|
this->Refresh();
|
||||||
|
this->Update();
|
||||||
|
#endif
|
||||||
m_canvas->CrossHairOff( aDC );
|
m_canvas->CrossHairOff( aDC );
|
||||||
|
|
||||||
if( aItem->Type() != SCH_SHEET_PIN_T )
|
if( aItem->Type() != SCH_SHEET_PIN_T )
|
||||||
|
|
Loading…
Reference in New Issue