From a9bc23377bd9193cd3eb3ef2e91431d088d13d5d Mon Sep 17 00:00:00 2001 From: Jonathan Bradley Date: Thu, 29 May 2025 09:36:11 -0400 Subject: pke: level: BucketContainer -> pk_bkt_arr_t & name --- editor/editor.cpp | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'editor') diff --git a/editor/editor.cpp b/editor/editor.cpp index 38e2828..057152f 100644 --- a/editor/editor.cpp +++ b/editor/editor.cpp @@ -1390,24 +1390,22 @@ void RecordImGuiLevels() { ImGuiTableFlags_Borders | ImGuiTableFlags_RowBg }; - if (ImGui::BeginTable("PkeLevels", 3, tableFlags)) { + if (ImGui::BeginTable("pke_levels", 3, tableFlags)) { ImGui::TableSetupColumn("Name"); ImGui::TableSetupColumn("Handle"); ImGui::TableHeadersRow(); - pk_handle_bucket_index_T b, bb; - pk_handle_item_index_T i, ii; - PkeLevel *lvls; - bb = pke_level_get_bucket_count(); - for (b = 0; b < bb; ++b) { - lvls = pke_level_get_levels(b, &ii); - for (i = 0; i < ii; ++i) { - ImGui::TableNextRow(); - ImGui::TableSetColumnIndex(0); - ImGui::Text("%s", lvls[i].name); - ImGui::TableSetColumnIndex(1); - ImGui::Text("0x%08X 0x%08X", b, i); - } - } + + auto level_iter_cb = [](void *user_data, void *arr_obj_data) { + (void)user_data; + pke_level *lvl = reinterpret_cast(arr_obj_data); + ImGui::TableNextRow(); + ImGui::TableSetColumnIndex(0); + ImGui::Text("%s", lvl->name); + ImGui::TableSetColumnIndex(1); + ImGui::Text("0x%08X 0x%08X", lvl->levelHandle.b, lvl->levelHandle.i); + }; + pk_bkt_arr_iterate(pke_level_get_levels(), level_iter_cb, NULL); + ImGui::EndTable(); } ImGui::End(); -- cgit v1.2.3