125 m_tracker.HandleItemChanged( aItem, updated );
131 m_tracker.HandleItemChanged( aItem, {} );
137 for(
PCB_FIELD* field : fp->GetFields() )
139 std::vector<TEXT_VAR_REF_KEY> fieldRefs =
FilterTrackable( field->GetTextVarReferences() );
140 m_tracker.RegisterItem( field, fieldRefs );
145 for(
BOARD_ITEM* child : fp->GraphicalItems() )
void OnBoardItemsAdded(BOARD &aBoard, std::vector< BOARD_ITEM * > &aItems) override
void OnBoardItemRemoved(BOARD &aBoard, BOARD_ITEM *aItem) override
void OnBoardCompositeUpdate(BOARD &aBoard, std::vector< BOARD_ITEM * > &aAdded, std::vector< BOARD_ITEM * > &aRemoved, std::vector< BOARD_ITEM * > &aChanged) override
void OnBoardItemsChanged(BOARD &aBoard, std::vector< BOARD_ITEM * > &aItems) override
void unregisterItem(BOARD_ITEM *aItem)
BOARD_TEXT_VAR_ADAPTER(BOARD &aBoard)
void OnBoardItemChanged(BOARD &aBoard, BOARD_ITEM *aItem) override
void OnBoardItemsRemoved(BOARD &aBoard, std::vector< BOARD_ITEM * > &aItems) override
void registerItem(BOARD_ITEM *aItem)
TEXT_VAR_TRACKER m_tracker
void RebuildIndex()
Scan the whole board and register every text-bearing item.
void OnBoardItemAdded(BOARD &aBoard, BOARD_ITEM *aItem) override
std::vector< TEXT_VAR_REF_KEY > ExtractSourceKeys(EDA_ITEM *aItem) const
Return the keys aItem could source as a cross-reference target.
A mix-in class (via multiple inheritance) that handles texts such as labels, parts,...
Identifies a single resolvable source that a text item's ${...} reference depends on.
std::vector< TEXT_VAR_REF_KEY > FilterTrackable(const std::vector< TEXT_VAR_REF_KEY > &aRefs)
Filter aRefs down to the subset that should be registered in the index (drops OP and any future non-t...