Age | Commit message (Collapse) | Author |
|
Python 3.7x added support for module `__getattr__` & `__dir__`.
Make use of this for operator access,
previously these were module like classes.
No functional changes, this is mostly to use a type which is expected,
rather than faking the type with a class instance.
|
|
Use dynamically generated message publish/subscribe
so buttons and manipulators update properly.
This resolves common glitches where manipulators weren't updating
as well as the UI when add-ons exposed properties which
hard coded listeners weren't checking for.
Python can also publish/scribe changes via `bpy.msgbus`.
See D2917
|
|
Split over lines to diff more easily.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
decorator style, eg:
# --------
import bpy
from bpy.app.handlers import persistent
@persistent
def my_func(scene):
pass
bpy.app.handlers.frame_change_pre.append(my_func)
|
|
|
|
from bpy.types import Menu
|
|
__all__ to some modules which were missing it.
|
|
mode.
|
|
|
|
are sorted.
|
|
also quiet some warnings & add docstrings to bpy module which was shaowing the GPL header in its help() message.
|
|
|
|
ui/ --> startup/bl_ui
op/ --> startup/bl_operators
scripts/startup/ is now the only auto-loading script dir which gives some speedup for blender loading too.
~/.blender/2.56/scripts/startup works for auto-loading scripts too.
|
|
then on startup since importing pydoc pulls in lots of other modules too.
|
|
|
|
modules.
|
|
- reload() has been removed from pythons builtins. use imp.reload() instead (still need to apply globally).
- fixed own mistake, not ignoring 'filter_glob' as a keyword argument (broke fbx, obj, 3ds export)
|
|
|
|
Added an operator "Update Animation Data",
access from the search menu to update drivers and fcurves.
|
|
also made all other exporters do this.
Made some internal changes.
- moved path functions from bpy.utils to bpy.path (similar to os.path)
- added functions...
bpy.path.ensure_ext(path, ".ext", case_sensitive=False) # simple function to ensure the extension is set.
bpy.path.resolve_ncase(path) # useful for importing scenes made on windows where the path case doesnt match the files.
|
|
blender and drop into a python console, (useful for debugging some problems on a renderfarm over ssh)
- Also made it so sys.stdin isnt overwritten anymore, instead the interactive consoel overwrites while it executes and restores after.
- removed hope folder from sphinx patch path
|
|
replace pydoc's pager function so the console's input isnt used.
|
|
|
|
setting sys.stdin to None is done so python wont lock blender when it tries to read from the input. - help() from the console does this.
Running blender with -d keeps the stdin so python debugging can work. add info in the help message about this.
eventually it might be best to replace sys.stdin with our own object which interacts with the console but this is not trivial.
|
|
this has been used by various projects but needs to be justified since it wont remove paths that also resolve to the CWD, "." for instance.
|
|
|
|
- bpy.app moved into PyStructSequence (used by sys.float_info)
- added buildinfo into bpy.app.build_*
- bpy.ui removed (wasnt used)
- include external example files in Mathutils docs (only Mathutils and Vector are currently written)
- added support to auto document PyStructSequence's
- CMake had "'s inside all its strings.
|
|
|
|
added sequencer strip length display in seconds
|
|
http://www.blender.org/documentation/250PythonDoc/Mathutils.html
* Vector.difference() needed normalized vectors
* bpy.DEUBG -> bpy.app.debug
|
|
- error with last commit, length had an index arg.
|
|
|
|
- modify the path in python rather then C
- filter returns an object in python 3, set using slice.
also import sys as _sys so it doesnt appier in aytocompleation.
|
|
- reload modules from types that are not directly included. for example wm.py uses classes from modules/rna_prop_ui.py which wasnt reloaded.
- script paths were being added to sys.path multiple times.
note: now the second reload gives a crash right away but this is a bug elsewhere.
|
|
- not a bug so add a warning if people add scripts with invalid names like this.
|
|
from bpy.app import binary_path, version, version_string, home
can add constant variables from blender here as needed (maybe functions too... bpy.app.memory_usage() ?)
|
|
* bpy.home - result of BLI_gethome()
* bpy.version - BLENDER_VERSION/100, BLENDER_VERSION%100, BLENDER_SUBVERSION
* bpy.version_string, as above, formatted: "%d.%02d (sub %d)"
|
|
|
|
On ubuntu/debian install these tools...
sudo apt-get install pylint pyflakes python-setuptools python-pip
sudo pip install pep8
then run from blenders source dir...
python release/test/pep8.py
This searches for the comments "# <pep8 compliant>" and "# <pep8-80 compliant>", running the checking tools on these scripts only.
* some minor pep8 corrections too.
|
|
|
|
|
|
- the scripts path set in the user preferences or ~/.blender/scripts/ui (io, op, io etc..) will be used to load scripts.
- the default home dir part probably only works in *nix os's
- Added a missing sync callback to vector.toTuple()
|
|
properties available since this the option to add props isnt in this panel
- remove print on startup
|