2083a7e274
Cleanup: style (pointers)
2018-10-11 09:03:39 +11:00
63658ae76d
Cleanup: redundant include
2018-09-26 10:55:22 +10:00
a4f2ebc78d
Spelling fixes in comments and descriptions, patch by luzpaz.
...
Differential Revision: https://developer.blender.org/D3700
2018-09-19 18:18:05 +02:00
44f719b632
Cleanup: use PyImport_GetModuleDict
...
Replace direct access using PyThreadState_GET
2018-09-13 17:06:07 +10:00
7ff1750218
PyAPI: add optional imports to expression eval API
...
Avoids having to use `__import__` to access modules.
2018-09-03 12:43:43 +10:00
0ddf3e110e
Cleanup: comment blocks
2018-09-02 18:51:31 +10:00
98800aa4e0
C/Python API: Add PyC_RunString_AsIntPtr
...
Utility to get an int or pointer from a Python expression.
2018-08-31 14:21:32 +10:00
6a39d72558
Cleanup: declare vars or make static
2018-08-01 08:57:31 +10:00
21f61cbe73
BLF: replace global aa pref w/ monochrome flag
...
Now disabling anti-aliasing doesn't impact sequencer, render stamp etc.
2018-07-31 16:57:05 +10:00
ff6c6f18c1
Cleanup: id-property creation
...
D3473 by @JacquesLucke
2018-07-30 16:36:07 +10:00
ddee0931b8
RNA: use bool for boolean RNA types
...
We were using int's for bool arguments in BKE,
just to avoid having wrapper functions.
2018-07-01 15:57:59 +02:00
af36dd4664
Cleanup: trailing newlines
2018-06-29 08:02:49 +02:00
df237b964b
PyAPI: add ImBuf.copy
...
DD348 by @kilon w/ edits.
2018-06-26 09:31:57 +02:00
a69f985f40
PyAPI: move deep-copy args check to py_capi_utils
2018-06-26 09:31:57 +02:00
cbf5c738d6
Cleanup: get rid of last G.main's in bpy area.
...
Essentially 'validating' them as G_MAIN, and adding some asserts in
dubious places, that handled IDs are actually in G_MAIN.
2018-06-22 11:37:47 +02:00
409cfba1a3
Python API: Initial 'imbuf' API
...
Support only basic operations new/load/write & resize.
Add now so we can extend as needed & more easily accept patches.
2018-06-07 08:00:13 +02:00
7719c11006
Cleanup: strip trailing space in Python module
2018-06-04 08:54:40 +02:00
d3b3df0371
IDProp API: add native C repr function
...
Was using Python which wasn't very efficient (even for logging).
2018-05-05 14:41:25 +02:00
d2591e5c2d
IDProp Py API: Add default argument to pop
...
Match dict.pop behavior.
2018-05-05 09:48:06 +02:00
f3c5b0394f
IDProp API: expose repr utility function
...
Useful for logging properties passed to operators.
2018-05-04 07:29:05 +02:00
31f2a6755d
PyAPI: Add PyC_Tuple_Pack_F64 utility
2018-04-02 19:48:34 +02:00
017c731cf3
Logging: use for Python API
...
Adds categories "bpy.context" & "bpy.rna"
2018-04-02 13:13:57 +02:00
0b325ba201
PyAPI: PyC_Err_PrintWithFunc utility function
...
Move function error printing utility into py_capi_utils.
2017-11-29 13:41:10 +11:00
0a435d49ba
Fix T53074: Use the pybuffer->itemsize to get the corresponding GLtype
...
It seems that `typestr` does not always define the final size of the element. And it varies by operating system.
Then use the `typestr` only to know the itemtype is `float` type or not.
2017-10-17 12:06:52 -02:00
c454d816a9
Cleanup: style
2017-10-06 16:56:41 +11:00
08f728a3e9
Cleanup: redundant casts
2017-10-04 16:52:55 +11:00
92272f56e6
PyAPI: fast keyword parsing for __import__
...
No functional changes.
2017-10-04 15:54:41 +11:00
1f18523edf
Cleanup: switch fall-through warning
2017-09-28 13:41:54 +10:00
5c6e3ff497
bgl module: extend gl_buffer_type_from_py_format_char function to work with more string formats
...
Only basic types of character codes were being used
2017-09-27 16:07:06 -03:00
6c98859b77
Cleanup: warning
2017-09-28 02:04:58 +10:00
2de5e14f53
bgl module: Interpret a buffer as a bgl.Buffer
...
Differential Revision: https://developer.blender.org/D2857
2017-09-27 11:20:00 -03:00
60956397ca
Cleanup: BLI_utildefines prefix for header-only libs
...
This allows to have different macro headers without them sharing
similar names to regular C modules.
2017-09-19 20:16:05 +10:00
b9513706cb
Cleanup: mark VA_NARGS_COUNT as public
...
Was already used in two other headers, remove underscore prefix.
2017-08-23 20:16:17 +10:00
37cfa44222
Cleanup: move variadic defines to their own header
...
So we can use in headers without pulling in many other defines.
2017-08-23 20:16:17 +10:00
55861cb234
PyAPI: avoid instantiating args twice in macro
...
Would cause problems if args included function calls.
2017-08-23 18:48:32 +10:00
691ed21842
PyAPI: replace PyC_FromArray with typed functions
...
This was meant to be generic but introduced possible type errors
and unnecessary complication.
Replace with typed PyC_Tuple_PackArray_* functions.
Also add PyC_Tuple_Pack_* macro which replaces some uses of
Py_BuildValue, with the advantage of not having to parse a string.
2017-08-22 18:10:57 +10:00
81a76469ca
Fix for recent fix in fc890cd, cstdint is c++11 only so don't use it yet.
2017-08-21 19:05:17 +02:00
e27a59d411
Replace BLI_INLINE w/ Py_LOCAL_INLINE for Python
...
Recent inclusion caused build error with the BGE.
2017-08-20 21:14:33 +10:00
46cf33bf01
PyAPI: Make use of PyC_LongAs... API
...
Avoids setting exceptions inline,
also use Matrix_ParseAny for bmesh.ops.
Some inline exceptions are kept because they show useful details.
2017-08-20 15:49:10 +10:00
a10a7f42de
PyAPI: Integer conversion functions
...
Python's C-API doesn't provide functions to get
int's at specific integer sizes.
Leaving the caller to check for overflow,
which ended up being ignored in practice.
Add API functions that convert int/uint 8/16/32/64, also bool.
Raising overflow exception for unsupported ranges.
2017-08-20 15:39:08 +10:00
3d1e5bca88
PyAPI: don't use deprecated PyModule_GetFilename
...
Allows compiling with newer Python versions.
Also add missing decref when compiling as a py-module.
2017-07-17 12:53:55 +10:00
a7b3047cef
Datablock ID Properties
...
The absence of datablock properties "will certainly be resolved soon as the need for them is becoming obvious" said the [[http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.67/Python_Nodes |Python Nodes release notes]]. So this patch allows Python scripts to create ID Properties which reference datablocks.
This functionality is implemented for `PointerProperty` and now such properties can be created with Python.
In addition to the standard update callback, `PointerProperty` can have a `poll` callback (standard RNA) which is useful for search menus. For details see the test included in this patch.
Original author: @artfunkel
Alexander (Blend4Web Team)
Reviewers: brecht, artfunkel, mont29, campbellbarton
Reviewed By: mont29, campbellbarton
Subscribers: jta, sergey, campbellbarton, wisaac, poseidon4o, mont29, homyachetser, Evgeny_Rodygin, AlexKowel, yurikovelenov, fjuhec, sharlybg, cardboard, duarteframos, blueprintrandom, a.romanov, BYOB, disnel, aditiapratama, bliblubli, dfelinto, lukastoenne
Maniphest Tasks: T37754
Differential Revision: https://developer.blender.org/D113
2017-04-13 12:33:05 +03:00
73a9ff0d2d
PyAPI: Fast buffer access to id property arrays
...
Support Python's buffer protocol for ID-properties.
2017-04-10 21:12:02 +10:00
e392bb4937
PyAPI: add BPY_execute_string_as_string
...
Utility to execute a string and get the resulting string,
matching BPY_execute_string_as_number.
Not used just yet but generally useful function.
2017-03-18 12:19:03 +11:00
d863b5182e
Cleanup: use return args last and 'r_' prefix.
2017-03-18 09:39:36 +11:00
a96c9def6f
PyAPI: minor optimization for dictionary creation
...
Pass size when its known.
2016-07-31 17:22:04 +10:00
e97ab8347a
PyAPI: fix leak in unlikely case converting idprops fail
2016-07-31 16:59:08 +10:00
2dfc954c4a
PyAPI: Add PyC_UnicodeAsByteAndSize
...
Read the string length from Python directly when assigning id-properties
2016-07-31 16:52:44 +10:00
409316434c
Docs: add initial idprop.types API docs
2016-07-31 15:40:40 +10:00
c885cea7bb
Cleanup: spelling
2016-07-16 17:48:57 +10:00