summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor.cc
diff options
context:
space:
mode:
authorNick Mainsbridge <beatroute@iprimus.com.au>2006-09-10 17:49:03 +0000
committerNick Mainsbridge <beatroute@iprimus.com.au>2006-09-10 17:49:03 +0000
commitdc9484d1449d04923849316a3ac7c74c4c49ec23 (patch)
treec9cf1a22cdfeba67abf8f26f8f5467dee3b18d78 /gtk2_ardour/editor.cc
parent3c45ab08468e552b1c6f2b5bd6dff2b74204a0b9 (diff)
more fiddling about with placing bits of the scroll/zoom operation in the idle callback. fix some ruler bugs. overall this should be smoother.
git-svn-id: svn://localhost/ardour2/trunk@912 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor.cc')
-rw-r--r--gtk2_ardour/editor.cc17
1 files changed, 5 insertions, 12 deletions
diff --git a/gtk2_ardour/editor.cc b/gtk2_ardour/editor.cc
index b9d14d4475..6b8fc782dc 100644
--- a/gtk2_ardour/editor.cc
+++ b/gtk2_ardour/editor.cc
@@ -882,6 +882,9 @@ Editor::reposition_x_origin (jack_nframes_t frame)
}
horizontal_adjustment.set_value (frame/frames_per_unit);
+ } else {
+ update_fixed_rulers();
+ tempo_map_changed (Change (0));
}
}
@@ -965,19 +968,10 @@ void
Editor::canvas_horizontally_scrolled ()
{
- Glib::signal_idle().connect (mem_fun(*this, &Editor::lazy_canvas_horizontally_scrolled));
-}
-
-bool
-Editor::lazy_canvas_horizontally_scrolled ()
-{
-
- leftmost_frame = (jack_nframes_t) floor (horizontal_adjustment.get_value() * frames_per_unit);
-
+ leftmost_frame = (jack_nframes_t) floor (horizontal_adjustment.get_value() * frames_per_unit);
update_fixed_rulers ();
tempo_map_changed (Change (0));
- return false;
}
void
@@ -995,7 +989,6 @@ Editor::deferred_reposition_and_zoom (jack_nframes_t frame, double nfpu)
set_frames_per_unit (nfpu);
reposition_x_origin (frame);
- tempo_map_changed (Change (0));
repos_zoom_queued = false;
return FALSE;
@@ -1291,7 +1284,7 @@ Editor::connect_to_session (Session *t)
horizontal_adjustment.set_value (0);
restore_ruler_visibility ();
- tempo_map_changed (Change (0));
+ //tempo_map_changed (Change (0));
session->tempo_map().apply_with_metrics (*this, &Editor::draw_metric_marks);
edit_cursor->set_position (0);