Merge branch '86Box:master' into translation_hu-HU

This commit is contained in:
Laci bá
2021-11-09 19:58:58 +01:00
committed by GitHub
3 changed files with 52 additions and 10 deletions

View File

@@ -129,6 +129,7 @@ extern void do_start(void);
extern void do_stop(void); extern void do_stop(void);
/* Internal platform support functions. */ /* Internal platform support functions. */
extern int has_language_changed(int id);
extern void set_language(int id); extern void set_language(int id);
extern int get_vidpause(void); extern int get_vidpause(void);
extern void show_cursor(int); extern void show_cursor(int);

View File

@@ -74,16 +74,16 @@ volatile int cpu_thread_run = 1;
/* Local data. */ /* Local data. */
static HANDLE thMain; static HANDLE thMain;
static rc_str_t *lpRCstr2048, static rc_str_t *lpRCstr2048 = NULL,
*lpRCstr4096, *lpRCstr4096 = NULL,
*lpRCstr4352, *lpRCstr4352 = NULL,
*lpRCstr4608, *lpRCstr4608 = NULL,
*lpRCstr5120, *lpRCstr5120 = NULL,
*lpRCstr5376, *lpRCstr5376 = NULL,
*lpRCstr5632, *lpRCstr5632 = NULL,
*lpRCstr5888, *lpRCstr5888 = NULL,
*lpRCstr6144, *lpRCstr6144 = NULL,
*lpRCstr7168; *lpRCstr7168 = NULL;
static int vid_api_inited = 0; static int vid_api_inited = 0;
static char *argbuf; static char *argbuf;
static int first_use = 1; static int first_use = 1;
@@ -139,11 +139,31 @@ win_log(const char *fmt, ...)
#endif #endif
free_string(rc_str_t **str)
{
if (*str != NULL) {
free(*str);
*str = NULL;
}
}
static void static void
LoadCommonStrings(void) LoadCommonStrings(void)
{ {
int i; int i;
free_string(&lpRCstr7168);
free_string(&lpRCstr6144);
free_string(&lpRCstr5888);
free_string(&lpRCstr5632);
free_string(&lpRCstr5376);
free_string(&lpRCstr5120);
free_string(&lpRCstr4608);
free_string(&lpRCstr4352);
free_string(&lpRCstr4096);
free_string(&lpRCstr2048);
lpRCstr2048 = (rc_str_t *)malloc(STR_NUM_2048*sizeof(rc_str_t)); lpRCstr2048 = (rc_str_t *)malloc(STR_NUM_2048*sizeof(rc_str_t));
lpRCstr4096 = (rc_str_t *)malloc(STR_NUM_4096*sizeof(rc_str_t)); lpRCstr4096 = (rc_str_t *)malloc(STR_NUM_4096*sizeof(rc_str_t));
lpRCstr4352 = (rc_str_t *)malloc(STR_NUM_4352*sizeof(rc_str_t)); lpRCstr4352 = (rc_str_t *)malloc(STR_NUM_4352*sizeof(rc_str_t));
@@ -221,6 +241,15 @@ size_t c16stombs(char dst[], const uint16_t src[], int len)
} }
int
has_language_changed(int id)
{
LCID lcidNew = MAKELCID(id, dwSubLangID);
return (lang_id != lcidNew);
}
/* Set (or re-set) the language for the application. */ /* Set (or re-set) the language for the application. */
void void
set_language(int id) set_language(int id)

View File

@@ -77,6 +77,9 @@
static int first_cat = 0; static int first_cat = 0;
static int dpi = 96; static int dpi = 96;
/* Language */
static int temp_language;
/* Machine category */ /* Machine category */
static int temp_machine_type, temp_machine, temp_cpu, temp_wait_states, temp_fpu, temp_sync; static int temp_machine_type, temp_machine, temp_cpu, temp_wait_states, temp_fpu, temp_sync;
static cpu_family_t *temp_cpu_f; static cpu_family_t *temp_cpu_f;
@@ -322,6 +325,9 @@ win_settings_init(void)
{ {
int i = 0; int i = 0;
/* Language */
// TODO: Set temp_language here.
/* Machine category */ /* Machine category */
temp_machine_type = machines[machine].type; temp_machine_type = machines[machine].type;
temp_machine = machine; temp_machine = machine;
@@ -447,6 +453,9 @@ win_settings_changed(void)
{ {
int i = 0, j = 0; int i = 0, j = 0;
/* Language */
// i = i || has_language_changed(temp_language);
/* Machine category */ /* Machine category */
i = i || (machine != temp_machine); i = i || (machine != temp_machine);
i = i || (cpu_f != temp_cpu_f); i = i || (cpu_f != temp_cpu_f);
@@ -537,6 +546,9 @@ win_settings_save(void)
pc_reset_hard_close(); pc_reset_hard_close();
/* Language */
// set_language(temp_language);
/* Machine category */ /* Machine category */
machine = temp_machine; machine = temp_machine;
cpu_f = temp_cpu_f; cpu_f = temp_cpu_f;