diff --git a/src/scene/gui/buttonnode.cpp b/src/scene/gui/buttonnode.cpp index 16fbef6..5c558de 100644 --- a/src/scene/gui/buttonnode.cpp +++ b/src/scene/gui/buttonnode.cpp @@ -20,6 +20,8 @@ ButtonNode::ButtonNode(ButtonShape* shape): m_shape(shape), m_label(new LabelNode()) { + m_label->setID("label"); + m_shape->getBackGround()->setID("background"); addChild(m_shape->getBackGround()); addChild(m_label); } diff --git a/src/scene/scenenode.cpp b/src/scene/scenenode.cpp index 460c985..949c39f 100644 --- a/src/scene/scenenode.cpp +++ b/src/scene/scenenode.cpp @@ -304,7 +304,7 @@ void SceneNode::openInfoWindow() void SceneNode::gui() { - if(m_showInfo & m_id != "undefined id") + if(m_showInfo & (m_id != "undefined id")) { bool enabled = true; std::string window_name("Node info##"+m_id); @@ -316,11 +316,19 @@ void SceneNode::gui() if(ImGui::Button("Show Parent Info")) m_parent->openInfoWindow(); } + ImGui::Separator(); + ImGui::Text("Children :"); for(SceneNode* child : m_children){ if(ImGui::Button(child->getID().data())) child->openInfoWindow(); + ImGui::SameLine(); } - + ImGui::NewLine(); + ImGui::Separator(); + bool visible = isVisible(); +// setVisible(ImGui::Checkbox("Visible",&visible)); + if(ImGui::Checkbox("Visible",&visible)) + setVisible(visible); ImGui::End(); if(!enabled) m_showInfo = false; diff --git a/src/test/main.cpp b/src/test/main.cpp index 57d5f18..8b8d13b 100644 --- a/src/test/main.cpp +++ b/src/test/main.cpp @@ -342,6 +342,7 @@ public: engine->createScene(m_menu_scene); SceneTree* scene = RESOURCE_GET(SceneTree,m_menu_scene); m_button_demo = new ButtonNode(new RectangleButtonShape(glm::vec2(300,100))); + m_button_demo->setID("startbutton"); m_button_demo->getLabel()->setText("Start DEMO"); m_button_demo->getLabel()->setColor(glm::vec3(1.,1.,1.)); m_button_demo->getBackGround()->setColor(glm::vec3(0.88,0.05,0.05));