-
Notifications
You must be signed in to change notification settings - Fork 0
/
AvailableProperties.cs
71 lines (70 loc) · 3.68 KB
/
AvailableProperties.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
namespace MetadataChange
{
public class AvailableProperties
{
/// <summary>
/// The class that contains information to each metadata tag that can be edited from the standard view. This doesn't count custom metadata!
/// <param name="DisplayName">The name that'll be visible in the column header and in the FluentSelect</param>
/// <param name="TagLibProperty">The name of the TagLib Property to edit</param>
/// <param name="ConvertValue">The type of the TagLib Property to edit</param>
/// </summary>
public class PropertiesObject(string DisplayName, string TagLibProperty, PropertiesObject.PropertiesType ConvertValue)
{
/// <summary>
/// The type of the tag entry
/// </summary>
public enum PropertiesType
{
UINT,
/// <summary>
/// Shows a FluentInputField for single-line text
/// </summary>
STRING,
STRING_ARRAY,
/// <summary>
/// Shows a FluentTextArea for text that usually is on more liens
/// </summary>
STRING_TEXTAREA
}
/// <summary>
/// The name that'll be visible in the column header and in the FluentSelect
/// </summary>
public string DisplayName = DisplayName;
/// <summary>
/// The name of the TagLib Property to edit
/// </summary>
public string TagLibProperty = TagLibProperty;
/// <summary>
/// The type of the TagLib Property to edit
/// </summary>
///
public PropertiesType ConvertValue = ConvertValue;
}
public static List<PropertiesObject> AvailableMetadata =
[
new("Album", "Album", PropertiesObject.PropertiesType.STRING),
new("Album Artists", "AlbumArtists", PropertiesObject.PropertiesType.STRING_ARRAY),
new ("Album Artists (Sort by)", "AlbumArtistsSort", PropertiesObject.PropertiesType.STRING_ARRAY),
new ("Amazon ID", "AmazonID", PropertiesObject.PropertiesType.STRING),
new ("Artists", "Artists", PropertiesObject.PropertiesType.STRING_ARRAY),
new ("Comment", "Comment", PropertiesObject.PropertiesType.STRING_TEXTAREA),
new ("Composers", "Composers", PropertiesObject.PropertiesType.STRING_ARRAY),
new ("Composers (Sort by)", "ComposersSort", PropertiesObject.PropertiesType.STRING_ARRAY),
new ("Conductor", "Conductor", PropertiesObject.PropertiesType.STRING),
new ("Copyright", "Copyright", PropertiesObject.PropertiesType.STRING),
new ("Description", "Description", PropertiesObject.PropertiesType.STRING_TEXTAREA),
new ("Disc", "Disc", PropertiesObject.PropertiesType.UINT),
new ("Disc count", "DiscCount", PropertiesObject.PropertiesType.UINT),
new ("Genres", "Genres", PropertiesObject.PropertiesType.STRING_ARRAY),
new ("Lyrics", "Lyrics", PropertiesObject.PropertiesType.STRING_TEXTAREA),
new ("Publisher", "Publisher", PropertiesObject.PropertiesType.STRING),
new ("Remixed By", "RemixedBy", PropertiesObject.PropertiesType.STRING),
new ("Subtitle", "Subtitle", PropertiesObject.PropertiesType.STRING),
new ("Title", "Title", PropertiesObject.PropertiesType.STRING),
new ("Title (Sort by)", "TitleSort", PropertiesObject.PropertiesType.STRING),
new ("Track", "Track", PropertiesObject.PropertiesType.UINT),
new ("Track count", "TrackCount", PropertiesObject.PropertiesType.UINT),
new ("Year", "Year", PropertiesObject.PropertiesType.UINT),
];
}
}