doxygen: prevent GPL license block from being parsed as doxygen comment.
[blender.git] / source / blender / makesrna / intern / rna_meta.c
index e2e66b5..e575eca 100644 (file)
@@ -1,4 +1,4 @@
-/**
+/*
  * $Id$
  *
  * ***** BEGIN GPL LICENSE BLOCK *****
@@ -98,18 +98,25 @@ static void rna_MetaBall_update_data(Main *bmain, Scene *scene, PointerRNA *ptr)
                        if(ob->data == mb)
                                copy_mball_properties(scene, ob);
        
-               DAG_id_tag_update(&mb->id, OB_RECALC_DATA);
+               DAG_id_tag_update(&mb->id, 0);
                WM_main_add_notifier(NC_GEOM|ND_DATA, mb);
        }
 }
 
+static void rna_MetaBall_update_rotation(Main *bmain, Scene *scene, PointerRNA *ptr)
+{
+       MetaElem *ml= ptr->data;
+       normalize_qt(ml->quat);
+       rna_MetaBall_update_data(bmain, scene, ptr);
+}
+
 static MetaElem *rna_MetaBall_elements_new(MetaBall *mb, int type)
 {
        MetaElem *ml= add_metaball_element(mb, type);
 
        /* cheating way for importers to avoid slow updates */
        if(mb->id.us > 0) {
-               DAG_id_tag_update(&mb->id, OB_RECALC_DATA);
+               DAG_id_tag_update(&mb->id, 0);
                WM_main_add_notifier(NC_GEOM|ND_DATA, &mb->id);
        }
 
@@ -132,7 +139,7 @@ static void rna_MetaBall_elements_remove(MetaBall *mb, ReportList *reports, Meta
 
        /* cheating way for importers to avoid slow updates */
        if(mb->id.us > 0) {
-               DAG_id_tag_update(&mb->id, OB_RECALC_DATA);
+               DAG_id_tag_update(&mb->id, 0);
                WM_main_add_notifier(NC_GEOM|ND_DATA, &mb->id);
        }
 }
@@ -164,8 +171,8 @@ static void rna_def_metaelement(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "rotation", PROP_FLOAT, PROP_QUATERNION);
        RNA_def_property_float_sdna(prop, NULL, "quat");
-       RNA_def_property_ui_text(prop, "Rotation", "");
-       RNA_def_property_update(prop, 0, "rna_MetaBall_update_data");
+       RNA_def_property_ui_text(prop, "Rotation", "Normalized quaternion rotation");
+       RNA_def_property_update(prop, 0, "rna_MetaBall_update_rotation");
 
        prop= RNA_def_property(srna, "radius", PROP_FLOAT, PROP_UNSIGNED|PROP_UNIT_LENGTH);
        RNA_def_property_float_sdna(prop, NULL, "rad");
@@ -225,7 +232,7 @@ static void rna_def_metaball_elements(BlenderRNA *brna, PropertyRNA *cprop)
 
        func= RNA_def_function(srna, "new", "rna_MetaBall_elements_new");
        RNA_def_function_ui_description(func, "Add a new spline to the curve.");
-       parm= RNA_def_enum(func, "type", metaelem_type_items, MB_BALL, "", "type for the new meta element.");
+       RNA_def_enum(func, "type", metaelem_type_items, MB_BALL, "", "type for the new meta element.");
        parm= RNA_def_pointer(func, "element", "MetaElement", "", "The newly created metaelement.");
        RNA_def_function_return(func, parm);