From db587fe2288f5edc0668b4c5908855aae6f09263 Mon Sep 17 00:00:00 2001 From: lordmulder Date: Tue, 27 Dec 2011 13:51:01 +0100 Subject: [PATCH] Prevent some more dialogs from blocking a quick system shutdown. --- etc/Translation/Blank.ts | 6 +++--- etc/Translation/LameXP_PL.ts | 6 +++--- src/Config.h | 2 +- src/Dialog_MainWindow.cpp | 2 +- src/Dialog_SplashScreen.cpp | 2 +- src/Dialog_Update.cpp | 2 +- src/Dialog_WorkingBanner.cpp | 2 +- src/Thread_Process.cpp | 10 +++++----- 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/etc/Translation/Blank.ts b/etc/Translation/Blank.ts index 75e2142b..3bd009da 100644 --- a/etc/Translation/Blank.ts +++ b/etc/Translation/Blank.ts @@ -2854,17 +2854,17 @@ - + Executable '%1' requires Qt v%2, but found Qt v%3. - + Executable '%1' was built for Qt '%2', but found Qt '%3'. - + Executable '%1' requires Windows 2000 or later. diff --git a/etc/Translation/LameXP_PL.ts b/etc/Translation/LameXP_PL.ts index 1adf2600..5914c81a 100644 --- a/etc/Translation/LameXP_PL.ts +++ b/etc/Translation/LameXP_PL.ts @@ -2854,17 +2854,17 @@ Plik wykonywalny '%1' nie działa w trybie kompatybilności z Windows. - + Executable '%1' requires Qt v%2, but found Qt v%3. Plik wykonywalny '%1' wymaga Qt v%2, znaleziono jednak Qt v%3. - + Executable '%1' was built for Qt '%2', but found Qt '%3'. Plik wykonywalny "%1" został skompilowany dla Qt "%2", znaleziono "%3". - + Executable '%1' requires Windows 2000 or later. Plik wykonywalny '%1' wymaga do uruchomienia Windows 2000 lub nowszego. diff --git a/src/Config.h b/src/Config.h index 4d164739..0fd19a8f 100644 --- a/src/Config.h +++ b/src/Config.h @@ -30,7 +30,7 @@ #define VER_LAMEXP_MINOR_LO 4 #define VER_LAMEXP_TYPE Alpha #define VER_LAMEXP_PATCH 12 -#define VER_LAMEXP_BUILD 852 +#define VER_LAMEXP_BUILD 853 /////////////////////////////////////////////////////////////////////////////// // Tool versions (minimum expected versions!) diff --git a/src/Dialog_MainWindow.cpp b/src/Dialog_MainWindow.cpp index 7877b99e..0924720a 100644 --- a/src/Dialog_MainWindow.cpp +++ b/src/Dialog_MainWindow.cpp @@ -794,7 +794,7 @@ void MainWindow::dropEvent(QDropEvent *event) */ void MainWindow::closeEvent(QCloseEvent *event) { - if(m_banner->isVisible() || m_delayedFileTimer->isActive()) + if((m_banner->isVisible() || m_delayedFileTimer->isActive()) && !lamexp_session_ending()) { MessageBeep(MB_ICONEXCLAMATION); event->ignore(); diff --git a/src/Dialog_SplashScreen.cpp b/src/Dialog_SplashScreen.cpp index cbbea3bd..6876aa76 100644 --- a/src/Dialog_SplashScreen.cpp +++ b/src/Dialog_SplashScreen.cpp @@ -149,7 +149,7 @@ void SplashScreen::keyReleaseEvent(QKeyEvent *event) void SplashScreen::closeEvent(QCloseEvent *event) { - if(!m_canClose) event->ignore(); + if(!m_canClose && !lamexp_session_ending()) event->ignore(); } bool SplashScreen::winEvent(MSG *message, long *result) diff --git a/src/Dialog_Update.cpp b/src/Dialog_Update.cpp index f4c73099..d92a7a7c 100644 --- a/src/Dialog_Update.cpp +++ b/src/Dialog_Update.cpp @@ -270,7 +270,7 @@ void UpdateDialog::showEvent(QShowEvent *event) void UpdateDialog::closeEvent(QCloseEvent *event) { - if(!closeButton->isEnabled()) + if(!closeButton->isEnabled() && !lamexp_session_ending()) { event->ignore(); } diff --git a/src/Dialog_WorkingBanner.cpp b/src/Dialog_WorkingBanner.cpp index 417e6649..e8a8d0a2 100644 --- a/src/Dialog_WorkingBanner.cpp +++ b/src/Dialog_WorkingBanner.cpp @@ -152,7 +152,7 @@ void WorkingBanner::keyReleaseEvent(QKeyEvent *event) void WorkingBanner::closeEvent(QCloseEvent *event) { - if(!m_canClose) event->ignore(); + if(!m_canClose && !lamexp_session_ending()) event->ignore(); } bool WorkingBanner::winEvent(MSG *message, long *result) diff --git a/src/Thread_Process.cpp b/src/Thread_Process.cpp index ce58b2fb..bc688aa6 100644 --- a/src/Thread_Process.cpp +++ b/src/Thread_Process.cpp @@ -175,7 +175,7 @@ void ProcessThread::processFile() //------------------------------------ //Update audio properties after decode //------------------------------------ - if(bSuccess && IS_WAVE(m_audioFile)) + if(bSuccess && !m_aborted && IS_WAVE(m_audioFile)) { if(m_encoder->supportedSamplerates() || m_encoder->supportedBitdepths() || m_encoder->supportedChannelCount()) { @@ -206,7 +206,7 @@ void ProcessThread::processFile() //----------------------- if(bSuccess) { - while(!m_filters.isEmpty()) + while(!m_filters.isEmpty() && !m_aborted) { QString tempFile = generateTempFileName(); AbstractFilter *poFilter = m_filters.takeFirst(); @@ -228,14 +228,14 @@ void ProcessThread::processFile() //----------------- //Encode audio file //----------------- - if(bSuccess) + if(bSuccess && !m_aborted) { m_currentStep = EncodingStep; bSuccess = m_encoder->encode(sourceFile, m_audioFile, outFileName, &m_aborted); } //Make sure output file exists - if(bSuccess) + if(bSuccess && !m_aborted) { QFileInfo fileInfo(outFileName); bSuccess = fileInfo.exists() && fileInfo.isFile() && (fileInfo.size() > 0); @@ -244,7 +244,7 @@ void ProcessThread::processFile() QThread::msleep(500); //Report result - emit processStateChanged(m_jobId, (bSuccess ? tr("Done.") : (m_aborted ? tr("Aborted!") : tr("Failed!"))), (bSuccess ? ProgressModel::JobComplete : ProgressModel::JobFailed)); + emit processStateChanged(m_jobId, (m_aborted ? tr("Aborted!") : (bSuccess ? tr("Done.") : tr("Failed!"))), ((bSuccess && !m_aborted) ? ProgressModel::JobComplete : ProgressModel::JobFailed)); emit processStateFinished(m_jobId, outFileName, bSuccess); qDebug("Process thread is done.");