From ce4176161446f05a34a77d9cc733aacf217ad98f Mon Sep 17 00:00:00 2001 From: lordmulder Date: Sun, 7 Nov 2010 23:06:30 +0100 Subject: [PATCH] Improve about dialog + nicer method write version info to resource section --- LameXP.rc | 26 +++++----- LameXP.vcproj | 12 ++--- etc/Deployment/release.bat | 8 ++-- gui/MainWindow.ui | 10 ++-- res/Icons.qrc | 3 +- res/Images.qrc | 3 +- res/MainIcon.ico | Bin 355574 -> 23558 bytes res/MainIcon.png | Bin 0 -> 55457 bytes res/images/Qt.png | Bin 0 -> 17436 bytes res/images/Qt.svg | 93 ++++++++++++++++++++++++++++++++++++ src/Dialog_MainWindow.cpp | 76 ++++++++++++++++++++++------- src/Global.cpp | 64 +++++++++++++++++++++---- src/Global.h | 1 + src/LockedFile.cpp | 4 +- src/Main.cpp | 11 +++-- src/Resource.h | 58 +++++++++++++++++++--- src/Thread_FileAnalyzer.cpp | 12 +++-- 17 files changed, 311 insertions(+), 70 deletions(-) create mode 100644 res/MainIcon.png create mode 100644 res/images/Qt.png create mode 100644 res/images/Qt.svg diff --git a/LameXP.rc b/LameXP.rc index 15ac354c..f72d9e6f 100644 --- a/LameXP.rc +++ b/LameXP.rc @@ -47,15 +47,6 @@ END #endif // APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// Icon -// - -// Icon with lowest ID value placed first to ensure application icon -// remains consistent on all systems. -IDI_ICON1 ICON "res\\MainIcon.ico" - ///////////////////////////////////////////////////////////////////////////// // // WAVE @@ -69,8 +60,8 @@ IDR_WAVE_ABOUT WAVE "res\\sounds\\uuaarrgh.wav" // VS_VERSION_INFO VERSIONINFO - FILEVERSION 4,0,0,0 - PRODUCTVERSION 4,0,0,0 + FILEVERSION VER_LAMEXP_MAJOR,VER_LAMEXP_MINOR_HI,VER_LAMEXP_MINOR_LO,VER_LAMEXP_BUILD + PRODUCTVERSION VER_LAMEXP_MAJOR,VER_LAMEXP_MINOR_HI,VER_LAMEXP_MINOR_LO,VER_LAMEXP_BUILD FILEFLAGSMASK 0x17L #ifdef _DEBUG FILEFLAGS 0x3L @@ -88,13 +79,13 @@ BEGIN VALUE "Comments", "This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY" VALUE "CompanyName", "Free Software Foundation" VALUE "FileDescription", "LameXP - Audio Encoder Front-End" - VALUE "FileVersion", "4.0.0.0" + VALUE "FileVersion", VER_LAMEXP_STR VALUE "InternalName", "LameXP Qt" VALUE "LegalCopyright", "Copyright (C) 2004-2010 LoRd_MuldeR " VALUE "LegalTrademarks", "This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License " VALUE "OriginalFilename", "LameXP.exe" VALUE "ProductName", "LameXP - Audio Encoder Front-End" - VALUE "ProductVersion", "v4.00 Pre-Alpha" + VALUE "ProductVersion", VER_LAMEXP_STR END END BLOCK "VarFileInfo" @@ -103,6 +94,15 @@ BEGIN END END + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_ICON1 ICON "res\\MainIcon.ico" #endif // German (Germany) resources ///////////////////////////////////////////////////////////////////////////// diff --git a/LameXP.vcproj b/LameXP.vcproj index 0461e2c2..2fab5ce8 100644 --- a/LameXP.vcproj +++ b/LameXP.vcproj @@ -18,8 +18,8 @@ @@ -69,7 +69,7 @@ LinkIncremental="1" AdditionalLibraryDirectories=""$(QTDIR)\lib";"$(QTDIR)\plugins\imageformats"" GenerateDebugInformation="true" - SubSystem="1" + SubSystem="2" TargetMachine="1" /> @@ -156,7 +156,7 @@ GenerateDebugInformation="false" AssemblyDebug="0" MapExports="false" - SubSystem="1" + SubSystem="2" LinkTimeCodeGeneration="1" TargetMachine="1" /> diff --git a/etc/Deployment/release.bat b/etc/Deployment/release.bat index 8e87875b..20224e34 100644 --- a/etc/Deployment/release.bat +++ b/etc/Deployment/release.bat @@ -2,7 +2,7 @@ call _paths.bat REM ------------------------------------------ set "TEMP_DIR=%TEMP%\~LameXP.%DATE%.tmp" -set "OUT_PATH=..\..\out\Release" +set "OUT_PATH=..\..\bin\Release" set "OUT_FILE=%OUT_PATH%\..\LameXP.%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%.Release.zip" REM ------------------------------------------ del "%OUT_FILE%" @@ -29,8 +29,10 @@ mkdir "%TEMP_DIR%" mkdir "%TEMP_DIR%\imageformats" REM ------------------------------------------ copy "%OUT_PATH%\*.exe" "%TEMP_DIR%" -copy "%QTDIR%\bin\qtcore4.dll" "%TEMP_DIR%" -copy "%QTDIR%\bin\qtgui4.dll" "%TEMP_DIR%" +copy "%QTDIR%\bin\QtCore4.dll" "%TEMP_DIR%" +copy "%QTDIR%\bin\QtGui4.dll" "%TEMP_DIR%" +copy "%QTDIR%\bin\QtXml4.dll" "%TEMP_DIR%" +copy "%QTDIR%\bin\QtSvg4.dll" "%TEMP_DIR%" copy "%QTDIR%\plugins\imageformats\q???4.dll" "%TEMP_DIR%\imageformats" REM ------------------------------------------ for %%f in ("%TEMP_DIR%\*.exe") do ( diff --git a/gui/MainWindow.ui b/gui/MainWindow.ui index d82adffd..e7fb1609 100644 --- a/gui/MainWindow.ui +++ b/gui/MainWindow.ui @@ -13,10 +13,6 @@ LameXP - Audio Encoder Front-end - - - :/MainIcon.ico:/MainIcon.ico - @@ -848,11 +844,14 @@ Visit Official Homepage + + Visit Official Web-Site + - :/icons/transmit.png:/icons/transmit.png + :/icons/transmit_blue.png:/icons/transmit_blue.png Check for Updates @@ -898,6 +897,7 @@ + diff --git a/res/Icons.qrc b/res/Icons.qrc index 8a816e30..e42b0045 100644 --- a/res/Icons.qrc +++ b/res/Icons.qrc @@ -2,6 +2,7 @@ MainIcon.ico + MainIcon.png icons/add.png icons/application_view_list.png icons/arrow_down.png @@ -42,7 +43,7 @@ icons/star.png icons/table_edit.png icons/timeline_marker.png - icons/transmit.png + icons/transmit_blue.png icons/user.png icons/world.png diff --git a/res/Images.qrc b/res/Images.qrc index 74015c9d..4a8c71cd 100644 --- a/res/Images.qrc +++ b/res/Images.qrc @@ -9,5 +9,6 @@ images/Splash.png images/Thumb.png images/Construction.gif - + images/Qt.svg + diff --git a/res/MainIcon.ico b/res/MainIcon.ico index 712f2bde7e725f53ef043801cdc211a1ddf7c581..dcace83decd71c0a53abaf6a22b2cbecb45d3ba3 100644 GIT binary patch literal 23558 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 + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + diff --git a/src/Dialog_MainWindow.cpp b/src/Dialog_MainWindow.cpp index 1dd1d296..76ce0995 100644 --- a/src/Dialog_MainWindow.cpp +++ b/src/Dialog_MainWindow.cpp @@ -42,6 +42,8 @@ //Win32 includes #include +#define LINK(URL) QString("%2").arg(URL).arg(URL) + //////////////////////////////////////////////////////////// // Constructor //////////////////////////////////////////////////////////// @@ -156,11 +158,13 @@ void MainWindow::aboutButtonClicked(void) { QString aboutText; - aboutText += "LameXP - Audio Encoder Front-end
"; - aboutText += "Copyright (C) 2004-2010 LoRd_MuldeR <MuldeR2@GMX.de>
"; - aboutText += QString().sprintf("Version %d.%02d %s, Build %d [%s]

", lamexp_version_major(), lamexp_version_minor(), lamexp_version_release(), lamexp_version_build(), lamexp_version_date().toString(Qt::ISODate).toLatin1().constData()); - aboutText += "Please visit http://mulder.dummwiedeutsch.de/ for news and updates!


"; - aboutText += "This program is free software; you can redistribute it and/or
"; + aboutText += "

LameXP - Audio Encoder Front-end

"; + aboutText += QString("Copyright (C) 2004-%1 LoRd_MuldeR <MuldeR2@GMX.de>. Some rights reserved.
").arg(max(lamexp_version_date().year(),QDate::currentDate().year())); + aboutText += QString().sprintf("Version %d.%02d %s, Build %d [%s]

", lamexp_version_major(), lamexp_version_minor(), lamexp_version_release(), lamexp_version_build(), lamexp_version_date().toString(Qt::ISODate).toLatin1().constData()); + aboutText += "Please visit the official web-site at "; + aboutText += LINK("http://mulder.dummwiedeutsch.de/") += " for news and updates!
"; + aboutText += "

"; + aboutText += "This program is free software; you can redistribute it and/or
"; aboutText += "modify it under the terms of the GNU General Public License
"; aboutText += "as published by the Free Software Foundation; either version 2
"; aboutText += "of the License, or (at your option) any later version.

"; @@ -170,26 +174,64 @@ void MainWindow::aboutButtonClicked(void) aboutText += "GNU General Public License for more details.

"; aboutText += "You should have received a copy of the GNU General Public License
"; aboutText += "along with this program; if not, write to the Free Software
"; - aboutText += "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.


"; - aboutText += "This software uses the 'slick' icon set by http://www.famfamfam.com/.
"; + aboutText += "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

"; + aboutText += "

"; + aboutText += "This software uses the 'slick' icon set by Mark James – http://www.famfamfam.com/.
"; aboutText += "Released under the Creative Commons Attribution 2.5 License.
"; - QApplication::setOverrideCursor(QCursor(Qt::WaitCursor)); - PlaySound(MAKEINTRESOURCE(IDR_WAVE_ABOUT), GetModuleHandle(NULL), SND_RESOURCE | SND_SYNC); - QApplication::restoreOverrideCursor(); + QMessageBox *aboutBox = new QMessageBox(this); + aboutBox->setText(aboutText); + aboutBox->setIconPixmap(dynamic_cast(QApplication::instance())->windowIcon().pixmap(QSize(64,64))); + aboutBox->setWindowTitle("About LameXP"); + + QPushButton *firstButton = aboutBox->addButton("More About...", QMessageBox::AcceptRole); + firstButton->setIcon(QIcon(":/icons/information.png")); + firstButton->setMinimumWidth(120); + + QPushButton *secondButton = aboutBox->addButton("About Qt...", QMessageBox::AcceptRole); + secondButton->setIcon(QIcon(":/images/Qt.svg")); + secondButton->setMinimumWidth(120); + + QPushButton *thirdButton = aboutBox->addButton("Discard", QMessageBox::AcceptRole); + thirdButton->setIcon(QIcon(":/icons/cross.png")); + thirdButton->setMinimumWidth(90); + + PlaySound(MAKEINTRESOURCE(IDR_WAVE_ABOUT), GetModuleHandle(NULL), SND_RESOURCE | SND_ASYNC); while(1) { - switch(QMessageBox::information(this, "About LameXP", aboutText, " More about... ", " About Qt... ", " Discard ")) + switch(aboutBox->exec()) { case 0: { + const QString li("
  • "); QString moreAboutText; - moreAboutText += "The following third-party software is used in LameXP:

    "; - moreAboutText += "LAME - OpenSource mp3 Encoder
    Released under the terms of the GNU Leser General Public License.
    http://lame.sourceforge.net/

    "; - moreAboutText += "OggEnc - Ogg Vorbis Encoder
    Completely open and patent-free audio encoding technology.
    http://www.vorbis.com/

    "; - moreAboutText += "Nero AAC reference MPEG-4 Encoder
    Freeware state-of-the-art HE-AAC encoder with 2-Pass support.
    http://www.nero.com/eng/technologies-aac-codec.html
    "; - QMessageBox::information(this, "About third-party tools", moreAboutText, "Discard"); + moreAboutText += "

    The following third-party software is used in LameXP:

    "; + moreAboutText += "
      "; + moreAboutText += li + "LAME - OpenSource mp3 Encoder
      "; + moreAboutText += "Released under the terms of the GNU Leser General Public License.
      "; + moreAboutText += LINK("http://lame.sourceforge.net/"); + moreAboutText += "
      "; + moreAboutText += li + "OggEnc - Ogg Vorbis Encoder"; + moreAboutText += "
      Completely open and patent-free audio encoding technology.
      "; + moreAboutText += LINK("http://www.vorbis.com/"); + moreAboutText += "
      "; + moreAboutText += li + "Nero AAC reference MPEG-4 Encoder
      "; + moreAboutText += "Freeware state-of-the-art HE-AAC encoder with 2-Pass support.
      "; + moreAboutText += LINK("http://www.nero.com/eng/technologies-aac-codec.html/"); + moreAboutText += "
      "; + moreAboutText += li + "MediaInfo - Media File Analysis Tool
      "; + moreAboutText += "Released under the terms of the GNU Leser General Public License.
      "; + moreAboutText += LINK("http://mediainfo.sourceforge.net/"); + moreAboutText += "
    "; + + QMessageBox *moreAboutBox = new QMessageBox(this); + moreAboutBox->setText(moreAboutText); + moreAboutBox->setIconPixmap(dynamic_cast(QApplication::instance())->windowIcon().pixmap(QSize(64,64))); + moreAboutBox->setWindowTitle("About Third-party Software"); + moreAboutBox->exec(); + + LAMEXP_DELETE(moreAboutBox); break; } case 1: @@ -199,6 +241,8 @@ void MainWindow::aboutButtonClicked(void) return; } } + + LAMEXP_DELETE(aboutBox); } /* diff --git a/src/Global.cpp b/src/Global.cpp index 0d285f12..a5dd8667 100644 --- a/src/Global.cpp +++ b/src/Global.cpp @@ -36,8 +36,14 @@ #include //LameXP includes +#include "Resource.h" #include "LockedFile.h" +//CRT includes +#include +#include +#include + //Debug only includes #ifdef _DEBUG #include @@ -48,10 +54,10 @@ /////////////////////////////////////////////////////////////////////////////// //Build version -static const unsigned int g_lamexp_version_major = 4; -static const unsigned int g_lamexp_version_minor = 0; -static const unsigned int g_lamexp_version_build = 4; -static const char *g_lamexp_version_release = "Pre-Alpha"; +static const unsigned int g_lamexp_version_major = VER_LAMEXP_MAJOR; +static const unsigned int g_lamexp_version_minor = VER_LAMEXP_MINOR; +static const unsigned int g_lamexp_version_build = VER_LAMEXP_BUILD; +static const char *g_lamexp_version_release = VER_LAMEXP_SUFFIX_STR; //Build date static QDate g_lamexp_version_date; @@ -79,7 +85,11 @@ unsigned int lamexp_version_major(void) { return g_lamexp_version_major; } unsigned int lamexp_version_minor(void) { return g_lamexp_version_minor; } unsigned int lamexp_version_build(void) { return g_lamexp_version_build; } const char *lamexp_version_release(void) { return g_lamexp_version_release; } -bool lamexp_version_demo(void) { return !(strstr(g_lamexp_version_release, "Final") || strstr(g_lamexp_version_release, "Hotfix")); } + +bool lamexp_version_demo(void) +{ + return !(strstr(g_lamexp_version_release, "Final") || strstr(g_lamexp_version_release, "Hotfix")); +} /* * Get build date date @@ -127,6 +137,41 @@ const QDate &lamexp_version_date(void) return g_lamexp_version_date; } +/* + * Initialize the console + */ +void lamexp_init_console(int argc, char* argv[]) +{ + for(int i = 0; i < argc; i++) + { + if(lamexp_version_demo() || !_stricmp(argv[i], "--console")) + { + if(AllocConsole()) + { + //See: http://support.microsoft.com/default.aspx?scid=kb;en-us;105305 + int hCrtStdOut = _open_osfhandle((long) GetStdHandle(STD_OUTPUT_HANDLE), _O_TEXT); + int hCrtStdErr = _open_osfhandle((long) GetStdHandle(STD_ERROR_HANDLE), _O_TEXT); + FILE *hfStdOut = _fdopen(hCrtStdOut, "w"); + FILE *hfStderr = _fdopen(hCrtStdErr, "w"); + *stdout = *hfStdOut; + *stderr = *hfStderr; + setvbuf(stdout, NULL, _IONBF, 0); + setvbuf(stderr, NULL, _IONBF, 0); + } + + HMENU hMenu = GetSystemMenu(GetConsoleWindow(), 0); + EnableMenuItem(hMenu, SC_CLOSE, MF_BYCOMMAND | MF_GRAYED); + RemoveMenu(hMenu, SC_CLOSE, MF_BYCOMMAND); + + SetConsoleCtrlHandler(NULL, TRUE); + SetConsoleTitle(L"LameXP - Audio Encoder Front-End | Debug Console"); + SetConsoleOutputCP(CP_UTF8); + + break; + } + } +} + /* * Initialize Qt framework */ @@ -173,14 +218,15 @@ bool lamexp_init_qt(int argc, char* argv[]) application->setApplicationVersion(QString().sprintf("%d.%02d.%04d", lamexp_version_major(), lamexp_version_minor(), lamexp_version_build())); application->setOrganizationName("LoRd_MuldeR"); application->setOrganizationDomain("mulder.dummwiedeutsch.de"); - application->setWindowIcon(QIcon(":/MainIcon.ico")); + application->setWindowIcon(QIcon(":/MainIcon.png")); //Load plugins from application directory QCoreApplication::setLibraryPaths(QStringList() << QApplication::applicationDirPath()); - + qDebug("Library Path:\n%s\n", QApplication::libraryPaths().first().toUtf8().constData()); + //Check for supported image formats QList supportedFormats = QImageReader::supportedImageFormats(); - if(!(supportedFormats.contains("png") && supportedFormats.contains("gif") && supportedFormats.contains("ico"))) + if(!(supportedFormats.contains("png") && supportedFormats.contains("gif") && supportedFormats.contains("ico") && supportedFormats.contains("svg"))) { qFatal("Qt initialization error: At least one image format plugin is missing!"); return false; @@ -219,7 +265,7 @@ bool lamexp_check_instances(void) { QString errorMessage = sharedMemory->errorString(); LAMEXP_DELETE(sharedMemory); - qFatal("Failed to create shared memory: %s", errorMessage.toLatin1().constData()); + qFatal("Failed to create shared memory: %s", errorMessage.toUtf8().constData()); return false; } } diff --git a/src/Global.h b/src/Global.h index 4e28e1c2..6c2e1957 100644 --- a/src/Global.h +++ b/src/Global.h @@ -45,6 +45,7 @@ const char *lamexp_version_release(void); bool lamexp_version_demo(void); //Public functions +void lamexp_init_console(int argc, char* argv[]); bool lamexp_init_qt(int argc, char* argv[]); bool lamexp_check_instances(void); void lamexp_register_tool(const QString &toolName, LockedFile *file); diff --git a/src/LockedFile.cpp b/src/LockedFile.cpp index c6bc44dc..ce1c1650 100644 --- a/src/LockedFile.cpp +++ b/src/LockedFile.cpp @@ -45,7 +45,7 @@ LockedFile::LockedFile(const QString &resourcePath, const QString &outPath, cons { QFile::remove(QFileInfo(outFile).absoluteFilePath()); char error_msg[256]; - strcpy_s(error_msg, 256, QString("File '%1' could not be written!").arg(QFileInfo(outFile).fileName()).toLatin1().constData()); + strcpy_s(error_msg, 256, QString("File '%1' could not be written!").arg(QFileInfo(outFile).fileName()).toUtf8().constData()); throw error_msg; } outFile.close(); @@ -53,7 +53,7 @@ LockedFile::LockedFile(const QString &resourcePath, const QString &outPath, cons else { char error_msg[256]; - strcpy_s(error_msg, 256, QString("File '%1' could not be created!").arg(QFileInfo(outFile).fileName()).toLatin1().constData()); + strcpy_s(error_msg, 256, QString("File '%1' could not be created!").arg(QFileInfo(outFile).fileName()).toUtf8().constData()); throw error_msg; } diff --git a/src/Main.cpp b/src/Main.cpp index c7b64f94..39b8231a 100644 --- a/src/Main.cpp +++ b/src/Main.cpp @@ -36,11 +36,13 @@ int lamexp_main(int argc, char* argv[]) { + //Init console + lamexp_init_console(argc, argv); + //Print version info - SetConsoleTitle(L"LameXP - Audio Encoder Front-End | DO NOT CLOSE CONSOLE !!!"); - qDebug("\nLameXP - Audio Encoder Front-End"); + qDebug("LameXP - Audio Encoder Front-End"); qDebug("Version %d.%02d %s, Build %d [%s], MSVC compiler v%02d.%02d", lamexp_version_major(), lamexp_version_minor(), lamexp_version_release(), lamexp_version_build(), lamexp_version_date().toString(Qt::ISODate).toLatin1().constData(), _MSC_VER / 100, _MSC_VER % 100); - qDebug("Copyright (C) 2004-2010 LoRd_MuldeR \n"); + qDebug("Copyright (C) 2004-%04d LoRd_MuldeR \n", max(lamexp_version_date().year(),QDate::currentDate().year())); //print license info qDebug("This program is free software: you can redistribute it and/or modify"); @@ -60,7 +62,8 @@ int lamexp_main(int argc, char* argv[]) qWarning(QString("Note: This demo (pre-release) version of LameXP will expire at %1.\n").arg(expireDate.toString(Qt::ISODate)).toLatin1().constData()); if(QDate::currentDate() >= expireDate) { - QMessageBox::warning(NULL, "LameXP - Expired", QString("This demo (pre-release) version of LameXP has expired at %1.").arg(expireDate.toString()), "Exit Program"); + qWarning("Expired !!!"); + QMessageBox::warning(NULL, "LameXP - Expired", QString("This demo (pre-release) version of LameXP has expired at %1.\nLameXP is free software and release versions won't expire.").arg(expireDate.toString()), "Exit Program"); return 0; } } diff --git a/src/Resource.h b/src/Resource.h index b8e5f2cc..15525b79 100644 --- a/src/Resource.h +++ b/src/Resource.h @@ -1,17 +1,61 @@ -//{{NO_DEPENDENCIES}} -// Microsoft Visual C++ generated include file. -// Used by g:\DeLpHi\LameXP_Qt\LameXP\LameXP.rc +/////////////////////////////////////////////////////////////////////////////// +// LameXP - Audio Encoder Front-End +// Copyright (C) 2004-2010 LoRd_MuldeR // -#define IDI_ICON1 101 +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation; either version 2 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this program; if not, write to the Free Software Foundation, Inc., +// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +// +// http://www.gnu.org/licenses/gpl-2.0.txt +/////////////////////////////////////////////////////////////////////////////// + +/* + * LameXP Version Info + */ +#define VER_LAMEXP_MAJOR 4 +#define VER_LAMEXP_MINOR_HI 0 +#define VER_LAMEXP_MINOR_LO 0 +#define VER_LAMEXP_BUILD 7 +#define VER_LAMEXP_SUFFIX TechPreview + +/* + * Resource ID's + */ +#define IDI_ICON1 106 #define IDR_WAVE_ABOUT 666 -// Next default values for new objects -// +/* + * Next default values for new objects + */ #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NEXT_RESOURCE_VALUE 102 +#define _APS_NEXT_RESOURCE_VALUE 107 #define _APS_NEXT_COMMAND_VALUE 40001 #define _APS_NEXT_CONTROL_VALUE 1001 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif + +/* + * Helper macros (having fun with the C pre-processor) + */ +#define VER_LAMEXP_STR_HLP1(X) #X +#define VER_LAMEXP_STR_HLP2(V,W,X,Y,Z) VER_LAMEXP_STR_HLP1(v##V.W##X Z [Build Y]) +#define VER_LAMEXP_STR_HLP3(V,W,X,Y,Z) VER_LAMEXP_STR_HLP2(V,W,X,Y,Z) +#define VER_LAMEXP_STR VER_LAMEXP_STR_HLP3(VER_LAMEXP_MAJOR,VER_LAMEXP_MINOR_HI,VER_LAMEXP_MINOR_LO,VER_LAMEXP_BUILD,VER_LAMEXP_SUFFIX) +#define VER_LAMEXP_SUFFIX_STR_HLP1(X) #X +#define VER_LAMEXP_SUFFIX_STR_HLP2(X) VER_LAMEXP_SUFFIX_STR_HLP1(X) +#define VER_LAMEXP_SUFFIX_STR VER_LAMEXP_SUFFIX_STR_HLP2(VER_LAMEXP_SUFFIX) +#define VER_LAMEXP_MINOR_HLP1(X,Y) X##Y +#define VER_LAMEXP_MINOR_HLP2(X,Y) VER_LAMEXP_MINOR_HLP1(X,Y) +#define VER_LAMEXP_MINOR VER_LAMEXP_MINOR_HLP2(VER_LAMEXP_MINOR_HI,VER_LAMEXP_MINOR_LO) diff --git a/src/Thread_FileAnalyzer.cpp b/src/Thread_FileAnalyzer.cpp index bb66175b..30b768f5 100644 --- a/src/Thread_FileAnalyzer.cpp +++ b/src/Thread_FileAnalyzer.cpp @@ -61,9 +61,14 @@ void FileAnalyzer::run() while(!m_inputFiles.isEmpty()) { QString currentFile = QDir::fromNativeSeparators(m_inputFiles.takeFirst()); - qDebug("Adding: %s", currentFile.toLatin1().constData()); + qDebug("Analyzing: %s", currentFile.toUtf8().constData()); emit fileSelected(QFileInfo(currentFile).fileName()); AudioFileModel file = analyzeFile(currentFile); + if(file.formatContainerType().isEmpty() || file.formatAudioType().isEmpty()) + { + qDebug("Skipped: %s", file.filePath().toUtf8().constData()); + continue; + } emit fileAnalyzed(file); } @@ -83,7 +88,8 @@ const AudioFileModel FileAnalyzer::analyzeFile(const QString &filePath) QProcess process; process.setProcessChannelMode(QProcess::MergedChannels); process.setReadChannel(QProcess::StandardOutput); - process.start(m_mediaInfoBin, QStringList() << filePath); + process.start(m_mediaInfoBin, QStringList() << QDir::toNativeSeparators(filePath)); + process.waitForStarted(); while(process.state() != QProcess::NotRunning) { @@ -154,7 +160,7 @@ void FileAnalyzer::updateSection(const QString §ion) } else { - qWarning("Unknown section: %s", section.toLatin1().constData()); + qWarning("Unknown section: %s", section.toUtf8().constData()); } }