From f460840a5e1c4e6cc262177f2b60cebfe469d393 Mon Sep 17 00:00:00 2001 From: mio Date: Sun, 6 Oct 2024 10:41:24 +1000 Subject: Fix channel selection menus disappearing When adding/removing an action to/from the toolbar, the aspect ratio, audio channel, and subtitle channel menus would disappear from the parent settings menu. My understanding is that this happened because nothing was keeping those menus present (plugged?) when other actions were plugged/unplugged. This changes it so "Aspect Ratio", "Subtitles", and "Audio Channels" each are a TDESelectAction that is dynamically filled with items. This way, each popup menu is still present after other actions being plugged/unplugged. Resolves: TDE/codeine#24 Signed-off-by: mio --- src/app/insertAspectRatioMenuItems.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'src/app/insertAspectRatioMenuItems.cpp') diff --git a/src/app/insertAspectRatioMenuItems.cpp b/src/app/insertAspectRatioMenuItems.cpp index d2baafc..f0438a7 100644 --- a/src/app/insertAspectRatioMenuItems.cpp +++ b/src/app/insertAspectRatioMenuItems.cpp @@ -1,8 +1,8 @@ // Copyright 2005 Max Howell (max.howell@methylblue.com) // See COPYING file for licensing information +#include #include -#include TQString i18n( const char *text ); @@ -11,15 +11,15 @@ TQString i18n( const char *text ); namespace Codeine { void - insertAspectRatioMenuItems( TQPopupMenu *menu ) + insertAspectRatioMenuItems(TDESelectAction *action) { - menu->insertItem( i18n( "Determine &Automatically" ), XINE_VO_ASPECT_AUTO ); - menu->insertSeparator(); - menu->insertItem( i18n( "&Square (1:1)" ), XINE_VO_ASPECT_SQUARE ); - menu->insertItem( i18n( "&4:3" ), XINE_VO_ASPECT_4_3 ); - menu->insertItem( i18n( "Ana&morphic (16:9)" ), XINE_VO_ASPECT_ANAMORPHIC ); - menu->insertItem( i18n( "&DVB (2.11:1)" ), XINE_VO_ASPECT_DVB ); + TQStringList items(i18n("Determine &Automatically")); + items.append(i18n("&Square (1:1)")); + items.append(i18n("&4:3")); + items.append(i18n("Ana&morphic (16:9)")); + items.append(i18n("&DVB (2.11:1)")); - menu->setItemChecked( XINE_VO_ASPECT_AUTO, true ); + action->setItems(items); + action->popupMenu()->insertSeparator(1); } } -- cgit v1.2.1