209 Commits

Author SHA1 Message Date
Seth Hillbrand
93b25b115b Handle alternate exception
Apparently, some versions throw one exception, some another.  We really
don't care which, we just want an ID value
2021-10-20 09:28:49 -07:00
Seth Hillbrand
9a8d1246cc We don't keep a CHANGELOG.TXT
Direct interested readers to AUTHORS.TXT instead.
2021-10-05 19:46:53 -07:00
Marek Roszko
67d24e8b00 Don't try and use a empty config path for startup scripts
Fix #9205
2021-09-22 21:03:34 -04:00
Marek Roszko
1463c9ab01 Init isPcbframe in the correct order
Fix #9205
2021-09-22 20:59:32 -04:00
Seth Hillbrand
f469d02f47 Force fitting of the Python window
Test commit to see if this fixes an issue for macs

Fixes https://gitlab.com/kicad/code/kicad/issues/8622
2021-09-22 11:45:18 -07:00
Seth Hillbrand
8ff20fd97b Ensure python window splits
The History/Calltips/locals window splits were only being shown when
running SingleTop.  For unknown reasons, the crust "CallAfter" routine
was not running, so we force the call
2021-09-21 15:18:24 -07:00
Seth Hillbrand
becc3a228e Hide Python window on close button 2021-09-21 15:00:08 -07:00
Seth Hillbrand
a5955ecbf7 Don't destroy parents
Now that we are handling windows from inside the KiCad framing system,
python console does not need to destroy its own windows.  This may help
prevent some odd preference corruption as well
2021-09-21 14:43:51 -07:00
Seth Hillbrand
38cdc362a0 Don't fail if we can't create startup file
Fixes https://gitlab.com/kicad/code/kicad/issues/9205
2021-09-21 14:21:59 -07:00
Seth Hillbrand
73401932f7 Fix python help() parser
Fixes https://gitlab.com/kicad/code/kicad/issues/9191
2021-09-21 14:14:41 -07:00
Jeff Young
b84d1456d5 KIFACE_I -> KIFACE_BASE. 2021-09-14 23:45:14 +01:00
jean-pierre charras
57cfde3123 kicad_pyeditor.py: add missing imports
Fixes #9109
https://gitlab.com/kicad/code/kicad/issues/9109
2021-09-08 17:31:41 +02:00
Mikolaj Wielgus
0c66cb85e3 Python console: Adjust dark theme colors to look better
Fixes https://gitlab.com/kicad/code/kicad/issues/8928
2021-09-06 21:15:40 +00:00
qu1ck
0f7c0e3872 PCM implementation 2021-08-27 21:11:47 +00:00
qu1ck
78ab69027d Add 3rdparty/plugins to plugin search 2021-08-27 21:11:47 +00:00
jean-pierre charras
7a7eee86ce kicad_pyshell/__init_py: avoid loading pcbnew module if the board editor is not open.
It happens when opening the python console from Eeschema.
In this case, and on msys2, Pgm() returns a null pointer because the pcbnew
application is not initialized, and the first call to Pgm()
from a python script crashes Kicad
2021-08-15 15:11:07 +02:00
jean-pierre charras
eece74efa7 kicad_pyeditor.py: remove useless "import pcbnew" that create issues when created from Eeschema 2021-08-15 12:37:39 +02:00
Seth Hillbrand
e87fdf06c1 Wrap GetNewId() for older wxPythons
18.04 and earlier use wxPython 4.0.1 that doesn't have the new Id call.
This wraps the id to use the earlier version if the newer one is not
available

Fixes https://gitlab.com/kicad/code/kicad/issues/8887
2021-07-30 10:36:15 -07:00
Jeff Young
6aaf4413b3 Fix kicad_string.h / string.cpp mismatch.
They don't define a KiCad string class, so the header file name was
somewhat misleading. But the fact that they didn't match definitely
made coding more difficult.
2021-07-29 16:03:25 +01:00
Marek Roszko
7ff9806386 Add skipped pdb copy to kipython 2021-07-15 21:30:59 -04:00
Seth Hillbrand
76a6177eb7 Re-direct help() output to console
Keeps a copy of stdin as well, so that re-assigning this in the python
window does't close the output

Fixes https://gitlab.com/kicad/code/kicad/issues/8047
2021-07-12 16:22:07 -07:00
Wayne Stambaugh
6c3ba1c20b Coverity issue fixes.
Issues #332032, #332086, #332157, and #332171.
2021-07-09 10:56:35 -04:00
Jeff Young
0dfb5fcaf9 Error message cleanup.
wxString::Format is redundant in a wxLogXXX call.
Error messages should generally be translatable.
Error messages should use generally consistent sentence forms.
2021-06-26 22:53:24 +01:00
Jon Evans
b611da161e Ensure console can be loaded from Eeschema standalone
PcbNew sets up the correct path as a side-effect of loading
the action plugins.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/8661
2021-06-23 22:43:53 -04:00
Peter Montgomery
b4f5b6ef3c Update environment var for Python to allow running from build or install folder 2021-06-15 01:12:45 +00:00
luz paz
f968fc8719 Fix source comment / documentation typos 2021-06-09 19:32:58 +00:00
Marek Roszko
0ffabf5e70 Shift the msvc specific pythonhome init 2021-06-08 23:39:22 -04:00
Marek Roszko
ab82b01714 Evict the last bits of wx.h 2021-06-07 20:23:27 -04:00
Seth Hillbrand
891e200fc8 Use Python to test for modules (not CPython)
CPython call requires Python 3.8+, so we work around to keep the 3.6
users happy

Fixes https://gitlab.com/kicad/code/kicad/issues/8554
2021-06-07 13:56:31 -07:00
Jon Evans
148ac19386 Fix launching from the build dir after new_python 2021-06-01 21:37:33 -04:00
Marek Roszko
0dbfd28942 Remove unused vars 2021-06-01 18:49:55 -04:00
Marek Roszko
04ab71c47c Tweaks to build 2021-06-01 20:18:24 +00:00
Seth Hillbrand
c0bc6b1107 Fix compile errors on MSVC 2021-06-01 20:18:24 +00:00
Seth Hillbrand
e050d42658 Re-enable KICAD_SCRIPTING_WXPYTHON
This keeps wxpython behind a build flag for platforms (mingw) that do
not yet support it.
2021-06-01 20:18:24 +00:00
Seth Hillbrand
e151130356 Adjust init for Python >=3.6 2021-06-01 20:18:24 +00:00
Seth Hillbrand
11592e6eae Fix scripting window issue not saving settings 2021-06-01 20:18:24 +00:00
Seth Hillbrand
bf1437899e Add Python Tool to pcbnew 2021-06-01 20:18:24 +00:00
Seth Hillbrand
c7d188a8d0 Centralizing SCRIPTING class 2021-06-01 20:18:24 +00:00
Seth Hillbrand
192fbfd5e5 Finalize Python Frame 2021-06-01 20:18:24 +00:00
Seth Hillbrand
256f259627 Fix PyBind11 _ usage to be compatible with i18n 2021-06-01 20:18:24 +00:00
Seth Hillbrand
81d58bcea9 Working python window 2021-06-01 20:18:24 +00:00
Seth Hillbrand
6fbbba8db3 Adding Python shell KIFACE 2021-06-01 20:18:24 +00:00
Seth Hillbrand
f274a00c08 Remove PYTHON_* compile options 2021-06-01 20:18:24 +00:00
qu1ck
75819206a0 Add support for dark theme in plugin icons
Action plugin authors can specify alternative icon path for dark theme.
If it's not specified then standard icon will be used for both light and
dark themes. If neither icon is specified then the default puzzle piece
icon is used.

Fixes #7984
2021-03-24 21:59:30 +00:00
jean-pierre charras
49ce32b403 Fix a minor python2/python3 compatibility issue on MSW 2021-03-03 18:42:51 +01:00
jean-pierre charras
959c2f18ab Fix python encode( 'UTF-8' ) error
Fixes #7650
https://gitlab.com/kicad/code/kicad/issues/7650
2021-02-22 09:43:52 +01:00
Seth Hillbrand
5354780904 Fix Linux/Python3 issue with plugins
Strings are not always encoded, so we get exceptions when trying to
double-decode.  Just keep strings as-in in this case
2021-02-21 11:22:43 -08:00
jean-pierre charras
8beeb368d2 Scripting: Fix missing utf8 to unicode string conversion in swig file
So non ASCII7 chars in .py filenames were non working, especially on Windows.
Fixes #5507
https://gitlab.com/kicad/code/kicad/issues/5507
2021-02-21 11:38:10 +01:00
Jon Evans
ec334f172b Fix some issues with reloading of action plugins
First issue: the C++ action plugins list should be cleared so that any
plugins that fail to reload do not hang around on the toolbar.
This is fixed on the C++ side.

Second issue: inner dependencies of plugins that are modules were not
reloaded before, which broke reloading for many plugin examples out there.
This is fixed on the Python side by keeping track of dependencies and
clearing them out before reloading a module (unfortunately there doesn't
seem to be a way to do this in the standard library)

Fixes https://gitlab.com/kicad/code/kicad/-/issues/7245
2021-02-20 11:19:33 -05:00
Marek Roszko
30ba3aa240 Get python loading the new "user scripting" paths 2021-01-28 23:45:53 -05:00