-
- /* a group to hold time (measure) lines */
-
- time_line_group = new ArdourCanvas::Group (*track_canvas.root(), 0.0, 0.0);
- tempo_lines = new TempoLines(track_canvas, time_line_group);
- cursor_group = new ArdourCanvas::Group (*track_canvas.root(), 0.0, 0.0);
- time_canvas.set_name ("EditorTimeCanvas");
- time_canvas.add_events (Gdk::POINTER_MOTION_HINT_MASK);
- time_canvas.set_flags (CAN_FOCUS);
- time_canvas.set_center_scroll_region (false);
- time_canvas.set_dither (Gdk::RGB_DITHER_NONE);
-
- marker_time_line_group = new ArdourCanvas::Group (*time_canvas.root(), 0.0, 0.0);
- marker_tempo_lines = new TempoLines(time_canvas, marker_time_line_group);
-
- meter_group = new ArdourCanvas::Group (*time_canvas.root(), 0.0, 0.0);
- tempo_group = new ArdourCanvas::Group (*time_canvas.root(), 0.0, timebar_height);
- range_marker_group = new ArdourCanvas::Group (*time_canvas.root(), 0.0, timebar_height * 2.0);
- transport_marker_group = new ArdourCanvas::Group (*time_canvas.root(), 0.0, timebar_height * 3.0);
- marker_group = new ArdourCanvas::Group (*time_canvas.root(), 0.0, timebar_height * 4.0);
-
- tempo_bar = new ArdourCanvas::SimpleRect (*tempo_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
- tempo_bar->property_outline_what() = (0x1 | 0x8);
- tempo_bar->property_outline_pixels() = 1;
-
- meter_bar = new ArdourCanvas::SimpleRect (*meter_group, 0.0, 0.0, max_canvas_coordinate, timebar_height-1.0);
+
+ /* a group to hold time (measure) lines */
+ time_line_group = new ArdourCanvas::Group (*track_canvas->root());
+
+#ifdef GTKOSX
+ /*XXX please don't laugh. this actually improves canvas performance on osx */
+ bogus_background_rect = new ArdourCanvas::SimpleRect (*time_line_group, 0.0, 0.0, max_canvas_coordinate/3, physical_screen_height);
+ bogus_background_rect->property_outline_pixels() = 0;
+#endif
+ transport_loop_range_rect = new ArdourCanvas::SimpleRect (*time_line_group, 0.0, 0.0, 0.0, physical_screen_height);
+ transport_loop_range_rect->property_outline_pixels() = 1;
+ transport_loop_range_rect->hide();
+
+ transport_punch_range_rect = new ArdourCanvas::SimpleRect (*time_line_group, 0.0, 0.0, 0.0, physical_screen_height);
+ transport_punch_range_rect->property_outline_pixels() = 0;
+ transport_punch_range_rect->hide();
+
+ _background_group = new ArdourCanvas::Group (*track_canvas->root());
+ _master_group = new ArdourCanvas::Group (*track_canvas->root());
+
+ range_marker_drag_rect = new ArdourCanvas::SimpleRect (*time_line_group, 0.0, 0.0, 0.0, physical_screen_height);
+ range_marker_drag_rect->hide ();
+
+ _trackview_group = new ArdourCanvas::Group (*_master_group);
+ _region_motion_group = new ArdourCanvas::Group (*_trackview_group);
+
+ meter_bar_group = new ArdourCanvas::Group (*track_canvas->root ());
+ if (Profile->get_sae()) {
+ meter_bar = new ArdourCanvas::SimpleRect (*meter_bar_group, 0.0, 0.0, physical_screen_width, timebar_height - 1);
+ meter_bar->property_outline_pixels() = 1;
+ } else {
+ meter_bar = new ArdourCanvas::SimpleRect (*meter_bar_group, 0.0, 0.0, physical_screen_width, timebar_height);
+ meter_bar->property_outline_pixels() = 0;
+ }