From 9a96d6b2fb9be6d64059f9f1e06bb8030cca3eed Mon Sep 17 00:00:00 2001 From: Dimitris Panokostas Date: Fri, 20 Sep 2019 18:39:27 +0200 Subject: [PATCH] Fixed config settings would not get applied after changing a config and resetting --- src/osdep/amiberry_gfx.cpp | 4 +- src/osdep/amiberry_gui.cpp | 36 ++-- src/osdep/gui/CreateFilesysHardfile.cpp | 2 +- src/osdep/gui/EditFilesysHardfile.cpp | 6 +- src/osdep/gui/EditFilesysVirtual.cpp | 6 +- src/osdep/gui/PanelCPU.cpp | 140 ++++++++-------- src/osdep/gui/PanelChipset.cpp | 60 +++---- src/osdep/gui/PanelConfig.cpp | 14 +- src/osdep/gui/PanelCustom.cpp | 42 ++--- src/osdep/gui/PanelDisplay.cpp | 74 ++++----- src/osdep/gui/PanelFloppy.cpp | 68 ++++---- src/osdep/gui/PanelHD.cpp | 74 ++++----- src/osdep/gui/PanelInput.cpp | 96 +++++------ src/osdep/gui/PanelMisc.cpp | 60 +++---- src/osdep/gui/PanelOnScreen.cpp | 208 ++++++++++++------------ src/osdep/gui/PanelQuickstart.cpp | 116 ++++++------- src/osdep/gui/PanelRAM.cpp | 50 +++--- src/osdep/gui/PanelROM.cpp | 22 +-- src/osdep/gui/PanelSound.cpp | 76 ++++----- src/osdep/gui/gui_handling.h | 2 - 20 files changed, 570 insertions(+), 586 deletions(-) diff --git a/src/osdep/amiberry_gfx.cpp b/src/osdep/amiberry_gfx.cpp index 590c1cc9..53b2fedb 100644 --- a/src/osdep/amiberry_gfx.cpp +++ b/src/osdep/amiberry_gfx.cpp @@ -740,7 +740,7 @@ int check_prefs_changed_gfx() int lockscr() { - if (SDL_MUSTLOCK(screen)) + if (screen && SDL_MUSTLOCK(screen)) SDL_LockSurface(screen); init_row_map(); return 1; @@ -749,7 +749,7 @@ int lockscr() void unlockscr() { - if (SDL_MUSTLOCK(screen)) + if (screen && SDL_MUSTLOCK(screen)) SDL_UnlockSurface(screen); } diff --git a/src/osdep/amiberry_gui.cpp b/src/osdep/amiberry_gui.cpp index ac634bf9..1e5f06e4 100644 --- a/src/osdep/amiberry_gui.cpp +++ b/src/osdep/amiberry_gui.cpp @@ -34,7 +34,6 @@ #endif int emulating = 0; -struct uae_prefs workprefs; struct gui_msg { @@ -350,7 +349,7 @@ ConfigFileInfo* SearchConfigInList(const char* name) static void clearallkeys (void) { - inputdevice_updateconfig (&changed_prefs, &currprefs); + inputdevice_updateconfig (NULL, &changed_prefs); } void setmouseactive(int active) @@ -363,40 +362,22 @@ void setmouseactive(int active) } } -static void prefs_to_gui(struct uae_prefs *p) +static void prefs_to_gui() { - default_prefs(&workprefs, false, 0); - copy_prefs(p, &workprefs); /* filesys hack */ changed_prefs.mountitems = currprefs.mountitems; memcpy(&changed_prefs.mountconfig, &currprefs.mountconfig, MOUNT_CONFIG_SIZE * sizeof(struct uaedev_config_info)); - set_config_changed (); } static void gui_to_prefs(void) { - /* Always copy our prefs to changed_prefs, ... */ - copy_prefs(&workprefs, &changed_prefs); /* filesys hack */ currprefs.mountitems = changed_prefs.mountitems; memcpy(&currprefs.mountconfig, &changed_prefs.mountconfig, MOUNT_CONFIG_SIZE * sizeof(struct uaedev_config_info)); fixup_prefs(&changed_prefs, true); } -static void get_settings(void) -{ - memset (&workprefs, 0, sizeof (struct uae_prefs)); - prefs_to_gui(&changed_prefs); - - run_gui(); - gui_to_prefs(); - - if(quit_program) - screen_is_picasso = 0; - - update_display(&changed_prefs); -} static void after_leave_gui() { @@ -428,15 +409,17 @@ int gui_init() if (lstAvailableROMs.empty()) RescanROMs(); - get_settings(); - + prefs_to_gui(); + run_gui(); + gui_to_prefs(); if (quit_program < 0) quit_program = -quit_program; if (quit_program == UAE_QUIT) ret = -2; // Quit without start of emulator inputdevice_acquire (TRUE); - + update_display(&changed_prefs); + after_leave_gui(); emulating = 1; return ret; @@ -523,12 +506,15 @@ void gui_display(int shortcut) graphics_subshutdown(); - get_settings(); + prefs_to_gui(); + run_gui(); + gui_to_prefs(); black_screen_now(); gui_update (); gui_purge_events(); + update_display(&changed_prefs); reset_sound(); after_leave_gui(); diff --git a/src/osdep/gui/CreateFilesysHardfile.cpp b/src/osdep/gui/CreateFilesysHardfile.cpp index 50faf0ff..ca1a8bd9 100644 --- a/src/osdep/gui/CreateFilesysHardfile.cpp +++ b/src/osdep/gui/CreateFilesysHardfile.cpp @@ -404,7 +404,7 @@ bool CreateFilesysHardfile() ci.controller_media_type = 0; ci.unit_feature_level = 1; ci.readonly = false; - const auto uci = add_filesys_config(&workprefs, -1, &ci); + const auto uci = add_filesys_config(&changed_prefs, -1, &ci); if (uci) { const auto hfd = get_hardfile_data(uci->configoffset); diff --git a/src/osdep/gui/EditFilesysHardfile.cpp b/src/osdep/gui/EditFilesysHardfile.cpp index 02f103be..c2f7125e 100644 --- a/src/osdep/gui/EditFilesysHardfile.cpp +++ b/src/osdep/gui/EditFilesysHardfile.cpp @@ -529,9 +529,9 @@ bool EditFilesysHardfile(const int unit_no) if (unit_no >= 0) { - uci = &workprefs.mountconfig[unit_no]; + uci = &changed_prefs.mountconfig[unit_no]; const auto ci = &uci->ci; - get_filesys_unitconfig(&workprefs, unit_no, &mi); + get_filesys_unitconfig(&changed_prefs, unit_no, &mi); strdevname.assign(ci->devname); txtDevice->setText(strdevname); @@ -614,7 +614,7 @@ bool EditFilesysHardfile(const int unit_no) ci.bootpri = bp; ci.physical_geometry = hardfile_testrdb(ci.rootdir); - uci = add_filesys_config(&workprefs, unit_no, &ci); + uci = add_filesys_config(&changed_prefs, unit_no, &ci); if (uci) { const auto hfd = get_hardfile_data(uci->configoffset); diff --git a/src/osdep/gui/EditFilesysVirtual.cpp b/src/osdep/gui/EditFilesysVirtual.cpp index 78cb12b5..74b57527 100644 --- a/src/osdep/gui/EditFilesysVirtual.cpp +++ b/src/osdep/gui/EditFilesysVirtual.cpp @@ -357,9 +357,9 @@ bool EditFilesysVirtual(const int unit_no) if (unit_no >= 0) { - uci = &workprefs.mountconfig[unit_no]; + uci = &changed_prefs.mountconfig[unit_no]; const auto ci = &uci->ci; - get_filesys_unitconfig(&workprefs, unit_no, &mi); + get_filesys_unitconfig(&changed_prefs, unit_no, &mi); strdevname.assign(ci->devname); txtDevice->setText(strdevname); @@ -407,7 +407,7 @@ bool EditFilesysVirtual(const int unit_no) ci.readonly = !chkReadWrite->isSelected(); ci.bootpri = bp; - uci = add_filesys_config(&workprefs, unit_no, &ci); + uci = add_filesys_config(&changed_prefs, unit_no, &ci); if (uci) { filesys_media_change (ci.rootdir, 1, uci); diff --git a/src/osdep/gui/PanelCPU.cpp b/src/osdep/gui/PanelCPU.cpp index e4d8d076..b8935e63 100644 --- a/src/osdep/gui/PanelCPU.cpp +++ b/src/osdep/gui/PanelCPU.cpp @@ -51,45 +51,45 @@ public: { if (actionEvent.getSource() == optCPU68000) { - workprefs.cpu_model = 68000; - workprefs.fpu_model = 0; - workprefs.address_space_24 = true; - workprefs.z3fastmem[0].size = 0; - workprefs.rtgboards[0].rtgmem_size = 0; - workprefs.cachesize = 0; - workprefs.compfpu = false; + changed_prefs.cpu_model = 68000; + changed_prefs.fpu_model = 0; + changed_prefs.address_space_24 = true; + changed_prefs.z3fastmem[0].size = 0; + changed_prefs.rtgboards[0].rtgmem_size = 0; + changed_prefs.cachesize = 0; + changed_prefs.compfpu = false; } else if (actionEvent.getSource() == optCPU68010) { - workprefs.cpu_model = 68010; - workprefs.fpu_model = 0; - workprefs.address_space_24 = true; - workprefs.z3fastmem[0].size = 0; - workprefs.rtgboards[0].rtgmem_size = 0; - workprefs.cachesize = 0; - workprefs.compfpu = false; + changed_prefs.cpu_model = 68010; + changed_prefs.fpu_model = 0; + changed_prefs.address_space_24 = true; + changed_prefs.z3fastmem[0].size = 0; + changed_prefs.rtgboards[0].rtgmem_size = 0; + changed_prefs.cachesize = 0; + changed_prefs.compfpu = false; } else if (actionEvent.getSource() == optCPU68020) { - workprefs.cpu_model = 68020; - if (workprefs.fpu_model == 68040) - workprefs.fpu_model = 68881; - workprefs.cpu_compatible = false; + changed_prefs.cpu_model = 68020; + if (changed_prefs.fpu_model == 68040) + changed_prefs.fpu_model = 68881; + changed_prefs.cpu_compatible = false; } else if (actionEvent.getSource() == optCPU68030) { - workprefs.cpu_model = 68030; - if (workprefs.fpu_model == 68040) - workprefs.fpu_model = 68881; - workprefs.address_space_24 = false; - workprefs.cpu_compatible = false; + changed_prefs.cpu_model = 68030; + if (changed_prefs.fpu_model == 68040) + changed_prefs.fpu_model = 68881; + changed_prefs.address_space_24 = false; + changed_prefs.cpu_compatible = false; } else if (actionEvent.getSource() == optCPU68040) { - workprefs.cpu_model = 68040; - workprefs.fpu_model = 68040; - workprefs.address_space_24 = false; - workprefs.cpu_compatible = false; + changed_prefs.cpu_model = 68040; + changed_prefs.fpu_model = 68040; + changed_prefs.address_space_24 = false; + changed_prefs.cpu_compatible = false; } RefreshPanelCPU(); RefreshPanelRAM(); @@ -105,19 +105,19 @@ public: { if (actionEvent.getSource() == optFPUnone) { - workprefs.fpu_model = 0; + changed_prefs.fpu_model = 0; } else if (actionEvent.getSource() == optFPU68881) { - workprefs.fpu_model = 68881; + changed_prefs.fpu_model = 68881; } else if (actionEvent.getSource() == optFPU68882) { - workprefs.fpu_model = 68882; + changed_prefs.fpu_model = 68882; } else if (actionEvent.getSource() == optFPUinternal) { - workprefs.fpu_model = 68040; + changed_prefs.fpu_model = 68040; } RefreshPanelCPU(); RefreshPanelRAM(); @@ -133,15 +133,15 @@ public: void action(const gcn::ActionEvent& actionEvent) override { if (actionEvent.getSource() == opt7Mhz) - workprefs.m68k_speed = M68K_SPEED_7MHZ_CYCLES; + changed_prefs.m68k_speed = M68K_SPEED_7MHZ_CYCLES; else if (actionEvent.getSource() == opt14Mhz) - workprefs.m68k_speed = M68K_SPEED_14MHZ_CYCLES; + changed_prefs.m68k_speed = M68K_SPEED_14MHZ_CYCLES; else if (actionEvent.getSource() == opt28Mhz) - workprefs.m68k_speed = M68K_SPEED_25MHZ_CYCLES; + changed_prefs.m68k_speed = M68K_SPEED_25MHZ_CYCLES; else if (actionEvent.getSource() == optFastest) - workprefs.m68k_speed = -1; + changed_prefs.m68k_speed = -1; else if (actionEvent.getSource() == optTurbo) - workprefs.m68k_speed = -30; + changed_prefs.m68k_speed = -30; } }; @@ -153,7 +153,7 @@ class CPU24BitActionListener : public gcn::ActionListener public: void action(const gcn::ActionEvent& actionEvent) override { - workprefs.address_space_24 = chk24Bit->isSelected(); + changed_prefs.address_space_24 = chk24Bit->isSelected(); RefreshPanelCPU(); } }; @@ -167,12 +167,12 @@ public: { if (chkCPUCompatible->isSelected()) { - workprefs.cpu_compatible = true; - workprefs.cachesize = 0; + changed_prefs.cpu_compatible = true; + changed_prefs.cachesize = 0; } else { - workprefs.cpu_compatible = false; + changed_prefs.cpu_compatible = false; } RefreshPanelCPU(); } @@ -190,19 +190,19 @@ public: { if (chkJIT->isSelected()) { - workprefs.cpu_compatible = false; - workprefs.cachesize = MAX_JIT_CACHE; - workprefs.compfpu = true; + changed_prefs.cpu_compatible = false; + changed_prefs.cachesize = MAX_JIT_CACHE; + changed_prefs.compfpu = true; } else { - workprefs.cachesize = 0; - workprefs.compfpu = false; + changed_prefs.cachesize = 0; + changed_prefs.compfpu = false; } } else if (actionEvent.getSource() == chkFPUJIT) { - workprefs.compfpu = chkFPUJIT->isSelected(); + changed_prefs.compfpu = chkFPUJIT->isSelected(); } RefreshPanelCPU(); } @@ -216,7 +216,7 @@ public: void action(const gcn::ActionEvent& actionEvent) override { if (actionEvent.getSource() == chkFPUstrict) { - workprefs.fpu_strict = chkFPUstrict->isSelected(); + changed_prefs.fpu_strict = chkFPUstrict->isSelected(); } RefreshPanelCPU(); @@ -380,25 +380,25 @@ void ExitPanelCPU() void RefreshPanelCPU() { - if (workprefs.cpu_model == 68000) + if (changed_prefs.cpu_model == 68000) optCPU68000->setSelected(true); - else if (workprefs.cpu_model == 68010) + else if (changed_prefs.cpu_model == 68010) optCPU68010->setSelected(true); - else if (workprefs.cpu_model == 68020) + else if (changed_prefs.cpu_model == 68020) optCPU68020->setSelected(true); - else if (workprefs.cpu_model == 68030) + else if (changed_prefs.cpu_model == 68030) optCPU68030->setSelected(true); - else if (workprefs.cpu_model == 68040) + else if (changed_prefs.cpu_model == 68040) optCPU68040->setSelected(true); - chk24Bit->setSelected(workprefs.address_space_24); - chk24Bit->setEnabled(workprefs.cpu_model == 68020); - chkCPUCompatible->setSelected(workprefs.cpu_compatible > 0); - chkCPUCompatible->setEnabled(workprefs.cpu_model <= 68010); - chkJIT->setEnabled(workprefs.cpu_model > 68010); - chkJIT->setSelected(workprefs.cachesize > 0); + chk24Bit->setSelected(changed_prefs.address_space_24); + chk24Bit->setEnabled(changed_prefs.cpu_model == 68020); + chkCPUCompatible->setSelected(changed_prefs.cpu_compatible > 0); + chkCPUCompatible->setEnabled(changed_prefs.cpu_model <= 68010); + chkJIT->setEnabled(changed_prefs.cpu_model > 68010); + chkJIT->setSelected(changed_prefs.cachesize > 0); - switch (workprefs.fpu_model) + switch (changed_prefs.fpu_model) { case 68881: optFPU68881->setSelected(true); @@ -413,29 +413,29 @@ void RefreshPanelCPU() optFPUnone->setSelected(true); break; } - optFPU68881->setEnabled(workprefs.cpu_model >= 68020 && workprefs.cpu_model < 68040); - optFPU68882->setEnabled(workprefs.cpu_model >= 68020 && workprefs.cpu_model < 68040); - optFPUinternal->setEnabled(workprefs.cpu_model == 68040); + optFPU68881->setEnabled(changed_prefs.cpu_model >= 68020 && changed_prefs.cpu_model < 68040); + optFPU68882->setEnabled(changed_prefs.cpu_model >= 68020 && changed_prefs.cpu_model < 68040); + optFPUinternal->setEnabled(changed_prefs.cpu_model == 68040); - chkFPUstrict->setSelected(workprefs.fpu_strict); + chkFPUstrict->setSelected(changed_prefs.fpu_strict); #ifdef USE_JIT_FPU - chkFPUJIT->setEnabled(workprefs.cachesize > 0); - chkFPUJIT->setSelected(workprefs.compfpu); + chkFPUJIT->setEnabled(changed_prefs.cachesize > 0); + chkFPUJIT->setSelected(changed_prefs.compfpu); #else chkFPUJIT->setSelected(false); chkFPUJIT->setEnabled(false); #endif - if (workprefs.m68k_speed == M68K_SPEED_7MHZ_CYCLES) + if (changed_prefs.m68k_speed == M68K_SPEED_7MHZ_CYCLES) opt7Mhz->setSelected(true); - else if (workprefs.m68k_speed == M68K_SPEED_14MHZ_CYCLES) + else if (changed_prefs.m68k_speed == M68K_SPEED_14MHZ_CYCLES) opt14Mhz->setSelected(true); - else if (workprefs.m68k_speed == M68K_SPEED_25MHZ_CYCLES) + else if (changed_prefs.m68k_speed == M68K_SPEED_25MHZ_CYCLES) opt28Mhz->setSelected(true); - else if (workprefs.m68k_speed == -1) + else if (changed_prefs.m68k_speed == -1) optFastest->setSelected(true); - else if (workprefs.m68k_speed == -30) + else if (changed_prefs.m68k_speed == -30) optTurbo->setSelected(true); } diff --git a/src/osdep/gui/PanelChipset.cpp b/src/osdep/gui/PanelChipset.cpp index e7b0a592..c27b6166 100644 --- a/src/osdep/gui/PanelChipset.cpp +++ b/src/osdep/gui/PanelChipset.cpp @@ -101,9 +101,9 @@ public: // Chipset selected //--------------------------------------- const auto cs = chipsets[cboChipset->getSelected()].compatible; - if (workprefs.cs_compatible != cs) { - workprefs.cs_compatible = cs; - built_in_chipset_prefs(&workprefs); + if (changed_prefs.cs_compatible != cs) { + changed_prefs.cs_compatible = cs; + built_in_chipset_prefs(&changed_prefs); RefreshPanelChipset(); } } @@ -118,13 +118,13 @@ public: void action(const gcn::ActionEvent& actionEvent) override { if (actionEvent.getSource() == optOCS) - workprefs.chipset_mask = 0; + changed_prefs.chipset_mask = 0; else if (actionEvent.getSource() == optECSAgnus) - workprefs.chipset_mask = CSMASK_ECS_AGNUS; + changed_prefs.chipset_mask = CSMASK_ECS_AGNUS; else if (actionEvent.getSource() == optECS) - workprefs.chipset_mask = CSMASK_ECS_AGNUS | CSMASK_ECS_DENISE; + changed_prefs.chipset_mask = CSMASK_ECS_AGNUS | CSMASK_ECS_DENISE; else - workprefs.chipset_mask = CSMASK_ECS_AGNUS | CSMASK_ECS_DENISE | CSMASK_AGA; + changed_prefs.chipset_mask = CSMASK_ECS_AGNUS | CSMASK_ECS_DENISE | CSMASK_AGA; } }; @@ -138,13 +138,13 @@ public: { if (chkNTSC->isSelected()) { - workprefs.ntscmode = true; - workprefs.chipset_refreshrate = 60; + changed_prefs.ntscmode = true; + changed_prefs.chipset_refreshrate = 60; } else { - workprefs.ntscmode = false; - workprefs.chipset_refreshrate = 50; + changed_prefs.ntscmode = false; + changed_prefs.chipset_refreshrate = 50; } RefreshPanelQuickstart(); } @@ -158,7 +158,7 @@ class FastCopperActionListener : public gcn::ActionListener public: void action(const gcn::ActionEvent& actionEvent) override { - workprefs.fast_copper = chkFastCopper->isSelected(); + changed_prefs.fast_copper = chkFastCopper->isSelected(); } }; static FastCopperActionListener* fastCopperActionListener; @@ -169,8 +169,8 @@ class BlitterButtonActionListener : public gcn::ActionListener public: void action(const gcn::ActionEvent& actionEvent) override { - workprefs.immediate_blits = optBlitImmed->isSelected(); - workprefs.waiting_blits = optBlitWait->isSelected(); + changed_prefs.immediate_blits = optBlitImmed->isSelected(); + changed_prefs.waiting_blits = optBlitWait->isSelected(); } }; @@ -183,13 +183,13 @@ public: void action(const gcn::ActionEvent& actionEvent) override { if (actionEvent.getSource() == optCollNone) - workprefs.collision_level = 0; + changed_prefs.collision_level = 0; else if (actionEvent.getSource() == optCollSprites) - workprefs.collision_level = 1; + changed_prefs.collision_level = 1; else if (actionEvent.getSource() == optCollPlayfield) - workprefs.collision_level = 2; + changed_prefs.collision_level = 2; else - workprefs.collision_level = 3; + changed_prefs.collision_level = 3; } }; @@ -350,7 +350,7 @@ void RefreshPanelChipset() bIgnoreListChange = true; auto idx = 0; for (auto i = 0; isetSelected(idx); bIgnoreListChange = false; - if (workprefs.chipset_mask == 0) + if (changed_prefs.chipset_mask == 0) optOCS->setSelected(true); - else if (workprefs.chipset_mask == CSMASK_ECS_AGNUS) + else if (changed_prefs.chipset_mask == CSMASK_ECS_AGNUS) optECSAgnus->setSelected(true); - else if (workprefs.chipset_mask == (CSMASK_ECS_AGNUS | CSMASK_ECS_DENISE)) + else if (changed_prefs.chipset_mask == (CSMASK_ECS_AGNUS | CSMASK_ECS_DENISE)) optECS->setSelected(true); - else if (workprefs.chipset_mask == (CSMASK_ECS_AGNUS | CSMASK_ECS_DENISE | CSMASK_AGA)) + else if (changed_prefs.chipset_mask == (CSMASK_ECS_AGNUS | CSMASK_ECS_DENISE | CSMASK_AGA)) optAGA->setSelected(true); - chkNTSC->setSelected(workprefs.ntscmode); + chkNTSC->setSelected(changed_prefs.ntscmode); - if (workprefs.immediate_blits) + if (changed_prefs.immediate_blits) optBlitImmed->setSelected(true); - else if (workprefs.waiting_blits) + else if (changed_prefs.waiting_blits) optBlitWait->setSelected(true); else optBlitNormal->setSelected(true); - chkFastCopper->setSelected(workprefs.fast_copper); + chkFastCopper->setSelected(changed_prefs.fast_copper); - if (workprefs.collision_level == 0) + if (changed_prefs.collision_level == 0) optCollNone->setSelected(true); - else if (workprefs.collision_level == 1) + else if (changed_prefs.collision_level == 1) optCollSprites->setSelected(true); - else if (workprefs.collision_level == 2) + else if (changed_prefs.collision_level == 2) optCollPlayfield->setSelected(true); else optCollFull->setSelected(true); diff --git a/src/osdep/gui/PanelConfig.cpp b/src/osdep/gui/PanelConfig.cpp index a4e1b9ce..1700afa7 100644 --- a/src/osdep/gui/PanelConfig.cpp +++ b/src/osdep/gui/PanelConfig.cpp @@ -48,7 +48,7 @@ bool LoadConfigByName(const char *name) { txtName->setText(config->Name); txtDesc->setText(config->Description); - target_cfgfile_load(&workprefs, config->FullPath, 0, 0); + target_cfgfile_load(&changed_prefs, config->FullPath, 0, 0); strncpy(last_active_config, config->Name, MAX_DPATH); DisableResume(); RefreshAllPanels(); @@ -121,13 +121,13 @@ public: if (emulating) { DisableResume(); - target_cfgfile_load(&workprefs, ConfigFilesList[i]->FullPath, 0, 0); + target_cfgfile_load(&changed_prefs, ConfigFilesList[i]->FullPath, 0, 0); strncpy(last_active_config, ConfigFilesList[i]->Name, MAX_DPATH); RefreshAllPanels(); } else { - target_cfgfile_load(&workprefs, ConfigFilesList[i]->FullPath, 0, 0); + target_cfgfile_load(&changed_prefs, ConfigFilesList[i]->FullPath, 0, 0); strncpy(last_active_config, ConfigFilesList[i]->Name, MAX_DPATH); RefreshAllPanels(); } @@ -143,8 +143,8 @@ public: fetch_configurationpath(filename, MAX_DPATH); strncat(filename, txtName->getText().c_str(), MAX_DPATH - 1); strncat(filename, ".uae", MAX_DPATH - 1); - strncpy(workprefs.description, txtDesc->getText().c_str(), 256); - if (cfgfile_save(&workprefs, filename, 0)) + strncpy(changed_prefs.description, txtDesc->getText().c_str(), 256); + if (cfgfile_save(&changed_prefs, filename, 0)) RefreshPanelConfig(); } } @@ -198,7 +198,7 @@ public: //----------------------------------------------- // Second click on selected config -> Load it and start emulation // ---------------------------------------------- - target_cfgfile_load(&workprefs, ConfigFilesList[selected_item]->FullPath, 0, 0); + target_cfgfile_load(&changed_prefs, ConfigFilesList[selected_item]->FullPath, 0, 0); strncpy(last_active_config, ConfigFilesList[selected_item]->Name, MAX_DPATH); if (emulating) @@ -303,7 +303,7 @@ void InitPanelConfig(const struct _ConfigCategory& category) } } txtName->setText(last_active_config); - txtDesc->setText(workprefs.description); + txtDesc->setText(changed_prefs.description); ensureVisible = -1; RefreshPanelConfig(); } diff --git a/src/osdep/gui/PanelCustom.cpp b/src/osdep/gui/PanelCustom.cpp index 817db676..1d6de7e3 100644 --- a/src/osdep/gui/PanelCustom.cpp +++ b/src/osdep/gui/PanelCustom.cpp @@ -178,7 +178,7 @@ public: SelectedFunction = 3; else if (actionEvent.getSource() == chkAnalogRemap) - workprefs.input_analog_remap = chkAnalogRemap->isSelected(); + changed_prefs.input_analog_remap = chkAnalogRemap->isSelected(); RefreshPanelCustom(); } @@ -199,16 +199,16 @@ public: switch (SelectedFunction) { case 0: - tempmap = workprefs.jports[SelectedPort].amiberry_custom_none; + tempmap = changed_prefs.jports[SelectedPort].amiberry_custom_none; break; case 1: - tempmap = workprefs.jports[SelectedPort].amiberry_custom_hotkey; + tempmap = changed_prefs.jports[SelectedPort].amiberry_custom_hotkey; break; case 2: - tempmap = workprefs.jports[SelectedPort].amiberry_custom_left_trigger; + tempmap = changed_prefs.jports[SelectedPort].amiberry_custom_left_trigger; break; case 3: - tempmap = workprefs.jports[SelectedPort].amiberry_custom_right_trigger; + tempmap = changed_prefs.jports[SelectedPort].amiberry_custom_right_trigger; break; default: break; @@ -297,16 +297,16 @@ public: switch (SelectedFunction) { case 0: - workprefs.jports[SelectedPort].amiberry_custom_none = tempmap; + changed_prefs.jports[SelectedPort].amiberry_custom_none = tempmap; break; case 1: - workprefs.jports[SelectedPort].amiberry_custom_hotkey = tempmap; + changed_prefs.jports[SelectedPort].amiberry_custom_hotkey = tempmap; break; case 2: - workprefs.jports[SelectedPort].amiberry_custom_left_trigger = tempmap; + changed_prefs.jports[SelectedPort].amiberry_custom_left_trigger = tempmap; break; case 3: - workprefs.jports[SelectedPort].amiberry_custom_right_trigger = tempmap; + changed_prefs.jports[SelectedPort].amiberry_custom_right_trigger = tempmap; break; default: break; @@ -315,7 +315,7 @@ public: // and here, we will scroll through the custom-map and // push it into the currprefs config file - inputdevice_updateconfig(nullptr, &workprefs); + inputdevice_updateconfig(nullptr, &changed_prefs); RefreshPanelCustom(); } } @@ -516,7 +516,7 @@ void RefreshPanelCustom(void) // optMultiLeft->setSelected(SelectedFunction == 2); // optMultiRight->setSelected(SelectedFunction == 3); - chkAnalogRemap->setSelected(workprefs.input_analog_remap); + chkAnalogRemap->setSelected(changed_prefs.input_analog_remap); // you'll want to refresh the drop-down section here // get map @@ -524,16 +524,16 @@ void RefreshPanelCustom(void) switch (SelectedFunction) { case 0: - tempmap = workprefs.jports[SelectedPort].amiberry_custom_none; + tempmap = changed_prefs.jports[SelectedPort].amiberry_custom_none; break; case 1: - tempmap = workprefs.jports[SelectedPort].amiberry_custom_hotkey; + tempmap = changed_prefs.jports[SelectedPort].amiberry_custom_hotkey; break; case 2: - tempmap = workprefs.jports[SelectedPort].amiberry_custom_left_trigger; + tempmap = changed_prefs.jports[SelectedPort].amiberry_custom_left_trigger; break; case 3: - tempmap = workprefs.jports[SelectedPort].amiberry_custom_right_trigger; + tempmap = changed_prefs.jports[SelectedPort].amiberry_custom_right_trigger; break; default: break; @@ -543,9 +543,9 @@ void RefreshPanelCustom(void) // update the joystick port , and disable those which are not available char tmp[255]; - if (workprefs.jports[SelectedPort].id > JSEM_JOYS && workprefs.jports[SelectedPort].id < JSEM_MICE - 1) + if (changed_prefs.jports[SelectedPort].id > JSEM_JOYS && changed_prefs.jports[SelectedPort].id < JSEM_MICE - 1) { - const auto hostjoyid = workprefs.jports[SelectedPort].id - JSEM_JOYS - 1; + const auto hostjoyid = changed_prefs.jports[SelectedPort].id - JSEM_JOYS - 1; #ifdef USE_SDL1 strncpy(tmp, SDL_JoystickName(hostjoyid), 255); #elif USE_SDL2 @@ -644,7 +644,7 @@ void RefreshPanelCustom(void) } else if (temp_button == host_input_buttons[hostjoyid].quit_button && temp_button != -1 && SelectedFunction == 1 && - workprefs.use_retroarch_quit) + changed_prefs.use_retroarch_quit) { cboCustomAction[n]->setListModel(&CustomEventList_Quit); cboCustomAction[n]->setEnabled(false); @@ -652,7 +652,7 @@ void RefreshPanelCustom(void) } else if (temp_button == host_input_buttons[hostjoyid].menu_button && temp_button != -1 && SelectedFunction == 1 && - workprefs.use_retroarch_menu) + changed_prefs.use_retroarch_menu) { cboCustomAction[n]->setListModel(&CustomEventList_Menu); cboCustomAction[n]->setEnabled(false); @@ -660,7 +660,7 @@ void RefreshPanelCustom(void) } else if (temp_button == host_input_buttons[hostjoyid].reset_button && temp_button != -1 && SelectedFunction == 1 && - workprefs.use_retroarch_reset) + changed_prefs.use_retroarch_reset) { cboCustomAction[n]->setListModel(&CustomEventList_Reset); cboCustomAction[n]->setEnabled(false); @@ -673,7 +673,7 @@ void RefreshPanelCustom(void) } } - if (host_input_buttons[hostjoyid].number_of_hats > 0 || workprefs.input_analog_remap == true) + if (host_input_buttons[hostjoyid].number_of_hats > 0 || changed_prefs.input_analog_remap == true) { cboCustomAction[ 0]->setEnabled(true); cboCustomAction[ 1]->setEnabled(true); diff --git a/src/osdep/gui/PanelDisplay.cpp b/src/osdep/gui/PanelDisplay.cpp index 922b7b8b..7169adff 100644 --- a/src/osdep/gui/PanelDisplay.cpp +++ b/src/osdep/gui/PanelDisplay.cpp @@ -58,45 +58,45 @@ public: { if (actionEvent.getSource() == sldAmigaWidth) { - if (workprefs.gfx_monitor.gfx_size.width != amigawidth_values[int(sldAmigaWidth->getValue())]) + if (changed_prefs.gfx_monitor.gfx_size.width != amigawidth_values[int(sldAmigaWidth->getValue())]) { - workprefs.gfx_monitor.gfx_size.width = amigawidth_values[int(sldAmigaWidth->getValue())]; + changed_prefs.gfx_monitor.gfx_size.width = amigawidth_values[int(sldAmigaWidth->getValue())]; RefreshPanelDisplay(); } } else if (actionEvent.getSource() == sldAmigaHeight) { - if (workprefs.gfx_monitor.gfx_size.height != amigaheight_values[int(sldAmigaHeight->getValue())]) + if (changed_prefs.gfx_monitor.gfx_size.height != amigaheight_values[int(sldAmigaHeight->getValue())]) { - workprefs.gfx_monitor.gfx_size.height = amigaheight_values[int(sldAmigaHeight->getValue())]; + changed_prefs.gfx_monitor.gfx_size.height = amigaheight_values[int(sldAmigaHeight->getValue())]; RefreshPanelDisplay(); } } else if (actionEvent.getSource() == sldVertPos) { - if (workprefs.vertical_offset != int(sldVertPos->getValue()) + OFFSET_Y_ADJUST) + if (changed_prefs.vertical_offset != int(sldVertPos->getValue()) + OFFSET_Y_ADJUST) { - workprefs.vertical_offset = int(sldVertPos->getValue()) + OFFSET_Y_ADJUST; + changed_prefs.vertical_offset = int(sldVertPos->getValue()) + OFFSET_Y_ADJUST; RefreshPanelDisplay(); } } else if (actionEvent.getSource() == chkFrameskip) - workprefs.gfx_framerate = chkFrameskip->isSelected() ? 2 : 1; + changed_prefs.gfx_framerate = chkFrameskip->isSelected() ? 2 : 1; else if (actionEvent.getSource() == chkAspect) - workprefs.gfx_correct_aspect = chkAspect->isSelected(); + changed_prefs.gfx_correct_aspect = chkAspect->isSelected(); else if (actionEvent.getSource() == chkFullscreen) { - if (workprefs.gfx_apmode[0].gfx_fullscreen == GFX_FULLSCREEN) + if (changed_prefs.gfx_apmode[0].gfx_fullscreen == GFX_FULLSCREEN) { - workprefs.gfx_apmode[0].gfx_fullscreen = GFX_WINDOW; - workprefs.gfx_apmode[1].gfx_fullscreen = GFX_WINDOW; + changed_prefs.gfx_apmode[0].gfx_fullscreen = GFX_WINDOW; + changed_prefs.gfx_apmode[1].gfx_fullscreen = GFX_WINDOW; } else { - workprefs.gfx_apmode[0].gfx_fullscreen = GFX_FULLSCREEN; - workprefs.gfx_apmode[1].gfx_fullscreen = GFX_FULLSCREEN; + changed_prefs.gfx_apmode[0].gfx_fullscreen = GFX_FULLSCREEN; + changed_prefs.gfx_apmode[1].gfx_fullscreen = GFX_FULLSCREEN; } } } @@ -111,11 +111,11 @@ public: void action(const gcn::ActionEvent& actionEvent) override { if (actionEvent.getSource() == optAuto) - workprefs.scaling_method = -1; + changed_prefs.scaling_method = -1; else if (actionEvent.getSource() == optNearest) - workprefs.scaling_method = 0; + changed_prefs.scaling_method = 0; else if (actionEvent.getSource() == optLinear) - workprefs.scaling_method = 1; + changed_prefs.scaling_method = 1; } }; @@ -129,18 +129,18 @@ public: { if (action_event.getSource() == optSingle) { - workprefs.gfx_vresolution = VRES_NONDOUBLE; - workprefs.gfx_pscanlines = 0; + changed_prefs.gfx_vresolution = VRES_NONDOUBLE; + changed_prefs.gfx_pscanlines = 0; } else if (action_event.getSource() == optDouble) { - workprefs.gfx_vresolution = VRES_DOUBLE; - workprefs.gfx_pscanlines = 0; + changed_prefs.gfx_vresolution = VRES_DOUBLE; + changed_prefs.gfx_pscanlines = 0; } else if (action_event.getSource() == optScanlines) { - workprefs.gfx_vresolution = VRES_DOUBLE; - workprefs.gfx_pscanlines = 1; + changed_prefs.gfx_vresolution = VRES_DOUBLE; + changed_prefs.gfx_pscanlines = 1; } } }; @@ -320,17 +320,17 @@ void ExitPanelDisplay() void RefreshPanelDisplay() { - chkFrameskip->setSelected(workprefs.gfx_framerate > 1); + chkFrameskip->setSelected(changed_prefs.gfx_framerate > 1); int i; char tmp[32]; for (i = 0; i<6; ++i) { - if (workprefs.gfx_monitor.gfx_size.width == amigawidth_values[i]) + if (changed_prefs.gfx_monitor.gfx_size.width == amigawidth_values[i]) { sldAmigaWidth->setValue(i); - snprintf(tmp, 32, "%d", workprefs.gfx_monitor.gfx_size.width); + snprintf(tmp, 32, "%d", changed_prefs.gfx_monitor.gfx_size.width); lblAmigaWidthInfo->setCaption(tmp); break; } @@ -338,36 +338,36 @@ void RefreshPanelDisplay() for (i = 0; i<6; ++i) { - if (workprefs.gfx_monitor.gfx_size.height == amigaheight_values[i]) + if (changed_prefs.gfx_monitor.gfx_size.height == amigaheight_values[i]) { sldAmigaHeight->setValue(i); - snprintf(tmp, 32, "%d", workprefs.gfx_monitor.gfx_size.height); + snprintf(tmp, 32, "%d", changed_prefs.gfx_monitor.gfx_size.height); lblAmigaHeightInfo->setCaption(tmp); break; } } - chkAspect->setSelected(workprefs.gfx_correct_aspect); - chkFullscreen->setSelected(workprefs.gfx_apmode[0].gfx_fullscreen == GFX_FULLSCREEN); + chkAspect->setSelected(changed_prefs.gfx_correct_aspect); + chkFullscreen->setSelected(changed_prefs.gfx_apmode[0].gfx_fullscreen == GFX_FULLSCREEN); #ifdef USE_SDL2 - if (workprefs.scaling_method == -1) + if (changed_prefs.scaling_method == -1) optAuto->setSelected(true); - else if (workprefs.scaling_method == 0) + else if (changed_prefs.scaling_method == 0) optNearest->setSelected(true); - else if (workprefs.scaling_method == 1) + else if (changed_prefs.scaling_method == 1) optLinear->setSelected(true); #endif - if (workprefs.gfx_vresolution == VRES_NONDOUBLE && workprefs.gfx_pscanlines == 0) + if (changed_prefs.gfx_vresolution == VRES_NONDOUBLE && changed_prefs.gfx_pscanlines == 0) optSingle->setSelected(true); - else if (workprefs.gfx_vresolution == VRES_DOUBLE && workprefs.gfx_pscanlines == 0) + else if (changed_prefs.gfx_vresolution == VRES_DOUBLE && changed_prefs.gfx_pscanlines == 0) optDouble->setSelected(true); - else if (workprefs.gfx_vresolution == VRES_DOUBLE && workprefs.gfx_pscanlines == 1) + else if (changed_prefs.gfx_vresolution == VRES_DOUBLE && changed_prefs.gfx_pscanlines == 1) optScanlines->setSelected(true); - sldVertPos->setValue(workprefs.vertical_offset - OFFSET_Y_ADJUST); - snprintf(tmp, 32, "%d", workprefs.vertical_offset - OFFSET_Y_ADJUST); + sldVertPos->setValue(changed_prefs.vertical_offset - OFFSET_Y_ADJUST); + snprintf(tmp, 32, "%d", changed_prefs.vertical_offset - OFFSET_Y_ADJUST); lblVertPosInfo->setCaption(tmp); } diff --git a/src/osdep/gui/PanelFloppy.cpp b/src/osdep/gui/PanelFloppy.cpp index 86e13dc7..b92f6354 100644 --- a/src/osdep/gui/PanelFloppy.cpp +++ b/src/osdep/gui/PanelFloppy.cpp @@ -108,7 +108,7 @@ public: for (auto i = 0; i < 4; ++i) { if (actionEvent.getSource() == cboDFxType[i]) - workprefs.floppyslots[i].dfxtype = cboDFxType[i]->getSelected() - 1; + changed_prefs.floppyslots[i].dfxtype = cboDFxType[i]->getSelected() - 1; } RefreshPanelFloppy(); RefreshPanelQuickstart(); @@ -134,17 +134,17 @@ public: // Drive enabled/disabled //--------------------------------------- if (chkDFx[i]->isSelected()) - workprefs.floppyslots[i].dfxtype = DRV_35_DD; + changed_prefs.floppyslots[i].dfxtype = DRV_35_DD; else - workprefs.floppyslots[i].dfxtype = DRV_NONE; + changed_prefs.floppyslots[i].dfxtype = DRV_NONE; } else if (actionEvent.getSource() == chkDFxWriteProtect[i]) { //--------------------------------------- // Write-protect changed //--------------------------------------- - disk_setwriteprotect(&workprefs, i, workprefs.floppyslots[i].df, chkDFxWriteProtect[i]->isSelected()); - if (disk_getwriteprotect(&workprefs, workprefs.floppyslots[i].df) != chkDFxWriteProtect[i]->isSelected()) { + disk_setwriteprotect(&changed_prefs, i, changed_prefs.floppyslots[i].df, chkDFxWriteProtect[i]->isSelected()); + if (disk_getwriteprotect(&changed_prefs, changed_prefs.floppyslots[i].df) != chkDFxWriteProtect[i]->isSelected()) { // Failed to change write protection -> maybe filesystem doesn't support this chkDFxWriteProtect[i]->setSelected(!chkDFxWriteProtect[i]->isSelected()); ShowMessage("Set/Clear write protect", "Failed to change write permission.", "Maybe underlying filesystem doesn't support this.", "Ok", ""); @@ -174,7 +174,7 @@ public: //--------------------------------------- // Show info about current disk-image //--------------------------------------- - //if (workprefs.floppyslots[i].dfxtype != DRV_NONE && strlen(workprefs.floppyslots[i].df) > 0) + //if (changed_prefs.floppyslots[i].dfxtype != DRV_NONE && strlen(changed_prefs.floppyslots[i].df) > 0) //ToDo: Show info dialog } else if (actionEvent.getSource() == cmdDFxEject[i]) @@ -183,7 +183,7 @@ public: // Eject disk from drive //--------------------------------------- disk_eject(i); - strncpy(workprefs.floppyslots[i].df, "", MAX_DPATH); + strncpy(changed_prefs.floppyslots[i].df, "", MAX_DPATH); AdjustDropDownControls(); } else if (actionEvent.getSource() == cmdDFxSelect[i]) @@ -193,15 +193,15 @@ public: //--------------------------------------- char tmp[MAX_DPATH]; - if (strlen(workprefs.floppyslots[i].df) > 0) - strncpy(tmp, workprefs.floppyslots[i].df, MAX_DPATH); + if (strlen(changed_prefs.floppyslots[i].df) > 0) + strncpy(tmp, changed_prefs.floppyslots[i].df, MAX_DPATH); else strncpy(tmp, currentDir, MAX_DPATH); if (SelectFile("Select disk image file", tmp, diskfile_filter)) { - if(strncmp(workprefs.floppyslots[i].df, tmp, MAX_DPATH) != 0) + if(strncmp(changed_prefs.floppyslots[i].df, tmp, MAX_DPATH) != 0) { - strncpy(workprefs.floppyslots[i].df, tmp, MAX_DPATH); + strncpy(changed_prefs.floppyslots[i].df, tmp, MAX_DPATH); disk_insert(i, tmp); AddFileToDiskList(tmp, 1); extractPath(tmp, currentDir); @@ -209,7 +209,7 @@ public: if (i == 0 && chkLoadConfig->isSelected()) { // Search for config of disk - extractFileName(workprefs.floppyslots[i].df, tmp); + extractFileName(changed_prefs.floppyslots[i].df, tmp); removeFileExtension(tmp); LoadConfigByName(tmp); } @@ -246,17 +246,17 @@ public: if (idx < 0) { disk_eject(i); - strncpy(workprefs.floppyslots[i].df, "", MAX_DPATH); + strncpy(changed_prefs.floppyslots[i].df, "", MAX_DPATH); AdjustDropDownControls(); } else { - if (diskfileList.getElementAt(idx) != workprefs.floppyslots[i].df) + if (diskfileList.getElementAt(idx) != changed_prefs.floppyslots[i].df) { - strncpy(workprefs.floppyslots[i].df, diskfileList.getElementAt(idx).c_str(), MAX_DPATH); - disk_insert(i, workprefs.floppyslots[i].df); + strncpy(changed_prefs.floppyslots[i].df, diskfileList.getElementAt(idx).c_str(), MAX_DPATH); + disk_insert(i, changed_prefs.floppyslots[i].df); lstMRUDiskList.erase(lstMRUDiskList.begin() + idx); - lstMRUDiskList.insert(lstMRUDiskList.begin(), workprefs.floppyslots[i].df); + lstMRUDiskList.insert(lstMRUDiskList.begin(), changed_prefs.floppyslots[i].df); bIgnoreListChange = true; cboDFxFile[i]->setSelected(0); bIgnoreListChange = false; @@ -266,7 +266,7 @@ public: // Search for config of disk char tmp[MAX_DPATH]; - extractFileName(workprefs.floppyslots[i].df, tmp); + extractFileName(changed_prefs.floppyslots[i].df, tmp); removeFileExtension(tmp); LoadConfigByName(tmp); } @@ -288,7 +288,7 @@ class DriveSpeedSliderActionListener : public gcn::ActionListener public: void action(const gcn::ActionEvent& actionEvent) override { - workprefs.floppy_speed = drivespeedvalues[int(sldDriveSpeed->getValue())]; + changed_prefs.floppy_speed = drivespeedvalues[int(sldDriveSpeed->getValue())]; RefreshPanelFloppy(); } }; @@ -304,20 +304,20 @@ public: //--------------------------------------- // Save configuration for current disk //--------------------------------------- - if (strlen(workprefs.floppyslots[0].df) > 0) + if (strlen(changed_prefs.floppyslots[0].df) > 0) { char filename[MAX_DPATH]; char diskname[MAX_DPATH]; - extractFileName(workprefs.floppyslots[0].df, diskname); + extractFileName(changed_prefs.floppyslots[0].df, diskname); removeFileExtension(diskname); fetch_configurationpath(filename, MAX_DPATH); strncat(filename, diskname, MAX_DPATH - 1); strncat(filename, ".uae", MAX_DPATH - 1); - snprintf(workprefs.description, 256, "Configuration for disk '%s'", diskname); - if (cfgfile_save(&workprefs, filename, 0)) + snprintf(changed_prefs.description, 256, "Configuration for disk '%s'", diskname); + if (cfgfile_save(&changed_prefs, filename, 0)) RefreshPanelConfig(); } } @@ -342,7 +342,7 @@ public: extractFileName(tmp, diskname); removeFileExtension(diskname); diskname[31] = '\0'; - disk_creatediskfile(&workprefs, tmp, 0, DRV_35_DD, -1, diskname, false, false, nullptr); + disk_creatediskfile(&changed_prefs, tmp, 0, DRV_35_DD, -1, diskname, false, false, nullptr); AddFileToDiskList(tmp, 1); extractPath(tmp, currentDir); } @@ -359,7 +359,7 @@ public: extractFileName(tmp, diskname); removeFileExtension(diskname); diskname[31] = '\0'; - disk_creatediskfile(&workprefs, tmp, 0, DRV_35_HD, -1, diskname, false, false, nullptr); + disk_creatediskfile(&changed_prefs, tmp, 0, DRV_35_HD, -1, diskname, false, false, nullptr); AddFileToDiskList(tmp, 1); extractPath(tmp, currentDir); } @@ -548,11 +548,11 @@ static void AdjustDropDownControls() { cboDFxFile[i]->clearSelected(); - if (workprefs.floppyslots[i].dfxtype != DRV_NONE && strlen(workprefs.floppyslots[i].df) > 0) + if (changed_prefs.floppyslots[i].dfxtype != DRV_NONE && strlen(changed_prefs.floppyslots[i].df) > 0) { for (unsigned int j = 0; j < lstMRUDiskList.size(); ++j) { - if (strcmp(lstMRUDiskList[j].c_str(), workprefs.floppyslots[i].df) == 0) + if (strcmp(lstMRUDiskList[j].c_str(), changed_prefs.floppyslots[i].df) == 0) { cboDFxFile[i]->setSelected(j); break; @@ -572,17 +572,17 @@ void RefreshPanelFloppy() AdjustDropDownControls(); - workprefs.nr_floppies = 0; + changed_prefs.nr_floppies = 0; for (i = 0; i < 4; ++i) { - const auto driveEnabled = workprefs.floppyslots[i].dfxtype != DRV_NONE; + const auto driveEnabled = changed_prefs.floppyslots[i].dfxtype != DRV_NONE; chkDFx[i]->setSelected(driveEnabled); - cboDFxType[i]->setSelected(workprefs.floppyslots[i].dfxtype + 1); - chkDFxWriteProtect[i]->setSelected(disk_getwriteprotect(&workprefs, workprefs.floppyslots[i].df)); + cboDFxType[i]->setSelected(changed_prefs.floppyslots[i].dfxtype + 1); + chkDFxWriteProtect[i]->setSelected(disk_getwriteprotect(&changed_prefs, changed_prefs.floppyslots[i].df)); chkDFx[i]->setEnabled(prevAvailable); cboDFxType[i]->setEnabled(prevAvailable); - chkDFxWriteProtect[i]->setEnabled(driveEnabled && !workprefs.floppy_read_only); + chkDFxWriteProtect[i]->setEnabled(driveEnabled && !changed_prefs.floppy_read_only); cmdDFxInfo[i]->setEnabled(driveEnabled); cmdDFxEject[i]->setEnabled(driveEnabled); cmdDFxSelect[i]->setEnabled(driveEnabled); @@ -590,14 +590,14 @@ void RefreshPanelFloppy() prevAvailable = driveEnabled; if (driveEnabled) - workprefs.nr_floppies = i + 1; + changed_prefs.nr_floppies = i + 1; } chkLoadConfig->setSelected(bLoadConfigForDisk); for (i = 0; i < 4; ++i) { - if (workprefs.floppy_speed == drivespeedvalues[i]) + if (changed_prefs.floppy_speed == drivespeedvalues[i]) { sldDriveSpeed->setValue(i); lblDriveSpeedInfo->setCaption(drivespeedlist[i]); diff --git a/src/osdep/gui/PanelHD.cpp b/src/osdep/gui/PanelHD.cpp index 4cf382b7..dcbf2503 100644 --- a/src/osdep/gui/PanelHD.cpp +++ b/src/osdep/gui/PanelHD.cpp @@ -72,10 +72,10 @@ static int GetHDType(const int index) { struct mountedinfo mi{}; - auto type = get_filesys_unitconfig(&workprefs, index, &mi); + auto type = get_filesys_unitconfig(&changed_prefs, index, &mi); if (type < 0) { - const auto uci = &workprefs.mountconfig[index]; + const auto uci = &changed_prefs.mountconfig[index]; type = uci->ci.type == UAEDEV_DIR ? FILESYS_VIRTUAL : FILESYS_HARDFILE; } return type; @@ -113,7 +113,7 @@ public: { if (actionEvent.getSource() == listCmdDelete[i]) { - kill_filesys_unitconfig(&workprefs, i); + kill_filesys_unitconfig(&changed_prefs, i); gui_force_rtarea_hdchange(); break; } @@ -217,15 +217,15 @@ public: { if (actionEvent.getSource() == chkCD) { - if (workprefs.cdslots[0].inuse) + if (changed_prefs.cdslots[0].inuse) { - workprefs.cdslots[0].inuse = false; - workprefs.cdslots[0].type = SCSI_UNIT_DISABLED; + changed_prefs.cdslots[0].inuse = false; + changed_prefs.cdslots[0].type = SCSI_UNIT_DISABLED; } else { - workprefs.cdslots[0].inuse = true; - workprefs.cdslots[0].type = SCSI_UNIT_IMAGE; + changed_prefs.cdslots[0].inuse = true; + changed_prefs.cdslots[0].type = SCSI_UNIT_IMAGE; } RefreshPanelHD(); RefreshPanelQuickstart(); @@ -246,25 +246,25 @@ public: //--------------------------------------- // Eject CD from drive //--------------------------------------- - strncpy(workprefs.cdslots[0].name, "", MAX_DPATH); + strncpy(changed_prefs.cdslots[0].name, "", MAX_DPATH); AdjustDropDownControls(); } else if (actionEvent.getSource() == cmdCDSelect) { char tmp[MAX_DPATH]; - if (strlen(workprefs.cdslots[0].name) > 0) - strncpy(tmp, workprefs.cdslots[0].name, MAX_DPATH); + if (strlen(changed_prefs.cdslots[0].name) > 0) + strncpy(tmp, changed_prefs.cdslots[0].name, MAX_DPATH); else strcpy(tmp, currentDir); if (SelectFile("Select CD image file", tmp, cdfile_filter)) { - if (strncmp(workprefs.cdslots[0].name, tmp, MAX_DPATH) != 0) + if (strncmp(changed_prefs.cdslots[0].name, tmp, MAX_DPATH) != 0) { - strncpy(workprefs.cdslots[0].name, tmp, sizeof(workprefs.cdslots[0].name)); - workprefs.cdslots[0].inuse = true; - workprefs.cdslots[0].type = SCSI_UNIT_IMAGE; + strncpy(changed_prefs.cdslots[0].name, tmp, sizeof(changed_prefs.cdslots[0].name)); + changed_prefs.cdslots[0].inuse = true; + changed_prefs.cdslots[0].type = SCSI_UNIT_IMAGE; AddFileToCDList(tmp, 1); extractPath(tmp, currentDir); @@ -289,15 +289,15 @@ public: if (actionEvent.getSource() == sldCDVol) { const auto newvol = 100 - int(sldCDVol->getValue()); - if (workprefs.sound_volume_cd != newvol) + if (changed_prefs.sound_volume_cd != newvol) { - workprefs.sound_volume_cd = newvol; + changed_prefs.sound_volume_cd = newvol; RefreshPanelHD(); } } else if (actionEvent.getSource() == chkHDReadOnly) { - workprefs.harddrive_read_only = chkHDReadOnly->isSelected(); + changed_prefs.harddrive_read_only = chkHDReadOnly->isSelected(); } } }; @@ -321,18 +321,18 @@ public: if (idx < 0) { - strncpy(workprefs.cdslots[0].name, "", MAX_DPATH); + strncpy(changed_prefs.cdslots[0].name, "", MAX_DPATH); AdjustDropDownControls(); } else { - if (cdfileList.getElementAt(idx) != workprefs.cdslots[0].name) + if (cdfileList.getElementAt(idx) != changed_prefs.cdslots[0].name) { - strncpy(workprefs.cdslots[0].name, cdfileList.getElementAt(idx).c_str(), sizeof workprefs.cdslots[0].name); - workprefs.cdslots[0].inuse = true; - workprefs.cdslots[0].type = SCSI_UNIT_IMAGE; + strncpy(changed_prefs.cdslots[0].name, cdfileList.getElementAt(idx).c_str(), sizeof changed_prefs.cdslots[0].name); + changed_prefs.cdslots[0].inuse = true; + changed_prefs.cdslots[0].type = SCSI_UNIT_IMAGE; lstMRUCDList.erase(lstMRUCDList.begin() + idx); - lstMRUCDList.insert(lstMRUCDList.begin(), workprefs.cdslots[0].name); + lstMRUCDList.insert(lstMRUCDList.begin(), changed_prefs.cdslots[0].name); bIgnoreListChange = true; cboCDFile->setSelected(0); bIgnoreListChange = false; @@ -551,11 +551,11 @@ void ExitPanelHD() static void AdjustDropDownControls() { cboCDFile->clearSelected(); - if (workprefs.cdslots[0].inuse && strlen(workprefs.cdslots[0].name) > 0) + if (changed_prefs.cdslots[0].inuse && strlen(changed_prefs.cdslots[0].name) > 0) { for (unsigned int i = 0; i < lstMRUCDList.size(); ++i) { - if (strcmp(lstMRUCDList[i].c_str(), workprefs.cdslots[0].name) == 0) + if (strcmp(lstMRUCDList[i].c_str(), changed_prefs.cdslots[0].name) == 0) { cboCDFile->setSelected(i); break; @@ -574,11 +574,11 @@ void RefreshPanelHD() for (auto row = 0; row < MAX_HD_DEVICES; ++row) { - if (row < workprefs.mountitems) + if (row < changed_prefs.mountitems) { - auto uci = &workprefs.mountconfig[row]; + auto uci = &changed_prefs.mountconfig[row]; const auto ci = &uci->ci; - auto type = get_filesys_unitconfig(&workprefs, row, &mi); + auto type = get_filesys_unitconfig(&changed_prefs, row, &mi); if (type < 0) { type = uci->ci.type == UAEDEV_DIR ? FILESYS_VIRTUAL : FILESYS_HARDFILE; @@ -632,16 +632,16 @@ void RefreshPanelHD() } } - chkHDReadOnly->setSelected(workprefs.harddrive_read_only); + chkHDReadOnly->setSelected(changed_prefs.harddrive_read_only); - chkCD->setSelected(workprefs.cdslots[0].inuse); - cmdCDEject->setEnabled(workprefs.cdslots[0].inuse); - cmdCDSelect->setEnabled(workprefs.cdslots[0].inuse); - cboCDFile->setEnabled(workprefs.cdslots[0].inuse); - sldCDVol->setEnabled(workprefs.cdslots[0].inuse); + chkCD->setSelected(changed_prefs.cdslots[0].inuse); + cmdCDEject->setEnabled(changed_prefs.cdslots[0].inuse); + cmdCDSelect->setEnabled(changed_prefs.cdslots[0].inuse); + cboCDFile->setEnabled(changed_prefs.cdslots[0].inuse); + sldCDVol->setEnabled(changed_prefs.cdslots[0].inuse); - sldCDVol->setValue(100 - workprefs.sound_volume_cd); - snprintf(tmp, 32, "%d %%", 100 - workprefs.sound_volume_cd); + sldCDVol->setValue(100 - changed_prefs.sound_volume_cd); + snprintf(tmp, 32, "%d %%", 100 - changed_prefs.sound_volume_cd); lblCDVolInfo->setCaption(tmp); } diff --git a/src/osdep/gui/PanelInput.cpp b/src/osdep/gui/PanelInput.cpp index 303b943e..218be050 100644 --- a/src/osdep/gui/PanelInput.cpp +++ b/src/osdep/gui/PanelInput.cpp @@ -104,26 +104,26 @@ public: { if (i == current_port) continue; - if (workprefs.jports[i].id == portListIDs[sel]) + if (changed_prefs.jports[i].id == portListIDs[sel]) { - workprefs.jports[i].id = JPORT_NONE; - workprefs.jports[i].idc.configname[0] = 0; - workprefs.jports[i].idc.name[0] = 0; - workprefs.jports[i].idc.shortid[0] = 0; + changed_prefs.jports[i].id = JPORT_NONE; + changed_prefs.jports[i].idc.configname[0] = 0; + changed_prefs.jports[i].idc.name[0] = 0; + changed_prefs.jports[i].idc.shortid[0] = 0; } } } static void set_port(const int sel, const int current_port) { - workprefs.jports[current_port].id = portListIDs[sel]; - if (workprefs.jports[current_port].id == JPORT_NONE) + changed_prefs.jports[current_port].id = portListIDs[sel]; + if (changed_prefs.jports[current_port].id == JPORT_NONE) { - workprefs.jports[current_port].idc.configname[0] = 0; - workprefs.jports[current_port].idc.name[0] = 0; - workprefs.jports[current_port].idc.shortid[0] = 0; + changed_prefs.jports[current_port].idc.configname[0] = 0; + changed_prefs.jports[current_port].idc.name[0] = 0; + changed_prefs.jports[current_port].idc.shortid[0] = 0; } - inputdevice_updateconfig(nullptr, &workprefs); + inputdevice_updateconfig(nullptr, &changed_prefs); RefreshPanelInput(); RefreshPanelCustom(); } @@ -185,30 +185,30 @@ public: else if (actionEvent.getSource() == cboPort0mode) { if (cboPort0mode->getSelected() == 0) - workprefs.jports[0].mode = JSEM_MODE_MOUSE; + changed_prefs.jports[0].mode = JSEM_MODE_MOUSE; else if (cboPort0mode->getSelected() == 1) - workprefs.jports[0].mode = JSEM_MODE_JOYSTICK; + changed_prefs.jports[0].mode = JSEM_MODE_JOYSTICK; else if (cboPort0mode->getSelected() == 2) - workprefs.jports[0].mode = JSEM_MODE_JOYSTICK_CD32; + changed_prefs.jports[0].mode = JSEM_MODE_JOYSTICK_CD32; else - workprefs.jports[0].mode = JSEM_MODE_DEFAULT; + changed_prefs.jports[0].mode = JSEM_MODE_DEFAULT; - inputdevice_updateconfig(nullptr, &workprefs); + inputdevice_updateconfig(nullptr, &changed_prefs); RefreshPanelInput(); RefreshPanelCustom(); } else if (actionEvent.getSource() == cboPort1mode) { if (cboPort1mode->getSelected() == 0) - workprefs.jports[1].mode = JSEM_MODE_MOUSE; + changed_prefs.jports[1].mode = JSEM_MODE_MOUSE; else if (cboPort1mode->getSelected() == 1) - workprefs.jports[1].mode = JSEM_MODE_JOYSTICK; + changed_prefs.jports[1].mode = JSEM_MODE_JOYSTICK; else if (cboPort1mode->getSelected() == 2) - workprefs.jports[1].mode = JSEM_MODE_JOYSTICK_CD32; + changed_prefs.jports[1].mode = JSEM_MODE_JOYSTICK_CD32; else - workprefs.jports[1].mode = JSEM_MODE_DEFAULT; + changed_prefs.jports[1].mode = JSEM_MODE_DEFAULT; - inputdevice_updateconfig(nullptr, &workprefs); + inputdevice_updateconfig(nullptr, &changed_prefs); RefreshPanelInput(); RefreshPanelCustom(); } @@ -216,30 +216,30 @@ public: // mousemap drop-down change else if (actionEvent.getSource() == cboPort0mousemode) { - workprefs.jports[0].mousemap = cboPort0mousemode->getSelected(); - inputdevice_updateconfig(nullptr, &workprefs); + changed_prefs.jports[0].mousemap = cboPort0mousemode->getSelected(); + inputdevice_updateconfig(nullptr, &changed_prefs); } else if (actionEvent.getSource() == cboPort1mousemode) { - workprefs.jports[1].mousemap = cboPort1mousemode->getSelected(); - inputdevice_updateconfig(nullptr, &workprefs); + changed_prefs.jports[1].mousemap = cboPort1mousemode->getSelected(); + inputdevice_updateconfig(nullptr, &changed_prefs); } else if (actionEvent.getSource() == cboAutofire) { if (cboAutofire->getSelected() == 0) - workprefs.input_autofire_linecnt = 0; + changed_prefs.input_autofire_linecnt = 0; else if (cboAutofire->getSelected() == 1) - workprefs.input_autofire_linecnt = 12 * 312; + changed_prefs.input_autofire_linecnt = 12 * 312; else if (cboAutofire->getSelected() == 2) - workprefs.input_autofire_linecnt = 8 * 312; + changed_prefs.input_autofire_linecnt = 8 * 312; else - workprefs.input_autofire_linecnt = 4 * 312; + changed_prefs.input_autofire_linecnt = 4 * 312; } else if (actionEvent.getSource() == sldMouseSpeed) { - workprefs.input_joymouse_multiplier = mousespeed_values[int(sldMouseSpeed->getValue())]; + changed_prefs.input_joymouse_multiplier = mousespeed_values[int(sldMouseSpeed->getValue())]; RefreshPanelInput(); } @@ -251,7 +251,7 @@ public: else SDL_ANDROID_SetMouseEmulationMode(1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1); #endif - workprefs.input_tablet = chkMouseHack->isSelected() ? TABLET_MOUSEHACK : TABLET_OFF; + changed_prefs.input_tablet = chkMouseHack->isSelected() ? TABLET_MOUSEHACK : TABLET_OFF; } } }; @@ -461,7 +461,7 @@ void RefreshPanelInput() auto idx = 0; for (auto i = 0; i < ctrlPortList.getNumberOfElements(); ++i) { - if (workprefs.jports[0].id == portListIDs[i]) + if (changed_prefs.jports[0].id == portListIDs[i]) { idx = i; break; @@ -473,7 +473,7 @@ void RefreshPanelInput() idx = 0; for (auto i = 0; i < ctrlPortList.getNumberOfElements(); ++i) { - if (workprefs.jports[1].id == portListIDs[i]) + if (changed_prefs.jports[1].id == portListIDs[i]) { idx = i; break; @@ -485,7 +485,7 @@ void RefreshPanelInput() idx = 0; for (auto i = 0; i < ctrlPortList.getNumberOfElements(); ++i) { - if (workprefs.jports[2].id == portListIDs[i]) + if (changed_prefs.jports[2].id == portListIDs[i]) { idx = i; break; @@ -497,7 +497,7 @@ void RefreshPanelInput() idx = 0; for (auto i = 0; i < ctrlPortList.getNumberOfElements(); ++i) { - if (workprefs.jports[3].id == portListIDs[i]) + if (changed_prefs.jports[3].id == portListIDs[i]) { idx = i; break; @@ -505,38 +505,38 @@ void RefreshPanelInput() } cboPort3->setSelected(idx); - if (workprefs.input_autofire_linecnt == 0) + if (changed_prefs.input_autofire_linecnt == 0) cboAutofire->setSelected(0); - else if (workprefs.input_autofire_linecnt > 10 * 312) + else if (changed_prefs.input_autofire_linecnt > 10 * 312) cboAutofire->setSelected(1); - else if (workprefs.input_autofire_linecnt > 6 * 312) + else if (changed_prefs.input_autofire_linecnt > 6 * 312) cboAutofire->setSelected(2); else cboAutofire->setSelected(3); - if (workprefs.jports[0].mode == JSEM_MODE_MOUSE) + if (changed_prefs.jports[0].mode == JSEM_MODE_MOUSE) cboPort0mode->setSelected(0); - else if (workprefs.jports[0].mode == JSEM_MODE_JOYSTICK) + else if (changed_prefs.jports[0].mode == JSEM_MODE_JOYSTICK) cboPort0mode->setSelected(1); - else if (workprefs.jports[0].mode == JSEM_MODE_JOYSTICK_CD32) + else if (changed_prefs.jports[0].mode == JSEM_MODE_JOYSTICK_CD32) cboPort0mode->setSelected(2); else cboPort0mode->setSelected(3); - if (workprefs.jports[1].mode == JSEM_MODE_MOUSE) + if (changed_prefs.jports[1].mode == JSEM_MODE_MOUSE) cboPort1mode->setSelected(0); - else if (workprefs.jports[1].mode == JSEM_MODE_JOYSTICK) + else if (changed_prefs.jports[1].mode == JSEM_MODE_JOYSTICK) cboPort1mode->setSelected(1); - else if (workprefs.jports[1].mode == JSEM_MODE_JOYSTICK_CD32) + else if (changed_prefs.jports[1].mode == JSEM_MODE_JOYSTICK_CD32) cboPort1mode->setSelected(2); else cboPort1mode->setSelected(3); // changed mouse map - cboPort0mousemode->setSelected(workprefs.jports[0].mousemap); - cboPort1mousemode->setSelected(workprefs.jports[1].mousemap); + cboPort0mousemode->setSelected(changed_prefs.jports[0].mousemap); + cboPort1mousemode->setSelected(changed_prefs.jports[1].mousemap); if (cboPort0mode->getSelected() == 0) { @@ -558,7 +558,7 @@ void RefreshPanelInput() for (auto i = 0; i < 5; ++i) { - if (workprefs.input_joymouse_multiplier == mousespeed_values[i]) + if (changed_prefs.input_joymouse_multiplier == mousespeed_values[i]) { sldMouseSpeed->setValue(i); lblMouseSpeedInfo->setCaption(mousespeed_list[i]); @@ -566,7 +566,7 @@ void RefreshPanelInput() } } - chkMouseHack->setSelected(workprefs.input_tablet == TABLET_MOUSEHACK); + chkMouseHack->setSelected(changed_prefs.input_tablet == TABLET_MOUSEHACK); } bool HelpPanelInput(std::vector &helptext) diff --git a/src/osdep/gui/PanelMisc.cpp b/src/osdep/gui/PanelMisc.cpp index b6c632aa..a7ca605e 100644 --- a/src/osdep/gui/PanelMisc.cpp +++ b/src/osdep/gui/PanelMisc.cpp @@ -85,49 +85,49 @@ public: void action(const gcn::ActionEvent& actionEvent) override { if (actionEvent.getSource() == chkStatusLine) - workprefs.leds_on_screen = chkStatusLine->isSelected(); + changed_prefs.leds_on_screen = chkStatusLine->isSelected(); else if (actionEvent.getSource() == chkHideIdleLed) - workprefs.hide_idle_led = chkHideIdleLed->isSelected(); + changed_prefs.hide_idle_led = chkHideIdleLed->isSelected(); else if (actionEvent.getSource() == chkShowGUI) - workprefs.start_gui = chkShowGUI->isSelected(); + changed_prefs.start_gui = chkShowGUI->isSelected(); else if (actionEvent.getSource() == chkRetroArchQuit) { - workprefs.use_retroarch_quit = chkRetroArchQuit->isSelected(); + changed_prefs.use_retroarch_quit = chkRetroArchQuit->isSelected(); RefreshPanelCustom(); } else if (actionEvent.getSource() == chkRetroArchMenu) { - workprefs.use_retroarch_menu = chkRetroArchMenu->isSelected(); + changed_prefs.use_retroarch_menu = chkRetroArchMenu->isSelected(); RefreshPanelCustom(); } else if (actionEvent.getSource() == chkRetroArchReset) { - workprefs.use_retroarch_reset = chkRetroArchReset->isSelected(); + changed_prefs.use_retroarch_reset = chkRetroArchReset->isSelected(); RefreshPanelCustom(); } // else if (actionEvent.getSource() == chkRetroArchSavestate) - // workprefs.amiberry_use_retroarch_savestatebuttons = chkRetroArchSavestate->isSelected(); + // changed_prefs.amiberry_use_retroarch_savestatebuttons = chkRetroArchSavestate->isSelected(); else if (actionEvent.getSource() == chkBSDSocket) - workprefs.socket_emu = chkBSDSocket->isSelected(); + changed_prefs.socket_emu = chkBSDSocket->isSelected(); else if (actionEvent.getSource() == chkMasterWP) { - workprefs.floppy_read_only = chkMasterWP->isSelected(); + changed_prefs.floppy_read_only = chkMasterWP->isSelected(); RefreshPanelQuickstart(); RefreshPanelFloppy(); } else if (actionEvent.getSource() == cboKBDLed_num) - workprefs.kbd_led_num = cboKBDLed_num->getSelected(); + changed_prefs.kbd_led_num = cboKBDLed_num->getSelected(); else if (actionEvent.getSource() == cboKBDLed_scr) - workprefs.kbd_led_scr = cboKBDLed_scr->getSelected(); + changed_prefs.kbd_led_scr = cboKBDLed_scr->getSelected(); else if (actionEvent.getSource() == cmdOpenGUI) { @@ -135,7 +135,7 @@ public: if (key != nullptr) { txtOpenGUI->setText(key); - strcpy(workprefs.open_gui, key); + strcpy(changed_prefs.open_gui, key); } } @@ -145,7 +145,7 @@ public: if (key != nullptr) { txtKeyForQuit->setText(key); - strcpy(workprefs.quit_amiberry, key); + strcpy(changed_prefs.quit_amiberry, key); } } @@ -155,7 +155,7 @@ public: if (key != nullptr) { txtKeyActionReplay->setText(key); - strcpy(workprefs.action_replay, key); + strcpy(changed_prefs.action_replay, key); } } @@ -165,7 +165,7 @@ public: if (key != nullptr) { txtKeyFullScreen->setText(key); - strcpy(workprefs.fullscreen_toggle, key); + strcpy(changed_prefs.fullscreen_toggle, key); } } } @@ -372,25 +372,25 @@ void ExitPanelMisc() void RefreshPanelMisc() { - chkStatusLine->setSelected(workprefs.leds_on_screen); - chkHideIdleLed->setSelected(workprefs.hide_idle_led); - chkShowGUI->setSelected(workprefs.start_gui); + chkStatusLine->setSelected(changed_prefs.leds_on_screen); + chkHideIdleLed->setSelected(changed_prefs.hide_idle_led); + chkShowGUI->setSelected(changed_prefs.start_gui); - chkRetroArchQuit->setSelected(workprefs.use_retroarch_quit); - chkRetroArchMenu->setSelected(workprefs.use_retroarch_menu); - chkRetroArchReset->setSelected(workprefs.use_retroarch_reset); - //chkRetroArchSavestate->setSelected(workprefs.use_retroarch_statebuttons); + chkRetroArchQuit->setSelected(changed_prefs.use_retroarch_quit); + chkRetroArchMenu->setSelected(changed_prefs.use_retroarch_menu); + chkRetroArchReset->setSelected(changed_prefs.use_retroarch_reset); + //chkRetroArchSavestate->setSelected(changed_prefs.use_retroarch_statebuttons); - chkBSDSocket->setSelected(workprefs.socket_emu); - chkMasterWP->setSelected(workprefs.floppy_read_only); + chkBSDSocket->setSelected(changed_prefs.socket_emu); + chkMasterWP->setSelected(changed_prefs.floppy_read_only); - cboKBDLed_num->setSelected(workprefs.kbd_led_num); - cboKBDLed_scr->setSelected(workprefs.kbd_led_scr); + cboKBDLed_num->setSelected(changed_prefs.kbd_led_num); + cboKBDLed_scr->setSelected(changed_prefs.kbd_led_scr); - txtOpenGUI->setText(strncmp(workprefs.open_gui, "", 1) != 0 ? workprefs.open_gui : "Click to map"); - txtKeyForQuit->setText(strncmp(workprefs.quit_amiberry, "", 1) != 0 ? workprefs.quit_amiberry : "Click to map"); - txtKeyActionReplay->setText(strncmp(workprefs.action_replay, "", 1) != 0 ? workprefs.action_replay : "Click to map"); - txtKeyFullScreen->setText(strncmp(workprefs.fullscreen_toggle, "", 1) != 0 ? workprefs.fullscreen_toggle : "Click to map"); + txtOpenGUI->setText(strncmp(changed_prefs.open_gui, "", 1) != 0 ? changed_prefs.open_gui : "Click to map"); + txtKeyForQuit->setText(strncmp(changed_prefs.quit_amiberry, "", 1) != 0 ? changed_prefs.quit_amiberry : "Click to map"); + txtKeyActionReplay->setText(strncmp(changed_prefs.action_replay, "", 1) != 0 ? changed_prefs.action_replay : "Click to map"); + txtKeyFullScreen->setText(strncmp(changed_prefs.fullscreen_toggle, "", 1) != 0 ? changed_prefs.fullscreen_toggle : "Click to map"); } bool HelpPanelMisc(std::vector &helptext) diff --git a/src/osdep/gui/PanelOnScreen.cpp b/src/osdep/gui/PanelOnScreen.cpp index 7e8fac69..3f18b63f 100644 --- a/src/osdep/gui/PanelOnScreen.cpp +++ b/src/osdep/gui/PanelOnScreen.cpp @@ -48,74 +48,74 @@ class OnScreenActionListener : public gcn::ActionListener { if (actionEvent.getSource() == checkBox_onscreen_control) { if (checkBox_onscreen_control->isSelected()) - workprefs.onScreen=1; + changed_prefs.onScreen=1; else - workprefs.onScreen=0; + changed_prefs.onScreen=0; } if (actionEvent.getSource() == checkBox_onscreen_textinput) { if (checkBox_onscreen_textinput->isSelected()) - workprefs.onScreen_textinput=1; + changed_prefs.onScreen_textinput=1; else - workprefs.onScreen_textinput=0; + changed_prefs.onScreen_textinput=0; } if (actionEvent.getSource() == checkBox_onscreen_dpad) { if (checkBox_onscreen_dpad->isSelected()) - workprefs.onScreen_dpad=1; + changed_prefs.onScreen_dpad=1; else - workprefs.onScreen_dpad=0; + changed_prefs.onScreen_dpad=0; } if (actionEvent.getSource() == checkBox_onscreen_button1) { if (checkBox_onscreen_button1->isSelected()) - workprefs.onScreen_button1=1; + changed_prefs.onScreen_button1=1; else - workprefs.onScreen_button1=0; + changed_prefs.onScreen_button1=0; } if (actionEvent.getSource() == checkBox_onscreen_button2) { if (checkBox_onscreen_button2->isSelected()) - workprefs.onScreen_button2=1; + changed_prefs.onScreen_button2=1; else - workprefs.onScreen_button2=0; + changed_prefs.onScreen_button2=0; } if (actionEvent.getSource() == checkBox_onscreen_button3) { if (checkBox_onscreen_button3->isSelected()) - workprefs.onScreen_button3=1; + changed_prefs.onScreen_button3=1; else - workprefs.onScreen_button3=0; + changed_prefs.onScreen_button3=0; } if (actionEvent.getSource() == checkBox_onscreen_button4) { if (checkBox_onscreen_button4->isSelected()) - workprefs.onScreen_button4=1; + changed_prefs.onScreen_button4=1; else - workprefs.onScreen_button4=0; + changed_prefs.onScreen_button4=0; } if (actionEvent.getSource() == checkBox_onscreen_button5) { if (checkBox_onscreen_button5->isSelected()) - workprefs.onScreen_button5=1; + changed_prefs.onScreen_button5=1; else - workprefs.onScreen_button5=0; + changed_prefs.onScreen_button5=0; } if (actionEvent.getSource() == checkBox_onscreen_button6) { if (checkBox_onscreen_button6->isSelected()) - workprefs.onScreen_button6=1; + changed_prefs.onScreen_button6=1; else - workprefs.onScreen_button6=0; + changed_prefs.onScreen_button6=0; } if (actionEvent.getSource() == checkBox_onscreen_custompos) { if (checkBox_onscreen_custompos->isSelected()) - workprefs.custom_position=1; + changed_prefs.custom_position=1; else - workprefs.custom_position=0; + changed_prefs.custom_position=0; } if (actionEvent.getSource() == checkBox_floatingJoystick) if (checkBox_floatingJoystick->isSelected()) - workprefs.floatingJoystick=1; + changed_prefs.floatingJoystick=1; else - workprefs.floatingJoystick=0; + changed_prefs.floatingJoystick=0; if (actionEvent.getSource() == checkBox_disableMenuVKeyb) if (checkBox_disableMenuVKeyb->isSelected()) - workprefs.disableMenuVKeyb=1; + changed_prefs.disableMenuVKeyb=1; else - workprefs.disableMenuVKeyb=0; + changed_prefs.disableMenuVKeyb=0; RefreshPanelOnScreen(); } }; @@ -137,41 +137,41 @@ class WindowPosButtonActionListener : public gcn::ActionListener public: void action(const gcn::ActionEvent& actionEvent) { if (actionEvent.getSource() == button_onscreen_ok) { - workprefs.pos_x_textinput = window_pos_textinput->getX(); - workprefs.pos_y_textinput = window_pos_textinput->getY(); - workprefs.pos_x_dpad = window_pos_dpad->getX(); - workprefs.pos_y_dpad = window_pos_dpad->getY(); - workprefs.pos_x_button1 = window_pos_button1->getX(); - workprefs.pos_y_button1 = window_pos_button1->getY(); - workprefs.pos_x_button2 = window_pos_button2->getX(); - workprefs.pos_y_button2 = window_pos_button2->getY(); - workprefs.pos_x_button3 = window_pos_button3->getX(); - workprefs.pos_y_button3 = window_pos_button3->getY(); - workprefs.pos_x_button4 = window_pos_button4->getX(); - workprefs.pos_y_button4 = window_pos_button4->getY(); - workprefs.pos_x_button5 = window_pos_button5->getX(); - workprefs.pos_y_button5 = window_pos_button5->getY(); - workprefs.pos_x_button6 = window_pos_button6->getX(); - workprefs.pos_y_button6 = window_pos_button6->getY(); + changed_prefs.pos_x_textinput = window_pos_textinput->getX(); + changed_prefs.pos_y_textinput = window_pos_textinput->getY(); + changed_prefs.pos_x_dpad = window_pos_dpad->getX(); + changed_prefs.pos_y_dpad = window_pos_dpad->getY(); + changed_prefs.pos_x_button1 = window_pos_button1->getX(); + changed_prefs.pos_y_button1 = window_pos_button1->getY(); + changed_prefs.pos_x_button2 = window_pos_button2->getX(); + changed_prefs.pos_y_button2 = window_pos_button2->getY(); + changed_prefs.pos_x_button3 = window_pos_button3->getX(); + changed_prefs.pos_y_button3 = window_pos_button3->getY(); + changed_prefs.pos_x_button4 = window_pos_button4->getX(); + changed_prefs.pos_y_button4 = window_pos_button4->getY(); + changed_prefs.pos_x_button5 = window_pos_button5->getX(); + changed_prefs.pos_y_button5 = window_pos_button5->getY(); + changed_prefs.pos_x_button6 = window_pos_button6->getX(); + changed_prefs.pos_y_button6 = window_pos_button6->getY(); window_setup_position->setVisible(false); } if (actionEvent.getSource() == button_onscreen_reset) { - workprefs.pos_x_textinput = 0; - workprefs.pos_y_textinput = 0; - workprefs.pos_x_dpad = 4; - workprefs.pos_y_dpad = 215; - workprefs.pos_x_button1 = 430; - workprefs.pos_y_button1 = 286; - workprefs.pos_x_button2 = 378; - workprefs.pos_y_button2 = 286; - workprefs.pos_x_button3 = 430; - workprefs.pos_y_button3 = 214; - workprefs.pos_x_button4 = 378; - workprefs.pos_y_button4 = 214; - workprefs.pos_x_button5 = 430; - workprefs.pos_y_button5 = 142; - workprefs.pos_x_button6 = 378; - workprefs.pos_y_button6 = 142; + changed_prefs.pos_x_textinput = 0; + changed_prefs.pos_y_textinput = 0; + changed_prefs.pos_x_dpad = 4; + changed_prefs.pos_y_dpad = 215; + changed_prefs.pos_x_button1 = 430; + changed_prefs.pos_y_button1 = 286; + changed_prefs.pos_x_button2 = 378; + changed_prefs.pos_y_button2 = 286; + changed_prefs.pos_x_button3 = 430; + changed_prefs.pos_y_button3 = 214; + changed_prefs.pos_x_button4 = 378; + changed_prefs.pos_y_button4 = 214; + changed_prefs.pos_x_button5 = 430; + changed_prefs.pos_y_button5 = 142; + changed_prefs.pos_x_button6 = 378; + changed_prefs.pos_y_button6 = 142; window_setup_position->setVisible(false); } } @@ -356,82 +356,82 @@ void ExitPanelOnScreen(void) void RefreshPanelOnScreen(void) { - if (workprefs.onScreen==0) + if (changed_prefs.onScreen==0) checkBox_onscreen_control->setSelected(false); - else if (workprefs.onScreen==1) + else if (changed_prefs.onScreen==1) checkBox_onscreen_control->setSelected(true); - if (workprefs.onScreen_textinput==0) + if (changed_prefs.onScreen_textinput==0) checkBox_onscreen_textinput->setSelected(false); - else if (workprefs.onScreen_textinput==1) + else if (changed_prefs.onScreen_textinput==1) checkBox_onscreen_textinput->setSelected(true); - if (workprefs.onScreen_dpad==0) + if (changed_prefs.onScreen_dpad==0) checkBox_onscreen_dpad->setSelected(false); - else if (workprefs.onScreen_dpad==1) + else if (changed_prefs.onScreen_dpad==1) checkBox_onscreen_dpad->setSelected(true); - if (workprefs.onScreen_button1==0) + if (changed_prefs.onScreen_button1==0) checkBox_onscreen_button1->setSelected(false); - else if (workprefs.onScreen_button1==1) + else if (changed_prefs.onScreen_button1==1) checkBox_onscreen_button1->setSelected(true); - if (workprefs.onScreen_button2==0) + if (changed_prefs.onScreen_button2==0) checkBox_onscreen_button2->setSelected(false); - else if (workprefs.onScreen_button2==1) + else if (changed_prefs.onScreen_button2==1) checkBox_onscreen_button2->setSelected(true); - if (workprefs.onScreen_button3==0) + if (changed_prefs.onScreen_button3==0) checkBox_onscreen_button3->setSelected(false); - else if (workprefs.onScreen_button3==1) + else if (changed_prefs.onScreen_button3==1) checkBox_onscreen_button3->setSelected(true); - if (workprefs.onScreen_button4==0) + if (changed_prefs.onScreen_button4==0) checkBox_onscreen_button4->setSelected(false); - else if (workprefs.onScreen_button4==1) + else if (changed_prefs.onScreen_button4==1) checkBox_onscreen_button4->setSelected(true); - if (workprefs.onScreen_button5==0) + if (changed_prefs.onScreen_button5==0) checkBox_onscreen_button5->setSelected(false); - else if (workprefs.onScreen_button5==1) + else if (changed_prefs.onScreen_button5==1) checkBox_onscreen_button5->setSelected(true); - if (workprefs.onScreen_button6==0) + if (changed_prefs.onScreen_button6==0) checkBox_onscreen_button6->setSelected(false); - else if (workprefs.onScreen_button6==1) + else if (changed_prefs.onScreen_button6==1) checkBox_onscreen_button6->setSelected(true); - if (workprefs.custom_position==0) + if (changed_prefs.custom_position==0) checkBox_onscreen_custompos->setSelected(false); - else if (workprefs.custom_position==1) + else if (changed_prefs.custom_position==1) checkBox_onscreen_custompos->setSelected(true); - if (workprefs.floatingJoystick) + if (changed_prefs.floatingJoystick) checkBox_floatingJoystick->setSelected(true); else checkBox_floatingJoystick->setSelected(false); - if (workprefs.disableMenuVKeyb) + if (changed_prefs.disableMenuVKeyb) checkBox_disableMenuVKeyb->setSelected(true); else checkBox_disableMenuVKeyb->setSelected(false); - textInput->disableVirtualKeyboard(workprefs.disableMenuVKeyb); + textInput->disableVirtualKeyboard(changed_prefs.disableMenuVKeyb); - window_pos_textinput->setX(workprefs.pos_x_textinput); - window_pos_textinput->setY(workprefs.pos_y_textinput); - window_pos_textinput->setVisible(workprefs.onScreen_textinput); - window_pos_dpad->setX(workprefs.pos_x_dpad); - window_pos_dpad->setY(workprefs.pos_y_dpad); - window_pos_dpad->setVisible(workprefs.onScreen_dpad); - window_pos_button1->setX(workprefs.pos_x_button1); - window_pos_button1->setY(workprefs.pos_y_button1); - window_pos_button1->setVisible(workprefs.onScreen_button1); - window_pos_button2->setX(workprefs.pos_x_button2); - window_pos_button2->setY(workprefs.pos_y_button2); - window_pos_button2->setVisible(workprefs.onScreen_button2); - window_pos_button3->setX(workprefs.pos_x_button3); - window_pos_button3->setY(workprefs.pos_y_button3); - window_pos_button3->setVisible(workprefs.onScreen_button3); - window_pos_button4->setX(workprefs.pos_x_button4); - window_pos_button4->setY(workprefs.pos_y_button4); - window_pos_button4->setVisible(workprefs.onScreen_button4); - window_pos_button5->setX(workprefs.pos_x_button5); - window_pos_button5->setY(workprefs.pos_y_button5); - window_pos_button5->setVisible(workprefs.onScreen_button5); - window_pos_button6->setX(workprefs.pos_x_button6); - window_pos_button6->setY(workprefs.pos_y_button6); - window_pos_button6->setVisible(workprefs.onScreen_button6); - button_onscreen_pos->setVisible(workprefs.custom_position); + window_pos_textinput->setX(changed_prefs.pos_x_textinput); + window_pos_textinput->setY(changed_prefs.pos_y_textinput); + window_pos_textinput->setVisible(changed_prefs.onScreen_textinput); + window_pos_dpad->setX(changed_prefs.pos_x_dpad); + window_pos_dpad->setY(changed_prefs.pos_y_dpad); + window_pos_dpad->setVisible(changed_prefs.onScreen_dpad); + window_pos_button1->setX(changed_prefs.pos_x_button1); + window_pos_button1->setY(changed_prefs.pos_y_button1); + window_pos_button1->setVisible(changed_prefs.onScreen_button1); + window_pos_button2->setX(changed_prefs.pos_x_button2); + window_pos_button2->setY(changed_prefs.pos_y_button2); + window_pos_button2->setVisible(changed_prefs.onScreen_button2); + window_pos_button3->setX(changed_prefs.pos_x_button3); + window_pos_button3->setY(changed_prefs.pos_y_button3); + window_pos_button3->setVisible(changed_prefs.onScreen_button3); + window_pos_button4->setX(changed_prefs.pos_x_button4); + window_pos_button4->setY(changed_prefs.pos_y_button4); + window_pos_button4->setVisible(changed_prefs.onScreen_button4); + window_pos_button5->setX(changed_prefs.pos_x_button5); + window_pos_button5->setY(changed_prefs.pos_y_button5); + window_pos_button5->setVisible(changed_prefs.onScreen_button5); + window_pos_button6->setX(changed_prefs.pos_x_button6); + window_pos_button6->setY(changed_prefs.pos_y_button6); + window_pos_button6->setVisible(changed_prefs.onScreen_button6); + button_onscreen_pos->setVisible(changed_prefs.custom_position); } bool HelpPanelOnScreen(std::vector &helptext) diff --git a/src/osdep/gui/PanelQuickstart.cpp b/src/osdep/gui/PanelQuickstart.cpp index 39929a0c..11927049 100644 --- a/src/osdep/gui/PanelQuickstart.cpp +++ b/src/osdep/gui/PanelQuickstart.cpp @@ -199,7 +199,7 @@ static void SetControlState(const int model) break; } - chkDFxWriteProtect[0]->setEnabled(df0Editable && !workprefs.floppy_read_only); + chkDFxWriteProtect[0]->setEnabled(df0Editable && !changed_prefs.floppy_read_only); cmdDFxInfo[0]->setEnabled(df0Editable); cmdDFxEject[0]->setEnabled(df0Editable); cmdDFxSelect[0]->setEnabled(df0Editable); @@ -221,9 +221,9 @@ static void SetControlState(const int model) static void AdjustPrefs(void) { - //const auto old_cs = workprefs.cs_compatible; + //const auto old_cs = changed_prefs.cs_compatible; - built_in_prefs(&workprefs, quickstart_model, quickstart_conf, 0, 0); + built_in_prefs(&changed_prefs, quickstart_model, quickstart_conf, 0, 0); switch (quickstart_model) { case 0: // A500 @@ -235,22 +235,22 @@ static void AdjustPrefs(void) case 6: // A4000 case 7: // A4000T // df0 always active - workprefs.floppyslots[0].dfxtype = DRV_35_DD; + changed_prefs.floppyslots[0].dfxtype = DRV_35_DD; // No CD available - workprefs.cdslots[0].inuse = false; - workprefs.cdslots[0].type = SCSI_UNIT_DISABLED; + changed_prefs.cdslots[0].inuse = false; + changed_prefs.cdslots[0].type = SCSI_UNIT_DISABLED; break; case 8: // CD32 case 9: // CDTV // No floppy drive available, CD available - workprefs.floppyslots[0].dfxtype = DRV_NONE; - workprefs.floppyslots[1].dfxtype = DRV_NONE; - workprefs.cdslots[0].inuse = true; - workprefs.cdslots[0].type = SCSI_UNIT_IMAGE; - workprefs.gfx_monitor.gfx_size.width = 768; - workprefs.gfx_monitor.gfx_size.height = 270; + changed_prefs.floppyslots[0].dfxtype = DRV_NONE; + changed_prefs.floppyslots[1].dfxtype = DRV_NONE; + changed_prefs.cdslots[0].inuse = true; + changed_prefs.cdslots[0].type = SCSI_UNIT_IMAGE; + changed_prefs.gfx_monitor.gfx_size.width = 768; + changed_prefs.gfx_monitor.gfx_size.height = 270; break; default: break; @@ -356,25 +356,25 @@ public: //--------------------------------------- // Eject CD from drive //--------------------------------------- - strncpy(workprefs.cdslots[0].name, "", MAX_DPATH); + strncpy(changed_prefs.cdslots[0].name, "", MAX_DPATH); AdjustDropDownControls(); } else if (actionEvent.getSource() == cmdCDSelect) { char tmp[MAX_DPATH]; - if (strlen(workprefs.cdslots[0].name) > 0) - strncpy(tmp, workprefs.cdslots[0].name, MAX_DPATH); + if (strlen(changed_prefs.cdslots[0].name) > 0) + strncpy(tmp, changed_prefs.cdslots[0].name, MAX_DPATH); else strncpy(tmp, currentDir, MAX_DPATH); if (SelectFile("Select CD image file", tmp, cdfile_filter)) { - if (strncmp(workprefs.cdslots[0].name, tmp, MAX_DPATH) != 0) + if (strncmp(changed_prefs.cdslots[0].name, tmp, MAX_DPATH) != 0) { - strncpy(workprefs.cdslots[0].name, tmp, MAX_DPATH); - workprefs.cdslots[0].inuse = true; - workprefs.cdslots[0].type = SCSI_UNIT_IMAGE; + strncpy(changed_prefs.cdslots[0].name, tmp, MAX_DPATH); + changed_prefs.cdslots[0].inuse = true; + changed_prefs.cdslots[0].type = SCSI_UNIT_IMAGE; AddFileToCDList(tmp, 1); extractPath(tmp, currentDir); @@ -408,18 +408,18 @@ public: if (idx < 0) { - strncpy(workprefs.cdslots[0].name, "", MAX_DPATH); + strncpy(changed_prefs.cdslots[0].name, "", MAX_DPATH); AdjustDropDownControls(); } else { - if (cdfileList.getElementAt(idx) != workprefs.cdslots[0].name) + if (cdfileList.getElementAt(idx) != changed_prefs.cdslots[0].name) { - strncpy(workprefs.cdslots[0].name, cdfileList.getElementAt(idx).c_str(), MAX_DPATH); - workprefs.cdslots[0].inuse = true; - workprefs.cdslots[0].type = SCSI_UNIT_IMAGE; + strncpy(changed_prefs.cdslots[0].name, cdfileList.getElementAt(idx).c_str(), MAX_DPATH); + changed_prefs.cdslots[0].inuse = true; + changed_prefs.cdslots[0].type = SCSI_UNIT_IMAGE; lstMRUCDList.erase(lstMRUCDList.begin() + idx); - lstMRUCDList.insert(lstMRUCDList.begin(), workprefs.cdslots[0].name); + lstMRUCDList.insert(lstMRUCDList.begin(), changed_prefs.cdslots[0].name); bIgnoreListChange = true; cboCDFile->setSelected(0); bIgnoreListChange = false; @@ -489,13 +489,13 @@ public: { if (chkNTSC->isSelected()) { - workprefs.ntscmode = true; - workprefs.chipset_refreshrate = 60; + changed_prefs.ntscmode = true; + changed_prefs.chipset_refreshrate = 60; } else { - workprefs.ntscmode = false; - workprefs.chipset_refreshrate = 50; + changed_prefs.ntscmode = false; + changed_prefs.chipset_refreshrate = 50; } RefreshPanelChipset(); } @@ -517,18 +517,18 @@ public: // Drive enabled/disabled //--------------------------------------- if (chkDFx[i]->isSelected()) - workprefs.floppyslots[i].dfxtype = DRV_35_DD; + changed_prefs.floppyslots[i].dfxtype = DRV_35_DD; else - workprefs.floppyslots[i].dfxtype = DRV_NONE; + changed_prefs.floppyslots[i].dfxtype = DRV_NONE; } else if (actionEvent.getSource() == chkDFxWriteProtect[i]) { //--------------------------------------- // Write-protect changed //--------------------------------------- - disk_setwriteprotect(&workprefs, i, workprefs.floppyslots[i].df, + disk_setwriteprotect(&changed_prefs, i, changed_prefs.floppyslots[i].df, chkDFxWriteProtect[i]->isSelected()); - if (disk_getwriteprotect(&workprefs, workprefs.floppyslots[i].df) != chkDFxWriteProtect[i]-> + if (disk_getwriteprotect(&changed_prefs, changed_prefs.floppyslots[i].df) != chkDFxWriteProtect[i]-> isSelected()) { // Failed to change write protection -> maybe filesystem doesn't support this @@ -560,7 +560,7 @@ public: //--------------------------------------- // Show info about current disk-image //--------------------------------------- - //if (workprefs.floppyslots[i].dfxtype != DRV_NONE && strlen(workprefs.floppyslots[i].df) > 0); + //if (changed_prefs.floppyslots[i].dfxtype != DRV_NONE && strlen(changed_prefs.floppyslots[i].df) > 0); // ToDo: Show info dialog } else if (actionEvent.getSource() == cmdDFxEject[i]) @@ -569,7 +569,7 @@ public: // Eject disk from drive //--------------------------------------- disk_eject(i); - strncpy(workprefs.floppyslots[i].df, "", MAX_DPATH); + strncpy(changed_prefs.floppyslots[i].df, "", MAX_DPATH); AdjustDropDownControls(); } else if (actionEvent.getSource() == cmdDFxSelect[i]) @@ -579,15 +579,15 @@ public: //--------------------------------------- char tmp[MAX_DPATH]; - if (strlen(workprefs.floppyslots[i].df) > 0) - strncpy(tmp, workprefs.floppyslots[i].df, MAX_DPATH); + if (strlen(changed_prefs.floppyslots[i].df) > 0) + strncpy(tmp, changed_prefs.floppyslots[i].df, MAX_DPATH); else strncpy(tmp, currentDir, MAX_DPATH); if (SelectFile("Select disk image file", tmp, diskfile_filter)) { - if (strncmp(workprefs.floppyslots[i].df, tmp, MAX_DPATH) != 0) + if (strncmp(changed_prefs.floppyslots[i].df, tmp, MAX_DPATH) != 0) { - strncpy(workprefs.floppyslots[i].df, tmp, MAX_DPATH); + strncpy(changed_prefs.floppyslots[i].df, tmp, MAX_DPATH); disk_insert(i, tmp); AddFileToDiskList(tmp, 1); extractPath(tmp, currentDir); @@ -626,17 +626,17 @@ public: if (idx < 0) { disk_eject(i); - strncpy(workprefs.floppyslots[i].df, "", MAX_DPATH); + strncpy(changed_prefs.floppyslots[i].df, "", MAX_DPATH); AdjustDropDownControls(); } else { - if (diskfileList.getElementAt(idx) != workprefs.floppyslots[i].df) + if (diskfileList.getElementAt(idx) != changed_prefs.floppyslots[i].df) { - strncpy(workprefs.floppyslots[i].df, diskfileList.getElementAt(idx).c_str(), MAX_DPATH); - disk_insert(i, workprefs.floppyslots[i].df); + strncpy(changed_prefs.floppyslots[i].df, diskfileList.getElementAt(idx).c_str(), MAX_DPATH); + disk_insert(i, changed_prefs.floppyslots[i].df); lstMRUDiskList.erase(lstMRUDiskList.begin() + idx); - lstMRUDiskList.insert(lstMRUDiskList.begin(), workprefs.floppyslots[i].df); + lstMRUDiskList.insert(lstMRUDiskList.begin(), changed_prefs.floppyslots[i].df); bIgnoreListChange = true; cboDFxFile[i]->setSelected(0); bIgnoreListChange = false; @@ -877,11 +877,11 @@ static void AdjustDropDownControls(void) { cboDFxFile[i]->clearSelected(); - if (workprefs.floppyslots[i].dfxtype != DRV_NONE && strlen(workprefs.floppyslots[i].df) > 0) + if (changed_prefs.floppyslots[i].dfxtype != DRV_NONE && strlen(changed_prefs.floppyslots[i].df) > 0) { for (unsigned int j = 0; j < lstMRUDiskList.size(); ++j) { - if (strcmp(lstMRUDiskList[j].c_str(), workprefs.floppyslots[i].df) == 0) + if (strcmp(lstMRUDiskList[j].c_str(), changed_prefs.floppyslots[i].df) == 0) { cboDFxFile[i]->setSelected(j); break; @@ -891,11 +891,11 @@ static void AdjustDropDownControls(void) } cboCDFile->clearSelected(); - if (workprefs.cdslots[0].inuse && strlen(workprefs.cdslots[0].name) > 0) + if (changed_prefs.cdslots[0].inuse && strlen(changed_prefs.cdslots[0].name) > 0) { for (unsigned int i = 0; i < lstMRUCDList.size(); ++i) { - if (lstMRUCDList[i].c_str() != workprefs.cdslots[0].name) + if (lstMRUCDList[i].c_str() != changed_prefs.cdslots[0].name) { cboCDFile->setSelected(i); break; @@ -911,38 +911,38 @@ void RefreshPanelQuickstart(void) { auto prevAvailable = true; - chkNTSC->setSelected(workprefs.ntscmode); + chkNTSC->setSelected(changed_prefs.ntscmode); AdjustDropDownControls(); - workprefs.nr_floppies = 0; + changed_prefs.nr_floppies = 0; for (auto i = 0; i < 4; ++i) { - const auto driveEnabled = workprefs.floppyslots[i].dfxtype != DRV_NONE; + const auto driveEnabled = changed_prefs.floppyslots[i].dfxtype != DRV_NONE; if (i < 2) { chkDFx[i]->setSelected(driveEnabled); - chkDFxWriteProtect[i]->setSelected(disk_getwriteprotect(&workprefs, workprefs.floppyslots[i].df)); + chkDFxWriteProtect[i]->setSelected(disk_getwriteprotect(&changed_prefs, changed_prefs.floppyslots[i].df)); if (i == 0) chkDFx[i]->setEnabled(false); else chkDFx[i]->setEnabled(prevAvailable); cmdDFxInfo[i]->setEnabled(driveEnabled); - chkDFxWriteProtect[i]->setEnabled(driveEnabled && !workprefs.floppy_read_only); + chkDFxWriteProtect[i]->setEnabled(driveEnabled && !changed_prefs.floppy_read_only); cmdDFxEject[i]->setEnabled(driveEnabled); cmdDFxSelect[i]->setEnabled(driveEnabled); cboDFxFile[i]->setEnabled(driveEnabled); } prevAvailable = driveEnabled; if (driveEnabled) - workprefs.nr_floppies = i + 1; + changed_prefs.nr_floppies = i + 1; } - chkCD->setSelected(workprefs.cdslots[0].inuse); - cmdCDEject->setEnabled(workprefs.cdslots[0].inuse); - cmdCDSelect->setEnabled(workprefs.cdslots[0].inuse); - cboCDFile->setEnabled(workprefs.cdslots[0].inuse); + chkCD->setSelected(changed_prefs.cdslots[0].inuse); + cmdCDEject->setEnabled(changed_prefs.cdslots[0].inuse); + cmdCDSelect->setEnabled(changed_prefs.cdslots[0].inuse); + cboCDFile->setEnabled(changed_prefs.cdslots[0].inuse); chkQuickstartMode->setSelected(quickstart_start); } diff --git a/src/osdep/gui/PanelRAM.cpp b/src/osdep/gui/PanelRAM.cpp index e2ea5444..2f22f7f0 100644 --- a/src/osdep/gui/PanelRAM.cpp +++ b/src/osdep/gui/PanelRAM.cpp @@ -61,47 +61,47 @@ public: { if (actionEvent.getSource() == sldChipmem) { - workprefs.chipmem_size = ChipMem_values[int(sldChipmem->getValue())]; - if ((workprefs.chipmem_size > 0x200000) && (workprefs.fastmem[0].size > 0)) - workprefs.fastmem[0].size = 0; + changed_prefs.chipmem_size = ChipMem_values[int(sldChipmem->getValue())]; + if ((changed_prefs.chipmem_size > 0x200000) && (changed_prefs.fastmem[0].size > 0)) + changed_prefs.fastmem[0].size = 0; } if (actionEvent.getSource() == sldSlowmem) { - workprefs.bogomem_size = SlowMem_values[int(sldSlowmem->getValue())]; + changed_prefs.bogomem_size = SlowMem_values[int(sldSlowmem->getValue())]; } if (actionEvent.getSource() == sldFastmem) { - workprefs.fastmem[0].size = FastMem_values[int(sldFastmem->getValue())]; - if (workprefs.fastmem[0].size > 0 && workprefs.chipmem_size > 0x200000) - workprefs.chipmem_size = 0x200000; + changed_prefs.fastmem[0].size = FastMem_values[int(sldFastmem->getValue())]; + if (changed_prefs.fastmem[0].size > 0 && changed_prefs.chipmem_size > 0x200000) + changed_prefs.chipmem_size = 0x200000; } if (actionEvent.getSource() == sldZ3mem) { - workprefs.z3fastmem[0].size = FastMem_values[int(sldZ3mem->getValue())]; - if (workprefs.z3fastmem[0].size > max_z3fastmem) - workprefs.z3fastmem[0].size = max_z3fastmem; + changed_prefs.z3fastmem[0].size = FastMem_values[int(sldZ3mem->getValue())]; + if (changed_prefs.z3fastmem[0].size > max_z3fastmem) + changed_prefs.z3fastmem[0].size = max_z3fastmem; } if (actionEvent.getSource() == sldGfxmem) { - workprefs.rtgboards[0].rtgmem_size = FastMem_values[int(sldGfxmem->getValue())]; - workprefs.rtgboards[0].rtgmem_type = GFXBOARD_UAE_Z3; + changed_prefs.rtgboards[0].rtgmem_size = FastMem_values[int(sldGfxmem->getValue())]; + changed_prefs.rtgboards[0].rtgmem_type = GFXBOARD_UAE_Z3; } if (actionEvent.getSource() == sldA3000Lowmem) { - workprefs.mbresmem_low_size = A3000LowMem_values[int(sldA3000Lowmem->getValue())]; - if (currprefs.mbresmem_low_size != workprefs.mbresmem_low_size) + changed_prefs.mbresmem_low_size = A3000LowMem_values[int(sldA3000Lowmem->getValue())]; + if (currprefs.mbresmem_low_size != changed_prefs.mbresmem_low_size) DisableResume(); } if (actionEvent.getSource() == sldA3000Highmem) { - workprefs.mbresmem_high_size = A3000HighMem_values[int(sldA3000Highmem->getValue())]; - if (currprefs.mbresmem_high_size != workprefs.mbresmem_high_size) + changed_prefs.mbresmem_high_size = A3000HighMem_values[int(sldA3000Highmem->getValue())]; + if (currprefs.mbresmem_high_size != changed_prefs.mbresmem_high_size) DisableResume(); } @@ -278,7 +278,7 @@ void RefreshPanelRAM() for (i = 0; i < 5; ++i) { - if (workprefs.chipmem_size == ChipMem_values[i]) + if (changed_prefs.chipmem_size == ChipMem_values[i]) { sldChipmem->setValue(i); lblChipsize->setCaption(ChipMem_list[i]); @@ -288,7 +288,7 @@ void RefreshPanelRAM() for (i = 0; i < 5; ++i) { - if (workprefs.bogomem_size == SlowMem_values[i]) + if (changed_prefs.bogomem_size == SlowMem_values[i]) { sldSlowmem->setValue(i); lblSlowsize->setCaption(SlowMem_list[i]); @@ -298,7 +298,7 @@ void RefreshPanelRAM() for (i = 0; i < 5; ++i) { - if (workprefs.fastmem[0].size == FastMem_values[i]) + if (changed_prefs.fastmem[0].size == FastMem_values[i]) { sldFastmem->setValue(i); lblFastsize->setCaption(FastMem_list[i]); @@ -308,29 +308,29 @@ void RefreshPanelRAM() for (i = 0; i < 9; ++i) { - if (workprefs.z3fastmem[0].size == FastMem_values[i]) + if (changed_prefs.z3fastmem[0].size == FastMem_values[i]) { sldZ3mem->setValue(i); lblZ3size->setCaption(FastMem_list[i]); break; } } - sldZ3mem->setEnabled(!workprefs.address_space_24); + sldZ3mem->setEnabled(!changed_prefs.address_space_24); for (i = 0; i < 9; ++i) { - if (workprefs.rtgboards[0].rtgmem_size == FastMem_values[i]) + if (changed_prefs.rtgboards[0].rtgmem_size == FastMem_values[i]) { sldGfxmem->setValue(i); lblGfxsize->setCaption(FastMem_list[i]); break; } } - sldGfxmem->setEnabled(!workprefs.address_space_24); + sldGfxmem->setEnabled(!changed_prefs.address_space_24); for (i = 0; i < 3; ++i) { - if (workprefs.mbresmem_low_size == A3000LowMem_values[i]) + if (changed_prefs.mbresmem_low_size == A3000LowMem_values[i]) { sldA3000Lowmem->setValue(i); lblA3000Lowsize->setCaption(A3000LowMem_list[i]); @@ -340,7 +340,7 @@ void RefreshPanelRAM() for (i = 0; i < 4; ++i) { - if (workprefs.mbresmem_high_size == A3000HighMem_values[i]) + if (changed_prefs.mbresmem_high_size == A3000HighMem_values[i]) { sldA3000Highmem->setValue(i); lblA3000Highsize->setCaption(A3000HighMem_list[i]); diff --git a/src/osdep/gui/PanelROM.cpp b/src/osdep/gui/PanelROM.cpp index 8e5bcb73..d76bf6c0 100644 --- a/src/osdep/gui/PanelROM.cpp +++ b/src/osdep/gui/PanelROM.cpp @@ -99,7 +99,7 @@ public: { const auto rom = mainROMList->getROMat(cboMainROM->getSelected()); if (rom != nullptr) - strncpy(workprefs.romfile, rom->Path, sizeof(workprefs.romfile)); + strncpy(changed_prefs.romfile, rom->Path, sizeof(changed_prefs.romfile)); } }; @@ -113,9 +113,9 @@ public: { const auto rom = extROMList->getROMat(cboExtROM->getSelected()); if (rom != nullptr) - strncpy(workprefs.romextfile, rom->Path, sizeof(workprefs.romextfile)); + strncpy(changed_prefs.romextfile, rom->Path, sizeof(changed_prefs.romextfile)); else - strncpy(workprefs.romextfile, " ", sizeof(workprefs.romextfile)); + strncpy(changed_prefs.romextfile, " ", sizeof(changed_prefs.romextfile)); } }; @@ -128,9 +128,9 @@ public: { const auto rom = cartROMList->getROMat(cboCartROM->getSelected()); if (rom != nullptr) - strncpy(workprefs.cartfile, rom->Path, sizeof workprefs.cartfile); + strncpy(changed_prefs.cartfile, rom->Path, sizeof changed_prefs.cartfile); else - strncpy(workprefs.cartfile, "", sizeof workprefs.cartfile); + strncpy(changed_prefs.cartfile, "", sizeof changed_prefs.cartfile); } }; static CartROMActionListener* cartROMActionListener; @@ -154,7 +154,7 @@ public: strncpy(newrom->Path, tmp, MAX_DPATH); newrom->ROMType = ROMTYPE_KICK; lstAvailableROMs.push_back(newrom); - strncpy(workprefs.romfile, tmp, sizeof(workprefs.romfile)); + strncpy(changed_prefs.romfile, tmp, sizeof(changed_prefs.romfile)); RefreshPanelROM(); } cmdMainROM->requestFocus(); @@ -170,7 +170,7 @@ public: strncpy(newrom->Path, tmp, MAX_DPATH); newrom->ROMType = ROMTYPE_EXTCDTV; lstAvailableROMs.push_back(newrom); - strncpy(workprefs.romextfile, tmp, sizeof(workprefs.romextfile)); + strncpy(changed_prefs.romextfile, tmp, sizeof(changed_prefs.romextfile)); RefreshPanelROM(); } cmdExtROM->requestFocus(); @@ -186,7 +186,7 @@ public: strncpy(newrom->Path, tmp, MAX_DPATH); newrom->ROMType = ROMTYPE_CD32CART; lstAvailableROMs.push_back(newrom); - strncpy(workprefs.romextfile, tmp, sizeof(workprefs.romextfile)); + strncpy(changed_prefs.romextfile, tmp, sizeof(changed_prefs.romextfile)); RefreshPanelROM(); } cmdCartROM->requestFocus(); @@ -297,13 +297,13 @@ void ExitPanelROM() void RefreshPanelROM() { - auto idx = mainROMList->InitROMList(workprefs.romfile); + auto idx = mainROMList->InitROMList(changed_prefs.romfile); cboMainROM->setSelected(idx); - idx = extROMList->InitROMList(workprefs.romextfile); + idx = extROMList->InitROMList(changed_prefs.romextfile); cboExtROM->setSelected(idx); - idx = cartROMList->InitROMList(workprefs.cartfile); + idx = cartROMList->InitROMList(changed_prefs.cartfile); cboCartROM->setSelected(idx); } diff --git a/src/osdep/gui/PanelSound.cpp b/src/osdep/gui/PanelSound.cpp index f75fd1ef..952200d0 100644 --- a/src/osdep/gui/PanelSound.cpp +++ b/src/osdep/gui/PanelSound.cpp @@ -141,34 +141,34 @@ public: void action(const gcn::ActionEvent& actionEvent) override { if (actionEvent.getSource() == optSoundDisabled) - workprefs.produce_sound = 0; + changed_prefs.produce_sound = 0; else if (actionEvent.getSource() == optSoundDisabledEmu) - workprefs.produce_sound = 1; + changed_prefs.produce_sound = 1; else if (actionEvent.getSource() == optSoundEmulated) - workprefs.produce_sound = 2; + changed_prefs.produce_sound = 2; else if (actionEvent.getSource() == optSoundEmulatedBest) - workprefs.produce_sound = 3; + changed_prefs.produce_sound = 3; else if (actionEvent.getSource() == optMono) - workprefs.sound_stereo = 0; + changed_prefs.sound_stereo = 0; else if (actionEvent.getSource() == optStereo) - workprefs.sound_stereo = 1; + changed_prefs.sound_stereo = 1; else if (actionEvent.getSource() == cboFrequency) { switch (cboFrequency->getSelected()) { case 0: - workprefs.sound_freq = 11025; + changed_prefs.sound_freq = 11025; break; case 1: - workprefs.sound_freq = 22050; + changed_prefs.sound_freq = 22050; break; case 2: - workprefs.sound_freq = 32000; + changed_prefs.sound_freq = 32000; break; case 3: - workprefs.sound_freq = 44100; + changed_prefs.sound_freq = 44100; break; default: break; @@ -176,30 +176,30 @@ public: } else if (actionEvent.getSource() == cboInterpolation) - workprefs.sound_interpol = cboInterpolation->getSelected(); + changed_prefs.sound_interpol = cboInterpolation->getSelected(); else if (actionEvent.getSource() == cboFilter) { switch (cboFilter->getSelected()) { case 0: - workprefs.sound_filter = FILTER_SOUND_OFF; + changed_prefs.sound_filter = FILTER_SOUND_OFF; break; case 1: - workprefs.sound_filter = FILTER_SOUND_EMUL; - workprefs.sound_filter_type = 0; + changed_prefs.sound_filter = FILTER_SOUND_EMUL; + changed_prefs.sound_filter_type = 0; break; case 2: - workprefs.sound_filter = FILTER_SOUND_EMUL; - workprefs.sound_filter_type = 1; + changed_prefs.sound_filter = FILTER_SOUND_EMUL; + changed_prefs.sound_filter_type = 1; break; case 3: - workprefs.sound_filter = FILTER_SOUND_ON; - workprefs.sound_filter_type = 0; + changed_prefs.sound_filter = FILTER_SOUND_ON; + changed_prefs.sound_filter_type = 0; break; case 4: - workprefs.sound_filter = FILTER_SOUND_ON; - workprefs.sound_filter_type = 1; + changed_prefs.sound_filter = FILTER_SOUND_ON; + changed_prefs.sound_filter_type = 1; break; default: break; @@ -209,23 +209,23 @@ public: else if (actionEvent.getSource() == sldSeparation) { if (curr_separation_idx != int(sldSeparation->getValue()) - && workprefs.sound_stereo > 0) + && changed_prefs.sound_stereo > 0) { curr_separation_idx = int(sldSeparation->getValue()); - workprefs.sound_stereo_separation = 10 - curr_separation_idx; + changed_prefs.sound_stereo_separation = 10 - curr_separation_idx; } } else if (actionEvent.getSource() == sldStereoDelay) { if (curr_stereodelay_idx != int(sldStereoDelay->getValue()) - && workprefs.sound_stereo > 0) + && changed_prefs.sound_stereo > 0) { curr_stereodelay_idx = int(sldStereoDelay->getValue()); if (curr_stereodelay_idx > 0) - workprefs.sound_mixed_stereo_delay = curr_stereodelay_idx; + changed_prefs.sound_mixed_stereo_delay = curr_stereodelay_idx; else - workprefs.sound_mixed_stereo_delay = -1; + changed_prefs.sound_mixed_stereo_delay = -1; } } @@ -383,7 +383,7 @@ void RefreshPanelSound() { char tmp[10]; - switch (workprefs.produce_sound) + switch (changed_prefs.produce_sound) { case 0: optSoundDisabled->setSelected(true); @@ -401,12 +401,12 @@ void RefreshPanelSound() break; } - if (workprefs.sound_stereo == 0) + if (changed_prefs.sound_stereo == 0) optMono->setSelected(true); - else if (workprefs.sound_stereo == 1) + else if (changed_prefs.sound_stereo == 1) optStereo->setSelected(true); - switch (workprefs.sound_freq) + switch (changed_prefs.sound_freq) { case 11025: cboFrequency->setSelected(0); @@ -422,43 +422,43 @@ void RefreshPanelSound() break; } - cboInterpolation->setSelected(workprefs.sound_interpol); + cboInterpolation->setSelected(changed_prefs.sound_interpol); auto i = 0; - switch (workprefs.sound_filter) + switch (changed_prefs.sound_filter) { case 0: i = 0; break; case 1: - i = workprefs.sound_filter_type ? 2 : 1; + i = changed_prefs.sound_filter_type ? 2 : 1; break; case 2: - i = workprefs.sound_filter_type ? 4 : 3; + i = changed_prefs.sound_filter_type ? 4 : 3; break; default: break; } cboFilter->setSelected(i); - if (workprefs.sound_stereo == 0) + if (changed_prefs.sound_stereo == 0) { curr_separation_idx = 0; curr_stereodelay_idx = 0; } else { - curr_separation_idx = 10 - workprefs.sound_stereo_separation; - curr_stereodelay_idx = workprefs.sound_mixed_stereo_delay > 0 ? workprefs.sound_mixed_stereo_delay : 0; + curr_separation_idx = 10 - changed_prefs.sound_stereo_separation; + curr_stereodelay_idx = changed_prefs.sound_mixed_stereo_delay > 0 ? changed_prefs.sound_mixed_stereo_delay : 0; } sldSeparation->setValue(curr_separation_idx); - sldSeparation->setEnabled(workprefs.sound_stereo >= 1); + sldSeparation->setEnabled(changed_prefs.sound_stereo >= 1); snprintf(tmp, 10, "%d%%", 100 - 10 * curr_separation_idx); lblSeparationInfo->setCaption(tmp); sldStereoDelay->setValue(curr_stereodelay_idx); - sldStereoDelay->setEnabled(workprefs.sound_stereo >= 1); + sldStereoDelay->setEnabled(changed_prefs.sound_stereo >= 1); if (curr_stereodelay_idx <= 0) lblStereoDelayInfo->setCaption("-"); else diff --git a/src/osdep/gui/gui_handling.h b/src/osdep/gui/gui_handling.h index d45f4184..54375d45 100644 --- a/src/osdep/gui/gui_handling.h +++ b/src/osdep/gui/gui_handling.h @@ -1,8 +1,6 @@ #ifndef GUI_HANDLING_H #define GUI_HANDLING_H -extern struct uae_prefs workprefs; - #define GUI_WIDTH 800 #define GUI_HEIGHT 480 #define DISTANCE_BORDER 15