KiCad PCB EDA Suite
|
Tool for pcb inspection. More...
#include <board_inspection_tool.h>
Public Types | |
enum | RESET_REASON { RUN , MODEL_RELOAD , SUPERMODEL_RELOAD , GAL_SWITCH , REDRAW , SHUTDOWN } |
Determine the reason of reset for a tool. More... | |
Public Member Functions | |
BOARD_INSPECTION_TOOL () | |
bool | Init () override |
Init() is called once upon a registration of the tool. | |
void | Reset (RESET_REASON aReason) override |
Bring the tool to a known, initial state. | |
int | ShowBoardStatistics (const TOOL_EVENT &aEvent) |
Show dialog with board statistics. | |
int | HighlightNet (const TOOL_EVENT &aEvent) |
Clear all board highlights. | |
int | ClearHighlight (const TOOL_EVENT &aEvent) |
Perform the appropriate action in response to an Eeschema cross-probe. | |
int | HighlightItem (const TOOL_EVENT &aEvent) |
Update ratsnest for selected items. | |
int | UpdateLocalRatsnest (const TOOL_EVENT &aEvent) |
Hide ratsnest for selected items. Called when there are no items selected. | |
int | HideLocalRatsnest (const TOOL_EVENT &aEvent) |
Show local ratsnest of a component. | |
int | LocalRatsnestTool (const TOOL_EVENT &aEvent) |
Hide the ratsnest for a given net. | |
int | HideNetInRatsnest (const TOOL_EVENT &aEvent) |
Show the ratsnest for a given net. | |
int | ShowNetInRatsnest (const TOOL_EVENT &aEvent) |
wxString | InspectDRCErrorMenuText (const std::shared_ptr< RC_ITEM > &aDRCItem) |
void | InspectDRCError (const std::shared_ptr< RC_ITEM > &aDRCItem) |
Show the clearance resolution for two selected items. | |
int | InspectClearance (const TOOL_EVENT &aEvent) |
int | InspectConstraints (const TOOL_EVENT &aEvent) |
int | ShowFootprintLinks (const TOOL_EVENT &aEvent) |
int | DiffFootprint (const TOOL_EVENT &aEvent) |
void | DiffFootprint (FOOTPRINT *aFootprint) |
bool | IsNetHighlightSet () const |
void | SetIsFootprintEditor (bool aEnabled) |
Function SetIsFootprintEditor() | |
bool | IsFootprintEditor () const |
void | SetIsBoardEditor (bool aEnabled) |
bool | IsBoardEditor () const |
virtual bool | Is45Limited () const |
Should the tool use its 45° mode option? | |
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 Types | |
enum | INTERACTIVE_PLACEMENT_OPTIONS { IPO_ROTATE = 0x01 , IPO_FLIP = 0x02 , IPO_SINGLE_CLICK = 0x04 , IPO_REPEAT = 0x08 } |
Options for placing items interactively. More... | |
Protected Member Functions | |
void | doInteractiveItemPlacement (const TOOL_EVENT &aTool, INTERACTIVE_PLACER_BASE *aPlacer, const wxString &aCommitMessage, int aOptions=IPO_ROTATE|IPO_FLIP|IPO_REPEAT) |
Helper function for performing a common interactive idiom: wait for a left click, place an item there (perhaps with a dialog or other user interaction), then have it move with the mouse and respond to rotate/flip, etc. | |
KIGFX::PCB_VIEW * | view () const |
KIGFX::VIEW_CONTROLS * | controls () const |
template<class T = PCB_BASE_EDIT_FRAME> | |
T * | frame () const |
BOARD * | board () const |
FOOTPRINT * | footprint () const |
PCBNEW_SETTINGS::DISPLAY_OPTIONS & | displayOptions () const |
PCB_DRAW_PANEL_GAL * | canvas () const |
const PCB_SELECTION & | selection () const |
PCB_SELECTION & | selection () |
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_isFootprintEditor |
bool | m_isBoardEditor |
std::unique_ptr< TOOL_MENU > | m_menu |
The functions below are not yet implemented - their interface may change. | |
TOOL_TYPE | m_type |
TOOL_ID | m_toolId |
Unique id, assigned by a TOOL_MANAGER instance. | |
std::string | m_toolName |
Names are expected to obey the format application.ToolName (eg. | |
TOOL_MANAGER * | m_toolMgr |
Private Member Functions | |
void | calculateSelectionRatsnest (const VECTOR2I &aDelta) |
< Recalculate dynamic ratsnest for the current selection. | |
bool | highlightNet (const VECTOR2D &aPosition, bool aUseSelection) |
Look for a BOARD_CONNECTED_ITEM in a given spot and if one is found - it enables highlight for its net. | |
void | doHideRatsnestNet (int aNetCode, bool aHide) |
Bind handlers to corresponding TOOL_ACTIONs. | |
void | setTransitions () override |
This method is meant to be overridden in order to specify handlers for events. | |
std::unique_ptr< DRC_ENGINE > | makeDRCEngine (bool *aCompileError, bool *aCourtyardError) |
wxString | getItemDescription (BOARD_ITEM *aItem) |
void | reportCompileError (REPORTER *r) |
void | reportHeader (const wxString &aTitle, BOARD_ITEM *a, REPORTER *r) |
void | reportHeader (const wxString &aTitle, BOARD_ITEM *a, BOARD_ITEM *b, REPORTER *r) |
void | reportHeader (const wxString &aTitle, BOARD_ITEM *a, BOARD_ITEM *b, PCB_LAYER_ID aLayer, REPORTER *r) |
FOOTPRINT_DIFF_WIDGET * | constructDiffPanel (wxPanel *aParentPanel) |
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_EDIT_FRAME * | m_frame |
std::set< int > | m_currentlyHighlighted |
std::set< int > | m_lastHighlighted |
CONNECTIVITY_DATA * | m_dynamicData |
Tool for pcb inspection.
Definition at line 42 of file board_inspection_tool.h.
|
protectedinherited |
Options for placing items interactively.
Definition at line 121 of file pcb_tool_base.h.
|
inherited |
Determine the reason of reset for a tool.
Definition at line 77 of file tool_base.h.
BOARD_INSPECTION_TOOL::BOARD_INSPECTION_TOOL | ( | ) |
Definition at line 51 of file board_inspection_tool.cpp.
References m_dynamicData.
|
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(), 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().
|
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().
|
inlineprotectedinherited |
Definition at line 171 of file pcb_tool_base.h.
Referenced by PCB_CONTROL::AppendBoard(), BOARD_EDITOR_CONTROL::AssignNetclass(), MULTICHANNEL_TOOL::AutogenerateRuleAreas(), AUTOPLACE_TOOL::autoplace(), calculateSelectionRatsnest(), EDIT_TOOL::ChangeTrackWidth(), ZONE_FILLER_TOOL::CheckAllZones(), ClearHighlight(), MULTICHANNEL_TOOL::copyRuleAreaContents(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), MICROWAVE_TOOL::createInductorBetween(), ZONE_CREATE_HELPER::createNewZone(), CONVERT_TOOL::CreatePolys(), ROUTER_TOOL::CustomTrackWidthDialog(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), DRAWING_TOOL::drawOneBezier(), DRAWING_TOOL::drawShape(), PAD_TOOL::EnumeratePads(), PAD_TOOL::explodePad(), BOARD_EDITOR_CONTROL::ExportNetlist(), ZONE_FILLER_TOOL::FillAllZones(), EDIT_TOOL::FilletTracks(), MULTICHANNEL_TOOL::FindExistingRuleAreas(), MULTICHANNEL_TOOL::findOtherItemsInRuleArea(), MULTICHANNEL_TOOL::findRoutedConnections(), PCB_TOOL_BASE::footprint(), GENERATOR_TOOL::GenEditAction(), GENERATOR_TOOL::GENERATOR_TOOL(), GROUP_TOOL::Group(), ROUTER_TOOL::handleLayerSwitch(), highlightNet(), MULTICHANNEL_TOOL::identifyComponentsInRuleArea(), ROUTER_TOOL::Init(), ROUTER_TOOL::InlineDrag(), PCB_CONTROL::InteractiveDelete(), DRAWING_TOOL::InteractivePlaceWithPreview(), PCB_CONTROL::LayerNext(), PCB_CONTROL::LayerPrev(), LocalRatsnestTool(), EDIT_TOOL::MoveExact(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), PAD_TOOL::OnUndoRedo(), PCB_CONTROL::Paste(), PCB_CONTROL::placeBoardItems(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PAD_TOOL::PlacePad(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), MULTICHANNEL_TOOL::pruneExistingGroups(), PCB_CONTROL::pruneItemLayers(), MULTICHANNEL_TOOL::queryComponentsInComponentClass(), MULTICHANNEL_TOOL::queryComponentsInSheet(), MULTICHANNEL_TOOL::QuerySheetsAndComponentClasses(), EDIT_TOOL::rebuildConnectivity(), ZONE_FILLER_TOOL::rebuildConnectivity(), PAD_TOOL::RecombinePad(), GENERATOR_TOOL::RegenerateAllOfType(), GENERATOR_TOOL::RegenerateItem(), GENERATOR_TOOL::RegenerateSelected(), BOARD_EDITOR_CONTROL::RepairBoard(), FOOTPRINT_EDITOR_CONTROL::RepairFootprint(), MULTICHANNEL_TOOL::RepeatLayout(), PNS::TOOL_BASE::Reset(), GENERATOR_TOOL_PNS_PROXY::Reset(), PAD_TOOL::Reset(), PCB_CONTROL::Reset(), PCB_CONTROL::TrackDisplayMode(), PCB_CONTROL::unfilledZoneCheck(), ROUTER_TOOL::UpdateMessagePanel(), ROUTER_TOOL::updateSizesAfterRouterEvent(), PCB_CONTROL::ViaDisplayMode(), PCB_CONTROL::ZoneDisplayMode(), BOARD_EDITOR_CONTROL::ZoneDuplicate(), ZONE_FILLER_TOOL::ZoneFill(), ZONE_FILLER_TOOL::ZoneFillDirty(), BOARD_EDITOR_CONTROL::ZoneMerge(), GLOBAL_EDIT_TOOL::ZonesManager(), and ZONE_FILLER_TOOL::ZoneUnfillAll().
|
private |
< Recalculate dynamic ratsnest for the current selection.
Definition at line 2024 of file board_inspection_tool.cpp.
References SELECTION::begin(), PCB_TOOL_BASE::board(), PCB_TOOL_BASE::displayOptions(), SELECTION::end(), BOARD::GetConnectivity(), PCB_SELECTION_TOOL::GetSelection(), TOOL_MANAGER::GetTool(), m_dynamicData, TOOL_BASE::m_toolMgr, CONNECTIVITY_DATA::Move(), pad, PCB_FOOTPRINT_T, PCB_GENERATOR_T, PCB_GROUP_T, BOARD_ITEM::RunOnDescendants(), PCB_TOOL_BASE::selection(), and EDA_ITEM::Type().
Referenced by UpdateLocalRatsnest().
|
protectedinherited |
Definition at line 309 of file pcb_tool_base.cpp.
References PCB_TOOL_BASE::frame().
Referenced by BOARD_EDITOR_CONTROL::AssignNetclass(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), EDIT_TOOL::DeleteItems(), EDIT_TOOL::doMoveSelection(), PAD_TOOL::enterPadEditMode(), PAD_TOOL::EnumeratePads(), PAD_TOOL::ExitPadEditMode(), ZONE_FILLER_TOOL::FillAllZones(), EDIT_TOOL::Init(), FOOTPRINT_EDITOR_CONTROL::NewFootprint(), EDIT_TOOL::pickReferencePoint(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), PCB_CONTROL::RatsnestModeCycle(), EDIT_TOOL::rebuildConnectivity(), ZONE_FILLER_TOOL::rebuildConnectivity(), ZONE_FILLER_TOOL::refresh(), POSITION_RELATIVE_TOOL::RelativeItemSelectionMove(), EDIT_TOOL::Remove(), FOOTPRINT_EDITOR_CONTROL::Save(), FOOTPRINT_EDITOR_CONTROL::SaveAs(), PCB_PICKER_TOOL::SelectItemInteractively(), PCB_PICKER_TOOL::SelectPointInteractively(), ZONE_FILLER_TOOL::singleShotRefocus(), PCB_CONTROL::ToggleRatsnest(), PCB_CONTROL::TrackDisplayMode(), PCB_CONTROL::ViaDisplayMode(), PCB_CONTROL::ZoneDisplayMode(), and ZONE_FILLER_TOOL::ZoneFillDirty().
int BOARD_INSPECTION_TOOL::ClearHighlight | ( | const TOOL_EVENT & | aEvent | ) |
Perform the appropriate action in response to an Eeschema cross-probe.
Definition at line 1885 of file board_inspection_tool.cpp.
References PCB_TOOL_BASE::board(), TOOL_MANAGER::GetModel(), KIGFX::VIEW::GetPainter(), KIGFX::PAINTER::GetSettings(), TOOL_MANAGER::GetView(), m_currentlyHighlighted, m_frame, m_lastHighlighted, TOOL_BASE::m_toolMgr, BOARD::ResetNetHighLight(), PCB_EDIT_FRAME::SendCrossProbeNetName(), KIGFX::RENDER_SETTINGS::SetHighlight(), EDA_DRAW_FRAME::SetMsgPanel(), and KIGFX::VIEW::UpdateAllLayersColor().
Referenced by PCB_SELECTION_TOOL::Main(), and setTransitions().
|
private |
Definition at line 1657 of file board_inspection_tool.cpp.
References KIWAY_HOLDER::Kiway(), and m_frame.
Referenced by DiffFootprint().
|
inlineprotectedinherited |
Definition at line 160 of file pcb_tool_base.h.
References TOOL_BASE::getViewControls().
Referenced by PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::DragArcTrack(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::DrawZone(), ROUTER_TOOL::finishInteractive(), ROUTER_TOOL::handleLayerSwitch(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), PCB_PICKER_TOOL::Main(), ROUTER_TOOL::MainLoop(), ROUTER_TOOL::performRouting(), BOARD_EDITOR_CONTROL::PlaceFootprint(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), ROUTER_TOOL::prepareInteractive(), ROUTER_TOOL::RouteSelected(), PCB_PICKER_TOOL::setControls(), PCB_POINT_EDITOR::setEditedPoint(), PNS::TOOL_BASE::updateEndItem(), and PNS::TOOL_BASE::updateStartItem().
int BOARD_INSPECTION_TOOL::DiffFootprint | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 1516 of file board_inspection_tool.cpp.
References _, DiffFootprint(), COLLECTOR::GetCount(), SELECTION::GetItem(), TOOL_MANAGER::GetTool(), m_frame, TOOL_BASE::m_toolMgr, PCB_SELECTION_TOOL::RequestSelection(), PCB_TOOL_BASE::selection(), EDA_BASE_FRAME::ShowInfoBarError(), and SELECTION::Size().
Referenced by DiffFootprint(), InspectDRCError(), and setTransitions().
void BOARD_INSPECTION_TOOL::DiffFootprint | ( | FOOTPRINT * | aFootprint | ) |
Definition at line 1571 of file board_inspection_tool.cpp.
References _, DIALOG_BOOK_REPORTER::AddBlankPage(), DIALOG_BOOK_REPORTER::AddHTMLPage(), constructDiffPanel(), DIALOG_BOOK_REPORTER::DeleteAllPages(), FOOTPRINT_DIFF_WIDGET::DisplayDiff(), EscapeHTML(), FP_LIB_TABLE::FindRow(), WX_HTML_REPORT_BOX::Flush(), FP_LIB_TABLE::FootprintLoad(), FOOTPRINT::FootprintNeedsUpdate(), BOARD_ITEM::GetBoard(), PCB_EDIT_FRAME::GetFootprintDiffDialog(), FOOTPRINT::GetFPID(), getItemDescription(), LIB_ID::GetLibItemName(), LIB_ID::GetLibNickname(), BOARD::GetProject(), LIB_TABLE::HasLibrary(), m_frame, PROJECT_PCB::PcbFootprintLibs(), project, WX_HTML_REPORT_BOX::Report(), and DIALOG_SHIM::Show().
|
protectedinherited |
Definition at line 304 of file pcb_tool_base.cpp.
References PCB_TOOL_BASE::frame().
Referenced by calculateSelectionRatsnest(), ROUTER_TOOL::InlineDrag(), LocalRatsnestTool(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), PCB_CONTROL::RatsnestModeCycle(), PCB_CONTROL::ToggleRatsnest(), PCB_CONTROL::TrackDisplayMode(), and PCB_CONTROL::ViaDisplayMode().
|
private |
Bind handlers to corresponding TOOL_ACTIONs.
Definition at line 2106 of file board_inspection_tool.cpp.
References doHideRatsnestNet(), SELECTION::Empty(), PCB_BASE_EDIT_FRAME::GetAppearancePanel(), PCB_BASE_FRAME::GetCanvas(), KIGFX::PCB_RENDER_SETTINGS::GetHiddenNets(), KIGFX::VIEW::GetPainter(), PCB_SELECTION_TOOL::GetSelection(), KIGFX::PAINTER::GetSettings(), TOOL_MANAGER::GetTool(), TOOL_MANAGER::GetView(), APPEARANCE_CONTROLS::IsTogglingNetclassRatsnestVisibility(), m_frame, TOOL_BASE::m_toolMgr, APPEARANCE_CONTROLS::OnNetVisibilityChanged(), PCB_DRAW_PANEL_GAL::RedrawRatsnest(), EDA_DRAW_PANEL_GAL::Refresh(), and PCB_TOOL_BASE::selection().
Referenced by doHideRatsnestNet(), HideNetInRatsnest(), and ShowNetInRatsnest().
|
protectedinherited |
Helper function for performing a common interactive idiom: wait for a left click, place an item there (perhaps with a dialog or other user interaction), then have it move with the mouse and respond to rotate/flip, etc.
More complex interactive processes are not supported here, you should implement a customised event loop for those.
aItemCreator | the callable that will attempt to create the item |
aCommitMessage | the message used on a successful commit |
Definition at line 43 of file pcb_tool_base.cpp.
References TOOL_INTERACTIVE::Activate(), SELECTION::Add(), KIGFX::VIEW_GROUP::Add(), KIGFX::PCB_VIEW::Add(), PCB_TOOL_BASE::board(), BUT_LEFT, BUT_RIGHT, KIGFX::VIEW_CONTROLS::CaptureCursor(), SELECTION::Clear(), EDA_ITEM::ClearFlags(), PCB_TOOL_BASE::controls(), INTERACTIVE_PLACER_BASE::CreateItem(), PCB_ACTIONS::flip, KIGFX::VIEW_CONTROLS::ForceCursorPosition(), PCB_TOOL_BASE::frame(), TOOL_EVT_UTILS::GetEventRotationAngle(), EDA_ITEM::GetFlags(), TOOL_BASE::GetManager(), TOOL_BASE::getView(), grid, PCB_TOOL_BASE::IPO_FLIP, PCB_TOOL_BASE::IPO_REPEAT, PCB_TOOL_BASE::IPO_ROTATE, PCB_TOOL_BASE::IPO_SINGLE_CLICK, TOOL_EVT_UTILS::IsRotateToolEvt(), INTERACTIVE_PLACER_BASE::m_board, INTERACTIVE_PLACER_BASE::m_frame, TOOL_INTERACTIVE::m_menu, INTERACTIVE_PLACER_BASE::m_modifiers, TOOL_BASE::m_toolMgr, INTERACTIVE_PLACER_BASE::PlaceItem(), TOOL_MANAGER::PostAction(), TOOL_MANAGER::ProcessEvent(), PCB_ACTIONS::properties, BOARD_COMMIT::Push(), ACTIONS::refreshPreview, KIGFX::PCB_VIEW::Remove(), TOOL_MANAGER::RunAction(), EVENTS::SelectedItemsModified, PCB_TOOL_BASE::selection(), PCB_ACTIONS::selectionClear, KIGFX::VIEW_CONTROLS::SetAutoPan(), EDA_ITEM::SetFlags(), KIGFX::VIEW_CONTROLS::ShowCursor(), INTERACTIVE_PLACER_BASE::SnapItem(), TC_COMMAND, PCB_ACTIONS::trackViaSizeChanged, KIGFX::PCB_VIEW::Update(), PCB_TOOL_BASE::view(), and TOOL_INTERACTIVE::Wait().
Referenced by MICROWAVE_TOOL::addMicrowaveFootprint(), DRAWING_TOOL::DrawVia(), and PAD_TOOL::PlacePad().
|
inlineprotectedinherited |
Definition at line 173 of file pcb_tool_base.h.
References PCB_TOOL_BASE::board(), and BOARD::GetFirstFootprint().
Referenced by PCB_CONTROL::AppendBoard(), MICROWAVE_TOOL::createBaseFootprint(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), MICROWAVE_TOOL::createFootprint(), MICROWAVE_TOOL::createMicrowaveInductor(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::Drag(), DRAWING_TOOL::DrawSpecificationStackup(), FOOTPRINT_EDITOR_CONTROL::DuplicateFootprint(), FOOTPRINT_EDITOR_CONTROL::EditLibraryFootprint(), GLOBAL_EDIT_TOOL::ExchangeFootprints(), BOARD_EDITOR_CONTROL::ExportNetlist(), ROUTER_TOOL::InlineDrag(), InspectClearance(), InspectDRCError(), makeDRCEngine(), PCB_CONTROL::Paste(), PCB_CONTROL::placeBoardItems(), FOOTPRINT_EDITOR_CONTROL::Properties(), PAD_TOOL::pushPadSettings(), FOOTPRINT_EDITOR_CONTROL::RenameFootprint(), BOARD_EDITOR_CONTROL::RepairBoard(), FOOTPRINT_EDITOR_CONTROL::RepairFootprint(), FOOTPRINT_EDITOR_CONTROL::Save(), FOOTPRINT_EDITOR_CONTROL::SaveAs(), DRAWING_TOOL::SetAnchor(), and FOOTPRINT_EDITOR_CONTROL::ShowDatasheet().
|
inlineprotectedinherited |
Definition at line 166 of file pcb_tool_base.h.
Referenced by PCB_POINT_EDITOR::addCorner(), MULTICHANNEL_TOOL::AutogenerateRuleAreas(), AUTOPLACE_TOOL::autoplace(), PCB_TOOL_BASE::canvas(), PCB_POINT_EDITOR::chamferCorner(), ZONE_FILLER_TOOL::CheckAllZones(), PNS::TOOL_BASE::checkSnap(), PCB_CONTROL::ContrastModeFeedback(), PAD_TOOL::copyPadSettings(), EDIT_TOOL::copyToClipboard(), FOOTPRINT_EDITOR_CONTROL::CreateFootprint(), CONVERT_TOOL::CreatePolys(), ROUTER_TOOL::CustomTrackWidthDialog(), FOOTPRINT_EDITOR_CONTROL::DeleteFootprint(), EDIT_TOOL::DeleteItems(), PCB_TOOL_BASE::displayOptions(), BOARD_EDITOR_CONTROL::doCrossProbePcbToSch(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), ROUTER_TOOL::DpDimensionsDialog(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::drawOneBezier(), DRAWING_TOOL::drawShape(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawVia(), DRAWING_TOOL::DrawZone(), BOARD_EDITOR_CONTROL::EditFpInFpEditor(), PAD_TOOL::EditPad(), PCB_EDIT_TABLE_TOOL::EditTable(), PAD_TOOL::enterPadEditMode(), PAD_TOOL::EnumeratePads(), PAD_TOOL::ExitPadEditMode(), BOARD_EDITOR_CONTROL::ExportSpecctraDSN(), ZONE_FILLER_TOOL::FillAllZones(), EDIT_TOOL::FilletTracks(), ROUTER_TOOL::finishInteractive(), EDIT_TOOL::Flip(), PCB_CONTROL::FlipPcbView(), EDIT_TOOL::GetAndPlace(), GLOBAL_EDIT_TOOL::GlobalDeletions(), ROUTER_TOOL::handleLayerSwitch(), PCB_CONTROL::HighContrastMode(), PCB_CONTROL::HighContrastModeCycle(), HighlightItem(), FOOTPRINT_EDITOR_CONTROL::ImportFootprint(), BOARD_EDITOR_CONTROL::ImportSpecctraSession(), SCRIPTING_TOOL::Init(), ROUTER_TOOL::Init(), EDIT_TOOL::Init(), PCB_PICKER_TOOL::Init(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), DRAWING_TOOL::InteractivePlaceWithPreview(), PCB_TOOL_BASE::Is45Limited(), PCB_PICKER_TOOL::Main(), ROUTER_TOOL::MainLoop(), EDIT_TOOL::MoveExact(), PCB_CONTROL::NetColorModeCycle(), PCB_POINT_EDITOR::OnSelectionChange(), ROUTER_TOOL::onViaCommand(), CONVERT_TOOL::OutsetItems(), PCB_CONTROL::Paste(), PAD_TOOL::pastePadProperties(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), GROUP_TOOL::PickNewMember(), PNS::TOOL_BASE::pickSingleItem(), BOARD_EDITOR_CONTROL::PlaceFootprint(), PAD_TOOL::PlacePad(), DRAWING_TOOL::PlaceText(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), ROUTER_TOOL::prepareInteractive(), EDIT_TOOL::Properties(), PCB_CONTROL::pruneItemLayers(), PAD_TOOL::pushPadSettings(), PCB_CONTROL::RatsnestModeCycle(), GENERATOR_TOOL::RegenerateAllOfType(), GENERATOR_TOOL::RegenerateItem(), GENERATOR_TOOL::RegenerateSelected(), POSITION_RELATIVE_TOOL::RelativeItemSelectionMove(), SCRIPTING_TOOL::reloadPlugins(), PCB_POINT_EDITOR::removeCorner(), MULTICHANNEL_TOOL::repeatLayout(), MULTICHANNEL_TOOL::RepeatLayout(), PNS::TOOL_BASE::Reset(), GENERATOR_TOOL_PNS_PROXY::Reset(), PAD_TOOL::Reset(), EDIT_TOOL::Rotate(), ROUTER_TOOL::RouteSelected(), ROUTER_TOOL::saveRouterDebugLog(), ROUTER_TOOL::SelectCopperLayerPair(), PCB_PICKER_TOOL::SelectItemInteractively(), PCB_PICKER_TOOL::SelectPointInteractively(), PCB_POINT_EDITOR::setEditedPoint(), ROUTER_TOOL::SettingsDialog(), FOOTPRINT_EDITOR_CONTROL::ShowDatasheet(), GENERATOR_TOOL::ShowGeneratorsManager(), GLOBAL_EDIT_TOOL::swapBoardItem(), GLOBAL_EDIT_TOOL::SwapLayers(), ROUTER_TOOL::switchLayerOnViaPlacement(), DRAWING_TOOL::ToggleHV45Mode(), PCB_CONTROL::ToggleRatsnest(), PCB_CONTROL::unfilledZoneCheck(), PCB_POINT_EDITOR::updateItem(), ROUTER_TOOL::UpdateMessagePanel(), EDIT_TOOL::updateModificationPoint(), BOARD_EDITOR_CONTROL::UpdateSchematicFromPCB(), PCB_CONTROL::ZoneDisplayMode(), ZONE_FILLER_TOOL::ZoneFill(), ZONE_FILLER_TOOL::ZoneFillAll(), and ZONE_FILLER_TOOL::ZoneFillDirty().
|
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().
|
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().
|
private |
Definition at line 188 of file board_inspection_tool.cpp.
References _, BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), EDA_ITEM::GetItemDescription(), NETCLASS::GetName(), BOARD_ITEM::IsConnected(), isNPTHPad(), and m_frame.
Referenced by DiffFootprint(), InspectClearance(), and reportHeader().
|
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().
|
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(), 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(), MULTICHANNEL_TOOL::copyRuleAreaContents(), 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(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), EE_SELECTION_TOOL::GetNode(), ROUTER_TOOL::getStartLayer(), PCB_CONTROL::GridPlaceOrigin(), PCB_CONTROL::GridResetOrigin(), EE_SELECTION_TOOL::GuessSelectionCandidates(), PCB_SELECTION_TOOL::GuessSelectionCandidates(), ROUTER_TOOL::handleCommonEvents(), PL_SELECTION_TOOL::highlight(), PCB_SELECTION_TOOL::highlight(), EE_SELECTION_TOOL::highlight(), GERBVIEW_CONTROL::HighlightControl(), highlightNet(), PNS::TOOL_BASE::highlightNets(), PCB_SELECTION_TOOL::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(), PCB_SELECTION_TOOL::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(), PCB_SELECTION_TOOL::Reset(), SCH_EDIT_TOOL::Rotate(), GERBVIEW_SELECTION_TOOL::select(), PCB_SELECTION_TOOL::Selectable(), EE_SELECTION_TOOL::SelectAll(), PCB_SELECTION_TOOL::SelectAll(), EE_SELECTION_TOOL::selectionContains(), PL_SELECTION_TOOL::selectionContains(), PCB_SELECTION_TOOL::selectionContains(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::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(), PCB_SELECTION_TOOL::unhighlight(), PCB_TEST_SELECTION_TOOL::unhighlight(), EE_SELECTION_TOOL::unhighlight(), GERBVIEW_SELECTION_TOOL::unselect(), EE_SELECTION_TOOL::UnselectAll(), PCB_SELECTION_TOOL::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(), PCB_SELECTION_TOOL::updateSelection(), PNS::TOOL_BASE::updateStartItem(), PCB_SELECTION_TOOL::view(), PCB_TOOL_BASE::view(), PCB_VIEWER_TOOLS::view(), PCB_TEST_SELECTION_TOOL::view(), EE_SELECTION_TOOL::ZoomFitCrossProbeBBox(), PCB_SELECTION_TOOL::ZoomFitCrossProbeBBox(), PCB_SELECTION_TOOL::zoomFitSelection(), EE_SELECTION_TOOL::~EE_SELECTION_TOOL(), GERBVIEW_SELECTION_TOOL::~GERBVIEW_SELECTION_TOOL(), and PCB_SELECTION_TOOL::~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(), PCB_SELECTION_TOOL::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(), 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(), PCB_SELECTION_TOOL::selectCursor(), EE_SELECTION_TOOL::selectMultiple(), PL_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectMultiple(), EE_SELECTION_TOOL::SelectNode(), ZOOM_TOOL::selectRegion(), PCB_SELECTION_TOOL::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(), 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(), PCB_SELECTION_TOOL::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().
int BOARD_INSPECTION_TOOL::HideLocalRatsnest | ( | const TOOL_EVENT & | aEvent | ) |
Show local ratsnest of a component.
Definition at line 2014 of file board_inspection_tool.cpp.
References m_dynamicData.
Referenced by setTransitions().
int BOARD_INSPECTION_TOOL::HideNetInRatsnest | ( | const TOOL_EVENT & | aEvent | ) |
Show the ratsnest for a given net.
Definition at line 2092 of file board_inspection_tool.cpp.
References doHideRatsnestNet(), and TOOL_EVENT::Parameter().
Referenced by setTransitions().
int BOARD_INSPECTION_TOOL::HighlightItem | ( | const TOOL_EVENT & | aEvent | ) |
Update ratsnest for selected items.
Definition at line 1671 of file board_inspection_tool.cpp.
References PCB_TOOL_BASE::frame(), m_frame, PCB_EDIT_FRAME::m_probingSchToPcb, TOOL_BASE::m_toolMgr, TOOL_EVENT::Parameter(), PCB_FOOTPRINT_T, TOOL_MANAGER::RunAction(), PCB_ACTIONS::selectionClear, PCB_ACTIONS::selectItem, EDA_ITEM::Type(), and PCB_BASE_FRAME::Update3DView().
Referenced by setTransitions().
int BOARD_INSPECTION_TOOL::HighlightNet | ( | const TOOL_EVENT & | aEvent | ) |
Clear all board highlights.
Definition at line 1843 of file board_inspection_tool.cpp.
References KIGFX::RENDER_SETTINGS::GetHighlightNetCodes(), KIGFX::VIEW::GetPainter(), KIGFX::PAINTER::GetSettings(), TOOL_MANAGER::GetView(), TOOL_BASE::getViewControls(), highlightNet(), PCB_ACTIONS::highlightNetSelection, TOOL_EVENT::IsAction(), m_currentlyHighlighted, m_lastHighlighted, TOOL_BASE::m_toolMgr, TOOL_EVENT::Parameter(), PCB_ACTIONS::toggleLastNetHighlight, PCB_ACTIONS::toggleNetHighlight, and KIGFX::VIEW::UpdateAllLayersColor().
Referenced by setTransitions().
|
private |
Look for a BOARD_CONNECTED_ITEM in a given spot and if one is found - it enables highlight for its net.
aPosition | is the point where an item is expected (world coordinates). |
aUseSelection | is true if we should use the current selection to pick the netcode |
Definition at line 1697 of file board_inspection_tool.cpp.
References LSET::AllCuMask(), PCB_TOOL_BASE::board(), GENERAL_COLLECTOR::Collect(), LSET::Contains(), filter, PCB_SELECTION_TOOL::FilterCollectedItems(), PCB_BASE_FRAME::GetCollectorsGuide(), COLLECTOR::GetCount(), PCB_SELECTION_TOOL::GetFilter(), KIGFX::RENDER_SETTINGS::GetHighContrast(), TOOL_MANAGER::GetModel(), BOARD_CONNECTED_ITEM::GetNetCode(), KIGFX::VIEW::GetPainter(), KIGFX::RENDER_SETTINGS::GetPrimaryHighContrastLayer(), PCB_SELECTION_TOOL::GetSelection(), KIGFX::PAINTER::GetSettings(), TOOL_MANAGER::GetTool(), KIGFX::VIEW::GetTopLayer(), TOOL_BASE::getView(), TOOL_MANAGER::GetView(), BOARD::HighLightON(), m_currentlyHighlighted, m_frame, TOOL_BASE::m_toolMgr, PCB_ARC_T, PCB_PAD_T, PCB_SHAPE_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, BOARD::ResetNetHighLight(), PCB_TOOL_BASE::selection(), PCB_EDIT_FRAME::SendCrossProbeItem(), KIGFX::RENDER_SETTINGS::SetHighlight(), BOARD::SetHighLightNet(), GENERAL_COLLECTORS_GUIDE::SetIgnoreZoneFills(), GENERAL_COLLECTORS_GUIDE::SetPreferredLayer(), EDA_ITEM::Type(), KIGFX::VIEW::UpdateAllLayersColor(), and PCB_TOOL_BASE::view().
Referenced by HighlightNet().
|
overridevirtual |
Init() is called once upon a registration of the tool.
Reimplemented from PCB_TOOL_BASE.
Definition at line 82 of file board_inspection_tool.cpp.
References CONDITIONAL_MENU::AddMenu(), TOOL_MENU::GetMenu(), TOOL_MANAGER::GetTool(), TOOL_INTERACTIVE::GetToolMenu(), BOARD_ITEM::IsOnCopperLayer(), TOOL_BASE::m_toolMgr, PCB_ARC_T, PCB_PAD_T, PCB_SHAPE_T, PCB_TRACE_T, PCB_VIA_T, PCB_ZONE_T, and TOOL_MENU::RegisterSubMenu().
int BOARD_INSPECTION_TOOL::InspectClearance | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 704 of file board_inspection_tool.cpp.
References _, DIALOG_BOOK_REPORTER::AddHTMLPage(), LSET::AllCuMask(), B_CrtYd, B_Cu, B_Mask, B_SilkS, CLEARANCE_CONSTRAINT, COURTYARD_CLEARANCE_CONSTRAINT, DIALOG_BOOK_REPORTER::DeleteAllPages(), DIFF_PAIR_GAP_CONSTRAINT, dummy, EDGE_CLEARANCE_CONSTRAINT, Edge_Cuts, EscapeHTML(), F_CrtYd, F_Cu, F_Mask, F_SilkS, WX_HTML_REPORT_BOX::Flush(), PCB_TOOL_BASE::footprint(), PCB_BASE_FRAME::GetActiveLayer(), PCB_BASE_FRAME::GetBoard(), FOOTPRINT::GetCourtyard(), PCB_EDIT_FRAME::GetInspectClearanceDialog(), SELECTION::GetItem(), getItemDescription(), PCB_GROUP::GetItems(), BOARD_ITEM::GetLayer(), BOARD::GetLayerName(), BOARD_ITEM::GetLayerSet(), ZONE::GetLayerSet(), ZONE::GetLocalClearance(), DRC_CONSTRAINT::GetName(), BOARD_CONNECTED_ITEM::GetNet(), BOARD_CONNECTED_ITEM::GetNetCode(), BOARD_CONNECTED_ITEM::GetNetname(), NETINFO_ITEM::GetNetname(), PCB_SELECTION_TOOL::GetSelection(), TOOL_MANAGER::GetTool(), BOARD_ITEM::HasDrilledHole(), BOARD_ITEM::HasHole(), HOLE_CLEARANCE_CONSTRAINT, HOLE_TO_HOLE_CONSTRAINT, KIGFX::VIEW_ITEM::IsBOARD_ITEM(), BOARD_ITEM::IsConnected(), IsCopperLayer(), SHAPE_POLY_SET::IsEmpty(), IsFrontLayer(), DRC_CONSTRAINT::IsNull(), BOARD_ITEM::IsOnCopperLayer(), BOARD_ITEM::IsOnLayer(), ZONE::IsOnLayer(), BOARD_ITEM::IsTented(), m_frame, TOOL_BASE::m_toolMgr, DRC_CONSTRAINT::m_Value, DRC_CONSTRAINT::m_ZoneConnection, makeDRCEngine(), Margin, DRC_ENGINE::MatchDpSuffix(), MAX_UNCOUPLED_CONSTRAINT, MINOPTMAX< T >::Min(), MIN_RESOLVED_SPOKES_CONSTRAINT, MINOPTMAX< T >::Opt(), pad, FOOTPRINT::Pads(), PCB_FOOTPRINT_T, PCB_GROUP_T, PCB_ZONE_T, PHYSICAL_CLEARANCE_CONSTRAINT, PHYSICAL_HOLE_CLEARANCE_CONSTRAINT, WX_HTML_REPORT_BOX::Report(), reportCompileError(), reportHeader(), reportMax(), reportMin(), reportOpt(), PCB_TOOL_BASE::selection(), LSET::Seq(), DIALOG_SHIM::Show(), EDA_BASE_FRAME::ShowInfoBarError(), SILK_CLEARANCE_CONSTRAINT, SELECTION::Size(), UNITS_PROVIDER::StringFromValue(), THERMAL_RELIEF_GAP_CONSTRAINT, THERMAL_SPOKE_WIDTH_CONSTRAINT, EDA_ITEM::Type(), and UNDEFINED_LAYER.
Referenced by setTransitions().
int BOARD_INSPECTION_TOOL::InspectConstraints | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 1318 of file board_inspection_tool.cpp.
References _, DIALOG_BOOK_REPORTER::AddHTMLPage(), ANNULAR_WIDTH_CONSTRAINT, DIALOG_BOOK_REPORTER::DeleteAllPages(), DISALLOW_CONSTRAINT, EVAL_RULES, WX_HTML_REPORT_BOX::Flush(), PAD::GetDrillSize(), PCB_EDIT_FRAME::GetInspectConstraintsDialog(), SELECTION::GetItem(), BOARD_ITEM::GetLayer(), PCB_SELECTION_TOOL::GetSelection(), TOOL_MANAGER::GetTool(), HOLE_SIZE_CONSTRAINT, KIGFX::VIEW_ITEM::IsBOARD_ITEM(), DRC_CONSTRAINT::m_DisallowFlags, m_frame, TOOL_BASE::m_toolMgr, makeDRCEngine(), PCB_FIELD_T, PCB_PAD_T, PCB_TEXT_T, PCB_TEXTBOX_T, PCB_TRACE_T, PCB_VIA_T, WX_HTML_REPORT_BOX::Report(), reportCompileError(), reportHeader(), reportMax(), reportMin(), reportOpt(), PCB_TOOL_BASE::selection(), DIALOG_SHIM::Show(), EDA_BASE_FRAME::ShowInfoBarError(), SELECTION::Size(), TEXT_HEIGHT_CONSTRAINT, TEXT_THICKNESS_CONSTRAINT, TRACK_WIDTH_CONSTRAINT, EDA_ITEM::Type(), UNDEFINED_LAYER, VIA_DIAMETER_CONSTRAINT, and VECTOR2< T >::x.
Referenced by setTransitions().
void BOARD_INSPECTION_TOOL::InspectDRCError | ( | const std::shared_ptr< RC_ITEM > & | aDRCItem | ) |
Show the clearance resolution for two selected items.
Definition at line 337 of file board_inspection_tool.cpp.
References _, DIALOG_BOOK_REPORTER::AddHTMLPage(), ANNULAR_WIDTH_CONSTRAINT, B_Cu, PCB_ACTIONS::cleanupTracksAndVias, CLEARANCE_CONSTRAINT, CONNECTION_WIDTH_CONSTRAINT, DIALOG_BOOK_REPORTER::DeleteAllPages(), DiffFootprint(), DRCE_ANNULAR_WIDTH, DRCE_ASSERTION_FAILURE, DRCE_CLEARANCE, DRCE_CONNECTION_WIDTH, DRCE_DANGLING_TRACK, DRCE_DANGLING_VIA, DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG, DRCE_DRILL_OUT_OF_RANGE, DRCE_DRILLED_HOLES_TOO_CLOSE, DRCE_EDGE_CLEARANCE, DRCE_HOLE_CLEARANCE, DRCE_LIB_FOOTPRINT_MISMATCH, DRCE_MICROVIA_DRILL_OUT_OF_RANGE, DRCE_TEXT_HEIGHT, DRCE_TEXT_THICKNESS, DRCE_TRACK_ANGLE, DRCE_TRACK_SEGMENT_LENGTH, DRCE_TRACK_WIDTH, DRCE_VIA_DIAMETER, EDGE_CLEARANCE_CONSTRAINT, F_Cu, WX_HTML_REPORT_BOX::Flush(), PCB_TOOL_BASE::footprint(), PCB_BASE_FRAME::GetActiveLayer(), PAD::GetAttribute(), PCB_BASE_FRAME::GetBoard(), PCB_EDIT_FRAME::GetInspectDrcErrorDialog(), BOARD::GetItem(), BOARD_ITEM::GetLayer(), BOARD_CONNECTED_ITEM::GetNetCode(), HOLE_CLEARANCE_CONSTRAINT, HOLE_SIZE_CONSTRAINT, HOLE_TO_HOLE_CONSTRAINT, m_frame, TOOL_BASE::m_toolMgr, DRC_CONSTRAINT::m_Value, makeDRCEngine(), MAX_UNCOUPLED_CONSTRAINT, MINOPTMAX< T >::Min(), pad, PCB_ARC_T, PCB_PAD_T, PCB_TRACE_T, PHYSICAL_CLEARANCE_CONSTRAINT, PHYSICAL_HOLE_CLEARANCE_CONSTRAINT, WX_HTML_REPORT_BOX::Report(), reportCompileError(), reportHeader(), reportMax(), reportMin(), TOOL_MANAGER::RunAction(), DIALOG_SHIM::Show(), UNITS_PROVIDER::StringFromValue(), TEXT_HEIGHT_CONSTRAINT, TEXT_THICKNESS_CONSTRAINT, TRACK_ANGLE_CONSTRAINT, TRACK_SEGMENT_LENGTH_CONSTRAINT, TRACK_WIDTH_CONSTRAINT, EDA_ITEM::Type(), UNDEFINED_LAYER, and VIA_DIAMETER_CONSTRAINT.
Referenced by DIALOG_DRC::OnDRCItemRClick().
wxString BOARD_INSPECTION_TOOL::InspectDRCErrorMenuText | ( | const std::shared_ptr< RC_ITEM > & | aDRCItem | ) |
Definition at line 272 of file board_inspection_tool.cpp.
References _, PCB_ACTIONS::cleanupTracksAndVias, PCB_ACTIONS::diffFootprint, DRCE_ANNULAR_WIDTH, DRCE_ASSERTION_FAILURE, DRCE_CLEARANCE, DRCE_CONNECTION_WIDTH, DRCE_DANGLING_TRACK, DRCE_DANGLING_VIA, DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG, DRCE_DRILL_OUT_OF_RANGE, DRCE_DRILLED_HOLES_TOO_CLOSE, DRCE_EDGE_CLEARANCE, DRCE_HOLE_CLEARANCE, DRCE_LIB_FOOTPRINT_MISMATCH, DRCE_MICROVIA_DRILL_OUT_OF_RANGE, DRCE_TEXT_HEIGHT, DRCE_TEXT_THICKNESS, DRCE_TRACK_ANGLE, DRCE_TRACK_SEGMENT_LENGTH, DRCE_TRACK_WIDTH, DRCE_VIA_DIAMETER, PCB_ACTIONS::inspectClearance, PCB_ACTIONS::inspectConstraints, and m_frame.
Referenced by DIALOG_DRC::OnDRCItemRClick().
|
virtualinherited |
Should the tool use its 45° mode option?
Definition at line 331 of file pcb_tool_base.cpp.
References PCB_TOOL_BASE::frame(), FRAME_PCB_EDITOR, SETTINGS_MANAGER::GetAppSettings(), PGM_BASE::GetSettingsManager(), and Pgm().
Referenced by DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::drawShape(), DRAWING_TOOL::DrawZone(), and ZONE_CREATE_HELPER::OnFirstPoint().
|
inlineinherited |
Definition at line 109 of file pcb_tool_base.h.
References PCB_TOOL_BASE::m_isBoardEditor.
|
inlineinherited |
Definition at line 106 of file pcb_tool_base.h.
References PCB_TOOL_BASE::m_isFootprintEditor.
Referenced by EDIT_TOOL::DeleteItems(), EDIT_TOOL::Flip(), EDIT_TOOL::GetAndPlace(), and PCB_GRID_HELPER::queryVisible().
|
inline |
Definition at line 98 of file board_inspection_tool.h.
References m_currentlyHighlighted.
Referenced by PCB_EDIT_FRAME::setupUIConditions().
|
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(), PCB_SELECTION_TOOL::Main(), BOARD_EDITOR_CONTROL::TrackWidthDec(), and BOARD_EDITOR_CONTROL::TrackWidthInc().
int BOARD_INSPECTION_TOOL::LocalRatsnestTool | ( | const TOOL_EVENT & | aEvent | ) |
Hide the ratsnest for a given net.
Definition at line 1902 of file board_inspection_tool.cpp.
References TOOL_INTERACTIVE::Activate(), PCB_TOOL_BASE::board(), PCB_TOOL_BASE::displayOptions(), SELECTION::Empty(), PICKER_TOOL_BASE::END_ACTIVATE, EDIT_TOOL::FootprintFilter(), BOARD::Footprints(), PCB_SELECTION_TOOL::GetSelection(), TOOL_MANAGER::GetTool(), TOOL_MANAGER::GetView(), PCBNEW_SETTINGS::DISPLAY_OPTIONS::m_ShowGlobalRatsnest, TOOL_BASE::m_toolMgr, KIGFX::VIEW::MarkTargetDirty(), pad, EDIT_TOOL::PadFilter(), ACTIONS::pickerTool, TOOL_MANAGER::RunAction(), PCB_TOOL_BASE::selection(), PCB_ACTIONS::selectionClear, PCB_ACTIONS::selectionCursor, PICKER_TOOL_BASE::SetClickHandler(), PICKER_TOOL_BASE::SetCursor(), PICKER_TOOL_BASE::SetFinalizeHandler(), and KIGFX::TARGET_OVERLAY.
Referenced by setTransitions().
|
private |
Definition at line 147 of file board_inspection_tool.cpp.
References FOOTPRINT::BuildCourtyardCaches(), PCB_TOOL_BASE::footprint(), BOARD::Footprints(), PCB_BASE_FRAME::GetBoard(), PCB_BASE_EDIT_FRAME::GetDesignRulesPath(), BOARD::GetDesignSettings(), EDA_ITEM::GetFlags(), m_frame, MALFORMED_COURTYARDS, FOOTPRINT::Zones(), and BOARD::Zones().
Referenced by InspectClearance(), InspectConstraints(), and InspectDRCError().
|
private |
Definition at line 208 of file board_inspection_tool.cpp.
References _, and REPORTER::Report().
Referenced by InspectClearance(), InspectConstraints(), and InspectDRCError().
|
private |
Definition at line 233 of file board_inspection_tool.cpp.
References _, EscapeHTML(), PCB_BASE_FRAME::GetBoard(), getItemDescription(), BOARD::GetLayerName(), m_frame, and REPORTER::Report().
|
private |
Definition at line 224 of file board_inspection_tool.cpp.
References EscapeHTML(), getItemDescription(), and REPORTER::Report().
|
private |
Definition at line 217 of file board_inspection_tool.cpp.
References EscapeHTML(), getItemDescription(), and REPORTER::Report().
Referenced by InspectClearance(), InspectConstraints(), and InspectDRCError().
|
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. |
Reimplemented from PCB_TOOL_BASE.
Definition at line 133 of file board_inspection_tool.cpp.
References m_frame.
|
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().
|
protectedinherited |
Definition at line 323 of file pcb_tool_base.cpp.
References PCB_SELECTION_TOOL::GetSelection(), TOOL_MANAGER::GetTool(), and TOOL_BASE::m_toolMgr.
|
protectedinherited |
Definition at line 315 of file pcb_tool_base.cpp.
References PCB_SELECTION_TOOL::GetSelection(), TOOL_MANAGER::GetTool(), and TOOL_BASE::m_toolMgr.
Referenced by BOARD_EDITOR_CONTROL::AssignNetclass(), AUTOPLACE_TOOL::autoplaceSelected(), calculateSelectionRatsnest(), ROUTER_TOOL::CanInlineDrag(), EDIT_TOOL::ChangeTrackWidth(), PAD_TOOL::copyPadSettings(), ARRAY_TOOL::CreateArray(), CONVERT_TOOL::CreateLines(), CONVERT_TOOL::CreatePolys(), DRC_TOOL::CrossProbe(), DiffFootprint(), BOARD_EDITOR_CONTROL::doCrossProbePcbToSch(), doHideRatsnestNet(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), EDIT_TOOL::Drag(), EDIT_TOOL::DragArcTrack(), DRAWING_TOOL::drawArc(), DRAWING_TOOL::DrawDimension(), MICROWAVE_TOOL::drawMicrowaveInductor(), DRAWING_TOOL::drawOneBezier(), DRAWING_TOOL::drawShape(), DRAWING_TOOL::DrawTable(), DRAWING_TOOL::DrawZone(), BOARD_EDITOR_CONTROL::EditFpInFpEditor(), PAD_TOOL::EditPad(), PCB_EDIT_TABLE_TOOL::EditTable(), GROUP_TOOL::EnterGroup(), PAD_TOOL::EnumeratePads(), GLOBAL_EDIT_TOOL::ExchangeFootprints(), EDIT_TOOL::FilletTracks(), DRAWING_TOOL::getSourceZoneForAction(), GROUP_TOOL::Group(), highlightNet(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), InspectClearance(), InspectConstraints(), DRAWING_TOOL::InteractivePlaceWithPreview(), PCB_CONTROL::LayerPresetFeedback(), LocalRatsnestTool(), ROUTER_TOOL::MainLoop(), EDIT_TOOL::ModifyLines(), BOARD_EDITOR_CONTROL::modifyLockSelected(), ARRAY_TOOL::onDialogClosed(), PCB_POINT_EDITOR::OnSelectionChange(), CONVERT_TOOL::OutsetItems(), EDIT_TOOL::PackAndMoveFootprints(), PAD_TOOL::pastePadProperties(), ROUTER_TOOL::performDragging(), ROUTER_TOOL::performRouting(), PCB_CONTROL::placeBoardItems(), BOARD_EDITOR_CONTROL::PlaceFootprint(), DRAWING_TOOL::PlaceImportedGraphics(), DRAWING_TOOL::PlaceText(), POSITION_RELATIVE_TOOL::PositionRelative(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), PAD_TOOL::pushPadSettings(), BOARD_REANNOTATE_TOOL::ReannotateDuplicatesInSelection(), GROUP_TOOL::RemoveFromGroup(), GLOBAL_EDIT_TOOL::RemoveUnusedPads(), MULTICHANNEL_TOOL::repeatLayout(), ROUTER_TOOL::RouteSelected(), CONVERT_TOOL::SegmentToArc(), DRAWING_TOOL::SetAnchor(), ShowFootprintLinks(), EDIT_TOOL::Swap(), BOARD_EDITOR_CONTROL::TrackWidthDec(), BOARD_EDITOR_CONTROL::TrackWidthInc(), GROUP_TOOL::Ungroup(), UpdateLocalRatsnest(), PCB_CONTROL::UpdateMessagePanel(), BOARD_EDITOR_CONTROL::ViaSizeDec(), BOARD_EDITOR_CONTROL::ViaSizeInc(), BOARD_EDITOR_CONTROL::ZoneDuplicate(), and BOARD_EDITOR_CONTROL::ZoneMerge().
|
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().
|
inlineinherited |
Definition at line 108 of file pcb_tool_base.h.
References PCB_TOOL_BASE::m_isBoardEditor.
|
inlineinherited |
Function SetIsFootprintEditor()
Toggles edit footprint mode. When enabled, one may select parts of footprints individually (graphics, pads, etc.), so they can be modified.
aEnabled | decides if the mode should be enabled. |
Definition at line 105 of file pcb_tool_base.h.
References PCB_TOOL_BASE::m_isFootprintEditor.
|
overrideprivatevirtual |
This method is meant to be overridden in order to specify handlers for events.
It is called every time tool is reset or finished.
Reimplemented from PCB_TOOL_BASE.
Definition at line 2143 of file board_inspection_tool.cpp.
References PCB_ACTIONS::boardStatistics, ClearHighlight(), PCB_ACTIONS::clearHighlight, DiffFootprint(), PCB_ACTIONS::diffFootprint, TOOL_INTERACTIVE::Go(), HideLocalRatsnest(), PCB_ACTIONS::hideLocalRatsnest, HideNetInRatsnest(), PCB_ACTIONS::hideNetInRatsnest, HighlightItem(), PCB_ACTIONS::highlightItem, HighlightNet(), PCB_ACTIONS::highlightNet, PCB_ACTIONS::highlightNetSelection, InspectClearance(), PCB_ACTIONS::inspectClearance, InspectConstraints(), PCB_ACTIONS::inspectConstraints, LocalRatsnestTool(), PCB_ACTIONS::localRatsnestTool, ShowBoardStatistics(), PCB_ACTIONS::showFootprintAssociations, ShowFootprintLinks(), ShowNetInRatsnest(), PCB_ACTIONS::showNetInRatsnest, PCB_ACTIONS::toggleLastNetHighlight, PCB_ACTIONS::toggleNetHighlight, UpdateLocalRatsnest(), and PCB_ACTIONS::updateLocalRatsnest.
int BOARD_INSPECTION_TOOL::ShowBoardStatistics | ( | const TOOL_EVENT & | aEvent | ) |
Show dialog with board statistics.
Highlight net belonging to the item under the cursor.
Definition at line 139 of file board_inspection_tool.cpp.
References m_frame, and DIALOG_SHIM::ShowModal().
Referenced by setTransitions().
int BOARD_INSPECTION_TOOL::ShowFootprintLinks | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 1547 of file board_inspection_tool.cpp.
References _, SELECTION::Front(), PCB_SELECTION_TOOL::GetSelection(), TOOL_MANAGER::GetTool(), m_frame, TOOL_BASE::m_toolMgr, PCB_FOOTPRINT_T, PCB_TOOL_BASE::selection(), EDA_BASE_FRAME::ShowInfoBarError(), DIALOG_SHIM::ShowModal(), SELECTION::Size(), and EDA_ITEM::Type().
Referenced by setTransitions().
int BOARD_INSPECTION_TOOL::ShowNetInRatsnest | ( | const TOOL_EVENT & | aEvent | ) |
Definition at line 2099 of file board_inspection_tool.cpp.
References doHideRatsnestNet(), and TOOL_EVENT::Parameter().
Referenced by setTransitions().
int BOARD_INSPECTION_TOOL::UpdateLocalRatsnest | ( | const TOOL_EVENT & | aEvent | ) |
Hide ratsnest for selected items. Called when there are no items selected.
Definition at line 1984 of file board_inspection_tool.cpp.
References calculateSelectionRatsnest(), delta, SELECTION::Empty(), TOOL_MANAGER::GetTool(), m_dynamicData, TOOL_BASE::m_toolMgr, TOOL_EVENT::Parameter(), and PCB_TOOL_BASE::selection().
Referenced by setTransitions().
|
inlineprotectedinherited |
Definition at line 155 of file pcb_tool_base.h.
References TOOL_BASE::getView().
Referenced by AUTOPLACE_TOOL::autoplace(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), MICROWAVE_TOOL::drawMicrowaveInductor(), PAD_TOOL::EditPad(), PAD_TOOL::EnumeratePads(), PAD_TOOL::ExitPadEditMode(), PCB_CONTROL::FlipPcbView(), ROUTER_TOOL::handleLayerSwitch(), highlightNet(), ROUTER_TOOL::InlineDrag(), DRAWING_TOOL::InteractivePlaceWithPreview(), PCB_CONTROL::LayerAlphaDec(), PCB_CONTROL::LayerAlphaInc(), PAD_TOOL::OnUndoRedo(), ROUTER_TOOL::performDragging(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), FOOTPRINT_EDITOR_CONTROL::Save(), FOOTPRINT_EDITOR_CONTROL::SaveAs(), PCB_CONTROL::TrackDisplayMode(), PCB_POINT_EDITOR::updateItem(), PCB_CONTROL::ViaDisplayMode(), and PCB_CONTROL::ZoneDisplayMode().
|
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(), PCB_SELECTION_TOOL::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(), PCB_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectPoint(), ZOOM_TOOL::selectRegion(), PCB_SELECTION_TOOL::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().
|
private |
Definition at line 136 of file board_inspection_tool.h.
Referenced by ClearHighlight(), HighlightNet(), highlightNet(), and IsNetHighlightSet().
|
private |
Definition at line 139 of file board_inspection_tool.h.
Referenced by BOARD_INSPECTION_TOOL(), calculateSelectionRatsnest(), HideLocalRatsnest(), and UpdateLocalRatsnest().
|
private |
Definition at line 134 of file board_inspection_tool.h.
Referenced by ClearHighlight(), constructDiffPanel(), DiffFootprint(), doHideRatsnestNet(), getItemDescription(), HighlightItem(), highlightNet(), InspectClearance(), InspectConstraints(), InspectDRCError(), InspectDRCErrorMenuText(), makeDRCEngine(), reportHeader(), Reset(), ShowBoardStatistics(), and ShowFootprintLinks().
|
protectedinherited |
Definition at line 188 of file pcb_tool_base.h.
Referenced by PCB_TOOL_BASE::IsBoardEditor(), PCB_CONTROL::placeBoardItems(), PCB_TOOL_BASE::SetIsBoardEditor(), and PCB_CONTROL::UpdateMessagePanel().
|
protectedinherited |
Definition at line 187 of file pcb_tool_base.h.
Referenced by ARRAY_TOOL::CreateArray(), ZONE_CREATE_HELPER::createNewZone(), EDIT_TOOL::doMoveSelection(), DRAWING_TOOL::DrawArc(), DRAWING_TOOL::DrawBezier(), DRAWING_TOOL::DrawCircle(), DRAWING_TOOL::DrawDimension(), DRAWING_TOOL::DrawLine(), DRAWING_TOOL::DrawRectangle(), DRAWING_TOOL::DrawVia(), DRAWING_TOOL::DrawZone(), EDIT_TOOL::Duplicate(), PAD_TOOL::EditPad(), PAD_TOOL::EnumeratePads(), PCB_CONTROL::GridPlaceOrigin(), GROUP_TOOL::Group(), EDIT_TOOL::Increment(), EDIT_TOOL::Init(), PAD_TOOL::Init(), PCB_CONTROL::InteractiveDelete(), DRAWING_TOOL::InteractivePlaceWithPreview(), PCB_TOOL_BASE::IsFootprintEditor(), PCB_POINT_EDITOR::makePoints(), ARRAY_TOOL::onDialogClosed(), PCB_POINT_EDITOR::OnSelectionChange(), PCB_CONTROL::Paste(), PAD_TOOL::PlacePad(), DRAWING_TOOL::PlaceText(), DRAWING_TOOL::PlaceTuningPattern(), POSITION_RELATIVE_TOOL::PositionRelative(), POSITION_RELATIVE_TOOL::PositionRelativeInteractively(), PCB_CONTROL::Print(), PCB_CONTROL::pruneItemLayers(), SCRIPTING_TOOL::reloadPlugins(), EDIT_TOOL::Rotate(), DRAWING_TOOL::SetAnchor(), PCB_TOOL_BASE::SetIsFootprintEditor(), PCB_CONTROL::SnapMode(), PCB_CONTROL::SnapModeFeedback(), and EDIT_TOOL::updateModificationPoint().
|
private |
Definition at line 137 of file board_inspection_tool.h.
Referenced by ClearHighlight(), and HighlightNet().
|
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(), PCB_SELECTION_TOOL::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(), PCB_SELECTION_TOOL::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 |
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(), 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(), ClearHighlight(), GERBVIEW_SELECTION_TOOL::clearSelection(), PL_SELECTION_TOOL::ClearSelection(), SCH_EDIT_TABLE_TOOL::clearSelection(), PCB_EDIT_TABLE_TOOL::clearSelection(), EE_SELECTION_TOOL::ClearSelection(), PCB_SELECTION_TOOL::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(), 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(), doHideRatsnestNet(), PCB_TOOL_BASE::doInteractiveItemPlacement(), EDIT_TOOL::doMoveSelection(), SYMBOL_EDITOR_MOVE_TOOL::doMoveSelection(), SCH_MOVE_TOOL::doMoveSelection(), PCB_SELECTION_TOOL::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::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(), PCB_SELECTION_TOOL::EnterGroup(), GROUP_TOOL::EnterGroup(), SCH_NAVIGATE_TOOL::EnterSheet(), PAD_TOOL::EnumeratePads(), EE_INSPECTION_TOOL::ExcludeMarker(), PCB_SELECTION_TOOL::ExitGroup(), PCB_SELECTION_TOOL::expandConnection(), ZONE_FILLER_TOOL::FillAllZones(), PCB_SELECTION_TOOL::filterSelection(), PCB_SELECTION_TOOL::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(), PCB_SELECTION_TOOL::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(), HighlightItem(), SCH_EDITOR_CONTROL::HighlightNet(), HighlightNet(), 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(), 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(), PCB_SELECTION_TOOL::Init(), ALIGN_DISTRIBUTE_TOOL::Init(), POSITION_RELATIVE_TOOL::Init(), ROUTER_TOOL::InlineBreakTrack(), ROUTER_TOOL::InlineDrag(), InspectClearance(), InspectConstraints(), 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(), 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(), PCB_SELECTION_TOOL::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(), MULTICHANNEL_TOOL::repeatLayout(), PCB_SELECTION_TOOL::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(), PCB_SELECTION_TOOL::SelectAll(), EE_SELECTION_TOOL::SelectColumns(), PCB_SELECTION_TOOL::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(), PCB_SELECTION_TOOL::selectMultiple(), PCB_SELECTION_TOOL::selectNet(), GERBVIEW_SELECTION_TOOL::selectPoint(), PCB_TEST_SELECTION_TOOL::selectPoint(), PL_SELECTION_TOOL::SelectPoint(), PCB_SELECTION_TOOL::selectPoint(), EE_SELECTION_TOOL::selectPoint(), PCB_PICKER_TOOL::SelectPointInteractively(), EE_SELECTION_TOOL::SelectRows(), PCB_SELECTION_TOOL::SelectRows(), PCB_SELECTION_TOOL::selectSameSheet(), PCB_SELECTION_TOOL::selectSheetContents(), EE_SELECTION_TOOL::SelectTable(), PCB_SELECTION_TOOL::SelectTable(), PCB_SELECTION_TOOL::selectTableCells(), EE_SELECTION_TOOL::selectTableCells(), DRAWING_TOOL::SetAnchor(), SCH_EDIT_TOOL::SetAttribute(), TOOL_INTERACTIVE::SetContextMenu(), EDA_3D_CONTROLLER::SetMaterial(), DRC_TOOL::ShowDRCDialog(), 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(), PCB_SELECTION_TOOL::unrouteSelected(), EE_SELECTION_TOOL::UnselectAll(), PCB_SELECTION_TOOL::UnselectAll(), GERBVIEW_SELECTION_TOOL::UnselectItem(), GERBVIEW_SELECTION_TOOL::UnselectItems(), SCH_EDIT_TOOL::UnsetAttribute(), PNS::TOOL_BASE::updateEndItem(), PCB_POINT_EDITOR::updateItem(), UpdateLocalRatsnest(), EE_INSPECTION_TOOL::UpdateMessagePanel(), GERBVIEW_CONTROL::UpdateMessagePanel(), PL_EDITOR_CONTROL::UpdateMessagePanel(), PCB_CONTROL::UpdateMessagePanel(), EDIT_TOOL::updateModificationPoint(), MULTICHANNEL_TOOL::UpdatePickedItem(), PNS::TOOL_BASE::updateStartItem(), BOARD_EDITOR_CONTROL::ViaSizeDec(), BOARD_EDITOR_CONTROL::ViaSizeInc(), TOOL_INTERACTIVE::Wait(), BOARD_EDITOR_CONTROL::ZoneDuplicate(), ZONE_FILLER_TOOL::ZoneFill(), BOARD_EDITOR_CONTROL::ZoneMerge(), and ZONE_FILLER_TOOL::ZoneUnfill().
|
protectedinherited |
Names are expected to obey the format application.ToolName (eg.
pcbnew.InteractiveSelection).
Definition at line 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().