--- hatari/src/gui-sdl/dlgRom.c 2019/04/01 07:12:23 1.1.1.2 +++ hatari/src/gui-sdl/dlgRom.c 2019/04/09 08:57:07 1.1.1.11 @@ -1,10 +1,10 @@ /* Hatari - dlgRom.c - This file is distributed under the GNU Public License, version 2 or at - your option any later version. Read the file gpl.txt for details. + This file is distributed under the GNU General Public License, version 2 + or at your option any later version. Read the file gpl.txt for details. */ -char DlgRom_rcsid[] = "Hatari $Id: dlgRom.c,v 1.1.1.2 2019/04/01 07:12:23 root Exp $"; +const char DlgRom_fileid[] = "Hatari dlgRom.c : " __DATE__ " " __TIME__; #include "main.h" #include "configuration.h" @@ -28,74 +28,65 @@ static SGOBJ romdlg[] = { SGBOX, 0, 0, 1,1, 50,8, NULL }, { SGTEXT, 0, 0, 22,2, 9,1, "TOS setup" }, { SGTEXT, 0, 0, 2,5, 25,1, "TOS image:" }, - { SGBUTTON, 0, 0, 42,5, 8,1, "Browse" }, + { SGBUTTON, 0, 0, 42,5, 8,1, "_Browse" }, { SGTEXT, 0, 0, 2,7, 46,1, NULL }, { SGBOX, 0, 0, 1,10, 50,8, NULL }, { SGTEXT, 0, 0, 18,11, 15,1, "Cartridge setup" }, { SGTEXT, 0, 0, 2,14, 25,1, "Cartridge image:" }, - { SGBUTTON, 0, 0, 32,14, 8,1, "Eject" }, - { SGBUTTON, 0, 0, 42,14, 8,1, "Browse" }, + { SGBUTTON, 0, 0, 32,14, 8,1, "_Eject" }, + { SGBUTTON, 0, 0, 42,14, 8,1, "B_rowse" }, { SGTEXT, 0, 0, 2,16, 46,1, NULL }, { SGTEXT, 0, 0, 2,19, 25,1, "A reset is needed after changing these options." }, - { SGBUTTON, 0, 0, 16,21, 20,1, "Back to main menu" }, - { -1, 0, 0, 0,0, 0,0, NULL } + { SGBUTTON, SG_DEFAULT, 0, 16,21, 20,1, "Back to main menu" }, + { SGSTOP, 0, 0, 0,0, 0,0, NULL } }; /*-----------------------------------------------------------------------*/ -/* - Show and process the ROM dialog. -*/ +/** + * Show and process the ROM dialog. + */ void DlgRom_Main(void) { - char *tmpname; char szDlgTosName[47]; char szDlgCartName[47]; int but; - tmpname = malloc(FILENAME_MAX); - if (tmpname == NULL) - return; - SDLGui_CenterDlg(romdlg); - File_ShrinkName(szDlgTosName, DialogParams.Rom.szTosImageFileName, sizeof(szDlgTosName)-1); + File_ShrinkName(szDlgTosName, ConfigureParams.Rom.szTosImageFileName, sizeof(szDlgTosName)-1); romdlg[DLGROM_TOSNAME].txt = szDlgTosName; - File_ShrinkName(szDlgCartName, DialogParams.Rom.szCartridgeImageFileName, sizeof(szDlgCartName)-1); + File_ShrinkName(szDlgCartName, ConfigureParams.Rom.szCartridgeImageFileName, sizeof(szDlgCartName)-1); romdlg[DLGROM_CARTNAME].txt = szDlgCartName; do { - but = SDLGui_DoDialog(romdlg, NULL); + but = SDLGui_DoDialog(romdlg, NULL, false); switch (but) { case DLGROM_TOSBROWSE: - strcpy(tmpname, DialogParams.Rom.szTosImageFileName); - if (SDLGui_FileSelect(tmpname, NULL, FALSE)) /* Show and process the file selection dlg */ - { - strcpy(DialogParams.Rom.szTosImageFileName, tmpname); - File_ShrinkName(szDlgTosName, DialogParams.Rom.szTosImageFileName, sizeof(szDlgTosName)-1); - } + /* Show and process the file selection dlg */ + SDLGui_FileConfSelect("TOS ROM image:", szDlgTosName, + ConfigureParams.Rom.szTosImageFileName, + sizeof(szDlgTosName)-1, + false); break; case DLGROM_CARTEJECT: szDlgCartName[0] = 0; - DialogParams.Rom.szCartridgeImageFileName[0] = 0; + ConfigureParams.Rom.szCartridgeImageFileName[0] = 0; break; case DLGROM_CARTBROWSE: - strcpy(tmpname, DialogParams.Rom.szCartridgeImageFileName); - File_MakeAbsoluteName(tmpname); - if (SDLGui_FileSelect(tmpname, NULL, FALSE)) /* Show and process the file selection dlg */ - { - strcpy(DialogParams.Rom.szCartridgeImageFileName, tmpname); - File_ShrinkName(szDlgCartName, DialogParams.Rom.szCartridgeImageFileName, sizeof(szDlgCartName)-1); - } + /* Show and process the file selection dlg */ + SDLGui_FileConfSelect("Cartridge image:", szDlgCartName, + ConfigureParams.Rom.szCartridgeImageFileName, + sizeof(szDlgCartName)-1, + false); break; } } - while (but != DLGROM_EXIT && but != SDLGUI_QUIT && !bQuitProgram); - - free(tmpname); + while (but != DLGROM_EXIT && but != SDLGUI_QUIT + && but != SDLGUI_ERROR && !bQuitProgram); }