Browse Source

Icon -> WindowIcon.

pull/575/head
Jeremy Koritzinsky 10 years ago
parent
commit
7a5eb8b39e
  1. 2
      src/Avalonia.Controls/Avalonia.Controls.csproj
  2. 8
      src/Avalonia.Controls/Window.cs
  3. 8
      src/Avalonia.Controls/WindowIcon.cs
  4. 2
      src/Markup/Avalonia.Markup.Xaml/Context/AvaloniaTypeFeatureProvider.cs
  5. 10
      src/Markup/Avalonia.Markup.Xaml/Converters/IconTypeConverter.cs

2
src/Avalonia.Controls/Avalonia.Controls.csproj

@ -56,7 +56,7 @@
<Compile Include="HotkeyManager.cs" />
<Compile Include="IApplicationLifecycle.cs" />
<Compile Include="IScrollable.cs" />
<Compile Include="Icon.cs" />
<Compile Include="WindowIcon.cs" />
<Compile Include="IPseudoClasses.cs" />
<Compile Include="DropDownItem.cs" />
<Compile Include="ISetInheritanceParent.cs" />

8
src/Avalonia.Controls/Window.cs

@ -73,8 +73,8 @@ namespace Avalonia.Controls
/// <summary>
/// Defines the <see cref="Icon"/> property.
/// </summary>
public static readonly StyledProperty<Icon> IconProperty =
AvaloniaProperty.Register<Window, Icon>(nameof(Icon));
public static readonly StyledProperty<WindowIcon> IconProperty =
AvaloniaProperty.Register<Window, WindowIcon>(nameof(Icon));
private readonly NameScope _nameScope = new NameScope();
private object _dialogResult;
@ -89,7 +89,7 @@ namespace Avalonia.Controls
TitleProperty.Changed.AddClassHandler<Window>((s, e) => s.PlatformImpl.SetTitle((string)e.NewValue));
HasSystemDecorationsProperty.Changed.AddClassHandler<Window>(
(s, e) => s.PlatformImpl.SetSystemDecorations((bool) e.NewValue));
IconProperty.Changed.AddClassHandler<Window>((s, e) => s.PlatformImpl.SetIcon(((Icon)e.NewValue).PlatformImpl));
IconProperty.Changed.AddClassHandler<Window>((s, e) => s.PlatformImpl.SetIcon(((WindowIcon)e.NewValue).PlatformImpl));
}
/// <summary>
@ -169,7 +169,7 @@ namespace Avalonia.Controls
/// <summary>
/// Gets or sets the icon of the window.
/// </summary>
public Icon Icon
public WindowIcon Icon
{
get { return GetValue(IconProperty); }
set { SetValue(IconProperty, value); }

8
src/Avalonia.Controls/Icon.cs → src/Avalonia.Controls/WindowIcon.cs

@ -12,19 +12,19 @@ namespace Avalonia.Controls
/// <summary>
/// Represents an icon for a window.
/// </summary>
public class Icon
public class WindowIcon
{
public Icon(IBitmap bitmap)
public WindowIcon(IBitmap bitmap)
{
PlatformImpl = AvaloniaLocator.Current.GetService<IPlatformIconLoader>().LoadIcon(bitmap.PlatformImpl);
}
public Icon(string fileName)
public WindowIcon(string fileName)
{
PlatformImpl = AvaloniaLocator.Current.GetService<IPlatformIconLoader>().LoadIcon(fileName);
}
public Icon(Stream stream)
public WindowIcon(Stream stream)
{
PlatformImpl = AvaloniaLocator.Current.GetService<IPlatformIconLoader>().LoadIcon(stream);
}

2
src/Markup/Avalonia.Markup.Xaml/Context/AvaloniaTypeFeatureProvider.cs

@ -173,7 +173,7 @@ namespace Avalonia.Markup.Xaml.Context
RegisterTypeConverter(typeof(TimeSpan), new TimeSpanTypeConverter());
RegisterTypeConverter(typeof(Uri), new UriTypeConverter());
RegisterTypeConverter(typeof(Cursor), new CursorTypeConverter());
RegisterTypeConverter(typeof(Icon), new IconTypeConverter());
RegisterTypeConverter(typeof(WindowIcon), new IconTypeConverter());
}
}
}

10
src/Markup/Avalonia.Markup.Xaml/Converters/IconTypeConverter.cs

@ -39,12 +39,12 @@ namespace Avalonia.Markup.Xaml.Converters
throw new NotSupportedException();
}
private Icon CreateIconFromBitmap(IBitmap bitmap)
private WindowIcon CreateIconFromBitmap(IBitmap bitmap)
{
return new Icon(bitmap);
return new WindowIcon(bitmap);
}
private Icon CreateIconFromPath(IValueContext context, string path)
private WindowIcon CreateIconFromPath(IValueContext context, string path)
{
var uri = new Uri(path, UriKind.RelativeOrAbsolute);
var baseUri = GetBaseUri(context);
@ -53,10 +53,10 @@ namespace Avalonia.Markup.Xaml.Converters
switch (scheme)
{
case "file":
return new Icon(path);
return new WindowIcon(path);
default:
var assets = AvaloniaLocator.Current.GetService<IAssetLoader>();
return new Icon(assets.Open(uri, baseUri));
return new WindowIcon(assets.Open(uri, baseUri));
}
}

Loading…
Cancel
Save