KiCad PCB EDA Suite
|
#include <macros.h>
#include <advanced_config.h>
#include <clipboard.h>
#include <limits>
#include <kiplatform/ui.h>
#include <gal/graphics_abstraction_layer.h>
#include <board.h>
#include <board_design_settings.h>
#include <footprint.h>
#include <increment.h>
#include <pcb_shape.h>
#include <pcb_group.h>
#include <pcb_target.h>
#include <pcb_textbox.h>
#include <pcb_table.h>
#include <pcb_generator.h>
#include <pcb_edit_frame.h>
#include <drawing_sheet/ds_proxy_view_item.h>
#include <kiway.h>
#include <status_popup.h>
#include <tool/selection_conditions.h>
#include <tool/tool_manager.h>
#include <tools/pcb_actions.h>
#include <tools/pcb_selection_tool.h>
#include <tools/edit_tool.h>
#include <tools/item_modification_routine.h>
#include <tools/pcb_picker_tool.h>
#include <tools/pcb_point_editor.h>
#include <tools/tool_event_utils.h>
#include <tools/pcb_grid_helper.h>
#include <tools/pad_tool.h>
#include <view/view_controls.h>
#include <connectivity/connectivity_algo.h>
#include <core/kicad_algo.h>
#include <fix_board_shape.h>
#include <bitmaps.h>
#include <functional>
#include "kicad_clipboard.h"
#include <wx/hyperlink.h>
#include <router/router_tool.h>
#include <dialog_get_footprint_by_name.h>
#include <dialogs/dialog_move_exact.h>
#include <dialogs/dialog_track_via_properties.h>
#include <dialogs/dialog_tablecell_properties.h>
#include <dialogs/dialog_table_properties.h>
#include <dialogs/dialog_multi_unit_entry.h>
#include <dialogs/dialog_unit_entry.h>
#include <pcb_reference_image.h>
Go to the source code of this file.
Functions | |
static std::shared_ptr< CONDITIONAL_MENU > | makePositioningToolsMenu (TOOL_INTERACTIVE *aTool) |
static std::shared_ptr< CONDITIONAL_MENU > | makeShapeModificationMenu (TOOL_INTERACTIVE *aTool) |
static FOOTPRINT * | GetFootprintFromBoardByReference (PCB_BASE_FRAME &aFrame) |
static std::optional< int > | GetRadiusParams (PCB_BASE_EDIT_FRAME &aFrame, const wxString &aTitle, int &aPersitentRadius) |
Prompt the user for a radius and return it. | |
static std::optional< DOGBONE_CORNER_ROUTINE::PARAMETERS > | GetDogboneParams (PCB_BASE_EDIT_FRAME &aFrame) |
static std::optional< CHAMFER_PARAMS > | GetChamferParams (PCB_BASE_EDIT_FRAME &aFrame) |
Prompt the user for chamfer parameters. | |
static void | mirrorPad (PAD &aPad, const VECTOR2I &aMirrorPoint, FLIP_DIRECTION aFlipDirection) |
Mirror a pad in the H/V axis passing through a point. | |
Variables | |
static const std::vector< KICAD_T > | padTypes = { PCB_PAD_T } |
static const std::vector< KICAD_T > | footprintTypes = { PCB_FOOTPRINT_T } |
static const std::vector< KICAD_T > | groupTypes = { PCB_GROUP_T } |
static const std::vector< KICAD_T > | trackTypes |
static const std::vector< KICAD_T > | baseConnectedTypes |
static const std::vector< KICAD_T > | connectedTypes |
static const std::vector< KICAD_T > | unroutableTypes |
|
static |
Prompt the user for chamfer parameters.
aFrame | |
aErrorMsg | filled with an error message if the parameter is invalid somehow |
Definition at line 1324 of file edit_tool.cpp.
References _, WX_UNIT_ENTRY_DIALOG::GetValue(), EDA_IU_SCALE::mmToIU(), pcbIUScale, and DIALOG_SHIM::ShowModal().
|
static |
Definition at line 1273 of file edit_tool.cpp.
References _, WX_MULTI_ENTRY_DIALOG::GetValues(), EDA_IU_SCALE::mmToIU(), pcbIUScale, and DIALOG_SHIM::ShowModal().
|
static |
Definition at line 421 of file edit_tool.cpp.
References BOARD::Footprints(), PCB_BASE_FRAME::GetBoard(), DIALOG_GET_FOOTPRINT_BY_NAME::GetValue(), and DIALOG_SHIM::ShowModal().
Referenced by EDIT_TOOL::GetAndPlace().
|
static |
Prompt the user for a radius and return it.
aFrame | |
aTitle | the title of the dialog |
aPersitentRadius | the last used radius |
Definition at line 1258 of file edit_tool.cpp.
References _, WX_UNIT_ENTRY_DIALOG::GetValue(), and DIALOG_SHIM::ShowModal().
|
static |
Definition at line 123 of file edit_tool.cpp.
References _, PCB_ACTIONS::copyWithReference, PCB_ACTIONS::moveExact, PCB_ACTIONS::moveWithReference, SELECTION_CONDITIONS::NotEmpty(), PCB_ACTIONS::positionRelative, PCB_ACTIONS::positionRelativeInteractively, and special_tools.
Referenced by EDIT_TOOL::Init().
|
static |
Definition at line 146 of file edit_tool.cpp.
References _, PCB_ACTIONS::chamferLines, SELECTION_CONDITIONS::Count(), PCB_ACTIONS::dogboneCorners, PCB_ACTIONS::extendLines, PCB_ACTIONS::filletLines, TOOL_BASE::GetManager(), TOOL_MANAGER::GetTool(), PCB_POINT_EDITOR::HasCorner(), PCB_POINT_EDITOR::HasMidpoint(), SELECTION_CONDITIONS::HasTypes(), PCB_ACTIONS::healShapes, PCB_ACTIONS::intersectPolygons, PCB_ACTIONS::mergePolygons, SELECTION_CONDITIONS::MoreThan(), SELECTION_CONDITIONS::OnlyTypes(), PCB_SHAPE_LOCATE_ARC_T, PCB_SHAPE_LOCATE_BEZIER_T, PCB_SHAPE_LOCATE_POLY_T, PCB_SHAPE_LOCATE_RECT_T, PCB_SHAPE_LOCATE_SEGMENT_T, PCB_ZONE_T, PCB_ACTIONS::pointEditorMoveCorner, PCB_ACTIONS::pointEditorMoveMidpoint, PCB_ACTIONS::simplifyPolygons, and PCB_ACTIONS::subtractPolygons.
Referenced by EDIT_TOOL::Init().
|
static |
Mirror a pad in the H/V axis passing through a point.
Definition at line 2074 of file edit_tool.cpp.
References PADSTACK::ALL_LAYERS, CUSTOM, PAD::FlipPrimitives(), PAD::GetDelta(), PAD::GetOffset(), PAD::GetOrientation(), PAD::GetPosition(), PAD::GetShape(), MIRROR(), PAD::SetDelta(), PAD::SetOffset(), PAD::SetOrientation(), and PAD::SetPosition().
Referenced by EDIT_TOOL::Mirror().
|
static |
Definition at line 89 of file edit_tool.cpp.
Referenced by EDIT_TOOL::DragArcTrack(), EDIT_TOOL::FilletTracks(), and BOARD::GetTrackLength().
|
static |
Definition at line 94 of file edit_tool.cpp.
|
static |
Definition at line 81 of file edit_tool.cpp.
Referenced by EDIT_TOOL::Init(), and PCB_EDIT_FRAME::setupUIConditions().
|
static |
Definition at line 83 of file edit_tool.cpp.
Referenced by EDIT_TOOL::Init(), and PCB_EDIT_FRAME::setupUIConditions().
Definition at line 79 of file edit_tool.cpp.
Referenced by CONVERT_TOOL::Init(), EDIT_TOOL::Init(), and PAD_TOOL::Init().
|
static |
Definition at line 85 of file edit_tool.cpp.
Referenced by CONVERT_TOOL::Init(), EDIT_TOOL::Init(), and PCB_EDIT_FRAME::setupUIConditions().
|
static |
Definition at line 100 of file edit_tool.cpp.
Referenced by EDIT_TOOL::Init().