diff --git a/projectMTrunk.kdevelop.pcs b/projectMTrunk.kdevelop.pcs index 4b48711bd..c85c94831 100644 Binary files a/projectMTrunk.kdevelop.pcs and b/projectMTrunk.kdevelop.pcs differ diff --git a/projectMTrunk.kdevses b/projectMTrunk.kdevses index 28d5afb30..efeecaf04 100644 --- a/projectMTrunk.kdevses +++ b/projectMTrunk.kdevses @@ -1,88 +1,31 @@ - - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -95,9 +38,18 @@ + + + + + + + + + diff --git a/src/qprojectM-pulseaudio/qprojectM-pulseaudio.cpp b/src/qprojectM-pulseaudio/qprojectM-pulseaudio.cpp index a90a86bc2..f36ae1b3c 100644 --- a/src/qprojectM-pulseaudio/qprojectM-pulseaudio.cpp +++ b/src/qprojectM-pulseaudio/qprojectM-pulseaudio.cpp @@ -103,15 +103,15 @@ int main ( int argc, char*argv[] ) QPulseAudioThread * pulseThread = new QPulseAudioThread(argc, argv, mainWindow->qprojectM(), mainWindow); - mainWindow->getQProjectMWidget()->setAudioMutex(pulseThread->mutex()); + mainWindow->qprojectMWidget()->setAudioMutex(pulseThread->mutex()); // First projectM_Initialized() has already happened, so manually start pulseThread->start(); QApplication::connect - (mainWindow->getQProjectMWidget(), SIGNAL(projectM_Initialized(QProjectM *)), pulseThread, SLOT(projectM_New(QProjectM*))); + (mainWindow->qprojectMWidget(), SIGNAL(projectM_Initialized(QProjectM *)), pulseThread, SLOT(projectM_New(QProjectM*))); QApplication::connect - (mainWindow->getQProjectMWidget(), SIGNAL(projectM_BeforeDestroy()), pulseThread, SLOT(cork())); + (mainWindow->qprojectMWidget(), SIGNAL(projectM_BeforeDestroy()), pulseThread, SLOT(cork())); QPulseAudioDeviceChooser devChooser(pulseThread, mainWindow); QApplication::connect(&pulseAction, SIGNAL(triggered()), &devChooser, SLOT(open())); diff --git a/src/qprojectM/QProjectM_MainWindow.cpp b/src/qprojectM/QProjectM_MainWindow.cpp index c98925aac..076bb82f2 100644 --- a/src/qprojectM/QProjectM_MainWindow.cpp +++ b/src/qprojectM/QProjectM_MainWindow.cpp @@ -93,7 +93,8 @@ QProjectM_MainWindow::QProjectM_MainWindow ( const std::string & config_file, QM connect(ui->tableView, SIGNAL(resized(QResizeEvent *)), this, SLOT(refreshHeaders(QResizeEvent*))); - connect ( m_QProjectMWidget, SIGNAL ( projectM_Initialized(QProjectM*) ), this, SLOT ( postProjectM_Initialize() ) ); + connect ( m_QProjectMWidget, SIGNAL ( projectM_Initialized(QProjectM*) ), + this, SLOT ( postProjectM_Initialize() ) ); m_QProjectMWidget->makeCurrent(); m_QProjectMWidget->setFocus(); @@ -356,7 +357,7 @@ void QProjectM_MainWindow::closeEvent ( QCloseEvent *event ) void QProjectM_MainWindow::addPresets() { - + /// @bug this probably isn't thread safe if ( m_QPresetFileDialog->exec() ) { const QStringList & files = m_QPresetFileDialog->selectedFiles(); @@ -382,7 +383,7 @@ void QProjectM_MainWindow::addPresets() updateFilteredPlaylist ( previousFilter ); ui->presetPlayListDockWidget->setWindowModified ( true ); } - + //playlistModel->setHeaderData(0, Qt::Horizontal, tr("Preset"));//, Qt::DisplayRole); } void QProjectM_MainWindow::savePlaylist() @@ -456,6 +457,7 @@ void QProjectM_MainWindow::openPlaylist() void QProjectM_MainWindow::copyPlaylist() { + qprojectMWidget()->seizePresetLock(); PlaylistItemVector * items = new PlaylistItemVector(); for ( long i = 0; i < playlistModel->rowCount(); i++ ) @@ -480,7 +482,7 @@ void QProjectM_MainWindow::copyPlaylist() activePresetIndex->nullify(); qDebug() << "NULLIFIED"; } - + qprojectMWidget()->unseizePresetLock(); } @@ -621,6 +623,9 @@ QString QProjectM_MainWindow::strippedName ( const QString &fullFileName ) void QProjectM_MainWindow::updateFilteredPlaylist ( const QString & text ) { + + qprojectMWidget()->seizePresetLock(); + const QString filter = text.toLower(); unsigned int presetIndexBackup ; bool presetSelected = qprojectM()->selectedPresetIndex(presetIndexBackup); @@ -694,6 +699,6 @@ void QProjectM_MainWindow::updateFilteredPlaylist ( const QString & text ) assert(presetExistsWithinFilter == qprojectM()->presetPositionValid()); previousFilter = filter; - + qprojectMWidget()->unseizePresetLock(); } diff --git a/src/qprojectM/QProjectM_MainWindow.hpp b/src/qprojectM/QProjectM_MainWindow.hpp index 4117ca949..c3dea9d2f 100644 --- a/src/qprojectM/QProjectM_MainWindow.hpp +++ b/src/qprojectM/QProjectM_MainWindow.hpp @@ -94,13 +94,10 @@ class QProjectMWidget : public QGLWidget qprojectM()->setPresetLock(m_presetWasLocked); m_presetSeizeMutex.unlock(); } - inline QProjectM * qprojectM() { return m_projectM; } public slots: - - void resetProjectM() { qDebug() << "reset start"; @@ -301,7 +298,7 @@ public: QProjectM * qprojectM(); void refreshPlaylist(); - QProjectMWidget * getQProjectMWidget() { return m_QProjectMWidget; } + QProjectMWidget * qprojectMWidget() { return m_QProjectMWidget; } void registerAction(const QAction &);