else
shprog = 0;
+ if(keyboard)
+ set_state(FOCUS);
+
update_style();
if(mouse)
}
}
-void Root::render() const
+void Root::render()
{
+ rebuild_hierarchy();
+
GL::Bind bind_blend(GL::Blend::alpha());
GL::Renderer renderer(&camera);
Widget::render(renderer);
}
+void Root::setup_frame(GL::Renderer &)
+{
+ rebuild_hierarchy();
+}
+
void Root::render(GL::Renderer &renderer, const GL::Tag &tag) const
{
if(tag.id)
camera.set_orthographic(geom.w, geom.h);
}
-void Root::on_geometry_change()
+void Root::on_size_change()
{
- Panel::on_geometry_change();
+ Panel::on_size_change();
update_camera();
}