Revision: 19545
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=19545
Author:   aligorith
Date:     2009-04-05 13:26:33 +0200 (Sun, 05 Apr 2009)

Log Message:
-----------
Animato - RNA Wrapping:

RNA-Paths + Array Indices for Keying Sets, F-Curves, and Drivers are now 
editable. We could disable these later if need be, it is useful to be able to 
edit these (especially for debugging purposes now).

Modified Paths:
--------------
    branches/blender2.5/blender/source/blender/editors/animation/keyframing.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c
    branches/blender2.5/blender/source/blender/makesrna/intern/rna_animation.c

Modified: 
branches/blender2.5/blender/source/blender/editors/animation/keyframing.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/animation/keyframing.c   
2009-04-05 10:03:23 UTC (rev 19544)
+++ branches/blender2.5/blender/source/blender/editors/animation/keyframing.c   
2009-04-05 11:26:33 UTC (rev 19545)
@@ -716,10 +716,10 @@
        PropertyRNA *prop;
        FCurve *fcu;
        
-       /* validate pointer first - exit if failure*/
+       /* validate pointer first - exit if failure */
        RNA_id_pointer_create(id, &id_ptr);
-       if (RNA_path_resolve(&id_ptr, rna_path, &ptr, &prop) == 0 || prop == 
NULL) {
-               printf("Insert Key: Could not insert keyframe, as RNA Path is 
invalid for the given ID (%s)\n", rna_path);
+       if ((RNA_path_resolve(&id_ptr, rna_path, &ptr, &prop) == 0) || (prop == 
NULL)) {
+               printf("Insert Key: Could not insert keyframe, as RNA Path is 
invalid for the given ID (ID = %s, Path = %s)\n", id->name, rna_path);
                return 0;
        }
        
@@ -2159,7 +2159,7 @@
        ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
        
        /* settings */
-       RNA_def_boolean(ot->srna, "builtin", 0, "Built-In Keying Set", "Use one 
of the relative Keying Sets defined by default");
+       RNA_def_int(ot->srna, "type", 0, INT_MIN, INT_MAX, "Keying Set Number", 
"Index (determined internally) of the Keying Set to use", 0, 1);
 }
 
 /* Insert Key Operator (With Menu) ------------------------ */

Modified: 
branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c     
2009-04-05 10:03:23 UTC (rev 19544)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_action.c     
2009-04-05 11:26:33 UTC (rev 19545)
@@ -57,11 +57,11 @@
                return 0;
 }
 
-#if 0
 static void rna_Driver_RnaPath_set(PointerRNA *ptr, const char *value)
 {
        ChannelDriver *driver= (ChannelDriver *)ptr->data;
-
+       
+       // XXX in this case we need to be very careful, as this will require 
some new dependencies to be added!
        if (driver->rna_path)
                MEM_freeN(driver->rna_path);
        
@@ -70,8 +70,8 @@
        else 
                driver->rna_path= NULL;
 }
-#endif
 
+
 static void rna_FCurve_RnaPath_get(PointerRNA *ptr, char *value)
 {
        FCurve *fcu= (FCurve *)ptr->data;
@@ -92,7 +92,6 @@
                return 0;
 }
 
-#if 0
 static void rna_FCurve_RnaPath_set(PointerRNA *ptr, const char *value)
 {
        FCurve *fcu= (FCurve *)ptr->data;
@@ -105,7 +104,6 @@
        else 
                fcu->rna_path= NULL;
 }
-#endif
 
 #else
 
@@ -139,7 +137,6 @@
        RNA_def_property_ui_text(prop, "Driver Object", "Object that controls 
this Driver.");
        
        prop= RNA_def_property(srna, "rna_path", PROP_STRING, PROP_NONE);
-       RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_string_funcs(prop, "rna_Driver_RnaPath_get", 
"rna_Driver_RnaPath_length", "rna_Driver_RnaPath_set");
        RNA_def_property_ui_text(prop, "Driver RNA Path", "RNA Path (from 
Driver Object) to property used as Driver.");
        
@@ -179,11 +176,12 @@
        
        /* Path + Array Index */
        prop= RNA_def_property(srna, "rna_path", PROP_STRING, PROP_NONE);
-       RNA_def_property_clear_flag(prop, PROP_EDITABLE);
+       //RNA_def_property_clear_flag(prop, PROP_EDITABLE); // XXX for now 
editable
        RNA_def_property_string_funcs(prop, "rna_FCurve_RnaPath_get", 
"rna_FCurve_RnaPath_length", "rna_FCurve_RnaPath_set");
        RNA_def_property_ui_text(prop, "RNA Path", "RNA Path to property 
affected by F-Curve.");
        
        prop= RNA_def_property(srna, "array_index", PROP_INT, PROP_NONE);
+       //RNA_def_property_clear_flag(prop, PROP_EDITABLE); // XXX for now 
editable
        RNA_def_property_ui_text(prop, "RNA Array Index", "Index to the 
specific property affected by F-Curve if applicable.");
        
        /* Color */

Modified: 
branches/blender2.5/blender/source/blender/makesrna/intern/rna_animation.c
===================================================================
--- branches/blender2.5/blender/source/blender/makesrna/intern/rna_animation.c  
2009-04-05 10:03:23 UTC (rev 19544)
+++ branches/blender2.5/blender/source/blender/makesrna/intern/rna_animation.c  
2009-04-05 11:26:33 UTC (rev 19545)
@@ -57,20 +57,18 @@
                return 0;
 }
 
-#if 0
 static void rna_ksPath_RnaPath_set(PointerRNA *ptr, const char *value)
 {
        KS_Path *ksp= (KS_Path *)ptr->data;
 
        if (ksp->rna_path)
-               MEM_freeN(ksp->ksp_path);
+               MEM_freeN(ksp->rna_path);
        
        if (strlen(value))
                ksp->rna_path= BLI_strdup(value);
        else 
                ksp->rna_path= NULL;
 }
-#endif
 
 #else
 
@@ -106,11 +104,12 @@
        
        /* Path + Array Index */
        prop= RNA_def_property(srna, "rna_path", PROP_STRING, PROP_NONE);
-       RNA_def_property_clear_flag(prop, PROP_EDITABLE);
+       //RNA_def_property_clear_flag(prop, PROP_EDITABLE); // XXX for now 
editable
        RNA_def_property_string_funcs(prop, "rna_ksPath_RnaPath_get", 
"rna_ksPath_RnaPath_length", "rna_ksPath_RnaPath_set");
        RNA_def_property_ui_text(prop, "RNA Path", "RNA Path to property 
setting.");
        
        prop= RNA_def_property(srna, "array_index", PROP_INT, PROP_NONE);
+       //RNA_def_property_clear_flag(prop, PROP_EDITABLE); // XXX for now 
editable
        RNA_def_property_ui_text(prop, "RNA Array Index", "Index to the 
specific setting if applicable.");
        
        /* Flags */


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to