Campbell Barton
a133b74709
Merge branch 'master' into blender2.8
2017-09-08 03:18:39 +10:00
Campbell Barton
60020f57d7
Correct function name in argument parsing
2017-09-08 00:59:27 +10:00
Campbell Barton
e44bf43f6c
PyAPI: add function to get an RNA subclass
...
This is inconvenient in regular Python, add a class-method
to perform the operation, eg:
bpy.types.Node.bl_rna_find_subclass("CustomNodeType")
2017-09-08 00:02:09 +10:00
Campbell Barton
572b1a644f
Merge branch 'master' into blender2.8
2017-09-05 22:56:03 +10:00
Campbell Barton
f4fb329808
RNA/PyAPI: Expose Py classes in bpy.types
...
Operators and their properties are two different types
Previously both operators and their properties are added
causing C operators to access the properties, Python the classes.
Favor consistency in this case so only Python classes are added.
2017-09-04 14:49:27 +10:00
Campbell Barton
85d53620aa
Cleanup: avoid confusing assignment
2017-09-04 14:35:35 +10:00
Campbell Barton
32e36a1782
Correct own error simplifying matrix checks
2017-09-03 00:05:11 +10:00
Campbell Barton
c843e84892
Merge branch 'master' into blender2.8
2017-09-01 02:30:48 +10:00
Campbell Barton
636baa598a
RNA: Limit which classes struct-map contains
...
Only add subclasses of: Menu, Panel, Header, UIList, Operator
This helps avoid unnecessary naming collisions,
See T52599 for details
2017-08-31 23:49:50 +10:00
Campbell Barton
2f8c8ec8fb
Docs: BMesh.from_mesh behavior w/ multiple calls
2017-08-28 14:25:00 +10:00
Campbell Barton
cb7f1f8160
Docs: BMesh.from_mesh behavior w/ multiple calls
2017-08-28 12:40:36 +10:00
Campbell Barton
f8f6f8f26e
Merge branch 'master' into blender2.8
2017-08-25 20:45:16 +10:00
Campbell Barton
738d942d29
Correct error in recent use of PyC_Long_*
...
Regression in 46cf33bf0
2017-08-25 02:09:23 +10:00
Campbell Barton
cb4884f50b
Merge branch 'master' into blender2.8
2017-08-23 20:16:47 +10:00
Campbell Barton
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
Campbell Barton
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
Campbell Barton
917d069cdb
Merge branch 'master' into blender2.8
2017-08-23 19:21:52 +10:00
Campbell Barton
55861cb234
PyAPI: avoid instantiating args twice in macro
...
Would cause problems if args included function calls.
2017-08-23 18:48:32 +10:00
Campbell Barton
58a4c767a1
Merge branch 'master' into blender2.8
2017-08-23 16:10:45 +10:00
Campbell Barton
f09dee5aed
Fix error in PointerProperty argument list
...
Regression in a7b3047
2017-08-23 02:14:33 +10:00
Campbell Barton
f4fe405da9
Manipulator: Add API target_get/set/range wrappers
...
Allows Python manipulators access the values of target properties
needed for Python to make use of the general target property interface.
2017-08-22 18:57:38 +10:00
Campbell Barton
bd935b5aed
Merge branch 'master' into blender2.8
2017-08-22 18:21:05 +10:00
Campbell Barton
ccff7c3c82
PyAPI: Minor gawain corrections
2017-08-22 18:13:19 +10:00
Campbell Barton
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
Brecht Van Lommel
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
Campbell Barton
adabc315e9
PyAPI: add gpu.select (initial module)
...
This only exposes load_id, it's needed for Python manipulator drawing.
2017-08-20 23:13:42 +10:00
Campbell Barton
2530ae6c74
Merge branch 'master' into blender2.8
2017-08-20 21:22:00 +10:00
Campbell Barton
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
Campbell Barton
cb03cc6600
PyAPI: gpu.matrix.push_pop context manager
...
Avoid un-balanced push/pop usage (which can interfere with Blender's
internal state) using a context manager.
2017-08-20 19:42:31 +10:00
Campbell Barton
f6825d333b
Fix bpy library load: invalid function signature
2017-08-20 19:04:16 +10:00
Campbell Barton
8037f3602f
PyAPI: Add exceptions to stack push/pop
...
Raise exception when stack limits are reached.
2017-08-20 17:26:51 +10:00
Campbell Barton
33b265c4fb
PyAPI: use PyC_Long_As... for gawain
...
Avoids inline overflow checks.
2017-08-20 15:58:37 +10:00
Campbell Barton
7497488149
Merge branch 'master' into blender2.8
2017-08-20 15:50:15 +10:00
Campbell Barton
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
Campbell Barton
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
Campbell Barton
2ff9c8a3bc
PyAPI: avoid redundant PyLong_AsLong call
...
Assigning to an RNA array converted from Python to C twice.
2017-08-20 15:30:14 +10:00
Campbell Barton
64c7cf2036
PyAPI: correct int range checking
2017-08-20 10:34:21 +10:00
Campbell Barton
4e4e872478
PyAPI: Add gpu.matrix API
2017-08-20 00:01:19 +10:00
Campbell Barton
2332051419
Merge branch 'master' into blender2.8
2017-08-19 21:54:05 +10:00
Campbell Barton
1cc4033df8
PyAPI: expose matrix parsing function
2017-08-19 21:36:50 +10:00
Campbell Barton
4437ccf476
Correct error in gawain wrapper for non-gcc compilers
2017-08-19 20:22:15 +10:00
Campbell Barton
6fe38bf1cc
PyAPI: Gawain checks for range
...
Raise error on vert-buffer data overflow.
Also exception on attempting to fill data thats already on the GPU.
2017-08-18 18:58:52 +10:00
Campbell Barton
4e468ceb71
PyAPI: Fix memory leak w/ empty, allocated enums
2017-08-18 18:29:27 +10:00
Campbell Barton
d0dad02604
Cleanup: use lowercase prefix for local API's
...
Also some minor corrections.
2017-08-18 08:58:26 +10:00
Campbell Barton
cb67873ac5
PyAPI: Iniital gawain API for Python
...
Wraps vertex-format, vertex-buffer and batch's (enough for drawing).
Doesn't yet expose index-buffers or shaders.
2017-08-18 08:45:41 +10:00
Campbell Barton
73df38a879
RNA: don't register manipulator properties by name
...
Matching behavior for operators.
2017-08-18 07:50:31 +10:00
Campbell Barton
a60727080f
Merge branch 'master' into blender2.8
2017-08-12 14:06:29 +10:00
Bastien Montagne
c034193821
Cleanup: remove useless DM_ensure_looptri().
...
That one was doing exactly same thing as `dm->getLoopTriArray()`, no
point in having twice the same code here...
2017-08-11 17:08:41 +02:00
Campbell Barton
9567529b8f
Merge branch 'master' into blender2.8
2017-08-12 00:23:49 +10:00
Campbell Barton
daa834bc11
RNA: Operators were excluded from struct map
...
Recent changes meant structs that were registered without a name
wouldn't get added to the map.
Now assigning identifiers manages the struct-map.
2017-08-11 20:11:01 +10:00