private void OnBuildFavoritesMenu(object sender, EventArgs e) { try { ToolStripDropDownItem tsmi = sender as ToolStripDropDownItem; if (tsmi == null || tsmi.DropDownItems == null || tsmi.DropDownItems.Count < 2) { return; } tsbFavorites.DropDown.BackColor = ThemeManager.WndValidColor; ilFavorites.Images.Clear(); // Clear favorites items List <ToolStripItem> itemsToClear = new List <ToolStripItem>(); foreach (ToolStripItem child in tsmi.DropDownItems) { if ((child as ToolStripSeparator) != null || child.Tag != null) { continue; } itemsToClear.Add(child); } foreach (ToolStripItem itemToClear in itemsToClear) { tsmi.DropDownItems.Remove(itemToClear); } List <string> favPaths = ProTONEConfig.GetFavoriteFolders("FavoriteFolders"); if (favPaths != null && favPaths.Count > 0) { foreach (string path in favPaths) { if (Directory.Exists(path)) { OPMToolStripDropDownMenuItem tsi = new OPMToolStripDropDownMenuItem(tsbFavorites); tsi.Text = path; tsi.Click += new EventHandler(OnFavoriteChosen); tsi.Image = ilFavorites.Images[GetIcon(path)]; tsi.ImageScaling = ToolStripItemImageScaling.None; tsmi.DropDownItems.Add(tsi); } } } } catch (Exception ex) { Logger.LogException(ex); } }
internal void SavePlaylist() { string filter = string.Empty; filter += MediaRenderer.DefaultInstance.PlaylistsFilter; filter += Translator.Translate("TXT_ALL_FILES_FILTER"); filter = filter.Replace("TXT_PLAYLISTS", Translator.Translate("TXT_PLAYLISTS")); OPMSaveFileDialog dlg = new OPMSaveFileDialog(); dlg.Title = Translator.Translate("TXT_SAVEPLAYLIST"); dlg.Filter = filter; dlg.DefaultExt = "m3u"; dlg.FilterIndex = ProTONEConfig.PL_LastFilterIndex; dlg.InitialDirectory = ProTONEConfig.PL_LastOpenedFolder; dlg.InheritAppIcon = false; dlg.Icon = OPMedia.UI.Properties.Resources.Save16.ToIcon(); dlg.FillFavoriteFoldersEvt += () => { return(ProTONEConfig.GetFavoriteFolders("FavoriteFolders")); }; dlg.AddToFavoriteFolders += (s) => { return(ProTONEConfig.AddToFavoriteFolders(s)); }; dlg.ShowAddToFavorites = true; dlg.ShowNewFolder = true; if (dlg.ShowDialog() == DialogResult.OK) { ProTONEConfig.PL_LastFilterIndex = dlg.FilterIndex; playlist.SavePlaylist(dlg.FileName); try { string file = dlg.FileNames[0]; ProTONEConfig.PL_LastOpenedFolder = Path.GetDirectoryName(file); } catch { ProTONEConfig.PL_LastOpenedFolder = dlg.InitialDirectory; } } }
private void btnAddFiles_Click(object sender, EventArgs e) { CursorHelper.ShowWaitCursor(this, true); OPMOpenFileDialog dlg = new OPMOpenFileDialog(); dlg.Title = Translator.Translate("TXT_SELECTTAGGEDFILES"); dlg.Filter = Translator.Translate("TXT_TAGGEDFILESFILTER"); dlg.InitialDirectory = ProTONEConfig.LastOpenedFolder; dlg.Multiselect = true; dlg.InheritAppIcon = false; dlg.Icon = Resources.Tagging16.ToIcon(); dlg.FillFavoriteFoldersEvt += () => { return(ProTONEConfig.GetFavoriteFolders("FavoriteFolders")); }; dlg.AddToFavoriteFolders += (s) => { return(ProTONEConfig.AddToFavoriteFolders(s)); }; dlg.ShowAddToFavorites = true; if (dlg.ShowDialog() == DialogResult.OK && dlg.FileNames.Length > 0) { foreach (string file in dlg.FileNames) { AddFile(file); } try { string file = dlg.FileNames[0]; ProTONEConfig.LastOpenedFolder = Path.GetDirectoryName(file); } catch { ProTONEConfig.LastOpenedFolder = dlg.InitialDirectory; } } CursorHelper.ShowWaitCursor(this, false); Wizard.CanMoveNext = lvFiles.Items.Count > 0; }