mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-04-21 10:31:40 +00:00
Revert "Allow a no-connect to connect to a single pin (but not multiple pins)."
This reverts commit ee4a6127c6
.
This commit is contained in:
parent
0fae6a0db0
commit
2b557c5497
@ -1332,8 +1332,8 @@ void CONNECTION_GRAPH::updateItemConnectivity( const SCH_SHEET_PATH& aSheet,
|
||||
bus_connection_ok = !busLine || connected_item->GetLayer() == LAYER_BUS;
|
||||
}
|
||||
|
||||
if( connected_item->ConnectionPropagatesTo( aSheet, test_item ) &&
|
||||
test_item->ConnectionPropagatesTo( aSheet, connected_item ) &&
|
||||
if( connected_item->ConnectionPropagatesTo( test_item ) &&
|
||||
test_item->ConnectionPropagatesTo( connected_item ) &&
|
||||
bus_connection_ok )
|
||||
{
|
||||
connected_item->AddConnectionTo( aSheet, test_item );
|
||||
|
@ -541,8 +541,7 @@ bool SCH_BUS_ENTRY_BASE::operator <( const SCH_ITEM& aItem ) const
|
||||
}
|
||||
|
||||
|
||||
bool SCH_BUS_WIRE_ENTRY::ConnectionPropagatesTo( const SCH_SHEET_PATH& aSheet,
|
||||
const SCH_ITEM* aItem ) const
|
||||
bool SCH_BUS_WIRE_ENTRY::ConnectionPropagatesTo( const EDA_ITEM* aItem ) const
|
||||
{
|
||||
// Don't generate connections between bus entries and buses, since there is
|
||||
// a connectivity change at that point (e.g. A[7..0] to A7)
|
||||
|
@ -198,8 +198,7 @@ public:
|
||||
|
||||
EDA_ITEM* Clone() const override;
|
||||
|
||||
virtual bool ConnectionPropagatesTo( const SCH_SHEET_PATH& aSheet,
|
||||
const SCH_ITEM* aItem ) const override;
|
||||
virtual bool ConnectionPropagatesTo( const EDA_ITEM* aItem ) const override;
|
||||
|
||||
BITMAPS GetMenuImage() const override;
|
||||
|
||||
|
@ -515,11 +515,7 @@ public:
|
||||
/**
|
||||
* Return true if this item should propagate connection info to \a aItem.
|
||||
*/
|
||||
virtual bool ConnectionPropagatesTo( const SCH_SHEET_PATH& aSheet,
|
||||
const SCH_ITEM* aItem ) const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
virtual bool ConnectionPropagatesTo( const EDA_ITEM* aItem ) const { return true; }
|
||||
|
||||
bool IsConnectivityDirty() const { return m_connectivity_dirty; }
|
||||
|
||||
|
@ -670,7 +670,7 @@ std::vector<VECTOR2I> SCH_LINE::GetConnectionPoints() const
|
||||
}
|
||||
|
||||
|
||||
bool SCH_LINE::ConnectionPropagatesTo( const SCH_SHEET_PATH& aSheet, const SCH_ITEM* aItem ) const
|
||||
bool SCH_LINE::ConnectionPropagatesTo( const EDA_ITEM* aItem ) const
|
||||
{
|
||||
switch( aItem->Type() )
|
||||
{
|
||||
|
@ -277,8 +277,7 @@ public:
|
||||
|
||||
std::vector<VECTOR2I> GetConnectionPoints() const override;
|
||||
|
||||
bool ConnectionPropagatesTo( const SCH_SHEET_PATH& aSheet,
|
||||
const SCH_ITEM* aItem ) const override;
|
||||
bool ConnectionPropagatesTo( const EDA_ITEM* aItem ) const override;
|
||||
|
||||
void GetSelectedPoints( std::vector<VECTOR2I>& aPoints ) const;
|
||||
|
||||
|
@ -1387,19 +1387,13 @@ bool SCH_PIN::HasConnectivityChanges( const SCH_ITEM* aItem,
|
||||
}
|
||||
|
||||
|
||||
bool SCH_PIN::ConnectionPropagatesTo( const SCH_SHEET_PATH& aSheet, const SCH_ITEM* aItem ) const
|
||||
bool SCH_PIN::ConnectionPropagatesTo( const EDA_ITEM* aItem ) const
|
||||
{
|
||||
if( !m_libPin )
|
||||
return false;
|
||||
|
||||
if( m_libPin->GetType() == ELECTRICAL_PINTYPE::PT_NC )
|
||||
{
|
||||
// A no-connect can be connected to a single pin. It is not allowed to connect
|
||||
// multiple pins together.
|
||||
return aItem->Connection( &aSheet )->Members().empty();
|
||||
}
|
||||
|
||||
return true;
|
||||
// Reciprocal checking is done in CONNECTION_GRAPH anyway
|
||||
return m_libPin->GetType() != ELECTRICAL_PINTYPE::PT_NC;
|
||||
}
|
||||
|
||||
|
||||
|
@ -295,8 +295,7 @@ public:
|
||||
return m_isDangling && GetPosition() == aPos;
|
||||
}
|
||||
|
||||
bool ConnectionPropagatesTo( const SCH_SHEET_PATH& aSheet,
|
||||
const SCH_ITEM* aItem ) const override;
|
||||
bool ConnectionPropagatesTo( const EDA_ITEM* aItem ) const override;
|
||||
|
||||
const wxString& GetOperatingPoint() const { return m_operatingPoint; }
|
||||
void SetOperatingPoint( const wxString& aText ) { m_operatingPoint = aText; }
|
||||
|
Loading…
Reference in New Issue
Block a user