Horizon
pool_browser_button.hpp
1 #pragma once
2 #include <gtkmm.h>
3 #include "util/uuid.hpp"
4 #include "common/common.hpp"
5 #include "dialogs/pool_browser_dialog.hpp"
6 
7 namespace horizon {
8 
9 class PoolBrowserButton : public Gtk::Button {
10 public:
11  PoolBrowserButton(ObjectType type, Pool *ipool);
12  class PoolBrowser *get_browser();
13  Glib::PropertyProxy<horizon::UUID> property_selected_uuid()
14  {
15  return p_property_selected_uuid.get_proxy();
16  }
17 
18 private:
19  Glib::Property<UUID> p_property_selected_uuid;
20  Pool *pool;
21  ObjectType type;
22  UUID selected_uuid;
24  void on_clicked() override;
25  void update_label();
26 };
27 } // namespace horizon
horizon::PoolBrowser
Definition: pool_browser.hpp:11
horizon::PoolBrowserDialog
Definition: pool_browser_dialog.hpp:12
horizon::PoolBrowserButton
Definition: pool_browser_button.hpp:9
horizon::UUID
This class encapsulates a UUID and allows it to be uses as a value type.
Definition: uuid.hpp:16
horizon::Pool
Stores objects (Unit, Entity, Symbol, Part, etc.) from the pool.
Definition: pool.hpp:21