Bladeren bron

Rename TemplateDataTypeAttribute to DataTypeAttribute

Max Katz 3 jaren geleden
bovenliggende
commit
b567fcebf5

+ 15 - 0
src/Avalonia.Base/Metadata/DataTypeAttribute.cs

@@ -0,0 +1,15 @@
+using System;
+
+namespace Avalonia.Metadata;
+
+/// <summary>
+/// Defines the property that contains type that should be used as a type information for compiled bindings.
+/// </summary>
+/// <remarks>
+/// Used on DataTemplate.DataType property so it can be inherited in compiled bindings inside of the template.
+/// </remarks>
+[AttributeUsage(AttributeTargets.Property)]
+public class DataTypeAttribute : Attribute
+{
+    
+}

+ 0 - 12
src/Avalonia.Base/Metadata/TemplateDataTypeAttribute.cs

@@ -1,12 +0,0 @@
-using System;
-
-namespace Avalonia.Metadata;
-
-/// <summary>
-/// Defines the property that contains type of the data passed to the <see cref="IDataTemplate"/> implementation.
-/// </summary>
-[AttributeUsage(AttributeTargets.Property)]
-public class TemplateDataTypeAttribute : Attribute
-{
-    
-}

+ 1 - 1
src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/Transformers/AvaloniaXamlIlDataContextTypeTransformer.cs

@@ -49,7 +49,7 @@ namespace Avalonia.Markup.Xaml.XamlIl.CompilerExtensions.Transformers
                     }
                     else if (child is XamlPropertyAssignmentNode pa)
                     {
-                        var templateDataTypeAttribute = context.GetAvaloniaTypes().TemplateDataTypeAttribute;
+                        var templateDataTypeAttribute = context.GetAvaloniaTypes().DataTypeAttribute;
                         
                         if (pa.Property.Name == "DataContext"
                             && pa.Property.DeclaringType.Equals(context.GetAvaloniaTypes().StyledElement)

+ 2 - 2
src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/Transformers/AvaloniaXamlIlWellKnownTypes.cs

@@ -26,7 +26,7 @@ namespace Avalonia.Markup.Xaml.XamlIl.CompilerExtensions.Transformers
         public IXamlType Transitions { get; }
         public IXamlType AssignBindingAttribute { get; }
         public IXamlType DependsOnAttribute { get; }
-        public IXamlType TemplateDataTypeAttribute { get; }
+        public IXamlType DataTypeAttribute { get; }
         public IXamlType UnsetValueType { get; }
         public IXamlType StyledElement { get; }
         public IXamlType IStyledElement { get; }
@@ -113,7 +113,7 @@ namespace Avalonia.Markup.Xaml.XamlIl.CompilerExtensions.Transformers
             Transitions = cfg.TypeSystem.GetType("Avalonia.Animation.Transitions");
             AssignBindingAttribute = cfg.TypeSystem.GetType("Avalonia.Data.AssignBindingAttribute");
             DependsOnAttribute = cfg.TypeSystem.GetType("Avalonia.Metadata.DependsOnAttribute");
-            TemplateDataTypeAttribute = cfg.TypeSystem.GetType("Avalonia.Metadata.TemplateDataTypeAttribute");
+            DataTypeAttribute = cfg.TypeSystem.GetType("Avalonia.Metadata.DataTypeAttribute");
             AvaloniaObjectBindMethod = AvaloniaObjectExtensions.FindMethod("Bind", IDisposable, false, IAvaloniaObject,
                 AvaloniaProperty,
                 IBinding, cfg.WellKnownTypes.Object);

+ 1 - 1
src/Markup/Avalonia.Markup.Xaml/Templates/DataTemplate.cs

@@ -7,7 +7,7 @@ namespace Avalonia.Markup.Xaml.Templates
 {
     public class DataTemplate : IRecyclingDataTemplate
     {
-        [TemplateDataType]
+        [DataType]
         public Type DataType { get; set; }
 
         [Content]

+ 1 - 1
src/Markup/Avalonia.Markup.Xaml/Templates/TreeDataTemplate.cs

@@ -11,7 +11,7 @@ namespace Avalonia.Markup.Xaml.Templates
 {
     public class TreeDataTemplate : ITreeDataTemplate
     {
-        [TemplateDataType]
+        [DataType]
         public Type DataType { get; set; }
 
         [Content]

+ 1 - 1
tests/Avalonia.Markup.Xaml.UnitTests/MarkupExtensions/CompiledBindingExtensionTests.cs

@@ -1520,7 +1520,7 @@ namespace Avalonia.Markup.Xaml.UnitTests.MarkupExtensions
 
     public class CustomDataTemplate : IDataTemplate
     {
-        [TemplateDataType]
+        [DataType]
         public Type FancyDataType { get; set; }
 
         [Content]