From 888fcfec489cae0202ceb0329d0c3687f0a6c4db Mon Sep 17 00:00:00 2001 From: joostverburg Date: Tue, 25 Nov 2003 18:11:23 +0000 Subject: [PATCH] version 0.31 * LZMA compression support * Fixed compression setting git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@3210 212acab6-be3b-0410-9dea-997c60f758d6 --- Contrib/zip2exe/Base.nsh | 6 ++++-- Contrib/zip2exe/main.cpp | 39 ++++++++++++++++++++++++++++++-------- Contrib/zip2exe/res.rc | 11 ++++++----- Contrib/zip2exe/resource.h | 2 ++ 4 files changed, 43 insertions(+), 15 deletions(-) diff --git a/Contrib/zip2exe/Base.nsh b/Contrib/zip2exe/Base.nsh index 1c2c15c4..25cc2f1b 100644 --- a/Contrib/zip2exe/Base.nsh +++ b/Contrib/zip2exe/Base.nsh @@ -5,10 +5,12 @@ OutFile "${ZIP2EXE_OUTFILE}" AllowRootDirInstall true -!ifdef ZIP2EXE_COMPERSSOR_ZLIB +!ifdef ZIP2EXE_COMPRESSOR_ZLIB SetCompressor zlib -!else ifdef ZIP2EXE_COMPERSSOR_BZIP2 +!else ifdef ZIP2EXE_COMPRESSOR_BZIP2 SetCompressor bzip2 +!else ifdef ZIP2EXE_COMPRESSOR_LZMA + SetCompressor lzma !endif !ifdef ZIP2EXE_INSTALLDIR diff --git a/Contrib/zip2exe/main.cpp b/Contrib/zip2exe/main.cpp index 0d5cf8fe..b5a42d95 100644 --- a/Contrib/zip2exe/main.cpp +++ b/Contrib/zip2exe/main.cpp @@ -1,9 +1,23 @@ #include #include #include -// version 0.3 (based on header files, improved interface, Modern UI support, new script code, improved folder detection) by Joost Verburg -// portions Copyright © 1999-2001 Miguel Garrido (mgarrido01@hotmail.com) +/* + +version 0.31 (by Joost Verburg) +* LZMA compression support +* Fixed compression setting + +version 0.31 (by Joost Verburg) +* Based on header files +* Improved interface +* Modern UI support +* New script code +* Immproved folder detection + +portions Copyright © 1999-2001 Miguel Garrido (mgarrido01@hotmail.com) + +*/ extern "C" { @@ -18,7 +32,7 @@ HWND g_hwnd; HANDLE g_hThread; char g_cmdline[1024]; int g_extracting; -int g_bzip2; +int g_compressor; int g_mui; int g_zipfile_size; @@ -430,7 +444,12 @@ void makeEXE(HWND hwndDlg) fprintf(fp,"!define ZIP2EXE_NAME `%s`\n",buf); GetDlgItemText(hwndDlg,IDC_OUTFILE,buf,sizeof(buf)); fprintf(fp,"!define ZIP2EXE_OUTFILE `%s`\n",buf); - fprintf(fp,"!define ZIP2EXE_COMPRESSOR_%s\n",g_bzip2?"BZIP2":"ZLIB"); + if (g_compressor == 1) + fprintf(fp,"!define ZIP2EXE_COMPRESSOR_ZLIB\n"); + if (g_compressor == 2) + fprintf(fp,"!define ZIP2EXE_COMPRESSOR_BZIP2\n"); + if (g_compressor == 3) + fprintf(fp,"!define ZIP2EXE_COMPRESSOR_LZMA\n"); GetDlgItemText(hwndDlg,IDC_INSTPATH,buf,sizeof(buf)); char *outpath = "$INSTDIR"; int iswinamp=0; @@ -525,7 +544,7 @@ void makeEXE(HWND hwndDlg) BOOL CALLBACK DlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { static int ids[]={IDC_INFO,IDC_NSISICON,IDC_SZIPFRAME,IDC_BROWSE,IDC_ZIPFILE,IDC_ZIPINFO_SUMMARY,IDC_ZIPINFO_FILES,IDC_OFRAME,IDC_INAMEST, - IDC_INSTNAME,IDC_INSTPATH,IDC_OEFST,IDC_OUTFILE,IDC_BROWSE2,IDC_COMPRESSOR,IDC_ZLIB,IDC_BZIP2,IDC_INTERFACE,IDC_MODERNUI,IDC_CLASSICUI}; + IDC_INSTNAME,IDC_INSTPATH,IDC_OEFST,IDC_OUTFILE,IDC_BROWSE2,IDC_COMPRESSOR,IDC_ZLIB,IDC_BZIP2,IDC_LZMA,IDC_INTERFACE,IDC_MODERNUI,IDC_CLASSICUI}; static HICON hIcon; static HFONT hFont; if (uMsg == WM_DESTROY) { if (hIcon) DeleteObject(hIcon); hIcon=0; if (hFont) DeleteObject(hFont); hFont=0; } @@ -533,7 +552,7 @@ BOOL CALLBACK DlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { case WM_INITDIALOG: g_hwnd=hwndDlg; - CheckDlgButton(hwndDlg,IDC_BZIP2,BST_CHECKED); + CheckDlgButton(hwndDlg,IDC_LZMA,BST_CHECKED); CheckDlgButton(hwndDlg,IDC_MODERNUI,BST_CHECKED); SendDlgItemMessage(hwndDlg,IDC_INSTPATH,CB_ADDSTRING,0,(LPARAM)gp_poi); SendDlgItemMessage(hwndDlg,IDC_INSTPATH,CB_ADDSTRING,0,(LPARAM)"$TEMP"); @@ -671,9 +690,13 @@ BOOL CALLBACK DlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { if (!made) { - g_bzip2=!IsDlgButtonChecked(hwndDlg,IDC_ZLIB); + if (IsDlgButtonChecked(hwndDlg,IDC_ZLIB)) + g_compressor = 1; + if (IsDlgButtonChecked(hwndDlg,IDC_BZIP2)) + g_compressor = 2; + if (IsDlgButtonChecked(hwndDlg,IDC_LZMA)) + g_compressor = 3; g_mui=!IsDlgButtonChecked(hwndDlg,IDC_CLASSICUI); - SetDlgItemText(g_hwnd, IDC_OUTPUTTEXT, ""); int x; for (x = 0; x < sizeof(ids)/sizeof(ids[0]); x ++) diff --git a/Contrib/zip2exe/res.rc b/Contrib/zip2exe/res.rc index bafa4752..61c314ec 100644 --- a/Contrib/zip2exe/res.rc +++ b/Contrib/zip2exe/res.rc @@ -29,7 +29,7 @@ LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US IDD_DIALOG1 DIALOGEX 0, 0, 360, 271 STYLE DS_SETFONT | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENU -CAPTION "Zip2Exe 0.3" +CAPTION "Zip2Exe 0.31" FONT 8, "MS Shell Dlg", 0, 0, 0x0 BEGIN ICON IDI_ICON1,IDC_NSISICON,6,6,20,20 @@ -57,14 +57,15 @@ BEGIN EDITTEXT IDC_OUTFILE,78,210,204,12,ES_AUTOHSCROLL PUSHBUTTON "&Browse...",IDC_BROWSE2,288,210,54,13 LTEXT "Compression",IDC_COMPRESSOR,18,228,42,8 - CONTROL "BZIP2",IDC_BZIP2,"Button",BS_AUTORADIOBUTTON,78,228,36, + CONTROL "LZMA",IDC_LZMA,"Button",BS_AUTORADIOBUTTON,78,228,36,10 + CONTROL "BZip2",IDC_BZIP2,"Button",BS_AUTORADIOBUTTON,132,228,36, + 10 + CONTROL "ZLib",IDC_ZLIB,"Button",BS_AUTORADIOBUTTON,186,228,30, 10 - CONTROL "ZLIB (Deflate)",IDC_ZLIB,"Button",BS_AUTORADIOBUTTON, - 132,228,60,10 DEFPUSHBUTTON "&Generate",IDOK,306,252,48,14,WS_DISABLED PUSHBUTTON "&Test",IDC_TEST,246,252,49,14,NOT WS_VISIBLE PUSHBUTTON "< &Back",IDC_BACK,6,252,48,14,NOT WS_VISIBLE - EDITTEXT IDC_OUTPUTTEXT,0,0,360,246,ES_MULTILINE | ES_AUTOVSCROLL | + EDITTEXT IDC_OUTPUTTEXT,0,0,359,246,ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_READONLY | NOT WS_VISIBLE | WS_VSCROLL | WS_HSCROLL END diff --git a/Contrib/zip2exe/resource.h b/Contrib/zip2exe/resource.h index f24b5009..7571e28e 100644 --- a/Contrib/zip2exe/resource.h +++ b/Contrib/zip2exe/resource.h @@ -30,6 +30,8 @@ #define IDC_CLASSICUI 1025 #define IDC_INFO 1026 #define IDC_NSISICON 1027 +#define IDC_BZIP3 1028 +#define IDC_LZMA 1028 // Next default values for new objects //