Commit Graph

56 Commits

Author SHA1 Message Date
wmayer
d2168f51b9 Base: modernize C++: replace 'typedef' with 'using' 2022-08-29 11:42:09 +02:00
luz paz
c457f3bfbd Fix various 'testing inequality to None' syntax issues
Substitute `is not None` for `!= None`
2022-07-30 22:41:31 -04:00
Uwe
9fcb98d9c6 Revert "remove unused python<3.6 code"
This reverts commit 0a6d271121.
2022-06-19 16:23:13 +02:00
andrea
0a6d271121 remove unused python<3.6 code 2022-06-19 15:33:44 +02:00
wmayer
9160f06e1c Base: rename BaseExceptionFreeCADError to PyExc_FC_GeneralError 2022-03-17 14:45:48 +01:00
wmayer
31e2e95203 Base: Exception handling:
* Harmonize FreeCAD with Python exception types
* Implement AbortException::getPyExceptionType() to avoid handling it in client code
* Remove catch block for plain C strings
2022-01-19 18:00:04 +01:00
luz paz
05a22ec22d Misc: remove py2 code 2021-04-27 18:52:01 +02:00
wmayer
2f276601f8 Fix generation and build of python classes for 3.8 2021-04-27 14:35:34 +02:00
markus
aa0dcff74f Fix generation and build of python classes for 3.9 2021-04-27 00:41:53 +02:00
wmayer
af16ab02a0 Base: remove some more deprecated Py2 code
and remove deprecated void from function signature and replace 0 or NULL with nullptr
2021-04-26 10:29:48 +02:00
wmayer
111a21e45c Base: do not report C++ exception when converting it to Python exception
See https://forum.freecadweb.org/viewtopic.php?f=23&t=56464
2021-04-11 14:54:11 +02:00
wmayer
da4a2e4ea4 Py3: suppress warning: 'tp_print' is deprecated [-Wdeprecated-declarations]
If the tp_print slot is not set the warning -Wmissing-field-initializers is raised. If it's set then -Wdeprecated-declarations is raised.
So, the only way is to suppress it.
2020-10-15 17:07:39 +02:00
wmayer
bc6fefe3a0 Py3: fix warning: missing field 'tp_print' initializer [-Wmissing-field-initializers]
This warning is only specific to Py3.8. See https://docs.python.org/3/c-api/typeobj.html
2020-10-15 10:35:47 +02:00
wmayer
e4d531bb8b Py3.8: missing initializer for member '_typeobject::tp_vectorcall' [-Wmissing-field-initializers] 2020-06-08 14:32:21 +02:00
luz.paz
fad1badd05 Fix typo in templateClassPyExport.py [skip ci] 2019-12-23 16:50:23 +01:00
wmayer
228f89638d Python: change generation of callback functions for class or static methods 2019-12-19 17:55:12 +01:00
wmayer
1ec6701519 handle nested name spaces in Python generation script 2019-11-20 22:57:58 +01:00
wmayer
5c7bef0ad8 add support of static and class methods in Python wrappers 2019-11-12 23:24:42 +01:00
Zheng, Lei
8ecee3c413 Tools: modify exception catch implemention in templateClassPyExport 2019-08-28 17:46:07 +02:00
wmayer
83f61b4372 implement true divide handler of the number protocol for Quantity 2018-10-27 15:27:27 +02:00
wmayer
4a717a8a44 Make destructors of all generated Py class protected
This is to avoid to create an object on the stack and thus to clutter Python's reference counting mechanism
2018-09-19 18:22:22 +02:00
luz.paz
b214f606c4 Misc. typo and whitespace fixes
ref: https://forum.freecadweb.org/viewtopic.php?f=3&t=30988#p256964
along with other misc. fixes
2018-09-19 17:26:03 +02:00
Michal Ulianko
faf8834484 py3.7 fix
PyUnicode_AsUTF8() returns const char* in py3.7 instead of char*. Making
changes to reflect that which should also be safe in
other Python versions.
2018-09-01 22:44:39 +02:00
wmayer
68f6c82eb1 fix -Wcast-function-type 2018-08-19 13:11:08 +02:00
looooo
18b6544883 win: pybind11: workaround for strdup 2018-04-23 09:56:23 +02:00
wmayer
b8eb1ec841 fix generation script of Python wrapper 2017-11-16 14:30:39 +01:00
luzpaz
ab8f8919b6 Misc. typos
+ some are doxy others are just comment code.  
+ some minor whitespace and grammatical tweaks. 
+ app/SCL/* typos have also been submitted upstream (https://github.com/stepcode/stepcode/pull/366). So it's ok to merge them in to master.
2017-10-04 17:59:11 +02:00
wmayer
c4c1034e4e Py3: replace sq_slice and sq_ass_slice with mp_subscript and mp_ass_subscript because they are not used any more in Py3 2017-08-21 13:33:07 +02:00
Abdullah Tahiri
04c09b3016 Generator script modified to first report and then ask for the python representation, so as keep track of the reported status 2017-08-17 22:47:14 +02:00
wmayer
bf693725f4 py3: support of Python 3.4 2017-06-07 15:28:46 +02:00
wmayer
69d0e8bd7f py3: partially revert of getattr -> getattro because getattro is only needed for the static callback function
issue 0000995
2017-06-03 10:51:05 +02:00
looooo
bc696e5ab5 py3: change of getattr -> getattro
issue 0000995
2017-06-03 10:51:05 +02:00
wmayer
2fa2370ef1 remove const from exception handler to fix build failure 2017-05-13 17:33:13 +02:00
Abdullah Tahiri
a7bc962ce5 Renaming getPyDict to getPyObject for consistency with BaseClass 2017-05-13 15:27:57 +02:00
Abdullah Tahiri
b410f8857c Enable exceptions to save/restore information in a python dictionary and enable throwing exception from dictionary information 2017-05-13 15:27:57 +02:00
Abdullah Tahiri
fbca57bd36 Use PyErr_setObject with a PyDict to set Base::Exception information to BaseFreeCADError Python exception 2017-05-13 15:27:57 +02:00
wmayer
df1e2642d0 replacement for PR 698 2017-04-27 23:05:40 +02:00
Kunda
784edd3f82 Typo fixes for doxygen and source comments
issue #0002914
2017-03-31 11:25:57 -03:00
wmayer
09846721f2 make sure that the passed 'self' pointer to a method of the Python wrapper is never null 2017-01-24 12:34:23 +01:00
wmayer
e45a099698 extend generation framework to set Python class name 2016-12-03 12:50:36 +01:00
wmayer
b4020f2cc8 fix bug in generation script 2016-10-08 18:48:27 +02:00
wmayer
9ac1810ea3 Fix issues:
+ improve formatting
+ remove superfluous semicolons
+ comment unused parameters
+ rename Initialisation to Initialization
+ rename Deinitialisation to Finalization
+ remove spaces
2016-10-08 12:48:34 +02:00
Stefan Tröger
93222098f0 Extensions: Allow them to be added dynamically 2016-10-08 12:48:34 +02:00
Stefan Tröger
4c42181e34 Extensions: Show up in the python interface 2016-10-08 12:48:34 +02:00
wmayer
c48a9bfead fix -Wunused-parameter 2016-09-23 16:37:12 +02:00
wmayer
f408f3180b fix -Wextra in FreeCADBase 2016-09-21 15:02:02 +02:00
wmayer
5cc7f8b10c + remove Py_TPFLAGS_BASETYPE flag for all generated Python bindings because they can't be sub-classed in Python 2015-10-12 19:59:58 +02:00
wmayer
ee28daa669 + replace old C casts with static_cast in generated C++ code, remove unused parent structure of Python classes, support of -1 as return value of setCustomAttributes 2015-09-27 22:08:08 +02:00
wmayer
8fb596221f + fixes #0001794: new defined as a macro sometimes conflicts with boost 2014-10-22 12:39:43 +02:00
Sebastian Hoogen
ed66ada1cf issue #1700 replace PyExc_Exception 2014-09-17 11:15:57 +02:00