summaryrefslogtreecommitdiff
path: root/gtk2_ardour/ardour_ui.cc
diff options
context:
space:
mode:
authorDoug McLain <doug@nostar.net>2007-05-14 02:48:28 +0000
committerDoug McLain <doug@nostar.net>2007-05-14 02:48:28 +0000
commit9383499ce675fe046b9143c0380fcbc7447b79cc (patch)
tree82c2b10b728a5c54dadad9e924e56c42caf328a5 /gtk2_ardour/ardour_ui.cc
parent90f3128d73bc32288d8ce99e81255ea02f54ffbc (diff)
Add 'delta edit cursor' option to primary and secondary clocks. When in this mode, the clocks display the absolute difference between the playhead and the edit cursor
git-svn-id: svn://localhost/ardour2/trunk@1838 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/ardour_ui.cc')
-rw-r--r--gtk2_ardour/ardour_ui.cc17
1 files changed, 13 insertions, 4 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc
index a38196d642..e3c476a854 100644
--- a/gtk2_ardour/ardour_ui.cc
+++ b/gtk2_ardour/ardour_ui.cc
@@ -94,7 +94,7 @@ ARDOUR_UI *ARDOUR_UI::theArdourUI = 0;
sigc::signal<void,bool> ARDOUR_UI::Blink;
sigc::signal<void> ARDOUR_UI::RapidScreenUpdate;
sigc::signal<void> ARDOUR_UI::SuperRapidScreenUpdate;
-sigc::signal<void,nframes_t> ARDOUR_UI::Clock;
+sigc::signal<void,nframes_t, bool, nframes_t> ARDOUR_UI::Clock;
ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], string rcfile)
@@ -1520,7 +1520,7 @@ void
ARDOUR_UI::update_clocks ()
{
if (!editor || !editor->dragging_playhead()) {
- Clock (session->audible_frame()); /* EMIT_SIGNAL */
+ Clock (session->audible_frame(), false, editor->edit_cursor_position(false)); /* EMIT_SIGNAL */
}
}
@@ -2654,8 +2654,17 @@ ARDOUR_UI::use_config ()
void
ARDOUR_UI::update_transport_clocks (nframes_t pos)
{
- primary_clock.set (pos);
- secondary_clock.set (pos);
+ if (Config->get_primary_clock_delta_edit_cursor()) {
+ primary_clock.set (pos, false, editor->edit_cursor_position(false), 1);
+ } else {
+ primary_clock.set (pos, 0, true);
+ }
+
+ if (Config->get_secondary_clock_delta_edit_cursor()) {
+ secondary_clock.set (pos, false, editor->edit_cursor_position(false), 2);
+ } else {
+ secondary_clock.set (pos);
+ }
if (big_clock_window) {
big_clock.set (pos);