From b244f506a26fa4b009d060ec7f5d6c62f1c72a22 Mon Sep 17 00:00:00 2001 From: mio Date: Sun, 10 Nov 2024 19:39:43 +1000 Subject: Create a AudioView widget for audio-only streams Currently Codeine will show a blank area when playing an audio-only file, such as music. This patch adds a new widget that contains an instance of the Analyzer::Block class, so instead of a blank area it contains a "visualizer" of sorts. Signed-off-by: mio --- src/app/mainWindow.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'src/app/mainWindow.cpp') diff --git a/src/app/mainWindow.cpp b/src/app/mainWindow.cpp index 9409d85..ab8da70 100644 --- a/src/app/mainWindow.cpp +++ b/src/app/mainWindow.cpp @@ -22,11 +22,13 @@ #include //ctor #include //because XMLGUI is poorly designed #include +#include #include "../debug.h" #include "../mxcl.library.h" #include "actions.h" #include "analyzer.h" +#include "audioView.h" #include "codeineConfig.h" #include "extern.h" //dialog creation function definitions #include "fullScreenAction.h" @@ -70,8 +72,19 @@ MainWindow::MainWindow() kapp->setMainWidget( this ); + m_widgetStack = new TQWidgetStack(this, "m_widgetStack"); + new VideoWindow( this ); - setCentralWidget( videoWindow() ); + + m_audioView = new AudioView(this, "m_audioView"); + + // videoWindow() will be the initial widget. + // m_audioView is raised when no video track is present. + m_widgetStack->addWidget(videoWindow()); + m_widgetStack->addWidget(m_audioView); + + setCentralWidget(m_widgetStack); + setFocusProxy( videoWindow() ); // essential! See VideoWindow::event(), TQEvent::FocusOut // these have no affect beccause "KDE Knows Best" FFS -- cgit v1.2.1