224 if( (
unsigned)ndx < (
unsigned)
GetCount() )
439 #if defined(USE_MATCH_LAYER) 440 m_IncludeSecondary =
false;
678 #endif // COLLECTORS_H virtual bool IsLayerLocked(PCB_LAYER_ID layer) const =0
void SetIgnoreTracks(bool ignore)
static const KICAD_T FootprintItems[]
A scan list for primary footprint items.
static const KICAD_T BoardLevelItems[]
A scan list for all primary board items, omitting items which are subordinate to a FOOTPRINT,...
virtual bool IgnoreBlindBuriedVias() const =0
COLLECTOR class definition.
void SetOnePixelInIU(double aValue)
void SetLayerLocked(PCB_LAYER_ID aLayerId, bool isLocked)
bool m_ignoreBlindBuriedVias
static const KICAD_T AllBoardItems[]
A scan list for all editable board items.
void SetIgnoreBlindBuriedVias(bool ignore)
static const KICAD_T Tracks[]
A scan list for only TRACKs.
static const KICAD_T Footprints[]
A scan list for only FOOTPRINTs.
BOARD_ITEM * operator[](int ndx) const override
Overload the COLLECTOR::operator[](int) to return a BOARD_ITEM instead of an EDA_ITEM.
bool IgnoreFPReferences() const override
bool m_ignoreLockedLayers
SEARCH_RESULT Inspect(EDA_ITEM *testItem, void *testData) override
The examining function within the INSPECTOR which is passed to the iterate function.
A base class for any item which can be embedded within the BOARD container class, and therefore insta...
VECTOR2D ToWorld(const VECTOR2D &aCoord, bool aAbsolute=true) const
Converts a screen space point/vector to a point/vector in world space coordinates.
bool IgnoreMicroVias() const override
void SetScanTypes(const KICAD_T *scanTypes)
Record the list of KICAD_T types to consider for collection by the Inspect() function.
void Collect(BOARD_ITEM *aItem, const KICAD_T aScanList[], const wxPoint &aRefPos, const COLLECTORS_GUIDE &aGuide)
Scan a BOARD_ITEM using this class's Inspector method, which does the collection.
virtual double OnePixelInIU() const =0
void SetIgnoreModulesVals(bool ignore)
void SetIgnoreMicroVias(bool ignore)
void SetIgnoreModulesOnBack(bool ignore)
void SetIgnorePreferredLayer(bool ignore)
bool IgnoreFPTextOnBack() const override
virtual bool IgnoreFootprintsOnBack() const =0
bool m_ignoreFootprintsOnFront
virtual bool IgnoreZoneFills() const =0
virtual bool IgnoreNonVisibleLayers() const =0
void Append2nd(BOARD_ITEM *item)
bool IgnoreThroughVias() const override
void SetIgnoreModulesRefs(bool ignore)
virtual PCB_LAYER_ID GetPreferredLayer() const =0
virtual bool IgnoreFPTextOnFront() const =0
std::vector< EDA_ITEM * > m_list
void Collect(BOARD_ITEM *aBoard, const KICAD_T aScanList[])
Tests a BOARD_ITEM using this class's Inspector method, which does the collection.
virtual bool IgnoreTracks() const =0
std::vector< BOARD_ITEM * > m_List2nd
A place to hold collected objects which don't match precisely the search criteria,...
virtual bool IgnoreFootprintsOnFront() const =0
double OnePixelInIU() const override
virtual bool IgnoreMicroVias() const =0
static const KICAD_T PadsOrTracks[]
A scan list for PADs, TRACKs, or VIAs.
Collect all BOARD_ITEM objects on a given layer.
bool IgnorePadsOnBack() const override
int m_PrimaryLength
The number of items that were originally in the primary list before the m_List2nd was concatenated on...
PCB_LAYER_ID GetPreferredLayer() const override
bool IgnorePreferredLayer() const override
Provide wildcard behavior regarding the preferred layer.
virtual bool IgnoreHiddenFPText() const =0
virtual bool IgnorePreferredLayer() const =0
Provide wildcard behavior regarding the preferred layer.
bool m_ignoreHiddenFPText
void SetLayerId(PCB_LAYER_ID aLayerId)
KICAD_T
The set of class identification values stored in EDA_ITEM::m_structType.
virtual bool IgnorePadsOnFront() const =0
void SetGuide(const COLLECTORS_GUIDE *aGuide)
Record which COLLECTORS_GUIDE to use.
virtual bool IgnoreThroughHolePads() const =0
void SetLayerVisibleBits(LSET aLayerBits)
int GetCount() const
Return the number of objects in the list.
SEARCH_RESULT Inspect(EDA_ITEM *testItem, void *testData) override
The examining function within the INSPECTOR which is passed to the Iterate function.
PCB_LAYER_ID
A quick note on layer IDs:
void SetPreferredLayer(PCB_LAYER_ID aLayer)
const COLLECTORS_GUIDE * GetGuide() const
bool IgnoreFootprintsOnFront() const override
LSET is a set of PCB_LAYER_IDs.
void SetIgnoreMTextsOnBack(bool ignore)
void SetIgnorePadsOnFront(bool ignore)
LSET m_lockedLayers
bit-mapped layer locked bits
void SetIgnoreMTextsOnFront(bool ignore)
void SetLayerVisible(PCB_LAYER_ID aLayerId, bool isVisible)
bool IgnoreFPTextOnFront() const override
bool IgnoreZoneFills() const override
Collect BOARD_ITEM objects.
bool m_ignoreFPTextOnBack
bool IgnoreTracks() const override
static const KICAD_T Zones[]
A scan list for zones outlines only.
const COLLECTORS_GUIDE * m_Guide
Determines which items are to be collected by Inspect()
bool IgnoreThroughHolePads() const override
void SetIgnoreMTextsMarkedNoShow(bool ignore)
LSET m_visibleLayers
bit-mapped layer visible bits
bool m_ignoreNonVisibleLayers
bool m_ignoreFPTextOnFront
void Collect(BOARD_ITEM *aBoard, const KICAD_T aScanList[])
Collect BOARD_ITEM objects using this class's Inspector method, which does the collection.
virtual bool IgnoreThroughVias() const =0
bool IgnoreFootprintsOnBack() const override
bool IsLayerLocked(PCB_LAYER_ID aLayerId) const override
bool m_ignoreFPReferences
bool IgnoreLockedLayers() const override
static const KICAD_T LockableItems[]
A scan list for TRACKs, VIAs, FOOTPRINTs.
bool IsLayerVisible(PCB_LAYER_ID aLayerId) const override
static const KICAD_T DraggableItems[]
A scan list for items that can be dragged.
virtual bool IgnoreFPTextOnBack() const =0
GENERAL_COLLECTORS_GUIDE(LSET aVisibleLayerMask, PCB_LAYER_ID aPreferredLayer, KIGFX::VIEW *aView)
Grab stuff from global preferences and uses reasonable defaults.
bool m_ignoreFootprintsOnBack
bool IgnoreBlindBuriedVias() const override
bool IgnoreHiddenFPText() const override
bool IgnoreLockedItems() const override
bool IgnoreFPValues() const override
Board layer functions and definitions.
static const KICAD_T Dimensions[]
A scan list for dimensions.
virtual bool IgnorePads() const
PCB_LAYER_COLLECTOR(PCB_LAYER_ID aLayerId=UNDEFINED_LAYER)
void SetIgnoreModulesOnFront(bool ignore)
Used when the right click button is pressed, or when the select tool is in effect.
void SetIgnoreLockedItems(bool ignore)
void SetIgnoreThroughVias(bool ignore)
GENERAL_COLLECTOR()
Constructor GENERALCOLLECTOR.
virtual bool IgnoreFPValues() const =0
bool m_ignoreThroughHolePads
A base class for most all the KiCad significant classes used in schematics and boards.
An abstract class that will find and hold all the objects according to an inspection done by the Insp...
bool IgnoreNonVisibleLayers() const override
virtual bool IsLayerVisible(PCB_LAYER_ID layer) const =0
virtual bool IgnoreFPReferences() const =0
bool m_ignorePreferredLayer
virtual bool IgnorePadsOnBack() const =0
PCB_LAYER_ID m_preferredLayer
An abstract base class whose derivatives may be passed to a GENERAL_COLLECTOR, telling GENERAL_COLLEC...
bool IgnorePadsOnFront() const override
virtual bool IgnoreLockedItems() const =0
void SetIgnoreLockedLayers(bool ignore)
Hold a (potentially large) number of VIEW_ITEMs and renders them on a graphics device provided by the...
virtual bool IgnoreLockedLayers() const =0
Collect all BOARD_ITEM objects of a given set of KICAD_T type(s).
A general implementation of a COLLECTORS_GUIDE.
virtual bool IncludeSecondary() const =0
Determine if the secondary criteria or 2nd choice items should be included.
void SetIgnoreNonVisibleLayers(bool ignore)
SEARCH_RESULT Inspect(EDA_ITEM *testItem, void *testData) override
The examining function within the INSPECTOR which is passed to the Iterate function.
bool IncludeSecondary() const override
Determine if the secondary criteria, or 2nd choice items should be included.
void SetIgnoreThroughHolePads(bool ignore)
void SetIgnoreZoneFills(bool ignore)
void SetIncludeSecondary(bool include)
virtual ~COLLECTORS_GUIDE()
void SetIgnorePadsOnBack(bool ignore)