Unravel Engine C++ Reference
Loading...
Searching...
No Matches
header_panel.h
Go to the documentation of this file.
1#pragma once
2
3#include <base/basetypes.hpp>
4#include <context/context.hpp>
5
7#include <editor/shortcuts.h>
8
9namespace unravel
10{
11
12class imgui_panels;
13
15{
16public:
18
19 void on_frame_ui_render(rtti::context& ctx, float header_size);
20
21private:
22 void draw_menubar_child(rtti::context& ctx);
23 void draw_play_toolbar(rtti::context& ctx, float header_size);
24 void draw_about_window(rtti::context& ctx);
25
26 void draw_project_badge(rtti::context& ctx,
27 const ImVec2& window_pos,
28 const ImVec2& window_size,
29 float header_size,
30 const ImVec2& item_spacing);
31 void draw_left_zone(rtti::context& ctx);
32 void draw_center_zone(rtti::context& ctx);
33 void draw_right_zone(rtti::context& ctx);
34 auto calc_right_zone_width(const ImVec2& frame_padding, const ImVec2& item_spacing) -> float;
35 auto calc_center_zone_width(const ImVec2& frame_padding, const ImVec2& item_spacing) -> float;
36
37 imgui_panels* parent_{};
38 bool show_about_window_ = false;
39 bool play_splash_in_editor_ = false;
40};
41} // namespace unravel
void on_frame_ui_render(rtti::context &ctx, float header_size)
header_panel(imgui_panels *parent)