[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53865] trunk/blender: show a title in menus triggered by WM_OT_context_menu_enum, also show an icon when available.

Campbell Barton ideasman42 at gmail.com
Thu Jan 17 01:29:43 CET 2013


Revision: 53865
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53865
Author:   campbellbarton
Date:     2013-01-17 00:29:39 +0000 (Thu, 17 Jan 2013)
Log Message:
-----------
show a title in menus triggered by WM_OT_context_menu_enum, also show an icon when available.

Modified Paths:
--------------
    trunk/blender/release/scripts/startup/bl_operators/wm.py
    trunk/blender/source/blender/makesrna/intern/rna_rna.c

Modified: trunk/blender/release/scripts/startup/bl_operators/wm.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_operators/wm.py	2013-01-16 23:37:47 UTC (rev 53864)
+++ trunk/blender/release/scripts/startup/bl_operators/wm.py	2013-01-17 00:29:39 UTC (rev 53865)
@@ -505,6 +505,10 @@
             return {'PASS_THROUGH'}
         base_path, prop_string = data_path.rsplit(".", 1)
         value_base = context_path_validate(context, base_path)
+        prop = value_base.bl_rna.properties[prop_string]
+
+        layout = self.layout
+        layout.label(prop.name, icon=prop.icon)
         col = self.layout.column()
         col.prop(value_base, prop_string, expand=True)
 

Modified: trunk/blender/source/blender/makesrna/intern/rna_rna.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_rna.c	2013-01-16 23:37:47 UTC (rev 53864)
+++ trunk/blender/source/blender/makesrna/intern/rna_rna.c	2013-01-17 00:29:39 UTC (rev 53865)
@@ -523,6 +523,13 @@
 	return RNA_SUBTYPE_UNIT(prop->subtype);
 }
 
+static int rna_Property_icon_get(PointerRNA *ptr)
+{
+	PropertyRNA *prop = (PropertyRNA *)ptr->data;
+	rna_idproperty_check(&prop, ptr);
+	return prop->icon;
+}
+
 static int rna_Property_readonly_get(PointerRNA *ptr)
 {
 	PropertyRNA *prop = (PropertyRNA *)ptr->data;
@@ -1137,6 +1144,12 @@
 	RNA_def_property_enum_funcs(prop, "rna_Property_unit_get", NULL, NULL);
 	RNA_def_property_ui_text(prop, "Unit", "Type of units for this property");
 
+	prop = RNA_def_property(srna, "icon", PROP_ENUM, PROP_NONE);
+	RNA_def_property_clear_flag(prop, PROP_EDITABLE);
+	RNA_def_property_enum_items(prop, icon_items);
+	RNA_def_property_enum_funcs(prop, "rna_Property_icon_get", NULL, NULL);
+	RNA_def_property_ui_text(prop, "Icon", "Icon of the item");
+
 	prop = RNA_def_property(srna, "is_readonly", PROP_BOOLEAN, PROP_NONE);
 	RNA_def_property_clear_flag(prop, PROP_EDITABLE);
 	RNA_def_property_boolean_funcs(prop, "rna_Property_readonly_get", NULL);




More information about the Bf-blender-cvs mailing list