summaryrefslogtreecommitdiff
path: root/gtk2_ardour/engine_dialog.h
diff options
context:
space:
mode:
authorTim Mayberry <mojofunk@gmail.com>2015-08-09 23:16:02 +1000
committerTim Mayberry <mojofunk@gmail.com>2015-08-11 09:24:52 +1000
commit1bd15bef6c1e7abc2d32abe93707e55986761b67 (patch)
tree3aa1197d0ed560a14847c7da26114a92bd6dee0b /gtk2_ardour/engine_dialog.h
parent324b5ffbac0de08acfc827485d4256f6ca4f5adf (diff)
Add methods in EngineControl for blocking and unblocking signals
Only intended to be used with the nested SignalBlocker class
Diffstat (limited to 'gtk2_ardour/engine_dialog.h')
-rw-r--r--gtk2_ardour/engine_dialog.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/gtk2_ardour/engine_dialog.h b/gtk2_ardour/engine_dialog.h
index 553a9f9be5..bb4965884d 100644
--- a/gtk2_ardour/engine_dialog.h
+++ b/gtk2_ardour/engine_dialog.h
@@ -246,6 +246,35 @@ class EngineControl : public ArdourDialog, public PBD::ScopedConnectionList {
void build_no_control_notebook ();
void connect_changed_signals ();
+ void block_changed_signals ();
+ void unblock_changed_signals ();
+
+ class SignalBlocker
+ {
+ public:
+ SignalBlocker (EngineControl& engine_control, const std::string& reason);
+
+ ~SignalBlocker ();
+
+ private:
+ EngineControl& ec;
+ std::string m_reason;
+ };
+
+ uint32_t block_signals;
+
+ sigc::connection backend_combo_connection;
+ sigc::connection driver_combo_connection;
+ sigc::connection sample_rate_combo_connection;
+ sigc::connection buffer_size_combo_connection;
+ sigc::connection device_combo_connection;
+ sigc::connection input_device_combo_connection;
+ sigc::connection output_device_combo_connection;
+ sigc::connection midi_option_combo_connection;
+ sigc::connection input_latency_connection;
+ sigc::connection output_latency_connection;
+ sigc::connection input_channels_connection;
+ sigc::connection output_channels_connection;
void on_show ();
void on_response (int);