diff --git a/etc/Deployment/_paths.bat b/etc/Deployment/_paths.bat
index 5395c867..5bb1dd38 100644
--- a/etc/Deployment/_paths.bat
+++ b/etc/Deployment/_paths.bat
@@ -2,5 +2,6 @@
set "PATH_SEVENZ=E:\7-Zip\7z.exe"
set "PATH_MPRESS=E:\MPress\mpress.exe"
set "PATH_UPXBIN=E:\MPUI\installer\upx.exe"
+set "PATH_MKNSIS=E:\NSIS\makensis.exe"
set "PATH_MSVC90=D:\Microsoft Visual Studio 9.0"
set "PATH_QTMSVC=E:\Qt\MSVC\4.7.0"
diff --git a/etc/Deployment/release.bat b/etc/Deployment/release.bat
index 6c3e79f1..f18074a7 100644
--- a/etc/Deployment/release.bat
+++ b/etc/Deployment/release.bat
@@ -1,15 +1,36 @@
@echo off
call _paths.bat
REM ------------------------------------------
-set "TEMP_DIR=%TEMP%\~LameXP.%DATE%.tmp"
set "OUT_PATH=..\..\bin\Release"
-set "OUT_FILE=%OUT_PATH%\..\LameXP.%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%.Release.zip"
+set "OUT_DATE=%DATE:~6,4%-%DATE:~3,2%-%DATE:~0,2%"
+set "OUT_FILE=%OUT_PATH%\..\LameXP.%OUT_DATE%.Release"
+set "TMP_PATH=%TEMP%\~LameXP.%OUT_DATE%.tmp"
REM ------------------------------------------
-del "%OUT_FILE%"
-if exist "%OUT_FILE%" (
- echo.
+set "VER_LAMEXP_MAJOR=X"
+set "VER_LAMEXP_MINOR_HI=X"
+set "VER_LAMEXP_MINOR_LO=X"
+set "VER_LAMEXP_BUILD=X"
+set "VER_LAMEXP_SUFFIX=X"
+REM ------------------------------------------
+FOR /F "tokens=2,3" %%s IN (..\..\src\Resource.h) DO (
+ if "%%s"=="VER_LAMEXP_MAJOR" set "VER_LAMEXP_MAJOR=%%t"
+ if "%%s"=="VER_LAMEXP_MINOR_HI" set "VER_LAMEXP_MINOR_HI=%%t"
+ if "%%s"=="VER_LAMEXP_MINOR_LO" set "VER_LAMEXP_MINOR_LO=%%t"
+ if "%%s"=="VER_LAMEXP_BUILD" set "VER_LAMEXP_BUILD=%%t"
+ if "%%s"=="VER_LAMEXP_SUFFIX" set "VER_LAMEXP_SUFFIX=%%t"
+)
+REM ------------------------------------------
+echo Version: %VER_LAMEXP_MAJOR%.%VER_LAMEXP_MINOR_HI%%VER_LAMEXP_MINOR_LO%, Build #%VER_LAMEXP_BUILD% (%VER_LAMEXP_SUFFIX%)
+REM ------------------------------------------
+del "%OUT_FILE%.exe"
+del "%OUT_FILE%.zip"
+if exist "%OUT_FILE%.exe" (
+ echo BUILD HAS FAILED !!!
+ pause
+ exit
+)
+if exist "%OUT_FILE%.zip" (
echo BUILD HAS FAILED !!!
- echo.
pause
exit
)
@@ -24,28 +45,29 @@ if not "%LAMEXP_BUILD_SUCCESS%"=="YES" (
exit
)
REM ------------------------------------------
-rd /S /Q "%TEMP_DIR%"
-mkdir "%TEMP_DIR%"
-mkdir "%TEMP_DIR%\imageformats"
+rd /S /Q "%TMP_PATH%"
+mkdir "%TMP_PATH%"
+mkdir "%TMP_PATH%\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\QtXml4.dll" "%TEMP_DIR%"
-copy "%QTDIR%\bin\QtSvg4.dll" "%TEMP_DIR%"
-copy "%QTDIR%\plugins\imageformats\q???4.dll" "%TEMP_DIR%\imageformats"
+copy "%OUT_PATH%\*.exe" "%TMP_PATH%"
+copy "%QTDIR%\bin\QtCore4.dll" "%TMP_PATH%"
+copy "%QTDIR%\bin\QtGui4.dll" "%TMP_PATH%"
+copy "%QTDIR%\bin\QtXml4.dll" "%TMP_PATH%"
+copy "%QTDIR%\bin\QtSvg4.dll" "%TMP_PATH%"
+copy "%QTDIR%\plugins\imageformats\q???4.dll" "%TMP_PATH%\imageformats"
REM ------------------------------------------
-for %%f in ("%TEMP_DIR%\*.exe") do (
+for %%f in ("%TMP_PATH%\*.exe") do (
"%PATH_UPXBIN%" --best --lzma "%%f"
)
-for %%f in ("%TEMP_DIR%\*.dll") do (
+for %%f in ("%TMP_PATH%\*.dll") do (
"%PATH_UPXBIN%" --best --lzma "%%f"
)
REM ------------------------------------------
-copy "..\Redist\*.*" "%TEMP_DIR%"
-copy "..\..\License.txt" "%TEMP_DIR%"
+copy "..\Redist\*.*" "%TMP_PATH%"
+copy "..\..\License.txt" "%TMP_PATH%"
REM ------------------------------------------
-"%PATH_SEVENZ%" a -tzip -r "%OUT_FILE%" "%TEMP_DIR%\*"
-rd /S /Q "%TEMP_DIR%"
+"%PATH_SEVENZ%" a -tzip -r "%OUT_FILE%.zip" "%TMP_PATH%\*"
+"%PATH_MKNSIS%" "/DLAMEXP_SOURCE_PATH=%TMP_PATH%" "/DLAMEXP_OUTPUT_FILE=%OUT_FILE%.exe" "/DLAMEXP_DATE=%OUT_DATE%" "/DLAMEXP_VERSION=%VER_LAMEXP_MAJOR%.%VER_LAMEXP_MINOR_HI%%VER_LAMEXP_MINOR_LO%" "/DLAMEXP_BUILD=%VER_LAMEXP_BUILD%" "/DLAMEXP_SUFFIX=%VER_LAMEXP_SUFFIX%" "..\NSIS\setup.nsi"
+rd /S /Q "%TMP_PATH%"
REM ------------------------------------------
pause
diff --git a/etc/NSIS/setup.nsi b/etc/NSIS/setup.nsi
new file mode 100644
index 00000000..348c3ef5
--- /dev/null
+++ b/etc/NSIS/setup.nsi
@@ -0,0 +1,10 @@
+!define ZIP2EXE_NAME `LameXP v${LAMEXP_VERSION} ${LAMEXP_SUFFIX}, Build #${LAMEXP_BUILD} [${LAMEXP_DATE}]`
+!define ZIP2EXE_OUTFILE `${LAMEXP_OUTPUT_FILE}`
+!define ZIP2EXE_COMPRESSOR_LZMA
+!define ZIP2EXE_COMPRESSOR_SOLID
+!define ZIP2EXE_INSTALLDIR `$PROGRAMFILES\${ZIP2EXE_NAME}`
+!include `${NSISDIR}\Contrib\zip2exe\Base.nsh`
+!include `${NSISDIR}\Contrib\zip2exe\Modern.nsh`
+!insertmacro SECTION_BEGIN
+File /r `${LAMEXP_SOURCE_PATH}\*.*`
+!insertmacro SECTION_END
diff --git a/gui/MainWindow.ui b/gui/MainWindow.ui
index 3569924d..a0ec2bb7 100644
--- a/gui/MainWindow.ui
+++ b/gui/MainWindow.ui
@@ -6,8 +6,8 @@
0
0
- 691
- 539
+ 676
+ 557
@@ -369,6 +369,554 @@
+
+
+
+ :/icons/cd_edit.png:/icons/cd_edit.png
+
+
+ Meta Data
+
+
+ -
+
+
-
+
+
+
+ 50
+ false
+
+
+
+ Meta Information
+
+
+
-
+
+
-
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+
+ (Copy from Source File)
+
+
+ true
+
+
+
+ -
+
+
+ Artist:
+
+
+
+ -
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+
+ (Copy from Source File)
+
+
+ true
+
+
+
+ -
+
+
+ Album:
+
+
+
+ -
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+
+ (Copy from Source File)
+
+
+ true
+
+
+
+ -
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+
+ (Copy from Source File)
+
+
+ true
+
+
+
+ -
+
+
+ Genre:
+
+
+
+ -
+
+
+ Year:
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::Fixed
+
+
+
+ 4
+ 2
+
+
+
+
+ -
+
+
+
+ 32
+ 16777215
+
+
+
+ ...
+
+
+
+ -
+
+
+
+ 32
+ 16777215
+
+
+
+ ...
+
+
+
+ -
+
+
+
+ 32
+ 16777215
+
+
+
+ ...
+
+
+
+ -
+
+
+
+ 32
+ 16777215
+
+
+
+ ...
+
+
+
+ -
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+
+ (Copy from Source File)
+
+
+ true
+
+
+
+ -
+
+
+ Comment:
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::Fixed
+
+
+
+ 4
+ 2
+
+
+
+
+ -
+
+
+
+ 32
+ 16777215
+
+
+
+ ...
+
+
+
+ -
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 85
+ 85
+ 127
+
+
+
+
+
+
+
+
+ 120
+ 120
+ 120
+
+
+
+
+
+
+
+ (Copy from Source File)
+
+
+ true
+
+
+
+ -
+
+
+
+ 32
+ 16777215
+
+
+
+ ...
+
+
+
+ -
+
+
+ Position:
+
+
+
+
+
+
+
+
+ -
+
+
+
+ 50
+ false
+
+
+
+ Options
+
+
+
-
+
+
-
+
+
+
+ 50
+ false
+
+
+
+ Automatically generate playlist (.m3u)
+
+
+ true
+
+
+
+ -
+
+
+
+ 50
+ false
+
+
+
+ Write meta information to encoded files
+
+
+ true
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+ QSizePolicy::Fixed
+
+
+
+ 4
+ 2
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+ Qt::Vertical
+
+
+
+ 20
+ 40
+
+
+
+
+
+
@@ -458,92 +1006,6 @@
-
-
-
- :/icons/cd_edit.png:/icons/cd_edit.png
-
-
- Meta Data
-
-
- -
-
-
-
-
-
- QFrame::StyledPanel
-
-
- QFrame::Sunken
-
-
-
-
-
- :/images/Construction.gif
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
-
-
-
-
@@ -738,7 +1200,7 @@
0
0
- 691
+ 676
21
@@ -778,8 +1240,8 @@
-
+
@@ -967,6 +1429,8 @@
+
+
@@ -1161,5 +1625,21 @@
+
+ writeMetaDataCheckBox
+ clicked(bool)
+ metaDataGroupBox
+ setEnabled(bool)
+
+
+ 177
+ 285
+
+
+ 336
+ 160
+
+
+
diff --git a/src/Dialog_MainWindow.cpp b/src/Dialog_MainWindow.cpp
index ddc5abb0..1fddbd5c 100644
--- a/src/Dialog_MainWindow.cpp
+++ b/src/Dialog_MainWindow.cpp
@@ -487,10 +487,10 @@ void MainWindow::tabPageChanged(int idx)
actionOutputDirectory->setChecked(true);
break;
case 2:
- actionCompression->setChecked(true);
+ actionMetaData->setChecked(true);
break;
case 3:
- actionMetaData->setChecked(true);
+ actionCompression->setChecked(true);
break;
case 4:
actionAdvancedOptions->setChecked(true);
@@ -507,8 +507,8 @@ void MainWindow::tabActionActivated(QAction *action)
if(actionSourceFiles == action) idx = 0;
else if(actionOutputDirectory == action) idx = 1;
- else if(actionCompression == action) idx = 2;
- else if(actionMetaData == action) idx = 3;
+ else if(actionMetaData == action) idx = 2;
+ else if(actionCompression == action) idx = 3;
else if(actionAdvancedOptions == action) idx = 4;
if(idx >= 0)
@@ -675,13 +675,14 @@ void MainWindow::handleDelayedFiles(void)
}
m_delayedFileTimer->stop();
-
if(m_delayedFileList->isEmpty())
{
return;
}
QStringList selectedFiles;
+ tabWidget->setCurrentIndex(0);
+
while(!m_delayedFileList->isEmpty())
{
selectedFiles << QFileInfo(m_delayedFileList->takeFirst()).absoluteFilePath();
diff --git a/src/Resource.h b/src/Resource.h
index 6715f0d5..8ae72243 100644
--- a/src/Resource.h
+++ b/src/Resource.h
@@ -25,7 +25,7 @@
#define VER_LAMEXP_MAJOR 4
#define VER_LAMEXP_MINOR_HI 0
#define VER_LAMEXP_MINOR_LO 0
-#define VER_LAMEXP_BUILD 8
+#define VER_LAMEXP_BUILD 9
#define VER_LAMEXP_SUFFIX TechPreview
/*