MCPcopy Create free account
hub / github.com/aardappel/treesheets / LStringInputText

Function LStringInputText

lobster/src/imbind.cpp:58–78  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

56}
57
58LString *LStringInputText(VM &vm, const char *label, LString *str, ImGuiInputTextFlags flags = 0) {
59 struct InputTextCallbackData {
60 LString *str;
61 VM &vm;
62 static int InputTextCallback(ImGuiInputTextCallbackData *data) {
63 if (data->EventFlag != ImGuiInputTextFlags_CallbackResize) return 0;
64 auto cbd = (InputTextCallbackData *)data->UserData;
65 IM_ASSERT(data->Buf == cbd->str->data());
66 auto str = cbd->vm.NewString(string_view { data->Buf, (size_t)data->BufTextLen });
67 cbd->str->Dec(cbd->vm);
68 cbd->str = str;
69 data->Buf = (char *)str->data();
70 return 0;
71 }
72 };
73 flags |= ImGuiInputTextFlags_CallbackResize;
74 InputTextCallbackData cbd { str, vm };
75 ImGui::InputText(label, (char *)str->data(), str->len + 1, flags,
76 InputTextCallbackData::InputTextCallback, &cbd);
77 return cbd.str;
78}
79
80void ValToGUI(VM &vm, Value *v, const TypeInfo &ti, string_view label, bool expanded) {
81 auto l = null_terminated(label);

Callers 2

ValToGUIFunction · 0.85
AddIMGUIFunction · 0.85

Calls 1

dataMethod · 0.45

Tested by

no test coverage detected