Ejemplo n.º 1
0
        public PageDispatcher()
        {
            HomePage            = new HomePage();
            PlaylistsPage       = new PlaylistsPage();
            CreatePlaylistPage  = new CreatePlaylistPage();
            SettingPage         = new SettingPage();
            TopMusicPage        = new HomePage();
            SinglePlaylistPage  = new SinglePlaylistPage();
            FindSongPage        = new HomePage();
            CurrentSongListPage = new HomePage();
            UpdatePlaylistPage  = new UpdatePlaylistPage();
            GenrePage           = new GenrePage();

            CurrentPage = HomePage;
        }
Ejemplo n.º 2
0
        public PlaylistsMenuViewModel(IEventAggregator eventAggregator)
        {
            this.eventAggregator = eventAggregator;

            this.LoadedCommand = new DelegateCommand(() =>
            {
                if (SettingsClient.Get <bool>("Startup", "ShowLastSelectedPage"))
                {
                    this.SelectedPage = (PlaylistsPage)SettingsClient.Get <int>("FullPlayer", "SelectedPlaylistsPage");
                }
                else
                {
                    this.SelectedPage = PlaylistsPage.Playlists;
                }

                this.NagivateToSelectedPage();
            });
        }
Ejemplo n.º 3
0
        private void NagivateToPage(SlideDirection direction, PlaylistsPage page)
        {
            this.SlideInFrom = direction == SlideDirection.RightToLeft ? Constants.SlideDistance : -Constants.SlideDistance;

            switch (page)
            {
            case PlaylistsPage.Playlists:
                this.regionManager.RequestNavigate(RegionNames.PlaylistsRegion, typeof(PlaylistsPlaylists).FullName);
                break;

            case PlaylistsPage.SmartPlaylists:
                this.regionManager.RequestNavigate(RegionNames.PlaylistsRegion, typeof(PlaylistsSmartPlaylists).FullName);
                break;

            default:
                break;
            }
        }
Ejemplo n.º 4
0
        public async Task <bool> AddToPlaylist(MediaItemBase item)
        {
            var page = new PlaylistsPage {
                IsPicker = true, FilterBy = item
            };
            await App.Current.MainPage.Navigation.PushModalAsync(new NavigationPage(page));

            try {
                var playlist = await page.WaitForSelection();

                using (new Spinner(Strings.AddingToPlaylist)) {
                    var success = await MusicManager.Shared.AddToPlaylist(item, playlist);

                    if (!success)
                    {
                        App.ShowAlert(Strings.ErrorAddingToPlaylist, Strings.PleaseTryAgain);
                    }
                }
                return(true);
            } catch (TaskCanceledException) {
                return(false);
            }
        }
Ejemplo n.º 5
0
 private void NagivateToSelectedPage()
 {
     this.eventAggregator.GetEvent <IsPlaylistsPageChanged>().Publish(
         new Tuple <SlideDirection, PlaylistsPage>(this.selectedPage >= this.previousPage ? SlideDirection.RightToLeft : SlideDirection.LeftToRight, this.selectedPage));
     previousPage = this.selectedPage;
 }