8 SDL_MessageBoxFlags
flags,
14 const SDL_MessageBoxData *messageboxdata,
18 SDL_DialogFileCallback callback,
21 const char *default_location,
25 SDL_DialogFileCallback callback,
28 const SDL_DialogFileFilter *filters,
30 const char *default_location,
36#define RESOLVE(module, type, name) ((type)GetProcAddress(module, name))
52 callback(userdata,
NULL, -1);
64 return module ? module : GetModuleHandleA(sdl_module_name);
71 "SDL_ShowSimpleMessageBox"
77 "SDL_ShowOpenFolderDialog"
82 "SDL_ShowOpenFileDialog"
110 module = LoadLibraryA(path);
122 SDL_MessageBoxFlags
flags,
128 MessageBoxA(
NULL, message, title, MB_OK | MB_ICONERROR);
144 SDL_DialogFileCallback callback,
147 const char *default_location,
159 SDL_DialogFileCallback callback,
162 const SDL_DialogFileFilter *filters,
164 const char *default_location,
DTTR_Graphics_COM_Direct3DDevice7 void DWORD flags DWORD void DWORD flags
DTTR_Graphics_COM_DirectDrawSurface7 DWORD flags void NULL
#define DTTR_LOG_ERROR(...)
struct SDL_Window SDL_Window
sds DTTR_Path_ModuleSibling(void *module, const char *relative_path)
bool DTTR_Path_CopySds(char *out, size_t out_size, sds value)
static const char sdl_module_path[]
static show_simple_message_box_fn show_simple_message_box
void(* delay_fn)(Uint32 ms)
static show_open_folder_dialog_fn show_open_folder_dialog
static bool load_attempted
bool DTTR_SDL_ShowMessageBox(const SDL_MessageBoxData *messageboxdata, int *buttonid)
void DTTR_SDL_Delay(Uint32 ms)
static show_message_box_fn show_message_box
#define RESOLVE(module, type, name)
static HMODULE get_loaded_sdl_module()
static pump_events_fn pump_events
static const char sdl_module_name[]
static show_open_file_dialog_fn show_open_file_dialog
void DTTR_SDL_ShowOpenFileDialog(SDL_DialogFileCallback callback, void *userdata, SDL_Window *window, const SDL_DialogFileFilter *filters, int nfilters, const char *default_location, bool allow_many)
void DTTR_SDL_ShowOpenFolderDialog(SDL_DialogFileCallback callback, void *userdata, SDL_Window *window, const char *default_location, bool allow_many)
void DTTR_SDL_PumpEvents()
static bool resolve_sdl_exports(HMODULE module)
bool(* show_message_box_fn)(const SDL_MessageBoxData *messageboxdata, int *buttonid)
void(* show_open_file_dialog_fn)(SDL_DialogFileCallback callback, void *userdata, SDL_Window *window, const SDL_DialogFileFilter *filters, int nfilters, const char *default_location, bool allow_many)
static bool resolve_sdl_dll_path(char *out, size_t out_size)
void(* show_open_folder_dialog_fn)(SDL_DialogFileCallback callback, void *userdata, SDL_Window *window, const char *default_location, bool allow_many)
static void report_dialog_failure(SDL_DialogFileCallback callback, void *userdata)
bool DTTR_SDL_ShowSimpleMessageBox(SDL_MessageBoxFlags flags, const char *title, const char *message, SDL_Window *window)
bool(* show_simple_message_box_fn)(SDL_MessageBoxFlags flags, const char *title, const char *message, SDL_Window *window)