diff options
author | Stephane Delcroix <stephane@delcroix.org> | 2016-09-26 22:29:47 +0200 |
---|---|---|
committer | Jason Smith <jason.smith@xamarin.com> | 2016-09-26 13:29:47 -0700 |
commit | 55f066584c507ec92d5054fac4f3a35f54c05522 (patch) | |
tree | 358ec7ed9a74e008b3bc601a9b391bcd193fb86b /Xamarin.Forms.Build.Tasks/SetPropertiesVisitor.cs | |
parent | e6a20ddedb6c8dee989b4ac19c6e83cecafe9f29 (diff) | |
download | xamarin-forms-55f066584c507ec92d5054fac4f3a35f54c05522.tar.gz xamarin-forms-55f066584c507ec92d5054fac4f3a35f54c05522.tar.bz2 xamarin-forms-55f066584c507ec92d5054fac4f3a35f54c05522.zip |
[XamlC] Compiled converters (#358)
Diffstat (limited to 'Xamarin.Forms.Build.Tasks/SetPropertiesVisitor.cs')
-rw-r--r-- | Xamarin.Forms.Build.Tasks/SetPropertiesVisitor.cs | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/Xamarin.Forms.Build.Tasks/SetPropertiesVisitor.cs b/Xamarin.Forms.Build.Tasks/SetPropertiesVisitor.cs index 734a34c2..f481cbee 100644 --- a/Xamarin.Forms.Build.Tasks/SetPropertiesVisitor.cs +++ b/Xamarin.Forms.Build.Tasks/SetPropertiesVisitor.cs @@ -60,6 +60,8 @@ namespace Xamarin.Forms.Build.Tasks if (skips.Contains(propertyName)) return; + if (parentNode is IElementNode && ((IElementNode)parentNode).SkipProperties.Contains (propertyName)) + return; if (propertyName.NamespaceURI == "http://schemas.openxmlformats.org/markup-compatibility/2006" && propertyName.LocalName == "Ignorable") return; @@ -105,6 +107,11 @@ namespace Xamarin.Forms.Build.Tasks if (propertyName != XmlName.Empty) { + if (skips.Contains(propertyName)) + return; + if (parentNode is IElementNode && ((IElementNode)parentNode).SkipProperties.Contains (propertyName)) + return; + if (propertyName == XmlName._CreateContent) SetDataTemplate((IElementNode)parentNode, node, Context, node); else @@ -136,6 +143,8 @@ namespace Xamarin.Forms.Build.Tasks var name = new XmlName(node.NamespaceURI, contentProperty); if (skips.Contains(name)) return; + if (parentNode is IElementNode && ((IElementNode)parentNode).SkipProperties.Contains (propertyName)) + return; Context.IL.Append(SetPropertyValue(Context.Variables[(IElementNode)parentNode], name, node, Context, node)); } } @@ -151,7 +160,8 @@ namespace Xamarin.Forms.Build.Tasks if (skips.Contains(parentList.XmlName)) return; - + if (parentNode is IElementNode && ((IElementNode)parentNode).SkipProperties.Contains (propertyName)) + return; var elementType = parent.VariableType; var localname = parentList.XmlName.LocalName; @@ -775,4 +785,4 @@ namespace Xamarin.Forms.Build.Tasks return vardefref.VariableDefinition; } } -}
\ No newline at end of file +} |