| 
    KiCad PCB EDA Suite
    
   | 
 
#include <kicommon.h>#include <singleton.h>#include <exception>#include <map>#include <future>#include <vector>#include <memory>#include <search_stack.h>#include <settings/environment.h>#include <wx/filename.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 | |
| KICOMMON_API PGM_BASE & | Pgm () | 
| The global program "get" accessor.   | |
| KICOMMON_API PGM_BASE * | PgmOrNull () | 
| Return a reference that can be nullptr when running a shared lib from a script, not from a kicad app.   | |
| KICOMMON_API void | SetPgm (PGM_BASE *pgm) | 
Variables | |
| KICOMMON_API LANGUAGE_DESCR | LanguagesList [] | 
| An array containing all the languages that KiCad supports.   | |
see class PGM_BASE
Definition in file pgm_base.h.
      
  | 
  extern | 
The global program "get" accessor.
Implemented in:
Definition at line 946 of file pgm_base.cpp.
References process.
Referenced by ACTION_TOOLBAR::Add(), ACTION_TOOLBAR_PALETTE::AddAction(), EDA_DRAW_FRAME::AddApiPluginTools(), KIUI::AddBitmapToMenuItem(), ACTION_TOOLBAR::AddButton(), DESIGN_BLOCK_PANE::AddDesignBlockLibrary(), ACTION_TOOLBAR::AddGroup(), DESIGN_BLOCK_TREE_MODEL_ADAPTER::AddLibraries(), FP_TREE_MODEL_ADAPTER::AddLibraries(), SYMBOL_TREE_MODEL_ADAPTER::AddLibraries(), PCB_BASE_EDIT_FRAME::AddLibrary(), SYMBOL_TREE_MODEL_ADAPTER::AddLibrary(), SYMBOL_LIBRARY_MANAGER::addLibrary(), SYMBOL_EDIT_FRAME::AddLibraryFile(), SYMBOL_EDIT_FRAME::addLibTableEntry(), STARTWIZARD_PROVIDER_PRIVACY::ApplyDefaults(), STARTWIZARD_PROVIDER_SETTINGS::ApplyDefaults(), MULTICHANNEL_TOOL::AutogenerateRuleAreas(), BOOST_AUTO_TEST_CASE(), PANEL_DESIGN_BLOCK_LIB_TABLE::browseLibrariesHandler(), PANEL_FP_LIB_TABLE::browseLibrariesHandler(), PANEL_SYM_LIB_TABLE::browseLibrariesHandler(), PCB_NET_INSPECTOR_PANEL::buildColumns(), buildKicadAboutBanner(), CVPCB_MAINFRAME::BuildLibrariesList(), PCB_NET_INSPECTOR_PANEL::buildNetsList(), STARTWIZARD::CheckAndRun(), UPDATE_MANAGER::CheckForUpdate(), PROJECT_PCB::Cleanup3DCache(), KICAD_MANAGER_FRAME::CloseProject(), LOCAL_HISTORY::CommitSnapshot(), EDA_BASE_FRAME::commonInit(), EDA_BASE_FRAME::CommonSettingsChanged(), EDA_DRAW_FRAME::CommonSettingsChanged(), KICAD_MANAGER_FRAME::CommonSettingsChanged(), TOOLS_HOLDER::CommonSettingsChanged(), KIGFX::GAL::computeWorldScale(), FOOTPRINT_EDIT_FRAME::config(), PCB_EDIT_FRAME::configureToolbars(), SCH_EDIT_FRAME::configureToolbars(), PANEL_SYMBOL_CHOOSER::constructRightPanel(), PCB_CONTROL::ContrastModeFeedback(), LIBRARY_MANAGER::createEmptyTable(), BMP2CMP::IFACE::CreateKiWindow(), KICAD_MANAGER_FRAME::CreateNewProject(), KICAD_MANAGER_FRAME::CreatePCM(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), PANEL_COLOR_SETTINGS::createThemeList(), PCB_TEST_FRAME_BASE::createView(), CVPCB_MAINFRAME::CVPCB_MAINFRAME(), SYMBOL_EDIT_FRAME::DdAddLibrary(), PROJECT::DesignBlockLibs(), DIALOG_EXPORT_STEP::DIALOG_EXPORT_STEP(), DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS(), DIALOG_PLOT_SCHEMATIC::DIALOG_PLOT_SCHEMATIC(), DIALOG_SHIM::DIALOG_SHIM(), PANEL_MAINTENANCE::doClearDialogState(), PANEL_MAINTENANCE::doClearDontShowAgain(), KICAD_MANAGER_FRAME::doCloseWindow(), PCB_EDIT_FRAME::doCloseWindow(), SCH_EDIT_FRAME::doCloseWindow(), CLI::JOBSET_RUN_COMMAND::doPerform(), PLUGINS_GRID_TRICKS::doPopupSelection(), KICAD_MANAGER_FRAME::doReCreateMenuBar(), EDA_3D_CANVAS::DoRePaint(), EDA_DRAW_PANEL_GAL::DoRePaint(), ACTION_TOOLBAR::doSelectAction(), drawShapes(), KIWAY::dso_search_path(), EDA_DRAW_PANEL_GAL::EDA_DRAW_PANEL_GAL(), EDA_TEXT_DESC::EDA_TEXT_DESC(), ElectricalPinTypeGetText(), BIN_MOD::End(), ensureDefaultProjectTemplate(), EVT_MENU_RANGE(), EVT_TOOL_RANGE(), EVT_UPDATE_UI_RANGE(), KICAD_MANAGER_CONTROL::Execute(), EXPORTER_STEP::EXPORTER_STEP(), SYMBOL_EDIT_FRAME::ExportSymbol(), APP_KICAD::FilterEvent(), APP_SINGLE_TOP::FilterEvent(), FindKicadFile(), STARTWIZARD_PROVIDER_PRIVACY::Finish(), STARTWIZARD_PROVIDER_SETTINGS::Finish(), PCB_IO_KICAD_SEXPR::FootprintSave(), GERBVIEW_FRAME::GERBVIEW_FRAME(), PROJECT_PCB::Get3DCacheManager(), EDA_BASE_FRAME::GetAutoSaveInterval(), PCBNEW_JOBS_HANDLER::getBoard(), GetColorSettings(), CURSOR_STORE::GetCursor(), PCB_BASE_FRAME::GetFootprintEditorSettings(), getGUIFont(), SYMBOL_LIBRARY_MANAGER::GetLibraryHash(), PCB_BASE_FRAME::GetLibraryItemsForListDialog(), SCH_BASE_FRAME::GetLibraryItemsForListDialog(), SYMBOL_LIBRARY_MANAGER::GetLibraryNames(), DIALOG_SYMBOL_REMAP::getLibsNotInGlobalSymbolLibTable(), EDA_DRAW_FRAME::GetOrderedPluginActions(), PCB_BASE_FRAME::GetPcbNewSettings(), KICAD_MANAGER_FRAME::GetProjectFileName(), EESCHEMA_JOBS_HANDLER::getSchematic(), PCBNEW_JOBS_HANDLER::getToolManager(), WX_AUI_TOOLBAR_ART::GetToolSize(), LIBRARY_MANAGER_ADAPTER::getUri(), GIT_CONFIG_HANDLER::GetUserConfig(), EDA_DRAW_PANEL_GAL::GetVcSettings(), PCB_BASE_FRAME::GetViewerSettingsBase(), SCH_EDITOR_CONTROL::GridFeedback(), gvconfig(), API_HANDLER_COMMON::handleExpandTextVariables(), API_HANDLER_COMMON::handleGetNetClasses(), API_HANDLER_COMMON::handleGetTextVariables(), API_HANDLER_COMMON::handleSetNetClasses(), API_HANDLER_COMMON::handleSetTextVariables(), SCH_DRAWING_TOOLS::ImportSheet(), LOCAL_HISTORY::Init(), init_unit_test(), FIELDS_GRID_TABLE::initGrid(), EESCHEMA_JOBS_HANDLER::InitRenderSettings(), InitTables(), API_PLUGIN_MANAGER::InvokeAction(), InvokeEditDesignBlockLibTable(), InvokePcbLibTableEditor(), InvokeSchEditSymbolLibTable(), KIUI::IsModalDialogFocused(), KICAD_API_SERVER::KICAD_API_SERVER(), KIWAY::KiFACE(), SCH_EDIT_FRAME::KiwayMailIn(), PCB_CONTROL::LayerPresetFeedback(), PROJECT_SCH::LegacySchLibs(), SETTINGS_MANAGER::loadAllColorSettings(), EDA_DRAW_FRAME::loadCanvasTypeSetting(), KIGFX::PCB_RENDER_SETTINGS::LoadColors(), EDA_3D_VIEWER_FRAME::loadCommonSettings(), DIALOG_SHIM::LoadControlState(), PCB_EDIT_FRAME::LoadDrawingSheet(), SCH_EDIT_FRAME::LoadDrawingSheet(), FP_LIB_TABLE::LoadGlobalTable(), LIBRARY_MANAGER::LoadGlobalTables(), loadKicadProject(), PCBNEW_JOBS_HANDLER::loadOverrideDrawingSheet(), KICAD_MANAGER_FRAME::LoadProject(), SETTINGS_MANAGER::LoadProject(), EDA_BASE_FRAME::LoadSettings(), EDA_DRAW_FRAME::LoadSettings(), KIGFX::WX_VIEW_CONTROLS::LoadSettings(), PCB_TEST_FRAME_BASE::LoadSettings(), PANEL_PREVIEW_3D_MODEL::loadSettings(), SYMBOL_EDIT_FRAME::LoadSymbol(), EDA_BASE_FRAME::LoadWindowState(), KIGFX::OPENGL_GAL::LockContext(), EDA_DRAW_FRAME::LockFile(), main(), main(), NETLIST_EXPORTER_XML::makeLibraries(), PLUGIN_CONTENT_MANAGER::MarkInstalled(), APP_SETTINGS_BASE::MigrateFromLegacy(), EESCHEMA_SETTINGS::MigrateFromLegacy(), FOOTPRINT_EDITOR_SETTINGS::MigrateFromLegacy(), GERBVIEW_SETTINGS::MigrateFromLegacy(), PCBNEW_SETTINGS::MigrateFromLegacy(), FOOTPRINT_EDITOR_SETTINGS::migrateSchema0to1(), STARTWIZARD_PROVIDER_PRIVACY::NeedsUserInput(), STARTWIZARD_PROVIDER_SETTINGS::NeedsUserInput(), PCB_NET_INSPECTOR_PANEL::netFilterMatches(), FOOTPRINT_PREVIEW_PANEL::New(), KICAD_MANAGER_CONTROL::NewProject(), LOCAL_HISTORY::NoteFileChange(), EDA_DRAW_FRAME::OnApiPluginInvoke(), KISTATUSBAR::onBackgroundProgressClick(), PCB_NET_INSPECTOR_PANEL::OnBoardChanged(), NETLIST_DIALOG_ADD_GENERATOR::OnBrowseGenerators(), TEXT_BUTTON_FILE_BROWSER::OnButtonClick(), PANEL_MAINTENANCE::onClearFileHistory(), PCB_NET_INSPECTOR_PANEL::OnConfigButton(), PANEL_SYM_LIB_TABLE::onConvertLegacyLibraries(), LIB_TREE::onDetailsLink(), DIALOG_CONFIG_EQUFILES::OnEditEquFile(), DIALOG_BOM::OnEditGenerator(), PROJECT_TREE_PANE::onGitStatusTimer(), PROJECT_TREE_PANE::onGitSyncTimer(), DIALOG_CONFIGURE_PATHS::OnGridCellChanging(), KICAD_MANAGER_FRAME::OnIdle(), APP_SINGLE_TOP::OnInit(), PANEL_DESIGN_BLOCK_LIB_TABLE::onMigrateLibraries(), PANEL_FP_LIB_TABLE::onMigrateLibraries(), KISTATUSBAR::onNotificationsIconClick(), DIALOG_CONFIG_EQUFILES::OnOkClick(), KICAD_MANAGER_FRAME::OnOpenFileInTextEditor(), PROJECT_TREE_PANE::onOpenSelectedFileWithTextEditor(), EDA_3D_MODEL_VIEWER::OnPaint(), SPNAV_2D_PLUGIN::OnPan(), SPNAV_VIEWER_PLUGIN::OnPan(), PANEL_COMMON_SETTINGS::OnPDFViewerClick(), DIALOG_PRINT_GENERIC::onPrintButtonClick(), PANEL_FP_LIB_TABLE::onReset(), PANEL_SYM_LIB_TABLE::onReset(), PANEL_MAINTENANCE::onResetAll(), PROJECT_TREE_PANE::onRight(), SPNAV_VIEWER_PLUGIN::OnRotate(), APP_KICAD::OnRun(), APP_KICAD_CLI::OnRun(), APP_SINGLE_TOP::OnRun(), PANEL_COMMON_SETTINGS::OnTextEditorClick(), PANEL_COLOR_SETTINGS::OnThemeChanged(), DIALOG_PAGES_SETTINGS::OnWksFileSelection(), FOOTPRINT_EDITOR_CONTROL::OpenDirectory(), SYMBOL_EDITOR_CONTROL::OpenDirectory(), KIGFX::OPENGL_GAL::OPENGL_GAL(), OpenPDF(), PCB_EDIT_FRAME::OpenProjectFiles(), SCH_EDIT_FRAME::OpenProjectFiles(), SYMBOL_LIB_TABLE_RESCUER::OpenRescueLibrary(), FOOTPRINT_EDITOR_CONTROL::OpenWithTextEditor(), SYMBOL_EDITOR_CONTROL::OpenWithTextEditor(), PANEL_COMMON_SETTINGS::PANEL_COMMON_SETTINGS(), PANEL_DESIGN_BLOCK_LIB_TABLE::PANEL_DESIGN_BLOCK_LIB_TABLE(), 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_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(), PCB_IO_KICAD_SEXPR_PARSER::parseBOARD_unchecked(), SCH_IO_KICAD_SEXPR_PARSER::ParseSchematic(), PCB_DESIGN_BLOCK_PREVIEW_WIDGET::PCB_DESIGN_BLOCK_PREVIEW_WIDGET(), PCM_LIB_TRAVERSER::PCM_LIB_TRAVERSER(), PROJECT::PinLibrary(), PinOrientationName(), PinOrientationNames(), PinShapeGetText(), PinShapeNames(), PinTypeNames(), BOARD_EDITOR_CONTROL::PlaceFootprint(), SCH_DRAWING_TOOLS::PlaceImage(), DRAWING_TOOL::PlaceReferenceImage(), SCH_DRAWING_TOOLS::PlaceSymbol(), DRAWING_TOOL::PlaceText(), KIWAY::Player(), playground_main_func(), PGM_BASE::PreloadDesignBlockLibraries(), SCH::IFACE::PreloadLibraries(), KIWAY::Prj(), EDA_BASE_FRAME::ProcessEvent(), API_PLUGIN_MANAGER::processNextJob(), KICAD_MANAGER_FRAME::ProjectChanged(), LIBRARY_MANAGER::ProjectChanged(), PROPERTIES_PANEL::PROPERTIES_PANEL(), PCB_EDIT_FRAME::PythonSyncEnvironmentVariables(), PLUGIN_CONTENT_MANAGER::ReadEnvVar(), SCH::readSchematicFromFile(), SYMBOL_VIEWER_FRAME::ReCreateLibList(), FOOTPRINT_VIEWER_FRAME::ReCreateLibraryList(), PROJECT_TREE_PANE::ReCreateTreePrj(), RENDER_3D_OPENGL::Redraw(), ACTION_TOOLBAR::RefreshBitmaps(), EDA_3D_CANVAS::releaseOpenGL(), API_PLUGIN_MANAGER::ReloadPlugins(), SCH_EDITOR_CONTROL::ReloadPlugins(), SCRIPTING_TOOL::reloadPlugins(), EDA_3D_CANVAS::RenderToFrameBuffer(), MULTICHANNEL_TOOL::RepeatLayout(), MULTICHANNEL_TOOL::RepeatLayout(), SYMBOL_EDIT_FRAME::replaceLibTableEntry(), DIALOG_SHIM::resetSize(), PLUGIN_CONTENT_MANAGER::RunBackgroundUpdate(), LOCAL_HISTORY::RunRegisteredSaversAndCommit(), EDA_DRAW_FRAME::saveCanvasTypeSetting(), DIALOG_SHIM::SaveControlState(), PANEL_COLOR_SETTINGS::saveCurrentTheme(), SYMBOL_LIBRARY_MANAGER::SaveLibrary(), SCH_EDIT_FRAME::saveProjectSettings(), EDA_BASE_FRAME::SaveSettings(), GERBVIEW_FRAME::SaveSettings(), PCB_NET_INSPECTOR_PANEL::SaveSettings(), SCH_BASE_FRAME::SCH_BASE_FRAME(), SCH_DESIGN_BLOCK_PREVIEW_WIDGET::SCH_DESIGN_BLOCK_PREVIEW_WIDGET(), SCH_EDIT_FRAME::SCH_EDIT_FRAME(), SearchHelpFileFullPath(), PCB_TEST_FRAME_BASE::SetBoard(), KIWAY::SetLanguage(), PGM_BASE::SetLanguagePath(), BOARD_ADAPTER::SetLayerColors(), PANEL_PACKAGES_VIEW::SetSashOnIdle(), SCH_BASE_FRAME::setSymWatcher(), WX_GRID::SetTable(), SetTopFrame(), EDA_BASE_FRAME::setupUIConditions(), DESIGN_BLOCK_LIB_TABLE_GRID::SetValue(), FP_LIB_TABLE_GRID::SetValue(), SYMBOL_LIB_TABLE_GRID::SetValue(), DIALOG_SHIM::Show(), COMMON_CONTROL::ShowHelp(), KICAD_MANAGER_CONTROL::ShowPlayer(), KICAD_MANAGER_CONTROL::ShowPluginManager(), PLUGINS_GRID_TRICKS::showPopupMenu(), EDA_BASE_FRAME::ShowPreferences(), SCH_EDIT_FRAME::ShowSchematicSetupDialog(), GERBVIEW_INSPECTION_TOOL::ShowSource(), PCB_CONTROL::SnapModeFeedback(), SYMBOL_PREVIEW_WIDGET::SYMBOL_PREVIEW_WIDGET(), PROJECT_SCH::SymbolLibAdapter(), FP_TREE_SYNCHRONIZING_ADAPTER::Sync(), SYMBOL_TREE_SYNCHRONIZING_ADAPTER::Sync(), SystemDirsAppend(), LIBRARY_MANAGER::Table(), ERC_TESTER::TestLibSymbolIssues(), BITMAP_STORE::ThemeChanged(), TOOL_INTERACTIVE::TOOL_INTERACTIVE(), TOOL_INTERACTIVE::TOOL_INTERACTIVE(), DIALOG_CONFIGURE_PATHS::TransferDataFromWindow(), DIALOG_EXPORT_NETLIST::TransferDataFromWindow(), DIALOG_PRINT::TransferDataFromWindow(), PANEL_COMMON_SETTINGS::TransferDataFromWindow(), PANEL_DESIGN_BLOCK_LIB_TABLE::TransferDataFromWindow(), PANEL_FP_LIB_TABLE::TransferDataFromWindow(), PANEL_GIT_REPOS::TransferDataFromWindow(), PANEL_MAINTENANCE::TransferDataFromWindow(), PANEL_MOUSE_SETTINGS::TransferDataFromWindow(), PANEL_PCBNEW_ACTION_PLUGINS::TransferDataFromWindow(), PANEL_PLUGIN_SETTINGS::TransferDataFromWindow(), PANEL_SPACEMOUSE::TransferDataFromWindow(), PANEL_SYM_LIB_TABLE::TransferDataFromWindow(), DIALOG_CONFIGURE_PATHS::TransferDataToWindow(), DIALOG_PRINT::TransferDataToWindow(), PANEL_COMMON_SETTINGS::TransferDataToWindow(), PANEL_GIT_REPOS::TransferDataToWindow(), PANEL_MAINTENANCE::TransferDataToWindow(), PANEL_MOUSE_SETTINGS::TransferDataToWindow(), PANEL_PCBNEW_ACTION_PLUGINS::TransferDataToWindow(), PANEL_PL_EDITOR_COLOR_SETTINGS::TransferDataToWindow(), PANEL_PLUGIN_SETTINGS::TransferDataToWindow(), PANEL_SPACEMOUSE::TransferDataToWindow(), PANEL_STARTWIZARD_SETTINGS::TransferDataToWindow(), PANEL_SYM_COLOR_SETTINGS::TransferDataToWindow(), SCH_DRAWING_TOOLS::TwoClickPlace(), SYMBOL_EDITOR_DRAWING_TOOLS::TwoClickPlace(), PCB_CONTROL::unfilledZoneCheck(), KIGFX::OPENGL_GAL::UnlockContext(), PROJECT::UnpinLibrary(), PANEL_PLUGIN_SETTINGS::updateApiStatusText(), FONT_LIST_MANAGER::UpdateFonts(), PROJECT_TREE_PANE::updateGitStatusIconMap(), PROJECT_TREE_PANE::updateGitStatusIcons(), DIALOG_DRC::updateUI(), PANEL_STARTWIZARD_SETTINGS::validatePath(), KIGFX::PCB_PAINTER::viewer_settings(), PCB_CALCULATOR_DATAFILE::WriteHeader(), NETLIST_EXPORTER_SPICE::writeInclude(), SYMBOL_LIB_TABLE_RESCUER::WriteRescueLibrary(), EDA_3D_MODEL_VIEWER::~EDA_3D_MODEL_VIEWER(), KICAD_MANAGER_FRAME::~KICAD_MANAGER_FRAME(), KIGFX::OPENGL_GAL::~OPENGL_GAL(), PANEL_PACKAGES_VIEW::~PANEL_PACKAGES_VIEW(), PANEL_SETUP_NETCLASSES::~PANEL_SETUP_NETCLASSES(), PANEL_SETUP_RULES::~PANEL_SETUP_RULES(), SCH_BASE_FRAME::~SCH_BASE_FRAME(), SYMBOL_EDIT_FRAME::~SYMBOL_EDIT_FRAME(), and UPDATE_CANCELLER::~UPDATE_CANCELLER().
      
  | 
  extern | 
Return a reference that can be nullptr when running a shared lib from a script, not from a kicad app.
Definition at line 954 of file pgm_base.cpp.
References process.
Referenced by DS_DRAW_ITEM_LIST::BuildFullText(), GetAppSettings(), GetKiCadThreadPool(), GetToolbarSettings(), LoadBoard(), KIGFX::PCB_RENDER_SETTINGS::LoadColors(), SETTINGS_MANAGER::LoadProject(), and ACTION_PLUGINS::register_action().
      
  | 
  extern | 
Definition at line 960 of file pgm_base.cpp.
References process.
Referenced by APP_KICAD::APP_KICAD(), APP_KICAD_CLI::APP_KICAD_CLI(), APP_SINGLE_TOP::APP_SINGLE_TOP(), APP_TEST::APP_TEST(), and init_unit_test().
      
  | 
  extern | 
An array containing all the languages that KiCad supports.
Definition at line 94 of file pgm_base.cpp.
Referenced by EDA_BASE_FRAME::AddMenuLanguageList(), KIWAY::SetLanguage(), PGM_BASE::SetLanguage(), PGM_BASE::SetLanguageIdentifier(), and EDA_BASE_FRAME::setupUIConditions().