Merge pull request #555 from DMartinek/patch-1

CheckboxFlags: Added support for passing/testing multiple flags at the same time.
docking
omar 9 years ago
commit 8e8e59a942

@ -6905,12 +6905,16 @@ bool ImGui::Checkbox(const char* label, bool* v)
bool ImGui::CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value) bool ImGui::CheckboxFlags(const char* label, unsigned int* flags, unsigned int flags_value)
{ {
bool v = (*flags & flags_value) ? true : false; bool v = ((*flags & flags_value) == flags_value);
bool pressed = ImGui::Checkbox(label, &v); bool pressed = ImGui::Checkbox(label, &v);
if (v) if (pressed)
*flags |= flags_value; {
else if (v)
*flags &= ~flags_value; *flags |= flags_value;
else
*flags &= ~flags_value;
}
return pressed; return pressed;
} }

Loading…
Cancel
Save