diff options
author | Robin Gareus <robin@gareus.org> | 2013-04-09 04:05:07 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2013-04-09 04:05:46 +0200 |
commit | ed1f310f109279347906bbcb85757b5a54792e26 (patch) | |
tree | d4f1dba2351bac25b83250fffe8a6bfdfba93e61 /gtk2_ardour/video_monitor.h | |
parent | 49ddf8ecce0027e5cb96de2d361aec8d74b3c921 (diff) |
vtl: rework session-needs-save logic
* videotimeline now immediately marks the session dirty on
every state-changing operation
* video-montor is polled every 2.5 seconds for menu-relevant state info
(ontop, OSD,..) and every 30 seconds for full state (window pos, size,..)
* new interface to query the video-monitor for its state and wait for
all replies - terminating the process and using ::wait() is no longer
required
* Ardour> quit and Ardour > close-session does no longer close the video
session to enforce video-monitor state sync but uses above new interface
Diffstat (limited to 'gtk2_ardour/video_monitor.h')
-rw-r--r-- | gtk2_ardour/video_monitor.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gtk2_ardour/video_monitor.h b/gtk2_ardour/video_monitor.h index be3b76f9a4..0f954e9cd5 100644 --- a/gtk2_ardour/video_monitor.h +++ b/gtk2_ardour/video_monitor.h @@ -62,7 +62,9 @@ class VideoMonitor : public sigc::trackable , public ARDOUR::SessionHandlePtr, p void open (std::string); void set_session (ARDOUR::Session *s); + void save_session (); void clear_session_state (); + void query_full_state (bool); bool set_custom_setting (const std::string, const std::string); const std::string get_custom_setting (const std::string); void restore_settings_mask (int i) { _restore_settings_mask = i;} @@ -89,7 +91,6 @@ class VideoMonitor : public sigc::trackable , public ARDOUR::SessionHandlePtr, p void parse_output (std::string d, size_t s); void terminated (); - void save_session (); void parameter_changed (std::string const & p); typedef std::map<std::string,std::string> XJSettings; @@ -105,6 +106,7 @@ class VideoMonitor : public sigc::trackable , public ARDOUR::SessionHandlePtr, p sigc::connection state_connection; int state_clk_divide; int starting; + int knownstate; int osdmode; #if 1 bool debug_enable; |