Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2013-08-14 15:29:58 +0400
committerCampbell Barton <ideasman42@gmail.com>2013-08-14 15:29:58 +0400
commit503b7d5b9a385fdcd220df3142857300d912d80c (patch)
treed25f1c3c59edd0e8c30faf984cc681af9ada9fc8 /source/blender/blenkernel/intern/curve.c
parent1979720d0324b84e4993557d30ff833f71e688fd (diff)
add materials.clear() method, matching other python list method.
Diffstat (limited to 'source/blender/blenkernel/intern/curve.c')
-rw-r--r--source/blender/blenkernel/intern/curve.c28
1 files changed, 26 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c
index b02d587940a..2285d7d8dc0 100644
--- a/source/blender/blenkernel/intern/curve.c
+++ b/source/blender/blenkernel/intern/curve.c
@@ -3819,7 +3819,7 @@ void BKE_curve_translate(Curve *cu, float offset[3], int do_keys)
}
}
-void BKE_curve_delete_material_index(Curve *cu, int index)
+void BKE_curve_material_index_remove(Curve *cu, int index)
{
const int curvetype = BKE_curve_type_get(cu);
@@ -3838,8 +3838,32 @@ void BKE_curve_delete_material_index(Curve *cu, int index)
for (nu = cu->nurb.first; nu; nu = nu->next) {
if (nu->mat_nr && nu->mat_nr >= index) {
nu->mat_nr--;
- if (curvetype == OB_CURVE)
+ if (curvetype == OB_CURVE) {
nu->charidx--;
+ }
+ }
+ }
+ }
+}
+
+void BKE_curve_material_index_clear(Curve *cu)
+{
+ const int curvetype = BKE_curve_type_get(cu);
+
+ if (curvetype == OB_FONT) {
+ struct CharInfo *info = cu->strinfo;
+ int i;
+ for (i = cu->len - 1; i >= 0; i--, info++) {
+ info->mat_nr = 0;
+ }
+ }
+ else {
+ Nurb *nu;
+
+ for (nu = cu->nurb.first; nu; nu = nu->next) {
+ nu->mat_nr = 0;
+ if (curvetype == OB_CURVE) {
+ nu->charidx = 0;
}
}
}