コード例 #1
0
        public void PlayMusic(Model.Music media)
        {
            MediaElement.Display(media.Path);
            MediaElement.Hide();
            Play();

            Image.Display(AppDomain.CurrentDomain.BaseDirectory + "../../images/WindowsMediaPlayerLogo.png");
            Image.Show();

            IsPlayingMedia = true;
        }
コード例 #2
0
        public System.Collections.ObjectModel.ObservableCollection<Model.Playlist> ExtractPlaylists()
        {
            IEnumerable<System.Xml.Linq.XElement> playlists = XElement.Elements();
            System.Collections.ObjectModel.ObservableCollection<Model.Playlist> playlistsList = new System.Collections.ObjectModel.ObservableCollection<Model.Playlist>();
            if (XElement == null)
                return null;
            try
            {
                /* CREATING AN OBSERVABLECOLLECTION FROM ALL PLAYLIST */

                foreach (var playlist in playlists)
                {
                    IEnumerable<System.Xml.Linq.XElement> medias = XElement.Elements("Media");
                    System.Collections.ObjectModel.ObservableCollection<Model.Media> mediasList = new System.Collections.ObjectModel.ObservableCollection<Model.Media>();

                    /* CREATING AN MEDIA COLLECTION CORRESPONDING TO ALL MEDIAS OF PLAYLIST */

                    foreach (var media in medias)
                    {
                        /* TEST IF XML ELEMENT IS VALID FOR MEDIA */

                        if (media != null && media.Element("Path") != null && media.Element("Type") != null)
                        {
                            Model.Media newMedia = null;

                            switch ((Model.Media.MediaType)Enum.Parse(typeof(Model.Media.MediaType), media.Element("Type").Value))
                            {
                                case Model.Media.MediaType.IMAGE:
                                    newMedia = new Model.Image(media.Element("Path").Value);
                                    break;
                                case Model.Media.MediaType.VIDEO:
                                    newMedia = new Model.Video(media.Element("Path").Value);
                                    break;
                                case Model.Media.MediaType.MUSIC:
                                    newMedia = new Model.Music(media.Element("Path").Value);
                                    break;
                            }

                            if (newMedia != null)
                                mediasList.Add(newMedia);
                        }
                    }

                    /* ADDING NEW PLAYLIST ELEMENT TO SELECTION */

                    playlistsList.Add(new Model.Playlist() { Name = playlist.Element("Name").Value, MediasList = mediasList });
                }
            }
            catch
            { }

            return playlistsList;
        }
コード例 #3
0
        public System.Collections.ObjectModel.ObservableCollection <Model.Playlist> GetPlaylists()
        {
            System.Collections.ObjectModel.ObservableCollection <Model.Playlist> playlistsCollection = new System.Collections.ObjectModel.ObservableCollection <Model.Playlist>();

            try
            {
                IEnumerable <System.Xml.Linq.XElement> playlists = xelement.Elements("Playlist");
                foreach (var playlist in playlists)
                {
                    System.Collections.ObjectModel.ObservableCollection <Model.Media> medias = new System.Collections.ObjectModel.ObservableCollection <Model.Media>();
                    IEnumerable <System.Xml.Linq.XElement> elements = playlist.Elements("Element");
                    foreach (var elem in elements)
                    {
                        if (elem != null &&
                            elem.Element("Path") != null &&
                            elem.Element("Stream") != null &&
                            elem.Element("Type") != null)
                        {
                            Model.Media media = null;

                            switch ((Model.Media.MediaType)Enum.Parse(typeof(Model.Media.MediaType), elem.Element("Type").Value))
                            {
                            case Model.Media.MediaType.MUSIC:
                                media = new Model.Music(elem.Element("Path").Value, Boolean.Parse(elem.Element("Stream").Value));
                                break;

                            case Model.Media.MediaType.PICTURE:
                                media = new Model.Picture(elem.Element("Path").Value, Boolean.Parse(elem.Element("Stream").Value));
                                break;

                            case Model.Media.MediaType.VIDEO:
                                media = new Model.Video(elem.Element("Path").Value, Boolean.Parse(elem.Element("Stream").Value));
                                break;
                            }

                            if (media != null)
                            {
                                medias.Add(media);
                            }
                        }
                    }
                    playlistsCollection.Add(new Model.Playlist()
                    {
                        Name   = playlist.Attribute("name").Value,
                        Medias = medias
                    });
                }
            }
            catch { Console.WriteLine("FAILED GetPlaylists catch"); }

            return(playlistsCollection);
        }
コード例 #4
0
        public System.Collections.ObjectModel.ObservableCollection<Model.Playlist> GetPlaylists()
        {
            System.Collections.ObjectModel.ObservableCollection<Model.Playlist> playlistsCollection = new System.Collections.ObjectModel.ObservableCollection<Model.Playlist>();

            try
            {
                IEnumerable<System.Xml.Linq.XElement> playlists = xelement.Elements("Playlist");
                foreach (var playlist in playlists)
                {
                    System.Collections.ObjectModel.ObservableCollection<Model.Media> medias = new System.Collections.ObjectModel.ObservableCollection<Model.Media>();
                    IEnumerable<System.Xml.Linq.XElement> elements = playlist.Elements("Element");
                    foreach (var elem in elements)
                    {
                        if ( elem != null &&
                             elem.Element("Path") != null &&
                             elem.Element("Stream") != null &&
                             elem.Element("Type") != null)
                        {
                            Model.Media media = null;

                            switch ((Model.Media.MediaType)Enum.Parse(typeof(Model.Media.MediaType), elem.Element("Type").Value))
                            {
                                case Model.Media.MediaType.MUSIC:
                                    media = new Model.Music(elem.Element("Path").Value, Boolean.Parse(elem.Element("Stream").Value));
                                    break;
                                case Model.Media.MediaType.PICTURE:
                                    media = new Model.Picture(elem.Element("Path").Value, Boolean.Parse(elem.Element("Stream").Value));
                                    break;
                                case Model.Media.MediaType.VIDEO:
                                    media = new Model.Video(elem.Element("Path").Value, Boolean.Parse(elem.Element("Stream").Value));
                                    break;
                            }

                            if (media != null)
                                medias.Add(media);
                        }
                    }
                    playlistsCollection.Add(new Model.Playlist()
                    {
                        Name = playlist.Attribute("name").Value,
                        Medias = medias
                    });
                }
            }
            catch { Console.WriteLine("FAILED GetPlaylists catch"); }

            return playlistsCollection;
        }
コード例 #5
0
        public void AddMusic(Model.Music music)
        {
            XML.MediaXML mediaXML = new XML.MediaXML();

            mediaXML.Load("musics.xml");
            if (!mediaXML.HasMedia(music.Path))
            {
                mediaXML.Add(music.Path, music.Stream);
                mediaXML.WriteInFile("musics.xml");
                if (music.Name.Contains(this._SearchInput))
                {
                    Musics.Add(music);
                }
                MusicsTmp.Add(music);
            }
        }
コード例 #6
0
        private void ExecuteOpenMusicFile()
        {
            System.Windows.Forms.OpenFileDialog openFileDialog = new System.Windows.Forms.OpenFileDialog();
            openFileDialog.Filter = "MP3 Files (.mp3)|*.mp3|All Files (*.*)|*.*";
            openFileDialog.FilterIndex = 1;

            if (openFileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                Model.Music NewMusic = new Model.Music(openFileDialog.FileName);
                MusicList.Add(NewMusic);
                XMLMedia XMLMusic = new XMLMedia();
                XMLMusic.LoadXML("Music.xml");
                XMLMusic.AddMedia(NewMusic);
                XMLMusic.WriteXML("Music.xml");
            }
        }
コード例 #7
0
        public void LoadData()
        {
            Musics    = new System.Collections.ObjectModel.ObservableCollection <Model.Music>();
            MusicsTmp = new System.Collections.ObjectModel.ObservableCollection <Model.Music>();
            XML.MediaXML mediaXML = new XML.MediaXML();

            mediaXML.Load("musics.xml");
            List <Tuple <String, Boolean> > medias = mediaXML.GetMedias();

            foreach (var media in medias)
            {
                Model.Music pics_1 = new Model.Music(media.Item1, media.Item2);
                Model.Music pics_2 = new Model.Music(media.Item1, media.Item2);
                MusicsTmp.Add(pics_1);
                Musics.Add(pics_2);
            }
        }
コード例 #8
0
        public void RemoveMusic(Model.Music music)
        {
            XML.MediaXML mediaXML = new XML.MediaXML();

            mediaXML.Load("musics.xml");
            mediaXML.Remove(music.Path);
            mediaXML.WriteInFile("musics.xml");
            String namePathFile = music.Path;

            Musics.Remove(music);

            var medias   = from media in MusicsTmp where media.Path.Contains(namePathFile) select media;
            var selected = music;

            foreach (var media in medias)
            {
                selected = media;
            }
            MusicsTmp.Remove(selected);
        }
コード例 #9
0
 public Product(Music m, SortedList<int, Model.Tracklist> t)
 {
     music = m;
     tracklist = t;
 }
コード例 #10
0
 public Product(Music m)
 {
     music = m;
 }
コード例 #11
0
        private void LoadMusicFile(String FileName)
        {
            //TODO CHECK IF MEDIA ALREADY LOADED + LOAD MEDIA

            /* ERASE */

            var Extension = System.IO.Path.GetExtension(FileName).ToUpper();

            if (Extension == ".MP3")
            {
                Model.Music NewMusic = new Model.Music(FileName);
                MusicList.Add(NewMusic);
            }
        }
コード例 #12
0
        public void LoadData()
        {
            Musics = new System.Collections.ObjectModel.ObservableCollection<Model.Music>();
            MusicsTmp = new System.Collections.ObjectModel.ObservableCollection<Model.Music>();
            XML.MediaXML mediaXML = new XML.MediaXML();

            mediaXML.Load("musics.xml");
            List<Tuple<String, Boolean>> medias = mediaXML.GetMedias();

            foreach (var media in medias)
            {
                Model.Music pics_1 = new Model.Music(media.Item1, media.Item2);
                Model.Music pics_2 = new Model.Music(media.Item1, media.Item2);
                MusicsTmp.Add(pics_1);
                Musics.Add(pics_2);
            }
        }