Age | Commit message (Collapse) | Author |
|
|
|
using a different method.
|
|
- errors would jump to the line which gets in the way.
- the window wouldn't always redraw.
|
|
|
|
|
|
multi-dimensional array assignment reads the array 3 times (typecheck, length-check & for-real).
the length check was running sequence checks on every number which would fail, small speedup by avoiding this.
should eventually get this working faster by reading once into an allocated array.
|
|
|
|
functions, found this could be done in a better way which doesnt have to deal with partly initialize instances being freed.
|
|
|
|
|
|
ifdef'd out weakref for blender/py api, worth testing to see if it adds much overhead.
|
|
|
|
note: BPY_class_validate() could come in handy later if we need to check classes for properties/functions but for now there is no point in keeping it in.
|
|
|
|
initialized.
|
|
line, added moving to exact column for syntax errors too.
|
|
|
|
|
|
minor formatting changes for C docstrings.
|
|
|
|
|
|
The butterfly wing flap, causing a nice storm in the rest of blender.
Now all dependencies should point ok again. CMakers, do double-test.
|
|
|
|
embedding python.
CMake build option WITH_PYTHON_MODULE, will build ./bin/bpy.so
This allows 'bpy' to be imported from python or other applications/IDE's which embed python, eg:
python -c "import bpy ; bpy.ops.render.render(write_still=True)"
This runs in background mode and has similar restrictions to running a script:
blender --background --python test.py
TODO:
- install to site-packages with blender scripts
- add support for imp.reload()
|
|
also set minimum cmake version to 2.8
|
|
- rename layout.operator_enums -> operator_enum (since we have operator_menu_enum, only called in 4 places)
|
|
internal interpreter problems.
Replace most with RuntimeError.
|
|
Annoyance was that operators that defined and __init__ function would need to do...
def __init__(self, another_self):
....
py/rna was calling the class directly with PyObject_Call() but needed to pass the pre-allocated object only so __init__() would run .
This works OK internally but becomes messy since __new__ and __init__ always get the same args there was no way to avoid a superfluous self argument to __init__.
|
|
|
|
also renamed IDProperty to PropertyGroupItem (these are not referenced for common usage and we already have 'Property' defined).
|
|
|
|
r34883).
Full description:
When defining an operator button in the UI layout code, trying to set
the value for such an operator's enum properties, where said enum uses
a dynamically generated list of items (which depends on using context
info), will "fail". No context info will be passed to the callbacks
used to generate this list of items, as PROP_ENUM_NO_CONTEXT is still
set on the operator properties (it seems these will only get cleared
when the operator actually runs, which is far too late already for
this usage) so RNA_property_enum_items() will pass NULL instead of a
context pointer *even* when one exists!
I'm not sure of why we even need this flag. It seems to have caused a
few other rounds of problems already, from quick searches I did on
this matter...
|
|
|
|
outside the image.
|
|
|
|
|
|
header static for blenlib, blenkernel and editors.
|
|
StructRNA.__new__(...) used for creating new classes and corrected exception type.
|
|
|
|
method.
eg:
if MySybclass.is_registered:
...
|
|
|
|
no functionality change.
|
|
- rename rna collection structs Main prefix to BlendData: eg, MainObjects --> BlendDataObjects
- printing python collection now prints its type (when available)
- renamed shadowed vars in bpy_rna.c.
- when making functions static I also made debugging/test functions static, reverse and add definitions to headers instead.
|
|
python functions.
- use NULL rather then 0 where possible (makes code & function calls more readable IMHO).
- set static variables and functions (exposed some unused vars/funcs).
- use func(void) rather then func() for definitions.
|
|
mostly replace strcpy with BLI_strncpy and multiple strcat's with a BLI_snprintf().
also fix possible crash if CWD isnt available.
|
|
- modifier code was using sizeof() without knowing the sizeof the array when clearing the modifier type array.
- use BLI_snprintf rather then sprintf where the size of the string is known.
- particle drawing code kept a reference to stack float values (not a problem at the moment but would crash if accessed later).
|
|
Synonymous with ('bl_rna' in cls.__dict__)
|
|
- KeyingSetInfo classes are now collected like Panels, Operators etc so bpy.utils.register_module() can be used.
- move bpy.types.register() to bpy.utils.register_class
|
|
matrix__apply_to_copy() and similar.
+ other minor internal changes.
|
|
- python 3.2 does 'import site' on startup which now tries to parse pyconfig.h which isn't copied. so for now just run without importing 'site', alternative would be to copy the header file for posix systems.
- cache PYTHON_VERSION variable so it can be set to 3.2, needed for copying python installation's other then 3.1.
|