--- hatari/src/gui-sdl/dlgNewDisk.c 2019/04/09 08:53:29 1.1.1.7 +++ hatari/src/gui-sdl/dlgNewDisk.c 2019/04/09 08:57:06 1.1.1.9 @@ -24,33 +24,39 @@ const char DlgNewDisk_fileid[] = "Hatari #define DLGNEWDISK_SECTORS36 11 #define DLGNEWDISK_SIDES1 13 #define DLGNEWDISK_SIDES2 14 -#define DLGNEWDISK_SAVE 15 -#define DLGNEWDISK_EXIT 16 +#define DLGNEWDISK_LABEL 16 +#define DLGNEWDISK_SAVE 17 +#define DLGNEWDISK_EXIT 18 static char szTracks[3]; static int nTracks = 80; +#define DLGNEWDISK_LABEL_SIZE (8+3) +static char dlgLabel[ DLGNEWDISK_LABEL_SIZE+1 ]; + /* The new disk image dialog: */ static SGOBJ newdiskdlg[] = { - { SGBOX, 0, 0, 0,0, 29,14, NULL }, + { SGBOX, 0, 0, 0,0, 29,16, NULL }, { SGTEXT, 0, 0, 6,1, 16,1, "New floppy image" }, { SGTEXT, 0, 0, 2,3, 7,1, "Tracks:" }, - { SGBUTTON, 0, 0, 12,3, 1,1, "\x04" }, /* Left-arrow button */ + { SGBUTTON, 0, 0, 12,3, 1,1, "\x04", SG_SHORTCUT_LEFT }, { SGTEXT, 0, 0, 14,3, 2,1, szTracks }, - { SGBUTTON, 0, 0, 17,3, 1,1, "\x03" }, /* Right-arrow button */ + { SGBUTTON, 0, 0, 17,3, 1,1, "\x03", SG_SHORTCUT_RIGHT }, { SGTEXT, 0, 0, 2,5, 8,1, "Sectors:" }, - { SGRADIOBUT, 0, SG_SELECTED, 12,5, 4,1, " 9" }, - { SGRADIOBUT, 0, 0, 17,5, 4,1, "10" }, + { SGRADIOBUT, 0, SG_SELECTED, 12,5, 4,1, " _9" }, + { SGRADIOBUT, 0, 0, 17,5, 4,1, "1_0" }, { SGRADIOBUT, 0, 0, 22,5, 4,1, "11" }, - { SGRADIOBUT, 0, 0, 12,6, 9,1, "18 (HD)" }, - { SGRADIOBUT, 0, 0, 12,7, 9,1, "36 (ED)" }, + { SGRADIOBUT, 0, 0, 12,6, 9,1, "1_8 (HD)" }, + { SGRADIOBUT, 0, 0, 12,7, 9,1, "3_6 (ED)" }, { SGTEXT, 0, 0, 2,9, 6,1, "Sides:" }, - { SGRADIOBUT, 0, 0, 12,9, 4,1, "1" }, - { SGRADIOBUT, 0, SG_SELECTED, 17,9, 4,1, "2" }, - { SGBUTTON, 0, 0, 4,12, 8,1, "Create" }, - { SGBUTTON, 0, 0, 18,12, 6,1, "Back" }, - { -1, 0, 0, 0,0, 0,0, NULL } + { SGRADIOBUT, 0, 0, 12,9, 3,1, "_1" }, + { SGRADIOBUT, 0, SG_SELECTED, 17,9, 3,1, "_2" }, + { SGTEXT, 0, 0, 2,11, 6,1, "Label:" }, + { SGEDITFIELD, 0, 0, 12,11, DLGNEWDISK_LABEL_SIZE,1, dlgLabel }, + { SGBUTTON, SG_DEFAULT, 0, 4,14, 8,1, "_Create" }, + { SGBUTTON, SG_CANCEL, 0, 18,14, 6,1, "_Back" }, + { SGSTOP, 0, 0, 0,0, 0,0, NULL } }; #define DEFAULT_DISK_NAME "new_disk.st" @@ -90,7 +96,7 @@ static bool DlgNewDisk_CreateDisk(const else nSides = 2; - return CreateBlankImage_CreateFile(path, nTracks, nSectors, nSides); + return CreateBlankImage_CreateFile(path, nTracks, nSectors, nSides, dlgLabel); } @@ -116,7 +122,7 @@ char *DlgNewDisk_Main(void) /* Draw and process the dialog */ do { - but = SDLGui_DoDialog(newdiskdlg, NULL); + but = SDLGui_DoDialog(newdiskdlg, NULL, false); switch(but) { case DLGNEWDISK_DECTRACK: @@ -130,13 +136,12 @@ char *DlgNewDisk_Main(void) sprintf(szTracks, "%i", nTracks); break; case DLGNEWDISK_SAVE: - tmpname = SDLGui_FileSelect(szNewDiskName, NULL, true); + tmpname = SDLGui_FileSelect("New floppy image:", szNewDiskName, NULL, true); if (tmpname) { if (DlgNewDisk_CreateDisk(tmpname)) { - if (retname) - free(retname); + free(retname); retname = tmpname; } else