mirror of
https://github.com/ocornut/imgui.git
synced 2026-05-30 05:45:29 +08:00
+4
-5
@@ -3710,9 +3710,9 @@ bool ImGui::TempInputScalar(const ImRect& bb, ImGuiID id, const char* label, ImG
|
|||||||
|
|
||||||
ImGuiInputTextFlags flags = ImGuiInputTextFlags_AutoSelectAll | (ImGuiInputTextFlags)ImGuiInputTextFlags_LocalizeDecimalPoint;
|
ImGuiInputTextFlags flags = ImGuiInputTextFlags_AutoSelectAll | (ImGuiInputTextFlags)ImGuiInputTextFlags_LocalizeDecimalPoint;
|
||||||
g.LastItemData.ItemFlags |= ImGuiItemFlags_NoMarkEdited; // Because TempInputText() uses ImGuiInputTextFlags_MergedItem it doesn't submit a new item, so we poke LastItemData.
|
g.LastItemData.ItemFlags |= ImGuiItemFlags_NoMarkEdited; // Because TempInputText() uses ImGuiInputTextFlags_MergedItem it doesn't submit a new item, so we poke LastItemData.
|
||||||
bool value_changed = false;
|
if (!TempInputText(bb, id, label, data_buf, IM_COUNTOF(data_buf), flags))
|
||||||
if (TempInputText(bb, id, label, data_buf, IM_COUNTOF(data_buf), flags))
|
return false;
|
||||||
{
|
|
||||||
// Backup old value
|
// Backup old value
|
||||||
size_t data_type_size = type_info->Size;
|
size_t data_type_size = type_info->Size;
|
||||||
ImGuiDataTypeStorage data_backup;
|
ImGuiDataTypeStorage data_backup;
|
||||||
@@ -3729,10 +3729,9 @@ bool ImGui::TempInputScalar(const ImRect& bb, ImGuiID id, const char* label, ImG
|
|||||||
|
|
||||||
// Only mark as edited if new value is different
|
// Only mark as edited if new value is different
|
||||||
g.LastItemData.ItemFlags &= ~ImGuiItemFlags_NoMarkEdited;
|
g.LastItemData.ItemFlags &= ~ImGuiItemFlags_NoMarkEdited;
|
||||||
value_changed = memcmp(&data_backup, p_data, data_type_size) != 0;
|
bool value_changed = memcmp(&data_backup, p_data, data_type_size) != 0;
|
||||||
if (value_changed)
|
if (value_changed)
|
||||||
MarkItemEdited(id);
|
MarkItemEdited(id);
|
||||||
}
|
|
||||||
return value_changed;
|
return value_changed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user