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, IPool &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  IPool &pool;
21  ObjectType type;
22  UUID selected_uuid;
24  void on_clicked() override;
25  void update_label();
26 };
27 } // namespace horizon
Definition: ipool.hpp:14
Definition: pool_browser_button.hpp:9
Definition: pool_browser_dialog.hpp:11
Definition: pool_browser.hpp:15
This class encapsulates a UUID and allows it to be uses as a value type.
Definition: uuid.hpp:16