Loading eeschema/component_class.cpp +34 −38 Original line number Original line Diff line number Diff line Loading @@ -50,6 +50,7 @@ SCH_COMPONENT::SCH_COMPONENT( const wxPoint& aPos, SCH_ITEM* aParent ) : field.SetLayer( LAYER_REFERENCEPART ); field.SetLayer( LAYER_REFERENCEPART ); else if( i==VALUE ) else if( i==VALUE ) field.SetLayer( LAYER_VALUEPART ); field.SetLayer( LAYER_VALUEPART ); // else keep LAYER_FIELDS from SCH_CMP_FIELD constructor // else keep LAYER_FIELDS from SCH_CMP_FIELD constructor // SCH_CMP_FIELD's implicitly created copy constructor is called in here // SCH_CMP_FIELD's implicitly created copy constructor is called in here Loading @@ -59,7 +60,6 @@ SCH_COMPONENT::SCH_COMPONENT( const wxPoint& aPos, SCH_ITEM* aParent ) : m_PrefixString = wxString( _( "U" ) ); m_PrefixString = wxString( _( "U" ) ); } } /** /** * Function AddHierarchicalReference * Function AddHierarchicalReference * adds a full hierachical reference (path + local reference) * adds a full hierachical reference (path + local reference) Loading Loading @@ -399,6 +399,17 @@ void SCH_COMPONENT::SwapData( SCH_COMPONENT* copyitem ) EXCHG( m_Transform[1][1], copyitem->m_Transform[1][1] ); EXCHG( m_Transform[1][1], copyitem->m_Transform[1][1] ); m_Fields.swap( copyitem->m_Fields ); // std::vector's swap() m_Fields.swap( copyitem->m_Fields ); // std::vector's swap() // Reparent items after copying data (after swap() m_Pareny member does not points the right parent): for( int ii = 0; ii < copyitem->GetFieldCount(); ++ii ) { copyitem->GetField(ii)->m_Parent = copyitem; } for( int ii = 0; ii < GetFieldCount(); ++ii ) { GetField(ii)->m_Parent = this; } } } Loading Loading @@ -487,7 +498,6 @@ void SCH_COMPONENT::ClearAnnotation( DrawSheetPath* aSheet ) // UpdateAllScreenReferences for the active sheet. // UpdateAllScreenReferences for the active sheet. // But this call cannot made here. // But this call cannot made here. m_Fields[REFERENCE].m_Text = defRef; //for drawing. m_Fields[REFERENCE].m_Text = defRef; //for drawing. } } Loading @@ -495,27 +505,14 @@ void SCH_COMPONENT::ClearAnnotation( DrawSheetPath* aSheet ) SCH_COMPONENT* SCH_COMPONENT::GenCopy() SCH_COMPONENT* SCH_COMPONENT::GenCopy() /**************************************************************/ /**************************************************************/ { { #if 0 SCH_COMPONENT* new_item = new SCH_COMPONENT( m_Pos ); new_item->m_Multi = m_Multi; new_item->m_ChipName = m_ChipName; new_item->m_PrefixString = m_PrefixString; new_item->m_Convert = m_Convert; new_item->m_Transform[0][0] = m_Transform[0][0]; new_item->m_Transform[0][1] = m_Transform[0][1]; new_item->m_Transform[1][0] = m_Transform[1][0]; new_item->m_Transform[1][1] = m_Transform[1][1]; new_item->m_TimeStamp = m_TimeStamp; new_item->m_Fields = m_Fields; #else SCH_COMPONENT* new_item = new SCH_COMPONENT( *this ); SCH_COMPONENT* new_item = new SCH_COMPONENT( *this ); // Reset chain pointers: #endif new_item->Pback = new_item->Pnext = new_item->m_Son = NULL; // Reparent items after copy: for( int ii = 0; ii < new_item->GetFieldCount(); ++ii ) { new_item->GetField(ii)->m_Parent = new_item; } return new_item; return new_item; } } Loading Loading @@ -785,7 +782,6 @@ void SCH_COMPONENT::Show( int nestLevel, std::ostream& os ) #endif #endif /****************************************/ /****************************************/ bool SCH_COMPONENT::Save( FILE* f ) const bool SCH_COMPONENT::Save( FILE* f ) const /****************************************/ /****************************************/ Loading Loading
eeschema/component_class.cpp +34 −38 Original line number Original line Diff line number Diff line Loading @@ -50,6 +50,7 @@ SCH_COMPONENT::SCH_COMPONENT( const wxPoint& aPos, SCH_ITEM* aParent ) : field.SetLayer( LAYER_REFERENCEPART ); field.SetLayer( LAYER_REFERENCEPART ); else if( i==VALUE ) else if( i==VALUE ) field.SetLayer( LAYER_VALUEPART ); field.SetLayer( LAYER_VALUEPART ); // else keep LAYER_FIELDS from SCH_CMP_FIELD constructor // else keep LAYER_FIELDS from SCH_CMP_FIELD constructor // SCH_CMP_FIELD's implicitly created copy constructor is called in here // SCH_CMP_FIELD's implicitly created copy constructor is called in here Loading @@ -59,7 +60,6 @@ SCH_COMPONENT::SCH_COMPONENT( const wxPoint& aPos, SCH_ITEM* aParent ) : m_PrefixString = wxString( _( "U" ) ); m_PrefixString = wxString( _( "U" ) ); } } /** /** * Function AddHierarchicalReference * Function AddHierarchicalReference * adds a full hierachical reference (path + local reference) * adds a full hierachical reference (path + local reference) Loading Loading @@ -399,6 +399,17 @@ void SCH_COMPONENT::SwapData( SCH_COMPONENT* copyitem ) EXCHG( m_Transform[1][1], copyitem->m_Transform[1][1] ); EXCHG( m_Transform[1][1], copyitem->m_Transform[1][1] ); m_Fields.swap( copyitem->m_Fields ); // std::vector's swap() m_Fields.swap( copyitem->m_Fields ); // std::vector's swap() // Reparent items after copying data (after swap() m_Pareny member does not points the right parent): for( int ii = 0; ii < copyitem->GetFieldCount(); ++ii ) { copyitem->GetField(ii)->m_Parent = copyitem; } for( int ii = 0; ii < GetFieldCount(); ++ii ) { GetField(ii)->m_Parent = this; } } } Loading Loading @@ -487,7 +498,6 @@ void SCH_COMPONENT::ClearAnnotation( DrawSheetPath* aSheet ) // UpdateAllScreenReferences for the active sheet. // UpdateAllScreenReferences for the active sheet. // But this call cannot made here. // But this call cannot made here. m_Fields[REFERENCE].m_Text = defRef; //for drawing. m_Fields[REFERENCE].m_Text = defRef; //for drawing. } } Loading @@ -495,27 +505,14 @@ void SCH_COMPONENT::ClearAnnotation( DrawSheetPath* aSheet ) SCH_COMPONENT* SCH_COMPONENT::GenCopy() SCH_COMPONENT* SCH_COMPONENT::GenCopy() /**************************************************************/ /**************************************************************/ { { #if 0 SCH_COMPONENT* new_item = new SCH_COMPONENT( m_Pos ); new_item->m_Multi = m_Multi; new_item->m_ChipName = m_ChipName; new_item->m_PrefixString = m_PrefixString; new_item->m_Convert = m_Convert; new_item->m_Transform[0][0] = m_Transform[0][0]; new_item->m_Transform[0][1] = m_Transform[0][1]; new_item->m_Transform[1][0] = m_Transform[1][0]; new_item->m_Transform[1][1] = m_Transform[1][1]; new_item->m_TimeStamp = m_TimeStamp; new_item->m_Fields = m_Fields; #else SCH_COMPONENT* new_item = new SCH_COMPONENT( *this ); SCH_COMPONENT* new_item = new SCH_COMPONENT( *this ); // Reset chain pointers: #endif new_item->Pback = new_item->Pnext = new_item->m_Son = NULL; // Reparent items after copy: for( int ii = 0; ii < new_item->GetFieldCount(); ++ii ) { new_item->GetField(ii)->m_Parent = new_item; } return new_item; return new_item; } } Loading Loading @@ -785,7 +782,6 @@ void SCH_COMPONENT::Show( int nestLevel, std::ostream& os ) #endif #endif /****************************************/ /****************************************/ bool SCH_COMPONENT::Save( FILE* f ) const bool SCH_COMPONENT::Save( FILE* f ) const /****************************************/ /****************************************/ Loading