MCPcopy Create free account
hub / github.com/BoomingTech/Piccolo / showEditorWorldObjectsWindow

Method showEditorWorldObjectsWindow

engine/source/editor/source/editor_ui.cpp:393–437  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

391 }
392
393 void EditorUI::showEditorWorldObjectsWindow(bool* p_open)
394 {
395 ImGuiWindowFlags window_flags = ImGuiWindowFlags_None;
396
397 const ImGuiViewport* main_viewport = ImGui::GetMainViewport();
398
399 if (!*p_open)
400 return;
401
402 if (!ImGui::Begin("World Objects", p_open, window_flags))
403 {
404 ImGui::End();
405 return;
406 }
407
408 std::shared_ptr<Level> current_active_level =
409 g_runtime_global_context.m_world_manager->getCurrentActiveLevel().lock();
410 if (current_active_level == nullptr)
411 return;
412
413 const LevelObjectsMap& all_gobjects = current_active_level->getAllGObjects();
414 for (auto& id_object_pair : all_gobjects)
415 {
416 const GObjectID object_id = id_object_pair.first;
417 std::shared_ptr<GObject> object = id_object_pair.second;
418 const std::string name = object->getName();
419 if (name.size() > 0)
420 {
421 if (ImGui::Selectable(name.c_str(),
422 g_editor_global_context.m_scene_manager->getSelectedObjectID() == object_id))
423 {
424 if (g_editor_global_context.m_scene_manager->getSelectedObjectID() != object_id)
425 {
426 g_editor_global_context.m_scene_manager->onGObjectSelected(object_id);
427 }
428 else
429 {
430 g_editor_global_context.m_scene_manager->onGObjectSelected(k_invalid_gobject_id);
431 }
432 break;
433 }
434 }
435 }
436 ImGui::End();
437 }
438
439 void EditorUI::createClassUI(Reflection::ReflectionInstance& instance)
440 {

Callers

nothing calls this directly

Calls 6

getCurrentActiveLevelMethod · 0.80
getSelectedObjectIDMethod · 0.80
onGObjectSelectedMethod · 0.80
lockMethod · 0.45
sizeMethod · 0.45
c_strMethod · 0.45

Tested by

no test coverage detected