forked from bartvdbraak/blender
User Script support added back.
- 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()
This commit is contained in:
parent
168fe0b4b5
commit
33c444f965
@ -46,6 +46,7 @@ def load_scripts(reload_scripts=False):
|
||||
for base_path in utils.script_paths():
|
||||
for path_subdir in ("ui", "op", "io"):
|
||||
path = os.path.join(base_path, path_subdir)
|
||||
if os.path.isdir(path):
|
||||
sys.path.insert(0, path)
|
||||
for f in sorted(os.listdir(path)):
|
||||
if f.endswith(".py"):
|
||||
|
@ -57,12 +57,26 @@ _scripts = os.path.join(os.path.dirname(__file__), os.path.pardir, os.path.pardi
|
||||
_scripts = (os.path.normpath(_scripts), )
|
||||
|
||||
def script_paths(*args):
|
||||
scripts = list(_scripts)
|
||||
|
||||
# add user scripts dir
|
||||
user_script_path = bpy.context.user_preferences.filepaths.python_scripts_directory
|
||||
|
||||
if not user_script_path:
|
||||
# XXX - WIN32 needs checking, perhaps better call a blender internal function.
|
||||
user_script_path = os.path.join(os.path.expanduser("~"), ".blender", "scripts")
|
||||
|
||||
user_script_path = os.path.normpath(user_script_path)
|
||||
|
||||
if user_script_path not in scripts and os.path.isdir(user_script_path):
|
||||
scripts.append(user_script_path)
|
||||
|
||||
if not args:
|
||||
return _scripts
|
||||
return scripts
|
||||
|
||||
subdir = os.path.join(*args)
|
||||
script_paths = []
|
||||
for path in _scripts:
|
||||
for path in scripts:
|
||||
script_paths.append(os.path.join(path, subdir))
|
||||
|
||||
return script_paths
|
||||
|
@ -253,6 +253,9 @@ static PyObject *Vector_ToTuple(VectorObject * self, PyObject *value)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if(!BaseMath_ReadCallback(self))
|
||||
return NULL;
|
||||
|
||||
ret= PyTuple_New(self->size);
|
||||
|
||||
for(x = 0; x < self->size; x++) {
|
||||
|
Loading…
Reference in New Issue
Block a user