Browse Source

Rename TemplateDataTypeAttribute to DataTypeAttribute

pull/8203/head
Max Katz 4 years ago
parent
commit
b567fcebf5
  1. 15
      src/Avalonia.Base/Metadata/DataTypeAttribute.cs
  2. 12
      src/Avalonia.Base/Metadata/TemplateDataTypeAttribute.cs
  3. 2
      src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/Transformers/AvaloniaXamlIlDataContextTypeTransformer.cs
  4. 4
      src/Markup/Avalonia.Markup.Xaml.Loader/CompilerExtensions/Transformers/AvaloniaXamlIlWellKnownTypes.cs
  5. 2
      src/Markup/Avalonia.Markup.Xaml/Templates/DataTemplate.cs
  6. 2
      src/Markup/Avalonia.Markup.Xaml/Templates/TreeDataTemplate.cs
  7. 2
      tests/Avalonia.Markup.Xaml.UnitTests/MarkupExtensions/CompiledBindingExtensionTests.cs

15
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
{
}

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
{
}

2
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)

4
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);

2
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]

2
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]

2
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]

Loading…
Cancel
Save