Add context menu to audioView

Allows people to toggle the analyzer visibility.

Signed-off-by: mio <stigma@disroot.org>
pull/32/head
mio 5 months ago
parent 5e57ab35af
commit 430d1bae9d

@ -6,7 +6,11 @@
#include <tqlayout.h>
#include <tdepopupmenu.h>
#include <tdelocale.h>
#include "analyzer.h"
#include "codeineConfig.h"
namespace Codeine
{
@ -26,6 +30,32 @@ AudioView::AudioView(TQWidget *parent, const char *name)
36 * (Analyzer::Block::HEIGHT + 1) - 1);
layout->addWidget(m_analyzer);
m_analyzer->setShown(config("AudioView")->readBoolEntry("showAudioAnalyzer", true));
}
AudioView::~AudioView()
{
config("AudioView")->writeEntry("showAudioAnalyzer", m_analyzer->isVisible());
config("AudioView")->sync();
}
void AudioView::contextMenuEvent(TQContextMenuEvent *e)
{
TDEPopupMenu popup;
popup.setCheckable(true);
int id = popup.insertItem(i18n("Show Analyzer"), this, TQ_SLOT(slotToggleVisibility()));
popup.setItemChecked(id, m_analyzer->isVisible());
popup.exec(e->globalPos());
}
void AudioView::slotToggleVisibility()
{
m_analyzer->setShown(!m_analyzer->isVisible());
}
}
#include "audioView.moc"

@ -12,8 +12,17 @@ namespace Codeine
class AudioView : public TQFrame
{
TQ_OBJECT
public:
AudioView(TQWidget *parent, const char *name = nullptr);
~AudioView();
protected:
void contextMenuEvent(TQContextMenuEvent *e) override;
protected slots:
void slotToggleVisibility();
private:
TQWidget *m_analyzer;

@ -329,7 +329,7 @@ MainWindow::contextMenuEvent(TQContextMenuEvent *ev)
TDEPopupMenu menu;
menu.setCheckable(true);
int id = menu.insertItem(i18n("Toggle Analyzer"), this, TQ_SLOT(toggleAnalyzer()));
int id = menu.insertItem(i18n("Show Analyzer"), this, TQ_SLOT(toggleAnalyzer()));
menu.setItemChecked(id, m_analyzer->isVisible());
menu.exec(ev->globalPos());

Loading…
Cancel
Save