mirror of
https://github.com/ZuneDev/ZuneShell.dll.git
synced 2026-07-27 13:11:51 -07:00
88 lines
2.6 KiB
C#
88 lines
2.6 KiB
C#
// Decompiled with JetBrains decompiler
|
|
// Type: ZuneXml.InboxImageDataProviderObject
|
|
// Assembly: ZuneShell, Version=4.7.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
|
// MVID: FC8028F3-A47B-4FB4-B35B-11D1752D8264
|
|
// Assembly location: C:\Program Files\Zune\ZuneShell.dll
|
|
|
|
using Microsoft.Iris;
|
|
using System;
|
|
|
|
namespace ZuneXml
|
|
{
|
|
internal class InboxImageDataProviderObject : DataProviderObject
|
|
{
|
|
public static readonly string PropertyName_InLibrary = nameof(InLibrary);
|
|
public static readonly string PropertyName_ImagePath = nameof(ImagePath);
|
|
public static readonly string PropertyName_Photo = nameof(Photo);
|
|
private bool _inLibrary;
|
|
private string _imagePath;
|
|
private Image _photo;
|
|
|
|
public InboxImageDataProviderObject(DataProviderQuery owner, object resultTypeCookie)
|
|
: base(owner, resultTypeCookie)
|
|
{
|
|
}
|
|
|
|
public override object GetProperty(string propertyName)
|
|
{
|
|
if (propertyName == PropertyName_InLibrary)
|
|
return InLibrary;
|
|
if (propertyName == PropertyName_ImagePath)
|
|
return ImagePath;
|
|
return propertyName == PropertyName_Photo ? Photo : null;
|
|
}
|
|
|
|
public bool InLibrary
|
|
{
|
|
get => this._inLibrary;
|
|
set
|
|
{
|
|
if (this._inLibrary == value)
|
|
return;
|
|
this._inLibrary = value;
|
|
this.FirePropertyChanged(PropertyName_InLibrary);
|
|
}
|
|
}
|
|
|
|
public string ImagePath
|
|
{
|
|
get => this._imagePath;
|
|
set
|
|
{
|
|
if (!(this._imagePath != value))
|
|
return;
|
|
this._imagePath = value;
|
|
this.FirePropertyChanged(PropertyName_ImagePath);
|
|
}
|
|
}
|
|
|
|
public Image Photo
|
|
{
|
|
get
|
|
{
|
|
if (this._photo == null && !string.IsNullOrEmpty(this._imagePath))
|
|
this._photo = new Image("file://" + this._imagePath);
|
|
return this._photo;
|
|
}
|
|
}
|
|
|
|
public override void SetProperty(string propertyName, object value)
|
|
{
|
|
if (propertyName == PropertyName_InLibrary)
|
|
{
|
|
this.InLibrary = (bool)value;
|
|
}
|
|
else
|
|
{
|
|
if (!(propertyName == PropertyName_ImagePath))
|
|
throw new ApplicationException("unexpected property name");
|
|
this.ImagePath = (string)value;
|
|
}
|
|
}
|
|
|
|
internal void TransferToAppThread()
|
|
{
|
|
}
|
|
}
|
|
}
|