mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-10 00:34:59 +01:00
Towards packing CairoWidgets on ArdourCanvas.
This commit is contained in:
parent
218d376154
commit
004431426d
4 changed files with 111 additions and 3 deletions
|
|
@ -34,6 +34,9 @@ Widget::Widget (Canvas* c, CairoWidget& w)
|
|||
, _widget (w)
|
||||
{
|
||||
Event.connect (sigc::mem_fun (*this, &Widget::event_proxy));
|
||||
w.set_canvas_widget ();
|
||||
w.QueueDraw.connect (sigc::mem_fun(*this, &Widget::queue_draw));
|
||||
w.QueueResize.connect (sigc::mem_fun(*this, &Widget::queue_resize));
|
||||
}
|
||||
|
||||
Widget::Widget (Item* parent, CairoWidget& w)
|
||||
|
|
@ -41,6 +44,9 @@ Widget::Widget (Item* parent, CairoWidget& w)
|
|||
, _widget (w)
|
||||
{
|
||||
Event.connect (sigc::mem_fun (*this, &Widget::event_proxy));
|
||||
w.set_canvas_widget ();
|
||||
w.QueueDraw.connect (sigc::mem_fun(*this, &Widget::queue_draw));
|
||||
w.QueueResize.connect (sigc::mem_fun(*this, &Widget::queue_resize));
|
||||
}
|
||||
|
||||
bool
|
||||
|
|
@ -50,6 +56,22 @@ Widget::event_proxy (GdkEvent* ev)
|
|||
return _widget.event (ev);
|
||||
}
|
||||
|
||||
bool
|
||||
Widget::queue_draw ()
|
||||
{
|
||||
begin_visual_change ();
|
||||
end_visual_change ();
|
||||
return true;
|
||||
}
|
||||
|
||||
bool
|
||||
Widget::queue_resize ()
|
||||
{
|
||||
begin_change ();
|
||||
end_change ();
|
||||
return true;
|
||||
}
|
||||
|
||||
void
|
||||
Widget::render (Rect const & area, Cairo::RefPtr<Cairo::Context> context) const
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue