#include <gtkmm/table.h>
#include "gtkmm2ext/slider_controller.h"
#include "ardour_dialog.h"
+#include "audio_clock.h"
#include "ardour/types.h"
/** @file option_editor.h
void set_state_from_config ();
void add_to_page (OptionEditorPage*);
+ void set_sensitive (bool yn) {
+ _button->set_sensitive (yn);
+ }
+
private:
void toggled ();
sigc::slot<bool, ARDOUR::gain_t> _set;
};
+class ClockOption : public Option
+{
+public:
+ ClockOption (std::string const &, std::string const &, sigc::slot<ARDOUR::framecnt_t>, sigc::slot<bool, ARDOUR::framecnt_t>);
+ void set_state_from_config ();
+ void add_to_page (OptionEditorPage *);
+ void set_session (ARDOUR::Session *);
+
+private:
+ Gtk::Label _label;
+ AudioClock _clock;
+ sigc::slot<ARDOUR::framecnt_t> _get;
+ sigc::slot<bool, ARDOUR::framecnt_t> _set;
+};
+
/** Class to represent a single page in an OptionEditor's notebook.
* Pages are laid out using a 3-column table; the 1st column is used
* to indent non-headings, and the 2nd and 3rd for actual content.
void add_option (std::string const &, OptionEditorComponent *);
+ void set_current_page (std::string const &);
+
protected:
+ virtual void parameter_changed (std::string const &);
+
ARDOUR::Configuration* _config;
private:
- void parameter_changed (std::string const &);
PBD::ScopedConnection config_connection;
Gtk::Notebook _notebook;