Remove ImGuiFileDialog integration and replace with FileDialogWrapper in assembly and tile editors

This commit is contained in:
scawful
2024-12-31 15:47:51 -05:00
parent c505c2f94c
commit 398ba36811
6 changed files with 95 additions and 142 deletions

View File

@@ -4,7 +4,6 @@
#include <optional>
#include <string>
#include "ImGuiFileDialog/ImGuiFileDialog.h"
#include "absl/strings/string_view.h"
#include "app/gfx/snes_tile.h"
#include "imgui/imgui.h"
@@ -257,23 +256,6 @@ bool InputTileInfo(const char* label, gfx::TileInfo* tile_info) {
ImGuiID GetID(const std::string& id) { return ImGui::GetID(id.c_str()); }
void FileDialogPipeline(absl::string_view display_key,
absl::string_view file_extensions,
std::optional<absl::string_view> button_text,
std::function<void()> callback) {
if (button_text.has_value() && ImGui::Button(button_text->data())) {
ImGuiFileDialog::Instance()->OpenDialog(display_key.data(), "Choose File",
file_extensions.data(), ".");
}
if (ImGuiFileDialog::Instance()->Display(
display_key.data(), ImGuiWindowFlags_NoCollapse, ImVec2(600, 400))) {
if (ImGuiFileDialog::Instance()->IsOk()) {
callback();
}
ImGuiFileDialog::Instance()->Close();
}
}
void AddTableColumn(Table &table, const std::string &label, GuiElement element) {
table.column_labels.push_back(label);
table.column_contents.push_back(element);

View File

@@ -52,11 +52,6 @@ IMGUI_API void ItemLabel(absl::string_view title, ItemLabelFlags flags);
IMGUI_API ImGuiID GetID(const std::string &id);
void FileDialogPipeline(absl::string_view display_key,
absl::string_view file_extensions,
std::optional<absl::string_view> button_text,
std::function<void()> callback);
using GuiElement = std::variant<std::function<void()>, std::string>;
struct Table {