KiCad PCB EDA Suite
Loading...
Searching...
No Matches
SCH_ALIGNMENT_CALLBACKS Struct Reference

Callbacks for alignment operations. More...

#include <sch_item_alignment.h>

Public Attributes

std::function< void(EDA_ITEM *aItem, const VECTOR2I &aDelta)> m_doMoveItem
 Callback to move an item by a delta.
 
std::function< void(SCH_ITEM *aItem, const VECTOR2I &aPoint, EDA_ITEMS &aList)> m_getConnectedDragItems
 Callback to get items connected to a given item at a specific point.
 
std::function< void(EDA_ITEM *aItem)> m_updateItem
 Optional callback to update an item's display after modification.
 

Detailed Description

Callbacks for alignment operations.

These allow the alignment logic to be separated from the tool infrastructure, making it testable in isolation.

Definition at line 46 of file sch_item_alignment.h.

Member Data Documentation

◆ m_doMoveItem

std::function<void( EDA_ITEM* aItem, const VECTOR2I& aDelta )> SCH_ALIGNMENT_CALLBACKS::m_doMoveItem

Callback to move an item by a delta.

Responsible for committing the change and updating the display.

Definition at line 52 of file sch_item_alignment.h.

Referenced by AlignSchematicItemsToGrid(), SCH_MOVE_TOOL::AlignToGrid(), BOOST_FIXTURE_TEST_CASE(), ISSUE22864_FIXTURE::RunAlignmentAndVerify(), and ISSUE22864_FIXTURE::RunAlignmentAndVerifyNoSkew().

◆ m_getConnectedDragItems

std::function<void( SCH_ITEM* aItem, const VECTOR2I& aPoint, EDA_ITEMS& aList )> SCH_ALIGNMENT_CALLBACKS::m_getConnectedDragItems

Callback to get items connected to a given item at a specific point.

These are the "drag items" that should move along with the primary item.

Definition at line 58 of file sch_item_alignment.h.

Referenced by AlignSchematicItemsToGrid(), SCH_MOVE_TOOL::AlignToGrid(), BOOST_FIXTURE_TEST_CASE(), ISSUE22864_FIXTURE::RunAlignmentAndVerify(), and ISSUE22864_FIXTURE::RunAlignmentAndVerifyNoSkew().

◆ m_updateItem

std::function<void( EDA_ITEM* aItem )> SCH_ALIGNMENT_CALLBACKS::m_updateItem

Optional callback to update an item's display after modification.

Used for operations like SetSize that don't go through m_doMoveItem.

Definition at line 64 of file sch_item_alignment.h.

Referenced by AlignSchematicItemsToGrid(), and SCH_MOVE_TOOL::AlignToGrid().


The documentation for this struct was generated from the following file: