bool VisualizerView::keyPressEvent(QKeyEvent *event) { if (GetFocusWidget() && GetFocusWidget()->keyPressEvent(event)) return true; bool handled = false; QStringList actions; handled = GetMythMainWindow()->TranslateKeyPress("Music", event, actions); for (int i = 0; i < actions.size() && !handled; i++) { QString action = actions[i]; handled = true; if (action == "INFO") { showTrackInfoPopup(); } else handled = false; } if (!handled && MusicCommon::keyPressEvent(event)) handled = true; if (!handled && MythScreenType::keyPressEvent(event)) handled = true; return handled; }
void VisualizerView::customEvent(QEvent *event) { if (event->type() == MusicPlayerEvent::TrackChangeEvent) showTrackInfoPopup(); MusicCommon::customEvent(event); }
void VisualizerView::ShowMenu(void) { QString label = tr("Actions"); MythMenu *menu = new MythMenu(label, this, "menu"); menu->AddItem(tr("Change Visualizer"), NULL, createVisualizerMenu()); menu->AddItem(tr("Show Track Info"), SLOT(showTrackInfoPopup())); menu->AddItem(tr("Other Options"), NULL, createMainMenu()); MythScreenStack *popupStack = GetMythMainWindow()->GetStack("popup stack"); MythDialogBox *menuPopup = new MythDialogBox(menu, popupStack, "actionmenu"); if (menuPopup->Create()) popupStack->AddScreen(menuPopup); else delete menuPopup; }