using namespace std;
using namespace Gtk;
using namespace Gtkmm2ext;
+using namespace ARDOUR_UI_UTILS;
static const int pos_box_size = 9;
static const int lr_box_size = 15;
if (!have_font) {
Pango::FontDescription font;
Pango::AttrFontDesc* font_attr;
- font = Pango::FontDescription ("ArdourMono");
- font.set_weight (Pango::WEIGHT_BOLD);
- font.set_size(9 * PANGO_SCALE);
+ font = Pango::FontDescription (ARDOUR_UI::config()->get_SmallBoldMonospaceFont());
font_attr = new Pango::AttrFontDesc (Pango::Attribute::create_attr_font_desc (font));
panner_font_attributes.change(*font_attr);
delete font_attr;
have_font = true;
}
- position_control->Changed.connect (connections, invalidator(*this), boost::bind (&MonoPanner::value_change, this), gui_context());
+ position_control->Changed.connect (panvalue_connections, invalidator(*this), boost::bind (&MonoPanner::value_change, this), gui_context());
- _panner_shell->Changed.connect (connections, invalidator (*this), boost::bind (&MonoPanner::bypass_handler, this), gui_context());
+ _panner_shell->Changed.connect (panshell_connections, invalidator (*this), boost::bind (&MonoPanner::bypass_handler, this), gui_context());
+ _panner_shell->PannableChanged.connect (panshell_connections, invalidator (*this), boost::bind (&MonoPanner::pannable_handler, this), gui_context());
ColorsChanged.connect (sigc::mem_fun (*this, &MonoPanner::color_handler));
set_tooltip ();
t = 0x606060ff;
}
+ if (_send_mode) {
+ b = rgba_from_style("SendStripBase",
+ UINT_RGBA_R(b), UINT_RGBA_G(b), UINT_RGBA_B(b), 255, "fg");
+ }
/* background */
context->set_source_rgba (UINT_RGBA_R_FLT(b), UINT_RGBA_G_FLT(b), UINT_RGBA_B_FLT(b), UINT_RGBA_A_FLT(b));
context->rectangle (0, 0, width, height);
void
MonoPanner::set_colors ()
{
- colors.fill = ARDOUR_UI::config()->get_canvasvar_MonoPannerFill();
- colors.outline = ARDOUR_UI::config()->get_canvasvar_MonoPannerOutline();
- colors.text = ARDOUR_UI::config()->get_canvasvar_MonoPannerText();
- colors.background = ARDOUR_UI::config()->get_canvasvar_MonoPannerBackground();
- colors.pos_outline = ARDOUR_UI::config()->get_canvasvar_MonoPannerPositionOutline();
- colors.pos_fill = ARDOUR_UI::config()->get_canvasvar_MonoPannerPositionFill();
+ colors.fill = ARDOUR_UI::config()->get_MonoPannerFill();
+ colors.outline = ARDOUR_UI::config()->get_MonoPannerOutline();
+ colors.text = ARDOUR_UI::config()->get_MonoPannerText();
+ colors.background = ARDOUR_UI::config()->get_MonoPannerBackground();
+ colors.pos_outline = ARDOUR_UI::config()->get_MonoPannerPositionOutline();
+ colors.pos_fill = ARDOUR_UI::config()->get_MonoPannerPositionFill();
}
void
queue_draw ();
}
+void
+MonoPanner::pannable_handler ()
+{
+ panvalue_connections.drop_connections();
+ position_control = _panner->pannable()->pan_azimuth_control;
+ position_binder.set_controllable(position_control);
+ position_control->Changed.connect (panvalue_connections, invalidator(*this), boost::bind (&MonoPanner::value_change, this), gui_context());
+ queue_draw ();
+}
+
PannerEditor*
MonoPanner::editor ()
{