--- hatari/src/includes/sdlgui.h 2019/04/01 07:11:27 1.1.1.3 +++ hatari/src/includes/sdlgui.h 2019/04/01 07:13:38 1.1.1.7 @@ -25,8 +25,10 @@ enum /* Object flags: */ -#define SG_TOUCHEXIT 1 -#define SG_EXIT 2 /* Not yet tested */ +#define SG_TOUCHEXIT 1 /* Exit immediately when mouse button is pressed down */ +#define SG_EXIT 2 /* Exit when mouse button has been pressed (and released) */ +#define SG_DEFAULT 4 /* Marks a default button, selectable with return key */ +#define SG_CANCEL 8 /* Marks a cancel button, selectable with ESC key */ /* Object states: */ #define SG_SELECTED 1 @@ -40,12 +42,17 @@ enum #define SGARROWDOWN 2 #define SGFOLDER 5 +/* Return codes: */ +#define SDLGUI_ERROR -1 +#define SDLGUI_QUIT -2 +#define SDLGUI_UNKNOWNEVENT -3 + typedef struct { int type; /* What type of object */ int flags; /* Object flags */ - int state; /* Object state */ + int state; /* Object state */ int x, y; /* The offset to the upper left corner */ int w, h; /* Width and height */ char *txt; /* Text string */ @@ -54,23 +61,11 @@ typedef struct extern int SDLGui_Init(void); extern int SDLGui_UnInit(void); -extern int SDLGui_PrepareFont(void); -extern int SDLGui_DoDialog(SGOBJ *dlg); +extern int SDLGui_SetScreen(SDL_Surface *pScrn); +extern void SDLGui_DrawDialog(const SGOBJ *dlg); +extern int SDLGui_DoDialog(SGOBJ *dlg, SDL_Event *pEventOut); extern void SDLGui_CenterDlg(SGOBJ *dlg); - -/* prototypes for gui-sdl/dlg*.c functions */ -extern int Dialog_MainDlg(BOOL *bReset); -extern int SDLGui_FileSelect(char *path_and_name, char *zip_path, BOOL bAllowNew); -extern void Dialog_AboutDlg(void); -extern void Dialog_DeviceDlg(void); -extern void Dialog_DiscDlg(void); -extern void Dialog_JoyDlg(void); -extern void Dialog_KeyboardDlg(void); -extern void Dialog_MemDlg(void); -extern void DlgNewDisc_Main(void); -extern void Dialog_ScreenDlg(void); -extern void Dialog_SoundDlg(void); -extern void Dialog_SystemDlg(void); -extern void Dialog_TosGemDlg(void); +extern char* SDLGui_FileSelect(const char *path_and_name, char **zip_path, BOOL bAllowNew); +extern BOOL SDLGui_FileConfSelect(char *dlgname, char *confname, int maxlen, BOOL bAllowNew); #endif