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
constructionmenu.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 <array>
20
#include <vector>
21
22
#include "
client/systems/sysgui.h
"
23
24
namespace
cqsp::client::systems
{
25
class
ConstructionMenu
:
public
SysUserInterface
{
26
public
:
27
explicit
ConstructionMenu
(
engine::Application
& app) :
SysUserInterface
(app) {
search_text
.fill(0); }
28
void
Init
()
override
;
29
void
DoUI
(
int
delta_time)
override
;
30
void
DoUpdate
(
int
delta_time)
override
;
31
32
private
:
33
bool
RecipeCombo
(
const
char
* label,
int
& selected_idx, std::vector<std::pair<std::string, entt::entity>>& list);
34
void
PerformConstruction
(
int
count);
35
36
std::array<char, 255>
search_text
;
37
bool
constructing
=
false
;
38
int
selected_index
= 0;
39
std::vector<std::pair<std::string, entt::entity>>
recipe_list
;
40
};
41
}
// namespace cqsp::client::systems
cqsp::client::systems::ConstructionMenu
Definition:
constructionmenu.h:25
cqsp::client::systems::ConstructionMenu::DoUI
void DoUI(int delta_time) override
Definition:
constructionmenu.cpp:96
cqsp::client::systems::ConstructionMenu::PerformConstruction
void PerformConstruction(int count)
Definition:
constructionmenu.cpp:64
cqsp::client::systems::ConstructionMenu::ConstructionMenu
ConstructionMenu(engine::Application &app)
Definition:
constructionmenu.h:27
cqsp::client::systems::ConstructionMenu::DoUpdate
void DoUpdate(int delta_time) override
Definition:
constructionmenu.cpp:111
cqsp::client::systems::ConstructionMenu::selected_index
int selected_index
Definition:
constructionmenu.h:38
cqsp::client::systems::ConstructionMenu::recipe_list
std::vector< std::pair< std::string, entt::entity > > recipe_list
Definition:
constructionmenu.h:39
cqsp::client::systems::ConstructionMenu::RecipeCombo
bool RecipeCombo(const char *label, int &selected_idx, std::vector< std::pair< std::string, entt::entity > > &list)
Definition:
constructionmenu.cpp:29
cqsp::client::systems::ConstructionMenu::search_text
std::array< char, 255 > search_text
Definition:
constructionmenu.h:36
cqsp::client::systems::ConstructionMenu::constructing
bool constructing
Definition:
constructionmenu.h:37
cqsp::client::systems::ConstructionMenu::Init
void Init() override
Definition:
constructionmenu.cpp:90
cqsp::client::systems::SysUserInterface
Definition:
sysgui.h:23
cqsp::engine::Application
Definition:
application.h:61
cqsp::client::systems
Definition:
editorwidgets.cpp:29
sysgui.h
Generated on Thu Jul 9 2026 07:40:54 for Conquer Space by
1.9.2