summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authornick_m <mainsbridge@gmail.com>2017-01-27 03:05:32 +1100
committernick_m <mainsbridge@gmail.com>2017-01-27 03:05:32 +1100
commit7b9784fff4e36eb541e1423013590bc31bde69d5 (patch)
treef83e61cbdc16bee15e640b512997ca406b95903a /libs
parent666ed3a0bd31551dc9f07247d0c5d9db494188f1 (diff)
mark session dirty when dragging tempo markers.
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/ardour/session.h1
-rw-r--r--libs/ardour/ardour/tempo.h2
-rw-r--r--libs/ardour/session.cc10
-rw-r--r--libs/ardour/session_state.cc2
-rw-r--r--libs/ardour/tempo.cc8
5 files changed, 6 insertions, 17 deletions
diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h
index 0a2926d816..9b4e60bd06 100644
--- a/libs/ardour/ardour/session.h
+++ b/libs/ardour/ardour/session.h
@@ -1705,7 +1705,6 @@ class LIBARDOUR_API Session : public PBD::StatefulDestructible, public PBD::Scop
TempoMap *_tempo_map;
void tempo_map_changed (const PBD::PropertyChange&);
- void gui_tempo_map_changed ();
/* edit/mix groups */
diff --git a/libs/ardour/ardour/tempo.h b/libs/ardour/ardour/tempo.h
index 08bdf8dc59..a3ab8d68f6 100644
--- a/libs/ardour/ardour/tempo.h
+++ b/libs/ardour/ardour/tempo.h
@@ -495,7 +495,7 @@ class LIBARDOUR_API TempoMap : public PBD::StatefulDestructible
std::pair<double, framepos_t> predict_tempo_position (TempoSection* section, const Timecode::BBT_Time& bbt);
bool can_solve_bbt (TempoSection* section, const Timecode::BBT_Time& bbt);
- PBD::Signal0<void> MetricPositionChanged;
+ PBD::Signal1<void,const PBD::PropertyChange&> MetricPositionChanged;
void fix_legacy_session();
private:
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index f3e23e237c..5332650052 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -5627,16 +5627,6 @@ Session::tempo_map_changed (const PropertyChange&)
}
void
-Session::gui_tempo_map_changed ()
-{
- clear_clicks ();
-
- playlists->update_after_tempo_map_change ();
-
- _locations->apply (*this, &Session::update_locations_after_tempo_map_change);
-}
-
-void
Session::update_locations_after_tempo_map_change (const Locations::LocationList& loc)
{
for (Locations::LocationList::const_iterator i = loc.begin(); i != loc.end(); ++i) {
diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc
index 834f054e0f..36d3c9868b 100644
--- a/libs/ardour/session_state.cc
+++ b/libs/ardour/session_state.cc
@@ -260,7 +260,7 @@ Session::post_engine_init ()
delete _tempo_map;
_tempo_map = new TempoMap (_current_frame_rate);
_tempo_map->PropertyChanged.connect_same_thread (*this, boost::bind (&Session::tempo_map_changed, this, _1));
- _tempo_map->MetricPositionChanged.connect_same_thread (*this, boost::bind (&Session::gui_tempo_map_changed, this));
+ _tempo_map->MetricPositionChanged.connect_same_thread (*this, boost::bind (&Session::tempo_map_changed, this, _1));
/* MidiClock requires a tempo map */
diff --git a/libs/ardour/tempo.cc b/libs/ardour/tempo.cc
index dc3774ff80..18edabf2a1 100644
--- a/libs/ardour/tempo.cc
+++ b/libs/ardour/tempo.cc
@@ -3271,7 +3271,7 @@ TempoMap::gui_set_tempo_position (TempoSection* ts, const framepos_t& frame, con
++d;
}
- MetricPositionChanged (); // Emit Signal
+ MetricPositionChanged (PropertyChange ()); // Emit Signal
}
/** moves a MeterSection to a specified position.
@@ -3319,7 +3319,7 @@ TempoMap::gui_set_meter_position (MeterSection* ms, const framepos_t& frame)
++d;
}
- MetricPositionChanged (); // Emit Signal
+ MetricPositionChanged (PropertyChange ()); // Emit Signal
}
bool
@@ -3346,7 +3346,7 @@ TempoMap::gui_change_tempo (TempoSection* ts, const Tempo& bpm)
++d;
}
if (can_solve) {
- MetricPositionChanged (); // Emit Signal
+ MetricPositionChanged (PropertyChange ()); // Emit Signal
}
return can_solve;
}
@@ -3498,7 +3498,7 @@ TempoMap::gui_stretch_tempo (TempoSection* ts, const framepos_t& frame, const fr
++d;
}
- MetricPositionChanged (); // Emit Signal
+ MetricPositionChanged (PropertyChange ()); // Emit Signal
}
/** Returns the exact bbt-based beat corresponding to the bar, beat or quarter note subdivision nearest to