Example #1
0
        private void Scrollviewer_Loaded(object sender, RoutedEventArgs e)
        {
            scrollTimer          = new Timer();
            scrollTimer.Interval = 50;
            var forward = true;

            scrollTimer.Elapsed += (source, args) => {
                Helper.executeInUiThread(() =>
                {
                    if (forward)
                    {
                        scrollviewer.ScrollToHorizontalOffset(scrollviewer.HorizontalOffset + 0.5);
                    }
                    else
                    {
                        scrollviewer.ScrollToHorizontalOffset(scrollviewer.HorizontalOffset - 0.5);
                    }

                    if (scrollviewer.HorizontalOffset == scrollviewer.ScrollableWidth)
                    {
                        forward = false;
                    }
                    else if (scrollviewer.HorizontalOffset == 0)
                    {
                        forward = true;
                    }
                });
            };
            scrollTimer.Start();
        }
Example #2
0
        private async void loadPlaylists()
        {
            try
            {
                ObservableCollection <Playlist> lists = await DataIO.ReadPlaylists();

                Helper.executeInUiThread(() =>
                {
                    this.selectedPlaylist         = lists[0];
                    this.MainListView.ItemsSource = songListObservable;
                    songListObservable.Clear();

                    PlaylistList.Items.Clear();
                    foreach (Playlist pl in lists)
                    {
                        PlaylistList.Items.Add(pl);
                    }
                    this.PlaylistList.SelectedIndex = 0;

                    if (lists[0].Songlist == null)
                    {
                        return;
                    }

                    foreach (Song s in this.selectedPlaylist.Songlist)
                    {
                        this.songListObservable.Add(s);
                    }
                });
            }
            catch (NullReferenceException)
            {
                return;
            }
        }
Example #3
0
        private async void DeleteButton_Click(object sender, RoutedEventArgs e)
        {
            await DataIO.RemovePlaylist(this.selectedPlaylist.Title);

            Helper.executeInUiThread(() => this.PlaylistList.Items.Clear());
            this.loadPlaylists();
        }
Example #4
0
        private void Ellipse_PointerExited(object sender, PointerRoutedEventArgs e)
        {
            var img = (sender as Image);
            var tmp = Helper.base64toBmp((img.DataContext as Song).Thumbnail);

            img.Stretch = Stretch.Fill;
            img.Source  = tmp;
        }
Example #5
0
        private async void loadSettings()
        {
            var settings = await DataIO.readSettings();

            Helper.executeInUiThread(() =>
            {
                this.VolumeSlider.Value = settings.volumePerc;
            });
        }
Example #6
0
        private void Image_DataContextChanged(FrameworkElement sender, DataContextChangedEventArgs args)
        {
            var img = (sender as Image);

            if (img.DataContext as Song != null)
            {
                var tmp = Helper.base64toBmp((img.DataContext as Song).Thumbnail);
                img.Stretch = Stretch.Fill;
                img.Source  = tmp;
            }
        }
Example #7
0
        private async void EditButton_Click(object sender, RoutedEventArgs e)
        {
            String nTitle = await Helper.InputTextDialogAsync("Rename Playlist", "Rename");

            String oldTitle = this.selectedPlaylist.Title;

            this.selectedPlaylist.Title = nTitle;
            await DataIO.SavePlaylist(this.selectedPlaylist, oldTitle);

            this.loadPlaylists();
        }
Example #8
0
        private async void AddPlaylistButton_Click(object sender, RoutedEventArgs e)
        {
            String plName = await Helper.InputTextDialogAsync("Playlist name", "Add");

            if (plName == "")
            {
                return;
            }
            var npl = new Playlist(plName);
            await DataIO.SavePlaylist(npl);

            this.PlaylistList.Items.Clear();
            this.loadPlaylists();
        }
Example #9
0
        private async void SearchBar_KeyUp(object sender, KeyRoutedEventArgs e)
        {
            if (e.Key == Windows.System.VirtualKey.Enter)
            {
                this.searching = true;
                var items = new VideoSearch();
                this.songListObservable.Clear();

                LoadingDialog dialog = new LoadingDialog();
                var           t      = dialog.ShowAsync();

                var videos = await items.GetVideos(this.SearchBar.Text, 1);

                foreach (var item in videos)
                {
                    var s = new Song(item.getTitle(), item.getUrl(), "none", Helper.ImageURLToBase64(item.getThumbnail()), item.getDuration());
                    this.songListObservable.Add(s);
                }
                t.Cancel();
            }
        }