Horizon
cell_renderer_layer_display.hpp
1 #pragma once
2 #include <gtkmm.h>
3 #include "canvas/layer_display.hpp"
4 
5 namespace horizon {
6 class CellRendererLayerDisplay : public Gtk::CellRenderer {
7 public:
9  virtual ~CellRendererLayerDisplay(){};
10 
11  typedef Glib::Property<Gdk::RGBA> type_property_color;
12  Glib::PropertyProxy<Gdk::RGBA> property_color()
13  {
14  return p_property_color.get_proxy();
15  }
16  typedef Glib::Property<LayerDisplay::Mode> type_property_display_mode;
17  Glib::PropertyProxy<LayerDisplay::Mode> property_display_mode()
18  {
19  return p_property_display_mode.get_proxy();
20  }
21  typedef sigc::signal<void, const Glib::ustring &> type_signal_activate;
22  type_signal_activate signal_activate()
23  {
24  return s_signal_activate;
25  }
26 
27 
28 protected:
29  virtual void render_vfunc(const Cairo::RefPtr<Cairo::Context> &cr, Gtk::Widget &widget,
30  const Gdk::Rectangle &background_area, const Gdk::Rectangle &cell_area,
31  Gtk::CellRendererState flags);
32 
33  virtual void get_preferred_width_vfunc(Gtk::Widget &widget, int &min_w, int &nat_w) const;
34 
35  virtual void get_preferred_height_vfunc(Gtk::Widget &widget, int &min_h, int &nat_h) const;
36 
37  virtual bool activate_vfunc(GdkEvent *event, Gtk::Widget &widget, const Glib::ustring &path,
38  const Gdk::Rectangle &background_area, const Gdk::Rectangle &cell_area,
39  Gtk::CellRendererState flags);
40 
41 private:
42  type_property_color p_property_color;
43  type_property_display_mode p_property_display_mode;
44  type_signal_activate s_signal_activate;
45 };
46 } // namespace horizon
Definition: cell_renderer_layer_display.hpp:6
Definition: block.cpp:7