| 
    KiCad PCB EDA Suite
    
   | 
 
#include <sch_selection_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_SELECTION_TOOL () | |
| ~SCH_SELECTION_TOOL () | |
| bool | Init () override | 
| Init() is called once upon a registration of the tool.      | |
| void | Reset (RESET_REASON aReason) override | 
| Bring the tool to a known, initial state.      | |
| int | Main (const TOOL_EVENT &aEvent) | 
| The main loop.   | |
| void | OnIdle (wxIdleEvent &aEvent) | 
| Zoom the screen to fit the bounding box for cross probing/selection sync.   | |
| void | ZoomFitCrossProbeBBox (const BOX2I &aBBox) | 
| void | EnterGroup () override | 
| Enter the group at the head of the current selection.   | |
| void | ExitGroup (bool aSelectGroup=false) override | 
| Leave the currently-entered group.   | |
| SCH_GROUP * | GetEnteredGroup () | 
| SCH_SELECTION & | GetSelection () | 
| SCH_SELECTION & | RequestSelection (const std::vector< KICAD_T > &aScanTypes={ SCH_LOCATE_ANY_T }, bool aPromoteCellSelections=false, bool aPromoteGroups=false) | 
| Return either an existing selection (filtered), or the selection at the current cursor position if the existing selection is empty.   | |
| bool | SelectPoint (const VECTOR2I &aWhere, const std::vector< KICAD_T > &aScanTypes={ SCH_LOCATE_ANY_T }, EDA_ITEM **aItem=nullptr, bool *aSelectionCancelledFlag=nullptr, bool aCheckLocked=false, bool aAdd=false, bool aSubtract=false, bool aExclusiveOr=false) | 
| Perform a click-type selection at a point (usually the cursor position).   | |
| EDA_ITEM * | GetNode (const VECTOR2I &aPosition) | 
| Finds a connected item at a point (usually the cursor position).   | |
| int | SelectNode (const TOOL_EVENT &aEvent) | 
| Selects the connected item at the current cursor position.   | |
| int | SelectConnection (const TOOL_EVENT &aEvent) | 
| If a connected item is selected then expand the selection to the entire connection, otherwise select connection under the current cursor position.   | |
| int | SelectColumns (const TOOL_EVENT &aEvent) | 
| int | SelectRows (const TOOL_EVENT &aEvent) | 
| int | SelectTable (const TOOL_EVENT &aEvent) | 
| Clear current selection event handler.   | |
| int | ClearSelection (const TOOL_EVENT &aEvent) | 
| Select all visible items in sheet.   | |
| int | SelectAll (const TOOL_EVENT &aEvent) | 
| Unselect all visible items in sheet.   | |
| int | UnselectAll (const TOOL_EVENT &aEvent) | 
| Select next net item.   | |
| int | SelectNext (const TOOL_EVENT &aEvent) | 
| Select previous net item.   | |
| int | SelectPrevious (const TOOL_EVENT &aEvent) | 
| void | ClearSelection (bool aQuietMode=false) | 
| bool | Selectable (const EDA_ITEM *aItem, const VECTOR2I *aPos=nullptr, bool checkVisibilityOnly=false) const | 
| Check conditions for an item to be selected.   | |
| void | GuessSelectionCandidates (SCH_COLLECTOR &collector, const VECTOR2I &aPos) | 
| Apply heuristics to try and determine a single object when multiple are found under the cursor.   | |
| void | RebuildSelection () | 
| Rebuild the selection from the EDA_ITEMs' selection flags.   | |
| bool | CollectHits (SCH_COLLECTOR &aCollector, const VECTOR2I &aWhere, const std::vector< KICAD_T > &aScanTypes={ SCH_LOCATE_ANY_T }) | 
| Collect one or more items at a given point.   | |
| void | SyncSelection (const std::optional< SCH_SHEET_PATH > &targetSheetPath, SCH_ITEM *focusItem, const std::vector< SCH_ITEM * > &items) | 
| SCH_SELECTION_FILTER_OPTIONS & | GetFilter () | 
| int | UpdateMenu (const TOOL_EVENT &aEvent) | 
| Update a menu's state based on the current selection.   | |
| int | AddItemToSel (const TOOL_EVENT &aEvent) | 
| void | AddItemToSel (EDA_ITEM *aItem, bool aQuietMode=false) | 
| int | AddItemsToSel (const TOOL_EVENT &aEvent) | 
| void | AddItemsToSel (EDA_ITEMS *aList, bool aQuietMode=false) | 
| int | RemoveItemFromSel (const TOOL_EVENT &aEvent) | 
| void | RemoveItemFromSel (EDA_ITEM *aItem, bool aQuietMode=false) | 
| int | RemoveItemsFromSel (const TOOL_EVENT &aEvent) | 
| void | RemoveItemsFromSel (EDA_ITEMS *aList, bool aQuietMode=false) | 
| void | RemoveItemsFromSel (std::vector< KIID > *aList, bool aQuietMode=false) | 
| A safer version of RemoveItemsFromSel( EDA_ITEMS ) which doesn't require the items to still exist.   | |
| int | ReselectItem (const TOOL_EVENT &aEvent) | 
| void | BrightenItem (EDA_ITEM *aItem) | 
| void | UnbrightenItem (EDA_ITEM *aItem) | 
| int | SelectionMenu (const TOOL_EVENT &aEvent) | 
| Show a popup menu to trim the COLLECTOR passed as aEvent's parameter down to a single item.   | |
| 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 | |
| SELECTION & | selection () override | 
| Return a reference to the selection.   | |
| void | onDisambiguationExpire (wxTimerEvent &aEvent) | 
| Start the process to show our disambiguation menu once the user has kept the mouse down for the minimum time.   | |
| void | setModifiersState (bool aShiftState, bool aCtrlState, bool aAltState) | 
| Set the configuration of m_additive, m_subtractive, m_exclusive_or, m_skip_heuristics from the state of modifier keys SHIFT, CTRL, ALT and depending on the OS.   | |
| bool | hasModifier () | 
| True if a selection modifier is enabled, false otherwise.   | |
| virtual bool | ctrlClickHighlights () | 
| Determine if ctrl-click is highlight net or XOR selection.   | |
| bool | doSelectionMenu (COLLECTOR *aCollector) | 
| 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 | |
| bool | m_additive | 
| Items should be added to sel (instead of replacing).   | |
| bool | m_subtractive | 
| Items should be removed from selection.   | |
| bool | m_exclusive_or | 
| Items' selection state should be toggled.   | |
| bool | m_multiple | 
| Multiple selection mode is active.   | |
| bool | m_skip_heuristics | 
| Show disambiguation menu for all items under the cursor rather than trying to narrow them down first using heuristics.   | |
| bool | m_highlight_modifier | 
| Select highlight net on left click.   | |
| bool | m_drag_additive | 
| Add multiple items to selection.   | |
| bool | m_drag_subtractive | 
| Remove multiple from selection.   | |
| bool | m_canceledMenu | 
| Sets to true if the disambiguation menu was canceled.   | |
| wxTimer | m_disambiguateTimer | 
| Timer to show the disambiguate menu.   | |
| VECTOR2I | m_originalCursor | 
| Location of original cursor when starting click.   | |
| 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 | |
| OPT_TOOL_EVENT | autostartEvent (TOOL_EVENT *aEvent, EE_GRID_HELPER &aGrid, SCH_ITEM *aItem) | 
| std::set< SCH_ITEM * > | expandConnectionWithGraph (const SCH_SELECTION &aItems) | 
| std::set< SCH_ITEM * > | expandConnectionGraphically (const SCH_SELECTION &aItems) | 
| void | narrowSelection (SCH_COLLECTOR &collector, const VECTOR2I &aWhere, bool aCheckLocked, bool aSelectedOnly=false, SCH_SELECTION_FILTER_OPTIONS *aRejected=nullptr) | 
| Apply rules to narrow the collection down to selectable objects, and then heuristics to try and narrow it to a single object.   | |
| bool | selectPoint (SCH_COLLECTOR &aCollector, const VECTOR2I &aWhere, EDA_ITEM **aItem=nullptr, bool *aSelectionCancelledFlag=nullptr, bool aAdd=false, bool aSubtract=false, bool aExclusiveOr=false) | 
| Perform a click-type selection at a point (usually the cursor position).   | |
| bool | selectMultiple () | 
| Handle drawing a selection box that allows one to select many items at the same time.   | |
| bool | selectLasso () | 
| int | SetSelectRect (const TOOL_EVENT &aEvent) | 
| int | SetSelectPoly (const TOOL_EVENT &aEvent) | 
| void | SelectMultiple (KIGFX::PREVIEW::SELECTION_AREA &aArea, bool aSubtractive=false, bool aExclusiveOr=false) | 
| bool | selectTableCells (SCH_TABLE *aTable) | 
| Handle a table cell drag selection within a table.   | |
| void | InitializeSelectionState (SCH_TABLE *aTable) | 
| Initialize the selection state of table cells.   | |
| void | SelectCellsBetween (const VECTOR2D &start, const VECTOR2D &end, SCH_TABLE *aTable) | 
| Select table cells within a rectangular area between two points.   | |
| int | disambiguateCursor (const TOOL_EVENT &aEvent) | 
| Handle disambiguation actions including displaying the menu.   | |
| void | select (EDA_ITEM *aItem) override | 
| Take necessary action to mark an item as selected.   | |
| void | unselect (EDA_ITEM *aItem) override | 
| Take necessary action to mark an item as unselected.   | |
| void | highlight (EDA_ITEM *aItem, int aMode, SELECTION *aGroup=nullptr) override | 
| Highlight the item visually.   | |
| void | unhighlight (EDA_ITEM *aItem, int aMode, SELECTION *aGroup=nullptr) override | 
| Unhighlight the item visually.   | |
| void | updateReferencePoint () | 
| Set the reference point to the anchor of the top-left item.   | |
| bool | selectionContains (const VECTOR2I &aPoint) const | 
| int | updateSelection (const TOOL_EVENT &aEvent) | 
| Event handler to update the selection VIEW_ITEM.   | |
| bool | itemPassesFilter (EDA_ITEM *aItem, SCH_SELECTION_FILTER_OPTIONS *aRejected=nullptr) | 
| Return true if the given item passes the stateful selection filter.   | |
| void | filterCollectorForHierarchy (SCH_COLLECTOR &aCollector, bool aMultiselect) const | 
| In general we don't want to select both a parent and any of it's children.   | |
| void | filterCollectedItems (SCH_COLLECTOR &aCollector, bool aMultiSelect) | 
| Set up handlers for various events.   | |
| void | setTransitions () override | 
| This method is meant to be overridden in order to specify handlers for events.   | |
| 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 | 
Definition at line 70 of file sch_selection_tool.h.
      
  | 
  inherited | 
Determine the reason of reset for a tool.
Definition at line 77 of file tool_base.h.
| SCH_SELECTION_TOOL::SCH_SELECTION_TOOL | ( | ) | 
Definition at line 177 of file sch_selection_tool.cpp.
References ARROW, INSIDE_RECTANGLE, m_bodyStyle, m_enteredGroup, m_filter, m_frame, m_isSymbolEditor, m_isSymbolViewer, m_nonModifiedCursor, m_previous_first_cell, m_selection, m_selectionMode, m_unit, and SELECTION_TOOL::SELECTION_TOOL().
| SCH_SELECTION_TOOL::~SCH_SELECTION_TOOL | ( | ) | 
Definition at line 194 of file sch_selection_tool.cpp.
References TOOL_BASE::getView(), m_enteredGroupOverlay, m_selection, and KIGFX::VIEW::Remove().
      
  | 
  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::DrawBarcode(), 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(), POSITION_RELATIVE_TOOL::InteractiveOffset(), 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(), EDIT_TOOL::Remove(), ROUTER_TOOL::RouteSelected(), PCB_PICKER_TOOL::SelectItemInteractively(), PCB_PICKER_TOOL::SelectPointInteractively(), DRAWING_TOOL::SetAnchor(), and DRC_TOOL::ShowDRCDialog().
      
  | 
  inherited | 
Definition at line 141 of file selection_tool.cpp.
References AddItemsToSel(), TOOL_EVENT::Parameter(), selection(), and SELECTION::SetIsHover().
Referenced by AddItemsToSel(), API_HANDLER_PCB::handleAddToSelection(), SCH_DRAWING_TOOLS::ImportSheet(), SCH_SELECTION_TOOL::Main(), DIALOG_EXCHANGE_FOOTPRINTS::OnOKClicked(), PCB_EDIT_FRAME::RebuildAndRefresh(), PCB_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), and SCH_SELECTION_TOOL::setTransitions().
      
  | 
  inherited | 
Definition at line 149 of file selection_tool.cpp.
References TOOL_BASE::m_toolMgr, select(), and EVENTS::SelectedEvent.
      
  | 
  inherited | 
Definition at line 108 of file selection_tool.cpp.
References AddItemToSel(), TOOL_EVENT::Parameter(), selection(), and SELECTION::SetIsHover().
Referenced by AddItemToSel(), SCH_DRAWING_TOOLS::ImportSheet(), PL_EDIT_TOOL::InteractiveDelete(), SCH_TOOL_BASE< T >::InteractiveDelete(), DIALOG_INSPECTOR::onCellClicked(), PCB_EDIT_FRAME::OnCrossProbeFlashTimer(), SCH_EDIT_FRAME::OnCrossProbeFlashTimer(), DRAWING_TOOL::PlaceReferenceImage(), DRAWING_TOOL::PlaceTuningPattern(), ReselectItem(), SCH_SELECTION_TOOL::SelectConnection(), PCB_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), SCH_SELECTION_TOOL::setTransitions(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataFromWindow(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
      
  | 
  inherited | 
Definition at line 116 of file selection_tool.cpp.
References TOOL_BASE::m_toolMgr, select(), and EVENTS::SelectedEvent.
      
  | 
  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 | 
Definition at line 1280 of file sch_selection_tool.cpp.
References EE_GRID_HELPER::BestSnapAnchor(), SCH_CONNECTION::ConfigureFromLabel(), SCHEMATIC::ConnectionGraph(), SCH_ACTIONS::drawBus, SCH_ACTIONS::drawLines, SCH_ACTIONS::drawWire, KIGFX::VIEW_CONTROLS::ForceCursorPosition(), EE_GRID_HELPER::GetItemGrid(), SCH_SYMBOL::GetPin(), SCH_LABEL_BASE::GetShownText(), TOOL_BASE::getViewControls(), SCH_POINT_EDITOR::HasPoint(), SCH_CONNECTION::IsBus(), SCH_LINE::IsBus(), SCH_LINE::IsGraphicLine(), SCH_ITEM::IsPointClickableAnchor(), SCH_BUS_WIRE_ENTRY::m_connected_bus_item, m_frame, TOOL_BASE::m_toolMgr, pin, TOOL_EVENT::Position(), SCH_BUS_BUS_ENTRY_T, SCH_BUS_WIRE_ENTRY_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_LABEL_T, SCH_LINE_T, SCH_SHEET_PIN_T, SCH_SYMBOL_T, SCH_ITEM::Schematic(), and EDA_ITEM::Type().
Referenced by Main().
      
  | 
  inherited | 
Definition at line 220 of file selection_tool.cpp.
References BRIGHTENED, and highlight().
Referenced by SCH_EDIT_FRAME::DisplayCurrentSheet(), PCB_CONTROL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), SCH_TOOL_BASE< T >::InteractiveDelete(), PANEL_COMPONENT_CLASS_ASSIGNMENT::OnHighlightItemsClick(), SCH_EDITOR_CONTROL::SimProbe(), and SCH_EDITOR_CONTROL::SimTune().
| void SCH_SELECTION_TOOL::ClearSelection | ( | bool | aQuietMode = false | ) | 
Definition at line 3544 of file sch_selection_tool.cpp.
References EVENTS::ClearedEvent, TOOL_BASE::getView(), m_selection, TOOL_BASE::m_toolMgr, SELECTED, unhighlight(), and KIGFX::VIEW::Update().
| int SCH_SELECTION_TOOL::ClearSelection | ( | const TOOL_EVENT & | aEvent | ) | 
Select all visible items in sheet.
Definition at line 3201 of file sch_selection_tool.cpp.
References ClearSelection().
Referenced by SCH_EDITOR_CONTROL::AssignNetclass(), ClearSelection(), EnterGroup(), ExitGroup(), SCH_DRAWING_TOOLS::ImportSheet(), Main(), SCH_EDIT_FRAME::OnCrossProbeFlashTimer(), DIALOG_SYMBOL_FIELDS_TABLE::OnTableRangeSelected(), RequestSelection(), SelectConnection(), selectLasso(), selectMultiple(), SelectNext(), selectPoint(), SelectPrevious(), SelectTable(), setTransitions(), SCH_EDITOR_CONTROL::SimProbe(), SCH_EDITOR_CONTROL::SimTune(), and SyncSelection().
| bool SCH_SELECTION_TOOL::CollectHits | ( | SCH_COLLECTOR & | aCollector, | 
| const VECTOR2I & | aWhere, | ||
| const std::vector< KICAD_T > & | aScanTypes = { SCH_LOCATE_ANY_T } ) | 
Collect one or more items at a given point.
This method does not attempt to disambiguate multiple items and is simply "collecting".
| aCollector | [in, out] Provides collection conditions and stores collected items. | 
| aWhere | Point from which the collection should be made. | 
| aScanTypes | [optional] A list of item types that are acceptable for collection. Set selection to items passed by parameter. Zooms to fit, if enabled. | 
Definition at line 1393 of file sch_selection_tool.cpp.
References COLLECTOR::Append(), SCH_COLLECTOR::Collect(), COLLECTOR::GetCount(), LIB_SYMBOL::GetDrawItems(), TOOL_BASE::getView(), COLLECTOR::HasItem(), HITTEST_THRESHOLD_PIXELS, KiROUND(), m_bodyStyle, m_filter, m_frame, m_isSymbolEditor, SCH_COLLECTOR::m_ShowPinElectricalTypes, COLLECTOR::m_Threshold, m_unit, pin, and SCH_PIN_T.
Referenced by SCH_TOOL_BASE< T >::InteractiveDelete(), Main(), and SelectPoint().
      
  | 
  inlineprotectedvirtualinherited | 
Determine if ctrl-click is highlight net or XOR selection.
Reimplemented in PCB_SELECTION_TOOL.
Definition at line 145 of file selection_tool.h.
Referenced by setModifiersState().
      
  | 
  private | 
Handle disambiguation actions including displaying the menu.
Definition at line 1350 of file sch_selection_tool.cpp.
References SELECTION_TOOL::m_additive, SELECTION_TOOL::m_canceledMenu, SELECTION_TOOL::m_exclusive_or, SELECTION_TOOL::m_originalCursor, SELECTION_TOOL::m_skip_heuristics, SELECTION_TOOL::m_subtractive, SCH_LOCATE_ANY_T, SelectPoint(), and SELECTION_TOOL::setModifiersState().
Referenced by setTransitions().
      
  | 
  protectedinherited | 
This must be the second time through the loop, and the user has requested the full, non-limited list of selection items
Definition at line 258 of file selection_tool.cpp.
References _, ACTION_MENU::Add(), KIGFX::VIEW::Add(), COLLECTOR::Append(), BRIGHTENED, CMENU_NOW, COLLECTOR::Combine(), ACTION_MENU::DisplayTitle(), COLLECTOR::Empty(), COLLECTOR::GetCount(), TOOL_BASE::getEditFrame(), EDA_ITEM::GetItemDescription(), EDA_ITEM::GetMenuImage(), TOOL_BASE::getView(), COLLECTOR::HasAdditionalItems(), highlight(), info, INVALID_BITMAP, LAYER_SELECT_OVERLAY, COLLECTOR::m_MenuTitle, TOOL_BASE::m_toolMgr, KIGFX::VIEW::Remove(), TOOL_INTERACTIVE::SetContextMenu(), ACTION_MENU::SetIcon(), KIGFX::VIEW_GROUP::SetLayer(), ACTION_MENU::SetTitle(), TA_CHOICE_MENU_CHOICE, TA_CHOICE_MENU_CLOSED, TA_CHOICE_MENU_UPDATE, unhighlight(), KIGFX::VIEW::UpdateItems(), and TOOL_INTERACTIVE::Wait().
Referenced by SelectionMenu(), PL_SELECTION_TOOL::SelectPoint(), GERBVIEW_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::selectPoint(), and SCH_SELECTION_TOOL::selectPoint().
      
  | 
  overridevirtual | 
Enter the group at the head of the current selection.
Reimplemented from SELECTION_TOOL.
Definition at line 1228 of file sch_selection_tool.cpp.
References ClearSelection(), ENDPOINT, ENTERED, ExitGroup(), TOOL_BASE::getView(), KIGFX::VIEW::Hide(), m_enteredGroup, m_enteredGroupOverlay, m_selection, TOOL_BASE::m_toolMgr, NO_RECURSE, SCH_GROUP_T, SCH_LINE_T, select(), EVENTS::SelectedEvent, EDA_ITEM::SetFlags(), STARTPOINT, EDA_ITEM::Type(), and KIGFX::VIEW::Update().
Referenced by Main().
      
  | 
  overridevirtual | 
Leave the currently-entered group.
| aSelectGroup | [optional] Select the group after leaving. | 
Reimplemented from SELECTION_TOOL.
Definition at line 1258 of file sch_selection_tool.cpp.
References ClearSelection(), ENTERED, TOOL_BASE::getView(), KIGFX::VIEW::Hide(), m_enteredGroup, m_enteredGroupOverlay, TOOL_BASE::m_toolMgr, select(), EVENTS::SelectedEvent, and KIGFX::VIEW::Update().
Referenced by EnterGroup(), Main(), Reset(), select(), and selectPoint().
      
  | 
  private | 
Definition at line 2989 of file sch_selection_tool.cpp.
References SCH_ITEM::IsConnectable(), itemPassesFilter(), m_frame, and Selectable().
Referenced by SelectConnection().
      
  | 
  private | 
Definition at line 2889 of file sch_selection_tool.cpp.
References SCH_ITEM::ConnectedItems(), SCHEMATIC::ConnectionGraph(), SCH_EDIT_FRAME::GetCurrentSheet(), SCH_ITEM::IsConnectable(), EDA_ITEM::IsSelected(), itemPassesFilter(), m_frame, m_isSymbolEditor, m_isSymbolViewer, pin, SCH_SYMBOL_T, SCH_EDIT_FRAME::Schematic(), Selectable(), and EDA_ITEM::Type().
Referenced by SelectConnection().
      
  | 
  private | 
Set up handlers for various events.
Definition at line 2043 of file sch_selection_tool.cpp.
References COLLECTOR::GetCount(), itemPassesFilter(), and COLLECTOR::Remove().
Referenced by SelectMultiple().
      
  | 
  private | 
In general we don't want to select both a parent and any of it's children.
This includes both symbols and their items, and groups and their members.
Definition at line 2667 of file sch_selection_tool.cpp.
References COLLECTOR::Append(), COLLECTOR::GetCount(), EDA_ITEM::GetFlags(), SCH_ITEM::GetParentSymbol(), COLLECTOR::HasItem(), m_enteredGroup, m_isSymbolEditor, COLLECTOR::Remove(), SELECTION_CANDIDATE, SCH_GROUP::TopLevelGroup(), and SCH_GROUP::WithinScope().
Referenced by narrowSelection(), SelectAll(), SelectMultiple(), and selectPoint().
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(), EDIT_TOOL::EditVertices(), 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(), BOARD_EDITOR_CONTROL::OnAngleSnapModeChanged(), FOOTPRINT_EDITOR_CONTROL::OnAngleSnapModeChanged(), 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().
      
  | 
  inline | 
Definition at line 107 of file sch_selection_tool.h.
References m_enteredGroup.
Referenced by SCH_COMMIT::pushSchEdit(), and SCH_EDIT_TOOL::RepeatDrawItem().
      
  | 
  inline | 
Definition at line 227 of file sch_selection_tool.h.
References m_filter.
Referenced by SCH_EDIT_FRAME::LoadProjectSettings(), SCH_EDIT_FRAME::SaveProjectLocalSettings(), SYMBOL_EDIT_FRAME::SaveSettings(), and SYMBOL_EDIT_FRAME::SYMBOL_EDIT_FRAME().
      
  | 
  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().
Finds a connected item at a point (usually the cursor position).
Iterative process with a decreasing slop factor.
| aPosition | Cursor position from which the search should be made. | 
Definition at line 2858 of file sch_selection_tool.cpp.
References SCH_COLLECTOR::Collect(), connectedTypes, COLLECTOR::GetCount(), TOOL_BASE::getView(), HITTEST_THRESHOLD_PIXELS, KiROUND(), m_frame, and COLLECTOR::m_Threshold.
Referenced by highlightNet(), and SCH_EDITOR_CONTROL::SimProbe().
| SCH_SELECTION & SCH_SELECTION_TOOL::GetSelection | ( | ) | 
Definition at line 1387 of file sch_selection_tool.cpp.
References m_selection.
Referenced by SCH_EDIT_FRAME::AnnotateSymbols(), SCH_EDITOR_CONTROL::AssignNetclass(), SYMBOL_EDITOR_EDIT_TOOL::ConvertStackedPins(), SCH_INSPECTION_TOOL::CrossProbe(), SCH_EDITOR_CONTROL::doCrossProbeSchToPcb(), SCH_INSPECTION_TOOL::ExcludeMarker(), SYMBOL_EDITOR_EDIT_TOOL::ExplodeStackedPin(), SCH_EDITOR_CONTROL::FindNetInInspector(), SCH_PROPERTIES_PANEL::getSelection(), SYMBOL_EDIT_FRAME::HardRedraw(), SCH_DRAWING_TOOLS::ImportSheet(), Main(), SCH_EDITOR_CONTROL::Paste(), SYMBOL_EDITOR_EDIT_TOOL::PinTable(), SCH_EDITOR_CONTROL::PlaceLinkedDesignBlock(), SCH_PRINTOUT::PrintPage(), SYMBOL_EDITOR_EDIT_TOOL::Redo(), SCH_BASE_FRAME::RefreshZoomDependentItems(), SCH_EDITOR_CONTROL::SaveToLinkedDesignBlock(), DIALOG_GLOBAL_EDIT_TEXT_AND_GRAPHICS::TransferDataToWindow(), DIALOG_SYMBOL_FIELDS_TABLE::TransferDataToWindow(), SYMBOL_EDITOR_EDIT_TOOL::Undo(), ALT_PIN_FUNCTION_MENU::update(), BODY_STYLE_MENU::update(), PIN_TRICKS_MENU::update(), SYMBOL_UNIT_MENU::update(), and SCH_INSPECTION_TOOL::UpdateMessagePanel().
      
  | 
  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::DrawBarcode(), 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(), POSITION_RELATIVE_TOOL::InteractiveOffset(), 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(), 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(), SCH_SELECTION_TOOL::SelectConnection(), 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::DrawBarcode(), 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(), POSITION_RELATIVE_TOOL::InteractiveOffset(), 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(), 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().
| void SCH_SELECTION_TOOL::GuessSelectionCandidates | ( | SCH_COLLECTOR & | collector, | 
| const VECTOR2I & | aPos ) | 
Apply heuristics to try and determine a single object when multiple are found under the cursor.
Definition at line 1762 of file sch_selection_tool.cpp.
References ANGLE_HORIZONTAL, ANGLE_VERTICAL, ARC, EDA_ITEM::ClearFlags(), SHAPE_RECT::Collide(), BOX2< Vec >::Contains(), SEG::Distance(), VECTOR2< T >::Distance(), SCH_SYMBOL::GetBodyBoundingBox(), EDA_ITEM::GetBoundingBox(), SCH_FIELD::GetBoundingBox(), BOX2< Vec >::GetCenter(), COLLECTOR::GetCount(), EDA_TEXT::GetEffectiveTextShape(), BOX2< Vec >::GetHeight(), EDA_ITEM::GetParent(), BOX2< Vec >::GetPosition(), SCH_LINE::GetSeg(), EDA_SHAPE::GetShape(), EDA_TEXT::GetTextAngle(), SYMBOL::GetTransform(), TOOL_BASE::getView(), BOX2< Vec >::GetWidth(), EDA_ITEM::HitTest(), BOX2< Vec >::Inflate(), EDA_SHAPE::IsFilledForHitTesting(), EDA_ANGLE::IsHorizontal(), KiROUND(), m_frame, COLLECTOR::m_Threshold, EDA_SHAPE::MakeEffectiveShapesForHitTesting(), POLY, SCH_JUNCTION_T, SCH_PIN_T, SCH_SYMBOL_T, EDA_ITEM::SetFlags(), SHOW_ELEC_TYPE, table, text, COLLECTOR::Transfer(), EDA_ITEM::Type(), and TRANSFORM::y1.
Referenced by SCH_TOOL_BASE< T >::InteractiveDelete(), narrowSelection(), SCH_EDITOR_CONTROL::SimProbe(), and SCH_EDITOR_CONTROL::SimTune().
      
  | 
  protectedinherited | 
True if a selection modifier is enabled, false otherwise.
Definition at line 87 of file selection_tool.cpp.
References m_additive, m_exclusive_or, and m_subtractive.
Referenced by PCB_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), SCH_SELECTION_TOOL::Main(), and onDisambiguationExpire().
      
  | 
  overrideprivatevirtual | 
Highlight the item visually.
| aItem | The item to be highlighted. | 
| aMode | Either SELECTED or BRIGHTENED | 
| aGroup | [otpional] A group to add the item to. | 
Implements SELECTION_TOOL.
Definition at line 3583 of file sch_selection_tool.cpp.
References SELECTION::Add(), BRIGHTENED, EDA_ITEM::GetParent(), TOOL_BASE::getView(), KIGFX::VIEW::Hide(), NO_RECURSE, KIGFX::REPAINT, SCH_GROUP_T, SCHEMATIC_T, SELECTED, EDA_ITEM::SetBrightened(), EDA_ITEM::SetSelected(), EDA_ITEM::Type(), and KIGFX::VIEW::Update().
Referenced by select().
      
  | 
  overridevirtual | 
Init() is called once upon a registration of the tool.
Reimplemented from TOOL_BASE.
Definition at line 254 of file sch_selection_tool.cpp.
References SCH_ACTIONS::assignNetclass, SCH_ACTIONS::autoplaceAllSheetPins, SCH_ACTIONS::breakWire, SCH_ACTIONS::clearHighlight, connectedLineTypes, connectedTypes, SELECTION_CONDITIONS::Count(), crossProbingTypes, SCH_ACTIONS::drawBus, SCH_ACTIONS::drawWire, SCH_ACTIONS::editPageNumber, SELECTION_CONDITIONS::Empty(), SCH_ACTIONS::enterSheet, expandConnectionGraphTypes, SCH_ACTIONS::findNetInInspector, ACTIONS::finishInteractive, SYMBOL_EDIT_FRAME::GetBodyStyle(), SCH_EDIT_FRAME::GetCurrentSheet(), TOOL_BASE::getEditFrame(), SCH_EDIT_FRAME::GetHighlightedConnection(), GetSameSymbolMultiUnitSelection(), SYMBOL_EDIT_FRAME::GetUnit(), ACTIONS::groupEnter, ACTIONS::groupLeave, SELECTION_CONDITIONS::HasType(), SELECTION_CONDITIONS::HasTypes(), SELECTION_CONDITIONS::Idle(), SCH_LINE_WIRE_BUS_TOOL::IsDrawingLineWireOrBus(), SCH_SHEET_PATH::Last(), SCH_ACTIONS::leaveSheet, SELECTION_CONDITIONS::LessThan(), lineTypes, m_bodyStyle, SELECTION_TOOL::m_disambiguateTimer, m_enteredGroup, m_frame, m_isSymbolEditor, m_isSymbolViewer, TOOL_INTERACTIVE::m_menu, m_unit, SELECTION_CONDITIONS::MoreThan(), SELECTION_TOOL::onDisambiguationExpire(), SELECTION_CONDITIONS::OnlyTypes(), SCH_ACTIONS::pinTable, SCH_ACTIONS::placeClassLabel, SCH_ACTIONS::placeGlobalLabel, SCH_ACTIONS::placeHierLabel, SCH_ACTIONS::placeJunction, SCH_ACTIONS::placeLabel, SCH_ACTIONS::placeLinkedDesignBlock, SCH_ACTIONS::placeSheetPin, SCHEMATIC::Root(), SCH_ACTIONS::saveToLinkedDesignBlock, SCH_GROUP_T, SCH_PIN_T, SCH_EDIT_FRAME::Schematic(), ACTIONS::selectColumns, SCH_ACTIONS::selectConnection, SCH_ACTIONS::selectOnPCB, ACTIONS::selectRows, ACTIONS::selectTable, sheetTypes, SCH_ACTIONS::slice, SCH_ACTIONS::swapPinLabels, SCH_ACTIONS::swapPins, SCH_ACTIONS::swapUnitLabels, SCH_ACTIONS::symbolProperties, SCH_ACTIONS::syncSheetPins, and tableCellTypes.
      
  | 
  private | 
Initialize the selection state of table cells.
Definition at line 2747 of file sch_selection_tool.cpp.
References SCH_TABLE::GetCells(), and SELECTION_CANDIDATE.
Referenced by Main(), and selectTableCells().
      
  | 
  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().
      
  | 
  private | 
Return true if the given item passes the stateful selection filter.
Definition at line 2061 of file sch_selection_tool.cpp.
References SCH_SELECTION_FILTER_OPTIONS::graphics, SCH_SELECTION_FILTER_OPTIONS::images, SCH_SELECTION_FILTER_OPTIONS::labels, LAYER_BUS, LAYER_WIRE, m_filter, SCH_SELECTION_FILTER_OPTIONS::otherItems, SCH_SELECTION_FILTER_OPTIONS::pins, SCH_SELECTION_FILTER_OPTIONS::ruleAreas, SCH_BITMAP_T, SCH_FIELD_T, SCH_GLOBAL_LABEL_T, SCH_HIER_LABEL_T, SCH_JUNCTION_T, SCH_LABEL_T, SCH_LINE_T, SCH_PIN_T, SCH_RULE_AREA_T, SCH_SHAPE_T, SCH_SHEET_PIN_T, SCH_SHEET_T, SCH_SYMBOL_T, SCH_TABLE_T, SCH_TABLECELL_T, SCH_TEXT_T, SCH_TEXTBOX_T, SCH_SELECTION_FILTER_OPTIONS::symbols, SCH_SELECTION_FILTER_OPTIONS::text, EDA_ITEM::Type(), and SCH_SELECTION_FILTER_OPTIONS::wires.
Referenced by expandConnectionGraphically(), expandConnectionWithGraph(), filterCollectedItems(), narrowSelection(), SelectAll(), and SelectMultiple().
| int SCH_SELECTION_TOOL::Main | ( | const TOOL_EVENT & | aEvent | ) | 
The main loop.
Definition at line 450 of file sch_selection_tool.cpp.
References COMMIT::Add(), COMMIT::Added(), SELECTION_TOOL::AddItemsToSel(), ARROW, autostartEvent(), BOTTOM, SPIN_STYLE::BOTTOM, BUT_AUX1, BUT_AUX2, BUT_LEFT, BUT_MIDDLE, BUT_RIGHT, KIGFX::VIEW_CONTROLS::CaptureCursor(), ClearSelection(), CollectHits(), delta, SCH_ACTIONS::drag, DRAG_ANY, DRAG_SELECTED, SCH_ACTIONS::drawBus, SCH_ACTIONS::drawLines, SCH_ACTIONS::drawWire, dummy, editor, COMMIT::Empty(), end, ENDPOINT, EnterGroup(), SCH_ACTIONS::enterSheet, ExitGroup(), KIGFX::VIEW_CONTROLS::ForceCursorPosition(), SCH_ITEM::GetBodyStyle(), SCH_SHAPE::GetCenter(), ADVANCED_CFG::GetCfg(), COLLECTOR::GetCount(), SCH_EDIT_FRAME::GetCurrentSheet(), KIGFX::VIEW_CONTROLS::GetCursorPosition(), SCH_LINE::GetEndPoint(), SCH_LABEL_BASE::GetLabelShape(), SCH_SYMBOL::GetOrientation(), EDA_ITEM::GetParent(), SCH_EDIT_FRAME::GetScreen(), GetSelection(), SCH_LABEL_BASE::GetShownText(), SCH_SHEET_PIN::GetSide(), TOOL_BASE::getViewControls(), grid, GRID_WIRES, HAND, SELECTION_TOOL::hasModifier(), SCH_POINT_EDITOR::HasPoint(), ID_POPUP_SCH_ALT_PIN_FUNCTION, ID_POPUP_SCH_ALT_PIN_FUNCTION_END, ID_POPUP_SCH_PIN_TRICKS_END, ID_POPUP_SCH_PIN_TRICKS_GLOBAL_LABEL, ID_POPUP_SCH_PIN_TRICKS_HIER_LABEL, ID_POPUP_SCH_PIN_TRICKS_NET_LABEL, ID_POPUP_SCH_PIN_TRICKS_NO_CONNECT, ID_POPUP_SCH_PIN_TRICKS_START, ID_POPUP_SCH_PIN_TRICKS_WIRE, ID_POPUP_SCH_PLACE_UNIT, ID_POPUP_SCH_PLACE_UNIT_END, ID_POPUP_SCH_SELECT_BODY_STYLE, ID_POPUP_SCH_SELECT_BODY_STYLE_END, ID_POPUP_SCH_SELECT_UNIT, ID_POPUP_SCH_SELECT_UNIT_END, ID_POPUP_SCH_UNFOLD_BUS, ID_POPUP_SCH_UNFOLD_BUS_END, ACTIONS::increment, InitializeSelectionState(), INSIDE_LASSO, IS_MOVING, IS_NEW, EDA_ITEM::IsRollover(), L_BIDI, L_INPUT, L_OUTPUT, L_TRISTATE, L_UNSPECIFIED, LABEL_BIDI, LABEL_INPUT, LABEL_OUTPUT, LABEL_PASSIVE, LABEL_TRISTATE, DRAW_SEGMENT_EVENT_PARAMS::layer, LAYER_WIRE, LEFT, SPIN_STYLE::LEFT, LINE_BUS, LINE_GRAPHIC, LINE_WIRE, SELECTION_TOOL::m_additive, SELECTION_TOOL::m_disambiguateTimer, m_enteredGroup, SELECTION_TOOL::m_exclusive_or, m_frame, m_isSymbolEditor, m_isSymbolViewer, TOOL_INTERACTIVE::m_menu, m_nonModifiedCursor, SELECTION_TOOL::m_originalCursor, m_previous_first_cell, m_selection, m_selectionMode, SELECTION_TOOL::m_subtractive, TOOL_BASE::m_toolMgr, MD_ALT, MD_CTRL, MD_SHIFT, SCH_COLLECTOR::MovableItems, SCH_ACTIONS::move, MOVING, narrowSelection(), SCH_ACTIONS::navigateBack, SCH_ACTIONS::navigateForward, niluuid, pin, PIN_DOWN, PIN_LEFT, PIN_RIGHT, PIN_UP, SCH_ACTIONS::placeNextSymbolUnit, SCH_ACTIONS::properties, PT_BIDI, PT_INPUT, PT_OUTPUT, PT_PASSIVE, PT_TRISTATE, PT_UNSPECIFIED, SCH_COMMIT::Push(), DRAW_SEGMENT_EVENT_PARAMS::quitOnDraw, RequestSelection(), SCH_COMMIT::Revert(), RIGHT, SPIN_STYLE::RIGHT, RotateAndMirrorPin(), SCH_FIELD_T, SCH_GROUP_T, SCH_PIN_T, SCH_SHAPE_T, SCH_SHEET_PIN_T, SCH_SHEET_T, SCH_TABLECELL_T, SCH_TEXT_T, SCH_TEXTBOX_T, SELECT, SelectCellsBetween(), selection(), selectionContains(), selectLasso(), selectMultiple(), SelectPoint(), selectPoint(), selectTableCells(), SCH_SELECTION_FILTER_OPTIONS::SetAll(), KIGFX::VIEW_CONTROLS::SetAutoPan(), KIGFX::VIEW_CONTROLS::SetCrossHairCursorPosition(), SCH_LINE::SetEndPoint(), EDA_ITEM::SetIsRollover(), SELECTION_TOOL::setModifiersState(), SCH_LABEL_BASE::SetShape(), SCH_LABEL_BASE::SetSpinStyle(), DRAW_SEGMENT_EVENT_PARAMS::sourceSegment, TA_CHOICE_MENU_CHOICE, TA_MOUSE_WHEEL, TA_UNDO_REDO_PRE, TC_COMMAND, TOP, TOUCHING_LASSO, EDA_ITEM::Type(), SCH_ACTIONS::unfoldBus, SPIN_STYLE::UP, TOOL_INTERACTIVE::Wait(), KIGFX::VIEW_CONTROLS::WarpMouseCursor(), VECTOR2< T >::x, VECTOR2< T >::y, ACTIONS::zoomFitObjects, and ACTIONS::zoomFitScreen.
Referenced by setTransitions().
      
  | 
  private | 
Apply rules to narrow the collection down to selectable objects, and then heuristics to try and narrow it to a single object.
| aCollector | [in, out] Provides collection conditions and stores collected items. | 
| aWhere | point where we should narrow (if relevant) | 
| aCheckLocked | If false, remove locked elements from #collector | 
| aSelectedOnly | If true, remove non-selected items from #collector | 
Definition at line 1437 of file sch_selection_tool.cpp.
References filterCollectorForHierarchy(), COLLECTOR::GetCount(), SYMBOL_EDIT_FRAME::GetShowInvisibleFields(), SYMBOL_EDIT_FRAME::GetShowInvisiblePins(), GuessSelectionCandidates(), itemPassesFilter(), SCH_SELECTION_FILTER_OPTIONS::lockedItems, m_frame, SELECTION_TOOL::m_skip_heuristics, COLLECTOR::Remove(), SCH_FIELD_T, SCH_PIN_T, Selectable(), and EDA_ITEM::Type().
Referenced by Main(), and SelectPoint().
      
  | 
  protectedinherited | 
Start the process to show our disambiguation menu once the user has kept the mouse down for the minimum time.
| aEvent | 
Definition at line 232 of file selection_tool.cpp.
References EVENTS::DisambiguatePoint, TOOL_BASE::getEditFrame(), hasModifier(), TOOL_BASE::m_toolMgr, and selection().
Referenced by PCB_SELECTION_TOOL::Init(), PL_SELECTION_TOOL::Init(), SCH_SELECTION_TOOL::Init(), and PCB_SELECTION_TOOL::~PCB_SELECTION_TOOL().
| void SCH_SELECTION_TOOL::OnIdle | ( | wxIdleEvent & | aEvent | ) | 
Zoom the screen to fit the bounding box for cross probing/selection sync.
Definition at line 1366 of file sch_selection_tool.cpp.
References ADD, SELECTION_TOOL::m_additive, SELECTION_TOOL::m_exclusive_or, m_frame, SELECTION_TOOL::m_multiple, m_nonModifiedCursor, SELECTION_TOOL::m_subtractive, SELECTION_TOOL::setModifiersState(), SUBTRACT, and XOR.
Referenced by SCH_BASE_FRAME::SCH_BASE_FRAME().
| void SCH_SELECTION_TOOL::RebuildSelection | ( | ) | 
Rebuild the selection from the EDA_ITEMs' selection flags.
Commonly called after rolling back an undo state to make sure there aren't any stale pointers.
Definition at line 3360 of file sch_selection_tool.cpp.
References ENTERED, LIB_SYMBOL::GetDrawItems(), EDA_ITEM::IsSelected(), m_enteredGroup, m_enteredGroupOverlay, m_frame, m_isSymbolEditor, m_selection, TOOL_BASE::m_toolMgr, NO_RECURSE, SCH_GROUP_T, select(), EVENTS::SelectedEvent, and updateReferencePoint().
Referenced by SYMBOL_EDITOR_EDIT_TOOL::Redo(), SCH_COMMIT::Revert(), SCH_COMMIT::revertLibEdit(), and SYMBOL_EDITOR_EDIT_TOOL::Undo().
      
  | 
  inherited | 
Definition at line 163 of file selection_tool.cpp.
References TOOL_EVENT::Parameter(), RemoveItemFromSel(), selection(), and SELECTION::SetIsHover().
Referenced by SCHEMATIC::CleanUp(), BOARD_COMMIT::Push(), SCH_COMMIT::pushSchEdit(), RemoveItemFromSel(), ReselectItem(), PCB_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), and SCH_SELECTION_TOOL::setTransitions().
      
  | 
  inherited | 
Definition at line 171 of file selection_tool.cpp.
References TOOL_BASE::m_toolMgr, unselect(), and EVENTS::UnselectedEvent.
      
  | 
  inherited | 
Definition at line 184 of file selection_tool.cpp.
References TOOL_EVENT::Parameter(), RemoveItemsFromSel(), selection(), and SELECTION::SetIsHover().
Referenced by API_HANDLER_PCB::handleRemoveFromSelection(), PCB_EDIT_FRAME::RebuildAndRefresh(), RemoveItemsFromSel(), RemoveItemsFromSel(), PCB_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), and SCH_SELECTION_TOOL::setTransitions().
      
  | 
  inherited | 
Definition at line 192 of file selection_tool.cpp.
References TOOL_BASE::m_toolMgr, unselect(), and EVENTS::UnselectedEvent.
      
  | 
  inherited | 
A safer version of RemoveItemsFromSel( EDA_ITEMS ) which doesn't require the items to still exist.
Definition at line 206 of file selection_tool.cpp.
References alg::contains(), RemoveItemsFromSel(), and selection().
| SCH_SELECTION & SCH_SELECTION_TOOL::RequestSelection | ( | const std::vector< KICAD_T > & | aScanTypes = { SCH_LOCATE_ANY_T }, | 
| bool | aPromoteCellSelections = false, | ||
| bool | aPromoteGroups = false ) | 
Return either an existing selection (filtered), or the selection at the current cursor position if the existing selection is empty.
| aScanTypes | [optional] List of item types that are acceptable for selection. | 
| aPromoteCellSelections | [optional] If true, cell selections are promoted to their parent | 
| aPromoteGroups | [optional] If true, group selections are promoted the items within the group | 
Definition at line 1937 of file sch_selection_tool.cpp.
References ClearSelection(), ENDPOINT, KIGFX::VIEW_CONTROLS::GetCursorPosition(), EDA_ITEM::GetParent(), TOOL_BASE::getViewControls(), EDA_ITEM::IsType(), SCH_ITEM::IsType(), m_selection, TOOL_BASE::m_toolMgr, RECURSE, SCH_GROUP_T, SCH_LINE_T, SCH_TABLECELL_T, select(), EVENTS::SelectedEvent, SelectPoint(), STARTPOINT, EDA_ITEM::Type(), unselect(), EVENTS::UnselectedEvent, and updateReferencePoint().
Referenced by SCH_EDIT_FRAME::CheckAnnotate(), SCH_EDITOR_CONTROL::CopyAsText(), SYMBOL_EDITOR_EDIT_TOOL::CopyAsText(), SCH_EDIT_FRAME::DeleteAnnotation(), SCH_EDITOR_CONTROL::doCopy(), SCH_EDITOR_CONTROL::doCrossProbeSchToPcb(), SCH_EDITOR_CONTROL::EditWithSymbolEditor(), SCH_NAVIGATE_TOOL::EnterSheet(), SCH_GROUP_TOOL::Group(), Main(), SCH_GROUP_TOOL::PickNewMember(), and SelectConnection().
      
  | 
  inherited | 
Definition at line 129 of file selection_tool.cpp.
References AddItemToSel(), TOOL_EVENT::Parameter(), RemoveItemFromSel(), selection(), and SELECTION::SetIsHover().
Referenced by PCB_SELECTION_TOOL::setTransitions().
      
  | 
  overridevirtual | 
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 406 of file sch_selection_tool.cpp.
References KIGFX::VIEW::Add(), ExitGroup(), SYMBOL_EDIT_FRAME::GetBodyStyle(), TOOL_BASE::getEditFrame(), KIGFX::VIEW::GetPainter(), KIGFX::PAINTER::GetSettings(), SYMBOL_EDIT_FRAME::GetUnit(), TOOL_BASE::getView(), m_bodyStyle, m_enteredGroup, m_enteredGroupOverlay, m_frame, m_isSymbolEditor, m_isSymbolViewer, m_selection, m_unit, TOOL_BASE::MODEL_RELOAD, TOOL_BASE::REDRAW, KIGFX::VIEW::Remove(), KIGFX::RENDER_SETTINGS::SetHighlight(), TOOL_BASE::SHUTDOWN, and TOOL_BASE::SUPERMODEL_RELOAD.
      
  | 
  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::DrawBarcode(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::PlaceReferenceImage(), and DRAWING_TOOL::PlaceText().
      
  | 
  overrideprivatevirtual | 
Take necessary action to mark an item as selected.
| aItem | The item to be selected. | 
Implements SELECTION_TOOL.
Definition at line 3563 of file sch_selection_tool.cpp.
References ExitGroup(), highlight(), EDA_ITEM::IsNew(), m_enteredGroup, m_isSymbolEditor, m_selection, SELECTED, and SCH_GROUP::WithinScope().
Referenced by EnterGroup(), ExitGroup(), RebuildSelection(), RequestSelection(), SelectAll(), SelectCellsBetween(), SelectColumns(), SelectMultiple(), SelectNext(), selectPoint(), SelectPrevious(), SelectRows(), SelectTable(), and SyncSelection().
| bool SCH_SELECTION_TOOL::Selectable | ( | const EDA_ITEM * | aItem, | 
| const VECTOR2I * | aPos = nullptr, | ||
| bool | checkVisibilityOnly = false ) const | 
Check conditions for an item to be selected.
Definition at line 3437 of file sch_selection_tool.cpp.
References SCH_ITEM::GetBodyStyle(), SYMBOL_EDIT_FRAME::GetBodyStyle(), SCH_TABLECELL::GetColSpan(), SCH_TABLECELL::GetRowSpan(), SYMBOL_EDIT_FRAME::GetShowInvisibleFields(), SCH_ITEM::GetUnit(), SYMBOL_EDIT_FRAME::GetUnit(), grid, SYMBOL_EDIT_FRAME::IsSymbolAlias(), EDA_TEXT::IsVisible(), LIB_SYMBOL_T, m_filter, m_frame, TOOL_BASE::m_toolMgr, NOT_USED, pin, SCH_DIRECTIVE_LABEL_T, SCH_FIELD_T, SCH_MARKER_T, SCH_PIN_T, SCH_SHAPE_T, SCH_TABLECELL_T, SCH_TEXT_T, SCH_TEXTBOX_T, and EDA_ITEM::Type().
Referenced by expandConnectionGraphically(), expandConnectionWithGraph(), SCH_TOOL_BASE< T >::InteractiveDelete(), narrowSelection(), SelectAll(), SelectMultiple(), and UnselectAll().
| int SCH_SELECTION_TOOL::SelectAll | ( | const TOOL_EVENT & | aEvent | ) | 
Unselect all visible items in sheet.
Definition at line 1659 of file sch_selection_tool.cpp.
References COLLECTOR::Append(), ENDPOINT, filterCollectorForHierarchy(), SCH_SHEET::GetPins(), TOOL_BASE::getView(), itemPassesFilter(), m_frame, SELECTION_TOOL::m_multiple, TOOL_BASE::m_toolMgr, pin, KIGFX::VIEW::Query(), SCH_LINE_T, select(), Selectable(), EVENTS::SelectedEvent, BOX2< Vec >::SetMaximum(), and STARTPOINT.
Referenced by setTransitions().
      
  | 
  private | 
Select table cells within a rectangular area between two points.
| start | The starting point of the rectangular selection area. | 
| end | The ending point of the rectangular selection area. | 
| aTable | The table containing the cells to check and update. | 
Definition at line 2758 of file sch_selection_tool.cpp.
References end, SCH_TABLE::GetCells(), SELECTION_TOOL::m_additive, SELECTION_TOOL::m_exclusive_or, SELECTION_TOOL::m_subtractive, BOX2< Vec >::Normalize(), select(), SELECTION_CANDIDATE, and unselect().
Referenced by Main(), and selectTableCells().
| int SCH_SELECTION_TOOL::SelectColumns | ( | const TOOL_EVENT & | aEvent | ) | 
Definition at line 3102 of file sch_selection_tool.cpp.
References EDA_ITEM::IsSelected(), m_selection, TOOL_BASE::m_toolMgr, select(), EVENTS::SelectedEvent, and table.
Referenced by setTransitions().
| int SCH_SELECTION_TOOL::SelectConnection | ( | const TOOL_EVENT & | aEvent | ) | 
If a connected item is selected then expand the selection to the entire connection, otherwise select connection under the current cursor position.
Definition at line 3016 of file sch_selection_tool.cpp.
References SELECTION::Add(), SELECTION_TOOL::AddItemToSel(), ClearSelection(), SELECTION::Empty(), ENDPOINT, expandConnectionGraphically(), expandConnectionGraphTypes, expandConnectionWithGraph(), SELECTION::GetItems(), SELECTION::GetReferencePoint(), TOOL_BASE::getView(), SELECTION::HasReferencePoint(), SCH_ITEM::IsConnectable(), SELECTION::IsHover(), m_selection, TOOL_BASE::m_toolMgr, RequestSelection(), SCH_LINE_T, SCH_SHAPE_T, EVENTS::SelectedEvent, STARTPOINT, EDA_ITEM::Type(), and KIGFX::VIEW::Update().
Referenced by setTransitions().
      
  | 
  inlineoverrideprotectedvirtual | 
Return a reference to the selection.
Implements SELECTION_TOOL.
Definition at line 230 of file sch_selection_tool.h.
References m_selection.
Referenced by Main().
      
  | 
  private | 
Definition at line 3678 of file sch_selection_tool.cpp.
References BOX2< Vec >::Contains(), TOOL_BASE::getView(), BOX2< Vec >::Inflate(), KiROUND(), and m_selection.
Referenced by Main().
      
  | 
  inherited | 
Show a popup menu to trim the COLLECTOR passed as aEvent's parameter down to a single item.
Definition at line 247 of file selection_tool.cpp.
References doSelectionMenu(), COLLECTOR::m_MenuCancelled, and TOOL_EVENT::Parameter().
Referenced by PCB_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), and SCH_SELECTION_TOOL::setTransitions().
      
  | 
  private | 
Definition at line 2327 of file sch_selection_tool.cpp.
References KIGFX::VIEW::Add(), allowedActions, SHAPE_LINE_CHAIN::Append(), SHAPE_LINE_CHAIN::Area(), BUT_LEFT, SHAPE_LINE_CHAIN::CLastPoint(), ClearSelection(), ACTIONS::cursorClick, ACTIONS::cursorDblClick, ACTIONS::doDelete, ACTIONS::finishInteractive, SHAPE_LINE_CHAIN::GenerateBBoxCache(), SHAPE_LINE_CHAIN::GetPointCount(), KIGFX::PREVIEW::SELECTION_AREA::GetPoly(), TOOL_BASE::getView(), TOOL_BASE::getViewControls(), INSIDE_LASSO, SELECTION_TOOL::m_drag_additive, SELECTION_TOOL::m_drag_subtractive, m_frame, SELECTION_TOOL::m_multiple, m_selection, TOOL_BASE::m_toolMgr, passEvent(), SHAPE_LINE_CHAIN::PointCount(), KIGFX::VIEW::Remove(), SHAPE_LINE_CHAIN::Remove(), SELECT_LASSO, SELECT_WINDOW, SelectMultiple(), KIGFX::PREVIEW::SELECTION_AREA::SetAdditive(), KIGFX::VIEW_CONTROLS::SetAutoPan(), SHAPE_LINE_CHAIN::SetClosed(), KIGFX::VIEW_CONTROLS::SetCursorPosition(), KIGFX::PREVIEW::SELECTION_AREA::SetExclusiveOr(), KIGFX::PREVIEW::SELECTION_AREA::SetMode(), KIGFX::PREVIEW::SELECTION_AREA::SetPoly(), KIGFX::PREVIEW::SELECTION_AREA::SetSubtractive(), KIGFX::VIEW::SetVisible(), TOUCHING_LASSO, ACTIONS::undo, EVENTS::UnselectedEvent, KIGFX::VIEW::Update(), and TOOL_INTERACTIVE::Wait().
Referenced by Main().
      
  | 
  private | 
Definition at line 2427 of file sch_selection_tool.cpp.
References COLLECTOR::Append(), COLLECTOR::begin(), KIGEOM::BoxHitTest(), EDA_ITEM::ClearFlags(), BOX2< Vec >::Contains(), COLLECTOR::end(), ENDPOINT, filterCollectedItems(), filterCollectorForHierarchy(), COLLECTOR::GetCount(), SCH_LINE::GetEndPoint(), SCH_SYMBOL::GetFields(), KIGFX::PREVIEW::SELECTION_AREA::GetMode(), SCH_SYMBOL::GetPins(), KIGFX::PREVIEW::SELECTION_AREA::GetPoly(), SCH_LINE::GetStartPoint(), TOOL_BASE::getView(), group, EDA_ITEM::HasFlag(), SCH_LINE::HitTest(), INSIDE_LASSO, INSIDE_RECTANGLE, BOX2< Vec >::Intersects(), SCH_LINE::IsEndDangling(), EDA_ITEM::IsSelected(), SCH_LINE::IsStartDangling(), itemPassesFilter(), m_enteredGroup, m_frame, m_isSymbolEditor, m_selection, TOOL_BASE::m_toolMgr, pin, SHAPE_LINE_CHAIN_BASE::PointInside(), KIGFX::VIEW::Query(), SCH_GROUP_T, SCH_LINE_T, SCH_PIN_T, select(), Selectable(), EVENTS::SelectedEvent, SELECTION_CANDIDATE, EDA_ITEM::SetFlags(), SHOW_ELEC_TYPE, STARTPOINT, TOUCHING_RECTANGLE, unselect(), EVENTS::UnselectedEvent, KIGFX::VIEW::Update(), KIGFX::PREVIEW::SELECTION_AREA::ViewBBox(), and EDA_ITEM::XorFlags().
Referenced by selectLasso(), and selectMultiple().
      
  | 
  private | 
Handle drawing a selection box that allows one to select many items at the same time.
Definition at line 2249 of file sch_selection_tool.cpp.
References KIGFX::VIEW::Add(), allowedActions, BUT_LEFT, ClearSelection(), FRAME_SCH_VIEWER, KIGFX::PREVIEW::SELECTION_AREA::GetEnd(), KIGFX::PREVIEW::SELECTION_AREA::GetOrigin(), TOOL_BASE::getView(), TOOL_BASE::getViewControls(), INSIDE_RECTANGLE, KIGFX::VIEW::IsMirroredX(), SELECTION_TOOL::m_drag_additive, SELECTION_TOOL::m_drag_subtractive, m_frame, SELECTION_TOOL::m_multiple, m_selection, passEvent(), KIGFX::VIEW::Remove(), SELECT_LASSO, SELECT_WINDOW, SelectMultiple(), KIGFX::PREVIEW::SELECTION_AREA::SetAdditive(), KIGFX::VIEW_CONTROLS::SetAutoPan(), KIGFX::PREVIEW::SELECTION_AREA::SetEnd(), KIGFX::PREVIEW::SELECTION_AREA::SetExclusiveOr(), KIGFX::PREVIEW::SELECTION_AREA::SetMode(), KIGFX::PREVIEW::SELECTION_AREA::SetOrigin(), KIGFX::PREVIEW::SELECTION_AREA::SetSubtractive(), KIGFX::VIEW::SetVisible(), TOUCHING_RECTANGLE, KIGFX::VIEW::Update(), TOOL_INTERACTIVE::Wait(), and VECTOR2< T >::x.
Referenced by Main().
| int SCH_SELECTION_TOOL::SelectNext | ( | const TOOL_EVENT & | aEvent | ) | 
Select previous net item.
Definition at line 3697 of file sch_selection_tool.cpp.
References ClearSelection(), SCH_EDIT_FRAME::GetNetNavigator(), m_frame, m_selection, TOOL_BASE::m_toolMgr, select(), EVENTS::SelectedEvent, and SCH_EDIT_FRAME::SelectNextPrevNetNavigatorItem().
Referenced by setTransitions().
| int SCH_SELECTION_TOOL::SelectNode | ( | const TOOL_EVENT & | aEvent | ) | 
Selects the connected item at the current cursor position.
Iterative process with a decreasing slop factor.
Definition at line 2880 of file sch_selection_tool.cpp.
References connectedTypes, KIGFX::VIEW_CONTROLS::GetCursorPosition(), TOOL_BASE::getViewControls(), and SelectPoint().
Referenced by setTransitions().
| bool SCH_SELECTION_TOOL::SelectPoint | ( | const VECTOR2I & | aWhere, | 
| const std::vector< KICAD_T > & | aScanTypes = { SCH_LOCATE_ANY_T }, | ||
| EDA_ITEM ** | aItem = nullptr, | ||
| bool * | aSelectionCancelledFlag = nullptr, | ||
| bool | aCheckLocked = false, | ||
| bool | aAdd = false, | ||
| bool | aSubtract = false, | ||
| bool | aExclusiveOr = false ) | 
Perform a click-type selection at a point (usually the cursor position).
| aWhere | Point from which the selection should be made. | 
| aScanTypes | [optional] List of item types that are acceptable for selection. | 
| aItem | [out, optional] The newly selected item if only one was selected, otherwise unchanged. | 
| aSelectionCancelledFlag | [out] Allows the function to inform its caller that a selection was canceled (for instance, by clicking outside of the disambiguation menu). | 
| aCheckLocked | Indicates if locked items should be excluded. | 
| aAdd | Indicates if found item(s) should be added to the selection. | 
| aSubtract | Indicates if found item(s) should be subtracted from the selection. | 
| aExclusiveOr | Indicates if found item(s) should be toggle in the selection. | 
Definition at line 1630 of file sch_selection_tool.cpp.
References CollectHits(), COLLECTOR::GetCount(), m_frame, narrowSelection(), selectPoint(), and SCH_SELECTION_FILTER_OPTIONS::SetAll().
Referenced by disambiguateCursor(), Main(), RequestSelection(), SelectNode(), and SCH_EDITOR_CONTROL::SimTune().
      
  | 
  private | 
Perform a click-type selection at a point (usually the cursor position).
| aCollector | [in, out] Provides collection conditions and stores collected items. | 
| aWhere | Point from which the selection should be made. | 
| aItem | [out, optional] The newly selected item if only one was selected, otherwise unchanged. | 
| aSelectionCancelledFlag | [out] Allows the function to inform its caller that a selection was canceled (for instance, by clicking outside of the disambiguation menu). | 
| aAdd | Indicates if found item(s) should be added to the selection. | 
| aSubtract | Indicates if found item(s) should be subtracted from the selection. | 
| aExclusiveOr | Indicates if found item(s) should be toggle in the selection. | 
Definition at line 1505 of file sch_selection_tool.cpp.
References ClearSelection(), VECTOR2< T >::Distance(), SELECTION_TOOL::doSelectionMenu(), ENDPOINT, ExitGroup(), filterCollectorForHierarchy(), COLLECTOR::GetCount(), SCH_LINE::GetEndPoint(), SCH_LINE::GetStartPoint(), TOOL_BASE::getView(), m_enteredGroup, m_frame, COLLECTOR::m_MenuCancelled, m_selection, COLLECTOR::m_Threshold, TOOL_BASE::m_toolMgr, EVENTS::PointSelectedEvent, SCH_LINE_T, select(), EVENTS::SelectedEvent, ACTIONS::selectionMenu, STARTPOINT, unselect(), EVENTS::UnselectedEvent, and KIGFX::VIEW::Update().
Referenced by Main(), and SelectPoint().
| int SCH_SELECTION_TOOL::SelectPrevious | ( | const TOOL_EVENT & | aEvent | ) | 
Definition at line 3720 of file sch_selection_tool.cpp.
References ClearSelection(), SCH_EDIT_FRAME::GetNetNavigator(), m_frame, m_selection, TOOL_BASE::m_toolMgr, select(), EVENTS::SelectedEvent, and SCH_EDIT_FRAME::SelectNextPrevNetNavigatorItem().
Referenced by setTransitions().
| int SCH_SELECTION_TOOL::SelectRows | ( | const TOOL_EVENT & | aEvent | ) | 
Definition at line 3137 of file sch_selection_tool.cpp.
References EDA_ITEM::IsSelected(), m_selection, TOOL_BASE::m_toolMgr, select(), EVENTS::SelectedEvent, and table.
Referenced by setTransitions().
| int SCH_SELECTION_TOOL::SelectTable | ( | const TOOL_EVENT & | aEvent | ) | 
Clear current selection event handler.
Definition at line 3172 of file sch_selection_tool.cpp.
References ClearSelection(), m_selection, TOOL_BASE::m_toolMgr, select(), EVENTS::SelectedEvent, and table.
Referenced by setTransitions().
      
  | 
  private | 
Handle a table cell drag selection within a table.
Definition at line 2793 of file sch_selection_tool.cpp.
References allowedActions, BUT_LEFT, SCH_TABLE::GetCells(), TOOL_BASE::getViewControls(), InitializeSelectionState(), SELECTION_TOOL::m_multiple, m_selection, TOOL_BASE::m_toolMgr, SelectCellsBetween(), EVENTS::SelectedEvent, SELECTION_CANDIDATE, KIGFX::VIEW_CONTROLS::SetAutoPan(), EVENTS::UnselectedEvent, and TOOL_INTERACTIVE::Wait().
Referenced by Main().
      
  | 
  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().
      
  | 
  protectedinherited | 
Set the configuration of m_additive, m_subtractive, m_exclusive_or, m_skip_heuristics from the state of modifier keys SHIFT, CTRL, ALT and depending on the OS.
Definition at line 49 of file selection_tool.cpp.
References ctrlClickHighlights(), m_additive, m_drag_additive, m_drag_subtractive, m_exclusive_or, m_highlight_modifier, m_skip_heuristics, and m_subtractive.
Referenced by PCB_SELECTION_TOOL::disambiguateCursor(), PL_SELECTION_TOOL::disambiguateCursor(), SCH_SELECTION_TOOL::disambiguateCursor(), GERBVIEW_SELECTION_TOOL::Main(), PCB_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), SCH_SELECTION_TOOL::Main(), PCB_SELECTION_TOOL::OnIdle(), and SCH_SELECTION_TOOL::OnIdle().
      
  | 
  private | 
Definition at line 2218 of file sch_selection_tool.cpp.
References INSIDE_LASSO, m_frame, m_selectionMode, TOOL_BASE::m_toolMgr, SELECT_LASSO, and ACTIONS::selectionTool.
Referenced by setTransitions().
      
  | 
  private | 
Definition at line 2227 of file sch_selection_tool.cpp.
References ARROW, INSIDE_RECTANGLE, m_frame, m_selectionMode, TOOL_BASE::m_toolMgr, and ACTIONS::selectionTool.
Referenced by setTransitions().
      
  | 
  overrideprivatevirtual | 
This method is meant to be overridden in order to specify handlers for events.
It is called every time tool is reset or finished.
Implements TOOL_INTERACTIVE.
Definition at line 3743 of file sch_selection_tool.cpp.
References SELECTION_TOOL::AddItemsToSel(), SELECTION_TOOL::AddItemToSel(), ClearSelection(), disambiguateCursor(), EVENTS::DisambiguatePoint, TOOL_INTERACTIVE::Go(), Main(), SCH_ACTIONS::nextNetItem, SCH_ACTIONS::previousNetItem, SELECTION_TOOL::RemoveItemFromSel(), SELECTION_TOOL::RemoveItemsFromSel(), SelectAll(), ACTIONS::selectAll, SelectColumns(), ACTIONS::selectColumns, SelectConnection(), SCH_ACTIONS::selectConnection, EVENTS::SelectedItemsModified, EVENTS::SelectedItemsMoved, ACTIONS::selectionActivate, ACTIONS::selectionClear, SELECTION_TOOL::SelectionMenu(), ACTIONS::selectionMenu, ACTIONS::selectItem, ACTIONS::selectItems, SelectNext(), SelectNode(), SCH_ACTIONS::selectNode, SelectPrevious(), SelectRows(), ACTIONS::selectRows, ACTIONS::selectSetLasso, ACTIONS::selectSetRect, SelectTable(), ACTIONS::selectTable, SetSelectPoly(), SetSelectRect(), UnselectAll(), ACTIONS::unselectAll, ACTIONS::unselectItem, ACTIONS::unselectItems, SELECTION_TOOL::UpdateMenu(), ACTIONS::updateMenu, and updateSelection().
| void SCH_SELECTION_TOOL::SyncSelection | ( | const std::optional< SCH_SHEET_PATH > & | targetSheetPath, | 
| SCH_ITEM * | focusItem, | ||
| const std::vector< SCH_ITEM * > & | items ) | 
Definition at line 3310 of file sch_selection_tool.cpp.
References BOX2< Vec >::Centre(), SCH_ACTIONS::changeSheet, ClearSelection(), SCHEMATIC::CurrentSheet(), SCH_EDIT_FRAME::FocusOnItem(), EDA_DRAW_FRAME::FocusOnLocation(), BOX2< Vec >::GetHeight(), BOX2< Vec >::GetWidth(), m_frame, m_selection, TOOL_BASE::m_toolMgr, path, SCH_EDIT_FRAME::Schematic(), select(), EVENTS::SelectedEvent, and ZoomFitCrossProbeBBox().
Referenced by DIALOG_SYMBOL_FIELDS_TABLE::OnTableRangeSelected().
      
  | 
  inherited | 
Definition at line 226 of file selection_tool.cpp.
References BRIGHTENED, and unhighlight().
Referenced by SCH_EDIT_FRAME::DisplayCurrentSheet(), SCH_DRAWING_TOOLS::doSyncSheetsPins(), PCB_CONTROL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), SCH_TOOL_BASE< T >::InteractiveDelete(), PANEL_COMPONENT_CLASS_ASSIGNMENT::OnHighlightItemsClick(), SCH_EDITOR_CONTROL::SimProbe(), SCH_EDITOR_CONTROL::SimTune(), and PANEL_ASSIGN_COMPONENT_CLASSES::~PANEL_ASSIGN_COMPONENT_CLASSES().
      
  | 
  overrideprivatevirtual | 
Unhighlight the item visually.
| aItem | is an item to be highlighted. | 
| aMode | should be either SELECTED or BRIGHTENED | 
| aGroup | [optional] A group to remove the item from. | 
Implements SELECTION_TOOL.
Definition at line 3628 of file sch_selection_tool.cpp.
References BRIGHTENED, EDA_ITEM::ClearBrightened(), EDA_ITEM::ClearFlags(), EDA_ITEM::ClearSelected(), ENDPOINT, EDA_ITEM::GetParent(), TOOL_BASE::getView(), KIGFX::VIEW::Hide(), NO_RECURSE, SELECTION::Remove(), KIGFX::REPAINT, SCH_LINE_T, SCHEMATIC_T, SELECTED, STARTPOINT, EDA_ITEM::Type(), and KIGFX::VIEW::Update().
Referenced by ClearSelection(), and unselect().
      
  | 
  overrideprivatevirtual | 
Take necessary action to mark an item as unselected.
| aItem | The item to be unselected. | 
Implements SELECTION_TOOL.
Definition at line 3577 of file sch_selection_tool.cpp.
References m_selection, SELECTED, and unhighlight().
Referenced by RequestSelection(), SelectCellsBetween(), SelectMultiple(), selectPoint(), and UnselectAll().
| int SCH_SELECTION_TOOL::UnselectAll | ( | const TOOL_EVENT & | aEvent | ) | 
Select next net item.
Definition at line 1718 of file sch_selection_tool.cpp.
References SCH_SHEET::GetPins(), TOOL_BASE::getView(), m_frame, SELECTION_TOOL::m_multiple, TOOL_BASE::m_toolMgr, pin, KIGFX::VIEW::Query(), Selectable(), BOX2< Vec >::SetMaximum(), unselect(), and EVENTS::UnselectedEvent.
Referenced by setTransitions().
      
  | 
  inherited | 
Update a menu's state based on the current selection.
The menu is passed in aEvent's parameter.
Definition at line 93 of file selection_tool.cpp.
References CONDITIONAL_MENU::Evaluate(), TOOL_EVENT::Parameter(), selection(), and ACTION_MENU::UpdateAll().
Referenced by GERBVIEW_SELECTION_TOOL::setTransitions(), PCB_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), and SCH_SELECTION_TOOL::setTransitions().
      
  | 
  private | 
Set the reference point to the anchor of the top-left item.
Definition at line 2207 of file sch_selection_tool.cpp.
References EDA_ITEM::GetPosition(), and m_selection.
Referenced by RebuildSelection(), and RequestSelection().
      
  | 
  private | 
Event handler to update the selection VIEW_ITEM.
Definition at line 2738 of file sch_selection_tool.cpp.
References TOOL_BASE::getView(), m_enteredGroupOverlay, m_selection, and KIGFX::VIEW::Update().
Referenced by setTransitions().
      
  | 
  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::DrawBarcode(), 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(), POSITION_RELATIVE_TOOL::InteractiveOffset(), 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(), 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().
| void SCH_SELECTION_TOOL::ZoomFitCrossProbeBBox | ( | const BOX2I & | aBBox | ) | 
Definition at line 3208 of file sch_selection_tool.cpp.
References DEFAULT_TEXT_SIZE, BOX2< Vec >::GetSize(), TOOL_BASE::getView(), KIGFX::VIEW::GetViewport(), BOX2< Vec >::GetWidth(), BOX2< Vec >::Inflate(), KiROUND(), next(), BOX2< Vec >::Normalize(), schIUScale, KIGFX::VIEW::SetScale(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by SyncSelection().
      
  | 
  protectedinherited | 
Items should be added to sel (instead of replacing).
Definition at line 150 of file selection_tool.h.
Referenced by SCH_SELECTION_TOOL::disambiguateCursor(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), hasModifier(), PL_SELECTION_TOOL::Main(), SCH_SELECTION_TOOL::Main(), PCB_SELECTION_TOOL::OnIdle(), SCH_SELECTION_TOOL::OnIdle(), SCH_SELECTION_TOOL::SelectCellsBetween(), SELECTION_TOOL(), PL_SELECTION_TOOL::SelectPoint(), GERBVIEW_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::SelectPolyArea(), PCB_SELECTION_TOOL::selectTableCells(), and setModifiersState().
      
  | 
  private | 
Definition at line 382 of file sch_selection_tool.h.
Referenced by CollectHits(), Init(), Reset(), and SCH_SELECTION_TOOL().
      
  | 
  protectedinherited | 
Sets to true if the disambiguation menu was canceled.
Definition at line 162 of file selection_tool.h.
Referenced by PCB_SELECTION_TOOL::disambiguateCursor(), PL_SELECTION_TOOL::disambiguateCursor(), SCH_SELECTION_TOOL::disambiguateCursor(), PCB_SELECTION_TOOL::Main(), and SELECTION_TOOL().
      
  | 
  protectedinherited | 
Timer to show the disambiguate menu.
Definition at line 164 of file selection_tool.h.
Referenced by PCB_SELECTION_TOOL::Init(), PL_SELECTION_TOOL::Init(), SCH_SELECTION_TOOL::Init(), PCB_SELECTION_TOOL::Main(), PCB_TEST_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), and SCH_SELECTION_TOOL::Main().
      
  | 
  protectedinherited | 
Add multiple items to selection.
Definition at line 159 of file selection_tool.h.
Referenced by SELECTION_TOOL(), SCH_SELECTION_TOOL::selectLasso(), PL_SELECTION_TOOL::selectMultiple(), SCH_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::SelectPolyArea(), PCB_SELECTION_TOOL::SelectRectArea(), and setModifiersState().
      
  | 
  protectedinherited | 
Remove multiple from selection.
Definition at line 160 of file selection_tool.h.
Referenced by SELECTION_TOOL(), SCH_SELECTION_TOOL::selectLasso(), PL_SELECTION_TOOL::selectMultiple(), SCH_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::SelectPolyArea(), PCB_SELECTION_TOOL::SelectRectArea(), and setModifiersState().
      
  | 
  private | 
Definition at line 384 of file sch_selection_tool.h.
Referenced by EnterGroup(), ExitGroup(), filterCollectorForHierarchy(), GetEnteredGroup(), Init(), Main(), RebuildSelection(), Reset(), SCH_SELECTION_TOOL(), select(), SelectMultiple(), and selectPoint().
      
  | 
  private | 
Definition at line 386 of file sch_selection_tool.h.
Referenced by EnterGroup(), ExitGroup(), RebuildSelection(), Reset(), updateSelection(), and ~SCH_SELECTION_TOOL().
      
  | 
  protectedinherited | 
Items' selection state should be toggled.
Definition at line 152 of file selection_tool.h.
Referenced by SCH_SELECTION_TOOL::disambiguateCursor(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), hasModifier(), PL_SELECTION_TOOL::Main(), SCH_SELECTION_TOOL::Main(), PCB_SELECTION_TOOL::OnIdle(), SCH_SELECTION_TOOL::OnIdle(), SCH_SELECTION_TOOL::SelectCellsBetween(), SELECTION_TOOL(), PL_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::SelectPoint(), GERBVIEW_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::SelectPolyArea(), PCB_SELECTION_TOOL::SelectRectArea(), PCB_SELECTION_TOOL::selectTableCells(), and setModifiersState().
      
  | 
  private | 
Definition at line 388 of file sch_selection_tool.h.
Referenced by CollectHits(), GetFilter(), itemPassesFilter(), SCH_SELECTION_TOOL(), and Selectable().
      
  | 
  private | 
Definition at line 374 of file sch_selection_tool.h.
Referenced by autostartEvent(), CollectHits(), expandConnectionGraphically(), expandConnectionWithGraph(), GetNode(), GuessSelectionCandidates(), Init(), Main(), narrowSelection(), OnIdle(), RebuildSelection(), Reset(), SCH_SELECTION_TOOL(), Selectable(), SelectAll(), selectLasso(), SelectMultiple(), selectMultiple(), SelectNext(), SelectPoint(), selectPoint(), SelectPrevious(), SetSelectPoly(), SetSelectRect(), SyncSelection(), and UnselectAll().
      
  | 
  protectedinherited | 
Select highlight net on left click.
Definition at line 158 of file selection_tool.h.
Referenced by PCB_SELECTION_TOOL::Main(), SELECTION_TOOL(), and setModifiersState().
      
  | 
  private | 
Definition at line 379 of file sch_selection_tool.h.
Referenced by CollectHits(), expandConnectionWithGraph(), filterCollectorForHierarchy(), Init(), Main(), RebuildSelection(), Reset(), SCH_SELECTION_TOOL(), select(), and SelectMultiple().
      
  | 
  private | 
Definition at line 380 of file sch_selection_tool.h.
Referenced by expandConnectionWithGraph(), Init(), Main(), Reset(), and SCH_SELECTION_TOOL().
      
  | 
  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::DrawBarcode(), 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().
      
  | 
  protectedinherited | 
Multiple selection mode is active.
Definition at line 153 of file selection_tool.h.
Referenced by PCB_SELECTION_TOOL::OnIdle(), SCH_SELECTION_TOOL::OnIdle(), SCH_SELECTION_TOOL::SelectAll(), SELECTION_TOOL(), SCH_SELECTION_TOOL::selectLasso(), PL_SELECTION_TOOL::selectMultiple(), SCH_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::SelectRectArea(), PCB_SELECTION_TOOL::selectTableCells(), SCH_SELECTION_TOOL::selectTableCells(), and SCH_SELECTION_TOOL::UnselectAll().
      
  | 
  private | 
Definition at line 377 of file sch_selection_tool.h.
Referenced by Main(), OnIdle(), and SCH_SELECTION_TOOL().
      
  | 
  protectedinherited | 
Location of original cursor when starting click.
Definition at line 166 of file selection_tool.h.
Referenced by PCB_SELECTION_TOOL::disambiguateCursor(), PL_SELECTION_TOOL::disambiguateCursor(), SCH_SELECTION_TOOL::disambiguateCursor(), PCB_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), and SCH_SELECTION_TOOL::Main().
      
  | 
  private | 
Definition at line 392 of file sch_selection_tool.h.
Referenced by Main(), and SCH_SELECTION_TOOL().
      
  | 
  private | 
Definition at line 375 of file sch_selection_tool.h.
Referenced by ClearSelection(), EnterGroup(), GetSelection(), Main(), RebuildSelection(), RequestSelection(), Reset(), SCH_SELECTION_TOOL(), select(), SelectColumns(), SelectConnection(), selection(), selectionContains(), selectLasso(), SelectMultiple(), selectMultiple(), SelectNext(), selectPoint(), SelectPrevious(), SelectRows(), SelectTable(), selectTableCells(), SyncSelection(), unselect(), updateReferencePoint(), updateSelection(), and ~SCH_SELECTION_TOOL().
      
  | 
  private | 
Definition at line 390 of file sch_selection_tool.h.
Referenced by Main(), SCH_SELECTION_TOOL(), SetSelectPoly(), and SetSelectRect().
      
  | 
  protectedinherited | 
Show disambiguation menu for all items under the cursor rather than trying to narrow them down first using heuristics.
Definition at line 157 of file selection_tool.h.
Referenced by PCB_SELECTION_TOOL::disambiguateCursor(), PL_SELECTION_TOOL::disambiguateCursor(), SCH_SELECTION_TOOL::disambiguateCursor(), SCH_SELECTION_TOOL::narrowSelection(), PCB_SELECTION_TOOL::Selectable(), SELECTION_TOOL(), PL_SELECTION_TOOL::SelectPoint(), PCB_SELECTION_TOOL::selectPoint(), and setModifiersState().
      
  | 
  protectedinherited | 
Items should be removed from selection.
Definition at line 151 of file selection_tool.h.
Referenced by SCH_SELECTION_TOOL::disambiguateCursor(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), hasModifier(), PL_SELECTION_TOOL::Main(), SCH_SELECTION_TOOL::Main(), PCB_SELECTION_TOOL::OnIdle(), SCH_SELECTION_TOOL::OnIdle(), SCH_SELECTION_TOOL::SelectCellsBetween(), SELECTION_TOOL(), PL_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::SelectPoint(), GERBVIEW_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::selectPoint(), PCB_SELECTION_TOOL::SelectPolyArea(), PCB_SELECTION_TOOL::SelectRectArea(), PCB_SELECTION_TOOL::selectTableCells(), and setModifiersState().
      
  | 
  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(), BOARD_EDITOR_CONTROL::ChangeLineMode(), FOOTPRINT_EDITOR_CONTROL::ChangeLineMode(), 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(), SELECTION_TOOL::doSelectionMenu(), PCB_SELECTION_TOOL::doSyncSelection(), COMMON_TOOLS::doZoomInOut(), COMMON_TOOLS::doZoomToPreset(), EDIT_TOOL::Drag(), DRAWING_TOOL::DrawArc(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawBarcode(), 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(), DRC_TOOL::FixDRCError(), 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(), POSITION_RELATIVE_TOOL::InteractiveOffset(), 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(), PCB_VIEWER_TOOLS::NextLineMode(), 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(), 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(), EDIT_TOOL::SwapGateNets(), EDIT_TOOL::SwapPadNets(), 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().
      
  | 
  private | 
Definition at line 381 of file sch_selection_tool.h.
Referenced by CollectHits(), Init(), Reset(), and SCH_SELECTION_TOOL().