KiCad PCB EDA Suite
kicad.cpp File Reference

Main KiCad project manager file. More...

#include <wx/filename.h>
#include <wx/log.h>
#include <wx/app.h>
#include <wx/stdpaths.h>
#include <wx/msgdlg.h>
#include <wx/cmdline.h>
#include <file_history.h>
#include <hotkeys_basic.h>
#include <kiway.h>
#include <macros.h>
#include <paths.h>
#include <richio.h>
#include <settings/settings_manager.h>
#include <settings/kicad_settings.h>
#include <systemdirsappend.h>
#include <trace_helpers.h>
#include <wildcards_and_files_ext.h>
#include <stdexcept>
#include "pgm_kicad.h"
#include "kicad_manager_frame.h"
#include <kiplatform/app.h>
#include <kiplatform/environment.h>
#include <kiface_base.h>

Go to the source code of this file.

Classes

struct  APP_KICAD
 Not publicly visible because most of the action is in PGM_KICAD these days. More...
 

Functions

KIFACE_BASEKiface ()
 Global KIFACE_BASE "get" accessor. More...
 
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...
 
PGM_KICADPgmTop ()
 
PROJECTPrj ()
 

Variables

static PGM_KICAD program
 

Detailed Description

Main KiCad project manager file.

Definition in file kicad.cpp.

Function Documentation

◆ Kiface()

KIFACE_BASE & Kiface ( )

Global KIFACE_BASE "get" accessor.

Definition at line 61 of file kicad.cpp.

62{
63 // This function should never be called. It is only referenced from
64 // EDA_BASE_FRAME::config() and this is only provided to satisfy the linker,
65 // not to be actually called.
66 wxLogFatalError( wxT( "Unexpected call to Kiface() in kicad/kicad.cpp" ) );
67
68 throw std::logic_error( "Unexpected call to Kiface() in kicad/kicad.cpp" );
69}

◆ 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 75 of file kicad.cpp.

76{
77 return program;
78}
static PGM_KICAD program
Definition: kicad.cpp:72

References program.

Referenced by APP_KICAD::FilterEvent().

◆ 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 82 of file kicad.cpp.

83{
84 return &program;
85}

References program.

◆ PgmTop()

PGM_KICAD & PgmTop ( )

Definition at line 88 of file kicad.cpp.

89{
90 return program;
91}

References program.

Referenced by KICAD_MANAGER_FRAME::config(), KICAD_MANAGER_FRAME::help_name(), and KICAD_MANAGER_FRAME::sys_search().

◆ Prj()

Variable Documentation

◆ program

PGM_KICAD program
static

Definition at line 72 of file kicad.cpp.

Referenced by APP_KICAD::OnExit(), APP_KICAD::OnInit(), Pgm(), PgmOrNull(), and PgmTop().