FIX: insert key must repeat text labels

This commit is contained in:
Dick Hollenbeck 2013-08-06 17:59:07 -05:00
parent c0832a0342
commit 4c6f7bc158
4 changed files with 13 additions and 16 deletions

View File

@ -434,7 +434,6 @@ void SCH_EDIT_FRAME::RepeatDrawItem( wxDC* DC )
SCH_ITEM* my_clone = (SCH_ITEM*) repeater->Clone();
// If cloning a component then put into 'move' mode.
/* please tell me where components are snapshotted via SetRepeatItem()
if( my_clone->Type() == SCH_COMPONENT_T )
{
wxPoint pos = GetCrossHairPosition() -
@ -447,7 +446,6 @@ void SCH_EDIT_FRAME::RepeatDrawItem( wxDC* DC )
MoveItem( my_clone, DC );
}
else
*/
{
my_clone->Move( wxPoint( g_RepeatStep.GetWidth(), g_RepeatStep.GetHeight() ) );

View File

@ -385,8 +385,11 @@ void SCH_EDIT_FRAME::OnHotKey( wxDC* aDC, int aHotKey, const wxPoint& aPosition,
break;
case HK_REPEAT_LAST:
if( notBusy && GetRepeatItem() && ( GetRepeatItem()->GetFlags() == 0 ) )
RepeatDrawItem( aDC );
if( notBusy && GetRepeatItem() )
{
//if( GetRepeatItem()->GetFlags() == 0 )
RepeatDrawItem( aDC );
}
break;
case HK_END_CURR_LINEWIREBUS:

View File

@ -52,8 +52,8 @@ static wxArrayString s_PowerNameList;
void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
{
SCH_ITEM* item = GetScreen()->GetCurItem();
wxPoint gridPosition = GetGridPosition( aPosition );
SCH_ITEM* item = GetScreen()->GetCurItem();
wxPoint gridPosition = GetGridPosition( aPosition );
if( ( GetToolId() == ID_NO_TOOL_SELECTED ) || ( item && item->GetFlags() ) )
{
@ -120,7 +120,6 @@ void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
m_CurrentSheet->Pop();
DisplayCurrentSheet();
}
break;
case ID_NOCONN_BUTT:
@ -210,7 +209,6 @@ void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
{
addCurrentItemToList( aDC );
}
break;
case ID_ADD_IMAGE_BUTT:
@ -223,7 +221,6 @@ void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
{
addCurrentItemToList( aDC );
}
break;
case ID_LABEL_BUTT:
@ -236,7 +233,6 @@ void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
{
addCurrentItemToList( aDC );
}
break;
case ID_GLABEL_BUTT:
@ -255,7 +251,6 @@ void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
{
addCurrentItemToList( aDC );
}
break;
case ID_SHEET_SYMBOL_BUTT:
@ -273,7 +268,6 @@ void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
{
addCurrentItemToList( aDC );
}
break;
case ID_IMPORT_HLABEL_BUTT:
@ -295,7 +289,6 @@ void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
{
addCurrentItemToList( aDC );
}
break;
case ID_SCH_PLACE_COMPONENT:
@ -308,7 +301,6 @@ void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
{
addCurrentItemToList( aDC );
}
break;
case ID_PLACE_POWER_BUTT:
@ -322,7 +314,6 @@ void SCH_EDIT_FRAME::OnLeftClick( wxDC* aDC, const wxPoint& aPosition )
{
addCurrentItemToList( aDC );
}
break;
default:

View File

@ -294,8 +294,13 @@ void SCH_EDIT_FRAME::SetRepeatItem( SCH_ITEM* aItem )
if( cur != old )
{
if( cur )
{
aItem = (SCH_ITEM*) cur->Clone();
// Clone() preserves the flags, we want 'em cleared.
aItem->ClearFlags();
}
m_item_to_repeat = aItem;
delete old;
@ -891,7 +896,7 @@ bool SCH_EDIT_FRAME::isAutoSaveRequired() const
void SCH_EDIT_FRAME::addCurrentItemToList( wxDC* aDC )
{
SCH_SCREEN* screen = GetScreen();
SCH_ITEM* item = screen->GetCurItem();
SCH_ITEM* item = screen->GetCurItem();
wxCHECK_RET( item != NULL, wxT( "Cannot add current item to list." ) );