Peoplemon  0.1.0
Peoplemon 3 game source documentation
GameTestingWindow.hpp
Go to the documentation of this file.
1 #ifndef EDITOR_COMPONENTS_GAMETESTINGWINDOW_HPP
2 #define EDITOR_COMPONENTS_GAMETESTINGWINDOW_HPP
3 
4 #include <BLIB/Interfaces/GUI.hpp>
8 
9 namespace editor
10 {
11 namespace component
12 {
14 public:
15  using ActionCb = std::function<void()>;
16 
17  GameTestingWindow(const ActionCb& onSave);
18 
19  void open(bl::gui::GUI* gui, core::file::GameSave& save);
20 
21 private:
22  core::file::GameSave* activeSave;
23  const ActionCb onSave;
24 
25  bl::gui::GUI::Ptr gui;
26  bl::gui::Window::Ptr window;
27 
28  bl::gui::TextEntry::Ptr nameEntry;
29  bl::gui::TextEntry::Ptr moneyEntry;
30 
31  bl::gui::Slider::Ptr timeSlider;
32  bl::gui::Label::Ptr timeLabel;
33 
34  bl::gui::SelectBox::Ptr itemBox;
36 
37  bl::gui::TextEntry::Ptr flagEntry;
38  bl::gui::SelectBox::Ptr flagBox;
39 
40  bl::gui::SelectBox::Ptr pplBox;
42  bl::gui::ComboBox::Ptr levelSelect;
43 
44  void updateTimeLabel(const core::system::Clock::Time& time);
45 
46  void addItem();
47  void rmItem();
48 
49  void addFlag();
50  void rmFlag();
51 
52  void addPeoplemon();
53  void rmPeoplemon();
54 
55  void doSave();
56  void cancel();
57 };
58 
59 } // namespace component
60 } // namespace editor
61 
62 #endif
All classes and functionality used for implementing the game editor.
Definition: Tile.hpp:11
Represents a game save and provides functionality to load and save.
Definition: GameSave.hpp:24
Simple struct representing a point in time.
Definition: Clock.hpp:32
GameTestingWindow(const ActionCb &onSave)
void open(bl::gui::GUI *gui, core::file::GameSave &save)
std::shared_ptr< ItemSelector > Ptr
Pointer to this component.
std::shared_ptr< PeoplemonSelector > Ptr