diff options
Diffstat (limited to 'gtk2_ardour/editor_canvas.cc')
-rw-r--r-- | gtk2_ardour/editor_canvas.cc | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/gtk2_ardour/editor_canvas.cc b/gtk2_ardour/editor_canvas.cc index c0656ba90a..ec5f4c50e5 100644 --- a/gtk2_ardour/editor_canvas.cc +++ b/gtk2_ardour/editor_canvas.cc @@ -51,6 +51,7 @@ #include "region_view.h" #include "editor_group_tabs.h" #include "editor_summary.h" +#include "video_timeline.h" #include "keyboard.h" #include "editor_cursors.h" #include "mouse_cursors.h" @@ -186,6 +187,19 @@ Editor::initialize_canvas () cd_marker_bar->property_outline_pixels() = 1; cd_marker_bar->property_outline_what() = 0x8; +#ifdef WITH_VIDEOTIMELINE + videotl_bar_group = new ArdourCanvas::Group (*track_canvas->root ()); + if (Profile->get_sae()) { + videotl_bar = new ArdourCanvas::SimpleRect (*videotl_bar_group, 0.0, 0.0, phys_width, (timebar_height * videotl_bar_height - 1)); + videotl_bar->property_outline_pixels() = 1; + } else { + videotl_bar = new ArdourCanvas::SimpleRect (*videotl_bar_group, 0.0, 0.0, phys_width, (timebar_height * videotl_bar_height)); + videotl_bar->property_outline_pixels() = 0; + } + videotl_bar->property_outline_what() = (0x1 | 0x8); + ARDOUR_UI::instance()->video_timeline = new VideoTimeLine(this, videotl_bar_group, (timebar_height * videotl_bar_height)); +#endif + timebar_group = new ArdourCanvas::Group (*track_canvas->root(), 0.0, 0.0); cursor_group = new ArdourCanvas::Group (*track_canvas->root(), 0.0, 0.0); @@ -195,6 +209,9 @@ Editor::initialize_canvas () transport_marker_group = new ArdourCanvas::Group (*timebar_group, 0.0, timebar_height * 2.0); marker_group = new ArdourCanvas::Group (*timebar_group, 0.0, timebar_height); cd_marker_group = new ArdourCanvas::Group (*timebar_group, 0.0, 0.0); +#ifdef WITH_VIDEOTIMELINE + videotl_group = new ArdourCanvas::Group (*timebar_group, 0.0, 0.0); +#endif cd_marker_bar_drag_rect = new ArdourCanvas::SimpleRect (*cd_marker_group, 0.0, 0.0, 100, timebar_height); cd_marker_bar_drag_rect->property_outline_pixels() = 0; @@ -239,6 +256,10 @@ Editor::initialize_canvas () meter_bar->signal_event().connect (sigc::bind (sigc::mem_fun (*this, &Editor::canvas_meter_bar_event), meter_bar)); marker_bar->signal_event().connect (sigc::bind (sigc::mem_fun (*this, &Editor::canvas_marker_bar_event), marker_bar)); cd_marker_bar->signal_event().connect (sigc::bind (sigc::mem_fun (*this, &Editor::canvas_cd_marker_bar_event), cd_marker_bar)); +#ifdef WITH_VIDEOTIMELINE + videotl_bar_group->signal_event().connect (sigc::bind (sigc::mem_fun (*this, &Editor::canvas_videotl_bar_event), videotl_bar)); + //videotl_bar->signal_event().connect (sigc::bind (sigc::mem_fun (*this, &Editor::canvas_videotl_bar_event), videotl_bar)); +#endif range_marker_bar->signal_event().connect (sigc::bind (sigc::mem_fun (*this, &Editor::canvas_range_marker_bar_event), range_marker_bar)); transport_marker_bar->signal_event().connect (sigc::bind (sigc::mem_fun (*this, &Editor::canvas_transport_marker_bar_event), transport_marker_bar)); @@ -808,6 +829,10 @@ Editor::set_horizontal_position (double p) _summary->set_overlays_dirty (); } +#ifdef WITH_VIDEOTIMELINE + update_video_timeline(); +#endif + HorizontalPositionChanged (); /* EMIT SIGNAL */ #ifndef GTKOSX @@ -818,7 +843,6 @@ Editor::set_horizontal_position (double p) } } #endif - } void @@ -858,6 +882,11 @@ Editor::color_handler() cd_marker_bar->property_fill_color_rgba() = ARDOUR_UI::config()->canvasvar_CDMarkerBar.get(); cd_marker_bar->property_outline_color_rgba() = ARDOUR_UI::config()->canvasvar_MarkerBarSeparator.get(); +#ifdef WITH_VIDEOTIMELINE + videotl_bar->property_fill_color_rgba() = ARDOUR_UI::config()->canvasvar_VideoBar.get(); + videotl_bar->property_outline_color_rgba() = ARDOUR_UI::config()->canvasvar_MarkerBarSeparator.get(); +#endif + range_marker_bar->property_fill_color_rgba() = ARDOUR_UI::config()->canvasvar_RangeMarkerBar.get(); range_marker_bar->property_outline_color_rgba() = ARDOUR_UI::config()->canvasvar_MarkerBarSeparator.get(); |