|
KiCad PCB EDA Suite
|
#include "tools/position_relative_tool.h"#include <set>#include <board_commit.h>#include <collectors.h>#include <dialogs/dialog_position_relative.h>#include <dialogs/dialog_offset_item.h>#include <footprint.h>#include <footprint_editor_settings.h>#include <gal/graphics_abstraction_layer.h>#include <kiplatform/ui.h>#include <pad.h>#include <pcb_group.h>#include <preview_items/two_point_assistant.h>#include <preview_items/two_point_geom_manager.h>#include <pcb_painter.h>#include <pgm_base.h>#include <preview_items/ruler_item.h>#include <render_settings.h>#include <settings/settings_manager.h>#include <status_popup.h>#include <tools/pcb_actions.h>#include <tools/pcb_grid_helper.h>#include <tools/pcb_selection_tool.h>#include <tools/pcb_picker_tool.h>#include <view/view_controls.h>Go to the source code of this file.
Functions | |
| static void | moveSelectionBy (const PCB_SELECTION &aSelection, const VECTOR2I &aMoveVec, BOARD_COMMIT &commit, bool aAllowFreePads) |
| Move each item in the selection by the given vector. | |
|
static |
Move each item in the selection by the given vector.
Pads that belong to footprints are promoted to their parent footprint so the whole footprint moves. A dedup set ensures each footprint is only moved once even when multiple of its pads are in the selection.
| aAllowFreePads | when true, pads are moved individually without promotion. |
Definition at line 62 of file position_relative_tool.cpp.
References BOARD_ITEM::GetParent(), COMMIT::Modify(), BOARD_ITEM::Move(), moved, PCB_PAD_T, RECURSE, and EDA_ITEM::Type().
Referenced by POSITION_RELATIVE_TOOL::InteractiveOffset(), and POSITION_RELATIVE_TOOL::RelativeItemSelectionMove().