diff options
author | Joshua Leung <aligorith@gmail.com> | 2007-06-20 13:58:16 +0400 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2007-06-20 13:58:16 +0400 |
commit | 8975e34439288957a798429e0f93402cc69377f3 (patch) | |
tree | 8ee969c10e37e3f5da89e91a93bc26edbc9235b3 /source/blender/src/editconstraint.c | |
parent | d9b94275c05455b4790861c26911a315b659598c (diff) |
== PyConstraints - 2 Fixes ==
* Error print for getSettings was lacking a newline
* When adding a PyConstraint using Ctrl-Alt-C, the script is now queried to find out whether it uses a target.
Diffstat (limited to 'source/blender/src/editconstraint.c')
-rw-r--r-- | source/blender/src/editconstraint.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/source/blender/src/editconstraint.c b/source/blender/src/editconstraint.c index 95391b37af7..7e1178de377 100644 --- a/source/blender/src/editconstraint.c +++ b/source/blender/src/editconstraint.c @@ -747,17 +747,26 @@ void add_constraint(int only_IK) } else if(nr==18) { char *menustr; - int scriptint= 0, dummy_active=0; + int scriptint= 0, dummy_int=0; + float dummy_matrix[4][4]; /* popup a list of usable scripts */ - menustr = buildmenu_pyconstraints(NULL, &dummy_active); + menustr = buildmenu_pyconstraints(NULL, &dummy_int); scriptint = pupmenu(menustr); MEM_freeN(menustr); /* only add constraint if a script was chosen */ if (scriptint) { + /* add constraint */ con = add_new_constraint(CONSTRAINT_TYPE_PYTHON); validate_pyconstraint_cb(con->data, &scriptint); + + /* make sure target allowance is set correctly */ + dummy_int = BPY_pyconstraint_targets(con->data, dummy_matrix); + if (dummy_int) { + bPythonConstraint *pycon= (bPythonConstraint *)con->data; + pycon->flag |= PYCON_USETARGETS; + } } } |