Fix non-disappearing transport range bar drag rects (longstanding bug), use physical_...
authorNick Mainsbridge <beatroute@iprimus.com.au>
Sat, 11 Oct 2008 15:21:14 +0000 (15:21 +0000)
committerNick Mainsbridge <beatroute@iprimus.com.au>
Sat, 11 Oct 2008 15:21:14 +0000 (15:21 +0000)
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3925 d708f5d6-7413-0410-9779-e7cbd77b26cf

gtk2_ardour/editor_canvas.cc
gtk2_ardour/editor_markers.cc

index ab0ce8532871ba6b83b6b2aef5b7f99c1b9ece02..dd5050d16e5d4de88a4c5e474cf6d21fe166ce0b 100644 (file)
@@ -135,18 +135,18 @@ Editor::initialize_canvas ()
 
        _master_group = new ArdourCanvas::Group (*track_canvas->root());
 
-       transport_loop_range_rect = new ArdourCanvas::SimpleRect (*_master_group, 0.0, 0.0, 0.0, 0.0);
+       transport_loop_range_rect = new ArdourCanvas::SimpleRect (*_master_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 (*_master_group, 0.0, 0.0, 0.0, 0.0);
+       transport_punch_range_rect = new ArdourCanvas::SimpleRect (*_master_group, 0.0, 0.0, 0.0, physical_screen_height);
        transport_punch_range_rect->property_outline_pixels() = 0;
        transport_punch_range_rect->hide();
 
        /* a group to hold time (measure) lines */      
        time_line_group = new ArdourCanvas::Group (*_master_group, 0.0, 0.0);
 
-       range_marker_drag_rect = new ArdourCanvas::SimpleRect (*time_line_group, 0.0, 0.0, 0.0, 0.0);
+       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);
@@ -216,14 +216,14 @@ Editor::initialize_canvas ()
        transport_punchin_line->property_x1() = 0.0;
        transport_punchin_line->property_y1() = 0.0;
        transport_punchin_line->property_x2() = 0.0;
-       transport_punchin_line->property_y2() = 0.0;
+       transport_punchin_line->property_y2() = physical_screen_height;
        transport_punchin_line->hide ();
        
        transport_punchout_line  = new ArdourCanvas::SimpleLine (*_master_group);
        transport_punchout_line->property_x1() = 0.0;
        transport_punchout_line->property_y1() = 0.0;
        transport_punchout_line->property_x2() = 0.0;
-       transport_punchout_line->property_y2() = 0.0;
+       transport_punchout_line->property_y2() = physical_screen_height;
        transport_punchout_line->hide();
        
        // used to show zoom mode active zooming
@@ -323,11 +323,6 @@ Editor::track_canvas_size_allocated ()
                        (*x)->set_line_vpos (0, canvas_height);
                }
 
-               range_marker_drag_rect->property_y2() = canvas_height;
-               transport_loop_range_rect->property_y2() = canvas_height;
-               transport_punch_range_rect->property_y2() = canvas_height;
-               transport_punchin_line->property_y2() = canvas_height;
-               transport_punchout_line->property_y2() = canvas_height;
                vertical_adjustment.set_page_size (canvas_height);
        }
        horizontal_adjustment.set_upper (session->current_end_frame()/frames_per_unit);
index f70cf2092b0833a5a58df39547a5972816ae521f..f502f60b7f06b92b4f23a359f94ddc1ae4f9eb11 100644 (file)
@@ -1125,12 +1125,14 @@ Editor::new_transport_marker_menu_popdown (GdkEventAny *ev)
 void
 Editor::new_transport_marker_menu_set_loop ()
 {
+       transport_bar_drag_rect->hide ();
        set_loop_range (temp_location->start(), temp_location->end(), _("set loop range"));
 }
 
 void
 Editor::new_transport_marker_menu_set_punch ()
 {
+       transport_bar_drag_rect->hide ();
        set_punch_range (temp_location->start(), temp_location->end(), _("set punch range"));
 }