add session save signal and hook-up videotimeline
authorRobin Gareus <robin@gareus.org>
Mon, 8 Apr 2013 17:51:00 +0000 (19:51 +0200)
committerRobin Gareus <robin@gareus.org>
Mon, 8 Apr 2013 17:51:48 +0000 (19:51 +0200)
gtk2_ardour/video_timeline.cc
libs/ardour/ardour/session.h
libs/ardour/session_state.cc

index 9cd9d35315790f7dc48526d0d2cabac6da40da8b..e33f171a3c5c22d86a82f009485142ba2e156279 100644 (file)
@@ -171,6 +171,7 @@ VideoTimeLine::set_session (ARDOUR::Session *s)
        SessionHandlePtr::set_session (s);
        if (!_session) { return ; }
 
+       _session->SaveSession.connect_same_thread (*this, boost::bind (&VideoTimeLine::save_session, this));
        LocaleGuard lg (X_("POSIX"));
 
        XMLNode* node = _session->extra_xml (X_("Videotimeline"));
index 525faa4e133176d51f79f56d6ec7d15c67f2e93d..a1492246077f7100d507e9b7f4ed11ca766cfc59 100644 (file)
@@ -397,6 +397,7 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi
 
        PBD::Signal1<void,std::string> StateSaved;
        PBD::Signal0<void> StateReady;
+       PBD::Signal0<void> SaveSession;
 
        std::vector<std::string*>* possible_states() const;
        static std::vector<std::string*>* possible_states (std::string path);
index a7133757550c441c2c168e6ed123cc4faec79f15..4ce39340a337a195ea21bcd4c8db26b1fc41d5b7 100644 (file)
@@ -827,6 +827,8 @@ Session::save_state (string snapshot_name, bool pending, bool switch_to_snapshot
 
        if (!pending) {
 
+               SaveSession (); /* EMIT SIGNAL */
+
                save_history (snapshot_name);
 
                bool was_dirty = dirty();