2.5 - Constraint (Re)Naming

* Names for newly added constraints are now derived from the type of constraint, making it easier to identify the type of constraint

* Fixed crash when renaming constraints (due to invalid pointer being passed for the 'old' string name)
This commit is contained in:
Joshua Leung 2009-07-21 02:54:02 +00:00
parent 22f421a9ee
commit 74fce51841
2 changed files with 7 additions and 3 deletions

@ -764,7 +764,7 @@ static uiLayout *draw_constraint(uiLayout *layout, Object *ob, bConstraint *con)
if(proxy_protected == 0) { if(proxy_protected == 0) {
but = uiDefBut(block, TEX, B_CONSTRAINT_TEST, "", xco+120, yco, 85, 18, con->name, 0.0, 29.0, 0.0, 0.0, "Constraint name"); but = uiDefBut(block, TEX, B_CONSTRAINT_TEST, "", xco+120, yco, 85, 18, con->name, 0.0, 29.0, 0.0, 0.0, "Constraint name");
uiButSetFunc(but, verify_constraint_name_func, con, NULL); uiButSetFunc(but, verify_constraint_name_func, con, con->name);
} }
else else
uiDefBut(block, LABEL, B_CONSTRAINT_TEST, con->name, xco+120, yco-1, 135, 19, NULL, 0.0, 0.0, 0.0, 0.0, ""); uiDefBut(block, LABEL, B_CONSTRAINT_TEST, con->name, xco+120, yco-1, 135, 19, NULL, 0.0, 0.0, 0.0, 0.0, "");

@ -200,8 +200,7 @@ bConstraint *add_new_constraint (short type)
/* Set up a generic constraint datablock */ /* Set up a generic constraint datablock */
con->type = type; con->type = type;
con->flag |= CONSTRAINT_EXPAND; con->flag |= CONSTRAINT_EXPAND;
con->enforce = 1.0F; con->enforce = 1.0f;
strcpy(con->name, "Const");
/* Load the data for it */ /* Load the data for it */
cti = constraint_get_typeinfo(con); cti = constraint_get_typeinfo(con);
@ -211,7 +210,12 @@ bConstraint *add_new_constraint (short type)
/* only constraints that change any settings need this */ /* only constraints that change any settings need this */
if (cti->new_data) if (cti->new_data)
cti->new_data(con->data); cti->new_data(con->data);
/* set the name based on the type of constraint */
strcpy(con->name, cti->name);
} }
else
strcpy(con->name, "Const");
return con; return con;
} }