KiCad PCB EDA Suite
Loading...
Searching...
No Matches
pcbnew_footprint_wizards.h
Go to the documentation of this file.
1
/*
2
* This program source code file is part of KiCad, a free EDA CAD application.
3
*
4
* Copyright (C) 2013 NBEE Embedded Systems SL, Miguel Angel Ajo <
[email protected]
>
5
* Copyright The KiCad Developers, see AUTHORS.txt for contributors.
6
*
7
* This program is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU General Public License
9
* as published by the Free Software Foundation; either version 2
10
* of the License, or (at your option) any later version.
11
*
12
* This program is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with this program; if not, you may find one here:
19
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
20
* or you may search the http://www.gnu.org website for the version 2 license,
21
* or you may write to the Free Software Foundation, Inc.,
22
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
23
*/
24
29
30
#ifndef PCBNEW_FOOTPRINT_WIZARDS_H
31
#define PCBNEW_FOOTPRINT_WIZARDS_H
32
33
#undef HAVE_CLOCK_GETTIME
// macro is defined in Python.h and causes redefine warning
34
#include <Python.h>
35
#undef HAVE_CLOCK_GETTIME
36
37
#include <vector>
38
#include <
footprint_wizard.h
>
39
40
41
class
PYTHON_FOOTPRINT_WIZARD
:
public
FOOTPRINT_WIZARD
42
{
43
public
:
44
PYTHON_FOOTPRINT_WIZARD
( PyObject* wizard );
45
~PYTHON_FOOTPRINT_WIZARD
();
46
47
wxString
GetName
()
override
;
48
wxString
GetImage
()
override
;
49
wxString
GetDescription
()
override
;
50
int
GetNumParameterPages
()
override
;
51
wxString
GetParameterPageName
(
int
aPage )
override
;
52
wxArrayString
GetParameterNames
(
int
aPage )
override
;
53
wxArrayString
GetParameterTypes
(
int
aPage )
override
;
54
wxArrayString
GetParameterValues
(
int
aPage )
override
;
55
wxArrayString
GetParameterErrors
(
int
aPage )
override
;
56
57
// must return an empty string or an error description:
58
wxString
SetParameterValues
(
int
aPage, wxArrayString& aValues )
override
;
59
FOOTPRINT
*
GetFootprint
( wxString* aMessages )
override
;
60
void
*
GetObject
()
override
;
61
wxArrayString
GetParameterHints
(
int
aPage )
override
;
62
wxArrayString
GetParameterDesignators
(
int
aPage = 0 )
override
;
63
64
void
ResetParameters
()
override
;
65
66
private
:
67
PyObject*
CallMethod
(
const
char
* aMethod, PyObject* aArglist =
nullptr
);
68
wxString
CallRetStrMethod
(
const
char
* aMethod, PyObject* aArglist =
nullptr
);
69
wxArrayString
CallRetArrayStrMethod
(
const
char
* aMethod, PyObject* aArglist =
nullptr
);
70
71
PyObject*
m_PyWizard
;
72
};
73
74
75
class
PYTHON_FOOTPRINT_WIZARD_LIST
76
{
77
public
:
78
static
void
register_wizard
( PyObject* aPyWizard );
79
static
void
deregister_wizard
( PyObject* aPyWizard );
80
};
81
82
#endif
/* PCBNEW_FOOTPRINT_WIZARDS_H */
FOOTPRINT_WIZARD::FOOTPRINT_WIZARD
FOOTPRINT_WIZARD()
Definition
footprint_wizard.h:54
FOOTPRINT
Definition
footprint.h:137
PYTHON_FOOTPRINT_WIZARD_LIST
Definition
pcbnew_footprint_wizards.h:76
PYTHON_FOOTPRINT_WIZARD_LIST::deregister_wizard
static void deregister_wizard(PyObject *aPyWizard)
Definition
pcbnew_footprint_wizards.cpp:376
PYTHON_FOOTPRINT_WIZARD_LIST::register_wizard
static void register_wizard(PyObject *aPyWizard)
Definition
pcbnew_footprint_wizards.cpp:368
PYTHON_FOOTPRINT_WIZARD::GetParameterTypes
wxArrayString GetParameterTypes(int aPage) override
Definition
pcbnew_footprint_wizards.cpp:237
PYTHON_FOOTPRINT_WIZARD::GetParameterErrors
wxArrayString GetParameterErrors(int aPage) override
Definition
pcbnew_footprint_wizards.cpp:264
PYTHON_FOOTPRINT_WIZARD::GetNumParameterPages
int GetNumParameterPages() override
Definition
pcbnew_footprint_wizards.cpp:167
PYTHON_FOOTPRINT_WIZARD::GetParameterDesignators
wxArrayString GetParameterDesignators(int aPage=0) override
Definition
pcbnew_footprint_wizards.cpp:288
PYTHON_FOOTPRINT_WIZARD::CallRetStrMethod
wxString CallRetStrMethod(const char *aMethod, PyObject *aArglist=nullptr)
Definition
pcbnew_footprint_wizards.cpp:96
PYTHON_FOOTPRINT_WIZARD::ResetParameters
void ResetParameters() override
Reset all wizard parameters to default values.
Definition
pcbnew_footprint_wizards.cpp:324
PYTHON_FOOTPRINT_WIZARD::GetParameterPageName
wxString GetParameterPageName(int aPage) override
Definition
pcbnew_footprint_wizards.cpp:188
PYTHON_FOOTPRINT_WIZARD::GetObject
void * GetObject() override
Get the object from where this wizard constructs.
Definition
pcbnew_footprint_wizards.cpp:362
PYTHON_FOOTPRINT_WIZARD::m_PyWizard
PyObject * m_PyWizard
Definition
pcbnew_footprint_wizards.h:71
PYTHON_FOOTPRINT_WIZARD::~PYTHON_FOOTPRINT_WIZARD
~PYTHON_FOOTPRINT_WIZARD()
Definition
pcbnew_footprint_wizards.cpp:46
PYTHON_FOOTPRINT_WIZARD::GetParameterValues
wxArrayString GetParameterValues(int aPage) override
Definition
pcbnew_footprint_wizards.cpp:251
PYTHON_FOOTPRINT_WIZARD::GetFootprint
FOOTPRINT * GetFootprint(wxString *aMessages) override
Build the footprint itself and returns it to the caller function.
Definition
pcbnew_footprint_wizards.cpp:336
PYTHON_FOOTPRINT_WIZARD::PYTHON_FOOTPRINT_WIZARD
PYTHON_FOOTPRINT_WIZARD(PyObject *wizard)
Definition
pcbnew_footprint_wizards.cpp:37
PYTHON_FOOTPRINT_WIZARD::GetImage
wxString GetImage() override
Definition
pcbnew_footprint_wizards.cpp:151
PYTHON_FOOTPRINT_WIZARD::CallRetArrayStrMethod
wxArrayString CallRetArrayStrMethod(const char *aMethod, PyObject *aArglist=nullptr)
Definition
pcbnew_footprint_wizards.cpp:116
PYTHON_FOOTPRINT_WIZARD::GetName
wxString GetName() override
Definition
pcbnew_footprint_wizards.cpp:143
PYTHON_FOOTPRINT_WIZARD::GetParameterNames
wxArrayString GetParameterNames(int aPage) override
Definition
pcbnew_footprint_wizards.cpp:212
PYTHON_FOOTPRINT_WIZARD::SetParameterValues
wxString SetParameterValues(int aPage, wxArrayString &aValues) override
Definition
pcbnew_footprint_wizards.cpp:300
PYTHON_FOOTPRINT_WIZARD::GetParameterHints
wxArrayString GetParameterHints(int aPage) override
Definition
pcbnew_footprint_wizards.cpp:276
PYTHON_FOOTPRINT_WIZARD::CallMethod
PyObject * CallMethod(const char *aMethod, PyObject *aArglist=nullptr)
Definition
pcbnew_footprint_wizards.cpp:54
PYTHON_FOOTPRINT_WIZARD::GetDescription
wxString GetDescription() override
Definition
pcbnew_footprint_wizards.cpp:159
footprint_wizard.h
Class FOOTPRINT_WIZARD and FOOTPRINT_WIZARDS.
src
pcbnew
python
scripting
pcbnew_footprint_wizards.h
Generated on Sun Sep 21 2025 01:05:30 for KiCad PCB EDA Suite by
1.13.2