X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fmarker_time_axis_view.cc;h=d10ec4dae91fdc658ba231b4ec01d05649a402be;hb=e11b3f90c2d02735a071d526d67cfd0de90cbac3;hp=59619626fbdf85ce3a34d3a01a807356ced0ee30;hpb=183f69970c6c436b102f8b2fbe1bc6070c9e9bfe;p=ardour.git diff --git a/gtk2_ardour/marker_time_axis_view.cc b/gtk2_ardour/marker_time_axis_view.cc index 59619626fb..d10ec4dae9 100644 --- a/gtk2_ardour/marker_time_axis_view.cc +++ b/gtk2_ardour/marker_time_axis_view.cc @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #include @@ -32,6 +31,7 @@ #include "public_editor.h" #include "rgb_macros.h" #include "gui_thread.h" +#include "ardour_ui.h" #include "i18n.h" @@ -50,21 +50,19 @@ MarkerTimeAxisView::MarkerTimeAxisView(MarkerTimeAxis& tv) : _trackview (tv) { region_color = _trackview.color(); - stream_base_color = color_map[cMarkerTrackBase]; - - //GTK2FIX -- how to get the group? is the canvas display really a group? - //canvas_group = gnome_canvas_item_new (GNOME_CANVAS_GROUP(_trackview.canvas_display), gnome_canvas_group_get_type (), 0); - canvas_group = new Gnome::Canvas::Group (*_trackview.canvas_display); - - canvas_rect = new Gnome::Canvas::SimpleRect (*canvas_group); - canvas_rect->set_property ("x1", 0.0); - canvas_rect->set_property ("y1", 0.0); - canvas_rect->set_property ("x2", 1000000.0); - canvas_rect->set_property ("y2", (double)20); - canvas_rect->set_property ("outline_color_rgba", color_map[cMarkerTrackOutline]); - canvas_rect->set_property ("fill_color_rgba", stream_base_color); + stream_base_color = ARDOUR_UI::config()->canvasvar_MarkerTrack.get(); + + 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() = max_frames; + canvas_rect->property_y2() = (double)20; + canvas_rect->property_outline_color_rgba() = ARDOUR_UI::config()->canvasvar_MarkerTrack.get(); + canvas_rect->property_fill_color_rgba() = stream_base_color; - gtk_signal_connect(GTK_OBJECT(canvas_rect), "event", (GtkSignalFunc)PublicEditor::canvas_marker_time_axis_view_event, &_trackview) ; + canvas_rect->signal_event().connect (bind (mem_fun (_trackview.editor, &PublicEditor::canvas_marker_time_axis_view_event), canvas_rect, &_trackview)); _samples_per_unit = _trackview.editor.get_current_zoom() ; @@ -95,13 +93,13 @@ MarkerTimeAxisView::~MarkerTimeAxisView() if(canvas_rect) { - gtk_object_destroy(GTK_OBJECT(canvas_rect)) ; + delete canvas_rect; canvas_rect = 0 ; } if(canvas_group) { - gtk_object_destroy(GTK_OBJECT(canvas_group)) ; + delete canvas_group; canvas_group = 0 ; } } @@ -118,16 +116,14 @@ MarkerTimeAxisView::~MarkerTimeAxisView() int MarkerTimeAxisView::set_height(gdouble h) { - if (h < 10.0 || h > 1000.0) - { - return -1 ; + if (h < 10.0 || h > 1000.0) { + return -1; } - gtk_object_set (GTK_OBJECT(canvas_rect), "y2", h, NULL); + canvas_rect->property_y2() = h; - for (MarkerViewList::iterator i = marker_view_list.begin(); i != marker_view_list.end(); ++i) - { - (*i)->set_height(h) ; + for (MarkerViewList::iterator i = marker_view_list.begin(); i != marker_view_list.end(); ++i) { + (*i)->set_y_position_and_height(0, h); } return 0; @@ -142,8 +138,8 @@ MarkerTimeAxisView::set_height(gdouble h) int MarkerTimeAxisView::set_position(gdouble x, gdouble y) { - canvas_group->set_property ("x", x); - canvas_group->set_property ("y", y); + canvas_group->property_x() = x; + canvas_group->property_y() = y; return 0; } @@ -201,7 +197,7 @@ MarkerTimeAxisView::apply_color(Gdk::Color& color) * @param src the identity of the object that initiated the change */ MarkerView* -MarkerTimeAxisView::add_marker_view(ImageFrameView* ifv, std::string mark_type, std::string mark_id, jack_nframes_t start, jack_nframes_t dur, void* src) +MarkerTimeAxisView::add_marker_view(ImageFrameView* ifv, std::string mark_type, std::string mark_id, nframes_t start, nframes_t dur, void* src) { if(ifv->has_marker_view_item(mark_id)) { @@ -347,7 +343,7 @@ MarkerTimeAxisView::set_marker_duration_sec(double sec) { if(get_selected_time_axis_item() != 0) { - get_selected_time_axis_item()->set_duration((jack_nframes_t) (sec * _trackview.editor.current_session()->frame_rate()), this) ; + get_selected_time_axis_item()->set_duration((nframes_t) (sec * _trackview.editor.current_session()->frame_rate()), this) ; } }