KiCad PCB EDA Suite
|
#include <sch_move_tool.h>
Public Types | |
enum | RESET_REASON { RUN , MODEL_RELOAD , SUPERMODEL_RELOAD , GAL_SWITCH , REDRAW , SHUTDOWN } |
Determine the reason of reset for a tool. More... | |
Public Member Functions | |
SCH_MOVE_TOOL () | |
~SCH_MOVE_TOOL () override | |
bool | Init () override |
Init() is called once upon a registration of the tool. | |
int | Main (const TOOL_EVENT &aEvent) |
Run an interactive move of the selected items, or the item under the cursor. | |
int | AlignToGrid (const TOOL_EVENT &aEvent) |
Align selected elements to the grid. | |
void | Reset (RESET_REASON aReason) override |
Bring the tool to a known, initial state. | |
bool | IsSymbolEditor () const |
Returns true if the tool is running in the symbol editor. | |
int | Increment (const TOOL_EVENT &aEvent) |
int | InteractiveDelete (const TOOL_EVENT &aEvent) |
void | Activate () |
Run the tool. | |
TOOL_MENU & | GetToolMenu () |
void | SetContextMenu (ACTION_MENU *aMenu, CONTEXT_MENU_TRIGGER aTrigger=CMENU_BUTTON) |
Assign a context menu and tells when it should be activated. | |
void | RunMainStack (std::function< void()> aFunc) |
Call a function using the main stack. | |
template<class T> | |
void | Go (int(T::*aStateFunc)(const TOOL_EVENT &), const TOOL_EVENT_LIST &aConditions=TOOL_EVENT(TC_ANY, TA_ANY)) |
Define which state (aStateFunc) to go when a certain event arrives (aConditions). | |
TOOL_EVENT * | Wait (const TOOL_EVENT_LIST &aEventList=TOOL_EVENT(TC_ANY, TA_ANY)) |
Suspend execution of the tool until an event specified in aEventList arrives. | |
TOOL_TYPE | GetType () const |
Return the type of the tool. | |
TOOL_ID | GetId () const |
Return the unique identifier of the tool. | |
const std::string & | GetName () const |
Return the name of the tool. | |
TOOL_MANAGER * | GetManager () const |
Return the instance of TOOL_MANAGER that takes care of the tool. | |
bool | IsToolActive () const |
Protected Member Functions | |
void | updateItem (EDA_ITEM *aItem, bool aUpdateRTree) const |
Similar to getView()->Update(), but also updates the SCH_SCREEN's RTree. | |
void | saveCopyInUndoList (EDA_ITEM *aItem, UNDO_REDO aType, bool aAppend=false, bool aDirtyConnectivity=true) |
void | attachManager (TOOL_MANAGER *aManager) |
Set the TOOL_MANAGER the tool will belong to. | |
KIGFX::VIEW * | getView () const |
Returns the instance of #VIEW object used in the application. | |
KIGFX::VIEW_CONTROLS * | getViewControls () const |
Return the instance of VIEW_CONTROLS object used in the application. | |
template<typename T> | |
T * | getEditFrame () const |
Return the application window object, casted to requested user type. | |
template<typename T> | |
T * | getModel () const |
Return the model object if it matches the requested type. | |
Protected Attributes | |
SCH_EDIT_FRAME * | m_frame |
KIGFX::SCH_VIEW * | m_view |
SCH_SELECTION_TOOL * | m_selectionTool |
bool | m_isSymbolEditor |
EDA_ITEM * | m_pickerItem |
std::unique_ptr< TOOL_MENU > | m_menu |
The functions below are not yet implemented - their interface may change. | |
TOOL_TYPE | m_type |
TOOL_ID | m_toolId |
Unique id, assigned by a TOOL_MANAGER instance. | |
std::string | m_toolName |
Names are expected to obey the format application.ToolName (eg. | |
TOOL_MANAGER * | m_toolMgr |
Private Member Functions | |
bool | doMoveSelection (const TOOL_EVENT &aEvent, SCH_COMMIT *aCommit, bool aIsSlice) |
void | moveItem (EDA_ITEM *aItem, const VECTOR2I &aDelta) |
Find additional items for a drag operation. | |
void | getConnectedItems (SCH_ITEM *aOriginalItem, const VECTOR2I &aPoint, EDA_ITEMS &aList) |
void | getConnectedDragItems (SCH_COMMIT *aCommit, SCH_ITEM *fixed, const VECTOR2I &selected, EDA_ITEMS &aList) |
void | orthoLineDrag (SCH_COMMIT *aCommit, SCH_LINE *line, const VECTOR2I &splitDelta, int &xBendCount, int &yBendCount, const EE_GRID_HELPER &grid) |
void | moveSelectionToSheet (SCH_SELECTION &aSelection, SCH_SHEET *aTarget, SCH_COMMIT *aCommit) |
Clears the new drag lines and removes them from the screen. | |
void | clearNewDragLines () |
Set up handlers for various events. | |
void | setTransitions () override |
Cleanup dangling lines left after a drag. | |
void | trimDanglingLines (SCH_COMMIT *aCommit) |
void | resetTransitions () |
Clear the current transition map and restores the default one created by setTransitions(). | |
void | goInternal (TOOL_STATE_FUNC &aState, const TOOL_EVENT_LIST &aConditions) |
EDA_ITEM * | getModelInternal () const |
TOOLS_HOLDER * | getToolHolderInternal () const |
Private Attributes | |
bool | m_inMoveTool |
< Re-entrancy guard | |
bool | m_moveInProgress |
bool | m_isDrag |
Items (such as wires) which were added to the selection for a drag. | |
std::vector< KIID > | m_dragAdditions |
Cache of the line's original connections before dragging started. | |
std::map< SCH_LINE *, EDA_ITEMS > | m_lineConnectionCache |
Lines added at bend points dynamically during the move. | |
std::unordered_set< SCH_LINE * > | m_newDragLines |
Lines changed by drag algorithm that weren't selected. | |
std::unordered_set< SCH_LINE * > | m_changedDragLines |
Junctions that were hidden during the move. | |
std::vector< SCH_JUNCTION * > | m_hiddenJunctions |
VECTOR2I | m_moveOffset |
Last cursor position (needed for getModificationPoint() to avoid changes of edit reference point). | |
VECTOR2I | m_cursor |
OPT_VECTOR2I | m_anchorPos |
std::map< SCH_LABEL_BASE *, SPECIAL_CASE_LABEL_INFO > | m_specialCaseLabels |
std::map< SCH_SHEET_PIN *, std::pair< SCH_LINE *, bool > > | m_specialCaseSheetPins |
Definition at line 50 of file sch_move_tool.h.
|
inherited |
Determine the reason of reset for a tool.
Definition at line 77 of file tool_base.h.
SCH_MOVE_TOOL::SCH_MOVE_TOOL | ( | ) |
Definition at line 59 of file sch_move_tool.cpp.
References m_inMoveTool, m_isDrag, m_moveInProgress, m_moveOffset, and SCH_TOOL_BASE< SCH_EDIT_FRAME >::SCH_TOOL_BASE().
|
inlineoverride |
Definition at line 54 of file sch_move_tool.h.
|
inherited |
Run the tool.
After activation, the tool starts receiving events until it is finished.
Definition at line 65 of file tool_interactive.cpp.
References TOOL_BASE::m_toolId, and TOOL_BASE::m_toolMgr.
Referenced by AUTOPLACE_TOOL::autoplace(), EDIT_TOOL::copyToClipboard(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::DrawArc(), DRAWING_TOOL::DrawBezier(), DRAWING_TOOL::DrawCircle(), DRAWING_TOOL::DrawDimension(), DRAWING_TOOL::DrawLine(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::DrawRectangle(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), BOARD_EDITOR_CONTROL::DrillOrigin(), PAD_TOOL::EditPad(), PAD_TOOL::EnumeratePads(), PCB_CONTROL::GridPlaceOrigin(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), PCB_CONTROL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), SCH_TOOL_BASE< T >::InteractiveDelete(), BOARD_INSPECTION_TOOL::LocalRatsnestTool(), PCB_PICKER_TOOL::Main(), PICKER_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_POINT_EDITOR::Main(), ROUTER_TOOL::MainLoop(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), PCB_POINT_EDITOR::OnSelectionChange(), PCB_GROUP_TOOL::PickNewMember(), SCH_GROUP_TOOL::PickNewMember(), BOARD_EDITOR_CONTROL::PlaceFootprint(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), EDIT_TOOL::Remove(), ROUTER_TOOL::RouteSelected(), PCB_PICKER_TOOL::SelectItemInteractively(), PCB_PICKER_TOOL::SelectPointInteractively(), DRAWING_TOOL::SetAnchor(), and DRC_TOOL::ShowDRCDialog().
int SCH_MOVE_TOOL::AlignToGrid | ( | const TOOL_EVENT & | aEvent | ) |
Align selected elements to the grid.
aEvent | current event that activated the tool |
Definition at line 1888 of file sch_move_tool.cpp.
References _, SCH_LINE_WIRE_BUS_TOOL::AddJunctionsIfNeeded(), EDA_ITEM::ClearFlags(), delta, ENDPOINT, getConnectedDragItems(), SCH_ITEM::GetConnectionPoints(), SCH_LINE::GetEndPoint(), SCH_SHEET::GetPins(), EDA_ITEM::GetPosition(), SCH_SHEET::GetPosition(), SCH_SHEET::GetSize(), SCH_LINE::GetStartPoint(), grid, IS_MOVING, SELECTION::IsHover(), LEFT, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_frame, m_isDrag, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_selectionTool, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_toolMgr, COMMIT::Modify(), SCH_COLLECTOR::MovableItems, moveItem(), pin, SCH_COMMIT::Push(), RECURSE, SCH_FIELD_T, SCH_LINE_T, SCH_SHEET_T, SCH_TEXT_T, SELECTED, EVENTS::SelectedItemsMoved, EDA_ITEM::SetFlags(), SCH_SHEET::SetSize(), STARTPOINT, TOP, SCH_LINE_WIRE_BUS_TOOL::TrimOverLappingWires(), EDA_ITEM::Type(), SCH_TOOL_BASE< SCH_EDIT_FRAME >::updateItem(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by setTransitions().
|
protectedinherited |
Set the TOOL_MANAGER the tool will belong to.
Called by TOOL_MANAGER::RegisterTool()
Definition at line 62 of file tool_base.cpp.
References m_toolMgr, and TOOL_MANAGER.
Referenced by TOOL_MANAGER::RegisterTool().
|
private |
Set up handlers for various events.
Definition at line 2065 of file sch_move_tool.cpp.
References SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_frame, and m_newDragLines.
Referenced by doMoveSelection().
|
private |
Definition at line 410 of file sch_move_tool.cpp.
References _, TOOL_EVENT::Action(), SCH_TOOL_BASE< SCH_EDIT_FRAME >::Activate(), SELECTION::Add(), COMMIT::Added(), SCH_LINE_WIRE_BUS_TOOL::AddJunction(), SCH_LINE_WIRE_BUS_TOOL::AddJunctionsIfNeeded(), BRIGHTENED, BUT_LEFT, BUT_RIGHT, EDA_ITEM::ClearFlags(), clearNewDragLines(), BOX2< Vec >::Contains(), copy, ACTIONS::cursorClick, delta, TOOL_EVENT::DisableGridSnapping(), ACTIONS::doDelete, SCH_ACTIONS::drag, ACTIONS::duplicate, SELECTION::Empty(), ENDPOINT, KIGFX::VIEW_CONTROLS::ForceCursorPosition(), SELECTION::Front(), GetAppSettings(), SCH_SHEET::GetBodyBoundingBox(), SCH_ITEM::GetBodyStyle(), TOOL_EVENT::GetCommandId(), getConnectedDragItems(), getConnectedItems(), SCH_ITEM::GetConnectionPoints(), SCH_LINE::GetConnectionPoints(), KIGFX::VIEW_CONTROLS::GetCursorPosition(), BOX2< Vec >::GetHeight(), SELECTION::GetItemsSortedByTypeAndXY(), EDA_ITEM::GetParent(), EDA_ITEM::GetParentGroup(), EDA_ITEM::GetPosition(), SELECTION::GetReferencePoint(), SELECTION::GetSize(), SCH_TOOL_BASE< SCH_EDIT_FRAME >::getView(), SCH_TOOL_BASE< SCH_EDIT_FRAME >::getViewControls(), BOX2< Vec >::GetWidth(), BOX2< Vec >::GetX(), BOX2< Vec >::GetY(), grid, GRID_CURRENT, EDA_ITEM::HasFlag(), TOOL_EVENT::HasParameter(), SELECTION::HasReferencePoint(), SCH_ACTIONS::highlightNet, ID_POPUP_SCH_SELECT_BODY_STYLE, ID_POPUP_SCH_SELECT_BODY_STYLE_END, ID_POPUP_SCH_SELECT_UNIT, ID_POPUP_SCH_SELECT_UNIT_END, ACTIONS::increment, IS_MOVING, IS_PASTED, TOOL_EVENT::IsAction(), TOOL_EVENT::IsActivate(), TOOL_EVENT::IsCancelInteractive(), TOOL_EVENT::IsClick(), TOOL_EVENT::IsDblClick(), TOOL_EVENT::IsDrag(), SCH_ITEM::IsGroupableType(), SELECTION::IsHover(), TOOL_EVENT::IsMotion(), TOOL_EVENT::IsMouseUp(), SCH_ITEM::IsMovableFromAnchorPoint(), EDA_ITEM::IsNew(), SCH_SHEET::IsRootSheet(), EDA_ITEM::IsSelected(), LINE_MODE_FREE, m_anchorPos, m_changedDragLines, m_cursor, m_dragAdditions, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_frame, m_hiddenJunctions, m_inMoveTool, m_isDrag, m_lineConnectionCache, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_menu, m_moveInProgress, m_moveOffset, m_newDragLines, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_selectionTool, m_specialCaseLabels, m_specialCaseSheetPins, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_toolMgr, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_view, MD_SHIFT, BOX2< Vec >::Merge(), TOOL_EVENT::Modifier(), COMMIT::Modify(), SCH_COLLECTOR::MovableItems, SCH_ACTIONS::move, moveItem(), moveSelectionToSheet(), MOVING, NO_RECURSE, orthoLineDrag(), TOOL_EVENT::Parameter(), pin, PLACE, JUNCTION_HELPERS::PreviewJunctions(), QUIET_MODE, RECURSE, ACTIONS::redo, ACTIONS::refreshPreview, COMMIT::Removed(), SCH_ACTIONS::repeatDrawItem, SCH_ACTIONS::restartMove, SCH_COMMIT::Revert(), SCH_ACTIONS::rotateCCW, SCH_ACTIONS::rotateCW, SCH_ITEM::RunOnChildren(), SCH_DIRECTIVE_LABEL_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_JUNCTION_T, SCH_LABEL_T, SCH_LINE_T, SCH_PIN_T, SCH_SHEET_T, SCH_SYMBOL_T, SELECTED_BY_DRAG, EVENTS::SelectedItemsMoved, ACTIONS::selectionClear, SCH_ACTIONS::selectOnPCB, KIGFX::VIEW_CONTROLS::SetAutoPan(), KIGFX::VIEW_CONTROLS::SetCursorPosition(), EDA_ITEM::SetFlags(), TOOL_EVENT::SetPassEvent(), SELECTION::SetReferencePoint(), SCH_ITEM::SetStoredPos(), KIGFX::VIEW_CONTROLS::ShowCursor(), alg::signbit(), DANGLING_END_ITEM_HELPER::sort_dangling_end_items(), STARTPOINT, SCH_LINE::StoreAngle(), STRUCT_DELETED, TA_CHOICE_MENU_CHOICE, SCH_ACTIONS::toDLabel, SCH_ACTIONS::toGLabel, SCH_ACTIONS::toHLabel, SCH_ACTIONS::toLabel, SCH_ACTIONS::toText, SCH_ACTIONS::toTextBox, trimDanglingLines(), SCH_LINE_WIRE_BUS_TOOL::TrimOverLappingWires(), EDA_ITEM::Type(), ACTIONS::undo, SCH_TOOL_BASE< SCH_EDIT_FRAME >::updateItem(), and SCH_TOOL_BASE< SCH_EDIT_FRAME >::Wait().
Referenced by Main().
|
private |
Definition at line 1438 of file sch_move_tool.cpp.
References COMMIT::Added(), SCH_LINE::Angle(), ANGLE_90, SCH_ITEM::CanConnect(), SCH_LABEL_BASE::CanConnect(), end, ENDPOINT, EDA_ITEM::GetBoundingBox(), SCH_LINE::GetBoundingBox(), getConnectedDragItems(), SCH_LINE::GetEndPoint(), SCH_SHEET::GetPins(), EDA_ITEM::GetPosition(), SCH_TEXT::GetPosition(), SCH_LINE::GetStartPoint(), EDA_TEXT::GetTextPos(), EDA_ITEM::HasFlag(), SCH_LINE::HitTest(), info, IS_NEW, EDA_ITEM::IsSelected(), LAYER_BUS, LAYER_BUS_JUNCTION, LAYER_WIRE, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_frame, m_lineConnectionCache, m_specialCaseLabels, m_specialCaseSheetPins, COMMIT::Modify(), EE_RTREE::Overlapping(), pin, SCH_BUS_BUS_ENTRY_T, SCH_BUS_WIRE_ENTRY_T, SCH_DIRECTIVE_LABEL_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_JUNCTION_T, SCH_LABEL_T, SCH_LINE_T, SCH_NO_CONNECT_T, SCH_SHEET_PIN_T, SCH_SHEET_T, SCH_SYMBOL_T, SELECTED, SELECTED_BY_DRAG, SCH_ITEM::SetConnectivityDirty(), SCH_LINE::SetEndPoint(), EDA_ITEM::SetFlags(), SCH_JUNCTION::SetLastResolvedState(), SCH_LINE::SetLastResolvedState(), SCH_ITEM::SetLayer(), STARTPOINT, SCH_LINE::StoreAngle(), and EDA_ITEM::Type().
Referenced by AlignToGrid(), doMoveSelection(), and getConnectedDragItems().
|
private |
Definition at line 1304 of file sch_move_tool.cpp.
References ENDPOINT, EDA_ITEM::GetBoundingBox(), SCH_LINE::GetEndPoint(), SCH_TEXT::GetPosition(), SCH_LINE::GetStartPoint(), EDA_ITEM::HasFlag(), SCH_LINE::HitTest(), SCH_ITEM::IsConnected(), SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_frame, m_specialCaseSheetPins, EE_RTREE::Overlapping(), pin, SCH_BUS_BUS_ENTRY_T, SCH_BUS_WIRE_ENTRY_T, SCH_DIRECTIVE_LABEL_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_JUNCTION_T, SCH_LABEL_T, SCH_LINE_T, SCH_NO_CONNECT_T, SCH_SHEET_T, SCH_SYMBOL_T, STARTPOINT, and EDA_ITEM::Type().
Referenced by doMoveSelection().
Return the application window object, casted to requested user type.
Definition at line 186 of file tool_base.h.
References getToolHolderInternal(), and T.
Referenced by PCB_POINT_EDITOR::addCorner(), BOARD_EDITOR_CONTROL::BoardSetup(), PCB_POINT_EDITOR::chamferCorner(), PCB_POINT_EDITOR::changeArcEditMode(), ZONE_FILLER_TOOL::CheckAllZones(), FOOTPRINT_EDITOR_CONTROL::CleanupGraphics(), GLOBAL_EDIT_TOOL::CleanupGraphics(), GLOBAL_EDIT_TOOL::CleanupTracksAndVias(), EDIT_TOOL::copyToClipboard(), ARRAY_TOOL::CreateArray(), MICROWAVE_TOOL::createBaseFootprint(), MICROWAVE_TOOL::createFootprint(), MICROWAVE_TOOL::createInductorBetween(), CONVERT_TOOL::CreateLines(), MICROWAVE_TOOL::createMicrowaveInductor(), MICROWAVE_TOOL::createPolygonShape(), CONVERT_TOOL::CreatePolys(), FOOTPRINT_EDITOR_CONTROL::DefaultPadProperties(), FOOTPRINT_EDITOR_CONTROL::DeleteFootprint(), EDIT_TOOL::DeleteItems(), EDIT_TOOL::doMoveSelection(), SELECTION_TOOL::doSelectionMenu(), COMMON_TOOLS::doZoomFit(), MICROWAVE_TOOL::drawMicrowaveInductor(), EDIT_TOOL::Duplicate(), BOARD_EDITOR_CONTROL::EditFpInFpEditor(), PCB_SELECTION_TOOL::editFrame(), GLOBAL_EDIT_TOOL::EditTeardrops(), FOOTPRINT_EDITOR_CONTROL::EditTextAndGraphics(), GLOBAL_EDIT_TOOL::EditTextAndGraphics(), GLOBAL_EDIT_TOOL::EditTracksAndVias(), GLOBAL_EDIT_TOOL::ExchangeFootprints(), BOARD_EDITOR_CONTROL::ExportSpecctraDSN(), ZONE_FILLER_TOOL::FillAllZones(), FOOTPRINT_WIZARD_TOOLS::frame(), PCB_SELECTION_TOOL::frame(), PCB_TEST_SELECTION_TOOL::frame(), PCB_TOOL_BASE::frame(), PCB_VIEWER_TOOLS::frame(), BOARD_EDITOR_CONTROL::GenerateDrillFiles(), BOARD_EDITOR_CONTROL::GeneratePosFile(), GLOBAL_EDIT_TOOL::GlobalDeletions(), PCB_CONTROL::GridPlaceOrigin(), BOARD_EDITOR_CONTROL::ImportNetlist(), BOARD_EDITOR_CONTROL::ImportSpecctraSession(), ALIGN_DISTRIBUTE_TOOL::Init(), BOARD_EDITOR_CONTROL::Init(), CONVERT_TOOL::Init(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Init(), DRAWING_TOOL::Init(), GERBVIEW_SELECTION_TOOL::Init(), GROUP_TOOL::Init(), PAD_TOOL::Init(), PCB_DESIGN_BLOCK_CONTROL::Init(), PCB_PICKER_TOOL::Init(), PCB_SELECTION_TOOL::Init(), PCB_TOOL_BASE::Init(), PICKER_TOOL::Init(), PL_DRAWING_TOOLS::Init(), PL_EDIT_TOOL::Init(), PL_EDITOR_CONTROL::Init(), PL_POINT_EDITOR::Init(), PL_SELECTION_TOOL::Init(), ROUTER_TOOL::Init(), SCH_DESIGN_BLOCK_CONTROL::Init(), SCH_SELECTION_TOOL::Init(), SCH_TOOL_BASE< T >::Init(), ZOOM_TOOL::Init(), ROUTER_TOOL::InlineDrag(), PCB_PICKER_TOOL::Main(), PCB_SELECTION_TOOL::Main(), ROUTER_TOOL::MainLoop(), PCB_POINT_EDITOR::movePoint(), ARRAY_TOOL::onDialogClosed(), SELECTION_TOOL::onDisambiguationExpire(), PCB_POINT_EDITOR::OnSelectionChange(), CONVERT_TOOL::OutsetItems(), ROUTER_TOOL::performRouting(), EDIT_TOOL::pickReferencePoint(), POSITION_RELATIVE_TOOL::PositionRelative(), ROUTER_TOOL::prepareInteractive(), EDIT_TOOL::Properties(), FOOTPRINT_EDITOR_CONTROL::Properties(), EDIT_TOOL::Remove(), PCB_POINT_EDITOR::removeCorner(), GLOBAL_EDIT_TOOL::RemoveUnusedPads(), BITMAP2CMP_CONTROL::Reset(), BOARD_EDITOR_CONTROL::Reset(), BOARD_INSPECTION_TOOL::Reset(), BOARD_REANNOTATE_TOOL::Reset(), COMMON_CONTROL::Reset(), COMMON_TOOLS::Reset(), CVPCB_ASSOCIATION_TOOL::Reset(), CVPCB_CONTROL::Reset(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Reset(), DESIGN_BLOCK_CONTROL::Reset(), DRAWING_TOOL::Reset(), DRC_TOOL::Reset(), EDIT_TOOL::Reset(), FOOTPRINT_EDITOR_CONTROL::Reset(), GERBVIEW_CONTROL::Reset(), GERBVIEW_INSPECTION_TOOL::Reset(), GERBVIEW_SELECTION_TOOL::Reset(), GROUP_TOOL::Reset(), KICAD_MANAGER_CONTROL::Reset(), LIBRARY_EDITOR_CONTROL::Reset(), PCB_CALCULATOR_CONTROL::Reset(), PCB_CONTROL::Reset(), PCB_POINT_EDITOR::Reset(), PCB_SELECTION_TOOL::Reset(), PL_DRAWING_TOOLS::Reset(), PL_EDIT_TOOL::Reset(), PL_EDITOR_CONTROL::Reset(), PL_POINT_EDITOR::Reset(), PL_SELECTION_TOOL::Reset(), SCH_SELECTION_TOOL::Reset(), SCH_TOOL_BASE< T >::Reset(), SIMULATOR_CONTROL::Reset(), ZOOM_TOOL::Reset(), FOOTPRINT_EDITOR_CONTROL::Revert(), EDIT_TOOL::Rotate(), ROUTER_TOOL::RouteSelected(), CONVERT_TOOL::SegmentToArc(), GERBVIEW_SELECTION_TOOL::selectable(), BOARD_EDITOR_CONTROL::ToggleLayersManager(), BOARD_EDITOR_CONTROL::ToggleLibraryTree(), BOARD_EDITOR_CONTROL::ToggleNetInspector(), BOARD_EDITOR_CONTROL::ToggleProperties(), BOARD_EDITOR_CONTROL::ToggleSearch(), PROPERTIES_TOOL::UpdateProperties(), ZONE_FILLER_TOOL::ZoneFillDirty(), and GLOBAL_EDIT_TOOL::ZonesManager().
|
inlineinherited |
Return the unique identifier of the tool.
The identifier is set by an instance of TOOL_MANAGER.
Definition at line 123 of file tool_base.h.
References m_toolId.
Referenced by TOOL_MANAGER::finishTool(), TOOL_MANAGER::InitTools(), TOOL_MANAGER::isActive(), TOOL_MANAGER::RegisterTool(), ACTION_MANAGER::RunHotKey(), TOOL_MANAGER::runTool(), TOOL_MANAGER::saveViewControls(), and TOOL_MANAGER::ShutdownTool().
|
inlineinherited |
Return the instance of TOOL_MANAGER that takes care of the tool.
Definition at line 146 of file tool_base.h.
References m_toolMgr, and TOOL_MANAGER.
Referenced by MULTICHANNEL_TOOL::AutogenerateRuleAreas(), PCB_TOOL_BASE::doInteractiveItemPlacement(), PCB_TUNING_PATTERN::EditCancel(), PCB_TUNING_PATTERN::EditFinish(), PCB_TUNING_PATTERN::EditStart(), makeShapeModificationMenu(), PAD_TOOL::PlacePad(), MULTICHANNEL_TOOL::RepeatLayout(), MULTICHANNEL_TOOL::RepeatLayout(), SCH_COMMIT::SCH_COMMIT(), PCB_TUNING_PATTERN::Update(), and GLOBAL_EDIT_TOOL::ZonesManager().
Return the model object if it matches the requested type.
Definition at line 198 of file tool_base.h.
References getModelInternal(), and T.
Referenced by BOARD_EDITOR_CONTROL::AutoTrackWidth(), PCB_SELECTION_TOOL::board(), PCB_TEST_SELECTION_TOOL::board(), PCB_TOOL_BASE::board(), PCB_VIEWER_TOOLS::board(), COMMON_TOOLS::doCenter(), PCB_SELECTION_TOOL::filterSelection(), PCB_GROUP_TOOL::Group(), BOARD_INSPECTION_TOOL::HideLocalRatsnest(), EMBED_TOOL::Init(), BOARD_INSPECTION_TOOL::LocalRatsnestTool(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PAD_TOOL::pushPadSettings(), BOARD_EDITOR_CONTROL::Reset(), DRAWING_TOOL::Reset(), EMBED_TOOL::Reset(), GERBVIEW_SELECTION_TOOL::selectPoint(), BOARD_EDITOR_CONTROL::TrackWidthDec(), BOARD_EDITOR_CONTROL::TrackWidthInc(), BOARD_INSPECTION_TOOL::UpdateLocalRatsnest(), BOARD_EDITOR_CONTROL::ViaSizeDec(), BOARD_EDITOR_CONTROL::ViaSizeInc(), and BOARD_EDITOR_CONTROL::ZoneMerge().
|
privateinherited |
|
inlineinherited |
Return the name of the tool.
Tool names are expected to obey the format: application.ToolName (eg. pcbnew.InteractiveSelection).
Definition at line 136 of file tool_base.h.
References m_toolName.
Referenced by PCB_CONTROL::AppendBoard(), TOOL_MANAGER::dispatchInternal(), COMMON_TOOLS::GridProperties(), TOOL_MANAGER::InitTools(), TOOL_MANAGER::invokeTool(), TOOL_MANAGER::RegisterTool(), TOOL_MANAGER::ResetTools(), TOOL_MANAGER::runTool(), SCH_TOOL_BASE< SCH_EDIT_FRAME >::SetContextMenu(), and TOOL_MANAGER::ShutdownTool().
|
privateinherited |
|
inherited |
Definition at line 112 of file tool_interactive.cpp.
References m_menu.
Referenced by BOARD_EDITOR_CONTROL::Init(), BOARD_INSPECTION_TOOL::Init(), FOOTPRINT_CHOOSER_SELECTION_TOOL::Init(), GENERATOR_TOOL::Init(), PAD_TOOL::Init(), PCB_EDIT_TABLE_TOOL::Init(), and SYMBOL_EDITOR_EDIT_TOOL::Init().
|
inlineinherited |
Return the type of the tool.
Definition at line 111 of file tool_base.h.
References m_type.
Referenced by TOOL_MANAGER::InvokeTool(), TOOL_MANAGER::InvokeTool(), TOOL_MANAGER::ResetTools(), TOOL_MANAGER::runTool(), TOOL_MANAGER::ShutdownTool(), and TOOL_MANAGER::ShutdownTool().
|
protectedinherited |
Returns the instance of #VIEW object used in the application.
It allows tools to draw.
Definition at line 38 of file tool_base.cpp.
References m_toolMgr.
Referenced by ALIGN_DISTRIBUTE_TOOL::AlignLeft(), ALIGN_DISTRIBUTE_TOOL::AlignRight(), GERBVIEW_CONTROL::ClearAllLayers(), PL_SELECTION_TOOL::ClearSelection(), SCH_SELECTION_TOOL::ClearSelection(), SCH_SELECTION_TOOL::CollectHits(), COMMON_TOOLS::CursorControl(), EDIT_TOOL::DeleteItems(), COMMON_TOOLS::doCenter(), PL_EDIT_TOOL::DoDelete(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), SELECTION_TOOL::doSelectionMenu(), COMMON_TOOLS::doZoomFit(), COMMON_TOOLS::doZoomInOut(), COMMON_TOOLS::doZoomToPreset(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::drawOneBezier(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), BOARD_EDITOR_CONTROL::DrillOrigin(), SCH_SELECTION_TOOL::EnterGroup(), PAD_TOOL::EnumeratePads(), SCH_SELECTION_TOOL::ExitGroup(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), SCH_SELECTION_TOOL::GetNode(), ROUTER_TOOL::getStartLayer(), PCB_CONTROL::GridPlaceOrigin(), PCB_CONTROL::GridResetOrigin(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), SCH_SELECTION_TOOL::GuessSelectionCandidates(), ROUTER_TOOL::handleCommonEvents(), PCB_SELECTION_TOOL::highlight(), PL_SELECTION_TOOL::highlight(), SCH_SELECTION_TOOL::highlight(), GERBVIEW_CONTROL::HighlightControl(), BOARD_INSPECTION_TOOL::highlightNet(), PNS::TOOL_BASE::highlightNets(), PCB_SELECTION_TOOL::hitTestDistance(), EDIT_TOOL::Init(), ROUTER_TOOL::InlineDrag(), PCB_CONTROL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), PCB_PICKER_TOOL::Main(), PL_POINT_EDITOR::Main(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), EDIT_TOOL::MoveExact(), PL_EDIT_TOOL::moveItem(), COMMON_TOOLS::OnGridChanged(), PCB_POINT_EDITOR::OnSelectionChange(), COMMON_TOOLS::PanControl(), PL_EDIT_TOOL::Paste(), ROUTER_TOOL::performRouting(), PNS::TOOL_BASE::pickSingleItem(), BOARD_EDITOR_CONTROL::PlaceFootprint(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), ROUTER_TOOL::prepareInteractive(), EDIT_TOOL::Properties(), PCB_SELECTION_TOOL::pruneObscuredSelectionCandidates(), BOARD_EDITOR_CONTROL::Reset(), DRAWING_TOOL::Reset(), GENERATOR_TOOL_PNS_PROXY::Reset(), GERBVIEW_SELECTION_TOOL::Reset(), PCB_CONTROL::Reset(), PCB_SELECTION_TOOL::Reset(), PNS::TOOL_BASE::Reset(), SCH_SELECTION_TOOL::Reset(), SCH_TOOL_BASE< T >::Reset(), GERBVIEW_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::Selectable(), PCB_SELECTION_TOOL::SelectAll(), SCH_SELECTION_TOOL::SelectAll(), PCB_SELECTION_TOOL::selectionContains(), PL_SELECTION_TOOL::selectionContains(), SCH_SELECTION_TOOL::selectionContains(), SCH_SELECTION_TOOL::selectLasso(), PCB_SELECTION_TOOL::SelectMultiple(), SCH_SELECTION_TOOL::SelectMultiple(), PL_SELECTION_TOOL::selectMultiple(), SCH_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::SelectPoint(), SCH_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::SelectPolyArea(), PCB_SELECTION_TOOL::SelectRectArea(), ZOOM_TOOL::selectRegion(), GERBVIEW_SELECTION_TOOL::selectVisually(), DRAWING_TOOL::SetAnchor(), PCB_SELECTION_TOOL::unhighlight(), PCB_TEST_SELECTION_TOOL::unhighlight(), PL_SELECTION_TOOL::unhighlight(), SCH_SELECTION_TOOL::unhighlight(), GERBVIEW_SELECTION_TOOL::unselect(), PCB_SELECTION_TOOL::UnselectAll(), SCH_SELECTION_TOOL::UnselectAll(), GERBVIEW_SELECTION_TOOL::unselectVisually(), PCB_POINT_EDITOR::updateEditedPoint(), PL_POINT_EDITOR::updateEditedPoint(), PCB_POINT_EDITOR::updateItem(), PL_POINT_EDITOR::updateItem(), PCB_POINT_EDITOR::updatePoints(), PL_POINT_EDITOR::updatePoints(), PCB_SELECTION_TOOL::updateSelection(), SCH_SELECTION_TOOL::updateSelection(), PNS::TOOL_BASE::updateStartItem(), PCB_SELECTION_TOOL::view(), PCB_TEST_SELECTION_TOOL::view(), PCB_TOOL_BASE::view(), PCB_VIEWER_TOOLS::view(), PCB_SELECTION_TOOL::ZoomFitCrossProbeBBox(), SCH_SELECTION_TOOL::ZoomFitCrossProbeBBox(), PCB_SELECTION_TOOL::zoomFitSelection(), GERBVIEW_SELECTION_TOOL::~GERBVIEW_SELECTION_TOOL(), PCB_SELECTION_TOOL::~PCB_SELECTION_TOOL(), and SCH_SELECTION_TOOL::~SCH_SELECTION_TOOL().
|
protectedinherited |
Return the instance of VIEW_CONTROLS object used in the application.
It allows tools to read & modify user input and its settings (eg. show cursor, enable snapping to grid, etc.).
Definition at line 44 of file tool_base.cpp.
References m_toolMgr.
Referenced by PCB_POINT_EDITOR::addCorner(), SCH_SELECTION_TOOL::autostartEvent(), PCB_POINT_EDITOR::chamferCorner(), PCB_SELECTION_TOOL::controls(), PCB_TEST_SELECTION_TOOL::controls(), PCB_TOOL_BASE::controls(), EDIT_TOOL::copyToClipboard(), COMMON_TOOLS::CursorControl(), EDIT_TOOL::DeleteItems(), EDIT_TOOL::doMoveSelection(), COMMON_TOOLS::doZoomToPreset(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::DrawCircle(), DRAWING_TOOL::DrawLine(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::DrawRectangle(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), PAD_TOOL::EnumeratePads(), BOARD_INSPECTION_TOOL::HighlightNet(), FOOTPRINT_EDITOR_CONTROL::ImportFootprint(), SCH_TOOL_BASE< T >::Increment(), EDIT_TOOL::Init(), PCB_PICKER_TOOL::Main(), PICKER_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_POINT_EDITOR::Main(), SCH_SELECTION_TOOL::Main(), ROUTER_TOOL::MainLoop(), PCB_POINT_EDITOR::makePoints(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), COMMON_TOOLS::OnGridChanged(), PCB_POINT_EDITOR::OnSelectionChange(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), PCB_CONTROL::placeBoardItems(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), EDIT_TOOL::Properties(), PL_SELECTION_TOOL::RequestSelection(), SCH_SELECTION_TOOL::RequestSelection(), DRAWING_TOOL::Reset(), PCB_POINT_EDITOR::Reset(), COMMON_TOOLS::ResetLocalCoords(), ROUTER_TOOL::RouteSelected(), PCB_SELECTION_TOOL::selectCursor(), SCH_SELECTION_TOOL::selectLasso(), PL_SELECTION_TOOL::selectMultiple(), SCH_SELECTION_TOOL::selectMultiple(), SCH_SELECTION_TOOL::SelectNode(), PCB_SELECTION_TOOL::SelectPolyArea(), PCB_SELECTION_TOOL::SelectRectArea(), ZOOM_TOOL::selectRegion(), PCB_SELECTION_TOOL::selectTableCells(), SCH_SELECTION_TOOL::selectTableCells(), ALIGN_DISTRIBUTE_TOOL::selectTarget(), PCB_PICKER_TOOL::setControls(), PICKER_TOOL::setControls(), PCB_POINT_EDITOR::setEditedPoint(), PL_POINT_EDITOR::setEditedPoint(), PCB_POINT_EDITOR::updateEditedPoint(), PL_POINT_EDITOR::updateEditedPoint(), PL_EDIT_TOOL::updateModificationPoint(), and COMMON_TOOLS::ZoomCenter().
|
inherited |
Define which state (aStateFunc) to go when a certain event arrives (aConditions).
No conditions means any event.
Definition at line 147 of file tool_interactive.h.
References goInternal(), and T.
Referenced by ALIGN_DISTRIBUTE_TOOL::setTransitions(), ARRAY_TOOL::setTransitions(), AUTOPLACE_TOOL::setTransitions(), BITMAP2CMP_CONTROL::setTransitions(), BOARD_EDITOR_CONTROL::setTransitions(), BOARD_INSPECTION_TOOL::setTransitions(), BOARD_REANNOTATE_TOOL::setTransitions(), COMMON_CONTROL::setTransitions(), COMMON_TOOLS::setTransitions(), CONVERT_TOOL::setTransitions(), CVPCB_ASSOCIATION_TOOL::setTransitions(), CVPCB_CONTROL::setTransitions(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::setTransitions(), DESIGN_BLOCK_CONTROL::setTransitions(), DRAWING_TOOL::setTransitions(), DRC_TOOL::setTransitions(), EDA_3D_CONTROLLER::setTransitions(), EDIT_TOOL::setTransitions(), EMBED_TOOL::setTransitions(), FOOTPRINT_CHOOSER_SELECTION_TOOL::setTransitions(), FOOTPRINT_EDITOR_CONTROL::setTransitions(), FOOTPRINT_WIZARD_TOOLS::setTransitions(), GENERATOR_TOOL::setTransitions(), GERBVIEW_CONTROL::setTransitions(), GERBVIEW_INSPECTION_TOOL::setTransitions(), GERBVIEW_SELECTION_TOOL::setTransitions(), GLOBAL_EDIT_TOOL::setTransitions(), GROUP_TOOL::setTransitions(), KICAD_MANAGER_CONTROL::setTransitions(), LIBRARY_EDITOR_CONTROL::setTransitions(), MICROWAVE_TOOL::setTransitions(), MULTICHANNEL_TOOL::setTransitions(), PAD_TOOL::setTransitions(), PCB_CALCULATOR_CONTROL::setTransitions(), PCB_CONTROL::setTransitions(), PCB_DESIGN_BLOCK_CONTROL::setTransitions(), PCB_EDIT_TABLE_TOOL::setTransitions(), PCB_PICKER_TOOL::setTransitions(), PCB_POINT_EDITOR::setTransitions(), PCB_SELECTION_TOOL::setTransitions(), PCB_TEST_SELECTION_TOOL::setTransitions(), PCB_VIEWER_TOOLS::setTransitions(), PICKER_TOOL::setTransitions(), PL_DRAWING_TOOLS::setTransitions(), PL_EDIT_TOOL::setTransitions(), PL_EDITOR_CONTROL::setTransitions(), PL_POINT_EDITOR::setTransitions(), PL_SELECTION_TOOL::setTransitions(), POSITION_RELATIVE_TOOL::setTransitions(), PROPERTIES_TOOL::setTransitions(), ROUTER_TOOL::setTransitions(), SCH_DESIGN_BLOCK_CONTROL::setTransitions(), SCH_SELECTION_TOOL::setTransitions(), SCRIPTING_TOOL::setTransitions(), SIMULATOR_CONTROL::setTransitions(), ZONE_FILLER_TOOL::setTransitions(), and ZOOM_TOOL::setTransitions().
|
privateinherited |
Definition at line 84 of file tool_interactive.cpp.
Referenced by Go().
|
inlineinherited |
Definition at line 110 of file sch_tool_base.h.
Referenced by SCH_EDIT_TOOL::setTransitions().
|
overridevirtual |
Init() is called once upon a registration of the tool.
Reimplemented from TOOL_BASE.
Definition at line 69 of file sch_move_tool.cpp.
References CONDITIONAL_MENU::AddItem(), SCH_ACTIONS::alignToGrid, SCH_ACTIONS::drag, SCH_TOOL_BASE< T >::Init(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLineWireOrBus(), SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_selectionTool, SCH_ACTIONS::move, and SELECTION_CONDITIONS::OnlyTypes().
|
inlineinherited |
Definition at line 247 of file sch_tool_base.h.
Referenced by SCH_EDIT_TOOL::setTransitions().
|
inlineinherited |
Returns true if the tool is running in the symbol editor.
Definition at line 105 of file sch_tool_base.h.
|
inherited |
Definition at line 32 of file tool_base.cpp.
References m_toolId, and m_toolMgr.
Referenced by EDIT_TOOL::ChangeTrackLayer(), EDIT_TOOL::Drag(), ROUTER_TOOL::handleLayerSwitch(), EDIT_TOOL::invokeInlineRouter(), PCB_SELECTION_TOOL::Main(), BOARD_EDITOR_CONTROL::TrackWidthDec(), and BOARD_EDITOR_CONTROL::TrackWidthInc().
int SCH_MOVE_TOOL::Main | ( | const TOOL_EVENT & | aEvent | ) |
Run an interactive move of the selected items, or the item under the cursor.
Definition at line 377 of file sch_move_tool.cpp.
References _, TOOL_EVENT::Commit(), doMoveSelection(), SCH_ACTIONS::drag, TOOL_EVENT::IsAction(), m_isDrag, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_toolMgr, TOOL_EVENT::Parameter(), SCH_COMMIT::Push(), SCH_COMMIT::Revert(), STS_CANCELLED, STS_FINISHED, STS_RUNNING, and TOOL_EVENT::SynchronousState().
Referenced by setTransitions().
Find additional items for a drag operation.
Connected items with no wire are included (as there is no wire to adjust for the drag). Connected wires are included with any un-connected ends flagged (STARTPOINT or ENDPOINT).
Definition at line 1809 of file sch_move_tool.cpp.
References AUTOPLACE_NONE, delta, ENDPOINT, EDA_ITEM::GetParent(), SYMBOL::GetTransform(), EDA_ITEM::HasFlag(), info, TRANSFORM::InverseTransform(), IS_MOVING, EDA_ITEM::IsSelected(), m_isDrag, m_specialCaseLabels, SCH_LABEL_BASE::Move(), SCH_LINE::MoveEnd(), SCH_LINE::MoveStart(), SEG::NearestPoint(), pin, SCH_DIRECTIVE_LABEL_T, SCH_FIELD_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_LABEL_T, SCH_LINE_T, SCH_PIN_T, SCH_SHEET_PIN_T, SCH_SYMBOL_T, SCH_ITEM::SetFieldsAutoplaced(), EDA_ITEM::SetFlags(), SCH_LABEL_BASE::SetPosition(), STARTPOINT, TRANSFORM::TransformCoordinate(), and EDA_ITEM::Type().
Referenced by AlignToGrid(), and doMoveSelection().
|
private |
Clears the new drag lines and removes them from the screen.
Definition at line 1216 of file sch_move_tool.cpp.
References SCH_SCREEN::Append(), CHT_ADD, CHT_DONE, CHT_REMOVE, BOX2< Vec >::GetPosition(), SCH_SHEET::GetScreen(), SCH_SCREEN::Items(), SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_frame, BOX2< Vec >::Merge(), SCH_ITEM::Move(), moved, schIUScale, and SCH_COMMIT::Stage().
Referenced by doMoveSelection().
|
private |
Definition at line 97 of file sch_move_tool.cpp.
References SCH_LINE::Angle(), SCH_LINE::GetEndPoint(), SCH_LINE::GetLength(), SCH_LINE::GetStartPoint(), grid, EDA_ITEM::HasFlag(), IS_CHANGED, IS_NEW, EDA_ITEM::IsSelected(), m_changedDragLines, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_frame, m_lineConnectionCache, m_newDragLines, m_specialCaseLabels, m_specialCaseSheetPins, COMMIT::Modify(), SCH_LINE::MoveEnd(), SCH_LINE::MoveStart(), SCH_JUNCTION_T, SCH_LINE_T, SCH_PIN_T, SCH_SHEET_T, SCH_ITEM::SetConnectivityDirty(), EDA_ITEM::SetFlags(), SCH_LINE::SetLastResolvedState(), sign(), STARTPOINT, SCH_TOOL_BASE< SCH_EDIT_FRAME >::updateItem(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by doMoveSelection().
|
inlineoverridevirtualinherited |
Bring the tool to a known, initial state.
If the tool claimed anything from the model or the view, it must release it when its reset.
aReason | contains information about the reason of tool reset. |
Implements TOOL_BASE.
Definition at line 90 of file sch_tool_base.h.
|
privateinherited |
Clear the current transition map and restores the default one created by setTransitions().
Definition at line 77 of file tool_interactive.cpp.
|
inherited |
Call a function using the main stack.
aFunc | is the function to be calls. |
Definition at line 106 of file tool_interactive.cpp.
Referenced by DRAWING_TOOL::PlaceText().
|
inlineprotectedinherited |
Definition at line 333 of file sch_tool_base.h.
Referenced by SCH_EDIT_TOOL::Swap().
|
inherited |
Assign a context menu and tells when it should be activated.
aMenu | is the menu to be assigned. |
aTrigger | determines conditions upon which the context menu is activated. |
Definition at line 95 of file tool_interactive.cpp.
References CMENU_OFF, TOOL_BASE::m_toolMgr, and ACTION_MENU::SetTool().
Referenced by SELECTION_TOOL::doSelectionMenu(), and DRAWING_TOOL::DrawVia().
|
overrideprivatevirtual |
Cleanup dangling lines left after a drag.
Implements TOOL_INTERACTIVE.
Definition at line 2078 of file sch_move_tool.cpp.
References AlignToGrid(), SCH_ACTIONS::alignToGrid, SCH_ACTIONS::drag, SCH_TOOL_BASE< SCH_EDIT_FRAME >::Go(), Main(), and SCH_ACTIONS::move.
|
private |
Definition at line 1270 of file sch_move_tool.cpp.
References IS_BROKEN, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_frame, SCH_TOOL_BASE< SCH_EDIT_FRAME >::m_toolMgr, COMMIT::Removed(), KIGFX::REPAINT, STRUCT_DELETED, and SCH_TOOL_BASE< SCH_EDIT_FRAME >::updateItem().
Referenced by doMoveSelection().
|
inlineprotectedinherited |
Similar to getView()->Update(), but also updates the SCH_SCREEN's RTree.
Similar to m_frame->SaveCopyInUndoList(), but also handles connectivity.
Definition at line 327 of file sch_tool_base.h.
Referenced by SCH_MOVE_TOOL::AlignToGrid(), SCH_EDIT_TOOL::AutoplaceFields(), SCH_EDIT_TOOL::CleanupSheetPins(), SCH_MOVE_TOOL::doMoveSelection(), SCH_DRAWING_TOOLS::doSyncSheetsPins(), SCH_EDIT_TOOL::JustifyText(), SCH_EDIT_TOOL::Mirror(), SCH_MOVE_TOOL::orthoLineDrag(), SCH_EDIT_TOOL::Properties(), SCH_EDIT_TOOL::Rotate(), SCH_EDIT_TOOL::Swap(), and SCH_MOVE_TOOL::trimDanglingLines().
|
inherited |
Suspend execution of the tool until an event specified in aEventList arrives.
No parameters means waiting for any event.
Definition at line 71 of file tool_interactive.cpp.
References TOOL_BASE::m_toolMgr.
Referenced by PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), SELECTION_TOOL::doSelectionMenu(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::drawOneBezier(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawVia(), DRAWING_TOOL::DrawZone(), PAD_TOOL::EnumeratePads(), ROUTER_TOOL::InlineDrag(), CVPCB_CONTROL::Main(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Main(), EDA_3D_CONTROLLER::Main(), GERBVIEW_SELECTION_TOOL::Main(), PCB_PICKER_TOOL::Main(), PCB_SELECTION_TOOL::Main(), PCB_TEST_SELECTION_TOOL::Main(), PICKER_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_POINT_EDITOR::Main(), PL_SELECTION_TOOL::Main(), SCH_SELECTION_TOOL::Main(), ZOOM_TOOL::Main(), ROUTER_TOOL::MainLoop(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), PCB_POINT_EDITOR::OnSelectionChange(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), PCB_GROUP_TOOL::PickNewMember(), SCH_GROUP_TOOL::PickNewMember(), EDIT_TOOL::pickReferencePoint(), BOARD_EDITOR_CONTROL::PlaceFootprint(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), SCH_SELECTION_TOOL::selectLasso(), PL_SELECTION_TOOL::selectMultiple(), SCH_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::SelectPolyArea(), PCB_SELECTION_TOOL::SelectRectArea(), ZOOM_TOOL::selectRegion(), PCB_SELECTION_TOOL::selectTableCells(), SCH_SELECTION_TOOL::selectTableCells(), and DRAWING_TOOL::SetAnchor().
|
private |
Definition at line 123 of file sch_move_tool.h.
Referenced by doMoveSelection().
|
private |
Junctions that were hidden during the move.
Definition at line 113 of file sch_move_tool.h.
Referenced by doMoveSelection(), and orthoLineDrag().
|
private |
Definition at line 121 of file sch_move_tool.h.
Referenced by doMoveSelection().
|
private |
Cache of the line's original connections before dragging started.
Definition at line 107 of file sch_move_tool.h.
Referenced by doMoveSelection().
|
protectedinherited |
Definition at line 373 of file sch_tool_base.h.
Referenced by SCH_LINE_WIRE_BUS_TOOL::AddJunction(), SCH_LINE_WIRE_BUS_TOOL::AddJunctionsIfNeeded(), SCH_MOVE_TOOL::AlignToGrid(), SCH_EDITOR_CONTROL::Annotate(), SCH_EDITOR_CONTROL::AssignFootprints(), SCH_EDITOR_CONTROL::AssignNetclass(), SCH_DRAWING_TOOLS::AutoPlaceAllSheetPins(), SCH_EDIT_TOOL::AutoplaceFields(), SCH_NAVIGATE_TOOL::Back(), SCH_LINE_WIRE_BUS_TOOL::BreakSegment(), SCH_EDIT_TOOL::BreakWire(), SCH_NAVIGATE_TOOL::CanGoNext(), SCH_NAVIGATE_TOOL::CanGoPrevious(), SCH_NAVIGATE_TOOL::CanGoUp(), SCH_EDITOR_CONTROL::ChangeLineMode(), SCH_NAVIGATE_TOOL::changeSheet(), SCH_EDIT_TOOL::ChangeSymbols(), SCH_EDIT_TOOL::ChangeTextType(), SCH_NAVIGATE_TOOL::CleanHistory(), SCH_EDIT_TOOL::CleanupSheetPins(), SCH_MOVE_TOOL::clearNewDragLines(), SCH_EDIT_TOOL::collectUnits(), SCH_DRAWING_TOOLS::createNewLabel(), SCH_DRAWING_TOOLS::createNewText(), SCH_EDIT_TOOL::CycleBodyStyle(), SCH_EDITOR_CONTROL::doCopy(), SCH_EDITOR_CONTROL::doCrossProbeSchToPcb(), SCH_EDIT_TOOL::DoDelete(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SCH_MOVE_TOOL::doMoveSelection(), SCH_DRAWING_TOOLS::doSyncSheetsPins(), SCH_LINE_WIRE_BUS_TOOL::doUnfoldBus(), SCH_DRAWING_TOOLS::DrawRuleArea(), SCH_LINE_WIRE_BUS_TOOL::DrawSegments(), SCH_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_EDITOR_CONTROL::DrawSheetOnClipboard(), SCH_DRAWING_TOOLS::DrawTable(), SCH_EDIT_TOOL::editFieldText(), SCH_EDIT_TOOL::EditPageNumber(), SCH_EDITOR_CONTROL::EditSymbolFields(), SCH_EDITOR_CONTROL::EditSymbolLibraryLinks(), SCH_EDIT_TABLE_TOOL::EditTable(), SCH_EDITOR_CONTROL::EditWithSymbolEditor(), SCH_NAVIGATE_TOOL::EnterSheet(), SCH_EDITOR_CONTROL::ExportNetlist(), SCH_EDITOR_CONTROL::ExportSymbolsToLibrary(), SCH_EDITOR_CONTROL::FindSymbolAndItem(), SCH_DRAWING_TOOLS::findWire(), SCH_DRAWING_TOOLS::findWireLabelDriverName(), SCH_LINE_WIRE_BUS_TOOL::finishSegments(), SCH_NAVIGATE_TOOL::Forward(), SCH_EDITOR_CONTROL::GenerateBOM(), SCH_EDITOR_CONTROL::GenerateBOMLegacy(), SCH_MOVE_TOOL::getConnectedDragItems(), SCH_MOVE_TOOL::getConnectedItems(), SCH_EDIT_TABLE_TOOL::getScreen(), SCH_LINE_WIRE_BUS_TOOL::getSheetPin(), SCH_EDIT_TOOL::GlobalEdit(), SCH_EDITOR_CONTROL::GridFeedback(), SCH_NAVIGATE_TOOL::HypertextCommand(), SCH_EDITOR_CONTROL::ImportFPAssignments(), SCH_DRAWING_TOOLS::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), SCH_EDITOR_CONTROL::IncrementAnnotations(), SCH_DRAWING_TOOLS::Init(), SCH_EDIT_TOOL::Init(), SCH_LINE_WIRE_BUS_TOOL::Init(), SCH_EDIT_TOOL::JustifyText(), SCH_NAVIGATE_TOOL::LeaveSheet(), SCH_EDITOR_CONTROL::MarkSimExclusions(), SCH_EDIT_TOOL::Mirror(), SCH_MOVE_TOOL::moveSelectionToSheet(), SCH_EDITOR_CONTROL::New(), SCH_NAVIGATE_TOOL::Next(), SCH_EDITOR_CONTROL::NextLineMode(), SCH_EDITOR_CONTROL::Open(), SCH_MOVE_TOOL::orthoLineDrag(), SCH_EDITOR_CONTROL::PageSetup(), SCH_EDITOR_CONTROL::Paste(), SCH_DRAWING_TOOLS::PlaceImage(), SCH_EDITOR_CONTROL::PlaceLinkedDesignBlock(), SCH_DRAWING_TOOLS::PlaceNextSymbolUnit(), SCH_DRAWING_TOOLS::PlaceSymbol(), SCH_EDITOR_CONTROL::Plot(), SCH_NAVIGATE_TOOL::Previous(), SCH_EDITOR_CONTROL::Print(), SCH_EDITOR_CONTROL::processCmpToFootprintLinkFile(), SCH_EDIT_TOOL::Properties(), SCH_EDITOR_CONTROL::prunePastedSymbolInstances(), SCH_EDITOR_CONTROL::Quit(), SCH_EDITOR_CONTROL::Redo(), SCH_EDITOR_CONTROL::RemapSymbols(), SCH_EDITOR_CONTROL::RepairSchematic(), SCH_EDIT_TOOL::RepeatDrawItem(), SCH_EDITOR_CONTROL::RescueLegacyProject(), SCH_EDITOR_CONTROL::rescueProject(), SCH_EDITOR_CONTROL::RescueSymbolLibTableProject(), SCH_EDITOR_CONTROL::RescueSymbols(), SCH_NAVIGATE_TOOL::ResetHistory(), SCH_EDITOR_CONTROL::Revert(), SCH_EDIT_TOOL::Rotate(), SCH_EDITOR_CONTROL::Save(), SCH_EDITOR_CONTROL::SaveAs(), SCH_EDITOR_CONTROL::SaveCurrSheetCopyAs(), SCH_EDITOR_CONTROL::SaveToLinkedDesignBlock(), SCH_EDITOR_CONTROL::ShowCvpcb(), SCH_EDITOR_CONTROL::ShowPcbNew(), SCH_EDITOR_CONTROL::ShowSchematicSetup(), SCH_LINE_WIRE_BUS_TOOL::simplifyWireList(), SCH_EDITOR_CONTROL::SimProbe(), SCH_EDITOR_CONTROL::SimTune(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_DRAWING_TOOLS::sizeSheet(), SCH_LINE_WIRE_BUS_TOOL::startSegments(), SCH_EDIT_TOOL::Swap(), SCH_DRAWING_TOOLS::SyncAllSheetsPins(), SCH_DRAWING_TOOLS::SyncSheetsPins(), SCH_EDITOR_CONTROL::ToggleAnnotateAuto(), SCH_EDITOR_CONTROL::ToggleDirectiveLabels(), SCH_EDITOR_CONTROL::ToggleERCErrors(), SCH_EDITOR_CONTROL::ToggleERCExclusions(), SCH_EDITOR_CONTROL::ToggleERCWarnings(), SCH_EDITOR_CONTROL::ToggleHiddenFields(), SCH_EDITOR_CONTROL::ToggleHiddenPins(), SCH_EDITOR_CONTROL::ToggleOPCurrents(), SCH_EDITOR_CONTROL::ToggleOPVoltages(), SCH_EDITOR_CONTROL::TogglePinAltIcons(), SCH_EDITOR_CONTROL::TogglePythonConsole(), SCH_MOVE_TOOL::trimDanglingLines(), SCH_LINE_WIRE_BUS_TOOL::TrimOverLappingWires(), SCH_DRAWING_TOOLS::TwoClickPlace(), SCH_EDITOR_CONTROL::Undo(), SCH_LINE_WIRE_BUS_TOOL::UnfoldBus(), SCH_EDITOR_CONTROL::UpdateFromPCB(), SCH_EDITOR_CONTROL::UpdateNetHighlighting(), SCH_EDITOR_CONTROL::updatePastedSymbol(), and SCH_EDITOR_CONTROL::UpdatePCB().
|
private |
Definition at line 115 of file sch_move_tool.h.
Referenced by doMoveSelection().
|
private |
< Re-entrancy guard
Flag determining if anything is being dragged right now
Definition at line 100 of file sch_move_tool.h.
Referenced by doMoveSelection(), and SCH_MOVE_TOOL().
|
private |
Items (such as wires) which were added to the selection for a drag.
Definition at line 104 of file sch_move_tool.h.
Referenced by AlignToGrid(), doMoveSelection(), Main(), moveItem(), and SCH_MOVE_TOOL().
|
protectedinherited |
Definition at line 376 of file sch_tool_base.h.
Lines added at bend points dynamically during the move.
Definition at line 109 of file sch_move_tool.h.
Referenced by doMoveSelection(), getConnectedDragItems(), and orthoLineDrag().
|
protectedinherited |
The functions below are not yet implemented - their interface may change.
Definition at line 125 of file tool_interactive.h.
Referenced by PCB_TOOL_BASE::doInteractiveItemPlacement(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::drawOneBezier(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), PAD_TOOL::EnumeratePads(), GetToolMenu(), BOARD_EDITOR_CONTROL::Init(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Init(), DRAWING_TOOL::Init(), EDA_3D_CONTROLLER::Init(), FOOTPRINT_EDITOR_CONTROL::Init(), GERBVIEW_SELECTION_TOOL::Init(), PAD_TOOL::Init(), PCB_DESIGN_BLOCK_CONTROL::Init(), PCB_PICKER_TOOL::Init(), PCB_SELECTION_TOOL::Init(), PCB_TOOL_BASE::Init(), PCB_VIEWER_TOOLS::Init(), PICKER_TOOL::Init(), PL_DRAWING_TOOLS::Init(), PL_EDIT_TOOL::Init(), PL_SELECTION_TOOL::Init(), ROUTER_TOOL::Init(), SCH_DESIGN_BLOCK_CONTROL::Init(), SCH_SELECTION_TOOL::Init(), SCH_TOOL_BASE< T >::Init(), ZOOM_TOOL::Init(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Main(), EDA_3D_CONTROLLER::Main(), GERBVIEW_SELECTION_TOOL::Main(), PCB_PICKER_TOOL::Main(), PCB_SELECTION_TOOL::Main(), PICKER_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_SELECTION_TOOL::Main(), SCH_SELECTION_TOOL::Main(), ZOOM_TOOL::Main(), ROUTER_TOOL::MainLoop(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), BOARD_EDITOR_CONTROL::PlaceFootprint(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), DRAWING_TOOL::SetAnchor(), TOOL_INTERACTIVE(), and TOOL_INTERACTIVE().
|
private |
Definition at line 103 of file sch_move_tool.h.
Referenced by doMoveSelection(), and SCH_MOVE_TOOL().
|
private |
Last cursor position (needed for getModificationPoint() to avoid changes of edit reference point).
Definition at line 117 of file sch_move_tool.h.
Referenced by doMoveSelection(), and SCH_MOVE_TOOL().
|
private |
Lines changed by drag algorithm that weren't selected.
Definition at line 111 of file sch_move_tool.h.
Referenced by clearNewDragLines(), doMoveSelection(), and orthoLineDrag().
|
protectedinherited |
Definition at line 377 of file sch_tool_base.h.
Referenced by SCH_EDIT_TOOL::SCH_EDIT_TOOL().
|
protectedinherited |
Definition at line 375 of file sch_tool_base.h.
Referenced by SCH_MOVE_TOOL::AlignToGrid(), SCH_DRAWING_TOOLS::AutoPlaceAllSheetPins(), SCH_EDIT_TOOL::AutoplaceFields(), SCH_EDIT_TOOL::BreakWire(), SCH_EDIT_TOOL::ChangeSymbols(), SCH_EDIT_TOOL::ChangeTextType(), SCH_EDIT_TOOL::CleanupSheetPins(), SCH_EDIT_TOOL::CycleBodyStyle(), SCH_EDIT_TOOL::DoDelete(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SCH_MOVE_TOOL::doMoveSelection(), SCH_DRAWING_TOOLS::DrawRuleArea(), SCH_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), SCH_EDIT_TOOL::EditField(), SCH_EDIT_TOOL::EditPageNumber(), SCH_EDIT_TABLE_TOOL::EditTable(), SCH_LINE_WIRE_BUS_TOOL::getBusForUnfolding(), SCH_EDIT_TABLE_TOOL::getTableCellSelection(), SCH_DRAWING_TOOLS::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), SCH_EDIT_TABLE_TOOL::Init(), SCH_LINE_WIRE_BUS_TOOL::Init(), SCH_MOVE_TOOL::Init(), SCH_EDIT_TOOL::JustifyText(), SCH_EDIT_TOOL::Mirror(), SCH_DRAWING_TOOLS::PlaceImage(), SCH_DRAWING_TOOLS::PlaceNextSymbolUnit(), SCH_DRAWING_TOOLS::PlaceSymbol(), SCH_EDIT_TOOL::Properties(), SCH_EDIT_TOOL::Rotate(), SCH_EDIT_TOOL::SetAttribute(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_LINE_WIRE_BUS_TOOL::startSegments(), SCH_EDIT_TOOL::Swap(), SCH_DRAWING_TOOLS::SyncSheetsPins(), and SCH_DRAWING_TOOLS::TwoClickPlace().
|
private |
Definition at line 127 of file sch_move_tool.h.
Referenced by doMoveSelection(), getConnectedDragItems(), moveItem(), and orthoLineDrag().
|
private |
Definition at line 131 of file sch_move_tool.h.
Referenced by doMoveSelection(), getConnectedDragItems(), getConnectedItems(), and orthoLineDrag().
|
protectedinherited |
Unique id, assigned by a TOOL_MANAGER instance.
Definition at line 215 of file tool_base.h.
Referenced by TOOL_INTERACTIVE::Activate(), GetId(), IsToolActive(), and TOOL_BASE().
|
protectedinherited |
Definition at line 220 of file tool_base.h.
Referenced by TOOL_INTERACTIVE::Activate(), SELECTION_TOOL::AddItemsToSel(), SELECTION_TOOL::AddItemToSel(), GROUP_TOOL::AddToGroup(), PCB_CONTROL::AppendBoard(), PCB_CONTROL::ApplyDesignBlockLayout(), BOARD_EDITOR_CONTROL::AssignNetclass(), CVPCB_ASSOCIATION_TOOL::Associate(), attachManager(), SCH_SELECTION_TOOL::autostartEvent(), EDIT_TOOL::BooleanPolygons(), BOARD_INSPECTION_TOOL::calculateSelectionRatsnest(), ROUTER_TOOL::CanInlineDrag(), EDIT_TOOL::ChangeTrackLayer(), EDIT_TOOL::ChangeTrackWidth(), GERBVIEW_CONTROL::ClearAllLayers(), BOARD_INSPECTION_TOOL::ClearHighlight(), PCB_SELECTION_TOOL::ClearSelection(), PL_SELECTION_TOOL::ClearSelection(), SCH_SELECTION_TOOL::ClearSelection(), GERBVIEW_SELECTION_TOOL::clearSelection(), PCB_EDIT_TABLE_TOOL::clearSelection(), PAD_TOOL::copyPadSettings(), EDIT_TOOL::copyToClipboard(), ARRAY_TOOL::CreateArray(), PCB_GROUP_TOOL::createCommit(), SCH_GROUP_TOOL::createCommit(), MICROWAVE_TOOL::createInductorBetween(), DRC_TOOL::CrossProbe(), COMMON_TOOLS::Cursor45Crosshairs(), COMMON_TOOLS::CursorControl(), COMMON_TOOLS::CursorFullCrosshairs(), COMMON_TOOLS::CursorSmallCrosshairs(), PCB_CONTROL::CycleLayerPresets(), EDIT_TOOL::DeleteItems(), BOARD_INSPECTION_TOOL::DiffFootprint(), BOARD_EDITOR_CONTROL::doCrossProbePcbToSch(), BOARD_INSPECTION_TOOL::doHideRatsnestNet(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), PCB_SELECTION_TOOL::doSyncSelection(), COMMON_TOOLS::doZoomInOut(), COMMON_TOOLS::doZoomToPreset(), EDIT_TOOL::Drag(), DRAWING_TOOL::DrawArc(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawCircle(), DRAWING_TOOL::DrawDimension(), DRAWING_TOOL::drawOneBezier(), DRAWING_TOOL::DrawRectangle(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), BOARD_EDITOR_CONTROL::DrillOrigin(), EDIT_TOOL::Duplicate(), BOARD_EDITOR_CONTROL::EditFpInFpEditor(), PAD_TOOL::EditPad(), PCB_EDIT_TABLE_TOOL::EditTable(), PCB_SELECTION_TOOL::EnterGroup(), SCH_SELECTION_TOOL::EnterGroup(), PAD_TOOL::EnumeratePads(), KICAD_MANAGER_CONTROL::Execute(), PCB_SELECTION_TOOL::ExitGroup(), SCH_SELECTION_TOOL::ExitGroup(), PCB_SELECTION_TOOL::expandConnection(), EDA_3D_CONTROLLER::ExportImage(), ZONE_FILLER_TOOL::FillAllZones(), PCB_SELECTION_TOOL::filterSelection(), PCB_SELECTION_TOOL::FindItem(), EDIT_TOOL::Flip(), EDIT_TOOL::GetAndPlace(), GetManager(), getModelInternal(), DRAWING_TOOL::getSourceZoneForAction(), PCB_EDIT_TABLE_TOOL::getTableCellSelection(), getToolHolderInternal(), PCB_EDIT_TABLE_TOOL::getToolMgr(), getView(), getViewControls(), PCB_SELECTION_TOOL::grabUnconnected(), COMMON_TOOLS::GridFast1(), COMMON_TOOLS::GridFast2(), COMMON_TOOLS::GridFastCycle(), COMMON_TOOLS::GridNext(), COMMON_TOOLS::GridOrigin(), PCB_CONTROL::GridPlaceOrigin(), COMMON_TOOLS::GridPreset(), COMMON_TOOLS::GridPrev(), PCB_GROUP_TOOL::Group(), SCH_GROUP_TOOL::Group(), EDIT_TOOL::HealShapes(), PCB_CONTROL::HighContrastModeCycle(), GERBVIEW_CONTROL::HighlightControl(), BOARD_INSPECTION_TOOL::HighlightItem(), BOARD_INSPECTION_TOOL::HighlightNet(), BOARD_INSPECTION_TOOL::highlightNet(), PL_EDIT_TOOL::ImportDrawingSheetContent(), FOOTPRINT_EDITOR_CONTROL::ImportFootprint(), EDIT_TOOL::Increment(), SCH_TOOL_BASE< T >::Increment(), ALIGN_DISTRIBUTE_TOOL::Init(), BOARD_EDITOR_CONTROL::Init(), BOARD_INSPECTION_TOOL::Init(), BOARD_REANNOTATE_TOOL::Init(), CONVERT_TOOL::Init(), DRAWING_TOOL::Init(), EDIT_TOOL::Init(), FOOTPRINT_CHOOSER_SELECTION_TOOL::Init(), FOOTPRINT_EDITOR_CONTROL::Init(), GENERATOR_TOOL::Init(), GLOBAL_EDIT_TOOL::Init(), GROUP_TOOL::Init(), PAD_TOOL::Init(), PCB_EDIT_TABLE_TOOL::Init(), PCB_POINT_EDITOR::Init(), PCB_SELECTION_TOOL::Init(), PL_DRAWING_TOOLS::Init(), PL_EDIT_TOOL::Init(), PL_POINT_EDITOR::Init(), POSITION_RELATIVE_TOOL::Init(), ROUTER_TOOL::Init(), SCH_TOOL_BASE< T >::Init(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectConstraints(), BOARD_INSPECTION_TOOL::InspectDRCError(), PCB_CONTROL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), SCH_TOOL_BASE< T >::InteractiveDelete(), EDIT_TOOL::invokeInlineRouter(), EDIT_TOOL::isRouterActive(), IsToolActive(), EDIT_TOOL::JustifyText(), BOARD_INSPECTION_TOOL::LocalRatsnestTool(), CVPCB_CONTROL::Main(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Main(), EDA_3D_CONTROLLER::Main(), GERBVIEW_SELECTION_TOOL::Main(), PCB_PICKER_TOOL::Main(), PCB_SELECTION_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_SELECTION_TOOL::Main(), SCH_SELECTION_TOOL::Main(), ROUTER_TOOL::MainLoop(), PCB_VIEWER_TOOLS::MeasureTool(), EDIT_TOOL::Mirror(), BOARD_EDITOR_CONTROL::modifyLockSelected(), EDIT_TOOL::Move(), EDIT_TOOL::MoveExact(), ARRAY_TOOL::onDialogClosed(), SELECTION_TOOL::onDisambiguationExpire(), COMMON_TOOLS::OnGridChanged(), PCB_POINT_EDITOR::OnSelectionChange(), CONVERT_TOOL::OutsetItems(), PL_EDIT_TOOL::Paste(), PAD_TOOL::pastePadProperties(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), PCB_GROUP_TOOL::PickNewMember(), SCH_GROUP_TOOL::PickNewMember(), EDIT_TOOL::pickReferencePoint(), PCB_CONTROL::placeBoardItems(), BOARD_EDITOR_CONTROL::PlaceFootprint(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), PCB_CONTROL::PlaceLinkedDesignBlock(), DRAWING_TOOL::PlaceReferenceImage(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), GERBVIEW_CONTROL::Print(), PCB_CONTROL::Print(), EDIT_TOOL::Properties(), PAD_TOOL::pushPadSettings(), EDIT_TOOL::rebuildConnectivity(), ZONE_FILLER_TOOL::rebuildConnectivity(), SCH_SELECTION_TOOL::RebuildSelection(), PAD_TOOL::RecombinePad(), GENERATOR_TOOL::RegenerateSelected(), POSITION_RELATIVE_TOOL::RelativeItemSelectionMove(), EDA_3D_CONTROLLER::ReloadBoard(), EDIT_TOOL::Remove(), PCB_POINT_EDITOR::removeCorner(), GROUP_TOOL::RemoveFromGroup(), SELECTION_TOOL::RemoveItemFromSel(), SELECTION_TOOL::RemoveItemsFromSel(), FOOTPRINT_EDITOR_CONTROL::RenameFootprint(), MULTICHANNEL_TOOL::repeatLayout(), PCB_SELECTION_TOOL::RequestSelection(), SCH_SELECTION_TOOL::RequestSelection(), COMMON_TOOLS::Reset(), EDA_3D_CONTROLLER::Reset(), GENERATOR_TOOL_PNS_PROXY::Reset(), PNS::TOOL_BASE::Reset(), COMMON_TOOLS::ResetLocalCoords(), ROUTER_TOOL::restoreSelection(), EDIT_TOOL::Rotate(), ROUTER_TOOL::RouteSelected(), DRC_TOOL::RunTests(), PCB_CONTROL::SaveToLinkedDesignBlock(), SCH_SELECTION_TOOL::Selectable(), PCB_SELECTION_TOOL::SelectAll(), SCH_SELECTION_TOOL::SelectAll(), PCB_SELECTION_TOOL::SelectColumns(), SCH_SELECTION_TOOL::SelectColumns(), SCH_SELECTION_TOOL::SelectConnection(), PCB_TOOL_BASE::selection(), PCB_TOOL_BASE::selection(), COMMON_TOOLS::SelectionTool(), GERBVIEW_SELECTION_TOOL::SelectItem(), PCB_PICKER_TOOL::SelectItemInteractively(), GERBVIEW_SELECTION_TOOL::SelectItems(), SCH_SELECTION_TOOL::selectLasso(), PCB_SELECTION_TOOL::SelectMultiple(), SCH_SELECTION_TOOL::SelectMultiple(), PL_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectNet(), SCH_SELECTION_TOOL::SelectNext(), PL_SELECTION_TOOL::SelectPoint(), GERBVIEW_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::selectPoint(), PCB_TEST_SELECTION_TOOL::selectPoint(), SCH_SELECTION_TOOL::selectPoint(), PCB_PICKER_TOOL::SelectPointInteractively(), PCB_SELECTION_TOOL::SelectPolyArea(), SCH_SELECTION_TOOL::SelectPrevious(), PCB_SELECTION_TOOL::SelectRectArea(), PCB_SELECTION_TOOL::SelectRows(), SCH_SELECTION_TOOL::SelectRows(), PCB_SELECTION_TOOL::selectSameSheet(), PCB_SELECTION_TOOL::selectSheetContents(), PCB_SELECTION_TOOL::SelectTable(), SCH_SELECTION_TOOL::SelectTable(), PCB_SELECTION_TOOL::selectTableCells(), SCH_SELECTION_TOOL::selectTableCells(), DRAWING_TOOL::SetAnchor(), TOOL_INTERACTIVE::SetContextMenu(), EDA_3D_CONTROLLER::SetMaterial(), PCB_SELECTION_TOOL::SetSelectPoly(), SCH_SELECTION_TOOL::SetSelectPoly(), PCB_SELECTION_TOOL::SetSelectRect(), SCH_SELECTION_TOOL::SetSelectRect(), DRC_TOOL::ShowDRCDialog(), BOARD_INSPECTION_TOOL::ShowFootprintLinks(), EDIT_TOOL::SimplifyPolygons(), PCB_CONTROL::SnapMode(), EDIT_TOOL::Swap(), SCH_SELECTION_TOOL::SyncSelection(), COMMON_TOOLS::ToggleCursor(), EDA_3D_CONTROLLER::ToggleLayersManager(), EDA_3D_CONTROLLER::ToggleRaytracing(), EDA_3D_CONTROLLER::ToggleVisibility(), TOOL_BASE(), BOARD_EDITOR_CONTROL::TrackWidthDec(), BOARD_EDITOR_CONTROL::TrackWidthInc(), GROUP_TOOL::Ungroup(), PCB_SELECTION_TOOL::unrouteSegment(), PCB_SELECTION_TOOL::unrouteSelected(), PCB_SELECTION_TOOL::UnselectAll(), SCH_SELECTION_TOOL::UnselectAll(), GERBVIEW_SELECTION_TOOL::UnselectItem(), GERBVIEW_SELECTION_TOOL::UnselectItems(), PNS::TOOL_BASE::updateEndItem(), PCB_POINT_EDITOR::updateItem(), BOARD_INSPECTION_TOOL::UpdateLocalRatsnest(), GERBVIEW_CONTROL::UpdateMessagePanel(), PCB_CONTROL::UpdateMessagePanel(), PL_EDITOR_CONTROL::UpdateMessagePanel(), EDIT_TOOL::updateModificationPoint(), MULTICHANNEL_TOOL::UpdatePickedItem(), PNS::TOOL_BASE::updateStartItem(), BOARD_EDITOR_CONTROL::ViaSizeDec(), BOARD_EDITOR_CONTROL::ViaSizeInc(), TOOL_INTERACTIVE::Wait(), BOARD_EDITOR_CONTROL::ZoneDuplicate(), ZONE_FILLER_TOOL::ZoneFill(), BOARD_EDITOR_CONTROL::ZoneMerge(), and ZONE_FILLER_TOOL::ZoneUnfill().
|
protectedinherited |
Names are expected to obey the format application.ToolName (eg.
pcbnew.InteractiveSelection).
Definition at line 219 of file tool_base.h.
Referenced by GetName(), and TOOL_BASE().
|
protectedinherited |
Definition at line 214 of file tool_base.h.
Referenced by GetType(), and TOOL_BASE().
|
protectedinherited |
Definition at line 374 of file sch_tool_base.h.
Referenced by SCH_DRAWING_TOOLS::AutoPlaceAllSheetPins(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SCH_MOVE_TOOL::doMoveSelection(), SCH_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), SCH_LINE_WIRE_BUS_TOOL::finishSegments(), SCH_DRAWING_TOOLS::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), SCH_DRAWING_TOOLS::PlaceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), SCH_DRAWING_TOOLS::SingleClickPlace(), and SCH_DRAWING_TOOLS::TwoClickPlace().