Added ImGuiFileDialog to the project for opening ROMs
This commit is contained in:
3
.gitmodules
vendored
3
.gitmodules
vendored
@@ -1,3 +1,6 @@
|
|||||||
[submodule "src/Library/imgui"]
|
[submodule "src/Library/imgui"]
|
||||||
path = src/Library/imgui
|
path = src/Library/imgui
|
||||||
url = https://github.com/ocornut/imgui.git
|
url = https://github.com/ocornut/imgui.git
|
||||||
|
[submodule "src/Library/ImGuiFileDialog"]
|
||||||
|
path = src/Library/ImGuiFileDialog
|
||||||
|
url = https://github.com/aiekick/ImGuiFileDialog.git
|
||||||
|
|||||||
@@ -36,11 +36,25 @@ void Editor::DrawYazeMenu() const {
|
|||||||
}
|
}
|
||||||
ImGui::EndMenuBar();
|
ImGui::EndMenuBar();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// display
|
||||||
|
if (ImGuiFileDialog::Instance()->Display("ChooseFileDlgKey")) {
|
||||||
|
// action if OK
|
||||||
|
if (ImGuiFileDialog::Instance()->IsOk()) {
|
||||||
|
std::string filePathName = ImGuiFileDialog::Instance()->GetFilePathName();
|
||||||
|
std::string filePath = ImGuiFileDialog::Instance()->GetCurrentPath();
|
||||||
|
}
|
||||||
|
|
||||||
|
// close
|
||||||
|
ImGuiFileDialog::Instance()->Close();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Editor::DrawFileMenu() const {
|
void Editor::DrawFileMenu() const {
|
||||||
if (ImGui::MenuItem("Open", "Ctrl+O")) {
|
if (ImGui::MenuItem("Open", "Ctrl+O")) {
|
||||||
// TODO: Add the ability to open ALTTP ROM
|
// TODO: Add the ability to open ALTTP ROM
|
||||||
|
ImGuiFileDialog::Instance()->OpenDialog("ChooseFileDlgKey", "Open ROM", ".sfc,.smc", ".");
|
||||||
}
|
}
|
||||||
if (ImGui::BeginMenu("Open Recent")) {
|
if (ImGui::BeginMenu("Open Recent")) {
|
||||||
ImGui::MenuItem("alttp.sfc");
|
ImGui::MenuItem("alttp.sfc");
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
#include "imgui/backends/imgui_impl_sdl.h"
|
#include "imgui/backends/imgui_impl_sdl.h"
|
||||||
#include "imgui/backends/imgui_impl_sdlrenderer.h"
|
#include "imgui/backends/imgui_impl_sdlrenderer.h"
|
||||||
#include "imgui/misc/cpp/imgui_stdlib.h"
|
#include "imgui/misc/cpp/imgui_stdlib.h"
|
||||||
|
#include "ImGuiFileDialog/ImGuiFileDialog.h"
|
||||||
|
|
||||||
namespace yaze {
|
namespace yaze {
|
||||||
namespace Application {
|
namespace Application {
|
||||||
|
|||||||
@@ -15,6 +15,14 @@ target_include_directories("ImGui" PUBLIC ${IMGUI_PATH})
|
|||||||
target_include_directories(ImGui PUBLIC ${SDL2_INCLUDE_DIR})
|
target_include_directories(ImGui PUBLIC ${SDL2_INCLUDE_DIR})
|
||||||
target_compile_definitions(ImGui PUBLIC IMGUI_IMPL_OPENGL_LOADER_CUSTOM=<SDL2/SDL_opengl.h> GL_GLEXT_PROTOTYPES=1)
|
target_compile_definitions(ImGui PUBLIC IMGUI_IMPL_OPENGL_LOADER_CUSTOM=<SDL2/SDL_opengl.h> GL_GLEXT_PROTOTYPES=1)
|
||||||
|
|
||||||
|
# ImGuiFileDialog
|
||||||
|
set(IMGUI_FILE_DLG_PATH "Library/ImGuiFileDialog")
|
||||||
|
file(GLOB IMGUI_FILE_DLG_SOURCES ${IMGUI_FILE_DLG_PATH}/*.cpp)
|
||||||
|
add_library("ImGuiFileDialog" STATIC ${IMGUI_FILE_DLG_SOURCES})
|
||||||
|
target_include_directories(ImGuiFileDialog PUBLIC ${IMGUI_PATH})
|
||||||
|
target_include_directories(ImGuiFileDialog PUBLIC ${SDL2_INCLUDE_DIR})
|
||||||
|
target_compile_definitions(ImGuiFileDialog PUBLIC IMGUI_IMPL_OPENGL_LOADER_CUSTOM=<SDL2/SDL_opengl.h> GL_GLEXT_PROTOTYPES=1)
|
||||||
|
|
||||||
# Executable Linkage --------------------------------------------------------------------------------------
|
# Executable Linkage --------------------------------------------------------------------------------------
|
||||||
add_executable(
|
add_executable(
|
||||||
yaze
|
yaze
|
||||||
@@ -32,6 +40,7 @@ add_executable(
|
|||||||
${IMGUI_PATH}/backends/imgui_impl_sdl.cpp
|
${IMGUI_PATH}/backends/imgui_impl_sdl.cpp
|
||||||
${IMGUI_PATH}/backends/imgui_impl_sdlrenderer.cpp
|
${IMGUI_PATH}/backends/imgui_impl_sdlrenderer.cpp
|
||||||
${IMGUI_PATH}/misc/cpp/imgui_stdlib.cpp
|
${IMGUI_PATH}/misc/cpp/imgui_stdlib.cpp
|
||||||
|
${IMGUI_FILE_DLG_PATH}/ImGuiFileDialog.cpp
|
||||||
)
|
)
|
||||||
|
|
||||||
target_include_directories(
|
target_include_directories(
|
||||||
|
|||||||
1
src/Library/ImGuiFileDialog
Submodule
1
src/Library/ImGuiFileDialog
Submodule
Submodule src/Library/ImGuiFileDialog added at dabf09615e
Reference in New Issue
Block a user