-
- canvas_group = gtk_canvas_item_new (GTK_CANVAS_GROUP(_trackview.canvas_display),
- gtk_canvas_group_get_type (),
- NULL);
-
- canvas_rect = gtk_canvas_item_new (GTK_CANVAS_GROUP(canvas_group),
- gtk_canvas_simplerect_get_type(),
- "x1", 0.0,
- "y1", 0.0,
- "x2", 1000000.0,
- "y2", (double) tv.height,
- "outline_color_rgba", color_map[cAudioTrackOutline],
- /* outline ends and bottom */
- "outline_what", (guint32) (0x1|0x2|0x8),
- "fill_color_rgba", stream_base_color,
- NULL);
-
- gtk_signal_connect (GTK_OBJECT(canvas_rect), "event",
- (GtkSignalFunc) PublicEditor::canvas_stream_view_event, &_trackview);
+
+ canvas_group = new ArdourCanvas::Group(*_trackview.canvas_display);
+
+ canvas_rect = new ArdourCanvas::SimpleRect (*canvas_group);
+ canvas_rect->property_x1() = 0.0;
+ canvas_rect->property_y1() = 0.0;
+ canvas_rect->property_x2() = 1000000.0;
+ canvas_rect->property_y2() = (double) tv.height;
+ canvas_rect->property_outline_color_rgba() = color_map[cAudioTrackOutline];
+ canvas_rect->property_outline_what() = (guint32) (0x1|0x2|0x8); // outline ends and bottom
+ canvas_rect->property_fill_color_rgba() = stream_base_color;
+
+ canvas_rect->signal_event().connect (bind (mem_fun (_trackview.editor, &PublicEditor::canvas_stream_view_event), canvas_rect, &_trackview));