Add file dialogs

This commit is contained in:
Semphris
2024-03-10 17:27:42 -04:00
committed by Sam Lantinga
parent 30e93b40c2
commit 70c2e15615
21 changed files with 2335 additions and 3 deletions

View File

@@ -255,6 +255,7 @@ define_sdl_subsystem(Haptic)
define_sdl_subsystem(Hidapi)
define_sdl_subsystem(Power)
define_sdl_subsystem(Sensor)
define_sdl_subsystem(Dialog)
cmake_dependent_option(SDL_FRAMEWORK "Build SDL libraries as Apple Framework" OFF "APPLE" OFF)
if(SDL_FRAMEWORK)
@@ -2411,7 +2412,7 @@ elseif(HAIKU)
sdl_glob_sources("${SDL3_SOURCE_DIR}/src/core/haiku/*.cc")
CheckPTHREAD()
sdl_link_dependency(base LIBS root be media game device textencoding)
sdl_link_dependency(base LIBS root be media game device textencoding tracker)
elseif(RISCOS)
sdl_glob_sources("${SDL3_SOURCE_DIR}/src/misc/riscos/*.c")
@@ -2754,6 +2755,24 @@ elseif(N3DS)
sdl_glob_sources("${SDL3_SOURCE_DIR}/src/file/n3ds/*.c")
endif()
if (SDL_DIALOG)
if(UNIX AND NOT APPLE AND NOT RISCOS AND NOT HAIKU)
sdl_sources(${SDL3_SOURCE_DIR}/src/dialog/unix/SDL_unixdialog.c)
sdl_sources(${SDL3_SOURCE_DIR}/src/dialog/unix/SDL_portaldialog.c)
sdl_sources(${SDL3_SOURCE_DIR}/src/dialog/unix/SDL_zenitydialog.c)
set(HAVE_SDL_DIALOG TRUE)
elseif(HAIKU)
sdl_sources(${SDL3_SOURCE_DIR}/src/dialog/haiku/SDL_haikudialog.cc)
set(HAVE_SDL_DIALOG TRUE)
elseif(WINDOWS AND NOT WINDOWS_STORE)
sdl_sources(${SDL3_SOURCE_DIR}/src/dialog/windows/SDL_windowsdialog.c)
set(HAVE_SDL_DIALOG TRUE)
elseif(APPLE)
sdl_sources(${SDL3_SOURCE_DIR}/src/dialog/cocoa/SDL_cocoadialog.m)
set(HAVE_SDL_DIALOG TRUE)
endif()
endif()
# Platform-independent options
if(SDL_VIDEO)
@@ -2809,6 +2828,10 @@ if(NOT HAVE_SDL_MISC)
set(SDL_MISC_DUMMY 1)
sdl_glob_sources("${SDL3_SOURCE_DIR}/src/misc/dummy/*.c")
endif()
if(NOT HAVE_SDL_DIALOG)
set(SDL_DIALOG_DUMMY 1)
sdl_sources(${SDL3_SOURCE_DIR}/src/dialog/dummy/SDL_dummydialog.c)
endif()
if(NOT HAVE_CAMERA)
set(SDL_CAMERA_DRIVER_DUMMY 1)
sdl_glob_sources("${SDL3_SOURCE_DIR}/src/camera/dummy/*.c")