Horizon
warnings_box.hpp
1 #pragma once
2 #include <gtkmm.h>
3 #include "common/common.hpp"
4 #include "util/warning.hpp"
5 
6 namespace horizon {
7 class WarningsBox : public Gtk::Box {
8 public:
9  WarningsBox();
10 
11  void update(const std::vector<Warning> &warnings);
12  typedef sigc::signal<void, const Coordi &> type_signal_selected;
13  type_signal_selected signal_selected()
14  {
15  return s_signal_selected;
16  }
17 
18 private:
19  class ListColumns : public Gtk::TreeModelColumnRecord {
20  public:
21  ListColumns()
22  {
23  Gtk::TreeModelColumnRecord::add(text);
24  Gtk::TreeModelColumnRecord::add(position);
25  }
26  Gtk::TreeModelColumn<Glib::ustring> text;
27  Gtk::TreeModelColumn<Coordi> position;
28  };
29  ListColumns list_columns;
30 
31  Gtk::TreeView *view;
32  Glib::RefPtr<Gtk::ListStore> store;
33 
34  type_signal_selected s_signal_selected;
35  void row_activated(const Gtk::TreeModel::Path &path, Gtk::TreeViewColumn *column);
36 };
37 } // namespace horizon
horizon::WarningsBox
Definition: warnings_box.hpp:7