summaryrefslogtreecommitdiff
path: root/gtk2_ardour/automation_time_axis.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gtk2_ardour/automation_time_axis.cc')
-rw-r--r--gtk2_ardour/automation_time_axis.cc37
1 files changed, 37 insertions, 0 deletions
diff --git a/gtk2_ardour/automation_time_axis.cc b/gtk2_ardour/automation_time_axis.cc
index 69653c9c99..0da3a38fdc 100644
--- a/gtk2_ardour/automation_time_axis.cc
+++ b/gtk2_ardour/automation_time_axis.cc
@@ -163,6 +163,7 @@ AutomationTimeAxisView::AutomationTimeAxisView (Session& s, boost::shared_ptr<Ro
/* make sure labels etc. are correct */
automation_state_changed ();
+ ColorChanged.connect (mem_fun (*this, &AutomationTimeAxisView::color_handler));
}
AutomationTimeAxisView::~AutomationTimeAxisView ()
@@ -788,6 +789,42 @@ AutomationTimeAxisView::exited ()
}
void
+AutomationTimeAxisView::set_colors () {
+
+ for( list<GhostRegion *>::iterator i=ghosts.begin(); i != ghosts.end(); i++ ) {
+ (*i)->set_colors();
+ }
+
+ for( vector<AutomationLine *>::iterator i=lines.begin(); i != lines.end(); i++ ) {
+ (*i)->set_colors();
+ }
+
+}
+
+void
+AutomationTimeAxisView::color_handler (ColorID id, uint32_t val) {
+
+ switch (id) {
+ case cGhostTrackWave:
+ case cGhostTrackWaveClip:
+ case cGhostTrackZeroLine:
+
+ case cControlPoint:
+ case cControlPointFill:
+ case cControlPointOutline:
+ case cAutomationLine:
+ set_colors ();
+
+ break;
+
+ default:
+ break;
+ }
+}
+
+
+
+void
AutomationTimeAxisView::set_state (const XMLNode& node)
{
TimeAxisView::set_state (node);