added support for solid compression selection

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@3995 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
kichik 2005-04-23 20:26:11 +00:00
parent 682c9c3f94
commit b4146d6085
4 changed files with 52 additions and 22 deletions

View file

@ -83,39 +83,57 @@ enum {
typedef enum {
COMPRESSOR_SCRIPT,
COMPRESSOR_ZLIB,
COMPRESSOR_ZLIB_SOLID,
COMPRESSOR_BZIP2,
COMPRESSOR_BZIP2_SOLID,
COMPRESSOR_LZMA,
COMPRESSOR_LZMA_SOLID,
COMPRESSOR_BEST,
} NCOMPRESSOR;
#ifdef MAKENSISW_CPP
char *compressor_names[] = {"",
"zlib",
"/SOLID zlib",
"bzip2",
"/SOLID bzip2",
"lzma",
"/SOLID lzma",
"Best"};
char *compressor_display_names[] = {"Defined in Script/Compiler Default",
"ZLIB",
"ZLIB (solid)",
"BZIP2",
"BZIP2 (solid)",
"LZMA",
"LZMA (solid)",
"Best Compressor"};
WORD compressor_commands[] = {IDM_SCRIPT,
IDM_ZLIB,
IDM_ZLIB_SOLID,
IDM_BZIP2,
IDM_BZIP2_SOLID,
IDM_LZMA,
IDM_LZMA_SOLID,
IDM_BEST};
#endif
#ifdef TOOLBAR_CPP
int compressor_bitmaps[] = {IDB_COMPRESSOR_SCRIPT,
IDB_COMPRESSOR_ZLIB,
IDB_COMPRESSOR_BZIP2,
IDB_COMPRESSOR_LZMA,
int compressor_bitmaps[] = {IDB_COMPRESSOR_SCRIPT,
IDB_COMPRESSOR_ZLIB,
IDB_COMPRESSOR_ZLIB,
IDB_COMPRESSOR_BZIP2,
IDB_COMPRESSOR_BZIP2,
IDB_COMPRESSOR_LZMA,
IDB_COMPRESSOR_LZMA,
IDB_COMPRESSOR_BEST};
int compressor_strings[] = {IDS_SCRIPT,
IDS_ZLIB,
IDS_BZIP2,
IDS_LZMA,
int compressor_strings[] = {IDS_SCRIPT,
IDS_ZLIB,
IDS_ZLIB_SOLID,
IDS_BZIP2,
IDS_BZIP2_SOLID,
IDS_LZMA,
IDS_LZMA_SOLID,
IDS_BEST};
#endif

View file

@ -23,10 +23,13 @@
#define IDS_DOCS 17
#define IDS_SCRIPT 18
#define IDS_ZLIB 19
#define IDS_BZIP2 20
#define IDS_RECOMPILE_TEST 21
#define IDS_BEST 22
#define IDS_LZMA 23
#define IDS_ZLIB_SOLID 20
#define IDS_BZIP2 21
#define IDS_BZIP2_SOLID 22
#define IDS_RECOMPILE_TEST 23
#define IDS_BEST 24
#define IDS_LZMA 25
#define IDS_LZMA_SOLID 26
#define DLG_MAIN 101
#define IDI_ICON 102
#define DLG_ABOUT 103
@ -82,20 +85,23 @@
#define IDM_NSISUPDATE 40018
#define IDM_SCRIPT 40020
#define IDM_ZLIB 40021
#define IDM_BZIP2 40022
#define IDM_MRU_FILE 40023
#define IDM_CLEAR_MRU_LIST 40029
#define IDM_RECOMPILE_TEST 40030
#define IDM_BEST 40031
#define IDM_LZMA 40032
#define IDM_SETTINGS 40033
#define IDM_ZLIB_SOLID 40022
#define IDM_BZIP2 40023
#define IDM_BZIP2_SOLID 40024
#define IDM_LZMA 40025
#define IDM_LZMA_SOLID 40026
#define IDM_MRU_FILE 40027
#define IDM_CLEAR_MRU_LIST 40032
#define IDM_RECOMPILE_TEST 40033
#define IDM_BEST 40034
#define IDM_SETTINGS 40035
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 133
#define _APS_NEXT_COMMAND_VALUE 40034
#define _APS_NEXT_COMMAND_VALUE 40036
#define _APS_NEXT_CONTROL_VALUE 1032
#define _APS_NEXT_SYMED_VALUE 101
#endif

View file

@ -93,8 +93,11 @@ BEGIN
BEGIN
MENUITEM "&Defined in Script/Compiler Default", IDM_SCRIPT
MENUITEM "&ZLIB", IDM_ZLIB
MENUITEM "ZLIB (solid)", IDM_ZLIB_SOLID
MENUITEM "BZI&P2", IDM_BZIP2
MENUITEM "BZIP2 (solid)", IDM_BZIP2_SOLID
MENUITEM "&LZMA", IDM_LZMA
MENUITEM "LZMA (solid)", IDM_LZMA_SOLID
MENUITEM "&Best Compressor", IDM_BEST
END
MENUITEM SEPARATOR
@ -329,10 +332,13 @@ BEGIN
IDS_DOCS "NSIS Users Manual"
IDS_SCRIPT "Defined in Script/Compiler Default"
IDS_ZLIB "ZLIB"
IDS_ZLIB_SOLID "ZLIB (solid)"
IDS_BZIP2 "BZIP2"
IDS_BZIP2_SOLID "BZIP2 (solid)"
IDS_RECOMPILE_TEST "Recompile and Test"
IDS_BEST "Best Compressor"
IDS_LZMA "LZMA"
IDS_LZMA_SOLID "LZMA (solid)"
END
#endif // English (U.S.) resources

View file

@ -140,13 +140,13 @@ void UpdateToolBarCompressorButton()
sizeof(temp));
my_memset(szBuffer, 0, sizeof(szBuffer));
lstrcat(szBuffer,temp);
lstrcat(szBuffer," (");
lstrcat(szBuffer," [");
LoadString(g_sdata.hInstance,
iString,
temp,
sizeof(temp));
lstrcat(szBuffer,temp);
lstrcat(szBuffer,")");
lstrcat(szBuffer,"]");
SendMessage(g_toolbar.hwnd, TB_CHANGEBITMAP, (WPARAM) IDM_COMPRESSOR, (LPARAM) MAKELPARAM(iBitmap, 0));