X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fautomation_time_axis.cc;h=8fe378f1b1488123dfe483e9019aca7f595034e8;hb=ac730a397d3f163cedcca58b7b6249c3680c727f;hp=6f47905f02082cce1dd6e830e821146caee6e74f;hpb=c38fdbc64c73c686f9f55729b352f8d0f4c09070;p=ardour.git diff --git a/gtk2_ardour/automation_time_axis.cc b/gtk2_ardour/automation_time_axis.cc index 6f47905f02..8fe378f1b1 100644 --- a/gtk2_ardour/automation_time_axis.cc +++ b/gtk2_ardour/automation_time_axis.cc @@ -4,13 +4,13 @@ #include "automation_time_axis.h" #include "automation_line.h" #include "public_editor.h" -#include "canvas-simplerect.h" -#include "canvas-waveview.h" +#include "simplerect.h" #include "selection.h" #include "ghostregion.h" #include "rgb_macros.h" #include "automation_selectable.h" #include "point_selection.h" +#include "canvas_impl.h" #include "i18n.h" @@ -34,10 +34,12 @@ static const gchar * small_x_xpm[] = { " ", " "}; -AutomationTimeAxisView::AutomationTimeAxisView (Session& s, Route& r, PublicEditor& e, TimeAxisView& rent, Widget* p, std::string nom, std::string state_name, std::string nomparent) +AutomationTimeAxisView::AutomationTimeAxisView (Session& s, Route& r, PublicEditor& e, TimeAxisView& rent, + ArdourCanvas::Canvas& canvas, const string & nom, + const string & state_name, const string & nomparent) : AxisView (s), - TimeAxisView (s, e, &rent, p), + TimeAxisView (s, e, &rent, canvas), route (r), _name (nom), _state_name (state_name), @@ -53,22 +55,29 @@ AutomationTimeAxisView::AutomationTimeAxisView (Session& s, Route& r, PublicEdit auto_play_item = 0; ignore_state_request = false; - base_rect = gnome_canvas_item_new (GNOME_CANVAS_GROUP(canvas_display), - gnome_canvas_simplerect_get_type(), - "x1", 0.0, - "y1", 0.0, - "x2", 1000000.0, - "outline_color_rgba", color_map[cAutomationTrackOutline], - /* outline ends and bottom */ - "outline_what", (guint32) (0x1|0x2|0x8), - "fill_color_rgba", color_map[cAutomationTrackFill], - NULL); - - gtk_object_set_data (GTK_OBJECT(base_rect), "trackview", this); + // base_rect = gnome_canvas_item_new (GNOME_CANVAS_GROUP(canvas_display), + // gnome_canvas_simplerect_get_type(), + // "x1", 0.0, + // "y1", 0.0, + // "x2", 1000000.0, + // "outline_color_rgba", color_map[cAutomationTrackOutline], + // /* outline ends and bottom */ + // "outline_what", (guint32) (0x1|0x2|0x8), + // "fill_color_rgba", color_map[cAutomationTrackFill], + // NULL); + base_rect = new SimpleRect(*canvas_display); + base_rect->property_x1() = 0.0; + base_rect->property_y1() = 0.0; + base_rect->property_x2() = 1000000.0; + base_rect->property_outline_color_rgba() = color_map[cAutomationTrackOutline]; + /* outline ends and bottom */ + base_rect->property_outline_what() = (guint32) (0x1|0x2|0x8); + base_rect->property_fill_color_rgba() = color_map[cAutomationTrackFill]; + + base_rect->set_data ("trackview", this); - gtk_signal_connect (GTK_OBJECT(base_rect), "event", - (GtkSignalFunc) PublicEditor::canvas_automation_track_event, - this); + base_rect->signal_event().connect (bind (mem_fun (editor, &PublicEditor::canvas_automation_track_event), + base_rect, this)); hide_button.add (*(manage (new Gtk::Image (Gdk::Pixbuf::create_from_xpm_data(small_x_xpm))))); @@ -291,7 +300,7 @@ AutomationTimeAxisView::set_height (TrackHeight h) controls_table.show_all (); TimeAxisView::set_height (h); - gtk_object_set (GTK_OBJECT(base_rect), "y2", (double) h, NULL); + base_rect->property_y2() = h; for (vector::iterator i = lines.begin(); i != lines.end(); ++i) { (*i)->set_height (h);