From 6aab2dcca423488be9cdadd106ee576b3df0df23 Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Mon, 23 Apr 2018 21:37:03 +0200 Subject: [PATCH] Unbreak the context menu for non-FFmpeg channels. --- bmusb | 2 +- glwidget.cpp | 21 ++++++++++++--------- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/bmusb b/bmusb index e287f28..6a012a4 160000 --- a/bmusb +++ b/bmusb @@ -1 +1 @@ -Subproject commit e287f28087aef9cfd6aa47acd0d283bc177a9d70 +Subproject commit 6a012a41c5422092cdac1f18a9019f37c0b85368 diff --git a/glwidget.cpp b/glwidget.cpp index c3e82da..ca9416b 100644 --- a/glwidget.cpp +++ b/glwidget.cpp @@ -176,6 +176,18 @@ void GLWidget::show_preview_context_menu(unsigned signal_num, const QPoint &pos) QMenu card_submenu; QActionGroup card_group(&card_submenu); + QMenu interpretation_submenu; + QActionGroup interpretation_group(&interpretation_submenu); + + QMenu video_input_submenu; + QActionGroup video_input_group(&video_input_submenu); + + QMenu audio_input_submenu; + QActionGroup audio_input_group(&audio_input_submenu); + + QMenu mode_submenu; + QActionGroup mode_group(&mode_submenu); + unsigned num_cards = global_mixer->get_num_cards(); unsigned current_card = global_mixer->map_signal(signal_num); bool is_ffmpeg = global_mixer->card_is_ffmpeg(current_card); @@ -197,9 +209,6 @@ void GLWidget::show_preview_context_menu(unsigned signal_num, const QPoint &pos) // Note that this setting depends on which card is active. - QMenu interpretation_submenu; - QActionGroup interpretation_group(&interpretation_submenu); - YCbCrInterpretation current_interpretation = global_mixer->get_input_ycbcr_interpretation(current_card); { QAction *action = new QAction("Auto", &interpretation_group); @@ -250,8 +259,6 @@ void GLWidget::show_preview_context_menu(unsigned signal_num, const QPoint &pos) } } else { // Add a submenu for selecting video input, with an action for each input. - QMenu video_input_submenu; - QActionGroup video_input_group(&video_input_submenu); std::map video_inputs = global_mixer->get_available_video_inputs(current_card); uint32_t current_video_input = global_mixer->get_current_video_input(current_card); for (const auto &mode : video_inputs) { @@ -269,8 +276,6 @@ void GLWidget::show_preview_context_menu(unsigned signal_num, const QPoint &pos) menu.addMenu(&video_input_submenu); // The same for audio input. - QMenu audio_input_submenu; - QActionGroup audio_input_group(&audio_input_submenu); std::map audio_inputs = global_mixer->get_available_audio_inputs(current_card); uint32_t current_audio_input = global_mixer->get_current_audio_input(current_card); for (const auto &mode : audio_inputs) { @@ -288,8 +293,6 @@ void GLWidget::show_preview_context_menu(unsigned signal_num, const QPoint &pos) menu.addMenu(&audio_input_submenu); // The same for resolution. - QMenu mode_submenu; - QActionGroup mode_group(&mode_submenu); std::map video_modes = global_mixer->get_available_video_modes(current_card); uint32_t current_video_mode = global_mixer->get_current_video_mode(current_card); for (const auto &mode : video_modes) { -- 2.39.2