void SjMainFrame::CreateUnqueueMenu(SjMenu& mainMenu) { long trackCount = m_player.m_queue.GetCount(); long markedCount = m_display.m_selectedIds.GetCount(); if( IsOpAvailable(SJ_OP_UNQUEUE) ) { mainMenu.Append(IDO_UNQUEUE_MARKED); mainMenu.Enable(IDO_UNQUEUE_MARKED, (markedCount>0)); mainMenu.Append(IDO_UNQUEUE_ALL_BUT_MARKED); mainMenu.Enable(IDO_UNQUEUE_ALL_BUT_MARKED, (markedCount>0 && trackCount>markedCount)); } }
void SjMainFrame::CreateContextMenu_(SjMenu& mainMenu, bool prependOpen, int idmSettings, bool appendGotoCurrMark, bool embedFastSearch) { // prepend open/save items (reverse order!) /* -- as we have a normal menu bar since 15.1, the context menu can be more focused if( prependOpen && IsAllAvailable() ) { if( mainMenu.GetMenuItemCount() ) { mainMenu.InsertSeparator(0); } bool enableQueue = m_player.m_queue.GetCount()!=0; mainMenu.Insert(0, IDT_UNQUEUE_ALL); mainMenu.Enable(IDT_UNQUEUE_ALL, enableQueue); mainMenu.Insert(0, IDT_SAVE_PLAYLIST); mainMenu.Enable(IDT_SAVE_PLAYLIST, enableQueue); mainMenu.Insert(0, IDT_OPEN_FILES); } */ // search // -- as we have a normal menu bar since 15.1, the context menu can be more focused (search only added if embedFastSearch set, formally this was always the case) if( embedFastSearch && IsOpAvailable(SJ_OP_SEARCH) ) { // open adv. search dialog if( mainMenu.GetMenuItemCount() ) { mainMenu.AppendSeparator(); } if( IsAllAvailable() ) { mainMenu.Append(IDT_ADV_SEARCH); } // "fast search" if( embedFastSearch ) { CreateSearchMenu(mainMenu); } // end search mainMenu.Append(IDO_REALLYENDSEARCH, _("End search")); mainMenu.Enable(IDO_REALLYENDSEARCH, HasAnySearch()); } // settings / view / control /* -- as we have a normal menu bar since 15.1, the context menu can be more focused if( IsAllAvailable() ) { // seperator abottom (sth. will follow in any case, at least "Go to random album") if( mainMenu.GetMenuItemCount() ) { mainMenu.AppendSeparator(); } // settings mainMenu.Append(idmSettings); // view menu SjMenu* viewMenu = new SjMenu(mainMenu.ShowShortcuts()); CreateViewMenu(viewMenu, false, appendGotoCurrMark); mainMenu.Append(0, _("View"), viewMenu); // control menu SjMenu* playbackMenu = new SjMenu(mainMenu.ShowShortcuts()); CreatePlaybackMenu(playbackMenu, false); mainMenu.Append(0, _("Playback"), playbackMenu); } */ // help if( IsKioskStarted() ) { mainMenu.Append(IDO_ABOUT, wxString::Format(_("About %s"), SJ_PROGRAM_NAME)+wxString(wxT("..."))); } }