Enhance CMake configuration and update dependencies
- Updated CMakeLists.txt to set policies for older submodules, improving compatibility with various CMake versions. - Modified vcpkg.json to change the SDL2 dependency to a core variant and updated the builtin baseline to the latest version, ensuring better package management. - Improved file dialog functionality in file_dialog.cc by adding conditional compilation for NFD support, providing fallback behavior when NFD is unavailable.
This commit is contained in:
@@ -1,6 +1,14 @@
|
||||
# Yet Another Zelda3 Editor
|
||||
# by scawful
|
||||
cmake_minimum_required(VERSION 3.16)
|
||||
|
||||
# Set policy for older submodules
|
||||
if(POLICY CMP0077)
|
||||
cmake_policy(SET CMP0077 NEW)
|
||||
endif()
|
||||
if(POLICY CMP0135)
|
||||
cmake_policy(SET CMP0135 NEW)
|
||||
endif()
|
||||
project(yaze VERSION 0.3.0
|
||||
DESCRIPTION "Yet Another Zelda3 Editor"
|
||||
LANGUAGES CXX C)
|
||||
|
||||
@@ -216,9 +216,12 @@ std::vector<std::string> FileDialogWrapper::GetFilesInFolder(
|
||||
|
||||
#elif defined(__linux__)
|
||||
|
||||
#ifdef YAZE_ENABLE_NFD
|
||||
#include <nfd.h>
|
||||
#endif
|
||||
|
||||
std::string FileDialogWrapper::ShowOpenFileDialog() {
|
||||
#ifdef YAZE_ENABLE_NFD
|
||||
NFD_Init();
|
||||
nfdu8char_t *out_path = NULL;
|
||||
nfdu8filter_item_t filters[1] = {{"Rom File", "sfc,smc"}};
|
||||
@@ -237,9 +240,14 @@ std::string FileDialogWrapper::ShowOpenFileDialog() {
|
||||
}
|
||||
NFD_Quit();
|
||||
return "Error: NFD_OpenDialog";
|
||||
#else
|
||||
// NFD not available - return empty string or implement fallback
|
||||
return "";
|
||||
#endif
|
||||
}
|
||||
|
||||
std::string FileDialogWrapper::ShowOpenFolderDialog() {
|
||||
#ifdef YAZE_ENABLE_NFD
|
||||
NFD_Init();
|
||||
nfdu8char_t *out_path = NULL;
|
||||
nfdresult_t result = NFD_PickFolderU8(&out_path);
|
||||
@@ -254,6 +262,10 @@ std::string FileDialogWrapper::ShowOpenFolderDialog() {
|
||||
}
|
||||
NFD_Quit();
|
||||
return "Error: NFD_PickFolder";
|
||||
#else
|
||||
// NFD not available - return empty string or implement fallback
|
||||
return "";
|
||||
#endif
|
||||
}
|
||||
|
||||
std::vector<std::string> FileDialogWrapper::GetSubdirectoriesInFolder(
|
||||
|
||||
@@ -5,8 +5,7 @@
|
||||
"dependencies": [
|
||||
"zlib",
|
||||
"libpng",
|
||||
"sdl2",
|
||||
"abseil"
|
||||
"sdl2[core]"
|
||||
],
|
||||
"builtin-baseline": "c8696863d371ab7f46e213d8f5ca923c4aef2a00"
|
||||
"builtin-baseline": "2024.12.16"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user