|
KiCad PCB EDA Suite
|
#include <algorithm>#include <api/api_handler_sch.h>#include <api/api_server.h>#include <api/api_utils.h>#include <api/headless_sch_context.h>#include <core/json_serializers.h>#include <pgm_base.h>#include <kiface_base.h>#include <background_jobs_monitor.h>#include <cli_progress_reporter.h>#include <confirm.h>#include <gestfich.h>#include <eda_dde.h>#include "eeschema_jobs_handler.h"#include "eeschema_helpers.h"#include <diff_merge/diff_doc_kind.h>#include <reporter.h>#include "git/kigit_sch_merge.h"#include "git/kigit_sym_lib_merge.h"#include <git/kigit_driver_registry.h>#include <eeschema_settings.h>#include <sch_edit_frame.h>#include <libraries/symbol_library_adapter.h>#include <symbol_edit_frame.h>#include <symbol_viewer_frame.h>#include <symbol_chooser_frame.h>#include <dialogs/panel_grid_settings.h>#include <dialogs/panel_simulator_preferences.h>#include <dialogs/panel_design_block_lib_table.h>#include <dialogs/panel_sym_lib_table.h>#include <kiway.h>#include <project_sch.h>#include <richio.h>#include <settings/settings_manager.h>#include <symbol_editor_settings.h>#include <sexpr/sexpr.h>#include <sexpr/sexpr_parser.h>#include <string_utils.h>#include <trace_helpers.h>#include <thread_pool.h>#include <kiface_ids.h>#include <widgets/kistatusbar.h>#include <netlist_exporters/netlist_exporter_kicad.h>#include <wx/ffile.h>#include <wx/tokenzr.h>#include <wildcards_and_files_ext.h>#include <schematic.h>#include <connection_graph.h>#include <panel_template_fieldnames.h>#include <panel_eeschema_color_settings.h>#include <panel_sch_data_sources.h>#include <panel_sym_color_settings.h>#include <panel_eeschema_editing_options.h>#include <panel_eeschema_annotation_options.h>#include <panel_sym_editing_options.h>#include <dialogs/panel_base_display_options.h>#include <panel_eeschema_display_options.h>#include <panel_sym_display_options.h>#include <sim/simulator_frame.h>#include <dialogs/panel_toolbar_customization.h>#include <toolbars_sch_editor.h>#include <toolbars_symbol_editor.h>#include <sch_io/sch_io.h>#include <sch_io/sch_io_mgr.h>#include <wx/crt.h>Go to the source code of this file.
Classes | |
| struct | SCH::IFACE |
Namespaces | |
| namespace | SCH |
Functions | |
| static int | SCH::eeschemaMergeExport (int aKind, const wxString &aAncestor, const wxString &aOurs, const wxString &aTheirs, const wxString &aOutput, bool aInteractive, bool aSingleFile, REPORTER *aReporter) |
| static int | SCH::eeschemaOpenDiffDialogExport (int aKind, const wxString &aFileA, const wxString &aFileB, const wxString &aLabelA, const wxString &aLabelB, wxWindow *aParent, REPORTER *aReporter) |
| static std::unique_ptr< SCHEMATIC > | SCH::readSchematicFromFile (const std::string &aFilename) |
| bool | SCH::generateSchematicNetlist (const wxString &aFilename, std::string &aNetlist) |
| SCH::IFACE KIFACE_BASE, UNITS_PROVIDER | SCH::kiface ("eeschema", KIWAY::FACE_SCH) |
| 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. | |
| EESCHEMA_JOBS_HANDLER * | JobHandler () const |
| Accessor for the non-job diff/merge exports (eeschemaMergeExport etc.). | |
| void | SaveFileAs (const wxString &aProjectBasePath, const wxString &aProjectName, 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 |
| bool | HandleApiOpenDocument (const wxString &aPath, KICAD_API_SERVER *aServer, wxString *aError) override |
| bool | HandleApiCloseDocument (const wxString &aSchFileName, KICAD_API_SERVER *aServer, wxString *aError) override |
| void | PreloadLibraries (KIWAY *aKiway) override |
| void | CancelPreload (bool aBlock=true) override |
| void | ProjectChanged () override |
| void | closeCurrentDocument (KICAD_API_SERVER *aServer) |
| 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 | |
| SCH_SHEET * | g_RootSheet = nullptr |
| std::unique_ptr< EESCHEMA_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 |
| KIWAY * | m_kiway = nullptr |
| SCHEMATIC * | m_openSchematic = nullptr |
| std::shared_ptr< HEADLESS_SCH_CONTEXT > | m_openContext |
| std::unique_ptr< API_HANDLER_SCH > | m_openHandler |
|
override |
References DIALOG_SCH_LIBRARY_TABLE.
|
private |
References GetAppSettings(), and PANEL_SYM_DISP_OPTIONS.
Referenced by CLI::API_SERVER_COMMAND::doPerform().
|
override |
Definition at line 14 of file eeschema.cpp.
|
override |
|
override |
References KIWAY_PLAYER::Destroy().
|
override |
|
override |
| kiface::IFACE | ( | const char * | aName, |
| KIWAY::FACE_T | aType ) |
Definition at line 2 of file eeschema.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 224 of file eeschema.cpp.
References KIWAY_PLAYER::CreateServer(), and KICAD_SCH_PORT_SERVICE_NUMBER.
| EESCHEMA_JOBS_HANDLER * kiface::JobHandler | ( | ) | const |
Accessor for the non-job diff/merge exports (eeschemaMergeExport etc.).
Definition at line 242 of file eeschema.cpp.
| KIFACE_BASE & Kiface | ( | ) |
Global KIFACE_BASE "get" accessor.
Definition at line 509 of file eeschema.cpp.
References SCH::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 514 of file eeschema.cpp.
References SCH::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 |
|
override |
Referenced by SHEET_SYNCHRONIZATION_MODEL::AppendItem(), SHEET_SYNCHRONIZATION_MODEL::AppendNewItem(), MODEL_ZONES_OVERVIEW::ApplyFilter(), MODEL_ZONES_OVERVIEW::ClearFilter(), BITMAP2CMP_CONTROL::Init(), SIMULATOR_CONTROL::Init(), MODEL_ZONES_OVERVIEW::MODEL_ZONES_OVERVIEW(), SCH_EDIT_FRAME::OpenProjectFiles(), SHEET_SYNCHRONIZATION_MODEL::TakeItem(), SHEET_SYNCHRONIZATION_MODEL::UpdateItems(), and KIGFX::VC_SETTINGS::VC_SETTINGS().
|
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).
References FRAME_SCH_VIEWER, and FRAME_SYMBOL_CHOOSER.
| SCH_SHEET* g_RootSheet = nullptr |
Definition at line 94 of file eeschema.cpp.
|
private |
Definition at line 271 of file eeschema.cpp.
|
private |
Definition at line 279 of file eeschema.cpp.
|
private |
Definition at line 275 of file eeschema.cpp.
|
private |
Definition at line 272 of file eeschema.cpp.
|
private |
Definition at line 274 of file eeschema.cpp.
|
private |
Definition at line 273 of file eeschema.cpp.
|
private |
Definition at line 281 of file eeschema.cpp.
|
private |
Definition at line 282 of file eeschema.cpp.
|
private |
Definition at line 280 of file eeschema.cpp.