Commit 2d972fcf authored by jean-pierre charras's avatar jean-pierre charras

Libedit: other fix in pin edition.

parent 70de08f3
......@@ -957,7 +957,7 @@ void LIB_EDIT_FRAME::OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition,
break;
case HK_ROTATE:
if( m_drawItem == NULL )
if( ! itemInEdit )
m_drawItem = LocateItemUsingCursor( aPosition );
if( m_drawItem )
......
......@@ -1878,16 +1878,29 @@ int LIB_PIN::GetOrientationCodeIndex( int code )
void LIB_PIN::Rotate()
{
// Get the actual pin orientation index
int i = GetOrientationCodeIndex( GetOrientation() );
int orient = PIN_RIGHT;
// Compute the next orientation, swap lower two bits for the right order
i = ( (i & 2) >> 1 ) | ( (i & 1) << 1 );
i = i + 1;
i = ( (i & 2) >> 1 ) | ( (i & 1) << 1 );
switch( GetOrientation() )
{
case PIN_UP:
orient = PIN_LEFT;
break;
case PIN_DOWN:
orient = PIN_RIGHT;
break;
case PIN_LEFT:
orient = PIN_DOWN;
break;
case PIN_RIGHT:
orient = PIN_UP;
break;
}
// Set the new orientation
SetOrientation( GetOrientationCode( i ) );
SetOrientation( orient );
}
......
......@@ -1071,6 +1071,10 @@ void LIB_EDIT_FRAME::OnRotateItem( wxCommandEvent& aEvent )
m_drawItem->Rotate();
OnModify();
if( !m_drawItem->InEditMode() )
m_drawItem->ClearFlags();
DrawPanel->Refresh();
if( GetToolId() == ID_NO_TOOL_SELECTED )
......
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