fix transition in and out of delta clock mode

git-svn-id: svn://localhost/ardour2/branches/3.0@10679 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Paul Davis 2011-11-18 17:06:11 +00:00
parent 0cb55266b8
commit 8b5d64ce9f
3 changed files with 26 additions and 2 deletions

View File

@ -373,9 +373,25 @@ ARDOUR_UI::parameter_changed (std::string p)
} else if (p == "show-track-meters") {
editor->toggle_meter_updating();
} else if (p == "primary-clock-delta-edit-cursor") {
primary_clock->set_is_duration (Config->get_primary_clock_delta_edit_cursor());
if (Config->get_primary_clock_delta_edit_cursor()) {
primary_clock->set_is_duration (true);
primary_clock->set_editable (false);
primary_clock->set_widget_name ("transport delta");
} else {
primary_clock->set_is_duration (false);
primary_clock->set_editable (true);
primary_clock->set_widget_name ("transport");
}
} else if (p == "secondary-clock-delta-edit-cursor") {
secondary_clock->set_is_duration (Config->get_secondary_clock_delta_edit_cursor());
if (Config->get_secondary_clock_delta_edit_cursor()) {
secondary_clock->set_is_duration (true);
secondary_clock->set_editable (false);
secondary_clock->set_widget_name ("secondary delta");
} else {
secondary_clock->set_is_duration (false);
secondary_clock->set_editable (true);
secondary_clock->set_widget_name ("secondary");
}
}
}

View File

@ -1654,6 +1654,12 @@ AudioClock::on_style_changed (const Glib::RefPtr<Gtk::Style>& old_style)
set_colors ();
}
void
AudioClock::set_editable (bool yn)
{
editable = yn;
}
void
AudioClock::set_is_duration (bool yn)
{

View File

@ -58,6 +58,7 @@ class AudioClock : public CairoWidget, public ARDOUR::SessionHandlePtr
bool off() const { return _off; }
void set_widget_name (const std::string& name);
void set_active_state (Gtkmm2ext::ActiveState s);
void set_editable (bool yn);
void focus ();
@ -112,6 +113,7 @@ class AudioClock : public CairoWidget, public ARDOUR::SessionHandlePtr
int info_height;
int upper_height;
double mode_based_info_ratio;
static const double info_font_scale_factor;
static const double separator_height;
static const double x_leading_padding;