Added SetLanguage ($LANGUAGE is no longer a variable)
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@738 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
df33a31178
commit
d6c4b8ac50
4 changed files with 16 additions and 5 deletions
|
@ -1419,6 +1419,9 @@ static int NSISCALL ExecuteEntry(entry *entries, int pos)
|
|||
)
|
||||
);
|
||||
return 0;
|
||||
case EW_SETLANG:
|
||||
set_language(process_string_fromtab_toint(parms[0]));
|
||||
return 0;
|
||||
}
|
||||
my_MessageBox(STR(LANG_INSTCORRUPTED),MB_OK|MB_ICONSTOP);
|
||||
return EXEC_ERROR;
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
extern char g_usrvars[25][NSIS_MAX_STRLEN];
|
||||
extern char g_usrvars[24][NSIS_MAX_STRLEN];
|
||||
#define state_command_line (g_usrvars[20])
|
||||
#define state_install_directory (g_usrvars[21])
|
||||
#define state_output_directory (g_usrvars[22])
|
||||
#define state_exe_directory (g_usrvars[23])
|
||||
#define state_language (g_usrvars[24])
|
||||
|
||||
extern char g_caption[NSIS_MAX_STRLEN*2];
|
||||
extern HWND g_hwnd;
|
||||
|
|
|
@ -16,7 +16,7 @@ char g_log_file[1024];
|
|||
extern char plugins_temp_dir[NSIS_MAX_STRLEN];
|
||||
#endif
|
||||
|
||||
char g_usrvars[25][NSIS_MAX_STRLEN];
|
||||
char g_usrvars[24][NSIS_MAX_STRLEN];
|
||||
|
||||
HANDLE g_hInstance;
|
||||
|
||||
|
@ -486,10 +486,13 @@ void NSISCALL process_string(char *out, const char *in)
|
|||
case VAR_CODES_START + 22: // INSTDIR
|
||||
case VAR_CODES_START + 23: // OUTDIR
|
||||
case VAR_CODES_START + 24: // EXEDIR
|
||||
case VAR_CODES_START + 25: // LANGUAGE
|
||||
mystrcpy(out, g_usrvars[nVarIdx - (VAR_CODES_START + 1)]);
|
||||
break;
|
||||
|
||||
case VAR_CODES_START + 25: // LANGUAGE
|
||||
wsprintf(out, "%u", cur_common_strings_table->lang_id);
|
||||
break;
|
||||
|
||||
case VAR_CODES_START + 26: // PROGRAMFILES
|
||||
myRegGetStr(HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion", "ProgramFilesDir", out);
|
||||
if (!*out)
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
|
||||
static const char *usrvars="$0\0$1\0$2\0$3\0$4\0$5\0$6\0$7\0$8\0$9\0"
|
||||
"$R0\0$R1\0$R2\0$R3\0$R4\0$R5\0$R6\0$R7\0$R8\0$R9\0"
|
||||
"$CMDLINE\0$INSTDIR\0$OUTDIR\0$EXEDIR\0$LANGUAGE\0";
|
||||
"$CMDLINE\0$INSTDIR\0$OUTDIR\0$EXEDIR\0";
|
||||
|
||||
|
||||
int CEXEBuild::process_script(FILE *fp, char *curfilename, int *lineptr)
|
||||
|
@ -2216,6 +2216,7 @@ int CEXEBuild::doCommand(int which_token, LineParser &line, FILE *fp, const char
|
|||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
ent.offsets[1]=GWL_USERDATA;
|
||||
ent.offsets[2]=add_string(line.gettoken_str(2));
|
||||
SCRIPT_MSG("SetStaticBkColor: handle=%s color=%s\n",line.gettoken_str(1),line.gettoken_str(2));
|
||||
return add_entry(&ent);
|
||||
#else//!NSIS_SUPPORT_HWNDS
|
||||
case TOK_ISWINDOW:
|
||||
|
@ -3350,6 +3351,11 @@ int CEXEBuild::doCommand(int which_token, LineParser &line, FILE *fp, const char
|
|||
}
|
||||
SCRIPT_MSG("\n");
|
||||
return add_entry(&ent);
|
||||
case TOK_SETLANG:
|
||||
ent.which=EW_SETLANG;
|
||||
ent.offsets[0]=add_string(line.gettoken_str(1));
|
||||
SCRIPT_MSG("SetLanguage: language=%s", line.gettoken_str(1));
|
||||
return add_entry(&ent);
|
||||
|
||||
// end of instructions
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue