KiCad PCB EDA Suite
|
Scripting helper functions for pcbnew functionality. More...
#include <Python.h>
#include "pcbnew_scripting_helpers.h"
#include <action_plugin.h>
#include <board.h>
#include <board_design_settings.h>
#include <pcb_marker.h>
#include <cstdlib>
#include <drawing_sheet/ds_data_model.h>
#include <drc/drc_engine.h>
#include <drc/drc_item.h>
#include <fp_lib_table.h>
#include <core/ignore.h>
#include <pcb_io/pcb_io_mgr.h>
#include <string_utils.h>
#include <filename_resolver.h>
#include <macros.h>
#include <pgm_base.h>
#include <project.h>
#include <project_pcb.h>
#include <project/net_settings.h>
#include <project/project_file.h>
#include <settings/settings_manager.h>
#include <specctra.h>
#include <project/project_local_settings.h>
#include <wildcards_and_files_ext.h>
#include <locale_io.h>
#include <wx/app.h>
#include <wx/crt.h>
Go to the source code of this file.
Functions | |
BOARD * | GetBoard () |
void | ScriptingSetPcbEditFrame (PCB_EDIT_FRAME *aPcbEditFrame) |
void | ScriptingOnDestructPcbEditFrame (PCB_EDIT_FRAME *aPcbEditFrame) |
BOARD * | LoadBoard (wxString &aFileName, bool aSetActive) |
Loads a board from file This function identifies the file type by extension and determines the correct file io to use. | |
BOARD * | LoadBoard (wxString &aFileName) |
Loads a board from file This function identifies the file type by extension and determines the correct file io to use. | |
SETTINGS_MANAGER * | GetSettingsManager () |
PROJECT * | GetDefaultProject () |
BOARD * | LoadBoard (wxString &aFileName, PCB_IO_MGR::PCB_FILE_T aFormat) |
Loads a board from file using the specified file io handler. | |
BOARD * | LoadBoard (wxString &aFileName, PCB_IO_MGR::PCB_FILE_T aFormat, bool aSetActive) |
Loads a board from file using the specified file io handler. | |
BOARD * | NewBoard (wxString &aFileName) |
Creates a new board and project with the given filename (will overwrite existing files!) | |
BOARD * | CreateEmptyBoard () |
Construct a default BOARD with a temporary (no filename) project. | |
bool | SaveBoard (wxString &aFileName, BOARD *aBoard, PCB_IO_MGR::PCB_FILE_T aFormat, bool aSkipSettings) |
bool | SaveBoard (wxString &aFileName, BOARD *aBoard, bool aSkipSettings) |
Saves a copy of the given board and its associated project to the given path. | |
FP_LIB_TABLE * | GetFootprintLibraryTable () |
wxArrayString | GetFootprintLibraries () |
Get the nicknames of all of the footprint libraries configured in pcbnew in both the project and global library tables. | |
wxArrayString | GetFootprints (const wxString &aNickName) |
Get the names of all of the footprints available in a footprint library. | |
bool | ExportSpecctraDSN (wxString &aFullFilename) |
Will export the current BOARD to a specctra dsn file. | |
bool | ExportSpecctraDSN (BOARD *aBoard, wxString &aFullFilename) |
Will export the BOARD to a specctra dsn file. | |
bool | ExportVRML (const wxString &aFullFileName, double aMMtoWRMLunit, bool aIncludeUnspecified, bool aIncludeDNP, bool aExport3DFiles, bool aUseRelativePaths, const wxString &a3D_Subdir, double aXRef, double aYRef) |
Export the current BOARD to a VRML (wrl) file. | |
bool | ImportSpecctraSES (wxString &aFullFilename) |
Import a specctra *.ses file and use it to relocate MODULEs and to replace all vias and tracks in an existing and loaded BOARD. | |
bool | ImportSpecctraSES (BOARD *aBoard, wxString &aFullFilename) |
Import a specctra *.ses file and use it to relocate MODULEs and to replace all vias and Unlike first overload doesn't need a valid PCB_EDIT_FRAME set and can be used in a standalone python script. | |
bool | ExportFootprintsToLibrary (bool aStoreInNewLib, const wxString &aLibName, wxString *aLibPath) |
Save footprints in a library: | |
void | Refresh () |
Update the board display after modifying it by a python script (note: it is automatically called by action plugins, after running the plugin, so call this function is usually not needed inside action plugins. | |
void | UpdateUserInterface () |
Update the layer manager and other widgets from the board setup (layer and items visibility, colors ...) (note: it is automatically called by action plugins, after running the plugin, so call this function is usually not needed inside action plugins. | |
int | GetUserUnits () |
Return the currently selected user unit value for the interface. | |
std::deque< BOARD_ITEM * > | GetCurrentSelection () |
Get the list of selected objects. | |
void | FocusOnItem (BOARD_ITEM *aItem, PCB_LAYER_ID aLayer) |
Focus the view on the target item. | |
bool | IsActionRunning () |
Are we currently in an action plugin? | |
bool | WriteDRCReport (BOARD *aBoard, const wxString &aFileName, EDA_UNITS aUnits, bool aReportAllTrackErrors) |
Run the DRC check on the given board and writes the results to a report file. | |
wxString | GetLanguage () |
Get the language string from COMMON_SETTINGS. | |
Variables | |
static PCB_EDIT_FRAME * | s_PcbEditFrame = nullptr |
static SETTINGS_MANAGER * | s_SettingsManager = nullptr |
Scripting helper functions for pcbnew functionality.
Definition in file pcbnew_scripting_helpers.cpp.
BOARD * CreateEmptyBoard | ( | ) |
Construct a default BOARD with a temporary (no filename) project.
Definition at line 285 of file pcbnew_scripting_helpers.cpp.
References GetDefaultProject(), s_PcbEditFrame, and BOARD::SetProject().
Referenced by PCBNEW_JOBS_HANDLER::doFpExportSvg().
bool ExportFootprintsToLibrary | ( | bool | aStoreInNewLib, |
const wxString & | aLibName = wxEmptyString , |
||
wxString * | aLibPath = nullptr |
||
) |
Save footprints in a library:
aStoreInNewLib | set to true to save footprints in a existing lib. Existing footprints will be kept or updated. This lib should be in fp lib table, and is type is .pretty. Set to false to save footprints in a new lib. If it is an existing lib, previous footprints will be removed. |
aLibName | is the optional library name to create, stops dialog call. Must be called with aStoreInNewLib as true. |
Definition at line 458 of file pcbnew_scripting_helpers.cpp.
References PCB_EDIT_FRAME::ExportFootprintsToLibrary(), and s_PcbEditFrame.
bool ExportSpecctraDSN | ( | BOARD * | aBoard, |
wxString & | aFullFilename | ||
) |
Will export the BOARD to a specctra dsn file.
Unlike first overload doesn't need a valid PCB_EDIT_FRAME set and can be used in a standalone python script.
See http://www.autotraxeda.com/docs/SPECCTRA/SPECCTRA.pdf for the specification.
Definition at line 397 of file pcbnew_scripting_helpers.cpp.
References DSN::ExportBoardToSpecctraFile().
bool ExportSpecctraDSN | ( | wxString & | aFullFilename | ) |
Will export the current BOARD to a specctra dsn file.
See http://www.autotraxeda.com/docs/SPECCTRA/SPECCTRA.pdf for the specification.
Definition at line 383 of file pcbnew_scripting_helpers.cpp.
References PCB_EDIT_FRAME::ExportSpecctraFile(), and s_PcbEditFrame.
bool ExportVRML | ( | const wxString & | aFullFileName, |
double | aMMtoWRMLunit, | ||
bool | aIncludeUnspecified, | ||
bool | aIncludeDNP, | ||
bool | aExport3DFiles, | ||
bool | aUseRelativePaths, | ||
const wxString & | a3D_Subdir, | ||
double | aXRef, | ||
double | aYRef | ||
) |
Export the current BOARD to a VRML (wrl) file.
See ExportVRML_File in pcb_edit_frame.h for detailed documentation.
Definition at line 412 of file pcbnew_scripting_helpers.cpp.
References PCB_EDIT_FRAME::ExportVRML_File(), and s_PcbEditFrame.
void FocusOnItem | ( | BOARD_ITEM * | aItem, |
PCB_LAYER_ID | aLayer = UNDEFINED_LAYER |
||
) |
Focus the view on the target item.
aItem | is the target board item. |
aLayer | is the layer ID of the target item. |
Definition at line 514 of file pcbnew_scripting_helpers.cpp.
References PCB_BASE_FRAME::FocusOnItem(), and s_PcbEditFrame.
BOARD * GetBoard | ( | ) |
Definition at line 68 of file pcbnew_scripting_helpers.cpp.
References PCB_BASE_FRAME::GetBoard(), and s_PcbEditFrame.
Referenced by ZONE_FILLER_TOOL::CheckAllZones(), DISPLAY_FOOTPRINTS_FRAME::DISPLAY_FOOTPRINTS_FRAME(), PCBEXPR_LAYER_VALUE::EqualTo(), EVT_GRID_CMD_CELL_CHANGED(), EVT_TOOL_RANGE(), EDIT_TOOL::FilletTracks(), FOOTPRINT_EDIT_FRAME::FOOTPRINT_EDIT_FRAME(), GetFootprintLibraryTable(), PCB_DRAW_PANEL_GAL::GetMsgPanelInfo(), API_HANDLER_PCB::handleGetTextExtents(), PCB_FIELDS_GRID_TABLE::PCB_FIELDS_GRID_TABLE(), PCB_EDIT_FRAME::RecreateBOMFileFromBoard(), ROUTER_TOOL::SelectCopperLayerPair(), GLOBAL_EDIT_TOOL::SwapLayers(), and PCB_PROPERTIES_PANEL::UpdateData().
std::deque< BOARD_ITEM * > GetCurrentSelection | ( | ) |
Get the list of selected objects.
Definition at line 496 of file pcbnew_scripting_helpers.cpp.
References SELECTION::begin(), SELECTION::end(), PCB_EDIT_FRAME::GetCurrentSelection(), and s_PcbEditFrame.
Referenced by UNIT_SELECTOR_LEN::GetUnitScale(), UNIT_SELECTOR_THICKNESS::GetUnitScale(), UNIT_SELECTOR_FREQUENCY::GetUnitScale(), UNIT_SELECTOR_ANGLE::GetUnitScale(), UNIT_SELECTOR_RESISTOR::GetUnitScale(), UNIT_SELECTOR_LINEAR_RESISTANCE::GetUnitScale(), UNIT_SELECTOR_LEN_CABLE::GetUnitScale(), UNIT_SELECTOR_VOLTAGE::GetUnitScale(), UNIT_SELECTOR_POWER::GetUnitScale(), UNIT_SELECTOR_SPEED::GetUnitScale(), UNIT_SELECTOR_TIME::GetUnitScale(), and PANEL_SETUP_LAYERS::TransferDataFromWindow().
PROJECT * GetDefaultProject | ( | ) |
Definition at line 128 of file pcbnew_scripting_helpers.cpp.
References dummy, SETTINGS_MANAGER::GetProject(), GetSettingsManager(), SETTINGS_MANAGER::LoadProject(), and project.
Referenced by CreateEmptyBoard(), and LoadBoard().
wxArrayString GetFootprintLibraries | ( | ) |
Get the nicknames of all of the footprint libraries configured in pcbnew in both the project and global library tables.
Definition at line 352 of file pcbnew_scripting_helpers.cpp.
References GetFootprintLibraryTable(), LIB_TABLE::GetLogicalLibs(), and name.
FP_LIB_TABLE * GetFootprintLibraryTable | ( | ) |
Definition at line 336 of file pcbnew_scripting_helpers.cpp.
References GetBoard(), BOARD::GetProject(), PROJECT_PCB::PcbFootprintLibs(), and project.
Referenced by GetFootprintLibraries(), and GetFootprints().
wxArrayString GetFootprints | ( | const wxString & | aNickName | ) |
Get the names of all of the footprints available in a footprint library.
aNickName | is the nickname specifying which footprint library to fetch from. |
Definition at line 368 of file pcbnew_scripting_helpers.cpp.
References FP_LIB_TABLE::FootprintEnumerate(), and GetFootprintLibraryTable().
wxString GetLanguage | ( | ) |
Get the language string from COMMON_SETTINGS.
Definition at line 670 of file pcbnew_scripting_helpers.cpp.
References SETTINGS_MANAGER::GetCommonSettings(), GetSettingsManager(), COMMON_SETTINGS::SYSTEM::language, COMMON_SETTINGS::m_System, and s_PcbEditFrame.
SETTINGS_MANAGER * GetSettingsManager | ( | ) |
Definition at line 108 of file pcbnew_scripting_helpers.cpp.
References EDA_BASE_FRAME::GetSettingsManager(), ignore_unused(), s_PcbEditFrame, and s_SettingsManager.
Referenced by PANEL_COLOR_SETTINGS::createThemeList(), PCB_EDIT_FRAME::doAutoSave(), FOOTPRINT_EDIT_FRAME::doCloseWindow(), PCB_EDIT_FRAME::Files_io_from_id(), PANEL_FOOTPRINT_CHOOSER::FinishSetup(), GetDefaultProject(), GetLanguage(), LoadBoard(), FOOTPRINT_EDITOR_SETTINGS::migrateSchema0to1(), NewBoard(), PCB_EDIT_FRAME::OnExportSTEP(), PGM_SINGLE_TOP::OnPgmInit(), PCB_EDIT_FRAME::OpenProjectFiles(), PROJECT::PinLibrary(), SaveBoard(), PCB_EDIT_FRAME::SavePcbCopy(), PCB_EDIT_FRAME::SavePcbFile(), PCB_EDIT_FRAME::SaveProjectLocalSettings(), SCH_PREVIEW_PANEL::SCH_PREVIEW_PANEL(), DIALOG_LIB_SYMBOL_PROPERTIES::TransferDataToWindow(), DIALOG_PRINT_USING_PRINTER::TransferDataToWindow(), PANEL_PL_EDITOR_COLOR_SETTINGS::TransferDataToWindow(), and PROJECT::UnpinLibrary().
int GetUserUnits | ( | ) |
Return the currently selected user unit value for the interface.
Definition at line 487 of file pcbnew_scripting_helpers.cpp.
References UNITS_PROVIDER::GetUserUnits(), and s_PcbEditFrame.
Referenced by DRAWING_TOOL::drawArc(), DRAWING_TOOL::drawShape(), PCB_EDIT_FRAME::GenFootprintsReport(), SCH_EDIT_FRAME::SaveSettings(), and PCB_EDIT_FRAME::UpdateViaSizeSelectBox().
bool ImportSpecctraSES | ( | BOARD * | aBoard, |
wxString & | aFullFilename | ||
) |
Import a specctra *.ses file and use it to relocate MODULEs and to replace all vias and Unlike first overload doesn't need a valid PCB_EDIT_FRAME set and can be used in a standalone python script.
See http://www.autotraxeda.com/docs/SPECCTRA/SPECCTRA.pdf for the specification.
Definition at line 443 of file pcbnew_scripting_helpers.cpp.
References DSN::ImportSpecctraSession().
bool ImportSpecctraSES | ( | wxString & | aFullFilename | ) |
Import a specctra *.ses file and use it to relocate MODULEs and to replace all vias and tracks in an existing and loaded BOARD.
See http://www.autotraxeda.com/docs/SPECCTRA/SPECCTRA.pdf for the specification.
Definition at line 430 of file pcbnew_scripting_helpers.cpp.
References PCB_EDIT_FRAME::ImportSpecctraSession(), and s_PcbEditFrame.
bool IsActionRunning | ( | ) |
Are we currently in an action plugin?
Definition at line 523 of file pcbnew_scripting_helpers.cpp.
References ACTION_PLUGINS::IsActionRunning().
BOARD * LoadBoard | ( | wxString & | aFileName | ) |
Loads a board from file This function identifies the file type by extension and determines the correct file io to use.
This function does not set the board project as the active one
Definition at line 102 of file pcbnew_scripting_helpers.cpp.
References LoadBoard().
BOARD * LoadBoard | ( | wxString & | aFileName, |
bool | aSetActive | ||
) |
Loads a board from file This function identifies the file type by extension and determines the correct file io to use.
Hidden from SWIG as aSetActive should not be used by python, but cli also leverages this function
Definition at line 90 of file pcbnew_scripting_helpers.cpp.
References PCB_IO_MGR::KICAD_SEXP, FILEEXT::KiCadPcbFileExtension, PCB_IO_MGR::LEGACY, FILEEXT::LegacyPcbFileExtension, and LoadBoard().
Referenced by PCBNEW_JOBS_HANDLER::JobExportDrc(), PCBNEW_JOBS_HANDLER::JobExportDrill(), PCBNEW_JOBS_HANDLER::JobExportDxf(), PCBNEW_JOBS_HANDLER::JobExportGerber(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), PCBNEW_JOBS_HANDLER::JobExportIpc2581(), PCBNEW_JOBS_HANDLER::JobExportPdf(), PCBNEW_JOBS_HANDLER::JobExportPos(), PCBNEW_JOBS_HANDLER::JobExportRender(), PCBNEW_JOBS_HANDLER::JobExportStep(), PCBNEW_JOBS_HANDLER::JobExportSvg(), and LoadBoard().
BOARD * LoadBoard | ( | wxString & | aFileName, |
PCB_IO_MGR::PCB_FILE_T | aFormat | ||
) |
Loads a board from file using the specified file io handler.
This function does not set the board project as the active one
Definition at line 145 of file pcbnew_scripting_helpers.cpp.
References LoadBoard().
BOARD * LoadBoard | ( | wxString & | aFileName, |
PCB_IO_MGR::PCB_FILE_T | aFormat, | ||
bool | aSetActive | ||
) |
Loads a board from file using the specified file io handler.
Hidden from SWIG as aSetActive should not be used by python, but cli also leverages this function
Definition at line 150 of file pcbnew_scripting_helpers.cpp.
References _, BOARD::Add(), LSET::AllLayersMask(), BOARD::BuildConnectivity(), BOARD::BuildListOfNets(), ENUM_MAP< T >::Choices(), FILEEXT::DesignRulesFileExtension, dummy, GAL_LAYER_ID_BITMASK_END, GAL_LAYER_INDEX, PCB_BASE_FRAME::GetBoard(), GetDefaultProject(), BOARD::GetDesignSettings(), BOARD::GetEmbeddedFiles(), BOARD::GetLayerName(), SETTINGS_MANAGER::GetProject(), GetSettingsManager(), DS_DATA_MODEL::GetTheInstance(), ENUM_MAP< T >::Instance(), PCB_IO_MGR::Load(), SETTINGS_MANAGER::LoadProject(), BASE_SCREEN::m_DrawingSheetFileName, BOARD_DESIGN_SETTINGS::m_DRCEngine, BOARD::m_LegacyVisibleItems, BOARD::m_LegacyVisibleLayers, ENUM_MAP< T >::Map(), LSET::Name(), Pgm(), Prj(), project, FILEEXT::ProjectFileExtension, Rescue, BOARD::ResolveDRCExclusions(), FILENAME_RESOLVER::ResolvePath(), resolver, s_PcbEditFrame, FILENAME_RESOLVER::SetProgramBase(), FILENAME_RESOLVER::SetProject(), BOARD::SetProject(), BOARD::SynchronizeNetsAndNetClasses(), BASE_SET::test(), ENUM_MAP< T >::Undefined(), UNDEFINED_LAYER, and BOARD::UpdateUserUnits().
BOARD * NewBoard | ( | wxString & | aFileName | ) |
Creates a new board and project with the given filename (will overwrite existing files!)
aFileName | is the filename (including full path if desired) of the kicad_pcb to create |
Definition at line 257 of file pcbnew_scripting_helpers.cpp.
References dummy, BOARD::GetDesignSettings(), SETTINGS_MANAGER::GetProject(), GetSettingsManager(), SETTINGS_MANAGER::LoadProject(), BOARD_DESIGN_SETTINGS::m_DRCEngine, project, FILEEXT::ProjectFileExtension, SaveBoard(), and BOARD::SetProject().
void Refresh | ( | ) |
Update the board display after modifying it by a python script (note: it is automatically called by action plugins, after running the plugin, so call this function is usually not needed inside action plugins.
Could be deprecated because modifying a board (especially deleting items) outside a action plugin can crash Pcbnew.
Definition at line 471 of file pcbnew_scripting_helpers.cpp.
References PCB_EDIT_FRAME::RebuildAndRefresh(), and s_PcbEditFrame.
Referenced by PANEL_ZONE_GAL::ActivateSelectedZone(), EDA_MSG_PANEL::AppendMessage(), BITMAP_BUTTON::Check(), EDA_3D_MODEL_VIEWER::Clear3DModel(), ACTION_TOOLBAR::doSelectAction(), SYMBOL_EDIT_FRAME::emptyScreen(), BITMAP_BUTTON::Enable(), SPLIT_BUTTON::Enable(), STD_BITMAP_BUTTON::Enable(), KIGFX::CAIRO_GAL::EndDrawing(), EDA_MSG_PANEL::EraseMsgBox(), FOOTPRINT_PREVIEW_PANEL::fitToCurrentFootprint(), PCB_EDIT_FRAME::ImportSpecctraSession(), ACTION_TOOLBAR::KiRealize(), SYMBOL_EDIT_FRAME::LoadOneLibrarySymbolAux(), PANEL_RF_ATTENUATORS::OnAttenuatorSelection(), APPEARANCE_CONTROLS::OnBoardChanged(), PCB_EDIT_FRAME::onBoardLoaded(), SEARCH_PANE_LISTVIEW::OnColClicked(), WX_COLLAPSIBLE_PANE_HEADER::onEnterWindow(), EDA_3D_CANVAS::OnEvent(), EDA_DRAW_PANEL_GAL::OnEvent(), BITMAP2CMP_FRAME::OnFileHistory(), WX_COLLAPSIBLE_PANE_HEADER::onFocus(), EDA_DRAW_PANEL_GAL::onIdle(), BITMAP_BUTTON::OnKillFocus(), SPLIT_BUTTON::OnKillFocus(), STD_BITMAP_BUTTON::OnKillFocus(), APPEARANCE_CONTROLS::OnLanguageChanged(), APPEARANCE_CONTROLS::OnLayerChanged(), PANEL_ZONE_GAL::OnLayerSelected(), PANEL_SETUP_BOARD_STACKUP::OnLayersOptionsChanged(), WX_COLLAPSIBLE_PANE_HEADER::onLeaveWindow(), BITMAP_BUTTON::OnLeftButtonDown(), SPLIT_BUTTON::OnLeftButtonDown(), STD_BITMAP_BUTTON::OnLeftButtonDown(), BITMAP_BUTTON::OnLeftButtonUp(), SPLIT_BUTTON::OnLeftButtonUp(), STD_BITMAP_BUTTON::OnLeftButtonUp(), BITMAP2CMP_FRAME::OnLoadFile(), BITMAP_BUTTON::OnMouseEnter(), SPLIT_BUTTON::OnMouseEnter(), STD_BITMAP_BUTTON::OnMouseEnter(), BITMAP_BUTTON::OnMouseLeave(), SPLIT_BUTTON::OnMouseLeave(), STD_BITMAP_BUTTON::OnMouseLeave(), EDA_3D_MODEL_VIEWER::OnMouseMove(), EDA_3D_MODEL_VIEWER::OnMouseWheel(), BITMAP2CMP_PANEL::OnNegativeClicked(), DIALOG_TEMPLATE_SELECTOR::onNotebookResize(), EDA_3D_CANVAS::OnRefreshRequest(), LAYERS_MAP_DIALOG::OnResetClick(), LAYERS_MAP_DIALOG::OnSelectLayer(), BITMAP_BUTTON::OnSetFocus(), PANEL_PACKAGES_VIEW::OnSizeInfoBox(), SPLIT_BUTTON::onThemeChanged(), STD_BITMAP_BUTTON::onThemeChanged(), BITMAP2CMP_PANEL::OnThresholdChange(), PANEL_TRANSLINE::OnTransLineResetButtonClick(), PANEL_TRANSLINE::OnTranslineSelection(), APPEARANCE_CONTROLS_3D::rebuildControls(), ACTION_TOOLBAR::RefreshBitmaps(), PANEL_REGULATOR::RegulatorPageUpdate(), DIALOG_JUNCTION_PROPS::resetDefaults(), DIALOG_LINE_PROPERTIES::resetDefaults(), DIALOG_WIRE_BUS_PROPERTIES::resetDefaults(), TEMPLATE_WIDGET::Select(), EDA_3D_MODEL_VIEWER::Set3DModel(), WX_COLLAPSIBLE_PANE_HEADER::SetCollapsed(), SPLIT_BUTTON::SetLabel(), EDA_MSG_PANEL::SetMessage(), KISTATUSBAR::SetNotificationCount(), PANEL_PACKAGE::SetSelected(), FOOTPRINTS_LISTBOX::SetSelection(), LIBRARY_LISTBOX::SetSelection(), BITMAP2CMP_FRAME::ShowChangedLanguage(), PCB_CALCULATOR_FRAME::ShowChangedLanguage(), SCH_DRAW_PANEL::SwitchBackend(), PANEL_COLOR_CODE::ThemeChanged(), PANEL_RF_ATTENUATORS::ThemeChanged(), SYMBOL_EDIT_FRAME::ToggleLibraryTree(), SYMBOL_EDIT_FRAME::ToggleProperties(), PANEL_COLOR_CODE::ToleranceSelection(), TEMPLATE_WIDGET::Unselect(), mpWindow::UpdateAll(), KIGFX::CAIRO_GAL::updatedGalDisplayOptions(), KIGFX::OPENGL_GAL::updatedGalDisplayOptions(), DIALOG_PAGES_SETTINGS::UpdateDrawingSheetExample(), NUMBER_BADGE::UpdateNumber(), and PANEL_ZONE_GAL::ZoomFitScreen().
bool SaveBoard | ( | wxString & | aFileName, |
BOARD * | aBoard, | ||
bool | aSkipSettings = false |
||
) |
Saves a copy of the given board and its associated project to the given path.
Boards can only be saved in KiCad native format.
aFileName | is the full path to save a copy to. |
aBoard | is a pointer to a loaded BOARD to save. |
aSkipSettings | if true, only save the board file. This will lose settings changes that are saved in the project file |
Definition at line 330 of file pcbnew_scripting_helpers.cpp.
References PCB_IO_MGR::KICAD_SEXP, and SaveBoard().
bool SaveBoard | ( | wxString & | aFileName, |
BOARD * | aBoard, | ||
PCB_IO_MGR::PCB_FILE_T | aFormat, | ||
bool | aSkipSettings | ||
) |
Definition at line 299 of file pcbnew_scripting_helpers.cpp.
References BOARD::BuildConnectivity(), dummy, BOARD::GetProject(), GetSettingsManager(), FILEEXT::ProjectFileExtension, PCB_IO_MGR::Save(), SETTINGS_MANAGER::SaveProjectAs(), and BOARD::SynchronizeNetsAndNetClasses().
Referenced by NewBoard(), and SaveBoard().
void ScriptingOnDestructPcbEditFrame | ( | PCB_EDIT_FRAME * | aPcbEditFrame | ) |
Definition at line 83 of file pcbnew_scripting_helpers.cpp.
References s_PcbEditFrame.
Referenced by PCB_EDIT_FRAME::~PCB_EDIT_FRAME().
void ScriptingSetPcbEditFrame | ( | PCB_EDIT_FRAME * | aPcbEditFrame | ) |
Definition at line 77 of file pcbnew_scripting_helpers.cpp.
References s_PcbEditFrame.
Referenced by PCB::IFACE::CreateKiWindow().
void UpdateUserInterface | ( | ) |
Update the layer manager and other widgets from the board setup (layer and items visibility, colors ...) (note: it is automatically called by action plugins, after running the plugin, so call this function is usually not needed inside action plugins.
Definition at line 480 of file pcbnew_scripting_helpers.cpp.
References s_PcbEditFrame, and PCB_EDIT_FRAME::UpdateUserInterface().
bool WriteDRCReport | ( | BOARD * | aBoard, |
const wxString & | aFileName, | ||
EDA_UNITS | aUnits, | ||
bool | aReportAllTrackErrors | ||
) |
Run the DRC check on the given board and writes the results to a report file.
Requires that the project for the board be loaded, and note that unlike the DRC dialog this does not attempt to fill zones, so zones must be valid before calling.
aBoard | is a valid loaded board. |
aFileName | is the full path and name of the report file to write. |
aUnits | is the units to use in the report. |
aReportAllTrackErrors | controls whether all errors or just the first error is reported for each track. |
Definition at line 529 of file pcbnew_scripting_helpers.cpp.
References PROJECT::AbsolutePath(), LSET::AllLayersMask(), ENUM_MAP< T >::Choices(), LIB_TABLE::Clear(), BOARD::DeleteMARKERs(), FILEEXT::DesignRulesFileExtension, DRCE_DUPLICATE_FOOTPRINT, DRCE_EXTRA_FOOTPRINT, DRCE_MISSING_FOOTPRINT, DRCE_NET_CONFLICT, DRCE_SCHEMATIC_PARITY_ISSUES, DRCE_UNCONNECTED_ITEMS, BOARD::FillItemMap(), BOARD::GetDesignSettings(), BOARD::GetFileName(), FP_LIB_TABLE::GetGlobalTableFileName(), BOARD::GetLayerName(), BOARD::GetProject(), BOARD_DESIGN_SETTINGS::GetSeverity(), GFootprintTable, ENUM_MAP< T >::Instance(), LIB_TABLE::Load(), BOARD_DESIGN_SETTINGS::m_DRCEngine, ENUM_MAP< T >::Map(), LSET::Name(), pcbIUScale, SETTINGS_MANAGER::Prj(), BOARD::RecordDRCExclusions(), BOARD::ResolveDRCExclusions(), s_SettingsManager, TO_UTF8, ENUM_MAP< T >::Undefined(), UNDEFINED_LAYER, and IO_ERROR::What().
|
static |
Definition at line 64 of file pcbnew_scripting_helpers.cpp.
Referenced by CreateEmptyBoard(), ExportFootprintsToLibrary(), ExportSpecctraDSN(), ExportVRML(), FocusOnItem(), GetBoard(), GetCurrentSelection(), GetLanguage(), GetSettingsManager(), GetUserUnits(), ImportSpecctraSES(), LoadBoard(), Refresh(), ScriptingOnDestructPcbEditFrame(), ScriptingSetPcbEditFrame(), and UpdateUserInterface().
|
static |
Definition at line 65 of file pcbnew_scripting_helpers.cpp.
Referenced by GetSettingsManager(), and WriteDRCReport().