This shows you the differences between two versions of the page.
Last revision Both sides next revision | |||
addons:functions:imgui.imguitexteditcallbackdata [2016/06/27 04:44] atom0s created |
addons:functions:imgui.imguitexteditcallbackdata [2016/06/27 05:26] atom0s |
||
---|---|---|---|
Line 6: | Line 6: | ||
struct ImGuiTextEditCallbackData | struct ImGuiTextEditCallbackData | ||
{ | { | ||
- | ImGuiInputTextFlags EventFlags; // ImGuiInputTextFlags_Callback... value from the ImGuiInputTextFlags_ enumeration. | + | ImGuiInputTextFlags EventFlags; // ImGuiInputTextFlags_Callback... value from the ImGuiInputTextFlags_ enumeration. (Read Only) |
- | ImGuiInputTextFlags Flags; // The flags of the input creation call. | + | ImGuiInputTextFlags Flags; // The flags of the input creation call. (Read Only) |
- | bool ReadOnly; // The readonly flag of the input box. | + | bool ReadOnly; // The readonly flag of the input box. (Read Only) |
ImWchar EventChar; // The character that was input. | ImWchar EventChar; // The character that was input. | ||
- | ImGuiKey EventKey; // The key pressed to cause this event. | + | ImGuiKey EventKey; // The key pressed to cause this event. (Read Only) |
char* Buf; // The current buffer of text in the input. | char* Buf; // The current buffer of text in the input. | ||
int BufTextLen; // The current length of text in buf. | int BufTextLen; // The current length of text in buf. | ||
- | int BufSize; // Maximum length that buf can hold. | + | int BufSize; // Maximum length that buf can hold. (Read Only) |
bool BufDirty; // Must be set to true if Buf or BufTextLen is modified. | bool BufDirty; // Must be set to true if Buf or BufTextLen is modified. | ||
int CursorPos; // The current carrot position within the input text. | int CursorPos; // The current carrot position within the input text. | ||
Line 21: | Line 21: | ||
</code> | </code> | ||
- | Lua should not attempt to edit the buffer as it can cause crashes due to how buffers are setup in this manner. Most of this structure is readonly and should only be used for reference. | + | Some fields are read-only and cannot be edited. |
+ | |||
+ | If you edit the 'Buf' field, you must update the BufTextLen to the new length as well as set BufDirty to true in order for it to be properly updated. | ||
+ | |||
+ | You may also want to set CursorPos to the end of the string for a more expected result. |