From bb13b926c3f9f191339b6c952c03f9206577f8b5 Mon Sep 17 00:00:00 2001 From: Michele Calgaro Date: Wed, 3 Jun 2020 00:55:21 +0900 Subject: KMix: added help submenu in context menu. Signed-off-by: Michele Calgaro (cherry picked from commit 7f6dbcc6420bac9a9ef55eaeb523ac0bc8040bd6) --- kmix/kmix.cpp | 19 ------------- kmix/kmixdockwidget.cpp | 75 ++++++++++++++++++++++++++++++++----------------- kmix/kmixdockwidget.h | 8 +++--- 3 files changed, 53 insertions(+), 49 deletions(-) diff --git a/kmix/kmix.cpp b/kmix/kmix.cpp index 985c7cd4..74cc696b 100644 --- a/kmix/kmix.cpp +++ b/kmix/kmix.cpp @@ -194,27 +194,8 @@ KMixWindow::updateDocking() if (m_showDockWidget) { - // create dock widget - // !! This should be a View in the future m_dockWidget = new KMixDockWidget( Mixer::mixers().first(), this, "mainDockWidget", m_volumeWidget, m_dockIconMuting ); - -/* Belongs in KMixDockWidget - // create RMB menu - TDEPopupMenu *menu = m_dockWidget->contextMenu(); - - // !! check this - TDEAction *a = actionCollection()->action( "dock_mute" ); - if ( a ) a->plug( menu ); -*/ - - /* - * Mail from 31.1.2005: "make sure your features are at least string complete" - * Preparation for fixing Bug #55078 - scheduled for KDE3.4.1 . - * This text will be plugged into the dock-icon popup menu. - */ - TQString selectChannel = i18n("Select Channel"); // This text will be used in KDE3.4.1 !!! - m_dockWidget->show(); } } diff --git a/kmix/kmixdockwidget.cpp b/kmix/kmixdockwidget.cpp index 2c21eb50..7b3ea1fa 100644 --- a/kmix/kmixdockwidget.cpp +++ b/kmix/kmixdockwidget.cpp @@ -22,17 +22,18 @@ * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ -#include -#include -#include #include -#include -#include #include #include #include #include +#include #include +#include +#include +#include +#include +#include #include #include @@ -45,7 +46,6 @@ #include "mixer.h" #include "mixdevicewidget.h" #include "kmixdockwidget.h" -#include "twin.h" #include "viewdockareapopup.h" KMixDockWidget::KMixDockWidget( Mixer *mixer, TQWidget *parent, const char *name, bool volumePopup, bool dockIconMuting ) @@ -80,27 +80,51 @@ KMixDockWidget::~KMixDockWidget() void KMixDockWidget::createActions() { - // Put "Mute" selector in context menu - (void)new TDEToggleAction( i18n( "M&ute" ), 0, TQT_TQOBJECT(this), TQT_SLOT( dockMute() ), - actionCollection(), "dock_mute" ); - TDEAction *a = actionCollection()->action( "dock_mute" ); - TDEPopupMenu *popupMenu = contextMenu(); - if ( a ) a->plug( popupMenu ); - - // Put "Select Master Channel" dialog in context menu - if ( m_mixer != 0 ) { - (void)new TDEAction( i18n("Select Master Channel..."), 0, TQT_TQOBJECT(this), TQT_SLOT(selectMaster()), - actionCollection(), "select_master"); - TDEAction *a2 = actionCollection()->action( "select_master" ); - if (a2) a2->plug( popupMenu ); - } + TDEPopupMenu *popupMenu = contextMenu(); - // Setup volume preview - if ( _playBeepOnVolumeChange ) { - _audioPlayer = new KAudioPlayer("KDE_Beep_Digital_1.ogg"); - } -} + // Put "Mute" selector in context menu + (void)new TDEToggleAction(i18n("M&ute"), 0, TQT_TQOBJECT(this), TQT_SLOT(dockMute()), + actionCollection(), "dock_mute"); + TDEAction *a = actionCollection()->action("dock_mute"); + if (a) + { + a->plug(popupMenu); + } + // Put "Select Master Channel" dialog in context menu + if (m_mixer) + { + (void)new TDEAction(i18n("Select Master Channel..."), 0, TQT_TQOBJECT(this), TQT_SLOT(selectMaster()), + actionCollection(), "select_master"); + a = actionCollection()->action("select_master"); + if (a) + { + a->plug(popupMenu); + } + } + // Show/hide mixer window (use "minimizeRestore" action + a = actionCollection()->action("minimizeRestore"); + if (a) + { + a->plug(popupMenu); + } + + // Help and quit + popupMenu->insertSeparator(); + popupMenu->insertItem(SmallIcon("help"), KStdGuiItem::help().text(), (new KHelpMenu(this, TDEGlobal::instance()->aboutData(), false))->menu(), false); + popupMenu->insertSeparator(); + a = actionCollection()->action(KStdAction::name(KStdAction::Quit)); + if (a) + { + a->plug(popupMenu); + } + + // Setup volume preview + if (_playBeepOnVolumeChange) + { + _audioPlayer = new KAudioPlayer("KDE_Beep_Digital_1.ogg"); + } +} void KMixDockWidget::createMasterVolWidget() { @@ -281,7 +305,6 @@ void KMixDockWidget::resizeEvent ( TQResizeEvent * ) void KMixDockWidget::showEvent ( TQShowEvent *se ) { updatePixmap(true); - KSystemTray::showEvent(se); } void diff --git a/kmix/kmixdockwidget.h b/kmix/kmixdockwidget.h index 7bb5b9da..79a734c0 100644 --- a/kmix/kmixdockwidget.h +++ b/kmix/kmixdockwidget.h @@ -30,7 +30,7 @@ class TQString; #include -class Mixer; +class DialogSelectMaster; class KAudioPlayer; class MixDeviceWidget; class Mixer; @@ -67,10 +67,10 @@ class KMixDockWidget : public KSystemTray { void mousePressEvent(TQMouseEvent *); void mouseReleaseEvent(TQMouseEvent *); void wheelEvent(TQWheelEvent *); - void contextMenuAboutToShow( TDEPopupMenu* menu ); + void contextMenuAboutToShow(TDEPopupMenu *menu); void toggleMinimizeRestore(); - void resizeEvent ( TQResizeEvent * ); - void showEvent ( TQShowEvent * ); + void resizeEvent(TQResizeEvent *); + void showEvent(TQShowEvent *); private: bool _playBeepOnVolumeChange; -- cgit v1.2.1