KiCad PCB EDA Suite
Loading...
Searching...
No Matches
pcb_edit_frame.cpp File Reference
#include <advanced_config.h>
#include <kiface_base.h>
#include <kiway.h>
#include <pgm_base.h>
#include <pcb_edit_frame.h>
#include <3d_viewer/eda_3d_viewer_frame.h>
#include <api/api_plugin_manager.h>
#include <fp_lib_table.h>
#include <bitmaps.h>
#include <confirm.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_plot.h>
#include <dialog_find.h>
#include <dialog_footprint_properties.h>
#include <dialogs/dialog_exchange_footprints.h>
#include <dialog_board_setup.h>
#include <invoke_pcb_dialog.h>
#include <gal/graphics_abstraction_layer.h>
#include <board.h>
#include <board_design_settings.h>
#include <footprint.h>
#include <layer_pairs.h>
#include <drawing_sheet/ds_proxy_view_item.h>
#include <connectivity/connectivity_data.h>
#include <wildcards_and_files_ext.h>
#include <pcb_draw_panel_gal.h>
#include <functional>
#include <pcb_painter.h>
#include <project/project_file.h>
#include <project/project_local_settings.h>
#include <python_scripting.h>
#include <settings/common_settings.h>
#include <settings/settings_manager.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/group_tool.h>
#include <tools/generator_tool.h>
#include <tools/drc_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/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/placement_tool.h>
#include <tools/pad_tool.h>
#include <microwave/microwave_tool.h>
#include <tools/position_relative_tool.h>
#include <tools/zone_filler_tool.h>
#include <tools/pcb_actions.h>
#include <tools/multichannel_tool.h>
#include <router/router_tool.h>
#include <autorouter/autoplace_tool.h>
#include <python/scripting/pcb_scripting_tool.h>
#include <gestfich.h>
#include <executable_names.h>
#include <netlist_reader/netlist_reader.h>
#include <wx/socket.h>
#include <wx/wupdlock.h>
#include <dialog_drc.h>
#include <ratsnest/ratsnest_view_item.h>
#include <widgets/appearance_controls.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 <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 <action_plugin.h>
#include <pcbnew_scripting_helpers.h>
#include "../scripting/python_scripting.h"
#include <wx/filedlg.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)   ACTION_CONDITIONS().Enable( x )
 
#define CHECK(x)   ACTION_CONDITIONS().Check( x )
 
#define CURRENT_TOOL(action)   mgr->SetConditions( action, CHECK( cond.CurrentTool( 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
 
static void processTextItem (const PCB_TEXT &aSrc, PCB_TEXT &aDest, bool aResetText, bool aResetTextLayers, bool aResetTextEffects, bool *aUpdated)
 copy text settings from aSrc to aDest
 
static PCB_TEXTgetMatchingTextItem (PCB_TEXT *aRefItem, FOOTPRINT *aFootprint)
 
bool ExportBoardToHyperlynx (BOARD *aBoard, const wxFileName &aPath)
 

Variables

 ID_POPUP_PCB_SELECT_WIDTH8
 

Macro Definition Documentation

◆ CHECK

#define CHECK (   x)    ACTION_CONDITIONS().Check( x )

◆ CURRENT_EDIT_TOOL

#define CURRENT_EDIT_TOOL (   action)
Value:
mgr->SetConditions( action, ACTION_CONDITIONS().Check( cond.CurrentTool( action ) ) \
.Enable( isDRCIdle ) )
Functors that can be used to figure out how the action controls should be displayed in the UI and if ...
ACTION_CONDITIONS & Enable(const SELECTION_CONDITION &aCondition)

◆ CURRENT_TOOL

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

◆ ENABLE

#define ENABLE (   x)    ACTION_CONDITIONS().Enable( x )

◆ FOOTPRINT_DIFF_DIALOG_NAME

#define FOOTPRINT_DIFF_DIALOG_NAME   wxT( "FootprintDiffDialog" )

Definition at line 139 of file pcb_edit_frame.cpp.

◆ INSPECT_CLEARANCE_DIALOG_NAME

#define INSPECT_CLEARANCE_DIALOG_NAME   wxT( "InspectClearanceDialog" )

Definition at line 137 of file pcb_edit_frame.cpp.

◆ INSPECT_CONSTRAINTS_DIALOG_NAME

#define INSPECT_CONSTRAINTS_DIALOG_NAME   wxT( "InspectConstraintsDialog" )

Definition at line 138 of file pcb_edit_frame.cpp.

◆ INSPECT_DRC_ERROR_DIALOG_NAME

#define INSPECT_DRC_ERROR_DIALOG_NAME   wxT( "InspectDrcErrorDialog" )

Definition at line 136 of file pcb_edit_frame.cpp.

Function Documentation

◆ EVT_MENU_RANGE()

◆ EVT_UPDATE_UI_RANGE()

◆ ExportBoardToHyperlynx()

bool ExportBoardToHyperlynx ( BOARD aBoard,
const wxFileName &  aPath 
)

◆ getMatchingTextItem()

static PCB_TEXT * getMatchingTextItem ( PCB_TEXT aRefItem,
FOOTPRINT aFootprint 
)
static

◆ processTextItem()

static void processTextItem ( const PCB_TEXT aSrc,
PCB_TEXT aDest,
bool  aResetText,
bool  aResetTextLayers,
bool  aResetTextEffects,
bool *  aUpdated 
)
static

copy text settings from aSrc to aDest

Parameters
aSrcis the PCB_TEXT source
aDestis the PCB_TEXT target
aResetTextis true to keep the default target text (false to use the aSrc text)
aResetTextLayersis true to keep the default target layers setting (false to use the aSrc setting)
aResetTextEffectsis true to keep the default target text effects (false to use the aSrc effect)
aUpdatedis a refrence to a bool to keep trace of changes

Definition at line 2235 of file pcb_edit_frame.cpp.

References BOARD_ITEM::GetFPRelativePosition(), EDA_TEXT::GetHorizJustify(), BOARD_ITEM::GetLayer(), EDA_TEXT::GetText(), EDA_TEXT::GetTextAngle(), EDA_TEXT::GetTextSize(), EDA_TEXT::GetTextThickness(), EDA_TEXT::GetVertJustify(), BOARD_ITEM::IsLocked(), EDA_TEXT::IsVisible(), EDA_ITEM::m_Uuid, EDA_TEXT::SetAttributes(), BOARD_ITEM::SetFPRelativePosition(), BOARD_ITEM::SetLayer(), BOARD_ITEM::SetLocked(), EDA_TEXT::SetText(), and EDA_TEXT::SetVisible().

Referenced by PCB_EDIT_FRAME::ExchangeFootprint().

Variable Documentation

◆ ID_POPUP_PCB_SELECT_WIDTH8

ID_POPUP_PCB_SELECT_WIDTH8

Definition at line 192 of file pcb_edit_frame.cpp.

Referenced by PCB_EDIT_FRAME::Tracks_and_Vias_Size_Event().