KiCad PCB EDA Suite
kicad.h File Reference

KICAD_MANAGER_FRAME is the KiCad main frame. More...

#include <wx/process.h>
#include <id.h>
#include <wxstruct.h>

Go to the source code of this file.

Classes

class  KICAD_MANAGER_FRAME
 The main KiCad project manager frame. More...
 
class  KICAD_MANAGER_FRAME::TERMINATE_HANDLER
 
class  LAUNCHER_PANEL
 class LAUNCHER_PANEL More...
 

Macros

#define KICAD_MANAGER_FRAME_NAME   wxT( "KicadFrame" )
 

Enumerations

enum  TreeFileType {
  TREE_PROJECT = 1, TREE_SCHEMA, TREE_LEGACY_PCB, TREE_SEXP_PCB,
  TREE_GERBER, TREE_HTML, TREE_PDF, TREE_TXT,
  TREE_NET, TREE_UNKNOWN, TREE_DIRECTORY, TREE_CMP_LINK,
  TREE_REPORT, TREE_FP_PLACE, TREE_DRILL, TREE_SVG,
  TREE_PAGE_LAYOUT_DESCR, TREE_FOOTPRINT_FILE, TREE_SCHEMATIC_LIBFILE, TREE_MAX
}
 
enum  id_kicad_frm {
  ID_LEFT_FRAME = ID_KICAD_MANAGER_START, ID_PROJECT_TREE, ID_PROJECT_TXTEDIT, ID_PROJECT_TREE_REFRESH,
  ID_PROJECT_NEWDIR, ID_PROJECT_DELETE, ID_PROJECT_RENAME, ID_PROJECT_OPEN_FILE_WITH_TEXT_EDITOR,
  ID_TO_SCH, ID_TO_SCH_LIB_EDITOR, ID_TO_PCB, ID_TO_PCB_FP_EDITOR,
  ID_TO_CVPCB, ID_TO_GERBVIEW, ID_TO_BITMAP_CONVERTER, ID_TO_PCB_CALCULATOR,
  ID_TO_PL_EDITOR, ID_TO_TEXT_EDITOR, ID_BROWSE_AN_SELECT_FILE, ID_SELECT_PREFERED_EDITOR,
  ID_SELECT_PREFERED_PDF_BROWSER_NAME, ID_SELECT_PREFERED_PDF_BROWSER, ID_SELECT_DEFAULT_PDF_BROWSER, ID_SAVE_AND_ZIP_FILES,
  ID_READ_ZIP_ARCHIVE, ID_INIT_WATCHED_PATHS, ID_IMPORT_EAGLE_PROJECT, ID_KICADMANAGER_END_LIST
}
 Command IDs for KiCad. More...
 

Functions

PROJECTPrj ()
 

Detailed Description

KICAD_MANAGER_FRAME is the KiCad main frame.

Definition in file kicad.h.

Macro Definition Documentation

#define KICAD_MANAGER_FRAME_NAME   wxT( "KicadFrame" )

Enumeration Type Documentation

Command IDs for KiCad.

Please add IDs that are unique to Kicad here and not in the global id.h file. This will prevent the entire project from being rebuilt when adding new commands to KiCad.

However, now the Kicad manager and other sub applications are running inside the same application, these IDs are kept unique inside the whole Kicad code See the global id.h which reserves room for the Kicad manager IDs and expand this room if needed

We have experienced issues with duplicate menus IDs between frames because wxUpdateUIEvent events are sent to parent frames, when a wxUpdateUIEvent event function does not exists for some menuitems ID, and therefore with duplicate menuitems IDs in different frames, the wrong menuitem can be used by a function called by the wxUpdateUIEvent event loop.

The number of items in this list should be less than ROOM_FOR_KICADMANAGER (see id.h)

Enumerator
ID_LEFT_FRAME 
ID_PROJECT_TREE 
ID_PROJECT_TXTEDIT 
ID_PROJECT_TREE_REFRESH 
ID_PROJECT_NEWDIR 
ID_PROJECT_DELETE 
ID_PROJECT_RENAME 
ID_PROJECT_OPEN_FILE_WITH_TEXT_EDITOR 
ID_TO_SCH 
ID_TO_SCH_LIB_EDITOR 
ID_TO_PCB 
ID_TO_PCB_FP_EDITOR 
ID_TO_CVPCB 
ID_TO_GERBVIEW 
ID_TO_BITMAP_CONVERTER 
ID_TO_PCB_CALCULATOR 
ID_TO_PL_EDITOR 
ID_TO_TEXT_EDITOR 
ID_BROWSE_AN_SELECT_FILE 
ID_SELECT_PREFERED_EDITOR 
ID_SELECT_PREFERED_PDF_BROWSER_NAME 
ID_SELECT_PREFERED_PDF_BROWSER 
ID_SELECT_DEFAULT_PDF_BROWSER 
ID_SAVE_AND_ZIP_FILES 
ID_READ_ZIP_ARCHIVE 
ID_INIT_WATCHED_PATHS 
ID_IMPORT_EAGLE_PROJECT 
ID_KICADMANAGER_END_LIST 

Definition at line 97 of file kicad.h.

97  {
106 
107  ID_TO_SCH,
109  ID_TO_PCB,
111  ID_TO_CVPCB,
116 
127 
128  // Please, verify: the number of items in this list should be
129  // less than ROOM_FOR_KICADMANAGER (see id.h)
131 };
Enumerator
TREE_PROJECT 
TREE_SCHEMA 
TREE_LEGACY_PCB 
TREE_SEXP_PCB 
TREE_GERBER 
TREE_HTML 
TREE_PDF 
TREE_TXT 
TREE_NET 
TREE_UNKNOWN 
TREE_DIRECTORY 
TREE_CMP_LINK 
TREE_REPORT 
TREE_FP_PLACE 
TREE_DRILL 
TREE_SVG 
TREE_PAGE_LAYOUT_DESCR 
TREE_FOOTPRINT_FILE 
TREE_SCHEMATIC_LIBFILE 
TREE_MAX 

Definition at line 52 of file kicad.h.

52  {
53  TREE_PROJECT = 1,
54  TREE_SCHEMA, // Schematic file (.sch)
55  TREE_LEGACY_PCB, // board file (.brd) legacy format
56  TREE_SEXP_PCB, // board file (.kicad_brd) new s expression format
57  TREE_GERBER, // Gerber file (.pho, .g*)
58  TREE_HTML, // HTML file (.htm, *.html)
59  TREE_PDF, // PDF file (.pdf)
60  TREE_TXT, // ascii text file (.txt)
61  TREE_NET, // netlist file (.net)
64  TREE_CMP_LINK, // cmp/footprint link file (.cmp)
65  TREE_REPORT, // report file (.rpt)
66  TREE_FP_PLACE, // fooprints position (place) file (.pos)
67  TREE_DRILL, // Excellon drill file (.drl)
68  TREE_SVG, // SVG file (.svg)
69  TREE_PAGE_LAYOUT_DESCR, // Page layout and title block descr file (.kicad_wks)
70  TREE_FOOTPRINT_FILE, // footprint file (.kicad_mod)
71  TREE_SCHEMATIC_LIBFILE, // schematic library file (.lib)
72  TREE_MAX
73 };
Definition: kicad.h:59
Definition: kicad.h:61
Definition: kicad.h:68
Definition: kicad.h:72
Definition: kicad.h:60

Function Documentation