From 9fc64418bd24d6827deb8b005077bc080d5111e5 Mon Sep 17 00:00:00 2001 From: Hannu Haahti Date: Thu, 16 Jan 2014 12:01:35 +0200 Subject: [PATCH] config option to enable waveform display by default --- include/setup_dialog.h | 2 ++ src/gui/setup_dialog.cpp | 21 ++++++++++++++++++++- src/gui/widgets/visualization_widget.cpp | 3 +++ 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/include/setup_dialog.h b/include/setup_dialog.h index 82f66eae8..f5bd00676 100644 --- a/include/setup_dialog.h +++ b/include/setup_dialog.h @@ -111,6 +111,7 @@ private slots: void toggleSyncVSTPlugins( bool _enabled ); void toggleAnimateAFP( bool _enabled ); void toggleNoteLabels( bool en ); + void toggleDisplayWaveform( bool en ); private: @@ -162,6 +163,7 @@ private: bool m_syncVSTPlugins; bool m_animateAFP; bool m_printNoteLabels; + bool m_displayWaveform; typedef QMap AswMap; typedef QMap MswMap; diff --git a/src/gui/setup_dialog.cpp b/src/gui/setup_dialog.cpp index ffebdfd29..dcda537de 100644 --- a/src/gui/setup_dialog.cpp +++ b/src/gui/setup_dialog.cpp @@ -123,7 +123,9 @@ setupDialog::setupDialog( ConfigTabs _tab_to_open ) : m_animateAFP(configManager::inst()->value( "ui", "animateafp").toInt() ), m_printNoteLabels(configManager::inst()->value( "ui", - "printnotelabels").toInt() ) + "printnotelabels").toInt() ), + m_displayWaveform(configManager::inst()->value( "ui", + "displaywaveform").toInt() ) { setWindowIcon( embed::getIconPixmap( "setup_general" ) ); setWindowTitle( tr( "Setup LMMS" ) ); @@ -282,6 +284,15 @@ setupDialog::setupDialog( ConfigTabs _tab_to_open ) : connect( noteLabels, SIGNAL( toggled( bool ) ), this, SLOT( toggleNoteLabels( bool ) ) ); + ledCheckBox * displayWaveform = new ledCheckBox( + tr( "Enable waveform display by default" ), + misc_tw ); + labelNumber++; + displayWaveform->move( XDelta, YDelta*labelNumber ); + displayWaveform->setChecked( m_displayWaveform ); + connect( displayWaveform, SIGNAL( toggled( bool ) ), + this, SLOT( toggleDisplayWaveform( bool ) ) ); + misc_tw->setFixedHeight( YDelta*labelNumber + HeaderSize ); @@ -826,6 +837,8 @@ void setupDialog::accept() QString::number( m_animateAFP ) ); configManager::inst()->setValue( "ui", "printnotelabels", QString::number( m_printNoteLabels ) ); + configManager::inst()->setValue( "ui", "displaywaveform", + QString::number( m_displayWaveform ) ); configManager::inst()->setWorkingDir( m_workingDir ); @@ -1026,6 +1039,12 @@ void setupDialog::toggleNoteLabels( bool en ) } +void setupDialog::toggleDisplayWaveform( bool en ) +{ + m_displayWaveform = en; +} + + void setupDialog::toggleOneInstrumentTrackWindow( bool _enabled ) { m_oneInstrumentTrackWindow = _enabled; diff --git a/src/gui/widgets/visualization_widget.cpp b/src/gui/widgets/visualization_widget.cpp index d1437932b..7dee75d33 100644 --- a/src/gui/widgets/visualization_widget.cpp +++ b/src/gui/widgets/visualization_widget.cpp @@ -34,6 +34,8 @@ #include "tooltip.h" #include "song.h" +#include "config_mgr.h" + visualizationWidget::visualizationWidget( const QPixmap & _bg, QWidget * _p, @@ -45,6 +47,7 @@ visualizationWidget::visualizationWidget( const QPixmap & _bg, QWidget * _p, { setFixedSize( s_background.width(), s_background.height() ); setAttribute( Qt::WA_OpaquePaintEvent, true ); + setActive( configManager::inst()->value( "ui", "displaywaveform").toInt() ); const fpp_t frames = engine::mixer()->framesPerPeriod(); m_buffer = new sampleFrame[frames];