Ejemplo n.º 1
0
        /// <summary>
        /// Load back where we are and the current source to continue from there.
        /// </summary>
        private async void loadPlayerState()
        {
            // Check if each stored setting is available (not null) and change the media player element based on that.

            if (NBPlayerState.CurrentPlaylist != null)
            {
                if (NBPlayerState.CurrentSourceIndex != null)
                {
                    if (NBRegistry.GetMedias().Contains(NBPlayerState.CurrentMediaList[(int)NBPlayerState.CurrentSourceIndex]))
                    {
                        NBPlayerState.CurrentPlaylist.MoveTo((uint)NBPlayerState.CurrentSourceIndex);

                        string mediaName = NBPlayerState.CurrentMediaList[(int)NBPlayerState.CurrentSourceIndex].Name;
                        lblMediaTitle.Text = mediaName;
                    }
                    else
                    {
                        NBPlayerState.CurrentPlaylist.Items.RemoveAt((int)NBPlayerState.CurrentSourceIndex);
                        if (NBPlayerState.CurrentSourceIndex + 1 < NBPlayerState.CurrentPlaylist.Items.Count)
                        {
                            NBPlayerState.CurrentPlaylist.MoveTo((uint)NBPlayerState.CurrentSourceIndex + 1);
                        }
                        else if (NBPlayerState.CurrentSourceIndex - 1 >= 0)
                        {
                            NBPlayerState.CurrentPlaylist.MoveTo((uint)NBPlayerState.CurrentSourceIndex - 1);
                        }
                        else
                        {
                            currentMediaPlayer.Source = null;
                            lblMediaTitle.Text        = "Nope. No media here yet...";
                        }
                    }
                }

                if (NBPlayerState.CurrentPosition != null)
                {
                    currentMediaPlayer.PlaybackSession.Position = NBPlayerState.CurrentPosition;
                }
            }
            else if (NBPlayerState.CurrentImage != null)
            {
                medPlayer.Visibility = Visibility.Collapsed;

                FileRandomAccessStream stream = (FileRandomAccessStream)await NBPlayerState.CurrentImage.MediaFile.OpenAsync(FileAccessMode.Read);

                BitmapImage image = new BitmapImage();
                await image.SetSourceAsync(stream);

                imgDisplayer.Source = image;

                imgDisplayerFrame.Visibility = Visibility.Visible;
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Checks if the command can execute first, then executes the media deletion process.
        /// </summary>
        /// <param name="parameter">The given parameter, which can be anything.</param>
        public void Execute(object parameter)
        {
            DeleteMediaArgs args = parameter as DeleteMediaArgs;

            NBRegistry.RemoveMedia(args.TargetMedia);
        }
Ejemplo n.º 3
0
        public MainPage()
        {
            this.InitializeComponent();

            NBRegistry.Init(); // Initializa the registry by loading the saved medias and playlists.
        }