Add a send amp's gain control as a send controllable.

Tweak AutomationControl now that PBD::Controllable has
a default implementation of user_to_ui and ui_to_user. 
Add correct implementations of these methods to
Amp::GainControl.  Hence allow SendProcessorEntry to
use the generic mini-fader-adding code from
ProcessorEntry.


git-svn-id: svn://localhost/ardour2/branches/3.0@11292 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Carl Hetherington 2012-01-21 16:38:45 +00:00
parent 0c30881ad4
commit a8bb49e5d8
6 changed files with 61 additions and 151 deletions

View file

@ -69,7 +69,6 @@ namespace ARDOUR {
class PluginInsert;
class PortInsert;
class Route;
class Send;
class Session;
}
@ -103,6 +102,7 @@ class ProcessorEntry : public Gtkmm2ext::DnDVBoxChild, public sigc::trackable
{
public:
ProcessorEntry (boost::shared_ptr<ARDOUR::Processor>, Width);
~ProcessorEntry ();
Gtk::EventBox& action_widget ();
Gtk::Widget& widget ();
@ -189,27 +189,6 @@ class BlankProcessorEntry : public ProcessorEntry
BlankProcessorEntry (Width w);
};
class SendProcessorEntry : public ProcessorEntry
{
public:
SendProcessorEntry (boost::shared_ptr<ARDOUR::Send>, Width);
void set_enum_width (Width, int);
void set_pixel_width (int);
private:
void show_gain ();
void gain_adjusted ();
void setup_gain_adjustment ();
boost::shared_ptr<ARDOUR::Send> _send;
Gtk::Adjustment _adjustment;
Gtkmm2ext::HSliderController _fader;
bool _ignore_gain_change;
PBD::ScopedConnectionList _send_connections;
ARDOUR::DataType _data_type;
};
class PluginInsertProcessorEntry : public ProcessorEntry
{
public: