KiCad PCB EDA Suite
|
The selection tool: currently supports: More...
#include <pcb_selection_tool.h>
Classes | |
class | PRIV |
Private implementation of firewalled private data. More... | |
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 | |
PCB_SELECTION_TOOL () | |
~PCB_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. | |
void | OnIdle (wxIdleEvent &aEvent) |
bool | IsFootprintEditor () |
int | Main (const TOOL_EVENT &aEvent) |
The main loop. | |
PCB_SELECTION & | GetSelection () |
PCB_SELECTION & | RequestSelection (CLIENT_SELECTION_FILTER aClientFilter, bool aConfirmLockedItems=false) |
Return the current selection, filtered according to aClientFilter. | |
int | CursorSelection (const TOOL_EVENT &aEvent) |
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) |
void | ClearSelection (bool aQuietMode=false) |
Select all items on the board. | |
int | SelectAll (const TOOL_EVENT &aEvent) |
Unselect all items on the board. | |
int | UnselectAll (const TOOL_EVENT &aEvent) |
void | FindItem (BOARD_ITEM *aItem) |
Take necessary actions to mark an item as found. | |
void | select (EDA_ITEM *aItem) override |
Take necessary action mark an item as selected. | |
bool | Selectable (const BOARD_ITEM *aItem, bool checkVisibilityOnly=false) const |
void | SelectAllItemsOnNet (int aNetCode, bool aSelect=true) |
Select all items with the given net code. | |
void | GuessSelectionCandidates (GENERAL_COLLECTOR &aCollector, const VECTOR2I &aWhere) const |
Try to guess best selection candidates in case multiple items are clicked, by doing some brain-dead heuristics. | |
void | RebuildSelection () |
Rebuild the selection from the EDA_ITEMs' selection flags. | |
PCB_SELECTION_FILTER_OPTIONS & | GetFilter () |
Set up handlers for various events. | |
void | setTransitions () override |
Zoom the screen to center and fit the current selection. | |
void | zoomFitSelection () |
Zoom the screen to fit the bounding box for cross probing/selection sync. | |
void | ZoomFitCrossProbeBBox (const BOX2I &bbox) |
void | EnterGroup () |
Enter the group at the head of the current selection. | |
void | ExitGroup (bool aSelectGroup=false) |
Leave the currently-entered group. | |
PCB_GROUP * | GetEnteredGroup () |
PCB_LAYER_ID | GetActiveLayer () |
void | FilterCollectorForHierarchy (GENERAL_COLLECTOR &aCollector, bool aMultiselect) const |
In general we don't want to select both a parent and any of it's children. | |
void | FilterCollectorForFreePads (GENERAL_COLLECTOR &aCollector, bool aForcePromotion=false) const |
Check the "allow free pads" setting and if disabled, replace any pads in the collector with their parent footprints. | |
void | FilterCollectorForTableCells (GENERAL_COLLECTOR &aCollector) const |
Promote any table cell selections to the whole table. | |
void | FilterCollectorForMarkers (GENERAL_COLLECTOR &aCollector) const |
Drop any PCB_MARKERs from the collector. | |
void | FilterCollectedItems (GENERAL_COLLECTOR &aCollector, bool aMultiSelect) |
Apply the SELECTION_FITLER_OPTIONS to the collector. | |
void | FilterCollectorForFootprints (GENERAL_COLLECTOR &aCollector, const VECTOR2I &aWhere) const |
Drop footprints that are not directly selected. | |
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 | |
KIGFX::PCB_VIEW * | view () const |
KIGFX::VIEW_CONTROLS * | controls () const |
PCB_BASE_FRAME * | frame () const |
PCB_BASE_EDIT_FRAME * | editFrame () const |
BOARD * | board () const |
PCB_DRAW_PANEL_GAL * | canvas () const |
virtual bool | ctrlClickHighlights () override |
Determines if ctrl-click is highlight net or XOR selection. | |
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. | |
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 |
bool | m_subtractive |
bool | m_exclusive_or |
bool | m_multiple |
bool | m_skip_heuristics |
bool | m_highlight_modifier |
bool | m_drag_additive |
bool | m_drag_subtractive |
bool | m_canceledMenu |
wxTimer | m_disambiguateTimer |
VECTOR2I | m_originalCursor |
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 Types | |
enum | STOP_CONDITION { STOP_AT_JUNCTION , STOP_AT_PAD , STOP_NEVER } |
Private Member Functions | |
bool | selectPoint (const VECTOR2I &aWhere, bool aOnDrag=false, bool *aSelectionCancelledFlag=nullptr, CLIENT_SELECTION_FILTER aClientFilter=nullptr) |
Select an item pointed by the parameter aWhere. | |
bool | selectCursor (bool aForceSelect=false, CLIENT_SELECTION_FILTER aClientFilter=nullptr) |
Select an item under the cursor unless there is something already selected. | |
bool | selectMultiple () |
Handle drawing a selection box that allows one to select many items at the same time. | |
bool | selectTableCells (PCB_TABLE *aTable) |
int | disambiguateCursor (const TOOL_EVENT &aEvent) |
Handle disambiguation actions including displaying the menu. | |
int | expandConnection (const TOOL_EVENT &aEvent) |
Expand the current connected-item selection to the next boundary (junctions, pads, or all) | |
int | unrouteSelected (const TOOL_EVENT &aEvent) |
Unroute the selected board connected items. | |
int | selectNet (const TOOL_EVENT &aEvent) |
Select all copper connections belonging to the same net(s) as the items in the selection. | |
int | selectUnconnected (const TOOL_EVENT &aEvent) |
Select nearest unconnected footprints on same net as selected items. | |
int | grabUnconnected (const TOOL_EVENT &aEvent) |
Select and move other nearest footprint unconnected on same net as selected items. | |
void | selectAllConnectedTracks (const std::vector< BOARD_CONNECTED_ITEM * > &aStartItems, STOP_CONDITION aStopCondition) |
Select connected tracks and vias. | |
void | selectAllConnectedShapes (const std::vector< PCB_SHAPE * > &aStartItems) |
Select all non-closed shapes that are graphically connected to the given start items. | |
bool | isExpandableGraphicShape (const EDA_ITEM *aItem) const |
void | selectConnections (const std::vector< BOARD_ITEM * > &aItems) |
void | selectAllItemsOnSheet (wxString &aSheetPath) |
Select all items with the given sheet timestamp/UUID name (the sheet path). | |
int | selectSheetContents (const TOOL_EVENT &aEvent) |
Select all footprints belonging to same hierarchical sheet as the selected footprint (same sheet path). | |
int | selectSameSheet (const TOOL_EVENT &aEvent) |
Set selection to items passed by parameter and connected nets (optionally). | |
int | syncSelection (const TOOL_EVENT &aEvent) |
int | syncSelectionWithNets (const TOOL_EVENT &aEvent) |
void | doSyncSelection (const std::vector< BOARD_ITEM * > &aItems, bool aWithNets) |
Invoke filter dialog and modify current selection. | |
int | filterSelection (const TOOL_EVENT &aEvent) |
Return true if the given item passes the current SELECTION_FILTER_OPTIONS. | |
bool | itemPassesFilter (BOARD_ITEM *aItem, bool aMultiSelect) |
void | unselect (EDA_ITEM *aItem) override |
Take necessary action mark an item as unselected. | |
void | highlight (EDA_ITEM *aItem, int aHighlightMode, SELECTION *aGroup=nullptr) override |
Highlight the item visually. | |
void | unhighlight (EDA_ITEM *aItem, int aHighlightMode, SELECTION *aGroup=nullptr) override |
Unhighlight the item visually. | |
bool | selectionContains (const VECTOR2I &aPoint) const |
int | hitTestDistance (const VECTOR2I &aWhere, BOARD_ITEM *aItem, int aMaxDistance) const |
int | updateSelection (const TOOL_EVENT &aEvent) |
Event handler to update the selection VIEW_ITEM. | |
void | pruneObscuredSelectionCandidates (GENERAL_COLLECTOR &aCollector) const |
const GENERAL_COLLECTORS_GUIDE | getCollectorsGuide () const |
void | highlightInternal (EDA_ITEM *aItem, int aHighlightMode, bool aUsingOverlay) |
void | unhighlightInternal (EDA_ITEM *aItem, int aHighlightMode, bool aUsingOverlay) |
void | resetTransitions () |
Clear the current transition map and restores the default one created by setTransitions(). | |
void | goInternal (TOOL_STATE_FUNC &aState, const TOOL_EVENT_LIST &aConditions) |
EDA_ITEM * | getModelInternal () const |
TOOLS_HOLDER * | getToolHolderInternal () const |
Private Attributes | |
PCB_BASE_FRAME * | m_frame |
bool | m_isFootprintEditor |
PCB_SELECTION | m_selection |
PCB_SELECTION_FILTER_OPTIONS | m_filter |
KICURSOR | m_nonModifiedCursor |
PCB_GROUP * | m_enteredGroup |
KIGFX::VIEW_GROUP | m_enteredGroupOverlay |
std::unique_ptr< PRIV > | m_priv |
The selection tool: currently supports:
Definition at line 67 of file pcb_selection_tool.h.
|
inherited |
Determine the reason of reset for a tool.
Definition at line 77 of file tool_base.h.
|
private |
Definition at line 340 of file pcb_selection_tool.h.
PCB_SELECTION_TOOL::PCB_SELECTION_TOOL | ( | ) |
Definition at line 130 of file pcb_selection_tool.cpp.
References PCB_SELECTION_FILTER_OPTIONS::dimensions, PCB_SELECTION_FILTER_OPTIONS::footprints, PCB_SELECTION_FILTER_OPTIONS::graphics, PCB_SELECTION_FILTER_OPTIONS::keepouts, PCB_SELECTION_FILTER_OPTIONS::lockedItems, m_filter, PCB_SELECTION_FILTER_OPTIONS::otherItems, PCB_SELECTION_FILTER_OPTIONS::pads, PCB_SELECTION_FILTER_OPTIONS::text, PCB_SELECTION_FILTER_OPTIONS::tracks, PCB_SELECTION_FILTER_OPTIONS::vias, and PCB_SELECTION_FILTER_OPTIONS::zones.
PCB_SELECTION_TOOL::~PCB_SELECTION_TOOL | ( | ) |
Definition at line 152 of file pcb_selection_tool.cpp.
References TOOL_BASE::getView(), m_enteredGroupOverlay, m_selection, SELECTION_TOOL::onDisambiguationExpire(), and KIGFX::VIEW::Remove().
|
inherited |
Run the tool.
After activation, the tool starts receiving events until it is finished.
Definition at line 64 of file tool_interactive.cpp.
References TOOL_MANAGER::InvokeTool(), TOOL_BASE::m_toolId, and TOOL_BASE::m_toolMgr.
Referenced by AUTOPLACE_TOOL::autoplace(), EDIT_TOOL::copyToClipboard(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::DrawArc(), DRAWING_TOOL::DrawBezier(), DRAWING_TOOL::DrawCircle(), DRAWING_TOOL::DrawDimension(), DRAWING_TOOL::DrawLine(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::DrawRectangle(), SCH_DRAWING_TOOLS::DrawRuleArea(), SCH_DRAWING_TOOLS::DrawShape(), PL_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), BOARD_EDITOR_CONTROL::DrillOrigin(), PAD_TOOL::EditPad(), PAD_TOOL::EnumeratePads(), PCB_CONTROL::GridPlaceOrigin(), SCH_EDITOR_CONTROL::HighlightNetCursor(), SCH_DRAWING_TOOLS::ImportGraphics(), SYMBOL_EDITOR_DRAWING_TOOLS::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), SCH_EDIT_TOOL::InteractiveDelete(), SYMBOL_EDITOR_EDIT_TOOL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), PCB_CONTROL::InteractiveDelete(), DRAWING_TOOL::InteractivePlaceWithPreview(), BOARD_INSPECTION_TOOL::LocalRatsnestTool(), EE_POINT_EDITOR::Main(), PICKER_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_POINT_EDITOR::Main(), PCB_PICKER_TOOL::Main(), ROUTER_TOOL::MainLoop(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), PCB_POINT_EDITOR::OnSelectionChange(), GROUP_TOOL::PickNewMember(), SYMBOL_EDITOR_DRAWING_TOOLS::PlaceAnchor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SCH_DRAWING_TOOLS::PlaceImage(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), EDIT_TOOL::Remove(), ROUTER_TOOL::RouteSelected(), PCB_PICKER_TOOL::SelectItemInteractively(), PCB_PICKER_TOOL::SelectPointInteractively(), DRAWING_TOOL::SetAnchor(), DRC_TOOL::ShowDRCDialog(), SCH_EDITOR_CONTROL::SimProbe(), SCH_EDITOR_CONTROL::SimTune(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), and SCH_LINE_WIRE_BUS_TOOL::UnfoldBus().
|
inherited |
Definition at line 141 of file selection_tool.cpp.
References SELECTION_TOOL::AddItemsToSel(), TOOL_EVENT::Parameter(), SELECTION_TOOL::selection(), and SELECTION::SetIsHover().
Referenced by SELECTION_TOOL::AddItemsToSel(), SCH_DRAWING_TOOLS::ImportSheet(), EE_SELECTION_TOOL::Main(), DIALOG_EXCHANGE_FOOTPRINTS::OnOKClicked(), PCB_EDIT_FRAME::RebuildAndRefresh(), EE_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), and setTransitions().
|
inherited |
Definition at line 149 of file selection_tool.cpp.
References TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), SELECTION_TOOL::select(), and EVENTS::SelectedEvent.
|
inherited |
Definition at line 108 of file selection_tool.cpp.
References SELECTION_TOOL::AddItemToSel(), TOOL_EVENT::Parameter(), SELECTION_TOOL::selection(), and SELECTION::SetIsHover().
Referenced by SELECTION_TOOL::AddItemToSel(), SCH_EDIT_TOOL::BreakWire(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), SCH_DRAWING_TOOLS::DrawShape(), PL_DRAWING_TOOLS::DrawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), SCH_EDIT_TOOL::EditField(), EDIT_TOOL::FilletTracks(), SCH_FIND_REPLACE_TOOL::FindNext(), SCH_EDIT_TOOL::InteractiveDelete(), SYMBOL_EDITOR_EDIT_TOOL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), DIALOG_INSPECTOR::onCellClicked(), SCH_DRAWING_TOOLS::PlaceImage(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), DRAWING_TOOL::PlaceTuningPattern(), SELECTION_TOOL::ReselectItem(), EE_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), setTransitions(), SCH_LINE_WIRE_BUS_TOOL::startSegments(), SCH_DRAWING_TOOLS::TwoClickPlace(), and SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace().
|
inherited |
Definition at line 116 of file selection_tool.cpp.
References TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), SELECTION_TOOL::select(), and EVENTS::SelectedEvent.
|
protectedinherited |
Set the TOOL_MANAGER the tool will belong to.
Called by TOOL_MANAGER::RegisterTool()
Definition at line 60 of file tool_base.cpp.
References TOOL_BASE::m_toolMgr.
Referenced by TOOL_MANAGER::RegisterTool().
|
inlineprotected |
Definition at line 257 of file pcb_selection_tool.h.
Referenced by FilterCollectorForFootprints(), filterSelection(), getCollectorsGuide(), grabUnconnected(), Main(), RebuildSelection(), Selectable(), selectAllConnectedShapes(), selectAllConnectedTracks(), SelectAllItemsOnNet(), selectAllItemsOnSheet(), selectConnections(), selectMultiple(), selectPoint(), and selectUnconnected().
|
inherited |
Definition at line 220 of file selection_tool.cpp.
References BRIGHTENED, and SELECTION_TOOL::highlight().
Referenced by SCH_EDIT_FRAME::DisplayCurrentSheet(), SCH_FIND_REPLACE_TOOL::FindNext(), SCH_EDIT_TOOL::InteractiveDelete(), SYMBOL_EDITOR_EDIT_TOOL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), PCB_CONTROL::InteractiveDelete(), SCH_EDITOR_CONTROL::SimProbe(), SCH_EDITOR_CONTROL::SimTune(), and SCH_FIND_REPLACE_TOOL::UpdateFind().
|
inlineprotected |
Definition at line 262 of file pcb_selection_tool.h.
References frame(), and PCB_BASE_FRAME::GetCanvas().
Referenced by FindItem().
void PCB_SELECTION_TOOL::ClearSelection | ( | bool | aQuietMode = false | ) |
Select all items on the board.
Definition at line 2716 of file pcb_selection_tool.cpp.
References EVENTS::ClearedEvent, SELECTION::ClearReferencePoint(), SELECTION::Empty(), SELECTION::Front(), SELECTION::GetSize(), PCB_ACTIONS::hideLocalRatsnest, m_selection, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), TOOL_MANAGER::RunAction(), SELECTED, SELECTION::SetIsHover(), unhighlight(), KIGFX::PCB_VIEW::Update(), and view().
int PCB_SELECTION_TOOL::ClearSelection | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 1270 of file pcb_selection_tool.cpp.
References ClearSelection().
Referenced by BOARD_EDITOR_CONTROL::AssignNetclass(), ClearSelection(), EDIT_TOOL::copyToClipboardAsText(), CONVERT_TOOL::CreatePolys(), EDIT_TOOL::doMoveSelection(), doSyncSelection(), EnterGroup(), ExitGroup(), filterSelection(), FindItem(), grabUnconnected(), GROUP_TOOL::Group(), Main(), RequestSelection(), Reset(), selectCursor(), selectMultiple(), selectPoint(), selectSameSheet(), selectSheetContents(), SelectTable(), setTransitions(), unrouteSelected(), and GLOBAL_EDIT_TOOL::ZonesManager().
|
inlineprotected |
Definition at line 242 of file pcb_selection_tool.h.
References TOOL_BASE::getViewControls().
|
overrideprotectedvirtual |
Determines if ctrl-click is highlight net or XOR selection.
Reimplemented from SELECTION_TOOL.
Definition at line 796 of file pcb_selection_tool.cpp.
References PCB_BASE_FRAME::GetPcbNewSettings(), PCBNEW_SETTINGS::m_CtrlClickHighlight, m_frame, and m_isFootprintEditor.
int PCB_SELECTION_TOOL::CursorSelection | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 1260 of file pcb_selection_tool.cpp.
References TOOL_EVENT::Parameter(), and selectCursor().
Referenced by setTransitions().
|
private |
Handle disambiguation actions including displaying the menu.
Definition at line 1244 of file pcb_selection_tool.cpp.
References SELECTION_TOOL::m_canceledMenu, SELECTION_TOOL::m_originalCursor, SELECTION_TOOL::m_skip_heuristics, selectPoint(), and SELECTION_TOOL::setModifiersState().
Referenced by setTransitions().
|
protectedinherited |
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(), EDA_ITEM::GetItemDescription(), EDA_ITEM::GetMenuImage(), TOOL_BASE::getView(), COLLECTOR::HasAdditionalItems(), SELECTION_TOOL::highlight(), LAYER_SELECT_OVERLAY, COLLECTOR::m_MenuTitle, 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, SELECTION_TOOL::unhighlight(), KIGFX::VIEW::UpdateItems(), and TOOL_INTERACTIVE::Wait().
Referenced by SELECTION_TOOL::SelectionMenu(), GERBVIEW_SELECTION_TOOL::selectPoint(), PL_SELECTION_TOOL::SelectPoint(), selectPoint(), and EE_SELECTION_TOOL::selectPoint().
|
private |
Invoke filter dialog and modify current selection.
Definition at line 2157 of file pcb_selection_tool.cpp.
References CROSS_PROBING_SETTINGS::center_on_items, BOX2< Vec >::Centre(), ClearSelection(), EDA_DRAW_FRAME::FocusOnLocation(), EDA_DRAW_PANEL_GAL::ForceRefresh(), PCB_SELECTION::GetBoundingBox(), PCB_BASE_FRAME::GetCanvas(), BOX2< Vec >::GetHeight(), PCB_BASE_FRAME::GetPcbNewSettings(), BOX2< Vec >::GetWidth(), APP_SETTINGS_BASE::m_CrossProbing, m_frame, m_selection, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), select(), selectConnections(), EVENTS::SelectedEvent, SELECTION::Size(), KIGFX::VIEW::UpdateAllLayersColor(), view(), CROSS_PROBING_SETTINGS::zoom_to_fit, and ZoomFitCrossProbeBBox().
Referenced by syncSelection(), and syncSelectionWithNets().
|
inlineprotected |
Definition at line 252 of file pcb_selection_tool.h.
void PCB_SELECTION_TOOL::EnterGroup | ( | ) |
Enter the group at the head of the current selection.
Definition at line 600 of file pcb_selection_tool.cpp.
References KIGFX::VIEW_GROUP::Add(), ClearSelection(), ENTERED, ExitGroup(), SELECTION::GetSize(), KIGFX::VIEW::Hide(), m_enteredGroup, m_enteredGroupOverlay, m_selection, TOOL_BASE::m_toolMgr, PCB_GROUP_T, TOOL_MANAGER::ProcessEvent(), PCB_GROUP::RunOnChildren(), select(), EVENTS::SelectedEvent, EDA_ITEM::SetFlags(), KIGFX::PCB_VIEW::Update(), and view().
Referenced by GROUP_TOOL::EnterGroup(), and Main().
void PCB_SELECTION_TOOL::ExitGroup | ( | bool | aSelectGroup = false | ) |
Leave the currently-entered group.
aSelectGroup | [optional] Select the group after leaving. |
Definition at line 625 of file pcb_selection_tool.cpp.
References KIGFX::VIEW_GROUP::Clear(), EDA_ITEM::ClearFlags(), ClearSelection(), ENTERED, KIGFX::VIEW::Hide(), m_enteredGroup, m_enteredGroupOverlay, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), select(), EVENTS::SelectedEvent, KIGFX::PCB_VIEW::Update(), and view().
Referenced by EDIT_TOOL::DeleteItems(), EnterGroup(), Main(), Reset(), select(), and selectPoint().
|
private |
Expand the current connected-item selection to the next boundary (junctions, pads, or all)
Definition at line 1395 of file pcb_selection_tool.cpp.
References _, BOARD_CONNECTED_ITEM::ClassOf(), connectedItemFilter(), PCB_GROUP::GetItems(), SELECTION::GetItems(), BOARD_ITEM::IsConnected(), isExpandableGraphicShape(), m_frame, m_selection, TOOL_BASE::m_toolMgr, pad, FOOTPRINT::Pads(), PCB_FOOTPRINT_T, PCB_GENERATOR_T, TOOL_MANAGER::ProcessEvent(), selectAllConnectedShapes(), selectAllConnectedTracks(), selectCursor(), EVENTS::SelectedEvent, STOP_AT_JUNCTION, STOP_AT_PAD, and STOP_NEVER.
Referenced by setTransitions().
void PCB_SELECTION_TOOL::FilterCollectedItems | ( | GENERAL_COLLECTOR & | aCollector, |
bool | aMultiSelect | ||
) |
Apply the SELECTION_FITLER_OPTIONS to the collector.
Definition at line 2568 of file pcb_selection_tool.cpp.
References COLLECTOR::GetCount(), itemPassesFilter(), and COLLECTOR::Remove().
Referenced by BOARD_INSPECTION_TOOL::highlightNet(), PCB_CONTROL::InteractiveDelete(), selectMultiple(), and selectPoint().
void PCB_SELECTION_TOOL::FilterCollectorForFootprints | ( | GENERAL_COLLECTOR & | aCollector, |
const VECTOR2I & | aWhere | ||
) | const |
Drop footprints that are not directly selected.
Definition at line 3829 of file pcb_selection_tool.cpp.
References LSET::AllLayersMask(), board(), BOX2ISafe(), BOX2< Vec >::Contains(), COLLECTOR::GetCount(), KIGFX::RENDER_SETTINGS::GetHighContrast(), KIGFX::RENDER_SETTINGS::GetHighContrastLayers(), FOOTPRINT::GetLayer(), FOOTPRINT::GetLayerBoundingBox(), KIGFX::VIEW::GetPainter(), KIGFX::PAINTER::GetSettings(), SELECTION::GetSize(), TOOL_BASE::getView(), KIGFX::VIEW::GetViewport(), BOARD::GetVisibleLayers(), FOOTPRINT::HitTestOnLayer(), KIGFX::VIEW::IsLayerVisible(), SELECTION_TOOL::m_additive, SELECTION_TOOL::m_exclusive_or, m_isFootprintEditor, m_selection, SELECTION_TOOL::m_subtractive, PCB_FOOTPRINT_T, PCB_LAYER_ID_COUNT, COLLECTOR::Remove(), BASE_SET::reset(), LSET::Seq(), BASE_SET::set(), and view().
Referenced by selectPoint().
void PCB_SELECTION_TOOL::FilterCollectorForFreePads | ( | GENERAL_COLLECTOR & | aCollector, |
bool | aForcePromotion = false |
||
) | const |
Check the "allow free pads" setting and if disabled, replace any pads in the collector with their parent footprints.
Definition at line 3791 of file pcb_selection_tool.cpp.
References COLLECTOR::Append(), frame(), COLLECTOR::GetCount(), BOARD_ITEM::GetParent(), COLLECTOR::HasItem(), m_isFootprintEditor, PCB_PAD_T, COLLECTOR::Remove(), and EDA_ITEM::Type().
Referenced by ALIGN_DISTRIBUTE_TOOL::DistributeItems(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::Drag(), EDIT_TOOL::Duplicate(), EDIT_TOOL::Flip(), EDIT_TOOL::Mirror(), EDIT_TOOL::PackAndMoveFootprints(), EDIT_TOOL::Remove(), EDIT_TOOL::Rotate(), and EDIT_TOOL::Swap().
void PCB_SELECTION_TOOL::FilterCollectorForHierarchy | ( | GENERAL_COLLECTOR & | aCollector, |
bool | aMultiselect | ||
) | const |
In general we don't want to select both a parent and any of it's children.
This includes both footprints and their items, and groups and their members.
Definition at line 3699 of file pcb_selection_tool.cpp.
References COLLECTOR::Append(), CANDIDATE, COLLECTOR::GetCount(), EDA_ITEM::GetFlags(), BOARD_ITEM::GetParent(), COLLECTOR::HasItem(), m_enteredGroup, m_isFootprintEditor, PCB_FOOTPRINT_T, COLLECTOR::Remove(), PCB_GROUP::TopLevelGroup(), EDA_ITEM::Type(), and PCB_GROUP::WithinScope().
Referenced by ARRAY_TOOL::CreateArray(), ALIGN_DISTRIBUTE_TOOL::DistributeItems(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::Drag(), EDIT_TOOL::Duplicate(), EDIT_TOOL::Flip(), PCB_CONTROL::InteractiveDelete(), EDIT_TOOL::JustifyText(), EDIT_TOOL::Mirror(), EDIT_TOOL::MoveExact(), EDIT_TOOL::PackAndMoveFootprints(), POSITION_RELATIVE_TOOL::PositionRelative(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), GLOBAL_EDIT_TOOL::RemoveUnusedPads(), EDIT_TOOL::Rotate(), SelectAll(), selectMultiple(), selectPoint(), and EDIT_TOOL::Swap().
void PCB_SELECTION_TOOL::FilterCollectorForMarkers | ( | GENERAL_COLLECTOR & | aCollector | ) | const |
Drop any PCB_MARKERs from the collector.
Definition at line 3816 of file pcb_selection_tool.cpp.
References COLLECTOR::GetCount(), PCB_MARKER_T, COLLECTOR::Remove(), and EDA_ITEM::Type().
Referenced by ARRAY_TOOL::CreateArray(), ALIGN_DISTRIBUTE_TOOL::DistributeItems(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::Duplicate(), EDIT_TOOL::Flip(), EDIT_TOOL::Mirror(), EDIT_TOOL::MoveExact(), EDIT_TOOL::PackAndMoveFootprints(), POSITION_RELATIVE_TOOL::PositionRelative(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), EDIT_TOOL::Rotate(), and EDIT_TOOL::Swap().
void PCB_SELECTION_TOOL::FilterCollectorForTableCells | ( | GENERAL_COLLECTOR & | aCollector | ) | const |
Promote any table cell selections to the whole table.
Definition at line 3768 of file pcb_selection_tool.cpp.
References COLLECTOR::Append(), COLLECTOR::GetCount(), BOARD_ITEM::GetParent(), COLLECTOR::HasItem(), PCB_TABLECELL_T, COLLECTOR::Remove(), and EDA_ITEM::Type().
Referenced by EDIT_TOOL::doMoveSelection(), EDIT_TOOL::Duplicate(), EDIT_TOOL::Flip(), EDIT_TOOL::MoveExact(), and EDIT_TOOL::Rotate().
|
private |
Return true if the given item passes the current SELECTION_FILTER_OPTIONS.
Definition at line 2536 of file pcb_selection_tool.cpp.
References board(), ClearSelection(), SELECTION::GetItems(), itemIsIncludedByFilter(), m_frame, m_priv, m_selection, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), select(), EVENTS::SelectedEvent, selection(), and DIALOG_SHIM::ShowModal().
Referenced by setTransitions().
void PCB_SELECTION_TOOL::FindItem | ( | BOARD_ITEM * | aItem | ) |
Take necessary actions to mark an item as found.
aItem | The item that was found and needs to be highlighted/focused/etc. |
Definition at line 2404 of file pcb_selection_tool.cpp.
References BOX2ISafe(), canvas(), EVENTS::ClearedEvent, ClearSelection(), BOX2< Vec >::Contains(), EDA_DRAW_FRAME::FocusOnLocation(), EDA_DRAW_PANEL_GAL::ForceRefresh(), EDA_ITEM::GetBoundingBox(), PCB_BASE_FRAME::GetCanvas(), BOARD_ITEM::GetCenter(), BOX2< Vec >::GetHeight(), BOX2< Vec >::GetOrigin(), EDA_ITEM::GetPosition(), KIGFX::VIEW::GetScale(), BOX2< Vec >::GetSize(), SELECTION::GetSize(), PCB_DRAW_PANEL_GAL::GetView(), KIGFX::VIEW::GetViewport(), BOX2< Vec >::GetWidth(), m_frame, m_selection, TOOL_BASE::m_toolMgr, PCB_NETINFO_T, TOOL_MANAGER::ProcessEvent(), scale, select(), SelectAllItemsOnNet(), EVENTS::SelectedEvent, KIGFX::VIEW::SetScale(), EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by PCB_EDIT_FRAME::ShowFindDialog().
|
inlineprotected |
Definition at line 247 of file pcb_selection_tool.h.
Referenced by canvas(), FilterCollectorForFreePads(), Init(), Main(), RequestSelection(), and Selectable().
|
inline |
Definition at line 200 of file pcb_selection_tool.h.
References PCB_BASE_FRAME::GetActiveLayer(), and m_frame.
|
private |
Definition at line 770 of file pcb_selection_tool.cpp.
References board(), BOARD::IsElementVisible(), LAYER_FOOTPRINTS_BK, LAYER_FOOTPRINTS_FR, LAYER_FP_REFERENCES, LAYER_FP_TEXT, LAYER_FP_VALUES, LAYER_PADS, LAYER_TRACKS, LAYER_VIAS, GENERAL_COLLECTORS_GUIDE::SetIgnoreBlindBuriedVias(), GENERAL_COLLECTORS_GUIDE::SetIgnoreFootprintsOnBack(), GENERAL_COLLECTORS_GUIDE::SetIgnoreFootprintsOnFront(), GENERAL_COLLECTORS_GUIDE::SetIgnoreFPReferences(), GENERAL_COLLECTORS_GUIDE::SetIgnoreFPTextOnBack(), GENERAL_COLLECTORS_GUIDE::SetIgnoreFPTextOnFront(), GENERAL_COLLECTORS_GUIDE::SetIgnoreFPValues(), GENERAL_COLLECTORS_GUIDE::SetIgnoreMicroVias(), GENERAL_COLLECTORS_GUIDE::SetIgnorePadsOnBack(), GENERAL_COLLECTORS_GUIDE::SetIgnorePadsOnFront(), GENERAL_COLLECTORS_GUIDE::SetIgnoreThroughHolePads(), GENERAL_COLLECTORS_GUIDE::SetIgnoreThroughVias(), GENERAL_COLLECTORS_GUIDE::SetIgnoreTracks(), and view().
Referenced by Main(), RequestSelection(), selectAllConnectedShapes(), and selectPoint().
|
inlineprotectedinherited |
Return the application window object, casted to requested user type.
Definition at line 186 of file tool_base.h.
References TOOL_BASE::getToolHolderInternal().
Referenced by ZONE_CREATE_HELPER::createNewZone(), and ZONE_CREATE_HELPER::setUniquePriority().
|
inline |
Definition at line 198 of file pcb_selection_tool.h.
References m_enteredGroup.
Referenced by EDIT_TOOL::DeleteItems(), PCB_CONTROL::placeBoardItems(), and BOARD_COMMIT::Push().
|
inline |
Set up handlers for various events.
Definition at line 169 of file pcb_selection_tool.h.
References m_filter.
Referenced by EDIT_TOOL::doMoveSelection(), BOARD_INSPECTION_TOOL::highlightNet(), PCB_EDIT_FRAME::LoadProjectSettings(), PANEL_SELECTION_FILTER::OnFilterChanged(), PANEL_SELECTION_FILTER::PANEL_SELECTION_FILTER(), and PCB_EDIT_FRAME::saveProjectSettings().
|
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 TOOL_BASE::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 TOOL_BASE::m_toolMgr.
Referenced by MULTICHANNEL_TOOL::AutogenerateRuleAreas(), ZONE_CREATE_HELPER::commitZone(), ZONE_CREATE_HELPER::createNewZone(), PNS_KICAD_IFACE::DisplayItem(), PCB_TOOL_BASE::doInteractiveItemPlacement(), PCB_TUNING_PATTERN::EditPush(), PCB_TUNING_PATTERN::EditRevert(), PCB_TUNING_PATTERN::EditStart(), ACTION_MENU::getToolManager(), PNS_KICAD_IFACE::GetUnits(), makeShapeModificationMenu(), ZONE_CREATE_HELPER::OnFirstPoint(), ZONE_CREATE_HELPER::performZoneCutout(), PAD_TOOL::PlacePad(), MULTICHANNEL_TOOL::RepeatLayout(), SCH_COMMIT::SCH_COMMIT(), PCB_TUNING_PATTERN::Update(), and GLOBAL_EDIT_TOOL::ZonesManager().
|
inlineprotectedinherited |
Return the model object if it matches the requested type.
Definition at line 198 of file tool_base.h.
References TOOL_BASE::getModelInternal().
Referenced by ZONE_CREATE_HELPER::commitZone(), and ZONE_CREATE_HELPER::createZoneFromExisting().
|
privateinherited |
Definition at line 54 of file tool_base.cpp.
References TOOL_MANAGER::GetModel(), and TOOL_BASE::m_toolMgr.
Referenced by TOOL_BASE::getModel().
|
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 TOOL_BASE::m_toolName.
Referenced by TOOL_MANAGER::dispatchInternal(), TOOL_INTERACTIVE::goInternal(), COMMON_TOOLS::GridProperties(), TOOL_MANAGER::InitTools(), TOOL_MANAGER::invokeTool(), TOOL_MANAGER::RegisterTool(), TOOL_MANAGER::ResetTools(), TOOL_MANAGER::runTool(), and TOOL_MANAGER::ShutdownTool().
PCB_SELECTION & PCB_SELECTION_TOOL::GetSelection | ( | ) |
Definition at line 647 of file pcb_selection_tool.cpp.
References m_selection.
Referenced by PCB_PROPERTIES_PANEL::AfterCommit(), BOARD_INSPECTION_TOOL::calculateSelectionRatsnest(), PAD_TOOL::copyPadSettings(), ZONE_CREATE_HELPER::createNewZone(), DRC_TOOL::CrossProbe(), BOARD_EDITOR_CONTROL::doCrossProbePcbToSch(), BOARD_INSPECTION_TOOL::doHideRatsnestNet(), EDIT_TOOL::DragArcTrack(), GROUP_TOOL::EnterGroup(), GLOBAL_EDIT_TOOL::ExchangeFootprints(), EDIT_TOOL::GetAndPlace(), PCB_PROPERTIES_PANEL::getPropertyFromEvent(), DRAWING_TOOL::getSourceZoneForAction(), API_HANDLER_PCB::handleInteractiveMoveItems(), BOARD_INSPECTION_TOOL::highlightNet(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectConstraints(), BOARD_INSPECTION_TOOL::LocalRatsnestTool(), Main(), BOARD_EDITOR_CONTROL::modifyLockSelected(), PCB_POINT_EDITOR::OnSelectionChange(), PAD_TOOL::pastePadProperties(), PCB_CONTROL::placeBoardItems(), DRAWING_TOOL::PlaceReferenceImage(), PAD_TOOL::pushPadSettings(), BOARD_REANNOTATE_TOOL::ReannotateDuplicatesInSelection(), EDIT_TOOL::Remove(), GROUP_TOOL::RemoveFromGroup(), PCB_TOOL_BASE::selection(), BOARD_INSPECTION_TOOL::ShowFootprintLinks(), DIALOG_GLOBAL_EDIT_TEARDROPS::TransferDataToWindow(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::TransferDataToWindow(), GROUP_CONTEXT_MENU::update(), PCB_PROPERTIES_PANEL::UpdateData(), PCB_CONTROL::UpdateMessagePanel(), PCB_PROPERTIES_PANEL::valueChanged(), PCB_PROPERTIES_PANEL::valueChanging(), and BOARD_EDITOR_CONTROL::ZoneDuplicate().
|
privateinherited |
Definition at line 48 of file tool_base.cpp.
References TOOL_MANAGER::GetToolHolder(), and TOOL_BASE::m_toolMgr.
Referenced by TOOL_BASE::getEditFrame().
|
inherited |
Definition at line 110 of file tool_interactive.cpp.
References TOOL_INTERACTIVE::m_menu.
Referenced by EDIT_TOOL::doMoveSelection(), EE_INSPECTION_TOOL::Init(), EE_POINT_EDITOR::Init(), SCH_EDIT_TABLE_TOOL::Init(), SCH_EDIT_TOOL::Init(), SCH_LINE_WIRE_BUS_TOOL::Init(), SCH_MOVE_TOOL::Init(), SYMBOL_EDITOR_EDIT_TOOL::Init(), SYMBOL_EDITOR_MOVE_TOOL::Init(), SYMBOL_EDITOR_PIN_TOOL::Init(), PL_EDIT_TOOL::Init(), BOARD_EDITOR_CONTROL::Init(), BOARD_INSPECTION_TOOL::Init(), CONVERT_TOOL::Init(), EDIT_TOOL::Init(), GENERATOR_TOOL::Init(), GROUP_TOOL::Init(), PAD_TOOL::Init(), PCB_EDIT_TABLE_TOOL::Init(), PCB_POINT_EDITOR::Init(), ALIGN_DISTRIBUTE_TOOL::Init(), and POSITION_RELATIVE_TOOL::PositionRelativeInteractively().
|
inlineinherited |
Return the type of the tool.
Definition at line 111 of file tool_base.h.
References TOOL_BASE::m_type.
Referenced by TOOL_MANAGER::InvokeTool(), TOOL_MANAGER::ResetTools(), TOOL_MANAGER::runTool(), and TOOL_MANAGER::ShutdownTool().
|
protectedinherited |
Returns the instance of #VIEW object used in the application.
It allows tools to draw.
Definition at line 36 of file tool_base.cpp.
References TOOL_MANAGER::GetView(), and TOOL_BASE::m_toolMgr.
Referenced by EE_POINT_EDITOR::addCornerCondition(), ALIGN_DISTRIBUTE_TOOL::AlignLeft(), ALIGN_DISTRIBUTE_TOOL::AlignRight(), EE_INSPECTION_TOOL::CheckSymbol(), GERBVIEW_CONTROL::ClearAllLayers(), PL_SELECTION_TOOL::ClearSelection(), EE_SELECTION_TOOL::ClearSelection(), EE_SELECTION_TOOL::CollectHits(), SCH_LINE_WIRE_BUS_TOOL::computeBreakPoint(), COMMON_TOOLS::CursorControl(), EDIT_TOOL::DeleteItems(), COMMON_TOOLS::doCenter(), PL_EDIT_TOOL::DoDelete(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), SELECTION_TOOL::doSelectionMenu(), COMMON_TOOLS::doZoomFit(), COMMON_TOOLS::doZoomInOut(), COMMON_TOOLS::doZoomToPreset(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::drawOneBezier(), SCH_DRAWING_TOOLS::DrawRuleArea(), SCH_LINE_WIRE_BUS_TOOL::DrawSegments(), SCH_DRAWING_TOOLS::DrawShape(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), BOARD_EDITOR_CONTROL::DrillOrigin(), PAD_TOOL::EnumeratePads(), FilterCollectorForFootprints(), EE_SELECTION_TOOL::GetNode(), ROUTER_TOOL::getStartLayer(), PCB_CONTROL::GridPlaceOrigin(), PCB_CONTROL::GridResetOrigin(), EE_SELECTION_TOOL::GuessSelectionCandidates(), GuessSelectionCandidates(), ROUTER_TOOL::handleCommonEvents(), PL_SELECTION_TOOL::highlight(), highlight(), EE_SELECTION_TOOL::highlight(), GERBVIEW_CONTROL::HighlightControl(), BOARD_INSPECTION_TOOL::highlightNet(), PNS::TOOL_BASE::highlightNets(), hitTestDistance(), SCH_DRAWING_TOOLS::ImportGraphics(), SYMBOL_EDITOR_DRAWING_TOOLS::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), SCH_EDIT_TOOL::Init(), EDIT_TOOL::Init(), ROUTER_TOOL::InlineDrag(), SCH_EDIT_TOOL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), PCB_CONTROL::InteractiveDelete(), EE_POINT_EDITOR::Main(), PL_POINT_EDITOR::Main(), PCB_PICKER_TOOL::Main(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), SCH_EDIT_TOOL::Mirror(), EDIT_TOOL::MoveExact(), PL_EDIT_TOOL::moveItem(), COMMON_TOOLS::OnGridChanged(), PCB_POINT_EDITOR::OnSelectionChange(), COMMON_TOOLS::PanControl(), SCH_EDITOR_CONTROL::Paste(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), PL_EDIT_TOOL::Paste(), ROUTER_TOOL::performRouting(), PNS::TOOL_BASE::pickSingleItem(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SCH_DRAWING_TOOLS::PlaceImage(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), ROUTER_TOOL::prepareInteractive(), SCH_EDIT_TOOL::Properties(), EDIT_TOOL::Properties(), pruneObscuredSelectionCandidates(), EE_SELECTION_TOOL::Reset(), EE_TOOL_BASE< T >::Reset(), GERBVIEW_SELECTION_TOOL::Reset(), PNS::TOOL_BASE::Reset(), BOARD_EDITOR_CONTROL::Reset(), DRAWING_TOOL::Reset(), GENERATOR_TOOL_PNS_PROXY::Reset(), PCB_CONTROL::Reset(), Reset(), SCH_EDIT_TOOL::Rotate(), GERBVIEW_SELECTION_TOOL::select(), Selectable(), EE_SELECTION_TOOL::SelectAll(), SelectAll(), EE_SELECTION_TOOL::selectionContains(), PL_SELECTION_TOOL::selectionContains(), selectionContains(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), selectMultiple(), PL_SELECTION_TOOL::SelectPoint(), EE_SELECTION_TOOL::selectPoint(), ZOOM_TOOL::selectRegion(), GERBVIEW_SELECTION_TOOL::selectVisually(), DRAWING_TOOL::SetAnchor(), SCH_EDITOR_CONTROL::SimProbe(), SCH_EDITOR_CONTROL::SimTune(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_EDITOR_CONTROL::ToggleDirectiveLabels(), SCH_EDITOR_CONTROL::ToggleERCErrors(), SCH_EDITOR_CONTROL::ToggleERCWarnings(), SCH_EDITOR_CONTROL::ToggleHiddenFields(), SYMBOL_EDITOR_CONTROL::ToggleHiddenFields(), SCH_EDITOR_CONTROL::ToggleHiddenPins(), SYMBOL_EDITOR_CONTROL::ToggleHiddenPins(), SCH_EDITOR_CONTROL::ToggleOPCurrents(), SCH_EDITOR_CONTROL::ToggleOPVoltages(), SCH_EDITOR_CONTROL::TogglePinAltIcons(), SYMBOL_EDITOR_CONTROL::TogglePinAltIcons(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), PL_SELECTION_TOOL::unhighlight(), unhighlight(), PCB_TEST_SELECTION_TOOL::unhighlight(), EE_SELECTION_TOOL::unhighlight(), GERBVIEW_SELECTION_TOOL::unselect(), EE_SELECTION_TOOL::UnselectAll(), UnselectAll(), GERBVIEW_SELECTION_TOOL::unselectVisually(), EE_POINT_EDITOR::updateEditedPoint(), PL_POINT_EDITOR::updateEditedPoint(), PCB_POINT_EDITOR::updateEditedPoint(), SCH_FIND_REPLACE_TOOL::UpdateFind(), PL_POINT_EDITOR::updateItem(), PCB_POINT_EDITOR::updateItem(), EE_TOOL_BASE< T >::updateItem(), SCH_EDITOR_CONTROL::UpdateNetHighlighting(), EE_POINT_EDITOR::updatePoints(), PL_POINT_EDITOR::updatePoints(), PCB_POINT_EDITOR::updatePoints(), updateSelection(), PNS::TOOL_BASE::updateStartItem(), view(), PCB_TOOL_BASE::view(), PCB_VIEWER_TOOLS::view(), PCB_TEST_SELECTION_TOOL::view(), EE_SELECTION_TOOL::ZoomFitCrossProbeBBox(), ZoomFitCrossProbeBBox(), zoomFitSelection(), EE_SELECTION_TOOL::~EE_SELECTION_TOOL(), GERBVIEW_SELECTION_TOOL::~GERBVIEW_SELECTION_TOOL(), and ~PCB_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 42 of file tool_base.cpp.
References TOOL_MANAGER::GetViewControls(), and TOOL_BASE::m_toolMgr.
Referenced by EE_POINT_EDITOR::addCorner(), PCB_POINT_EDITOR::addCorner(), EE_POINT_EDITOR::addCornerCondition(), EE_SELECTION_TOOL::autostartEvent(), SCH_EDIT_TOOL::BreakWire(), PCB_POINT_EDITOR::chamferCorner(), controls(), PCB_TOOL_BASE::controls(), PCB_TEST_SELECTION_TOOL::controls(), COMMON_TOOLS::CursorControl(), EDIT_TOOL::DeleteItems(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), SCH_LINE_WIRE_BUS_TOOL::doUnfoldBus(), COMMON_TOOLS::doZoomToPreset(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::DrawCircle(), DRAWING_TOOL::DrawLine(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::DrawRectangle(), SCH_DRAWING_TOOLS::DrawRuleArea(), SCH_DRAWING_TOOLS::DrawShape(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), PAD_TOOL::EnumeratePads(), SCH_LINE_WIRE_BUS_TOOL::finishSegments(), SCH_EDITOR_CONTROL::HighlightNet(), BOARD_INSPECTION_TOOL::HighlightNet(), FOOTPRINT_EDITOR_CONTROL::ImportFootprint(), SCH_DRAWING_TOOLS::ImportGraphics(), SYMBOL_EDITOR_DRAWING_TOOLS::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), SYMBOL_EDITOR_EDIT_TOOL::Increment(), SCH_EDIT_TOOL::Init(), EDIT_TOOL::Init(), EE_POINT_EDITOR::Main(), EE_SELECTION_TOOL::Main(), PICKER_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_POINT_EDITOR::Main(), PCB_PICKER_TOOL::Main(), ROUTER_TOOL::MainLoop(), PCB_POINT_EDITOR::makePoints(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), COMMON_TOOLS::OnGridChanged(), PCB_POINT_EDITOR::OnSelectionChange(), SCH_EDITOR_CONTROL::Paste(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), SYMBOL_EDITOR_DRAWING_TOOLS::PlaceAnchor(), PCB_CONTROL::placeBoardItems(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SCH_DRAWING_TOOLS::PlaceImage(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), SCH_EDIT_TOOL::Properties(), EDIT_TOOL::Properties(), SCH_EDIT_TOOL::RepeatDrawItem(), PL_SELECTION_TOOL::RequestSelection(), EE_SELECTION_TOOL::RequestSelection(), DRAWING_TOOL::Reset(), PCB_POINT_EDITOR::Reset(), COMMON_TOOLS::ResetLocalCoords(), ROUTER_TOOL::RouteSelected(), selectCursor(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), selectMultiple(), EE_SELECTION_TOOL::SelectNode(), ZOOM_TOOL::selectRegion(), selectTableCells(), EE_SELECTION_TOOL::selectTableCells(), ALIGN_DISTRIBUTE_TOOL::selectTarget(), PICKER_TOOL::setControls(), PCB_PICKER_TOOL::setControls(), EE_POINT_EDITOR::setEditedPoint(), PL_POINT_EDITOR::setEditedPoint(), PCB_POINT_EDITOR::setEditedPoint(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_DRAWING_TOOLS::SyncSheetsPins(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), EE_POINT_EDITOR::updateEditedPoint(), PL_POINT_EDITOR::updateEditedPoint(), PCB_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 TOOL_INTERACTIVE::goInternal().
Referenced by EDA_3D_CONTROLLER::setTransitions(), BITMAP2CMP_CONTROL::setTransitions(), LIBRARY_EDITOR_CONTROL::setTransitions(), CVPCB_ASSOCIATION_TOOL::setTransitions(), CVPCB_CONTROL::setTransitions(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::setTransitions(), EE_INSPECTION_TOOL::setTransitions(), EE_POINT_EDITOR::setTransitions(), EE_SELECTION_TOOL::setTransitions(), SCH_DESIGN_BLOCK_CONTROL::setTransitions(), SCH_DRAWING_TOOLS::setTransitions(), SCH_EDIT_TABLE_TOOL::setTransitions(), SCH_EDIT_TOOL::setTransitions(), SCH_EDITOR_CONTROL::setTransitions(), SCH_FIND_REPLACE_TOOL::setTransitions(), SCH_LINE_WIRE_BUS_TOOL::setTransitions(), SCH_MOVE_TOOL::setTransitions(), SCH_NAVIGATE_TOOL::setTransitions(), SIMULATOR_CONTROL::setTransitions(), SYMBOL_EDITOR_CONTROL::setTransitions(), SYMBOL_EDITOR_DRAWING_TOOLS::setTransitions(), SYMBOL_EDITOR_EDIT_TOOL::setTransitions(), SYMBOL_EDITOR_MOVE_TOOL::setTransitions(), SYMBOL_EDITOR_PIN_TOOL::setTransitions(), GERBVIEW_CONTROL::setTransitions(), GERBVIEW_INSPECTION_TOOL::setTransitions(), GERBVIEW_SELECTION_TOOL::setTransitions(), COMMON_CONTROL::setTransitions(), COMMON_TOOLS::setTransitions(), EMBED_TOOL::setTransitions(), PICKER_TOOL::setTransitions(), PROPERTIES_TOOL::setTransitions(), ZOOM_TOOL::setTransitions(), KICAD_MANAGER_CONTROL::setTransitions(), PL_DRAWING_TOOLS::setTransitions(), PL_EDIT_TOOL::setTransitions(), PL_EDITOR_CONTROL::setTransitions(), PL_POINT_EDITOR::setTransitions(), PL_SELECTION_TOOL::setTransitions(), PCB_CALCULATOR_CONTROL::setTransitions(), AUTOPLACE_TOOL::setTransitions(), MICROWAVE_TOOL::setTransitions(), SCRIPTING_TOOL::setTransitions(), ROUTER_TOOL::setTransitions(), ARRAY_TOOL::setTransitions(), BOARD_EDITOR_CONTROL::setTransitions(), BOARD_INSPECTION_TOOL::setTransitions(), BOARD_REANNOTATE_TOOL::setTransitions(), CONVERT_TOOL::setTransitions(), DRAWING_TOOL::setTransitions(), DRC_TOOL::setTransitions(), EDIT_TOOL::setTransitions(), FOOTPRINT_EDITOR_CONTROL::setTransitions(), GENERATOR_TOOL::setTransitions(), GLOBAL_EDIT_TOOL::setTransitions(), GROUP_TOOL::setTransitions(), MULTICHANNEL_TOOL::setTransitions(), PAD_TOOL::setTransitions(), PCB_CONTROL::setTransitions(), PCB_EDIT_TABLE_TOOL::setTransitions(), PCB_PICKER_TOOL::setTransitions(), PCB_POINT_EDITOR::setTransitions(), setTransitions(), PCB_VIEWER_TOOLS::setTransitions(), ALIGN_DISTRIBUTE_TOOL::setTransitions(), POSITION_RELATIVE_TOOL::setTransitions(), ZONE_FILLER_TOOL::setTransitions(), and PCB_TEST_SELECTION_TOOL::setTransitions().
|
privateinherited |
Definition at line 83 of file tool_interactive.cpp.
References TOOL_BASE::GetName(), kicadTraceToolStack, TOOL_BASE::m_toolMgr, TOOL_EVENT_LIST::Names(), and TOOL_MANAGER::ScheduleNextState().
Referenced by TOOL_INTERACTIVE::Go().
|
private |
Select and move other nearest footprint unconnected on same net as selected items.
Definition at line 1884 of file pcb_selection_tool.cpp.
References board(), ClearSelection(), CN_ANCHOR::Dirty(), BOARD::GetConnectivity(), SELECTION::GetItems(), BOARD_ITEM::GetParentFootprint(), m_selection, TOOL_BASE::m_toolMgr, PCB_ACTIONS::moveIndividually, pad, CN_ANCHOR::Parent(), PCB_FOOTPRINT_T, PCB_PAD_T, TOOL_MANAGER::RunAction(), select(), and EDA_ITEM::Type().
Referenced by setTransitions().
void PCB_SELECTION_TOOL::GuessSelectionCandidates | ( | GENERAL_COLLECTOR & | aCollector, |
const VECTOR2I & | aWhere | ||
) | const |
Try to guess best selection candidates in case multiple items are clicked, by doing some brain-dead heuristics.
aCollector | [in, out] The collector that has a list of items to be narrowed. |
aWhere | The selection point to consider. |
Definition at line 3504 of file pcb_selection_tool.cpp.
References COLLECTOR::Append(), B_CrtYd, B_SilkS, COLLECTOR::Empty(), F_CrtYd, F_SilkS, PCB_BASE_FRAME::GetActiveLayer(), EDA_ITEM::GetBoundingBox(), ADVANCED_CFG::GetCfg(), COLLECTOR::GetCount(), FOOTPRINT::GetCoverageArea(), PCB_VIA::GetDrill(), GENERAL_COLLECTOR::GetGuide(), BOX2< Vec >::GetHeight(), KIGFX::RENDER_SETTINGS::GetHighContrast(), BOARD_ITEM::GetLayer(), KIGFX::VIEW::GetPainter(), KIGFX::PAINTER::GetSettings(), TOOL_BASE::getView(), BOX2< Vec >::GetWidth(), hitTestDistance(), ZONE::HitTestForEdge(), EDA_ITEM::IsType(), KiROUND(), m_frame, COLLECTORS_GUIDE::OnePixelInIU(), PCB_FIELD_T, PCB_FOOTPRINT_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_TABLE_T, PCB_TABLECELL_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_VIA_T, PCB_ZONE_T, pruneObscuredSelectionCandidates(), SEG::Square(), COLLECTOR::Transfer(), EDA_ITEM::Type(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by PCB_CONTROL::InteractiveDelete(), DRAWING_TOOL::PlaceTuningPattern(), and selectPoint().
|
protectedinherited |
True if a selection modifier is enabled, false otherwise.
Definition at line 87 of file selection_tool.cpp.
References SELECTION_TOOL::m_additive, SELECTION_TOOL::m_exclusive_or, and SELECTION_TOOL::m_subtractive.
Referenced by EE_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), Main(), and SELECTION_TOOL::onDisambiguationExpire().
|
overrideprivatevirtual |
Highlight the item visually.
aItem | The item to be highlighted. |
aHighlightMode | Either SELECTED or BRIGHTENED |
aGroup | [optional A group to add the item to. |
Implements SELECTION_TOOL.
Definition at line 3109 of file pcb_selection_tool.cpp.
References SELECTION::Add(), BRIGHTENED, TOOL_BASE::getView(), highlightInternal(), KIGFX::VIEW::MarkTargetDirty(), KIGFX::REPAINT, KIGFX::TARGET_OVERLAY, KIGFX::PCB_VIEW::Update(), and view().
Referenced by RebuildSelection(), RequestSelection(), and select().
|
private |
Definition at line 3124 of file pcb_selection_tool.cpp.
References BRIGHTENED, KIGFX::VIEW::Hide(), highlightInternal(), KIGFX::VIEW_ITEM::IsBOARD_ITEM(), BOARD_ITEM::RunOnDescendants(), SELECTED, EDA_ITEM::SetBrightened(), EDA_ITEM::SetSelected(), and view().
Referenced by highlight(), and highlightInternal().
|
private |
Definition at line 3216 of file pcb_selection_tool.cpp.
References BOX2ISafe(), SHAPE_POLY_SET::Collide(), SHAPE_LINE_CHAIN::Collide(), distance(), FOOTPRINT::GetBoundingBox(), FOOTPRINT::GetBoundingHull(), PCB_TABLE::GetCells(), BOARD_ITEM::GetEffectiveShape(), EDA_TEXT::GetEffectiveTextShape(), BOX2< Vec >::GetHeight(), MARKER_BASE::GetPos(), TOOL_BASE::getView(), KIGFX::VIEW::GetViewport(), BOX2< Vec >::GetWidth(), group, hitTestDistance(), ZONE::HitTestForEdge(), SHAPE_LINE_CHAIN::Move(), PCB_FIELD_T, PCB_FOOTPRINT_T, PCB_GENERATOR_T, PCB_GROUP_T, PCB_MARKER_T, PCB_PAD_T, PCB_TABLE_T, PCB_TABLECELL_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_ZONE_T, MARKER_BASE::ShapeToPolygon(), text, and EDA_ITEM::Type().
Referenced by GuessSelectionCandidates(), and hitTestDistance().
|
overridevirtual |
Init() is called once upon a registration of the tool.
Reimplemented from TOOL_BASE.
Definition at line 162 of file pcb_selection_tool.cpp.
References EDA_DRAW_FRAME::AddStandardSubMenus(), ACTIONS::cancelInteractive, PCB_ACTIONS::clearHighlight, SELECTION_CONDITIONS::Count(), frame(), FRAME_FOOTPRINT_VIEWER, FRAME_PCB_EDITOR, KIGFX::RENDER_SETTINGS::GetHighlightNetCodes(), KIGFX::VIEW::GetPainter(), KIGFX::PAINTER::GetSettings(), TOOL_MANAGER::GetView(), PCB_ACTIONS::groupEnter, PCB_ACTIONS::groupLeave, SELECTION_CONDITIONS::HasType(), EDA_BASE_FRAME::IsType(), SELECTION_TOOL::m_disambiguateTimer, m_enteredGroup, TOOL_INTERACTIVE::m_menu, TOOL_BASE::m_toolMgr, SELECTION_CONDITIONS::MoreThan(), SELECTION_CONDITIONS::NotEmpty(), SELECTION_TOOL::onDisambiguationExpire(), SELECTION_CONDITIONS::OnlyTypes(), PCB_GROUP_T, PCB_TABLECELL_T, ACTIONS::selectColumns, ACTIONS::selectRows, ACTIONS::selectTable, tableCellTypes, and TOOLS_HOLDER::ToolStackIsEmpty().
|
private |
Definition at line 1766 of file pcb_selection_tool.cpp.
References EDA_SHAPE::GetShape(), EDA_SHAPE::IsClosed(), BOARD_ITEM::IsOnCopperLayer(), PCB_SHAPE_T, and EDA_ITEM::Type().
Referenced by expandConnection(), and selectAllConnectedShapes().
|
inline |
Definition at line 81 of file pcb_selection_tool.h.
References m_isFootprintEditor.
|
inherited |
Definition at line 31 of file tool_base.cpp.
References TOOL_MANAGER::IsToolActive(), TOOL_BASE::m_toolId, and TOOL_BASE::m_toolMgr.
Referenced by EDIT_TOOL::Drag(), ROUTER_TOOL::handleLayerSwitch(), EDIT_TOOL::invokeInlineRouter(), Main(), BOARD_EDITOR_CONTROL::TrackWidthDec(), and BOARD_EDITOR_CONTROL::TrackWidthInc().
|
private |
Definition at line 2588 of file pcb_selection_tool.cpp.
References PCB_SELECTION_FILTER_OPTIONS::dimensions, empty(), PCB_SELECTION_FILTER_OPTIONS::footprints, PCB_BASE_FRAME::GetBoard(), ZONE::GetIsRuleArea(), BOARD_ITEM::GetParent(), BOARD_ITEM::GetParentFootprint(), PCB_SELECTION_FILTER_OPTIONS::graphics, BOARD_ITEM::IsLocked(), PCB_SELECTION_FILTER_OPTIONS::keepouts, PCB_SELECTION_FILTER_OPTIONS::lockedItems, m_filter, m_frame, m_isFootprintEditor, BOARD::m_SolderMaskBridges, PCB_SELECTION_FILTER_OPTIONS::otherItems, PCB_SELECTION_FILTER_OPTIONS::pads, PCB_ARC_T, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_FIELD_T, PCB_FOOTPRINT_T, PCB_GENERATOR_T, PCB_PAD_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_TABLE_T, PCB_TABLECELL_T, PCB_TARGET_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, PCB_SELECTION_FILTER_OPTIONS::text, PCB_SELECTION_FILTER_OPTIONS::tracks, EDA_ITEM::Type(), PCB_SELECTION_FILTER_OPTIONS::vias, and PCB_SELECTION_FILTER_OPTIONS::zones.
Referenced by FilterCollectedItems(), SelectAll(), and SelectAllItemsOnNet().
int PCB_SELECTION_TOOL::Main | ( | const TOOL_EVENT & | aEvent | ) |
The main loop.
Definition at line 284 of file pcb_selection_tool.cpp.
References board(), BUT_LEFT, BUT_MIDDLE, BUT_RIGHT, SELECTION::Clear(), BOARD_INSPECTION_TOOL::ClearHighlight(), ClearSelection(), GENERAL_COLLECTOR::Collect(), SELECTION::CountType(), delta, PCB_ACTIONS::drag45Degree, PCB_ACTIONS::dragFreeAngle, SELECTION::Empty(), EnterGroup(), ExitGroup(), PCB_BASE_FRAME::FocusOnItem(), EDA_DRAW_PANEL_GAL::ForceRefresh(), frame(), FRAME_FOOTPRINT_VIEWER, FRAME_PCB_EDITOR, PCB_BASE_FRAME::GetCanvas(), ADVANCED_CFG::GetCfg(), getCollectorsGuide(), COLLECTOR::GetCount(), TOOLS_HOLDER::GetDragAction(), SELECTION::GetItem(), TOOL_MANAGER::GetMousePosition(), PCB_BASE_FRAME::GetPcbNewSettings(), GetSelection(), SELECTION::GetSize(), TOOL_MANAGER::GetTool(), SELECTION_TOOL::hasModifier(), PCB_POINT_EDITOR::HasPoint(), PCB_ACTIONS::highlightNet, ZONE::HitTestForCorner(), ZONE::HitTestForEdge(), ACTIONS::increment, EVENTS::InhibitSelectionEditing, IS_MOVING, IS_NEW, TOOL_BASE::IsToolActive(), EDA_BASE_FRAME::IsType(), SELECTION_TOOL::m_canceledMenu, SELECTION_TOOL::m_disambiguateTimer, ADVANCED_CFG::m_DisambiguationMenuDelay, m_enteredGroup, PCBNEW_SETTINGS::m_ESCClearsNetHighlight, m_frame, SELECTION_TOOL::m_highlight_modifier, m_isFootprintEditor, TOOL_INTERACTIVE::m_menu, m_nonModifiedCursor, SELECTION_TOOL::m_originalCursor, m_selection, TOOL_BASE::m_toolMgr, PCBNEW_SETTINGS::m_TrackDragAction, MD_ALT, MD_CTRL, MD_SHIFT, PCB_ACTIONS::move, PCB_ARC_T, PCB_GROUP_T, PCB_TABLECELL_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, TOOL_MANAGER::ProcessEvent(), PCB_ACTIONS::properties, ROUTER_TOOL::RoutingInProgress(), TOOL_MANAGER::RunAction(), selectionContains(), selectMultiple(), selectPoint(), selectTableCells(), SELECTION::SetIsHover(), SELECTION_TOOL::setModifiersState(), TA_MOUSE_WHEEL, TOOLS_HOLDER::ToolStackIsEmpty(), TOOL_MANAGER::VetoContextMenuMouseWarp(), TOOL_INTERACTIVE::Wait(), ACTIONS::zoomFitObjects, and ACTIONS::zoomFitScreen.
Referenced by setTransitions().
|
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, SELECTION_TOOL::hasModifier(), TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), and SELECTION_TOOL::selection().
Referenced by EE_SELECTION_TOOL::Init(), PL_SELECTION_TOOL::Init(), Init(), and ~PCB_SELECTION_TOOL().
void PCB_SELECTION_TOOL::OnIdle | ( | wxIdleEvent & | aEvent | ) |
Definition at line 263 of file pcb_selection_tool.cpp.
References PCB_BASE_FRAME::GetCanvas(), SELECTION_TOOL::m_additive, SELECTION_TOOL::m_exclusive_or, m_frame, SELECTION_TOOL::m_multiple, m_nonModifiedCursor, SELECTION_TOOL::m_subtractive, EDA_DRAW_PANEL_GAL::SetCurrentCursor(), SELECTION_TOOL::setModifiersState(), and TOOLS_HOLDER::ToolStackIsEmpty().
Referenced by PCB_BASE_EDIT_FRAME::PCB_BASE_EDIT_FRAME().
|
private |
Definition at line 3344 of file pcb_selection_tool.cpp.
References color, PCB_BASE_FRAME::GetActiveLayer(), PCB_BASE_FRAME::GetBoard(), ADVANCED_CFG::GetCfg(), KIGFX::RENDER_SETTINGS::GetColor(), COLLECTOR::GetCount(), ZONE::GetDoNotAllowCopperPour(), BOARD::GetEnabledLayers(), ZONE::GetIsRuleArea(), BOARD_ITEM::GetLayerSet(), KIGFX::VIEW::GetPainter(), BOARD_ITEM::GetParent(), KIGFX::PAINTER::GetSettings(), TOOL_BASE::getView(), BOARD::GetVisibleLayers(), m_frame, LAYER_OPACITY_ITEM::m_Item, LAYER_OPACITY_ITEM::m_Layer, LAYER_OPACITY_ITEM::m_Opacity, ADVANCED_CFG::m_PcbSelectionVisibilityRatio, PCB_FOOTPRINT_T, PCB_ZONE_T, COLLECTOR::Remove(), LSET::Seq(), LSET::SeqStackupTop2Bottom(), and EDA_ITEM::Type().
Referenced by GuessSelectionCandidates().
void PCB_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 2738 of file pcb_selection_tool.cpp.
References GENERAL_COLLECTOR::AllBoardItems, board(), KIGFX::VIEW_GROUP::Clear(), SELECTION::Clear(), EDA_ITEM::ClearFlags(), ENTERED, GENERAL_COLLECTOR::FootprintItems, EDA_ITEM::GetParent(), highlight(), EDA_ITEM::IsSelected(), m_enteredGroup, m_enteredGroupOverlay, m_isFootprintEditor, m_selection, PCB_GROUP_T, SELECTED, EDA_ITEM::SetFlags(), EDA_ITEM::Type(), and BOARD::Visit().
Referenced by PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), and BOARD_COMMIT::Revert().
|
inherited |
Definition at line 163 of file selection_tool.cpp.
References TOOL_EVENT::Parameter(), SELECTION_TOOL::RemoveItemFromSel(), SELECTION_TOOL::selection(), and SELECTION::SetIsHover().
Referenced by PL_EDIT_TOOL::DoDelete(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), EDIT_TOOL::Properties(), BOARD_COMMIT::Push(), SCH_COMMIT::pushSchEdit(), SELECTION_TOOL::RemoveItemFromSel(), SELECTION_TOOL::ReselectItem(), SCH_EDIT_FRAME::SchematicCleanUp(), EE_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), setTransitions(), and DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow().
|
inherited |
Definition at line 171 of file selection_tool.cpp.
References TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), SELECTION_TOOL::unselect(), and EVENTS::UnselectedEvent.
|
inherited |
Definition at line 184 of file selection_tool.cpp.
References TOOL_EVENT::Parameter(), SELECTION_TOOL::RemoveItemsFromSel(), SELECTION_TOOL::selection(), and SELECTION::SetIsHover().
Referenced by SCH_MOVE_TOOL::doMoveSelection(), PCB_EDIT_FRAME::RebuildAndRefresh(), SELECTION_TOOL::RemoveItemsFromSel(), EE_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), and setTransitions().
|
inherited |
Definition at line 192 of file selection_tool.cpp.
References TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), SELECTION_TOOL::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(), SELECTION_TOOL::RemoveItemsFromSel(), and SELECTION_TOOL::selection().
PCB_SELECTION & PCB_SELECTION_TOOL::RequestSelection | ( | CLIENT_SELECTION_FILTER | aClientFilter, |
bool | aConfirmLockedItems = false |
||
) |
Return the current selection, filtered according to aClientFilter.
If the set is empty, performs the legacy-style hover selection.
aClientFilter | A callback to allow tool- or action-specific filtering. |
aConfirmLockedItems | [optional] Signals that the user shall be asked if they want to drop locked items from the selection or override the locks. Select a single item under cursor event handler. |
Definition at line 653 of file pcb_selection_tool.cpp.
References COLLECTOR::Append(), SELECTION::ClearReferencePoint(), ClearSelection(), SELECTION::Empty(), EDA_DRAW_PANEL_GAL::ForceRefresh(), frame(), PCB_BASE_FRAME::GetCanvas(), getCollectorsGuide(), PCB_BASE_FRAME::GetPcbNewSettings(), highlight(), BOARD_ITEM::IsLocked(), m_frame, PCBNEW_SETTINGS::m_LockingOptions, m_selection, PCBNEW_SETTINGS::LOCKING_OPTIONS::m_sessionSkipPrompts, TOOL_BASE::m_toolMgr, TOOL_MANAGER::RunAction(), BOARD_ITEM::RunOnDescendants(), SELECTED, PCB_ACTIONS::selectionCursor, GENERAL_COLLECTOR::SetGuide(), SELECTION::SetIsHover(), DIALOG_LOCKED_ITEMS_QUERY::ShowModal(), unhighlight(), and unselect().
Referenced by BOARD_EDITOR_CONTROL::AssignNetclass(), EDIT_TOOL::BooleanPolygons(), EDIT_TOOL::ChangeTrackWidth(), EDIT_TOOL::copyToClipboard(), EDIT_TOOL::copyToClipboardAsText(), ARRAY_TOOL::CreateArray(), CONVERT_TOOL::CreateLines(), CONVERT_TOOL::CreatePolys(), BOARD_INSPECTION_TOOL::DiffFootprint(), ALIGN_DISTRIBUTE_TOOL::DistributeItems(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::Drag(), EDIT_TOOL::Duplicate(), BOARD_EDITOR_CONTROL::EditFpInFpEditor(), GLOBAL_EDIT_TOOL::ExchangeFootprints(), EDIT_TOOL::FilletTracks(), EDIT_TOOL::Flip(), ALIGN_DISTRIBUTE_TOOL::GetSelections(), PCB_EDIT_TABLE_TOOL::getTableCellSelection(), GROUP_TOOL::Group(), EDIT_TOOL::HealShapes(), EDIT_TOOL::Increment(), EDIT_TOOL::JustifyText(), EDIT_TOOL::Mirror(), EDIT_TOOL::ModifyLines(), EDIT_TOOL::MoveExact(), CONVERT_TOOL::OutsetItems(), EDIT_TOOL::PackAndMoveFootprints(), GROUP_TOOL::PickNewMember(), POSITION_RELATIVE_TOOL::PositionRelative(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), EDIT_TOOL::Properties(), GENERATOR_TOOL::RegenerateSelected(), EDIT_TOOL::Remove(), GLOBAL_EDIT_TOOL::RemoveUnusedPads(), EDIT_TOOL::Rotate(), CONVERT_TOOL::SegmentToArc(), PCB_PICKER_TOOL::SelectItemInteractively(), EDIT_TOOL::SimplifyPolygons(), and EDIT_TOOL::Swap().
|
inherited |
Definition at line 129 of file selection_tool.cpp.
References SELECTION_TOOL::AddItemToSel(), TOOL_EVENT::Parameter(), SELECTION_TOOL::RemoveItemFromSel(), SELECTION_TOOL::selection(), and SELECTION::SetIsHover().
Referenced by 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 236 of file pcb_selection_tool.cpp.
References KIGFX::PCB_VIEW::Add(), ClearSelection(), ExitGroup(), FRAME_FOOTPRINT_EDITOR, KIGFX::VIEW::GetPainter(), KIGFX::PAINTER::GetSettings(), TOOL_BASE::getView(), EDA_BASE_FRAME::IsType(), m_enteredGroup, m_enteredGroupOverlay, m_frame, m_isFootprintEditor, m_selection, TOOL_BASE::MODEL_RELOAD, TOOL_BASE::REDRAW, KIGFX::PCB_VIEW::Remove(), KIGFX::RENDER_SETTINGS::SetHighlight(), and view().
|
privateinherited |
Clear the current transition map and restores the default one created by setTransitions().
Definition at line 76 of file tool_interactive.cpp.
References TOOL_MANAGER::ClearTransitions(), TOOL_BASE::m_toolMgr, and TOOL_INTERACTIVE::setTransitions().
|
inherited |
Call a function using the main stack.
aFunc | is the function to be calls. |
Definition at line 104 of file tool_interactive.cpp.
References TOOL_BASE::m_toolMgr, and TOOL_MANAGER::RunMainStack().
Referenced by DRAWING_TOOL::PlaceText().
|
overridevirtual |
Take necessary action mark an item as selected.
aItem | The item to be selected. |
Implements SELECTION_TOOL.
Definition at line 3079 of file pcb_selection_tool.cpp.
References SELECTION::Contains(), ExitGroup(), EDA_ITEM::GetParent(), highlight(), EDA_ITEM::IsSelected(), m_enteredGroup, m_isFootprintEditor, m_selection, PCB_PAD_T, SELECTED, EDA_ITEM::Type(), and PCB_GROUP::WithinScope().
Referenced by doSyncSelection(), EnterGroup(), ExitGroup(), filterSelection(), FindItem(), grabUnconnected(), GROUP_TOOL::Group(), SelectAll(), selectAllConnectedShapes(), selectAllConnectedTracks(), SelectAllItemsOnNet(), selectAllItemsOnSheet(), SelectColumns(), selectConnections(), selectMultiple(), selectNet(), selectPoint(), SelectRows(), SelectTable(), selectTableCells(), selectUnconnected(), and unrouteSelected().
bool PCB_SELECTION_TOOL::Selectable | ( | const BOARD_ITEM * | aItem, |
bool | checkVisibilityOnly = false |
||
) | const |
Definition at line 2785 of file pcb_selection_tool.cpp.
References LSET::AllLayersMask(), LSET::BackMask(), board(), frame(), LSET::FrontMask(), PCB_TABLECELL::GetColSpan(), PCB_BASE_FRAME::GetDisplayOptions(), KIGFX::RENDER_SETTINGS::GetHighContrast(), KIGFX::RENDER_SETTINGS::GetHighContrastLayers(), BOARD_ITEM::GetLayer(), ZONE::GetLayerSet(), KIGFX::VIEW::GetPainter(), BOARD_ITEM::GetParentFootprint(), BOARD_ITEM::GetParentGroup(), PCB_TABLECELL::GetRowSpan(), KIGFX::PAINTER::GetSettings(), FOOTPRINT::GetSide(), TOOL_BASE::getView(), BOARD::GetVisibleLayers(), FOOTPRINT::GraphicalItems(), group, BOARD::IsElementVisible(), FOOTPRINT::IsFlipped(), KIGFX::VIEW::IsLayerVisible(), BOARD::IsLayerVisible(), PCB_FIELD::IsReference(), ZONE::IsTeardropArea(), PCB_FIELD::IsValue(), KIGFX::VIEW::IsVisible(), KI_FALLTHROUGH, LAYER_DRAW_BITMAPS, LAYER_FP_REFERENCES, LAYER_FP_TEXT, LAYER_FP_VALUES, LAYER_TRACKS, LAYER_VIAS, LAYER_ZONES, BOARD::LegacyTeardrops(), PCB_DISPLAY_OPTIONS::m_FilledShapeOpacity, PCB_DISPLAY_OPTIONS::m_ImageOpacity, m_isFootprintEditor, PCB_DISPLAY_OPTIONS::m_PadOpacity, SELECTION_TOOL::m_skip_heuristics, PCB_DISPLAY_OPTIONS::m_TrackOpacity, PCB_DISPLAY_OPTIONS::m_ViaOpacity, PCB_DISPLAY_OPTIONS::m_ZoneOpacity, NOT_USED, pad, FOOTPRINT::Pads(), PCB_ARC_T, PCB_DIM_ALIGNED_T, PCB_DIM_CENTER_T, PCB_DIM_LEADER_T, PCB_DIM_ORTHOGONAL_T, PCB_DIM_RADIAL_T, PCB_FIELD_T, PCB_FOOTPRINT_T, PCB_GENERATOR_T, PCB_GROUP_T, PCB_NETINFO_T, PCB_PAD_T, PCB_REFERENCE_IMAGE_T, PCB_SHAPE_T, PCB_TABLE_T, PCB_TABLECELL_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, LSET::PhysicalLayersMask(), Selectable(), LSET::Seq(), BASE_SET::set(), text, ToLAYER_ID(), EDA_ITEM::Type(), TYPE_NOT_INIT, UNDEFINED_LAYER, via, view(), and FOOTPRINT::Zones().
Referenced by PCB_CONTROL::InteractiveDelete(), Selectable(), SelectAll(), selectMultiple(), selectPoint(), and UnselectAll().
int PCB_SELECTION_TOOL::SelectAll | ( | const TOOL_EVENT & | aEvent | ) |
Unselect all items on the board.
Definition at line 1278 of file pcb_selection_tool.cpp.
References COLLECTOR::Append(), FilterCollectorForHierarchy(), EDA_DRAW_PANEL_GAL::ForceRefresh(), PCB_BASE_FRAME::GetCanvas(), TOOL_BASE::getView(), itemPassesFilter(), m_frame, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), KIGFX::VIEW::Query(), select(), Selectable(), EVENTS::SelectedEvent, and BOX2< Vec >::SetMaximum().
Referenced by setTransitions().
|
private |
Select all non-closed shapes that are graphically connected to the given start items.
aStartItems | is a list of one or more non-closed shapes |
Definition at line 1791 of file pcb_selection_tool.cpp.
References board(), GENERAL_COLLECTOR::Collect(), getCollectorsGuide(), EDA_SHAPE::GetEnd(), PCB_SHAPE::GetLayerSet(), EDA_SHAPE::GetStart(), EDA_ITEM::HasFlag(), isExpandableGraphicShape(), PCB_SHAPE_T, select(), EDA_ITEM::SetFlags(), GENERAL_COLLECTORS_GUIDE::SetLayerVisibleBits(), and SKIP_STRUCT.
Referenced by expandConnection().
|
private |
Select connected tracks and vias.
aStopCondition | Indicates where to stop selecting more items. |
Definition at line 1479 of file pcb_selection_tool.cpp.
References LSET::AllCuMask(), board(), LSET::Contains(), EDA_DRAW_PANEL_GAL::ForceRefresh(), PCB_BASE_FRAME::GetCanvas(), PCB_SHAPE::GetConnectionPoints(), BOARD::GetConnectivity(), PCB_TRACK::GetEnd(), PCB_TRACK::GetLayerSet(), SELECTION::GetSize(), PCB_TRACK::GetStart(), m_frame, m_selection, PROF_TIMER::msecs(), pad, PCB_ARC_T, PCB_PAD_T, PCB_SHAPE_T, PCB_TRACE_T, PCB_VIA_T, select(), SELECTION::Size(), SKIP_STRUCT, PROF_TIMER::Start(), STOP_AT_JUNCTION, STOP_AT_PAD, and via.
Referenced by expandConnection(), selectConnections(), and unrouteSelected().
void PCB_SELECTION_TOOL::SelectAllItemsOnNet | ( | int | aNetCode, |
bool | aSelect = true |
||
) |
Select all items with the given net code.
aNetCode | is the target net to select |
aSelect | is true to add the items to the selection, false to remove them (deselect) |
Definition at line 1956 of file pcb_selection_tool.cpp.
References board(), BOARD::GetConnectivity(), itemPassesFilter(), select(), and unselect().
Referenced by BOARD_EDITOR_CONTROL::AssignNetclass(), FindItem(), and selectNet().
|
private |
Select all items with the given sheet timestamp/UUID name (the sheet path).
The path of the root sheet is "/". Select all footprints belonging to same sheet, from Eeschema using cross-probing.
Definition at line 2015 of file pcb_selection_tool.cpp.
References board(), select(), and selectConnections().
Referenced by selectSameSheet(), and selectSheetContents().
int PCB_SELECTION_TOOL::SelectColumns | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 3981 of file pcb_selection_tool.cpp.
References EDA_ITEM::IsSelected(), m_selection, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), select(), and EVENTS::SelectedEvent.
Referenced by setTransitions().
|
private |
Definition at line 2044 of file pcb_selection_tool.cpp.
References board(), BOARD::GetConnectivity(), pad, PCB_FOOTPRINT_T, PCB_PAD_T, select(), selectAllConnectedTracks(), and STOP_AT_PAD.
Referenced by doSyncSelection(), and selectAllItemsOnSheet().
|
private |
Select an item under the cursor unless there is something already selected.
aForceSelect | [optional] Forces an item to be selected even if there is already a selection. |
aClientFilter | A callback to allow tool- or action-specific filtering. |
Definition at line 929 of file pcb_selection_tool.cpp.
References ClearSelection(), SELECTION::Empty(), TOOL_BASE::getViewControls(), m_selection, and selectPoint().
Referenced by CursorSelection(), expandConnection(), and selectNet().
|
inlineoverrideprotectedvirtual |
Return a reference to the selection.
Implements SELECTION_TOOL.
Definition at line 269 of file pcb_selection_tool.h.
References m_selection.
Referenced by filterSelection(), and selectNet().
|
private |
Definition at line 3179 of file pcb_selection_tool.cpp.
References BOX2< Vec >::Contains(), TOOL_BASE::getView(), group, EDA_ITEM::HitTest(), 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 SELECTION_TOOL::doSelectionMenu(), COLLECTOR::m_MenuCancelled, and TOOL_EVENT::Parameter().
Referenced by EE_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), and setTransitions().
|
private |
Handle drawing a selection box that allows one to select many items at the same time.
Definition at line 1060 of file pcb_selection_tool.cpp.
References KIGFX::PCB_VIEW::Add(), allowedActions, COLLECTOR::Append(), board(), BUT_LEFT, SELECTION::ClearReferencePoint(), ClearSelection(), BOX2< Vec >::Contains(), FilterCollectedItems(), FilterCollectorForHierarchy(), PCB_BASE_FRAME::GetCanvas(), COLLECTOR::GetCount(), KIGFX::PREVIEW::SELECTION_AREA::GetEnd(), KIGFX::PREVIEW::SELECTION_AREA::GetOrigin(), SELECTION::GetSize(), TOOL_BASE::getView(), TOOL_BASE::getViewControls(), group, EDA_ITEM::HitTest(), KIGFX::VIEW::IsMirroredX(), EDA_ITEM::IsSelected(), SELECTION_TOOL::m_drag_additive, SELECTION_TOOL::m_drag_subtractive, m_enteredGroup, SELECTION_TOOL::m_exclusive_or, m_frame, m_isFootprintEditor, SELECTION_TOOL::m_multiple, m_selection, SELECTION_TOOL::m_subtractive, TOOL_BASE::m_toolMgr, BOX2< Vec >::Normalize(), PCB_PAD_T, TOOL_MANAGER::ProcessEvent(), KIGFX::VIEW::Query(), KIGFX::PCB_VIEW::Remove(), select(), Selectable(), EVENTS::SelectedEvent, KIGFX::PREVIEW::SELECTION_AREA::SetAdditive(), KIGFX::VIEW_CONTROLS::SetAutoPan(), EDA_DRAW_PANEL_GAL::SetCurrentCursor(), KIGFX::PREVIEW::SELECTION_AREA::SetEnd(), KIGFX::PREVIEW::SELECTION_AREA::SetExclusiveOr(), SELECTION::SetIsHover(), KIGFX::PREVIEW::SELECTION_AREA::SetOrigin(), KIGFX::PREVIEW::SELECTION_AREA::SetSubtractive(), KIGFX::VIEW::SetVisible(), EDA_ITEM::Type(), EVENTS::UninhibitSelectionEditing, unselect(), EVENTS::UnselectedEvent, KIGFX::PCB_VIEW::Update(), view(), KIGFX::PREVIEW::SELECTION_AREA::ViewBBox(), TOOL_INTERACTIVE::Wait(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by Main().
|
private |
Select all copper connections belonging to the same net(s) as the items in the selection.
Definition at line 1971 of file pcb_selection_tool.cpp.
References SELECTION::GetItems(), BOARD_CONNECTED_ITEM::GetNetCode(), TOOL_EVENT::IsAction(), m_selection, TOOL_BASE::m_toolMgr, TOOL_EVENT::Parameter(), TOOL_MANAGER::ProcessEvent(), select(), SelectAllItemsOnNet(), selectCursor(), EVENTS::SelectedEvent, selection(), PCB_ACTIONS::selectNet, SELECTION::Size(), and EVENTS::UnselectedEvent.
Referenced by setTransitions().
|
private |
Select an item pointed by the parameter aWhere.
If there is more than one item at that place, there is a menu displayed that allows one to choose the item.
aWhere | is the place where the item should be selected. |
aOnDrag | indicates whether a drag operation is being performed. |
aSelectionCancelledFlag | allows the function to inform its caller that a selection was canceled (for instance, by clicking outside of the disambiguation menu). |
aClientFilter | a callback to allow tool- or action-specific filtering. |
Definition at line 802 of file pcb_selection_tool.cpp.
References GENERAL_COLLECTOR::AllBoardItems, board(), BUT_LEFT, SELECTION::ClearReferencePoint(), ClearSelection(), GENERAL_COLLECTOR::Collect(), BOX2< Vec >::Contains(), SELECTION_TOOL::doSelectionMenu(), ExitGroup(), FilterCollectedItems(), FilterCollectorForFootprints(), FilterCollectorForHierarchy(), GENERAL_COLLECTOR::FootprintItems, PCB_GROUP::GetBoundingBox(), getCollectorsGuide(), COLLECTOR::GetCount(), PCB_BASE_FRAME::GetDisplayOptions(), SELECTION::GetSize(), GuessSelectionCandidates(), SELECTION_TOOL::m_additive, m_enteredGroup, SELECTION_TOOL::m_exclusive_or, m_frame, m_isFootprintEditor, m_selection, SELECTION_TOOL::m_skip_heuristics, SELECTION_TOOL::m_subtractive, TOOL_BASE::m_toolMgr, PCB_DISPLAY_OPTIONS::m_ZoneDisplayMode, EVENTS::PointSelectedEvent, TOOL_MANAGER::ProcessEvent(), COLLECTOR::Remove(), select(), Selectable(), EVENTS::SelectedEvent, GENERAL_COLLECTORS_GUIDE::SetIgnoreZoneFills(), TA_MOUSE_UP, TC_ANY, unselect(), EVENTS::UnselectedEvent, and TOOL_INTERACTIVE::Wait().
Referenced by disambiguateCursor(), Main(), and selectCursor().
int PCB_SELECTION_TOOL::SelectRows | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 4016 of file pcb_selection_tool.cpp.
References EDA_ITEM::IsSelected(), m_selection, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), select(), and EVENTS::SelectedEvent.
Referenced by setTransitions().
|
private |
Set selection to items passed by parameter and connected nets (optionally).
Zooms to fit, if enabled
Definition at line 2206 of file pcb_selection_tool.cpp.
References KIID_PATH::AsString(), ClearSelection(), SELECTION::Front(), FOOTPRINT::GetPath(), m_selection, TOOL_BASE::m_toolMgr, PCB_FOOTPRINT_T, TOOL_MANAGER::ProcessEvent(), selectAllItemsOnSheet(), EVENTS::SelectedEvent, SELECTION::Size(), and EDA_ITEM::Type().
Referenced by setTransitions().
|
private |
Select all footprints belonging to same hierarchical sheet as the selected footprint (same sheet path).
Definition at line 2190 of file pcb_selection_tool.cpp.
References ClearSelection(), m_selection, TOOL_BASE::m_toolMgr, TOOL_EVENT::Parameter(), TOOL_MANAGER::ProcessEvent(), selectAllItemsOnSheet(), EVENTS::SelectedEvent, SELECTION::Size(), and zoomFitSelection().
Referenced by setTransitions().
int PCB_SELECTION_TOOL::SelectTable | ( | const TOOL_EVENT & | aEvent | ) |
Clear current selection event handler.
Definition at line 4051 of file pcb_selection_tool.cpp.
References ClearSelection(), m_selection, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), select(), and EVENTS::SelectedEvent.
Referenced by setTransitions().
|
private |
Definition at line 954 of file pcb_selection_tool.cpp.
References allowedActions, BUT_LEFT, CANDIDATE, SELECTION::ClearReferencePoint(), PCB_TABLE::GetCells(), TOOL_BASE::getViewControls(), SELECTION_TOOL::m_additive, SELECTION_TOOL::m_exclusive_or, SELECTION_TOOL::m_multiple, m_selection, SELECTION_TOOL::m_subtractive, TOOL_BASE::m_toolMgr, BOX2< Vec >::Normalize(), TOOL_MANAGER::ProcessEvent(), select(), EVENTS::SelectedEvent, KIGFX::VIEW_CONTROLS::SetAutoPan(), SELECTION::SetIsHover(), unselect(), EVENTS::UnselectedEvent, and TOOL_INTERACTIVE::Wait().
Referenced by Main().
|
private |
Select nearest unconnected footprints on same net as selected items.
Definition at line 1836 of file pcb_selection_tool.cpp.
References board(), BOARD::GetConnectivity(), SELECTION::GetItems(), m_selection, pad, PCB_FOOTPRINT_T, PCB_PAD_T, select(), and EDA_ITEM::Type().
Referenced by setTransitions().
|
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 93 of file tool_interactive.cpp.
References CMENU_OFF, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ScheduleContextMenu(), and ACTION_MENU::SetTool().
Referenced by SELECTION_TOOL::doSelectionMenu(), DRAWING_TOOL::DrawVia(), TOOL_MENU::ShowContextMenu(), and SCH_LINE_WIRE_BUS_TOOL::UnfoldBus().
|
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 SELECTION_TOOL::ctrlClickHighlights(), SELECTION_TOOL::m_additive, SELECTION_TOOL::m_drag_additive, SELECTION_TOOL::m_drag_subtractive, SELECTION_TOOL::m_exclusive_or, SELECTION_TOOL::m_highlight_modifier, SELECTION_TOOL::m_skip_heuristics, and SELECTION_TOOL::m_subtractive.
Referenced by EE_SELECTION_TOOL::disambiguateCursor(), PL_SELECTION_TOOL::disambiguateCursor(), disambiguateCursor(), EE_SELECTION_TOOL::Main(), GERBVIEW_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), Main(), EE_SELECTION_TOOL::OnIdle(), and OnIdle().
|
overridevirtual |
Zoom the screen to center and fit the current selection.
Implements TOOL_INTERACTIVE.
Definition at line 4080 of file pcb_selection_tool.cpp.
References SELECTION_TOOL::AddItemsToSel(), SELECTION_TOOL::AddItemToSel(), ClearSelection(), CursorSelection(), PCB_ACTIONS::deselectNet, disambiguateCursor(), EVENTS::DisambiguatePoint, expandConnection(), PCB_ACTIONS::filterSelection, filterSelection(), TOOL_INTERACTIVE::Go(), PCB_ACTIONS::grabUnconnected, grabUnconnected(), Main(), SELECTION_TOOL::RemoveItemFromSel(), SELECTION_TOOL::RemoveItemsFromSel(), SELECTION_TOOL::ReselectItem(), PCB_ACTIONS::reselectItem, ACTIONS::selectAll, SelectAll(), ACTIONS::selectColumns, SelectColumns(), PCB_ACTIONS::selectConnection, EVENTS::SelectedItemsModified, EVENTS::SelectedItemsMoved, PCB_ACTIONS::selectionActivate, PCB_ACTIONS::selectionClear, PCB_ACTIONS::selectionCursor, SELECTION_TOOL::SelectionMenu(), PCB_ACTIONS::selectionMenu, PCB_ACTIONS::selectItem, PCB_ACTIONS::selectItems, PCB_ACTIONS::selectNet, selectNet(), PCB_ACTIONS::selectOnSheetFromEeschema, ACTIONS::selectRows, SelectRows(), PCB_ACTIONS::selectSameSheet, selectSameSheet(), selectSheetContents(), ACTIONS::selectTable, SelectTable(), PCB_ACTIONS::selectUnconnected, selectUnconnected(), PCB_ACTIONS::syncSelection, syncSelection(), PCB_ACTIONS::syncSelectionWithNets, syncSelectionWithNets(), PCB_ACTIONS::unrouteSelected, unrouteSelected(), ACTIONS::unselectAll, UnselectAll(), PCB_ACTIONS::unselectItem, PCB_ACTIONS::unselectItems, ACTIONS::updateMenu, SELECTION_TOOL::UpdateMenu(), and updateSelection().
|
private |
Definition at line 2135 of file pcb_selection_tool.cpp.
References doSyncSelection(), and TOOL_EVENT::Parameter().
Referenced by setTransitions().
|
private |
Definition at line 2146 of file pcb_selection_tool.cpp.
References doSyncSelection(), and TOOL_EVENT::Parameter().
Referenced by setTransitions().
|
inherited |
Definition at line 226 of file selection_tool.cpp.
References BRIGHTENED, and SELECTION_TOOL::unhighlight().
Referenced by SCH_EDIT_FRAME::DisplayCurrentSheet(), SCH_DRAWING_TOOLS::doSyncSheetsPins(), SCH_EDIT_TOOL::InteractiveDelete(), SYMBOL_EDITOR_EDIT_TOOL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), PCB_CONTROL::InteractiveDelete(), SCH_EDITOR_CONTROL::SimProbe(), SCH_EDITOR_CONTROL::SimTune(), and SCH_FIND_REPLACE_TOOL::UpdateFind().
|
overrideprivatevirtual |
Unhighlight the item visually.
aItem | The item to be highlighted. |
aHighlightMode | Either SELECTED or BRIGHTENED |
aGroup | [optional] A group to remove the item from. |
Implements SELECTION_TOOL.
Definition at line 3143 of file pcb_selection_tool.cpp.
References BRIGHTENED, TOOL_BASE::getView(), KIGFX::VIEW::MarkTargetDirty(), SELECTION::Remove(), KIGFX::REPAINT, KIGFX::TARGET_OVERLAY, unhighlightInternal(), KIGFX::PCB_VIEW::Update(), and view().
Referenced by ClearSelection(), RequestSelection(), and unselect().
|
private |
Definition at line 3157 of file pcb_selection_tool.cpp.
References BRIGHTENED, EDA_ITEM::ClearBrightened(), EDA_ITEM::ClearSelected(), KIGFX::VIEW::Hide(), KIGFX::VIEW_ITEM::IsBOARD_ITEM(), BOARD_ITEM::RunOnDescendants(), SELECTED, unhighlightInternal(), KIGFX::PCB_VIEW::Update(), and view().
Referenced by unhighlight(), and unhighlightInternal().
|
private |
Unroute the selected board connected items.
Definition at line 1357 of file pcb_selection_tool.cpp.
References BOARD_CONNECTED_ITEM::ClassOf(), ClearSelection(), ACTIONS::doDelete, SELECTION::GetItems(), m_selection, TOOL_BASE::m_toolMgr, pad, PCB_FOOTPRINT_T, PCB_PAD_T, TOOL_MANAGER::RunAction(), select(), selectAllConnectedTracks(), and STOP_AT_PAD.
Referenced by setTransitions().
|
overrideprivatevirtual |
Take necessary action mark an item as unselected.
aItem | is an item to be unselected. |
Implements SELECTION_TOOL.
Definition at line 3103 of file pcb_selection_tool.cpp.
References m_selection, SELECTED, and unhighlight().
Referenced by RequestSelection(), SelectAllItemsOnNet(), selectMultiple(), selectPoint(), selectTableCells(), and UnselectAll().
int PCB_SELECTION_TOOL::UnselectAll | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 1310 of file pcb_selection_tool.cpp.
References EDA_DRAW_PANEL_GAL::ForceRefresh(), PCB_BASE_FRAME::GetCanvas(), TOOL_BASE::getView(), m_frame, TOOL_BASE::m_toolMgr, TOOL_MANAGER::ProcessEvent(), 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_TOOL::selection(), and ACTION_MENU::UpdateAll().
Referenced by EE_SELECTION_TOOL::setTransitions(), GERBVIEW_SELECTION_TOOL::setTransitions(), PL_SELECTION_TOOL::setTransitions(), and setTransitions().
|
private |
Event handler to update the selection VIEW_ITEM.
Definition at line 3972 of file pcb_selection_tool.cpp.
References TOOL_BASE::getView(), m_enteredGroupOverlay, m_selection, and KIGFX::VIEW::Update().
Referenced by setTransitions().
|
inlineprotected |
Definition at line 237 of file pcb_selection_tool.h.
References TOOL_BASE::getView().
Referenced by ClearSelection(), doSyncSelection(), EnterGroup(), ExitGroup(), FilterCollectorForFootprints(), getCollectorsGuide(), highlight(), highlightInternal(), Reset(), Selectable(), selectMultiple(), unhighlight(), unhighlightInternal(), ZoomFitCrossProbeBBox(), and zoomFitSelection().
|
inherited |
Suspend execution of the tool until an event specified in aEventList arrives.
No parameters means waiting for any event.
Definition at line 70 of file tool_interactive.cpp.
References TOOL_BASE::m_toolMgr, and TOOL_MANAGER::ScheduleWait().
Referenced by SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), SELECTION_TOOL::doSelectionMenu(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::drawOneBezier(), SCH_DRAWING_TOOLS::DrawRuleArea(), SCH_DRAWING_TOOLS::DrawShape(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawVia(), DRAWING_TOOL::DrawZone(), PAD_TOOL::EnumeratePads(), SCH_DRAWING_TOOLS::ImportGraphics(), SYMBOL_EDITOR_DRAWING_TOOLS::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), ROUTER_TOOL::InlineDrag(), DRAWING_TOOL::InteractivePlaceWithPreview(), EDA_3D_CONTROLLER::Main(), CVPCB_CONTROL::Main(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Main(), EE_POINT_EDITOR::Main(), EE_SELECTION_TOOL::Main(), GERBVIEW_SELECTION_TOOL::Main(), PICKER_TOOL::Main(), ZOOM_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_POINT_EDITOR::Main(), PL_SELECTION_TOOL::Main(), PCB_PICKER_TOOL::Main(), Main(), PCB_TEST_SELECTION_TOOL::Main(), ROUTER_TOOL::MainLoop(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), PCB_POINT_EDITOR::OnSelectionChange(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), EDIT_TOOL::pickReferencePoint(), SYMBOL_EDITOR_DRAWING_TOOLS::PlaceAnchor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SCH_DRAWING_TOOLS::PlaceImage(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), selectMultiple(), selectPoint(), ZOOM_TOOL::selectRegion(), selectTableCells(), EE_SELECTION_TOOL::selectTableCells(), DRAWING_TOOL::SetAnchor(), SCH_DRAWING_TOOLS::SingleClickPlace(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), and SCH_LINE_WIRE_BUS_TOOL::UnfoldBus().
void PCB_SELECTION_TOOL::ZoomFitCrossProbeBBox | ( | const BOX2I & | bbox | ) |
Definition at line 2265 of file pcb_selection_tool.cpp.
References DEFAULT_TEXT_SIZE, PCB_BASE_FRAME::GetCanvas(), KIGFX::VIEW::GetScale(), BOX2< Vec >::GetSize(), TOOL_BASE::getView(), BOX2< Vec >::GetWidth(), BOX2< Vec >::Inflate(), KiROUND(), m_frame, EDA_IU_SCALE::mmToIU(), next(), BOX2< Vec >::Normalize(), pcbIUScale, KIGFX::VIEW::SetScale(), ToVECTOR2D(), KIGFX::VIEW::ToWorld(), view(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by doSyncSelection().
void PCB_SELECTION_TOOL::zoomFitSelection | ( | ) |
Zoom the screen to fit the bounding box for cross probing/selection sync.
Definition at line 2240 of file pcb_selection_tool.cpp.
References KIGFX::PCB_VIEW::Add(), BOX2< Vec >::Centre(), EDA_DRAW_PANEL_GAL::ForceRefresh(), PCB_SELECTION::GetBoundingBox(), PCB_BASE_FRAME::GetCanvas(), BOX2< Vec >::GetHeight(), KIGFX::VIEW::GetScale(), BOX2< Vec >::GetSize(), TOOL_BASE::getView(), BOX2< Vec >::GetWidth(), m_frame, m_selection, scale, KIGFX::VIEW::SetCenter(), KIGFX::VIEW::SetScale(), ToVECTOR2D(), KIGFX::VIEW::ToWorld(), view(), VECTOR2< T >::x, and VECTOR2< T >::y.
Referenced by selectSheetContents().
|
protectedinherited |
Definition at line 138 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::disambiguateCursor(), FilterCollectorForFootprints(), SELECTION_TOOL::hasModifier(), EE_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), EE_SELECTION_TOOL::OnIdle(), OnIdle(), GERBVIEW_SELECTION_TOOL::selectPoint(), PL_SELECTION_TOOL::SelectPoint(), selectPoint(), selectTableCells(), EE_SELECTION_TOOL::selectTableCells(), and SELECTION_TOOL::setModifiersState().
|
protectedinherited |
Definition at line 149 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::disambiguateCursor(), PL_SELECTION_TOOL::disambiguateCursor(), disambiguateCursor(), and Main().
|
protectedinherited |
Definition at line 151 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::Init(), PL_SELECTION_TOOL::Init(), Init(), EE_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), Main(), and PCB_TEST_SELECTION_TOOL::Main().
|
protectedinherited |
Definition at line 146 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), selectMultiple(), and SELECTION_TOOL::setModifiersState().
|
protectedinherited |
Definition at line 147 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), selectMultiple(), and SELECTION_TOOL::setModifiersState().
|
private |
Definition at line 465 of file pcb_selection_tool.h.
Referenced by EnterGroup(), ExitGroup(), FilterCollectorForHierarchy(), GetEnteredGroup(), Init(), Main(), RebuildSelection(), Reset(), select(), selectMultiple(), and selectPoint().
|
private |
Definition at line 467 of file pcb_selection_tool.h.
Referenced by EnterGroup(), ExitGroup(), RebuildSelection(), Reset(), updateSelection(), and ~PCB_SELECTION_TOOL().
|
protectedinherited |
Definition at line 140 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::disambiguateCursor(), FilterCollectorForFootprints(), SELECTION_TOOL::hasModifier(), EE_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), EE_SELECTION_TOOL::OnIdle(), OnIdle(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), selectMultiple(), GERBVIEW_SELECTION_TOOL::selectPoint(), PL_SELECTION_TOOL::SelectPoint(), selectPoint(), selectTableCells(), EE_SELECTION_TOOL::selectTableCells(), and SELECTION_TOOL::setModifiersState().
|
private |
Definition at line 461 of file pcb_selection_tool.h.
Referenced by GetFilter(), itemPassesFilter(), and PCB_SELECTION_TOOL().
|
private |
Definition at line 456 of file pcb_selection_tool.h.
Referenced by ctrlClickHighlights(), doSyncSelection(), expandConnection(), filterSelection(), FindItem(), GetActiveLayer(), GuessSelectionCandidates(), itemPassesFilter(), Main(), OnIdle(), pruneObscuredSelectionCandidates(), RequestSelection(), Reset(), SelectAll(), selectAllConnectedTracks(), selectMultiple(), selectPoint(), UnselectAll(), ZoomFitCrossProbeBBox(), and zoomFitSelection().
|
protectedinherited |
Definition at line 145 of file selection_tool.h.
Referenced by Main(), and SELECTION_TOOL::setModifiersState().
|
private |
Definition at line 457 of file pcb_selection_tool.h.
Referenced by ctrlClickHighlights(), FilterCollectorForFootprints(), FilterCollectorForFreePads(), FilterCollectorForHierarchy(), IsFootprintEditor(), itemPassesFilter(), Main(), RebuildSelection(), Reset(), select(), Selectable(), selectMultiple(), and selectPoint().
|
protectedinherited |
The functions below are not yet implemented - their interface may change.
Definition at line 125 of file tool_interactive.h.
Referenced by SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), PCB_TOOL_BASE::doInteractiveItemPlacement(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::drawOneBezier(), SCH_DRAWING_TOOLS::DrawRuleArea(), SCH_DRAWING_TOOLS::DrawShape(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), PAD_TOOL::EnumeratePads(), TOOL_INTERACTIVE::GetToolMenu(), SCH_DRAWING_TOOLS::ImportGraphics(), SYMBOL_EDITOR_DRAWING_TOOLS::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), EDA_3D_CONTROLLER::Init(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Init(), EE_SELECTION_TOOL::Init(), EE_TOOL_BASE< T >::Init(), SCH_DESIGN_BLOCK_CONTROL::Init(), SCH_DRAWING_TOOLS::Init(), SCH_LINE_WIRE_BUS_TOOL::Init(), SYMBOL_EDITOR_CONTROL::Init(), SYMBOL_EDITOR_DRAWING_TOOLS::Init(), GERBVIEW_SELECTION_TOOL::Init(), PICKER_TOOL::Init(), ZOOM_TOOL::Init(), PL_DRAWING_TOOLS::Init(), PL_EDIT_TOOL::Init(), PL_SELECTION_TOOL::Init(), ROUTER_TOOL::Init(), BOARD_EDITOR_CONTROL::Init(), DRAWING_TOOL::Init(), FOOTPRINT_EDITOR_CONTROL::Init(), PAD_TOOL::Init(), PCB_PICKER_TOOL::Init(), Init(), PCB_TOOL_BASE::Init(), PCB_VIEWER_TOOLS::Init(), DRAWING_TOOL::InteractivePlaceWithPreview(), EDA_3D_CONTROLLER::Main(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Main(), EE_SELECTION_TOOL::Main(), GERBVIEW_SELECTION_TOOL::Main(), PICKER_TOOL::Main(), ZOOM_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_SELECTION_TOOL::Main(), PCB_PICKER_TOOL::Main(), Main(), ROUTER_TOOL::MainLoop(), GERBVIEW_INSPECTION_TOOL::MeasureTool(), PCB_VIEWER_TOOLS::MeasureTool(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), SYMBOL_EDITOR_DRAWING_TOOLS::PlaceAnchor(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SCH_DRAWING_TOOLS::PlaceImage(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), DRAWING_TOOL::PlaceReferenceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), DRAWING_TOOL::SetAnchor(), SCH_DRAWING_TOOLS::SingleClickPlace(), TOOL_INTERACTIVE::TOOL_INTERACTIVE(), SCH_DRAWING_TOOLS::TwoClickPlace(), and SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace().
|
protectedinherited |
Definition at line 141 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::OnIdle(), OnIdle(), EE_SELECTION_TOOL::SelectAll(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), selectMultiple(), selectTableCells(), EE_SELECTION_TOOL::selectTableCells(), and EE_SELECTION_TOOL::UnselectAll().
|
private |
Definition at line 463 of file pcb_selection_tool.h.
|
protectedinherited |
Definition at line 153 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::disambiguateCursor(), PL_SELECTION_TOOL::disambiguateCursor(), disambiguateCursor(), EE_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), and Main().
|
private |
Definition at line 471 of file pcb_selection_tool.h.
Referenced by filterSelection().
|
private |
Definition at line 459 of file pcb_selection_tool.h.
Referenced by ClearSelection(), doSyncSelection(), EnterGroup(), expandConnection(), FilterCollectorForFootprints(), filterSelection(), FindItem(), GetSelection(), grabUnconnected(), Main(), RebuildSelection(), RequestSelection(), Reset(), select(), selectAllConnectedTracks(), SelectColumns(), selectCursor(), selection(), selectionContains(), selectMultiple(), selectNet(), selectPoint(), SelectRows(), selectSameSheet(), selectSheetContents(), SelectTable(), selectTableCells(), selectUnconnected(), unrouteSelected(), unselect(), updateSelection(), zoomFitSelection(), and ~PCB_SELECTION_TOOL().
|
protectedinherited |
Definition at line 142 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::disambiguateCursor(), PL_SELECTION_TOOL::disambiguateCursor(), disambiguateCursor(), EE_SELECTION_TOOL::narrowSelection(), Selectable(), PL_SELECTION_TOOL::SelectPoint(), selectPoint(), and SELECTION_TOOL::setModifiersState().
|
protectedinherited |
Definition at line 139 of file selection_tool.h.
Referenced by EE_SELECTION_TOOL::disambiguateCursor(), FilterCollectorForFootprints(), SELECTION_TOOL::hasModifier(), EE_SELECTION_TOOL::Main(), PL_SELECTION_TOOL::Main(), EE_SELECTION_TOOL::OnIdle(), OnIdle(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), selectMultiple(), GERBVIEW_SELECTION_TOOL::selectPoint(), PL_SELECTION_TOOL::SelectPoint(), selectPoint(), selectTableCells(), EE_SELECTION_TOOL::selectTableCells(), and SELECTION_TOOL::setModifiersState().
|
protectedinherited |
Unique id, assigned by a TOOL_MANAGER instance.
Definition at line 215 of file tool_base.h.
Referenced by TOOL_INTERACTIVE::Activate(), TOOL_BASE::GetId(), and TOOL_BASE::IsToolActive().
|
protectedinherited |
Definition at line 218 of file tool_base.h.
Referenced by TOOL_INTERACTIVE::Activate(), EE_POINT_EDITOR::addCorner(), SELECTION_TOOL::AddItemsToSel(), SELECTION_TOOL::AddItemToSel(), SYMBOL_EDITOR_MOVE_TOOL::AlignElements(), SCH_MOVE_TOOL::AlignToGrid(), SCH_EDITOR_CONTROL::AssignNetclass(), BOARD_EDITOR_CONTROL::AssignNetclass(), CVPCB_ASSOCIATION_TOOL::Associate(), TOOL_BASE::attachManager(), SCH_EDIT_TOOL::AutoplaceFields(), EE_SELECTION_TOOL::autostartEvent(), SCH_EDIT_TOOL::BreakWire(), BOARD_INSPECTION_TOOL::calculateSelectionRatsnest(), ROUTER_TOOL::CanInlineDrag(), SCH_EDIT_TOOL::ChangeBodyStyle(), SCH_EDITOR_CONTROL::ChangeLineMode(), SCH_EDIT_TOOL::ChangeTextType(), EDIT_TOOL::ChangeTrackWidth(), SCH_EDIT_TOOL::CleanupSheetPins(), GERBVIEW_CONTROL::ClearAllLayers(), SCH_EDITOR_CONTROL::ClearHighlight(), BOARD_INSPECTION_TOOL::ClearHighlight(), GERBVIEW_SELECTION_TOOL::clearSelection(), PL_SELECTION_TOOL::ClearSelection(), SCH_EDIT_TABLE_TOOL::clearSelection(), PCB_EDIT_TABLE_TOOL::clearSelection(), EE_SELECTION_TOOL::ClearSelection(), ClearSelection(), SCH_EDITOR_CONTROL::CopyAsText(), SYMBOL_EDITOR_EDIT_TOOL::CopyAsText(), PAD_TOOL::copyPadSettings(), EDIT_TOOL::copyToClipboard(), ARRAY_TOOL::CreateArray(), MICROWAVE_TOOL::createInductorBetween(), EE_INSPECTION_TOOL::CrossProbe(), DRC_TOOL::CrossProbe(), COMMON_TOOLS::CursorControl(), SCH_EDITOR_CONTROL::Cut(), PCB_CONTROL::CycleLayerPresets(), SCH_EDIT_TOOL::DdAppendFile(), EDIT_TOOL::DeleteItems(), BOARD_INSPECTION_TOOL::DiffFootprint(), SCH_EDITOR_CONTROL::doCopy(), BOARD_EDITOR_CONTROL::doCrossProbePcbToSch(), SCH_EDITOR_CONTROL::doCrossProbeSchToPcb(), SCH_EDIT_TOOL::DoDelete(), SYMBOL_EDITOR_EDIT_TOOL::DoDelete(), SCH_LINE_WIRE_BUS_TOOL::doDrawSegments(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), BOARD_INSPECTION_TOOL::doHideRatsnestNet(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), doSyncSelection(), SCH_DRAWING_TOOLS::doSyncSheetsPins(), SCH_LINE_WIRE_BUS_TOOL::doUnfoldBus(), COMMON_TOOLS::doZoomInOut(), COMMON_TOOLS::doZoomToPreset(), EDIT_TOOL::Drag(), DRAWING_TOOL::DrawArc(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawBezier(), DRAWING_TOOL::DrawCircle(), DRAWING_TOOL::DrawDimension(), DRAWING_TOOL::drawOneBezier(), DRAWING_TOOL::DrawRectangle(), SCH_DRAWING_TOOLS::DrawRuleArea(), SCH_LINE_WIRE_BUS_TOOL::DrawSegments(), SCH_DRAWING_TOOLS::DrawShape(), PL_DRAWING_TOOLS::DrawShape(), DRAWING_TOOL::drawShape(), SCH_DRAWING_TOOLS::DrawSheet(), SCH_DRAWING_TOOLS::DrawTable(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), BOARD_EDITOR_CONTROL::DrillOrigin(), SYMBOL_EDITOR_EDIT_TOOL::Duplicate(), EDIT_TOOL::Duplicate(), SCH_EDIT_TOOL::EditField(), SYMBOL_EDITOR_EDIT_TOOL::editFieldProperties(), SCH_EDIT_TOOL::editFieldText(), BOARD_EDITOR_CONTROL::EditFpInFpEditor(), PAD_TOOL::EditPad(), SYMBOL_EDITOR_EDIT_TOOL::editShapeProperties(), SYMBOL_EDITOR_EDIT_TOOL::editSymbolProperties(), SCH_EDIT_TABLE_TOOL::EditTable(), PCB_EDIT_TABLE_TOOL::EditTable(), SCH_EDITOR_CONTROL::EditWithSymbolEditor(), EnterGroup(), GROUP_TOOL::EnterGroup(), SCH_NAVIGATE_TOOL::EnterSheet(), PAD_TOOL::EnumeratePads(), EE_INSPECTION_TOOL::ExcludeMarker(), ExitGroup(), expandConnection(), ZONE_FILLER_TOOL::FillAllZones(), filterSelection(), FindItem(), SCH_EDITOR_CONTROL::FindSymbolAndItem(), SCH_LINE_WIRE_BUS_TOOL::finishSegments(), EDIT_TOOL::Flip(), EDIT_TOOL::GetAndPlace(), TOOL_BASE::GetManager(), TOOL_BASE::getModelInternal(), DRAWING_TOOL::getSourceZoneForAction(), PCB_EDIT_TABLE_TOOL::getTableCellSelection(), TOOL_BASE::getToolHolderInternal(), SCH_EDIT_TABLE_TOOL::getToolMgr(), PCB_EDIT_TABLE_TOOL::getToolMgr(), TOOL_BASE::getView(), TOOL_BASE::getViewControls(), TOOL_INTERACTIVE::goInternal(), grabUnconnected(), COMMON_TOOLS::GridFastCycle(), SCH_EDITOR_CONTROL::GridFeedback(), COMMON_TOOLS::GridNext(), COMMON_TOOLS::GridOrigin(), PCB_CONTROL::GridPlaceOrigin(), COMMON_TOOLS::GridPreset(), COMMON_TOOLS::GridPrev(), GROUP_TOOL::Group(), PCB_CONTROL::HighContrastModeCycle(), GERBVIEW_CONTROL::HighlightControl(), BOARD_INSPECTION_TOOL::HighlightItem(), SCH_EDITOR_CONTROL::HighlightNet(), BOARD_INSPECTION_TOOL::HighlightNet(), BOARD_INSPECTION_TOOL::highlightNet(), SCH_EDITOR_CONTROL::HighlightNetCursor(), PL_EDIT_TOOL::ImportDrawingSheetContent(), FOOTPRINT_EDITOR_CONTROL::ImportFootprint(), SCH_DRAWING_TOOLS::ImportGraphics(), SYMBOL_EDITOR_DRAWING_TOOLS::ImportGraphics(), SCH_DRAWING_TOOLS::ImportSheet(), EE_TOOL_BASE< T >::Init(), SCH_DESIGN_BLOCK_CONTROL::Init(), SCH_EDIT_TOOL::Init(), SYMBOL_EDITOR_CONTROL::Init(), SYMBOL_EDITOR_EDIT_TOOL::Init(), PL_DRAWING_TOOLS::Init(), PL_EDIT_TOOL::Init(), PL_POINT_EDITOR::Init(), ROUTER_TOOL::Init(), BOARD_EDITOR_CONTROL::Init(), BOARD_INSPECTION_TOOL::Init(), BOARD_REANNOTATE_TOOL::Init(), CONVERT_TOOL::Init(), DRAWING_TOOL::Init(), EDIT_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(), Init(), ALIGN_DISTRIBUTE_TOOL::Init(), POSITION_RELATIVE_TOOL::Init(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), BOARD_INSPECTION_TOOL::InspectClearance(), BOARD_INSPECTION_TOOL::InspectConstraints(), BOARD_INSPECTION_TOOL::InspectDRCError(), EE_INSPECTION_TOOL::InspectERCError(), SCH_EDIT_TOOL::InteractiveDelete(), SYMBOL_EDITOR_EDIT_TOOL::InteractiveDelete(), PL_EDIT_TOOL::InteractiveDelete(), PCB_CONTROL::InteractiveDelete(), DRAWING_TOOL::InteractivePlaceWithPreview(), EDIT_TOOL::invokeInlineRouter(), EDIT_TOOL::isRouterActive(), TOOL_BASE::IsToolActive(), SCH_EDIT_TOOL::JustifyText(), EDIT_TOOL::JustifyText(), GROUP_TOOL::LeaveGroup(), BOARD_INSPECTION_TOOL::LocalRatsnestTool(), EDA_3D_CONTROLLER::Main(), CVPCB_CONTROL::Main(), CVPCB_FOOTPRINT_VIEWER_SELECTION_TOOL::Main(), EE_POINT_EDITOR::Main(), EE_SELECTION_TOOL::Main(), SCH_MOVE_TOOL::Main(), SYMBOL_EDITOR_MOVE_TOOL::Main(), GERBVIEW_SELECTION_TOOL::Main(), PL_EDIT_TOOL::Main(), PL_SELECTION_TOOL::Main(), PCB_PICKER_TOOL::Main(), Main(), ROUTER_TOOL::MainLoop(), PCB_VIEWER_TOOLS::MeasureTool(), SCH_EDIT_TOOL::Mirror(), SYMBOL_EDITOR_EDIT_TOOL::Mirror(), EDIT_TOOL::Mirror(), BOARD_EDITOR_CONTROL::modifyLockSelected(), EDIT_TOOL::Move(), EDIT_TOOL::MoveExact(), SCH_EDITOR_CONTROL::NextLineMode(), SYMBOL_EDITOR_CONTROL::OnDeMorgan(), ARRAY_TOOL::onDialogClosed(), SELECTION_TOOL::onDisambiguationExpire(), COMMON_TOOLS::OnGridChanged(), PCB_POINT_EDITOR::OnSelectionChange(), SCH_EDITOR_CONTROL::Paste(), SYMBOL_EDITOR_EDIT_TOOL::Paste(), PL_EDIT_TOOL::Paste(), PAD_TOOL::pastePadProperties(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), GROUP_TOOL::PickNewMember(), EDIT_TOOL::pickReferencePoint(), SYMBOL_EDITOR_EDIT_TOOL::PinTable(), PCB_CONTROL::placeBoardItems(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SCH_DRAWING_TOOLS::PlaceImage(), DRAWING_TOOL::PlaceImportedGraphics(), PL_DRAWING_TOOLS::PlaceItem(), SCH_DRAWING_TOOLS::PlaceNextSymbolUnit(), DRAWING_TOOL::PlaceReferenceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), GERBVIEW_CONTROL::Print(), PCB_CONTROL::Print(), SCH_EDIT_TOOL::Properties(), SYMBOL_EDITOR_EDIT_TOOL::Properties(), EDIT_TOOL::Properties(), PAD_TOOL::pushPadSettings(), EDIT_TOOL::rebuildConnectivity(), ZONE_FILLER_TOOL::rebuildConnectivity(), EE_SELECTION_TOOL::RebuildSelection(), PAD_TOOL::RecombinePad(), SCH_EDITOR_CONTROL::Redo(), SYMBOL_EDITOR_EDIT_TOOL::Redo(), GENERATOR_TOOL::RegenerateSelected(), POSITION_RELATIVE_TOOL::RelativeItemSelectionMove(), EDIT_TOOL::Remove(), EE_POINT_EDITOR::removeCorner(), PCB_POINT_EDITOR::removeCorner(), GROUP_TOOL::RemoveFromGroup(), SELECTION_TOOL::RemoveItemFromSel(), SELECTION_TOOL::RemoveItemsFromSel(), FOOTPRINT_EDITOR_CONTROL::RenameFootprint(), SYMBOL_EDITOR_CONTROL::RenameSymbol(), SCH_EDIT_TOOL::RepeatDrawItem(), SYMBOL_EDITOR_DRAWING_TOOLS::RepeatDrawItem(), RequestSelection(), EE_SELECTION_TOOL::RequestSelection(), EDA_3D_CONTROLLER::Reset(), COMMON_TOOLS::Reset(), PNS::TOOL_BASE::Reset(), GENERATOR_TOOL_PNS_PROXY::Reset(), COMMON_TOOLS::ResetLocalCoords(), TOOL_INTERACTIVE::resetTransitions(), ROUTER_TOOL::restoreSelection(), SCH_EDITOR_CONTROL::Revert(), SCH_EDIT_TOOL::Rotate(), SYMBOL_EDITOR_EDIT_TOOL::Rotate(), EDIT_TOOL::Rotate(), ROUTER_TOOL::RouteSelected(), TOOL_INTERACTIVE::RunMainStack(), DRC_TOOL::RunTests(), EE_SELECTION_TOOL::Selectable(), EE_SELECTION_TOOL::SelectAll(), SelectAll(), EE_SELECTION_TOOL::SelectColumns(), SelectColumns(), EE_SELECTION_TOOL::SelectConnection(), PCB_TOOL_BASE::selection(), COMMON_TOOLS::SelectionTool(), GERBVIEW_SELECTION_TOOL::SelectItem(), PCB_PICKER_TOOL::SelectItemInteractively(), GERBVIEW_SELECTION_TOOL::SelectItems(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), selectMultiple(), selectNet(), GERBVIEW_SELECTION_TOOL::selectPoint(), PCB_TEST_SELECTION_TOOL::selectPoint(), PL_SELECTION_TOOL::SelectPoint(), selectPoint(), EE_SELECTION_TOOL::selectPoint(), PCB_PICKER_TOOL::SelectPointInteractively(), EE_SELECTION_TOOL::SelectRows(), SelectRows(), selectSameSheet(), selectSheetContents(), EE_SELECTION_TOOL::SelectTable(), SelectTable(), selectTableCells(), EE_SELECTION_TOOL::selectTableCells(), DRAWING_TOOL::SetAnchor(), SCH_EDIT_TOOL::SetAttribute(), TOOL_INTERACTIVE::SetContextMenu(), EDA_3D_CONTROLLER::SetMaterial(), DRC_TOOL::ShowDRCDialog(), BOARD_INSPECTION_TOOL::ShowFootprintLinks(), SCH_EDITOR_CONTROL::SimProbe(), SCH_EDITOR_CONTROL::SimTune(), SCH_DRAWING_TOOLS::SingleClickPlace(), PCB_CONTROL::SnapMode(), SCH_EDIT_TOOL::Swap(), SYMBOL_EDITOR_EDIT_TOOL::Swap(), EDIT_TOOL::Swap(), EE_SELECTION_TOOL::SyncSelection(), SCH_EDIT_TOOL::ToggleAttribute(), COMMON_TOOLS::ToggleCursor(), COMMON_TOOLS::ToggleCursorStyle(), EDA_3D_CONTROLLER::ToggleLayersManager(), EDA_3D_CONTROLLER::ToggleVisibility(), BOARD_EDITOR_CONTROL::TrackWidthDec(), BOARD_EDITOR_CONTROL::TrackWidthInc(), SCH_MOVE_TOOL::trimDanglingLines(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), SCH_EDITOR_CONTROL::Undo(), SYMBOL_EDITOR_EDIT_TOOL::Undo(), GROUP_TOOL::Ungroup(), unrouteSelected(), EE_SELECTION_TOOL::UnselectAll(), UnselectAll(), GERBVIEW_SELECTION_TOOL::UnselectItem(), GERBVIEW_SELECTION_TOOL::UnselectItems(), SCH_EDIT_TOOL::UnsetAttribute(), PNS::TOOL_BASE::updateEndItem(), PCB_POINT_EDITOR::updateItem(), BOARD_INSPECTION_TOOL::UpdateLocalRatsnest(), EE_INSPECTION_TOOL::UpdateMessagePanel(), GERBVIEW_CONTROL::UpdateMessagePanel(), PL_EDITOR_CONTROL::UpdateMessagePanel(), PCB_CONTROL::UpdateMessagePanel(), EDIT_TOOL::updateModificationPoint(), 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 216 of file tool_base.h.
Referenced by TOOL_BASE::GetName().
|
protectedinherited |
Definition at line 214 of file tool_base.h.
Referenced by TOOL_BASE::GetType().