| 203 | } |
| 204 | |
| 205 | static ImGuiTreeNodeFlags_ getTreeNodeFlag(String flag) { |
| 206 | switch (Switch::hash(flag)) { |
| 207 | case "Selected"_hash: return ImGuiTreeNodeFlags_Selected; |
| 208 | case "Framed"_hash: return ImGuiTreeNodeFlags_Framed; |
| 209 | case "AllowOverlap"_hash: return ImGuiTreeNodeFlags_AllowOverlap; |
| 210 | case "NoTreePushOnOpen"_hash: return ImGuiTreeNodeFlags_NoTreePushOnOpen; |
| 211 | case "NoAutoOpenOnLog"_hash: return ImGuiTreeNodeFlags_NoAutoOpenOnLog; |
| 212 | case "DefaultOpen"_hash: return ImGuiTreeNodeFlags_DefaultOpen; |
| 213 | case "OpenOnDoubleClick"_hash: return ImGuiTreeNodeFlags_OpenOnDoubleClick; |
| 214 | case "OpenOnArrow"_hash: return ImGuiTreeNodeFlags_OpenOnArrow; |
| 215 | case "Leaf"_hash: return ImGuiTreeNodeFlags_Leaf; |
| 216 | case "Bullet"_hash: return ImGuiTreeNodeFlags_Bullet; |
| 217 | case "FramePadding"_hash: return ImGuiTreeNodeFlags_FramePadding; |
| 218 | case "SpanAvailWidth"_hash: return ImGuiTreeNodeFlags_SpanAvailWidth; |
| 219 | case "SpanFullWidth"_hash: return ImGuiTreeNodeFlags_SpanFullWidth; |
| 220 | case "SpanLabelWidth"_hash: return ImGuiTreeNodeFlags_SpanLabelWidth; |
| 221 | case "SpanAllColumns"_hash: return ImGuiTreeNodeFlags_SpanAllColumns; |
| 222 | case "LabelSpanAllColumns"_hash: return ImGuiTreeNodeFlags_LabelSpanAllColumns; |
| 223 | case "NavLeftJumpsToParent"_hash: return ImGuiTreeNodeFlags_NavLeftJumpsToParent; |
| 224 | case "CollapsingHeader"_hash: return ImGuiTreeNodeFlags_CollapsingHeader; |
| 225 | case ""_hash: return ImGuiTreeNodeFlags_(0); |
| 226 | default: |
| 227 | Issue("ImGui tree node flag named \"{}\" is invalid.", flag.toString()); |
| 228 | return ImGuiTreeNodeFlags_(0); |
| 229 | } |
| 230 | } |
| 231 | |
| 232 | static uint32_t TreeNodeFlags(Slice* flags, int count) { |
| 233 | uint32_t result = 0; |
no test coverage detected