2021-02-21 21:52:41 -06:00
|
|
|
// Decompiled with JetBrains decompiler
|
|
|
|
|
// Type: ZuneUI.TrackMetadataPropertySource
|
|
|
|
|
// 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 MicrosoftZuneLibrary;
|
|
|
|
|
|
|
|
|
|
namespace ZuneUI
|
|
|
|
|
{
|
|
|
|
|
public class TrackMetadataPropertySource : PropertySource
|
|
|
|
|
{
|
|
|
|
|
private static PropertySource _instance;
|
|
|
|
|
|
|
|
|
|
protected TrackMetadataPropertySource()
|
|
|
|
|
{
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static PropertySource Instance
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
2021-02-21 22:59:09 -06:00
|
|
|
if (_instance == null)
|
|
|
|
|
_instance = new TrackMetadataPropertySource();
|
|
|
|
|
return _instance;
|
2021-02-21 21:52:41 -06:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override object Get(object media, PropertyDescriptor property)
|
|
|
|
|
{
|
|
|
|
|
TrackMetadata trackMetadata = media as TrackMetadata;
|
|
|
|
|
string descriptorName = property.DescriptorName;
|
|
|
|
|
if (descriptorName == MetadataEditMedia.s_Title.DescriptorName)
|
2021-02-21 22:59:09 -06:00
|
|
|
return trackMetadata.TrackTitle;
|
2021-02-21 21:52:41 -06:00
|
|
|
if (descriptorName == MetadataEditMedia.s_Artist.DescriptorName)
|
2021-02-21 22:59:09 -06:00
|
|
|
return trackMetadata.TrackArtist;
|
2021-02-21 21:52:41 -06:00
|
|
|
if (descriptorName == MetadataEditMedia.s_Genre.DescriptorName)
|
2021-02-21 22:59:09 -06:00
|
|
|
return trackMetadata.Genre;
|
2021-02-21 21:52:41 -06:00
|
|
|
if (descriptorName == MetadataEditMedia.s_Composer.DescriptorName)
|
2021-02-21 22:59:09 -06:00
|
|
|
return trackMetadata.Composer;
|
2021-02-21 21:52:41 -06:00
|
|
|
if (descriptorName == MetadataEditMedia.s_Conductor.DescriptorName)
|
2021-02-21 22:59:09 -06:00
|
|
|
return trackMetadata.Conductor;
|
2021-02-21 21:52:41 -06:00
|
|
|
if (descriptorName == MetadataEditMedia.s_TrackNumber.DescriptorName)
|
2021-02-21 22:59:09 -06:00
|
|
|
return trackMetadata.TrackNumber;
|
2021-02-21 21:52:41 -06:00
|
|
|
if (descriptorName == MetadataEditMedia.s_DiscNumber.DescriptorName)
|
2021-02-21 22:59:09 -06:00
|
|
|
return trackMetadata.DiscNumber;
|
|
|
|
|
return descriptorName == MetadataEditMedia.s_MediaId.DescriptorName ? trackMetadata.MediaId : (object)null;
|
2021-02-21 21:52:41 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void Set(object media, PropertyDescriptor property, object value)
|
|
|
|
|
{
|
|
|
|
|
TrackMetadata trackMetadata = media as TrackMetadata;
|
|
|
|
|
string descriptorName = property.DescriptorName;
|
|
|
|
|
if (descriptorName == MetadataEditMedia.s_Title.DescriptorName)
|
|
|
|
|
trackMetadata.TrackTitle = (string)value;
|
|
|
|
|
else if (descriptorName == MetadataEditMedia.s_Artist.DescriptorName)
|
|
|
|
|
trackMetadata.TrackArtist = (string)value;
|
|
|
|
|
else if (descriptorName == MetadataEditMedia.s_Genre.DescriptorName)
|
|
|
|
|
trackMetadata.Genre = (string)value;
|
|
|
|
|
else if (descriptorName == MetadataEditMedia.s_Composer.DescriptorName)
|
|
|
|
|
trackMetadata.Composer = (string)value;
|
|
|
|
|
else if (descriptorName == MetadataEditMedia.s_Conductor.DescriptorName)
|
|
|
|
|
trackMetadata.Conductor = (string)value;
|
|
|
|
|
else if (descriptorName == MetadataEditMedia.s_TrackNumber.DescriptorName)
|
|
|
|
|
trackMetadata.TrackNumber = (int)value;
|
|
|
|
|
else if (descriptorName == MetadataEditMedia.s_DiscNumber.DescriptorName)
|
|
|
|
|
{
|
|
|
|
|
trackMetadata.DiscNumber = (int)value;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
if (!(descriptorName == MetadataEditMedia.s_MediaId.DescriptorName))
|
|
|
|
|
return;
|
|
|
|
|
trackMetadata.MediaId = (int)value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|