#include "ardour/tempo.h"
#include "ardour_button.h"
+#include "ardour_knob.h"
#include "automation_controller.h"
#include "gui_thread.h"
#include "note_select_dialog.h"
AutomationController::AutomationController(boost::shared_ptr<Automatable> printer,
boost::shared_ptr<AutomationControl> ac,
- Adjustment* adj)
+ Adjustment* adj,
+ bool use_knob)
: _widget(NULL)
, _printer (printer)
, _controllable(ac)
but->signal_clicked.connect(
sigc::mem_fun(*this, &AutomationController::toggled));
_widget = but;
+ } else if (use_knob) {
+ ArdourKnob* knob = manage (new ArdourKnob (ArdourKnob::default_elements, ArdourKnob::Detent));
+ knob->set_controllable (ac);
+ knob->set_name("processor control knob");
+ _widget = knob;
} else {
AutomationBarController* bar = manage(new AutomationBarController(_printer, ac, adj));
AutomationController::create(boost::shared_ptr<Automatable> printer,
const Evoral::Parameter& param,
const ParameterDescriptor& desc,
- boost::shared_ptr<AutomationControl> ac)
+ boost::shared_ptr<AutomationControl> ac,
+ bool use_knob)
{
const double lo = ac->internal_to_interface(desc.lower);
const double up = ac->internal_to_interface(desc.upper);
assert (ac);
assert(ac->parameter() == param);
- return boost::shared_ptr<AutomationController>(new AutomationController(printer, ac, adjustment));
+ return boost::shared_ptr<AutomationController>(new AutomationController(printer, ac, adjustment, use_knob));
}
void
boost::shared_ptr<ARDOUR::Automatable> parent,
const Evoral::Parameter& param,
const ARDOUR::ParameterDescriptor& desc,
- boost::shared_ptr<ARDOUR::AutomationControl> ac);
+ boost::shared_ptr<ARDOUR::AutomationControl> ac,
+ bool use_knob = false);
~AutomationController();
private:
AutomationController (boost::shared_ptr<ARDOUR::Automatable> printer,
boost::shared_ptr<ARDOUR::AutomationControl> ac,
- Gtk::Adjustment* adj);
+ Gtk::Adjustment* adj,
+ bool use_knob);
void start_touch();
void end_touch();
<ColorAlias name="processor control button: fill" alias="color 29"/>
<ColorAlias name="processor control button: fill active" alias="color 46"/>
<ColorAlias name="processor control button: led active" alias="color 62"/>
+ <ColorAlias name="processor control knob" alias="color 60"/>
+ <ColorAlias name="processor control knob: arc end" alias="color 70"/>
+ <ColorAlias name="processor control knob: arc start" alias="color 16"/>
<ColorAlias name="processor fader: fill" alias="color 16"/>
<ColorAlias name="processor fader: fill active" alias="color 78"/>
<ColorAlias name="processor fader: led active" alias="color 37"/>