private void AddFromFileCmd()
        {
            OpenFileDialog dlg = new OpenFileDialog();
            bool?          res;

            dlg.Filter = "Playlist Files|*.pls";
            res        = dlg.ShowDialog();
            if (res == true)
            {
                try
                {
                    using (FileStream stream = new FileStream(dlg.FileName, FileMode.Open))
                    {
                        TextReader    reader     = new StreamReader(stream);
                        XmlSerializer serializer = new XmlSerializer(typeof(List <Media>));

                        List <Media> list = (List <Media>)serializer.Deserialize(reader);
                        foreach (Media m in list)
                        {
                            ListMedia.Add(Media.CreateMedia(false, m.FileName, true, ExtensionStatic.GetIconsFromExtension(Path.GetExtension(m.FileName))));
                        }
                    };
                }
                catch (Exception)
                {
                    MessageBox.Show("Error occured when loading playlist" + Environment.NewLine + "Be sure you've correct permissions or you open a well-formated file", "Playlist Error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }
        public void DeleteCmd()
        {
            List <Media>        tmp = new List <Media>();
            IEnumerable <Media> lm  = ListMedia.Where(m => m.IsSelected == true);


            foreach (Media m in lm)
            {
                tmp.Add(m);
            }
            foreach (Media m in tmp)
            {
                ListMedia.Remove(m);
            }
        }
        private void AddCmd()
        {
            OpenFileDialog dialog = new OpenFileDialog();
            bool?          res;

            dialog.Multiselect = true;
            dialog.Filter      = "Video files|*.avi;*.mpg;*.mov;*.asf;*.mkv|Audio files|*.mp3;*.wav;*.wma;*.ogg|Picture Files|*.jpg;*.bmp;*.png|ALL files|*.*";
            res = dialog.ShowDialog();
            if (res == true)
            {
                foreach (string file in dialog.FileNames)
                {
                    ListMedia.Add(Media.CreateMedia(false, file, false, ExtensionStatic.GetIconsFromExtension(Path.GetExtension(file))));
                }
            }
        }
        private void SavePlaylistCmd()
        {
            SaveFileDialog dlg = new SaveFileDialog();
            bool?          res;

            dlg.Filter = "Playlist Files|*.pls";
            res        = dlg.ShowDialog();
            if (res == true)
            {
                try
                {
                    using (FileStream stream = new FileStream(dlg.FileName, FileMode.OpenOrCreate | FileMode.Truncate))
                    {
                        XmlSerializer serializer = new XmlSerializer(typeof(List <Media>));

                        serializer.Serialize(stream, ListMedia.ToList());
                    };
                }
                catch (Exception)
                {
                    MessageBox.Show("Error occured when saving playlist" + Environment.NewLine + "Be sure you've correct permissions", "Playlist Error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }
 private void ClearCmd()
 {
     ListMedia.Clear();
 }
 public void AddFromDrop(string file)
 {
     ListMedia.Add(Media.CreateMedia(false, file, false, ExtensionStatic.GetIconsFromExtension(Path.GetExtension(file))));
 }