/// <summary>
        /// Loads songs from a specified folder into the library. <seealso cref="LoadCommand"/>
        /// </summary>
        public async void Load()
        {
            //LibVM.Database.RemoveFolder(LibraryFoldersCollection[0].Path);
            FolderPicker picker = new FolderPicker();

            picker.FileTypeFilter.Add(".mp3");
            picker.FileTypeFilter.Add(".wav");
            picker.FileTypeFilter.Add(".ogg");
            picker.FileTypeFilter.Add(".flac");
            picker.FileTypeFilter.Add(".m4a");
            picker.FileTypeFilter.Add(".aif");
            picker.FileTypeFilter.Add(".wma");
            picker.SuggestedStartLocation = PickerLocationId.MusicLibrary;
            picker.ViewMode         = PickerViewMode.List;
            picker.CommitButtonText = "Import";
            StorageFolder folder = await picker.PickSingleFolderAsync();

            if (folder != null)
            {
                LibraryFoldersCollection.Add(folder);
                StorageApplicationPermissions.FutureAccessList.Add(folder);
                //Get query options with which we search for files in the specified folder
                var options = Common.DirectoryWalker.GetQueryOptions();
                //this is the query result which we recieve after querying in the folder
                StorageFileQueryResult queryResult = folder.CreateFileQueryWithOptions(options);
                //the event for files changed
                queryResult.ContentsChanged += QueryResult_ContentsChanged;
                await AddFolderToLibraryAsync(queryResult);
            }
        }
        private async void Reset()
        {
            Messenger.Instance.NotifyColleagues(MessageTypes.MSG_DISPOSE);
            LibraryFoldersCollection.Clear();
            await ApplicationData.Current.ClearAsync();

            ResetCommand.IsEnabled = false;
            await Task.Delay(200);

            ResetCommand.IsEnabled = true;
        }
 async void Reset()
 {
     LibVM.Dispose();
     await Player.Stop();
     ShellVM.Dispose();
     AlbumArtistVM.Dispose();
     LibraryFoldersCollection.Clear();
     await ApplicationData.Current.ClearAsync();
     LibVM.Database = new Database.DatabaseQueryMethods();
     AlbumArtistVM.InitDB();
    // GC.Collect();
     LibVM.SongCount = 0;
     ResetCommand.IsEnabled = false;
     await Task.Delay(200);
     ResetCommand.IsEnabled = true;
 }
Exemple #4
0
        private async void Reset()
        {
            try
            {
                Messenger.Instance.NotifyColleagues(MessageTypes.MSG_DISPOSE);
                LibraryFoldersCollection.Clear();
                await ApplicationData.Current.ClearAsync();

                ResetCommand.IsEnabled = false;
                await Task.Delay(200);

                ResetCommand.IsEnabled = true;
            }
            catch (Exception ex)
            {
                BLogger.Logger.Error("Error occured while resetting the player.", ex);
            }
        }
Exemple #5
0
        public async Task LoadFolders()
        {
            if (LibraryFoldersCollection.Count <= 0)
            {
                var folderPaths = RoamingSettingsHelper.GetSetting <string>("folders", null);
                if (folderPaths != null)
                {
                    foreach (var folder in folderPaths.Split('|'))
                    {
                        if (!string.IsNullOrEmpty(folder))
                        {
                            var storageFolder = await StorageFolder.GetFolderFromPathAsync(folder);

                            LibraryFoldersCollection.Add(storageFolder);
                        }
                    }
                }
            }
        }
Exemple #6
0
        /// <summary>
        /// Loads songs from a specified folder into the library. <seealso cref="LoadCommand"/>
        /// </summary>
        public async void Load()
        {
            try
            {  //LibVM.Database.RemoveFolder(LibraryFoldersCollection[0].Path);
                FolderPicker picker = new FolderPicker();
                picker.FileTypeFilter.Add(".mp3");
                picker.FileTypeFilter.Add(".wav");
                picker.FileTypeFilter.Add(".ogg");
                picker.FileTypeFilter.Add(".flac");
                picker.FileTypeFilter.Add(".m4a");
                picker.FileTypeFilter.Add(".aif");
                picker.FileTypeFilter.Add(".wma");
                picker.SuggestedStartLocation = PickerLocationId.MusicLibrary;
                picker.ViewMode         = PickerViewMode.List;
                picker.CommitButtonText = "Import";
                StorageFolder folder = await picker.PickSingleFolderAsync();

                if (folder != null)
                {
                    Messenger.Instance.NotifyColleagues(MessageTypes.MSG_UPDATE_SONG_COUNT, 1);
                    LibraryFoldersCollection.Add(folder);
                    StorageApplicationPermissions.FutureAccessList.Add(folder);
                    //Get query options with which we search for files in the specified folder
                    var options = Common.DirectoryWalker.GetQueryOptions();
                    //this is the query result which we recieve after querying in the folder
                    StorageFileQueryResult queryResult = folder.CreateFileQueryWithOptions(options);
                    //the event for files changed
                    queryResult.ContentsChanged += QueryResult_ContentsChanged;
                    await AddFolderToLibraryAsync(queryResult);
                }
            }
            catch (UnauthorizedAccessException)
            {
                await NotificationManager.ShowMessageAsync("You are not authorized to access this folder. Please choose another folder or try again.");
            }
        }