Horizon
duplicate_entity.hpp
1 #pragma once
2 #include <gtkmm.h>
3 #include "util/uuid.hpp"
4 #include "duplicate_base.hpp"
5 
6 namespace horizon {
7 class DuplicateEntityWidget : public Gtk::Box, public DuplicateBase {
8 public:
9  DuplicateEntityWidget(class Pool &p, const UUID &entity_uuid, Gtk::Box *ubox, bool optional = false);
10 
11  UUID duplicate(std::vector<std::string> *filenames) override;
12  UUID get_uuid() const;
13  bool check_valid() override;
14 
15 private:
16  class Pool &pool;
17  const class Entity &entity;
18  Gtk::Entry *name_entry = nullptr;
19  class LocationEntry *location_entry = nullptr;
20  Gtk::Grid *grid = nullptr;
21  Gtk::Box *unit_box = nullptr;
22 };
23 } // namespace horizon
Definition: duplicate_base.hpp:5
Definition: duplicate_entity.hpp:7
Definition: entity.hpp:13
Definition: location_entry.hpp:6
Stores objects (Unit, Entity, Symbol, Part, etc.) from the pool.
Definition: pool.hpp:22
This class encapsulates a UUID and allows it to be uses as a value type.
Definition: uuid.hpp:16