1#ifndef YAZE_APP_CORE_INPUT_H
2#define YAZE_APP_CORE_INPUT_H
4#define IMGUI_DEFINE_MATH_OPERATORS
13#include "absl/strings/string_view.h"
19#include "imgui/imgui.h"
20#include "imgui/misc/cpp/imgui_stdlib.h"
21#include "imgui_memory_editor.h"
30IMGUI_API
bool InputHex(
const char* label, uint64_t* data);
31IMGUI_API
bool InputHex(
const char* label,
int* data,
int num_digits = 4,
32 float input_width = 50.f);
34IMGUI_API
bool InputHexShort(
const char* label, uint32_t* data);
35IMGUI_API
bool InputHexWord(
const char* label, uint16_t* data,
36 float input_width = 50.f,
bool no_step =
false);
37IMGUI_API
bool InputHexWord(
const char* label, int16_t* data,
38 float input_width = 50.f,
bool no_step =
false);
39IMGUI_API
bool InputHexByte(
const char* label, uint8_t* data,
40 float input_width = 50.f,
bool no_step =
false);
42IMGUI_API
bool InputHexByte(
const char* label, uint8_t* data, uint8_t max_value,
43 float input_width = 50.f,
bool no_step =
false);
45IMGUI_API
bool ListBox(
const char* label,
int* current_item,
46 const std::vector<std::string>& items,
47 int height_in_items = -1);
59IMGUI_API ImGuiID
GetID(
const std::string&
id);
62 absl::string_view file_extensions,
63 std::optional<absl::string_view> button_text,
64 std::function<
void()> callback);
SNES 16-bit tile metadata container.
bool InputHexByte(const char *label, uint8_t *data, float input_width, bool no_step)
void ItemLabel(absl::string_view title, ItemLabelFlags flags)
constexpr ImVec2 kDefaultModalSize
bool InputHex(const char *label, uint64_t *data)
bool InputTileInfo(const char *label, gfx::TileInfo *tile_info)
void FileDialogPipeline(absl::string_view display_key, absl::string_view file_extensions, std::optional< absl::string_view > button_text, std::function< void()> callback)
bool InputHexShort(const char *label, uint32_t *data)
ImGuiID GetID(const std::string &id)
enum ItemLabelFlag { Left=1u<< 0u, Right=1u<< 1u, Default=Left, } ItemLabelFlags
constexpr ImVec2 kZeroPos
bool ListBox(const char *label, int *current_item, const std::vector< std::string > &items, int height_in_items)
bool InputHexWord(const char *label, uint16_t *data, float input_width, bool no_step)