diff options
author | Robin Gareus <robin@gareus.org> | 2016-12-19 13:36:42 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2016-12-19 13:36:42 +0100 |
commit | 004431426dd3b868f8b6fda814e03b7d5da06680 (patch) | |
tree | 921fe5fb975a02f096bbb55421f9c947e5442ed9 /libs/gtkmm2ext/gtkmm2ext | |
parent | 218d3761544a84eb55e13de32ebc402ff66c7933 (diff) |
Towards packing CairoWidgets on ArdourCanvas.
Diffstat (limited to 'libs/gtkmm2ext/gtkmm2ext')
-rw-r--r-- | libs/gtkmm2ext/gtkmm2ext/cairo_widget.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/libs/gtkmm2ext/gtkmm2ext/cairo_widget.h b/libs/gtkmm2ext/gtkmm2ext/cairo_widget.h index 2588adcdcc..03afc48818 100644 --- a/libs/gtkmm2ext/gtkmm2ext/cairo_widget.h +++ b/libs/gtkmm2ext/gtkmm2ext/cairo_widget.h @@ -35,6 +35,15 @@ public: CairoWidget (); virtual ~CairoWidget (); + void set_canvas_widget (); + + /* swizzle Gtk::Widget methods for Canvas::Widget */ + void queue_draw (); + void queue_resize (); + int get_width () const; + int get_height () const; + void size_allocate (Gtk::Allocation&); + void set_dirty (cairo_rectangle_t *area = 0); Gtkmm2ext::ActiveState active_state() const { return _active_state; } @@ -65,6 +74,8 @@ public: void set_draw_background (bool yn); sigc::signal<void> StateChanged; + sigc::signal<bool> QueueDraw; + sigc::signal<bool> QueueResize; static void provide_background_for_cairo_widget (Gtk::Widget& w, const Gdk::Color& bg); @@ -125,6 +136,8 @@ protected: Glib::SignalProxyProperty _name_proxy; sigc::connection _parent_style_change; Widget * _current_parent; + bool _canvas_widget; + Gdk::Rectangle _allocation; }; |