[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52390] trunk/blender: Bugfix [#33154] Toggle/Enable/Disable channel settings operators in

Joshua Leung aligorith at gmail.com
Tue Nov 20 03:03:24 CET 2012


Revision: 52390
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52390
Author:   aligorith
Date:     2012-11-20 02:03:20 +0000 (Tue, 20 Nov 2012)
Log Message:
-----------
Bugfix [#33154] Toggle/Enable/Disable channel settings operators in
DopeSheet/Action Editor Channel menus were not working properly

They were not allowing users to choose which setting they affected, which
resulted in "protect" (i.e. the same setting as the editability toggle handles)
always being used.

Also, set hidden flags on a few internally used properties here...

Modified Paths:
--------------
    trunk/blender/release/scripts/startup/bl_ui/space_dopesheet.py
    trunk/blender/release/scripts/startup/bl_ui/space_graph.py
    trunk/blender/source/blender/editors/animation/anim_channels_edit.c

Modified: trunk/blender/release/scripts/startup/bl_ui/space_dopesheet.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_ui/space_dopesheet.py	2012-11-20 01:55:22 UTC (rev 52389)
+++ trunk/blender/release/scripts/startup/bl_ui/space_dopesheet.py	2012-11-20 02:03:20 UTC (rev 52390)
@@ -241,9 +241,9 @@
         layout.operator("anim.channels_delete")
 
         layout.separator()
-        layout.operator("anim.channels_setting_toggle")
-        layout.operator("anim.channels_setting_enable")
-        layout.operator("anim.channels_setting_disable")
+        layout.operator_menu_enum("anim.channels_setting_toggle", "type")
+        layout.operator_menu_enum("anim.channels_setting_enable", "type")
+        layout.operator_menu_enum("anim.channels_setting_disable", "type")
 
         layout.separator()
         layout.operator("anim.channels_editable_toggle")

Modified: trunk/blender/release/scripts/startup/bl_ui/space_graph.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_ui/space_graph.py	2012-11-20 01:55:22 UTC (rev 52389)
+++ trunk/blender/release/scripts/startup/bl_ui/space_graph.py	2012-11-20 02:03:20 UTC (rev 52390)
@@ -161,9 +161,9 @@
         layout.operator("anim.channels_delete")
 
         layout.separator()
-        layout.operator("anim.channels_setting_toggle")
-        layout.operator("anim.channels_setting_enable")
-        layout.operator("anim.channels_setting_disable")
+        layout.operator_menu_enum("anim.channels_setting_toggle", "type")
+        layout.operator_menu_enum("anim.channels_setting_enable", "type")
+        layout.operator_menu_enum("anim.channels_setting_disable", "type")
 
         layout.separator()
         layout.operator("anim.channels_editable_toggle")

Modified: trunk/blender/source/blender/editors/animation/anim_channels_edit.c
===================================================================
--- trunk/blender/source/blender/editors/animation/anim_channels_edit.c	2012-11-20 01:55:22 UTC (rev 52389)
+++ trunk/blender/source/blender/editors/animation/anim_channels_edit.c	2012-11-20 02:03:20 UTC (rev 52390)
@@ -1560,6 +1560,8 @@
 /* duplicate of 'ANIM_OT_channels_setting_toggle' for menu title only, weak! */
 static void ANIM_OT_channels_setting_enable(wmOperatorType *ot)
 {
+	PropertyRNA *prop;
+	
 	/* identifiers */
 	ot->name = "Enable Channel Setting";
 	ot->idname = "ANIM_OT_channels_setting_enable";
@@ -1575,13 +1577,16 @@
 	
 	/* props */
 	/* flag-setting mode */
-	RNA_def_enum(ot->srna, "mode", prop_animchannel_setflag_types, ACHANNEL_SETFLAG_ADD, "Mode", "");
+	prop = RNA_def_enum(ot->srna, "mode", prop_animchannel_setflag_types, ACHANNEL_SETFLAG_ADD, "Mode", "");
+	RNA_def_property_flag(prop, PROP_HIDDEN);
 	/* setting to set */
 	ot->prop = RNA_def_enum(ot->srna, "type", prop_animchannel_settings_types, 0, "Type", "");
 }
 /* duplicate of 'ANIM_OT_channels_setting_toggle' for menu title only, weak! */
 static void ANIM_OT_channels_setting_disable(wmOperatorType *ot)
 {
+	PropertyRNA *prop;
+	
 	/* identifiers */
 	ot->name = "Disable Channel Setting";
 	ot->idname = "ANIM_OT_channels_setting_disable";
@@ -1597,13 +1602,16 @@
 	
 	/* props */
 	/* flag-setting mode */
-	RNA_def_enum(ot->srna, "mode", prop_animchannel_setflag_types, ACHANNEL_SETFLAG_CLEAR, "Mode", "");
+	prop = RNA_def_enum(ot->srna, "mode", prop_animchannel_setflag_types, ACHANNEL_SETFLAG_CLEAR, "Mode", "");
+	RNA_def_property_flag(prop, PROP_HIDDEN); /* internal hack - don't expose */
 	/* setting to set */
 	ot->prop = RNA_def_enum(ot->srna, "type", prop_animchannel_settings_types, 0, "Type", "");
 }
 
 static void ANIM_OT_channels_setting_toggle(wmOperatorType *ot)
 {
+	PropertyRNA *prop;
+	
 	/* identifiers */
 	ot->name = "Toggle Channel Setting";
 	ot->idname = "ANIM_OT_channels_setting_toggle";
@@ -1619,13 +1627,16 @@
 	
 	/* props */
 	/* flag-setting mode */
-	RNA_def_enum(ot->srna, "mode", prop_animchannel_setflag_types, ACHANNEL_SETFLAG_TOGGLE, "Mode", "");
+	prop = RNA_def_enum(ot->srna, "mode", prop_animchannel_setflag_types, ACHANNEL_SETFLAG_TOGGLE, "Mode", "");
+	RNA_def_property_flag(prop, PROP_HIDDEN); /* internal hack - don't expose */
 	/* setting to set */
 	ot->prop = RNA_def_enum(ot->srna, "type", prop_animchannel_settings_types, 0, "Type", "");
 }
 
 static void ANIM_OT_channels_editable_toggle(wmOperatorType *ot)
 {
+	PropertyRNA *prop;
+	
 	/* identifiers */
 	ot->name = "Toggle Channel Editability";
 	ot->idname = "ANIM_OT_channels_editable_toggle";
@@ -1642,7 +1653,8 @@
 	/* flag-setting mode */
 	RNA_def_enum(ot->srna, "mode", prop_animchannel_setflag_types, ACHANNEL_SETFLAG_TOGGLE, "Mode", "");
 	/* setting to set */
-	RNA_def_enum(ot->srna, "type", prop_animchannel_settings_types, ACHANNEL_SETTING_PROTECT, "Type", "");
+	prop = RNA_def_enum(ot->srna, "type", prop_animchannel_settings_types, ACHANNEL_SETTING_PROTECT, "Type", "");
+	RNA_def_property_flag(prop, PROP_HIDDEN); /* internal hack - don't expose */
 }
 
 /* ********************** Expand Channels Operator *********************** */




More information about the Bf-blender-cvs mailing list