// Catalog.GetString ("Music Library") public MusicLibrarySource() : base(Catalog.GetString("Music"), "Library", 40) { MediaTypes = TrackMediaAttributes.Music | TrackMediaAttributes.AudioStream; NotMediaTypes = TrackMediaAttributes.Podcast | TrackMediaAttributes.VideoStream | TrackMediaAttributes.AudioBook; Properties.SetStringList("Icon.Name", "audio-x-generic", "source-library"); Properties.Set <string> ("SearchEntryDescription", Catalog.GetString("Search your music")); // Migrate the old library-location schema, if necessary if (DatabaseConfigurationClient.Client.Get <int> ("MusicLibraryLocationMigrated", 0) != 1) { string old_location = OldLocationSchema.Get(); if (!String.IsNullOrEmpty(old_location)) { BaseDirectory = old_location; } DatabaseConfigurationClient.Client.Set <int> ("MusicLibraryLocationMigrated", 1); } SetFileNamePattern(MusicFileNamePattern); Section misc = PreferencesPage.Add(new Section("misc", Catalog.GetString("Miscellaneous"), 10)); misc.Add(new SchemaPreference <bool> (LibrarySchema.SortByAlbumYear, Catalog.GetString("_Sort an artist's albums by year, not title"), null, delegate { DatabaseTrackModel.Resort(); DatabaseTrackModel.Reload(); } )); }
protected void RateLimitedReload() { lock (track_model) { DatabaseTrackModel.Reload(); } OnUpdated(); Save(); }