|
KiCad PCB EDA Suite
|
#include <pcbnew_scripting_helpers.h>#include <pgm_base.h>#include <background_jobs_monitor.h>#include <cli_progress_reporter.h>#include <confirm.h>#include <kiface_base.h>#include <kiface_ids.h>#include <pcb_edit_frame.h>#include <eda_dde.h>#include <macros.h>#include <wx/snglinst.h>#include <gestfich.h>#include <paths.h>#include <pcbnew_settings.h>#include <footprint_editor_settings.h>#include <settings/settings_manager.h>#include <settings/cvpcb_settings.h>#include <footprint_library_adapter.h>#include <footprint_edit_frame.h>#include <footprint_viewer_frame.h>#include <footprint_chooser_frame.h>#include <footprint_wizard_frame.h>#include <footprint_preview_panel.h>#include <footprint_info_impl.h>#include <dialogs/dialog_configure_paths.h>#include <dialogs/panel_grid_settings.h>#include <panel_display_options.h>#include <panel_edit_options.h>#include <panel_fp_editor_field_defaults.h>#include <panel_fp_editor_graphics_defaults.h>#include <panel_fp_editor_color_settings.h>#include <panel_pcbnew_color_settings.h>#include <panel_pcbnew_action_plugins.h>#include <panel_pcbnew_display_origin.h>#include <panel_3D_display_options.h>#include <panel_3D_opengl_options.h>#include <panel_3D_raytracing_options.h>#include <project_pcb.h>#include <python_scripting.h>#include <thread_pool.h>#include "invoke_pcb_dialog.h"#include <wildcards_and_files_ext.h>#include "pcbnew_jobs_handler.h"#include <dialogs/panel_toolbar_customization.h>#include <3d_viewer/toolbars_3d.h>#include <toolbars_footprint_editor.h>#include <toolbars_pcb_editor.h>#include <wx/crt.h>Go to the source code of this file.
Classes | |
| struct | PCB::IFACE |
Namespaces | |
| namespace | PCB |
Functions | |
| PyObject * | PyInit__pcbnew (void) |
| PCB::IFACE KIFACE_BASE, UNITS_PROVIDER | PCB::kiface ("pcbnew", KIWAY::FACE_PCB) |
| IFACE (const char *aName, KIWAY::FACE_T aType) | |
| bool | OnKifaceStart (PGM_BASE *aProgram, int aCtlBits, KIWAY *aKiway) override |
| void | Reset () override |
| void | OnKifaceEnd () override |
| wxWindow * | CreateKiWindow (wxWindow *aParent, int aClassId, KIWAY *aKiway, int aCtlBits=0) override |
| void * | IfaceOrAddress (int aDataId) override |
| Return a pointer to the requested object. | |
| void | SaveFileAs (const wxString &aProjectBasePath, const wxString &aSrcProjectName, const wxString &aNewProjectBasePath, const wxString &aNewProjectName, const wxString &aSrcFilePath, wxString &aErrors) override |
| Saving a file under a different name is delegated to the various KIFACEs because the project doesn't know the internal format of the various files (which may have paths in them that need updating). | |
| int | HandleJob (JOB *aJob, REPORTER *aReporter, PROGRESS_REPORTER *aProgressReporter) override |
| bool | HandleJobConfig (JOB *aJob, wxWindow *aParent) override |
| void | PreloadLibraries (KIWAY *aKiway) override |
| void | ProjectChanged () override |
| KIFACE_BASE & | Kiface () |
| Global KIFACE_BASE "get" accessor. | |
| KIFACE_API KIFACE * | KIFACE_GETTER (int *aKIFACEversion, int aKiwayVersion, PGM_BASE *aProgram) |
| No name mangling. Each KIFACE (DSO/DLL) will implement this once. | |
Variables | |
| std::unique_ptr< PCBNEW_JOBS_HANDLER > | m_jobHandler |
| std::shared_ptr< BACKGROUND_JOB > | m_libraryPreloadBackgroundJob |
| std::future< void > | m_libraryPreloadReturn |
| std::atomic_bool | m_libraryPreloadInProgress |
| std::atomic_bool | m_libraryPreloadAbort |
| FOOTPRINT_LIST_IMPL | GFootprintList |
| The global footprint info table. | |
|
override |
Definition at line 13 of file pcbnew.cpp.
|
override |
|
override |
References ACTION_MANAGER::GetActionList().
| kiface::IFACE | ( | const char * | aName, |
| KIWAY::FACE_T | aType ) |
Definition at line 2 of file pcbnew.cpp.
|
override |
Return a pointer to the requested object.
The safest way to use this is to retrieve a pointer to a static instance of an interface, similar to how the KIFACE interface is exported. But if you know what you are doing use it to retrieve anything you want.
| aDataId | identifies which object you want the address of. |
Definition at line 274 of file pcbnew.cpp.
References FRAME_FOOTPRINT_EDITOR, FRAME_FOOTPRINT_VIEWER, and FRAME_PCB_EDITOR.
| KIFACE_BASE & Kiface | ( | ) |
Global KIFACE_BASE "get" accessor.
Definition at line 413 of file pcbnew.cpp.
References PCB::kiface().
| KIFACE_API KIFACE * KIFACE_GETTER | ( | int * | aKIFACEversion, |
| int | aKiwayVersion, | ||
| PGM_BASE * | aProgram ) |
No name mangling. Each KIFACE (DSO/DLL) will implement this once.
Definition at line 418 of file pcbnew.cpp.
References PCB::kiface(), and KIFACE_API.
|
override |
Definition at line 11 of file test_app_main.cpp.
Definition at line 6 of file test_app_main.cpp.
|
override |
|
override |
References ACTION_TOOLBAR::GetCustomControlList().
| PyObject * PyInit__pcbnew | ( | void | ) |
Referenced by PCB::IFACE::IfaceOrAddress().
|
override |
|
override |
Saving a file under a different name is delegated to the various KIFACEs because the project doesn't know the internal format of the various files (which may have paths in them that need updating).
| FOOTPRINT_LIST_IMPL GFootprintList |
The global footprint info table.
This is performance-intensive to build so we keep a hash-stamped global version. Any deviation from the request vs. stored hash will result in it being rebuilt.
Definition at line 427 of file pcbnew.cpp.
Referenced by FOOTPRINT_EDIT_FRAME::doCloseWindow(), PCB_BASE_EDIT_FRAME::doCloseWindow(), FP_TREE_MODEL_ADAPTER::getFootprints(), CV::IFACE::IfaceOrAddress(), PCB::IFACE::IfaceOrAddress(), FOOTPRINT_EDIT_FRAME::initLibraryTree(), PCB_EDIT_FRAME::OpenProjectFiles(), PANEL_FOOTPRINT_CHOOSER::PANEL_FOOTPRINT_CHOOSER(), PCB::IFACE::PreloadLibraries(), and FOOTPRINT_EDIT_FRAME::SyncLibraryTree().
|
private |
Definition at line 313 of file pcbnew.cpp.
|
private |
Definition at line 317 of file pcbnew.cpp.
|
private |
Definition at line 314 of file pcbnew.cpp.
|
private |
Definition at line 316 of file pcbnew.cpp.
|
private |
Definition at line 315 of file pcbnew.cpp.