[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [43272] trunk/blender: minor edits to xml presets
Campbell Barton
ideasman42 at gmail.com
Wed Jan 11 01:22:26 CET 2012
Revision: 43272
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=43272
Author: campbellbarton
Date: 2012-01-11 00:22:21 +0000 (Wed, 11 Jan 2012)
Log Message:
-----------
minor edits to xml presets
- check 'SKIP_SAVE' property (used for active theme area which become annoying)
- indent presets better
Modified Paths:
--------------
trunk/blender/release/scripts/modules/rna_xml.py
trunk/blender/source/blender/makesrna/intern/rna_userdef.c
Modified: trunk/blender/release/scripts/modules/rna_xml.py
===================================================================
--- trunk/blender/release/scripts/modules/rna_xml.py 2012-01-11 00:09:46 UTC (rev 43271)
+++ trunk/blender/release/scripts/modules/rna_xml.py 2012-01-11 00:22:21 UTC (rev 43272)
@@ -32,7 +32,13 @@
if issubclass(cls, skip_classes):
continue
- properties = cls.bl_rna.properties.keys()
+ ## to support skip-save we cant get all props
+ # properties = cls.bl_rna.properties.keys()
+ properties = []
+ for prop_id, prop in cls.bl_rna.properties.items():
+ if not prop.is_skip_save:
+ properties.append(prop_id)
+
properties.remove("rna_type")
property_typemap[attr] = properties
@@ -47,7 +53,8 @@
root_node="",
root_rna=None, # must be set
root_rna_skip=set(),
- ident_val=" ",
+ root_ident="",
+ ident_val=" ",
skip_classes=(bpy.types.Operator,
bpy.types.Panel,
bpy.types.KeyingSet,
@@ -173,10 +180,11 @@
# needs re-workign to be generic
if root_node:
- fw("<%s>\n" % root_node)
+ fw("%s<%s>\n" % (root_ident, root_node))
# bpy.data
if method == 'DATA':
+ ident = root_ident + ident_val
for attr in dir(root_rna):
# exceptions
@@ -192,16 +200,16 @@
ls = None
if type(ls) == list:
- fw("%s<%s>\n" % (ident_val, attr))
+ fw("%s<%s>\n" % (ident, attr))
for blend_id in ls:
- rna2xml_node(ident_val + ident_val, blend_id, None)
+ rna2xml_node(ident + ident_val, blend_id, None)
fw("%s</%s>\n" % (ident_val, attr))
# any attribute
elif method == 'ATTR':
- rna2xml_node("", root_rna, None)
+ rna2xml_node(root_ident, root_rna, None)
if root_node:
- fw("</%s>\n" % root_node)
+ fw("%s</%s>\n" % (root_ident, root_node))
def xml2rna(root_xml,
@@ -350,7 +358,11 @@
for rna_path, xml_tag in rna_map:
# xml_tag is ignored, we get this from the rna
value = _get_context_val(context, rna_path)
- rna2xml(fw, root_rna=value, method='ATTR')
+ rna2xml(fw,
+ root_rna=value,
+ method='ATTR',
+ root_ident=" ",
+ ident_val=" ")
fw("</bpy>\n")
file.close()
Modified: trunk/blender/source/blender/makesrna/intern/rna_userdef.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_userdef.c 2012-01-11 00:09:46 UTC (rev 43271)
+++ trunk/blender/source/blender/makesrna/intern/rna_userdef.c 2012-01-11 00:22:21 UTC (rev 43272)
@@ -1970,6 +1970,7 @@
prop= RNA_def_property(srna, "theme_area", PROP_ENUM, PROP_NONE);
RNA_def_property_enum_sdna(prop, NULL, "active_theme_area");
+ RNA_def_property_flag(prop, PROP_SKIP_SAVE);
RNA_def_property_enum_items(prop, active_theme_area);
RNA_def_property_ui_text(prop, "Active Theme Area", "");
More information about the Bf-blender-cvs
mailing list