KiCad PCB EDA Suite
Loading...
Searching...
No Matches
pgm_base.h File Reference

see class PGM_BASE More...

#include <exception>
#include <map>
#include <vector>
#include <memory>
#include <search_stack.h>
#include <settings/environment.h>
#include <wx/filename.h>
#include <wx/snglinst.h>

Go to the source code of this file.

Classes

struct  LANGUAGE_DESCR
 A small class to handle the list of existing translations. More...
 
class  PGM_BASE
 Container for data for KiCad programs. More...
 

Functions

PGM_BASEPgm ()
 The global Program "get" accessor. More...
 
PGM_BASEPgmOrNull ()
 similar to PGM_BASE& Pgm(), but return a reference that can be nullptr when running a shared lib from a script, not from a kicad appl More...
 

Variables

LANGUAGE_DESCR LanguagesList []
 An array containing all the languages that KiCad supports. More...
 

Detailed Description

see class PGM_BASE

Definition in file pgm_base.h.

Function Documentation

◆ Pgm()

PGM_BASE & Pgm ( )

The global Program "get" accessor.

Implemented in: 1) common/single_top.cpp, 2) kicad/kicad.cpp, and 3) scripting/kiway.i

Definition at line 119 of file single_top.cpp.

References process, and program.

Referenced by ACTION_TOOLBAR_PALETTE::AddAction(), KIUI::AddBitmapToMenuItem(), SYMBOL_TREE_MODEL_ADAPTER::AddLibraries(), FP_TREE_MODEL_ADAPTER::AddLibraries(), SYMBOL_LIBRARY_MANAGER::addLibrary(), PCB_BASE_EDIT_FRAME::AddLibrary(), SYMBOL_EDIT_FRAME::addLibTableEntry(), DIALOG_NET_INSPECTOR::adjustListColumns(), PANEL_DATA_COLLECTION::applySettingsToPanel(), BOOST_AUTO_TEST_CASE(), BOOST_FIXTURE_TEST_CASE(), PANEL_FP_LIB_TABLE::browseLibrariesHandler(), PANEL_SYM_LIB_TABLE::browseLibrariesHandler(), buildKicadAboutBanner(), CVPCB_MAINFRAME::BuildLibrariesList(), DIALOG_NET_INSPECTOR::buildNetsList(), EDA_BASE_FRAME::CheckForAutoSaveFile(), SCH_EDIT_FRAME::CheckForAutoSaveFile(), UPDATE_MANAGER::CheckForUpdate(), PROJECT_PCB::Cleanup3DCache(), KICAD_MANAGER_FRAME::CloseProject(), EDA_BASE_FRAME::commonInit(), TOOLS_HOLDER::CommonSettingsChanged(), EDA_3D_VIEWER_FRAME::CommonSettingsChanged(), SCH_EDIT_FRAME::CommonSettingsChanged(), SYMBOL_VIEWER_FRAME::CommonSettingsChanged(), GERBVIEW_FRAME::CommonSettingsChanged(), EDA_BASE_FRAME::CommonSettingsChanged(), EDA_DRAW_FRAME::CommonSettingsChanged(), KICAD_MANAGER_FRAME::CommonSettingsChanged(), PL_EDITOR_FRAME::CommonSettingsChanged(), FOOTPRINT_EDIT_FRAME::CommonSettingsChanged(), FOOTPRINT_EDIT_FRAME::config(), PANEL_SYMBOL_CHOOSER::constructRightPanel(), PCB_CONTROL::ContrastModeFeedback(), BMP2CMP::IFACE::CreateKiWindow(), PCB::IFACE::CreateKiWindow(), KICAD_MANAGER_FRAME::CreateNewProject(), KICAD_MANAGER_FRAME::CreatePCM(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), PANEL_COLOR_SETTINGS::createThemeList(), PCB_TEST_FRAME_BASE::createView(), EDA_BASE_FRAME::DeleteAutoSaveFile(), SCH_EDIT_FRAME::DeleteAutoSaveFile(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), DIALOG_FOOTPRINT_WIZARD_LIST::DIALOG_FOOTPRINT_WIZARD_LIST(), DIALOG_NET_INSPECTOR::DIALOG_NET_INSPECTOR(), DIALOG_SHIM::DIALOG_SHIM(), KICAD_MANAGER_FRAME::doCloseWindow(), SYMBOL_EDITOR_DRAWING_TOOLS::doDrawShape(), SCH_MOVE_TOOL::doMoveSelection(), EDA_DRAW_PANEL_GAL::DoRePaint(), GRID_CELL_LAYER_RENDERER::Draw(), drawShapes(), KIWAY::dso_search_path(), EDA_3D_MODEL_VIEWER::EDA_3D_MODEL_VIEWER(), EDA_DRAW_PANEL_GAL::EDA_DRAW_PANEL_GAL(), ElectricalPinTypeGetText(), BIN_MOD::End(), EVT_MENU_RANGE(), EVT_TOOL_RANGE(), EVT_UPDATE_UI_RANGE(), KICAD_MANAGER_CONTROL::Execute(), EXPORTER_STEP::EXPORTER_STEP(), APP_SINGLE_TOP::FilterEvent(), APP_KICAD::FilterEvent(), FindKicadFile(), PANEL_FOOTPRINT_CHOOSER::FinishSetup(), FONT_CHOICE::FONT_CHOICE(), PCB_IO_KICAD_SEXPR::FootprintSave(), GERBVIEW_DRAW_PANEL_GAL::GERBVIEW_DRAW_PANEL_GAL(), GERBVIEW_FRAME::GERBVIEW_FRAME(), PROJECT_PCB::Get3DCacheManager(), PCB_EDITOR_CONDITIONS::get45degModeFunc(), PCB_EDIT_FRAME::GetActionPluginButtonVisible(), EDA_BASE_FRAME::GetAutoSaveInterval(), LIB_PIN::GetBoundingBox(), SCH_MARKER::getColor(), PCB_MARKER::getColor(), FOOTPRINT_CHOOSER_FRAME::GetColorSettings(), EDA_DRAW_FRAME::GetColorSettings(), DISPLAY_FOOTPRINTS_FRAME::GetColorSettings(), SCH_BASE_FRAME::GetColorSettings(), SYMBOL_EDIT_FRAME::GetColorSettings(), GERBVIEW_FRAME::GetColorSettings(), FOOTPRINT_EDIT_FRAME::GetColorSettings(), FOOTPRINT_VIEWER_FRAME::GetColorSettings(), FOOTPRINT_WIZARD_FRAME::GetColorSettings(), PCB_BASE_EDIT_FRAME::GetColorSettings(), LIB_ITEM::GetDefaultFont(), SCH_ITEM::GetDefaultFont(), EDA_TEXT::GetFontIndex(), PCB_BASE_FRAME::GetFootprintEditorSettings(), getGUIFont(), GetLastPinLength(), GetLastPinNameSize(), GetLastPinNumSize(), PCB_LAYER_BOX_SELECTOR::getLayerColor(), GetLayerColor(), BOARD_ADAPTER::GetLayerColors(), DISPLAY_FOOTPRINTS_FRAME::GetMagneticItemsSettings(), PCB_EDIT_FRAME::GetOrderedActionPlugins(), PCB_BASE_FRAME::GetPcbNewSettings(), KICAD_MANAGER_FRAME::GetProjectFileName(), FOOTPRINT_EDIT_FRAME::GetSettings(), WX_AUI_TOOLBAR_ART::GetToolSize(), EDA_DRAW_PANEL_GAL::GetVcSettings(), PCB_BASE_FRAME::GetViewerSettingsBase(), DISPLAY_FOOTPRINTS_FRAME::GetViewerSettingsBase(), DISPLAY_FOOTPRINTS_FRAME::GetWindowSettings(), SCH_EDITOR_CONTROL::GridFeedback(), gvconfig(), HandleJob(), IfaceOrAddress(), init_unit_test(), FIELDS_GRID_TABLE< T >::initGrid(), EESCHEMA_JOBS_HANDLER::InitRenderSettings(), PCB_TOOL_BASE::Is45Limited(), KIUI::IsModalDialogFocused(), PCBNEW_JOBS_HANDLER::JobExportPdf(), EESCHEMA_JOBS_HANDLER::JobSymExportSvg(), KIWAY::KiFACE(), LIB_TREE_NODE_UNIT::LIB_TREE_NODE_UNIT(), SETTINGS_MANAGER::loadAllColorSettings(), KIGFX::PCB_RENDER_SETTINGS::LoadColors(), EDA_3D_VIEWER_FRAME::loadCommonSettings(), PANEL_EESCHEMA_EDITING_OPTIONS::loadEEschemaSettings(), SCH::IFACE::loadGlobalLibTable(), PCB::IFACE::loadGlobalLibTable(), FP_LIB_TABLE::LoadGlobalTable(), SYMBOL_LIB_TABLE::LoadGlobalTable(), loadKicadProject(), KICAD_MANAGER_FRAME::LoadProject(), PANEL_PREVIEW_3D_MODEL::loadSettings(), PCB_TEST_FRAME_BASE::LoadSettings(), KIGFX::WX_VIEW_CONTROLS::LoadSettings(), EDA_BASE_FRAME::LoadSettings(), EDA_3D_VIEWER_FRAME::LoadSettings(), SYMBOL_VIEWER_FRAME::LoadSettings(), EDA_DRAW_FRAME::LoadSettings(), FOOTPRINT_VIEWER_FRAME::LoadSettings(), EDA_BASE_FRAME::LoadWindowState(), EDA_DRAW_FRAME::LockFile(), main(), PCB_VIEWER_TOOLS::MeasureTool(), APP_SETTINGS_BASE::MigrateFromLegacy(), EESCHEMA_SETTINGS::MigrateFromLegacy(), GERBVIEW_SETTINGS::MigrateFromLegacy(), FOOTPRINT_EDITOR_SETTINGS::MigrateFromLegacy(), PCBNEW_SETTINGS::MigrateFromLegacy(), FOOTPRINT_EDITOR_SETTINGS::migrateSchema0to1(), FOOTPRINT_PREVIEW_PANEL::New(), KICAD_MANAGER_CONTROL::NewFromTemplate(), SIMULATOR_FRAME_UI::NewSimTab(), KISTATUSBAR::onBackgroundProgressClick(), NETLIST_DIALOG_ADD_GENERATOR::OnBrowseGenerators(), TEXT_BUTTON_FILE_BROWSER::OnButtonClick(), PANEL_SYM_LIB_TABLE::onConvertLegacyLibraries(), LIB_TREE::onDetailsLink(), PANEL_PACKAGES_VIEW::OnDownloadVersionClicked(), DIALOG_CONFIG_EQUFILES::OnEditEquFile(), DIALOG_BOM::OnEditGenerator(), PROJECT_TREE_PANE::onGitCommit(), DIALOG_CONFIGURE_PATHS::OnGridCellChanging(), KICAD_MANAGER_FRAME::OnIdle(), APP_SINGLE_TOP::OnInit(), DIALOG_PCM::OnManageRepositoriesClicked(), PANEL_FP_LIB_TABLE::onMigrateLibraries(), KISTATUSBAR::onNotificationsIconClick(), DIALOG_CONFIG_EQUFILES::OnOkClick(), KICAD_MANAGER_FRAME::OnOpenFileInTextEditor(), PROJECT_TREE_PANE::onOpenSelectedFileWithTextEditor(), BITMAP_BUTTON::OnPaint(), PANEL_COMMON_SETTINGS::OnPDFViewerClick(), DIALOG_PRINT_GENERIC::onPrintButtonClick(), PANEL_DATA_COLLECTION::OnResetIdClick(), APP_SINGLE_TOP::OnRun(), APP_KICAD::OnRun(), APP_KICAD_CLI::OnRun(), PANEL_COMMON_SETTINGS::OnTextEditorClick(), PANEL_COLOR_SETTINGS::OnThemeChanged(), DIALOG_PAGES_SETTINGS::OnWksFileSelection(), OpenPDF(), SCH_EDIT_FRAME::OpenProjectFiles(), PCB_EDIT_FRAME::OpenProjectFiles(), PANEL_EESCHEMA_COLOR_SETTINGS::PANEL_EESCHEMA_COLOR_SETTINGS(), PANEL_FP_EDITOR_COLOR_SETTINGS::PANEL_FP_EDITOR_COLOR_SETTINGS(), PANEL_FP_LIB_TABLE::PANEL_FP_LIB_TABLE(), PANEL_FP_PROPERTIES_3D_MODEL::PANEL_FP_PROPERTIES_3D_MODEL(), PANEL_GERBVIEW_COLOR_SETTINGS::PANEL_GERBVIEW_COLOR_SETTINGS(), PANEL_GERBVIEW_DISPLAY_OPTIONS::PANEL_GERBVIEW_DISPLAY_OPTIONS(), PANEL_PCBNEW_COLOR_SETTINGS::PANEL_PCBNEW_COLOR_SETTINGS(), PANEL_SETUP_NETCLASSES::PANEL_SETUP_NETCLASSES(), PANEL_SETUP_RULES::PANEL_SETUP_RULES(), PANEL_SYM_LIB_TABLE::PANEL_SYM_LIB_TABLE(), PANEL_SYMBOL_CHOOSER::PANEL_SYMBOL_CHOOSER(), PANEL_TEMPLATE_FIELDNAMES::PANEL_TEMPLATE_FIELDNAMES(), PCB_IO_KICAD_SEXPR_PARSER::parseBOARD_unchecked(), PROJECT::PinLibrary(), PL_DRAW_PANEL_GAL::PL_DRAW_PANEL_GAL(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SCH_DRAWING_TOOLS::PlaceImage(), DRAWING_TOOL::PlaceReferenceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), DRAWING_TOOL::PlaceText(), KIWAY::Player(), KIWAY::PlayerClose(), playground_main_func(), EXPORT_SVG::Plot(), SCH_PLOTTER::Plot(), DIALOG_PLOT::Plot(), SCH_SYMBOL::PlotDNP(), SCH_PRINTOUT::PrintPage(), KIWAY::Prj(), EDA_3D_VIEWER_FRAME::Process_Special_Functions(), EDA_BASE_FRAME::ProcessEvent(), PCB_EDIT_FRAME::PythonSyncEnvironmentVariables(), PLUGIN_CONTENT_MANAGER::ReadEnvVar(), SCH::readSchematicFromFile(), SYMBOL_VIEWER_FRAME::ReCreateLibList(), FOOTPRINT_VIEWER_FRAME::ReCreateLibraryList(), BOARD_ADAPTER::ReloadColorSettings(), EDA_3D_CANVAS::RenderEngineChanged(), SCH_EDIT_TOOL::RepeatDrawItem(), SYMBOL_EDITOR_PIN_TOOL::RepeatPin(), SYMBOL_EDIT_FRAME::replaceLibTableEntry(), PLUGIN_CONTENT_MANAGER::RunBackgroundUpdate(), SAVE_AS_DIALOG::SAVE_AS_DIALOG(), PANEL_COLOR_SETTINGS::saveCurrentTheme(), EDA_BASE_FRAME::SaveSettings(), EDA_3D_VIEWER_FRAME::SaveSettings(), SYMBOL_VIEWER_FRAME::SaveSettings(), GERBVIEW_FRAME::SaveSettings(), SCH_DRAW_PANEL::SCH_DRAW_PANEL(), SCH_PREVIEW_PANEL::SCH_PREVIEW_PANEL(), SCHEMATIC_SETTINGS::SCHEMATIC_SETTINGS(), PROJECT_SCH::SchLibs(), SearchHelpFileFullPath(), PCB_BASE_FRAME::SelectLibrary(), SCH_BASE_FRAME::SelectLibraryFromList(), PCB_TEST_FRAME_BASE::SetBoard(), EDA_TEXT::SetFontIndex(), KIWAY::SetLanguage(), PGM_BASE::SetLanguagePath(), BOARD_ADAPTER::SetLayerColors(), PANEL_PACKAGES_VIEW::SetSashOnIdle(), SetTopFrame(), EDA_BASE_FRAME::setupUIConditions(), PIN_TABLE_DATA_MODEL::SetValue(), COMMON_CONTROL::ShowHelp(), KICAD_MANAGER_CONTROL::ShowPlayer(), KICAD_MANAGER_CONTROL::ShowPluginManager(), EDA_BASE_FRAME::ShowPreferences(), GERBVIEW_INSPECTION_TOOL::ShowSource(), PCB_CONTROL::SnapModeFeedback(), SYMBOL_EDIT_FRAME::SYMBOL_EDIT_FRAME(), SYMBOL_PREVIEW_WIDGET::SYMBOL_PREVIEW_WIDGET(), SYMBOL_TREE_SYNCHRONIZING_ADAPTER::Sync(), FP_TREE_SYNCHRONIZING_ADAPTER::Sync(), SystemDirsAppend(), BITMAP_STORE::ThemeChanged(), EDA_3D_VIEWER_FRAME::ToggleAppearanceManager(), DRAWING_TOOL::ToggleHV45Mode(), PANEL_3D_DISPLAY_OPTIONS::TransferDataFromWindow(), PANEL_3D_OPENGL_OPTIONS::TransferDataFromWindow(), PANEL_3D_RAYTRACING_OPTIONS::TransferDataFromWindow(), PANEL_GIT_REPOS::TransferDataFromWindow(), PANEL_PACKAGES_AND_UPDATES::TransferDataFromWindow(), PANEL_EESCHEMA_ANNOTATION_OPTIONS::TransferDataFromWindow(), PANEL_EESCHEMA_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_EESCHEMA_DISPLAY_OPTIONS::TransferDataFromWindow(), PANEL_EESCHEMA_EDITING_OPTIONS::TransferDataFromWindow(), PANEL_SYM_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_SYM_EDITING_OPTIONS::TransferDataFromWindow(), PANEL_TEMPLATE_FIELDNAMES::TransferDataFromWindow(), DIALOG_PRINT_USING_PRINTER::TransferDataFromWindow(), PANEL_GERBVIEW_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_GERBVIEW_DISPLAY_OPTIONS::TransferDataFromWindow(), PANEL_GERBVIEW_EXCELLON_SETTINGS::TransferDataFromWindow(), DIALOG_CONFIGURE_PATHS::TransferDataFromWindow(), PANEL_COMMON_SETTINGS::TransferDataFromWindow(), PANEL_DATA_COLLECTION::TransferDataFromWindow(), PANEL_MOUSE_SETTINGS::TransferDataFromWindow(), DIALOG_UPDATE_CHECK_PROMPT::TransferDataFromWindow(), PANEL_PL_EDITOR_COLOR_SETTINGS::TransferDataFromWindow(), DIALOG_EXPORT_2581::TransferDataFromWindow(), PANEL_EDIT_OPTIONS::TransferDataFromWindow(), PANEL_FP_EDITOR_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_FP_EDITOR_DEFAULTS::TransferDataFromWindow(), PANEL_PCB_DISPLAY_OPTIONS::TransferDataFromWindow(), PANEL_PCBNEW_COLOR_SETTINGS::TransferDataFromWindow(), PANEL_3D_DISPLAY_OPTIONS::TransferDataToWindow(), PANEL_3D_OPENGL_OPTIONS::TransferDataToWindow(), PANEL_3D_RAYTRACING_OPTIONS::TransferDataToWindow(), PANEL_GIT_REPOS::TransferDataToWindow(), PANEL_PACKAGES_AND_UPDATES::TransferDataToWindow(), PANEL_EESCHEMA_ANNOTATION_OPTIONS::TransferDataToWindow(), PANEL_EESCHEMA_DISPLAY_OPTIONS::TransferDataToWindow(), PANEL_EESCHEMA_EDITING_OPTIONS::TransferDataToWindow(), PANEL_SYM_COLOR_SETTINGS::TransferDataToWindow(), PANEL_SYM_EDITING_OPTIONS::TransferDataToWindow(), DIALOG_PRINT_USING_PRINTER::TransferDataToWindow(), PANEL_GERBVIEW_DISPLAY_OPTIONS::TransferDataToWindow(), PANEL_GERBVIEW_EXCELLON_SETTINGS::TransferDataToWindow(), DIALOG_CONFIGURE_PATHS::TransferDataToWindow(), DIALOG_GLOBAL_LIB_TABLE_CONFIG::TransferDataToWindow(), PANEL_COMMON_SETTINGS::TransferDataToWindow(), PANEL_DATA_COLLECTION::TransferDataToWindow(), PANEL_MOUSE_SETTINGS::TransferDataToWindow(), PANEL_PL_EDITOR_COLOR_SETTINGS::TransferDataToWindow(), DIALOG_EXPORT_2581::TransferDataToWindow(), PANEL_EDIT_OPTIONS::TransferDataToWindow(), PANEL_FP_EDITOR_DEFAULTS::TransferDataToWindow(), PANEL_PCB_DISPLAY_OPTIONS::TransferDataToWindow(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), PCB_CONTROL::unfilledZoneCheck(), PROJECT::UnpinLibrary(), PCB_DRAW_PANEL_GAL::UpdateColors(), SCH_PROPERTIES_PANEL::updateFontList(), PCB_PROPERTIES_PANEL::updateLists(), DRAWING_TOOL::UpdateStatusBar(), KIGFX::PCB_PAINTER::viewer_settings(), PCB_CALCULATOR_DATAFILE::WriteHeader(), NETLIST_EXPORTER_SPICE::writeInclude(), DIALOG_FOOTPRINT_WIZARD_LIST::~DIALOG_FOOTPRINT_WIZARD_LIST(), DIALOG_NET_INSPECTOR::~DIALOG_NET_INSPECTOR(), KICAD_MANAGER_FRAME::~KICAD_MANAGER_FRAME(), PANEL_FOOTPRINT_CHOOSER::~PANEL_FOOTPRINT_CHOOSER(), PANEL_PACKAGES_VIEW::~PANEL_PACKAGES_VIEW(), PANEL_SETUP_NETCLASSES::~PANEL_SETUP_NETCLASSES(), PANEL_SETUP_RULES::~PANEL_SETUP_RULES(), and SYMBOL_EDIT_FRAME::~SYMBOL_EDIT_FRAME().

◆ PgmOrNull()

PGM_BASE * PgmOrNull ( )

similar to PGM_BASE& Pgm(), but return a reference that can be nullptr when running a shared lib from a script, not from a kicad appl

Definition at line 160 of file cvpcb.cpp.

References process, and program.

Referenced by DS_DRAW_ITEM_LIST::BuildFullText(), BOARD::ComputeBoundingBox(), LIB_PIN::LIB_PIN(), KIGFX::PCB_RENDER_SETTINGS::LoadColors(), ACTION_PLUGINS::register_action(), and BOARD_ADAPTER::ReloadColorSettings().

Variable Documentation

◆ LanguagesList

LANGUAGE_DESCR LanguagesList[]
extern

An array containing all the languages that KiCad supports.

Definition at line 88 of file pgm_base.cpp.

Referenced by EDA_BASE_FRAME::AddMenuLanguageList(), KIWAY::SetLanguage(), PGM_BASE::SetLanguage(), PGM_BASE::SetLanguageIdentifier(), and EDA_BASE_FRAME::setupUIConditions().