[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28788] trunk/blender/source/blender/ makesrna/intern/rna_scene.c: Keying Sets Bugfix:
Joshua Leung
aligorith at gmail.com
Sun May 16 13:42:54 CEST 2010
Revision: 28788
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28788
Author: aligorith
Date: 2010-05-16 13:42:54 +0200 (Sun, 16 May 2010)
Log Message:
-----------
Keying Sets Bugfix:
Editing the settings of the active (absolute only) Keying Sets is now possible again.
Modified Paths:
--------------
trunk/blender/source/blender/makesrna/intern/rna_scene.c
Modified: trunk/blender/source/blender/makesrna/intern/rna_scene.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_scene.c 2010-05-16 10:21:00 UTC (rev 28787)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c 2010-05-16 11:42:54 UTC (rev 28788)
@@ -376,17 +376,25 @@
scene->active_keyingset= ANIM_scene_get_keyingset_index(scene, ks);
}
-#if 0 // XXX: these need to be fixed up first...
-static void rna_Scene_active_keying_set_index_range(PointerRNA *ptr, int *min, int *max)
+/* get KeyingSet index stuff for list of Keying Sets editing UI
+ * - active_keyingset-1 since 0 is reserved for 'none'
+ * - don't clamp, otherwise can never set builtins types as active...
+ */
+static int rna_Scene_active_keying_set_index_get(PointerRNA *ptr)
{
- Scene *scene= (Scene *)ptr->data;
-
- // FIXME: would need access to builtin keyingsets list to count min...
- *min= 0;
- *max= 0;
+ Scene *scene= (Scene *)ptr->data;
+ return scene->active_keyingset-1;
}
-#endif
+/* get KeyingSet index stuff for list of Keying Sets editing UI
+ * - value+1 since 0 is reserved for 'none'=
+ */
+static void rna_Scene_active_keying_set_index_set(PointerRNA *ptr, int value)
+{
+ Scene *scene= (Scene *)ptr->data;
+ scene->active_keyingset= value+1;
+}
+
// XXX: evil... builtin_keyingsets is defined in keyingsets.c!
// TODO: make API function to retrieve this...
extern ListBase builtin_keyingsets;
@@ -3038,7 +3046,7 @@
prop= RNA_def_property(srna, "active_keying_set_index", PROP_INT, PROP_NONE);
RNA_def_property_int_sdna(prop, NULL, "active_keyingset");
- //RNA_def_property_int_funcs(prop, NULL, NULL, "rna_Scene_active_keying_set_index_range"); // XXX
+ RNA_def_property_int_funcs(prop, "rna_Scene_active_keying_set_index_get", "rna_Scene_active_keying_set_index_set", NULL);
RNA_def_property_ui_text(prop, "Active Keying Set Index", "Current Keying Set index (negative for 'builtin' and positive for 'absolute')");
RNA_def_property_update(prop, NC_SCENE|ND_KEYINGSET, NULL);
More information about the Bf-blender-cvs
mailing list