aboutsummaryrefslogtreecommitdiff
path: root/extension/src/openvic-extension/singletons/MenuSingleton.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'extension/src/openvic-extension/singletons/MenuSingleton.hpp')
-rw-r--r--extension/src/openvic-extension/singletons/MenuSingleton.hpp18
1 files changed, 16 insertions, 2 deletions
diff --git a/extension/src/openvic-extension/singletons/MenuSingleton.hpp b/extension/src/openvic-extension/singletons/MenuSingleton.hpp
index 97a6956..50b5400 100644
--- a/extension/src/openvic-extension/singletons/MenuSingleton.hpp
+++ b/extension/src/openvic-extension/singletons/MenuSingleton.hpp
@@ -1,11 +1,15 @@
#pragma once
+#include <cstdint>
#include <godot_cpp/classes/control.hpp>
#include <godot_cpp/classes/image.hpp>
+#include <godot_cpp/variant/dictionary.hpp>
-#include <openvic-simulation/pop/Pop.hpp>
#include <openvic-simulation/types/IndexedMap.hpp>
#include <openvic-simulation/types/OrderedContainers.hpp>
+#include <openvic-simulation/types/fixed_point/FixedPoint.hpp>
+#include <openvic-simulation/modifier/ModifierEffect.hpp>
+#include <openvic-simulation/pop/Pop.hpp>
namespace OpenVic {
struct CountryInstance;
@@ -59,7 +63,12 @@ namespace OpenVic {
* - Nationality (Culture)
* - Issues
* - Vote */
- std::array<fixed_point_map_t<HasIdentifierAndColour const*>, DISTRIBUTION_COUNT> distributions;
+ fixed_point_map_t<PopType const*> workforce_distribution;
+ fixed_point_map_t<Religion const*> religion_distribution;
+ fixed_point_map_t<Ideology const*> ideology_distribution;
+ fixed_point_map_t<Culture const*> culture_distribution;
+ fixed_point_map_t<Issue const*> issue_distribution;
+ fixed_point_map_t<CountryParty const*> vote_distribution;
enum PopSortKey {
NONE, SORT_SIZE, SORT_TYPE, SORT_CULTURE, SORT_RELIGION, SORT_LOCATION, SORT_MILITANCY, SORT_CONSCIOUSNESS,
@@ -108,6 +117,7 @@ namespace OpenVic {
godot::String get_country_adjective(CountryInstance const& country) const;
godot::String make_modifier_effects_tooltip(ModifierValue const& modifier) const;
+ godot::String make_modifier_effect_tooltip(ModifierEffect const& effect, fixed_point_t value) const;
godot::String make_rules_tooltip(RuleSet const& rules) const;
protected:
@@ -186,6 +196,10 @@ namespace OpenVic {
/* Array of GFXPieChartTexture::godot_pie_chart_data_t. */
godot::TypedArray<godot::Array> get_population_menu_distribution_info() const;
+ /* TECHNOLOGY MENU */
+ godot::Dictionary get_technology_menu_defines() const;
+ godot::Dictionary get_technology_menu_info() const;
+
/* Find/Search Panel */
// TODO - update on country government type change and state creation/destruction
// (which automatically includes country creation/destruction)