diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-04-09 14:22:58 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-04-09 14:22:58 -0400 |
commit | 053eaf77fde7639d4e200d36a9db99b2d4fc615b (patch) | |
tree | 1ef0d29aae9c0130b74ae42abb4bb2873291d5ae /gtk2_ardour/marker.cc | |
parent | 1267b1d61cbce8688f3d0f1c4c7932de49735e75 (diff) |
a variety of fixes for the cairocanvas, but it still buggy as hell handling events and lots of other stuff
Diffstat (limited to 'gtk2_ardour/marker.cc')
-rw-r--r-- | gtk2_ardour/marker.cc | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gtk2_ardour/marker.cc b/gtk2_ardour/marker.cc index 246f1f4087..875fd4cdf3 100644 --- a/gtk2_ardour/marker.cc +++ b/gtk2_ardour/marker.cc @@ -282,15 +282,19 @@ Marker::Marker (PublicEditor& ed, ArdourCanvas::Group& parent, guint32 rgba, con editor.ZoomChanged.connect (sigc::mem_fun (*this, &Marker::reposition)); - group->set_data ("marker", this); + /* events will be handled by both the group and the mark itself, so + * make sure they can both be used to lookup this object. + */ + group->set_data ("marker", this); + mark->set_data ("marker", this); + if (handle_events) { group->Event.connect (sigc::bind (sigc::mem_fun (editor, &PublicEditor::canvas_marker_event), group, this)); } } - Marker::~Marker () { CatchDeletion (this); /* EMIT SIGNAL */ |