Browse Source

Added IResourceDictionary.

pull/1136/head
Steven Kirk 9 years ago
parent
commit
39fc0ccdb5
  1. 13
      src/Avalonia.Styling/Controls/IResourceDictionary.cs
  2. 2
      src/Avalonia.Styling/Controls/ResourceDictionary.cs
  3. 7
      src/Avalonia.Styling/Styling/Style.cs

13
src/Avalonia.Styling/Controls/IResourceDictionary.cs

@ -0,0 +1,13 @@
using System;
using System.Collections;
using System.Collections.Generic;
namespace Avalonia.Controls
{
/// <summary>
/// An indexed dictionary of resources.
/// </summary>
public interface IResourceDictionary : IDictionary<string, object>
{
}
}

2
src/Avalonia.Styling/Controls/ResourceDictionary.cs

@ -7,7 +7,7 @@ namespace Avalonia.Controls
/// <summary>
/// An indexed dictionary of resources.
/// </summary>
public class ResourceDictionary : IDictionary<string, object>, IDictionary
public class ResourceDictionary : IResourceDictionary, IDictionary
{
private Dictionary<string, object> _inner = new Dictionary<string, object>();

7
src/Avalonia.Styling/Styling/Style.cs

@ -17,7 +17,7 @@ namespace Avalonia.Styling
private static Dictionary<IStyleable, List<IDisposable>> _applied =
new Dictionary<IStyleable, List<IDisposable>>();
private ResourceDictionary _resources;
private IResourceDictionary _resources;
/// <summary>
/// Initializes a new instance of the <see cref="Style"/> class.
@ -38,7 +38,7 @@ namespace Avalonia.Styling
/// <summary>
/// Gets or sets a dictionary of style resources.
/// </summary>
public ResourceDictionary Resources
public IResourceDictionary Resources
{
get
{
@ -52,15 +52,12 @@ namespace Avalonia.Styling
set
{
var resources = Resources;
if (!Equals(resources, value))
{
foreach (var i in value)
{
resources[i.Key] = i.Value;
//resources.Add(i.Key, i.Value);
//(resources as IDictionary<string,object>).Add(i);
}
}
}

Loading…
Cancel
Save