KiCad PCB EDA Suite
|
#include <pcbnew_scripting_helpers.h>
#include <pgm_base.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 <fp_lib_table.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 <dialog_global_fp_lib_table_config.h>
#include <panel_pcb_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 <python_scripting.h>
#include "invoke_pcb_dialog.h"
#include <wildcards_and_files_ext.h>
#include "pcbnew_jobs_handler.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) override |
bool | HandleJobConfig (JOB *aJob, wxWindow *aParent) override |
bool | loadGlobalLibTable () |
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 |
FP_LIB_TABLE | GFootprintTable |
The global footprint library table. | |
FOOTPRINT_LIST_IMPL | GFootprintList |
The global footprint info table. | |
|
override |
Definition at line 13 of file pcbnew.cpp.
|
override |
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 244 of file pcbnew.cpp.
References FRAME_FOOTPRINT_EDITOR, FRAME_FOOTPRINT_VIEWER, FRAME_PCB_EDITOR, SETTINGS_MANAGER::GetAppSettings(), PGM_BASE::GetSettingsManager(), Pgm(), KIWAY::Player(), and UNITS_PROVIDER::SetUserUnits().
KIFACE_BASE & Kiface | ( | ) |
Global KIFACE_BASE "get" accessor.
Definition at line 373 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 378 of file pcbnew.cpp.
References PCB::kiface().
|
private |
|
override |
Definition at line 11 of file test_app_main.cpp.
Definition at line 6 of file test_app_main.cpp.
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 392 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(), and FOOTPRINT_EDIT_FRAME::SyncLibraryTree().
FP_LIB_TABLE GFootprintTable |
The global footprint library table.
This is not dynamically allocated because in a multiple project environment we must keep its address constant (since it is the fallback table for multiple projects).
Definition at line 387 of file pcbnew.cpp.
|
private |
Definition at line 284 of file pcbnew.cpp.