Added progress indicator to CueSheet import thread.
This commit is contained in:
parent
e13b93f51b
commit
72e8558b5f
@ -384,8 +384,8 @@
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="111"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="208"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="393"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="397"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="395"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="399"/>
|
||||
<source>Cue Sheet Error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
@ -512,27 +512,27 @@
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="388"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="390"/>
|
||||
<source>Splitting file(s), please wait...</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="393"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="395"/>
|
||||
<source>Process was aborted by the user after %1 track(s)!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="397"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="399"/>
|
||||
<source>An unexpected error has occured while splitting the Cue Sheet!</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="401"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="403"/>
|
||||
<source>Imported %1 track(s) from the Cue Sheet and skipped %2 track(s).</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="402"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="404"/>
|
||||
<source>Cue Sheet Completed</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
|
@ -384,8 +384,8 @@
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="111"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="208"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="393"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="397"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="395"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="399"/>
|
||||
<source>Cue Sheet Error</source>
|
||||
<translation type="unfinished">Błąd pliku Cue Sheet</translation>
|
||||
</message>
|
||||
@ -512,27 +512,27 @@
|
||||
<translation type="unfinished">Przerwij</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="388"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="390"/>
|
||||
<source>Splitting file(s), please wait...</source>
|
||||
<translation type="unfinished">Dzielenie pliku/ów, prosze czekać...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="393"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="395"/>
|
||||
<source>Process was aborted by the user after %1 track(s)!</source>
|
||||
<translation type="unfinished">Proces został przerwany przez użytkownika po imporcie %1 ścieżek!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="397"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="399"/>
|
||||
<source>An unexpected error has occured while splitting the Cue Sheet!</source>
|
||||
<translation type="unfinished">Wystąpił nieoczekiwany błąd podczas podziału pliku Cue Sheet!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="401"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="403"/>
|
||||
<source>Imported %1 track(s) from the Cue Sheet and skipped %2 track(s).</source>
|
||||
<translation type="unfinished">Zaimportowano %1 ścieżek i opuszczono %2 ścieżek z pliku Cue Sheet.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="402"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="404"/>
|
||||
<source>Cue Sheet Completed</source>
|
||||
<translation type="unfinished">Stworzono plik Cue Sheet</translation>
|
||||
</message>
|
||||
|
@ -384,8 +384,8 @@
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="111"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="208"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="393"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="397"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="395"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="399"/>
|
||||
<source>Cue Sheet Error</source>
|
||||
<translation>Cue-fel</translation>
|
||||
</message>
|
||||
@ -512,27 +512,27 @@
|
||||
<translation>Avbryt</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="388"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="390"/>
|
||||
<source>Splitting file(s), please wait...</source>
|
||||
<translation>Delar fil(er), vänta...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="393"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="395"/>
|
||||
<source>Process was aborted by the user after %1 track(s)!</source>
|
||||
<translation>Åtgärden avbröts av användaren efter %1 spår!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="397"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="399"/>
|
||||
<source>An unexpected error has occured while splitting the Cue Sheet!</source>
|
||||
<translation>Ett oväntat fel uppstod vid delningen av cue-filen!</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="401"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="403"/>
|
||||
<source>Imported %1 track(s) from the Cue Sheet and skipped %2 track(s).</source>
|
||||
<translation>Importerade %1 spår från cue-filen och hoppade över %2 spår.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="402"/>
|
||||
<location filename="../../src/Dialog_CueImport.cpp" line="404"/>
|
||||
<source>Cue Sheet Completed</source>
|
||||
<translation>cue-fil färdigbearbetad</translation>
|
||||
</message>
|
||||
|
@ -30,7 +30,7 @@
|
||||
#define VER_LAMEXP_MINOR_LO 5
|
||||
#define VER_LAMEXP_TYPE Alpha
|
||||
#define VER_LAMEXP_PATCH 1
|
||||
#define VER_LAMEXP_BUILD 1013
|
||||
#define VER_LAMEXP_BUILD 1016
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Tool versions (minimum expected versions!)
|
||||
|
@ -383,6 +383,8 @@ void CueImportDialog::splitFiles(void)
|
||||
|
||||
connect(splitter, SIGNAL(fileSelected(QString)), progress, SLOT(setText(QString)), Qt::QueuedConnection);
|
||||
connect(splitter, SIGNAL(fileSplit(AudioFileModel)), m_fileList, SLOT(addFile(AudioFileModel)), Qt::QueuedConnection);
|
||||
connect(splitter, SIGNAL(progressValChanged(unsigned int)), progress, SLOT(setProgressVal(unsigned int)), Qt::QueuedConnection);
|
||||
connect(splitter, SIGNAL(progressMaxChanged(unsigned int)), progress, SLOT(setProgressMax(unsigned int)), Qt::QueuedConnection);
|
||||
connect(progress, SIGNAL(userAbort()), splitter, SLOT(abortProcess()), Qt::DirectConnection);
|
||||
|
||||
progress->show(tr("Splitting file(s), please wait..."), splitter);
|
||||
|
@ -56,7 +56,7 @@
|
||||
#include <QWindowsStyle>
|
||||
#include <QSysInfo>
|
||||
#include <QDragEnterEvent>
|
||||
#include <QMimeData> //#include <QWindowsMime>
|
||||
#include <QMimeData>
|
||||
#include <QProcess>
|
||||
#include <QUuid>
|
||||
#include <QProcessEnvironment>
|
||||
|
@ -63,13 +63,13 @@ WorkingBanner::WorkingBanner(QWidget *parent)
|
||||
|
||||
//Set font size
|
||||
QFont font = m_progress->font();
|
||||
font.setPointSize(5);
|
||||
font.setPointSize(6);
|
||||
m_progress->setFont(font);
|
||||
|
||||
//Set font color
|
||||
QPalette color = m_progress->palette();
|
||||
color.setColor(QPalette::Text, QColor::fromRgb(0x36, 0x36, 0x36));
|
||||
color.setColor(QPalette::WindowText, QColor::fromRgb(0x36, 0x36, 0x36));
|
||||
color.setColor(QPalette::Text, QColor::fromRgb(0x33, 0x33, 0x33));
|
||||
color.setColor(QPalette::WindowText, QColor::fromRgb(0x33, 0x33, 0x33));
|
||||
m_progress->setPalette(color);
|
||||
|
||||
//Set wait cursor
|
||||
|
@ -102,6 +102,9 @@ void CueSplitter::run()
|
||||
QStringList inputFileList = m_inputFilesInfo.keys();
|
||||
int nInputFiles = inputFileList.count();
|
||||
|
||||
emit progressMaxChanged(nInputFiles);
|
||||
emit progressValChanged(0);
|
||||
|
||||
//Decompress all input files
|
||||
for(int i = 0; i < nInputFiles; i++)
|
||||
{
|
||||
@ -112,9 +115,13 @@ void CueSplitter::run()
|
||||
if(decoder)
|
||||
{
|
||||
m_activeFile = shortName(QFileInfo(inputFileList.at(i)).fileName());
|
||||
|
||||
emit fileSelected(m_activeFile);
|
||||
emit progressValChanged(i+1);
|
||||
|
||||
QString tempFile = QString("%1/~%2.wav").arg(m_outputDir, lamexp_rand_str());
|
||||
connect(decoder, SIGNAL(statusUpdated(int)), this, SLOT(handleUpdate(int)), Qt::DirectConnection);
|
||||
|
||||
if(decoder->decode(inputFileList.at(i), tempFile, &m_abortFlag))
|
||||
{
|
||||
m_decompressedFiles.insert(inputFileList.at(i), tempFile);
|
||||
@ -125,6 +132,7 @@ void CueSplitter::run()
|
||||
qWarning("Failed to decompress file: <%s>", inputFileList.at(i).toLatin1().constData());
|
||||
lamexp_remove_file(tempFile);
|
||||
}
|
||||
|
||||
m_activeFile.clear();
|
||||
LAMEXP_DELETE(decoder);
|
||||
}
|
||||
@ -137,6 +145,7 @@ void CueSplitter::run()
|
||||
{
|
||||
m_decompressedFiles.insert(inputFileList.at(i), inputFileList.at(i));
|
||||
}
|
||||
|
||||
if(m_abortFlag)
|
||||
{
|
||||
m_bAborted = true;
|
||||
@ -146,6 +155,17 @@ void CueSplitter::run()
|
||||
}
|
||||
|
||||
int nFiles = m_model->getFileCount();
|
||||
int nTracksTotal = 0;
|
||||
int nTracksComplete = 0;
|
||||
|
||||
for(int i = 0; i < nFiles; i++)
|
||||
{
|
||||
nTracksTotal += m_model->getTrackCount(i);
|
||||
}
|
||||
|
||||
emit progressMaxChanged(nTracksTotal);
|
||||
emit progressValChanged(0);
|
||||
|
||||
QString albumPerformer = m_model->getAlbumPerformer();
|
||||
QString albumTitle = m_model->getAlbumTitle();
|
||||
QString albumGenre = m_model->getAlbumGenre();
|
||||
@ -161,6 +181,7 @@ void CueSplitter::run()
|
||||
//Process all tracks
|
||||
for(int j = 0; j < nTracks; j++)
|
||||
{
|
||||
emit progressValChanged(++nTracksComplete);
|
||||
int trackNo = m_model->getTrackNo(i, j);
|
||||
double trackOffset = std::numeric_limits<double>::quiet_NaN();
|
||||
double trackLength = std::numeric_limits<double>::quiet_NaN();
|
||||
|
@ -52,6 +52,8 @@ public:
|
||||
signals:
|
||||
void fileSelected(const QString &fileName);
|
||||
void fileSplit(const AudioFileModel &file);
|
||||
void progressValChanged(unsigned int);
|
||||
void progressMaxChanged(unsigned int);
|
||||
|
||||
private slots:
|
||||
void handleUpdate(int progress);
|
||||
|
Loading…
Reference in New Issue
Block a user