Apply patch from Alain Portal to fix bug 570074 and other minor updates.
* Removed redundant empty string test, thanks again Alain. * Minor code cleaning.
This commit is contained in:
parent
762e625c22
commit
61cf376218
|
@ -18,12 +18,12 @@ static void AbortMoveCmpField( WinEDA_DrawPanel* Panel, wxDC* DC );
|
||||||
static void MoveCmpField( WinEDA_DrawPanel* panel, wxDC* DC, bool erase );
|
static void MoveCmpField( WinEDA_DrawPanel* panel, wxDC* DC, bool erase );
|
||||||
|
|
||||||
|
|
||||||
/******************************************************************************/
|
|
||||||
void WinEDA_SchematicFrame::StartMoveCmpField( SCH_FIELD* aField, wxDC* DC )
|
|
||||||
{
|
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
/* Prepare the displacement of the text being edited.
|
/* Prepare the displacement of the text being edited.
|
||||||
*/
|
*/
|
||||||
|
/******************************************************************************/
|
||||||
|
void WinEDA_SchematicFrame::StartMoveCmpField( SCH_FIELD* aField, wxDC* DC )
|
||||||
|
{
|
||||||
LIB_COMPONENT* Entry;
|
LIB_COMPONENT* Entry;
|
||||||
|
|
||||||
SetCurrentField( aField );
|
SetCurrentField( aField );
|
||||||
|
@ -81,11 +81,11 @@ void WinEDA_SchematicFrame::StartMoveCmpField( SCH_FIELD* aField, wxDC* DC )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/******************************************************************************/
|
||||||
|
/* Edit the field Field (text, size) */
|
||||||
/******************************************************************************/
|
/******************************************************************************/
|
||||||
void WinEDA_SchematicFrame::EditCmpFieldText( SCH_FIELD* Field, wxDC* DC )
|
void WinEDA_SchematicFrame::EditCmpFieldText( SCH_FIELD* Field, wxDC* DC )
|
||||||
{
|
{
|
||||||
/******************************************************************************/
|
|
||||||
/* Edit the field Field (text, size) */
|
|
||||||
int fieldNdx, flag;
|
int fieldNdx, flag;
|
||||||
LIB_COMPONENT* Entry;
|
LIB_COMPONENT* Entry;
|
||||||
|
|
||||||
|
@ -122,7 +122,6 @@ modified!\nYou must create a new power" ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* save old cmp in undo list if not already in edit, or moving ... */
|
/* save old cmp in undo list if not already in edit, or moving ... */
|
||||||
if( Field->m_Flags == 0 )
|
if( Field->m_Flags == 0 )
|
||||||
SaveCopyInUndoList( Cmp, UR_CHANGED );
|
SaveCopyInUndoList( Cmp, UR_CHANGED );
|
||||||
|
@ -167,16 +166,15 @@ modified!\nYou must create a new power" ) );
|
||||||
|
|
||||||
Field->Draw( DrawPanel, DC, wxPoint( 0, 0 ), g_XorMode );
|
Field->Draw( DrawPanel, DC, wxPoint( 0, 0 ), g_XorMode );
|
||||||
Cmp->DisplayInfo( this );
|
Cmp->DisplayInfo( this );
|
||||||
OnModify( );
|
OnModify();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/************************************************************************/
|
/*
|
||||||
|
* Move standard text field. This routine is normally attached to the cursor.
|
||||||
|
*/
|
||||||
static void MoveCmpField( WinEDA_DrawPanel* panel, wxDC* DC, bool erase )
|
static void MoveCmpField( WinEDA_DrawPanel* panel, wxDC* DC, bool erase )
|
||||||
{
|
{
|
||||||
/************************************************************************/
|
|
||||||
/* Move standard text field. This routine is normally attached to the cursor.
|
|
||||||
**/
|
|
||||||
wxPoint pos;
|
wxPoint pos;
|
||||||
int x1, y1;
|
int x1, y1;
|
||||||
int fieldNdx;
|
int fieldNdx;
|
||||||
|
@ -211,10 +209,8 @@ static void MoveCmpField( WinEDA_DrawPanel* panel, wxDC* DC, bool erase )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/******************************************************************/
|
|
||||||
static void AbortMoveCmpField( WinEDA_DrawPanel* Panel, wxDC* DC )
|
static void AbortMoveCmpField( WinEDA_DrawPanel* Panel, wxDC* DC )
|
||||||
{
|
{
|
||||||
/******************************************************************/
|
|
||||||
Panel->ForceCloseManageCurseur = NULL;
|
Panel->ForceCloseManageCurseur = NULL;
|
||||||
Panel->ManageCurseur = NULL;
|
Panel->ManageCurseur = NULL;
|
||||||
|
|
||||||
|
@ -236,10 +232,8 @@ static void AbortMoveCmpField( WinEDA_DrawPanel* Panel, wxDC* DC )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*********************************************************************************/
|
|
||||||
void WinEDA_SchematicFrame::RotateCmpField( SCH_FIELD* Field, wxDC* DC )
|
void WinEDA_SchematicFrame::RotateCmpField( SCH_FIELD* Field, wxDC* DC )
|
||||||
{
|
{
|
||||||
/*********************************************************************************/
|
|
||||||
int fieldNdx, flag;
|
int fieldNdx, flag;
|
||||||
LIB_COMPONENT* Entry;
|
LIB_COMPONENT* Entry;
|
||||||
|
|
||||||
|
@ -277,16 +271,15 @@ void WinEDA_SchematicFrame::RotateCmpField( SCH_FIELD* Field, wxDC* DC )
|
||||||
Field->m_Orient = TEXT_ORIENT_HORIZ;
|
Field->m_Orient = TEXT_ORIENT_HORIZ;
|
||||||
Field->Draw( DrawPanel, DC, wxPoint( 0, 0 ), g_XorMode );
|
Field->Draw( DrawPanel, DC, wxPoint( 0, 0 ), g_XorMode );
|
||||||
|
|
||||||
OnModify( );
|
OnModify();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/****************************************************************************/
|
|
||||||
void WinEDA_SchematicFrame::EditComponentReference( SCH_COMPONENT* Cmp,
|
|
||||||
wxDC* DC )
|
|
||||||
{
|
|
||||||
/****************************************************************************/
|
/****************************************************************************/
|
||||||
/* Edit the component text reference*/
|
/* Edit the component text reference*/
|
||||||
|
/****************************************************************************/
|
||||||
|
void WinEDA_SchematicFrame::EditComponentReference( SCH_COMPONENT* Cmp, wxDC* DC )
|
||||||
|
{
|
||||||
LIB_COMPONENT* Entry;
|
LIB_COMPONENT* Entry;
|
||||||
int flag = 0;
|
int flag = 0;
|
||||||
|
|
||||||
|
@ -312,25 +305,22 @@ void WinEDA_SchematicFrame::EditComponentReference( SCH_COMPONENT* Cmp,
|
||||||
Cmp->SetRef( GetSheet(), ref );
|
Cmp->SetRef( GetSheet(), ref );
|
||||||
|
|
||||||
Cmp->GetField( REFERENCE )->m_AddExtraText = flag;
|
Cmp->GetField( REFERENCE )->m_AddExtraText = flag;
|
||||||
Cmp->GetField( REFERENCE )->Draw( DrawPanel, DC, wxPoint( 0,
|
Cmp->GetField( REFERENCE )->Draw( DrawPanel, DC, wxPoint( 0, 0 ), g_XorMode );
|
||||||
0 ),
|
|
||||||
g_XorMode );
|
|
||||||
Cmp->SetRef( GetSheet(), ref );
|
Cmp->SetRef( GetSheet(), ref );
|
||||||
Cmp->GetField( REFERENCE )->Draw( DrawPanel, DC, wxPoint( 0,
|
Cmp->GetField( REFERENCE )->Draw( DrawPanel, DC, wxPoint( 0, 0 ),
|
||||||
0 ),
|
Cmp->m_Flags ? g_XorMode : GR_DEFAULT_DRAWMODE );
|
||||||
Cmp->m_Flags ? g_XorMode :
|
OnModify();
|
||||||
GR_DEFAULT_DRAWMODE );
|
|
||||||
OnModify( );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Cmp->DisplayInfo( this );
|
Cmp->DisplayInfo( this );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*****************************************************************************/
|
||||||
|
/* Routine to change the selected text */
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
void WinEDA_SchematicFrame::EditComponentValue( SCH_COMPONENT* Cmp, wxDC* DC )
|
void WinEDA_SchematicFrame::EditComponentValue( SCH_COMPONENT* Cmp, wxDC* DC )
|
||||||
{
|
{
|
||||||
/*****************************************************************************/
|
|
||||||
/* Routine to change the selected text */
|
|
||||||
wxString message;
|
wxString message;
|
||||||
LIB_COMPONENT* Entry;
|
LIB_COMPONENT* Entry;
|
||||||
|
|
||||||
|
@ -348,7 +338,7 @@ void WinEDA_SchematicFrame::EditComponentValue( SCH_COMPONENT* Cmp, wxDC* DC )
|
||||||
if( Get_Message( _( "Value" ), _( "Component value" ), message, this ) )
|
if( Get_Message( _( "Value" ), _( "Component value" ), message, this ) )
|
||||||
message.Empty(); //allow the user to remove the value.
|
message.Empty(); //allow the user to remove the value.
|
||||||
|
|
||||||
if( !message.IsEmpty() && !message.IsEmpty() )
|
if( !message.IsEmpty() )
|
||||||
{
|
{
|
||||||
/* save old cmp in undo list if not already in edit, or moving ... */
|
/* save old cmp in undo list if not already in edit, or moving ... */
|
||||||
if( Cmp->m_Flags == 0 )
|
if( Cmp->m_Flags == 0 )
|
||||||
|
@ -358,18 +348,15 @@ void WinEDA_SchematicFrame::EditComponentValue( SCH_COMPONENT* Cmp, wxDC* DC )
|
||||||
TextField->m_Text = message;
|
TextField->m_Text = message;
|
||||||
TextField->Draw( DrawPanel, DC, wxPoint( 0, 0 ),
|
TextField->Draw( DrawPanel, DC, wxPoint( 0, 0 ),
|
||||||
Cmp->m_Flags ? g_XorMode : GR_DEFAULT_DRAWMODE );
|
Cmp->m_Flags ? g_XorMode : GR_DEFAULT_DRAWMODE );
|
||||||
OnModify( );
|
OnModify();
|
||||||
}
|
}
|
||||||
|
|
||||||
Cmp->DisplayInfo( this );
|
Cmp->DisplayInfo( this );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*****************************************************************************/
|
void WinEDA_SchematicFrame::EditComponentFootprint( SCH_COMPONENT* Cmp, wxDC* DC )
|
||||||
void WinEDA_SchematicFrame::EditComponentFootprint( SCH_COMPONENT* Cmp,
|
|
||||||
wxDC* DC )
|
|
||||||
{
|
{
|
||||||
/*****************************************************************************/
|
|
||||||
wxString message;
|
wxString message;
|
||||||
LIB_COMPONENT* Entry;
|
LIB_COMPONENT* Entry;
|
||||||
bool wasEmpty = false;
|
bool wasEmpty = false;
|
||||||
|
@ -388,15 +375,13 @@ void WinEDA_SchematicFrame::EditComponentFootprint( SCH_COMPONENT* Cmp,
|
||||||
if( message.IsEmpty() )
|
if( message.IsEmpty() )
|
||||||
wasEmpty = true;
|
wasEmpty = true;
|
||||||
|
|
||||||
if( Get_Message( _( "Footprint" ), _( "Component footprint" ), message,
|
if( Get_Message( _( "Footprint" ), _( "Component footprint" ), message, this ) )
|
||||||
this ) )
|
|
||||||
message.Empty(); // allow the user to remove the value.
|
message.Empty(); // allow the user to remove the value.
|
||||||
|
|
||||||
// save old cmp in undo list if not already in edit, or moving ...
|
// save old cmp in undo list if not already in edit, or moving ...
|
||||||
if( Cmp->m_Flags == 0 )
|
if( Cmp->m_Flags == 0 )
|
||||||
SaveCopyInUndoList( Cmp, UR_CHANGED );
|
SaveCopyInUndoList( Cmp, UR_CHANGED );
|
||||||
Cmp->GetField( FOOTPRINT )->Draw( DrawPanel, DC, wxPoint( 0,
|
Cmp->GetField( FOOTPRINT )->Draw( DrawPanel, DC, wxPoint( 0, 0 ), g_XorMode );
|
||||||
0 ), g_XorMode );
|
|
||||||
|
|
||||||
// move the field if it was new.
|
// move the field if it was new.
|
||||||
if( wasEmpty && !message.IsEmpty() )
|
if( wasEmpty && !message.IsEmpty() )
|
||||||
|
@ -414,15 +399,14 @@ void WinEDA_SchematicFrame::EditComponentFootprint( SCH_COMPONENT* Cmp,
|
||||||
( Cmp->GetField( REFERENCE )->m_Size.y ) :
|
( Cmp->GetField( REFERENCE )->m_Size.y ) :
|
||||||
( -1 * Cmp->GetField( REFERENCE )->m_Size.y );
|
( -1 * Cmp->GetField( REFERENCE )->m_Size.y );
|
||||||
|
|
||||||
Cmp->GetField( FOOTPRINT )->m_Orient =
|
Cmp->GetField( FOOTPRINT )->m_Orient = Cmp->GetField( REFERENCE )->m_Orient;
|
||||||
Cmp->GetField( REFERENCE )->m_Orient;
|
|
||||||
}
|
|
||||||
TextField->m_Text = message;
|
|
||||||
|
|
||||||
Cmp->GetField( FOOTPRINT )->Draw( DrawPanel, DC, wxPoint( 0, 0 ),
|
TextField->m_Text = message;
|
||||||
Cmp->m_Flags ? g_XorMode :
|
|
||||||
GR_DEFAULT_DRAWMODE );
|
Cmp->GetField( FOOTPRINT )->Draw( DrawPanel, DC, wxPoint( 0, 0 ),
|
||||||
OnModify( );
|
Cmp->m_Flags ? g_XorMode : GR_DEFAULT_DRAWMODE );
|
||||||
|
OnModify();
|
||||||
|
}
|
||||||
|
|
||||||
Cmp->DisplayInfo( this );
|
Cmp->DisplayInfo( this );
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue