KiCad PCB EDA Suite
Loading...
Searching...
No Matches
pcb_edit_frame.cpp File Reference
#include <algorithm>
#include <type_traits>
#include <unordered_map>
#include <unordered_set>
#include <vector>
#include <wx/log.h>
#include <wx/filename.h>
#include <wx/filedlg.h>
#include <wx/hyperlink.h>
#include <wx/socket.h>
#include <wx/wupdlock.h>
#include <advanced_config.h>
#include <connectivity/connectivity_data.h>
#include <kiface_base.h>
#include <kiway.h>
#include <board_design_settings.h>
#include <settings/color_settings.h>
#include <pgm_base.h>
#include <pcb_edit_frame.h>
#include <3d_viewer/eda_3d_viewer_frame.h>
#include <api/api_handler_common.h>
#include <api/api_handler_pcb.h>
#include <api/api_plugin_manager.h>
#include <api/api_server.h>
#include <api/api_utils.h>
#include <geometry/geometry_utils.h>
#include <bitmaps.h>
#include <confirm.h>
#include <footprint.h>
#include <footprint_utils.h>
#include <lset.h>
#include <trace_helpers.h>
#include <pcbnew_id.h>
#include <pcbnew_settings.h>
#include <pcb_layer_box_selector.h>
#include <footprint_edit_frame.h>
#include <dialog_find.h>
#include <dialogs/dialog_find_by_properties.h>
#include <dialog_footprint_properties.h>
#include <dialogs/dialog_exchange_footprints.h>
#include <dialogs/dialog_migrate_3d_models.h>
#include <dialog_board_setup.h>
#include <dialogs/dialog_dimension_properties.h>
#include <dialogs/dialog_table_properties.h>
#include <gal/graphics_abstraction_layer.h>
#include <pad.h>
#include <pcb_target.h>
#include <pcb_point.h>
#include <pcb_track.h>
#include <layer_pairs.h>
#include <drawing_sheet/ds_proxy_view_item.h>
#include <board_text_var_adapter.h>
#include <text_var_dependency.h>
#include <view/view.h>
#include <wildcards_and_files_ext.h>
#include <functional>
#include <pcb_barcode.h>
#include <pcb_painter.h>
#include <project/project_file.h>
#include <project/project_local_settings.h>
#include <settings/common_settings.h>
#include <settings/settings_manager.h>
#include <local_history.h>
#include <tool/tool_manager.h>
#include <tool/tool_dispatcher.h>
#include <tool/action_toolbar.h>
#include <tool/common_control.h>
#include <tool/common_tools.h>
#include <tool/embed_tool.h>
#include <tool/properties_tool.h>
#include <tool/selection.h>
#include <tool/zoom_tool.h>
#include <tools/array_tool.h>
#include <tools/pcb_grid_helper.h>
#include <tools/pcb_selection_tool.h>
#include <tools/pcb_picker_tool.h>
#include <tools/pcb_point_editor.h>
#include <tools/edit_tool.h>
#include <tools/pcb_edit_table_tool.h>
#include <tools/pcb_group_tool.h>
#include <tools/generator_tool.h>
#include <tools/diff_phase_skew_tool.h>
#include <tools/drc_tool.h>
#include <tools/drc_rule_editor_tool.h>
#include <tools/global_edit_tool.h>
#include <tools/convert_tool.h>
#include <tools/drawing_tool.h>
#include <tools/pcb_control.h>
#include <tools/pcb_design_block_control.h>
#include <tools/board_editor_control.h>
#include <tools/board_inspection_tool.h>
#include <tools/pcb_editor_conditions.h>
#include <tools/pcb_viewer_tools.h>
#include <tools/board_reannotate_tool.h>
#include <tools/align_distribute_tool.h>
#include <tools/pad_tool.h>
#include <microwave/microwave_tool.h>
#include <properties/property.h>
#include <properties/property_mgr.h>
#include <tools/position_relative_tool.h>
#include <tools/zone_filler_tool.h>
#include <tools/multichannel_tool.h>
#include <router/router_tool.h>
#include <autorouter/autoplace_tool.h>
#include <netlist_reader/netlist_reader.h>
#include <dialog_drc.h>
#include <ratsnest/ratsnest_view_item.h>
#include <widgets/appearance_controls.h>
#include <widgets/pcb_design_block_pane.h>
#include <widgets/pcb_search_pane.h>
#include <widgets/wx_infobar.h>
#include <widgets/panel_selection_filter.h>
#include <widgets/pcb_properties_panel.h>
#include <widgets/pcb_net_inspector_panel.h>
#include <widgets/wx_aui_utils.h>
#include <kiplatform/app.h>
#include <kiplatform/ui.h>
#include <core/profile.h>
#include <math/box2_minmax.h>
#include <view/wx_view_controls.h>
#include <footprint_viewer_frame.h>
#include <footprint_chooser_frame.h>
#include <toolbars_pcb_editor.h>
#include <drc/rule_editor/dialog_drc_rule_editor.h>
#include <richio.h>

Go to the source code of this file.

Macros

#define INSPECT_DRC_ERROR_DIALOG_NAME   wxT( "InspectDrcErrorDialog" )
 
#define INSPECT_CLEARANCE_DIALOG_NAME   wxT( "InspectClearanceDialog" )
 
#define INSPECT_CONSTRAINTS_DIALOG_NAME   wxT( "InspectConstraintsDialog" )
 
#define FOOTPRINT_DIFF_DIALOG_NAME   wxT( "FootprintDiffDialog" )
 
#define ENABLE(x)
 
#define CHECK(x)
 
#define CURRENT_TOOL(action)
 
#define CURRENT_EDIT_TOOL(action)
 

Functions

 EVT_MENU_RANGE (ID_POPUP_PCB_SELECT_WIDTH_START_RANGE, ID_POPUP_PCB_SELECT_WIDTH_END_RANGE, PCB_EDIT_FRAME::Tracks_and_Vias_Size_Event) EVT_UPDATE_UI_RANGE(ID_POPUP_PCB_SELECT_WIDTH1
 
PCB_EDIT_FRAME::OnUpdateSelectTrackWidth EVT_UPDATE_UI_RANGE (ID_POPUP_PCB_SELECT_VIASIZE1, ID_POPUP_PCB_SELECT_VIASIZE8, PCB_EDIT_FRAME::OnUpdateSelectViaSize) PCB_EDIT_FRAME
 

Variables

 ID_POPUP_PCB_SELECT_WIDTH8
 

Macro Definition Documentation

◆ CHECK

#define CHECK ( x)
Value:
Functors that can be used to figure out how the action controls should be displayed in the UI and if ...
ACTION_CONDITIONS & Check(const SELECTION_CONDITION &aCondition)

◆ CURRENT_EDIT_TOOL

#define CURRENT_EDIT_TOOL ( action)
Value:
mgr->SetConditions( action, ACTION_CONDITIONS().Check( cond.CurrentTool( action ) ) \
.Enable( isDRCIdle ) )
ACTION_CONDITIONS & Enable(const SELECTION_CONDITION &aCondition)

◆ CURRENT_TOOL

#define CURRENT_TOOL ( action)
Value:
mgr->SetConditions( action, CHECK( cond.CurrentTool( action ) ) )
#define CHECK(x)

◆ ENABLE

#define ENABLE ( x)
Value:

◆ FOOTPRINT_DIFF_DIALOG_NAME

#define FOOTPRINT_DIFF_DIALOG_NAME   wxT( "FootprintDiffDialog" )

◆ INSPECT_CLEARANCE_DIALOG_NAME

#define INSPECT_CLEARANCE_DIALOG_NAME   wxT( "InspectClearanceDialog" )

◆ INSPECT_CONSTRAINTS_DIALOG_NAME

#define INSPECT_CONSTRAINTS_DIALOG_NAME   wxT( "InspectConstraintsDialog" )

◆ INSPECT_DRC_ERROR_DIALOG_NAME

#define INSPECT_DRC_ERROR_DIALOG_NAME   wxT( "InspectDrcErrorDialog" )

Function Documentation

◆ EVT_MENU_RANGE()

◆ EVT_UPDATE_UI_RANGE()

Definition at line 191 of file pcb_edit_frame.cpp.

References _, _HKI, PCB_ACTIONS::angleSnapModeChanged, PCBNEW_SETTINGS::AUI_PANELS::appearance_panel_tab, AS_GLOBAL, BOARD, config, PCB_ACTIONS::ddAppendBoard, PCB_ACTIONS::ddImportGraphics, PCBNEW_SETTINGS::AUI_PANELS::design_blocks_panel_docked_width, EDA_EVT_PLUGIN_AVAILABILITY_CHANGED, else, EVT_UPDATE_UI_RANGE(), FRAME_PCB_EDITOR, EDA_DRAW_PANEL_GAL::GAL_FALLBACK, PGM_BASE::GetApiServer(), ADVANCED_CFG::GetCfg(), PGM_BASE::GetExecutablePath(), LAYER_PAIR::GetLayerA(), LAYER_PAIR::GetLayerB(), PROJECT::GetProjectFile(), GetToolbarSettings(), icon_pcbnew, icon_pcbnew_16, icon_pcbnew_32, ID_POPUP_PCB_SELECT_VIASIZE1, ID_POPUP_PCB_SELECT_VIASIZE8, KiBitmap(), KICAD_DEFAULT_DRAWFRAME_STYLE, FILEEXT::KiCadPcbFileExtension, Kiface(), FILEEXT::LegacyPcbFileExtension, PROJECT_FILE::m_LayerPairInfos, KIGFX::WX_VIEW_CONTROLS::m_MotionEventCounter, PCB_SCREEN::m_Route_Layer_BOTTOM, PCB_SCREEN::m_Route_Layer_TOP, PCB_EDIT_FRAME::onCloseModelessBookReporterDialogs(), PCB_EDIT_FRAME::OnCrossProbeFlashTimer(), PCB_EDIT_FRAME::onPluginAvailabilityChanged(), PCB_EDIT_FRAME::onSize(), PCB_EDIT_FRAME_NAME, pcbIUScale, Pgm(), ACTIONS::pluginsReload, Prj(), PCBNEW_SETTINGS::AUI_PANELS::properties_panel_width, PCBNEW_SETTINGS::AUI_PANELS::properties_splitter, KICAD_API_SERVER::RegisterHandler(), PROF_COUNTER::Reset(), PCBNEW_SETTINGS::AUI_PANELS::right_panel_width, PCBNEW_SETTINGS::AUI_PANELS::search_panel_dock_direction, PCBNEW_SETTINGS::AUI_PANELS::search_panel_height, PCBNEW_SETTINGS::AUI_PANELS::search_panel_width, SetAuiPaneSize(), KIPLATFORM::APP::SetShutdownBlockReason(), PROF_COUNTER::Show(), FILEEXT::SVGFileExtension, and ACTIONS::zoomFitScreen.

Referenced by EVT_UPDATE_UI_RANGE().

Variable Documentation

◆ ID_POPUP_PCB_SELECT_WIDTH8

ID_POPUP_PCB_SELECT_WIDTH8

Definition at line 189 of file pcb_edit_frame.cpp.

Referenced by PCB_EDIT_FRAME::Tracks_and_Vias_Size_Event().