Conquer Space
0.0.0
A space themed grand strategy game set in the near future, with realistic orbital mechanics, and an emphasis on economics and politics.
src
client
scenes
universe
interface
debug
sysdebuggui.h
Go to the documentation of this file.
1
/* Conquer Space
2
* Copyright (C) 2021-2025 Conquer Space
3
*
4
* This program is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation, either version 3 of the License, or
7
* (at your option) any later version.
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with this program. If not, see <https://www.gnu.org/licenses/>.
16
*/
17
#pragma once
18
19
#include <algorithm>
20
#include <functional>
21
#include <map>
22
#include <string>
23
#include <utility>
24
#include <vector>
25
26
#include "
client/systems/sysgui.h
"
27
#include "
client/util/assetwindow.h
"
28
29
#define sysdebuggui_parameters \
30
cqsp::engine::Application &app, core::Universe &universe, core::scripting::ScriptInterface &script_interface, \
31
const std::string_view &args, CommandOutput &input
32
33
namespace
cqsp::client::systems
{
34
class
SysDebugMenu
:
public
SysUserInterface
{
35
public
:
36
explicit
SysDebugMenu
(
engine::Application
&app);
37
38
void
Init
();
39
void
DoUI
(
int
delta_time);
40
void
DoUpdate
(
int
delta_time);
41
42
private
:
43
void
CqspMetricsWindow
();
44
void
ShowWindows
(
double
delta_time);
45
void
CreateMenuBar
();
46
void
DrawConsole
();
47
void
ConsoleInput
();
48
void
ProcessConsoleInput
();
49
50
bool
to_show_window
=
false
;
51
bool
to_show_metrics_window
=
false
;
52
bool
to_show_imgui_about
=
false
;
53
bool
to_show_implot_metrics
=
false
;
54
bool
reclaim_focus
=
false
;
55
bool
scroll_to_bottom
=
true
;
56
bool
to_show_cqsp_metrics
=
false
;
57
bool
to_show_asset_window
=
false
;
58
bool
to_show_rmlui_window
=
true
;
59
60
std::string
command
;
61
std::string
asset_search
;
62
std::vector<std::string>
items
;
63
64
typedef
std::vector<std::string>
CommandOutput
;
65
typedef
std::function<void(
sysdebuggui_parameters
)>
DebugCommand_t
;
66
std::map<std::string, std::pair<std::string, DebugCommand_t>, std::less<>>
commands
;
67
std::vector<float>
fps_history
;
68
std::vector<float>
time_history
;
72
float
fps_history_len
= 10;
73
74
AssetWindow
asset_window
;
75
};
76
}
// namespace cqsp::client::systems
assetwindow.h
cqsp::client::systems::AssetWindow
Definition:
assetwindow.h:22
cqsp::client::systems::SysDebugMenu
Definition:
sysdebuggui.h:34
cqsp::client::systems::SysDebugMenu::to_show_asset_window
bool to_show_asset_window
Definition:
sysdebuggui.h:57
cqsp::client::systems::SysDebugMenu::fps_history
std::vector< float > fps_history
Definition:
sysdebuggui.h:67
cqsp::client::systems::SysDebugMenu::DebugCommand_t
std::function< void(sysdebuggui_parameters)> DebugCommand_t
Definition:
sysdebuggui.h:65
cqsp::client::systems::SysDebugMenu::DoUpdate
void DoUpdate(int delta_time)
Definition:
sysdebuggui.cpp:239
cqsp::client::systems::SysDebugMenu::ShowWindows
void ShowWindows(double delta_time)
Definition:
sysdebuggui.cpp:102
cqsp::client::systems::SysDebugMenu::command
std::string command
Definition:
sysdebuggui.h:60
cqsp::client::systems::SysDebugMenu::commands
std::map< std::string, std::pair< std::string, DebugCommand_t >, std::less<> > commands
Definition:
sysdebuggui.h:66
cqsp::client::systems::SysDebugMenu::to_show_implot_metrics
bool to_show_implot_metrics
Definition:
sysdebuggui.h:53
cqsp::client::systems::SysDebugMenu::CreateMenuBar
void CreateMenuBar()
Definition:
sysdebuggui.cpp:120
cqsp::client::systems::SysDebugMenu::ConsoleInput
void ConsoleInput()
Definition:
sysdebuggui.cpp:175
cqsp::client::systems::SysDebugMenu::CommandOutput
std::vector< std::string > CommandOutput
Definition:
sysdebuggui.h:64
cqsp::client::systems::SysDebugMenu::ProcessConsoleInput
void ProcessConsoleInput()
Definition:
sysdebuggui.cpp:191
cqsp::client::systems::SysDebugMenu::Init
void Init()
Definition:
sysdebuggui.cpp:86
cqsp::client::systems::SysDebugMenu::DrawConsole
void DrawConsole()
Definition:
sysdebuggui.cpp:151
cqsp::client::systems::SysDebugMenu::to_show_metrics_window
bool to_show_metrics_window
Definition:
sysdebuggui.h:51
cqsp::client::systems::SysDebugMenu::to_show_window
bool to_show_window
Definition:
sysdebuggui.h:50
cqsp::client::systems::SysDebugMenu::to_show_rmlui_window
bool to_show_rmlui_window
Definition:
sysdebuggui.h:58
cqsp::client::systems::SysDebugMenu::DoUI
void DoUI(int delta_time)
Definition:
sysdebuggui.cpp:219
cqsp::client::systems::SysDebugMenu::fps_history_len
float fps_history_len
Definition:
sysdebuggui.h:72
cqsp::client::systems::SysDebugMenu::to_show_imgui_about
bool to_show_imgui_about
Definition:
sysdebuggui.h:52
cqsp::client::systems::SysDebugMenu::asset_window
AssetWindow asset_window
Definition:
sysdebuggui.h:74
cqsp::client::systems::SysDebugMenu::asset_search
std::string asset_search
Definition:
sysdebuggui.h:61
cqsp::client::systems::SysDebugMenu::to_show_cqsp_metrics
bool to_show_cqsp_metrics
Definition:
sysdebuggui.h:56
cqsp::client::systems::SysDebugMenu::items
std::vector< std::string > items
Definition:
sysdebuggui.h:62
cqsp::client::systems::SysDebugMenu::time_history
std::vector< float > time_history
Definition:
sysdebuggui.h:68
cqsp::client::systems::SysDebugMenu::reclaim_focus
bool reclaim_focus
Definition:
sysdebuggui.h:54
cqsp::client::systems::SysDebugMenu::CqspMetricsWindow
void CqspMetricsWindow()
Definition:
sysdebuggui.cpp:88
cqsp::client::systems::SysDebugMenu::SysDebugMenu
SysDebugMenu(engine::Application &app)
Definition:
sysdebuggui.cpp:35
cqsp::client::systems::SysDebugMenu::scroll_to_bottom
bool scroll_to_bottom
Definition:
sysdebuggui.h:55
cqsp::client::systems::SysUserInterface
Definition:
sysgui.h:23
cqsp::engine::Application
Definition:
application.h:61
cqsp::client::systems
Definition:
editorwidgets.cpp:29
sysdebuggui_parameters
#define sysdebuggui_parameters
Definition:
sysdebuggui.h:29
sysgui.h
Generated on Thu Jul 9 2026 07:40:54 for Conquer Space by
1.9.2