soc-2008-mxcurioni: merged changes to revision 23516
[blender.git] / source / blender / makesrna / intern / rna_sculpt_paint.c
index b00119efaf6dda0545bccafbabe3a4c9a33523fc..ab4b27cea7b5662e0e0a3f36345df4263f0d085f 100644 (file)
@@ -45,13 +45,6 @@ static EnumPropertyItem particle_edit_hair_brush_items[] = {
        {PE_BRUSH_CUT, "CUT", 0, "Cut", "Cut hairs."},
        {0, NULL, 0, NULL, NULL}};
 
-static EnumPropertyItem particle_edit_cache_brush_items[] = {
-       {PE_BRUSH_NONE, "NONE", 0, "None", "Don't use any brush."},
-       {PE_BRUSH_COMB, "COMB", 0, "Comb", "Comb paths."},
-       {PE_BRUSH_SMOOTH, "SMOOTH", 0, "Smooth", "Smooth paths."},
-       {PE_BRUSH_LENGTH, "LENGTH", 0, "Length", "Make paths longer or shorter."},
-       {0, NULL, 0, NULL, NULL}};
-
 #ifdef RNA_RUNTIME
 
 #include "BKE_context.h"
@@ -61,6 +54,13 @@ static EnumPropertyItem particle_edit_cache_brush_items[] = {
 
 #include "ED_particle.h"
 
+static EnumPropertyItem particle_edit_cache_brush_items[] = {
+       {PE_BRUSH_NONE, "NONE", 0, "None", "Don't use any brush."},
+       {PE_BRUSH_COMB, "COMB", 0, "Comb", "Comb paths."},
+       {PE_BRUSH_SMOOTH, "SMOOTH", 0, "Smooth", "Smooth paths."},
+       {PE_BRUSH_LENGTH, "LENGTH", 0, "Length", "Make paths longer or shorter."},
+       {0, NULL, 0, NULL, NULL}};
+
 static PointerRNA rna_ParticleEdit_brush_get(PointerRNA *ptr)
 {
        ParticleEditSettings *pset= (ParticleEditSettings*)ptr->data;
@@ -72,7 +72,6 @@ static PointerRNA rna_ParticleEdit_brush_get(PointerRNA *ptr)
        return rna_pointer_inherit_refine(ptr, &RNA_ParticleBrush, brush);
 }
 
-
 static PointerRNA rna_ParticleBrush_curve_get(PointerRNA *ptr)
 {
        return rna_pointer_inherit_refine(ptr, &RNA_CurveMapping, NULL);
@@ -108,16 +107,14 @@ static void rna_ParticleEdit_redo(bContext *C, PointerRNA *ptr)
        if(!edit)
                return;
 
-       psys_free_path_cache(NULL, edit);
+       psys_free_path_cache(edit->psys, edit);
 }
 
 static void rna_ParticleEdit_update(bContext *C, PointerRNA *ptr)
 {
-       Scene *scene = CTX_data_scene(C);
        Object *ob = CTX_data_active_object(C);
 
-       if(ob)
-               DAG_object_flush_update(scene, ob, OB_RECALC_DATA);
+       if(ob) DAG_id_flush_update(&ob->id, OB_RECALC_DATA);
 }
 
 static EnumPropertyItem *rna_ParticleEdit_tool_itemf(bContext *C, PointerRNA *ptr, int *free)
@@ -413,7 +410,7 @@ static void rna_def_particle_edit(BlenderRNA *brna)
        prop= RNA_def_property(srna, "fade_time", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", PE_FADE_TIME);
        RNA_def_property_ui_text(prop, "Fade Time", "Fade paths and keys further away from current frame.");
-       RNA_def_property_update(prop, NC_OBJECT, "rna_ParticleEdit_update");
+       RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, "rna_ParticleEdit_update");
 
        prop= RNA_def_property(srna, "auto_velocity", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", PE_AUTO_VELOCITY);
@@ -446,18 +443,18 @@ static void rna_def_particle_edit(BlenderRNA *brna)
        prop= RNA_def_property(srna, "draw_step", PROP_INT, PROP_NONE);
        RNA_def_property_range(prop, 2, 10);
        RNA_def_property_ui_text(prop, "Steps", "How many steps to draw the path with.");
-       RNA_def_property_update(prop, NC_OBJECT, "rna_ParticleEdit_redo");
+       RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, "rna_ParticleEdit_redo");
 
        prop= RNA_def_property(srna, "fade_frames", PROP_INT, PROP_NONE);
        RNA_def_property_range(prop, 2, 100);
        RNA_def_property_ui_text(prop, "Frames", "How many frames to fade.");
-       RNA_def_property_update(prop, NC_OBJECT, "rna_ParticleEdit_update");
+       RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, "rna_ParticleEdit_update");
 
        prop= RNA_def_property(srna, "type", PROP_ENUM, PROP_NONE);
        RNA_def_property_enum_sdna(prop, NULL, "edittype");
        RNA_def_property_enum_items(prop, edit_type_items);
        RNA_def_property_ui_text(prop, "Type", "");
-       RNA_def_property_update(prop, NC_OBJECT, "rna_ParticleEdit_redo");
+       RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, "rna_ParticleEdit_redo");
 
        prop= RNA_def_property(srna, "editable", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_funcs(prop, "rna_ParticleEdit_editable_get", NULL);