Performance improvements.
This commit is contained in:
parent
7138e8a62e
commit
94a23971cc
|
@ -208,32 +208,32 @@ bool collidesWithCourtyard( BOARD_ITEM* aItem, std::shared_ptr<SHAPE>& aItemShap
|
||||||
|
|
||||||
|
|
||||||
static bool searchFootprints( BOARD* aBoard, const wxString& aArg, PCB_EXPR_CONTEXT* aCtx,
|
static bool searchFootprints( BOARD* aBoard, const wxString& aArg, PCB_EXPR_CONTEXT* aCtx,
|
||||||
std::function<bool( FOOTPRINT* )> aFunc )
|
const std::function<bool( FOOTPRINT* )>& aFunc )
|
||||||
{
|
{
|
||||||
if( aArg == wxT( "A" ) )
|
if( aArg == wxT( "A" ) )
|
||||||
{
|
{
|
||||||
FOOTPRINT* fp = dynamic_cast<FOOTPRINT*>( aCtx->GetItem( 0 ) );
|
FOOTPRINT* fp = dynamic_cast<FOOTPRINT*>( aCtx->GetItem( 0 ) );
|
||||||
|
|
||||||
if( fp && aFunc( fp ) )
|
if( fp && aFunc( fp ) )
|
||||||
return 1.0;
|
return true;
|
||||||
}
|
}
|
||||||
else if( aArg == wxT( "B" ) )
|
else if( aArg == wxT( "B" ) )
|
||||||
{
|
{
|
||||||
FOOTPRINT* fp = dynamic_cast<FOOTPRINT*>( aCtx->GetItem( 1 ) );
|
FOOTPRINT* fp = dynamic_cast<FOOTPRINT*>( aCtx->GetItem( 1 ) );
|
||||||
|
|
||||||
if( fp && aFunc( fp ) )
|
if( fp && aFunc( fp ) )
|
||||||
return 1.0;
|
return true;
|
||||||
}
|
}
|
||||||
else for( FOOTPRINT* fp : aBoard->Footprints() )
|
else for( FOOTPRINT* fp : aBoard->Footprints() )
|
||||||
{
|
{
|
||||||
if( fp->GetReference().Matches( aArg ) )
|
if( fp->GetReference().Matches( aArg ) )
|
||||||
{
|
{
|
||||||
if( aFunc( fp ) )
|
if( aFunc( fp ) )
|
||||||
return 1.0;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0.0;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -522,7 +522,7 @@ bool collidesWithArea( BOARD_ITEM* aItem, PCB_EXPR_CONTEXT* aCtx, ZONE* aArea )
|
||||||
|
|
||||||
|
|
||||||
bool searchAreas( BOARD* aBoard, const wxString& aArg, PCB_EXPR_CONTEXT* aCtx,
|
bool searchAreas( BOARD* aBoard, const wxString& aArg, PCB_EXPR_CONTEXT* aCtx,
|
||||||
std::function<bool( ZONE* )> aFunc )
|
const std::function<bool( ZONE* )>& aFunc )
|
||||||
{
|
{
|
||||||
if( aArg == wxT( "A" ) )
|
if( aArg == wxT( "A" ) )
|
||||||
{
|
{
|
||||||
|
@ -555,7 +555,7 @@ bool searchAreas( BOARD* aBoard, const wxString& aArg, PCB_EXPR_CONTEXT* aCtx,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0.0;
|
return false;
|
||||||
}
|
}
|
||||||
else // Match on zone name
|
else // Match on zone name
|
||||||
{
|
{
|
||||||
|
|
|
@ -128,7 +128,7 @@ public:
|
||||||
void SetLayerSet( LSET aLayerSet ) override;
|
void SetLayerSet( LSET aLayerSet ) override;
|
||||||
virtual LSET GetLayerSet() const override { return m_layerSet; }
|
virtual LSET GetLayerSet() const override { return m_layerSet; }
|
||||||
|
|
||||||
wxString GetZoneName() const { return m_zoneName; }
|
const wxString& GetZoneName() const { return m_zoneName; }
|
||||||
void SetZoneName( const wxString& aName ) { m_zoneName = aName; }
|
void SetZoneName( const wxString& aName ) { m_zoneName = aName; }
|
||||||
|
|
||||||
bool Matches( const EDA_SEARCH_DATA& aSearchData, void* aAuxData ) const override
|
bool Matches( const EDA_SEARCH_DATA& aSearchData, void* aAuxData ) const override
|
||||||
|
|
Loading…
Reference in New Issue