/*
- Copyright (C) 2013-2019 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2013-2020 Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
#endif
Bind (wxEVT_SIZE, boost::bind(&AudioMappingView::size, this, _1));
- Bind (wxEVT_MENU, boost::bind(&AudioMappingView::off, this), ID_off);
- Bind (wxEVT_MENU, boost::bind(&AudioMappingView::full, this), ID_full);
- Bind (wxEVT_MENU, boost::bind(&AudioMappingView::minus6dB, this), ID_minus6dB);
+ Bind (wxEVT_MENU, boost::bind(&AudioMappingView::set_gain_from_menu, this, 0), ID_off);
+ Bind (wxEVT_MENU, boost::bind(&AudioMappingView::set_gain_from_menu, this, 1), ID_full);
+ Bind (wxEVT_MENU, boost::bind(&AudioMappingView::set_gain_from_menu, this, db_to_linear(-6)), ID_minus6dB);
Bind (wxEVT_MENU, boost::bind(&AudioMappingView::edit, this), ID_edit);
Bind (wxEVT_MOUSEWHEEL, boost::bind(&AudioMappingView::mouse_wheel, this, _1));
_body->Bind (wxEVT_PAINT, boost::bind(&AudioMappingView::paint, this));
)
);
- float const value_dB = 20 * log10 (_map.get(y, x));
+ float const value_dB = linear_to_db(_map.get(y, x));
int const range = 18;
int height = 0;
if (value_dB > -range) {
}
void
-AudioMappingView::off ()
+AudioMappingView::set_gain_from_menu (double linear)
{
- _map.set (_menu_input, _menu_output, 0);
- map_values_changed ();
-}
-
-void
-AudioMappingView::full ()
-{
- _map.set (_menu_input, _menu_output, 1);
- map_values_changed ();
-}
-
-void
-AudioMappingView::minus6dB ()
-{
- _map.set (_menu_input, _menu_output, pow (10, -6.0 / 20));
+ _map.set (_menu_input, _menu_output, linear);
map_values_changed ();
}
safe_output_channel_name(channels->second)
);
} else {
- float const dB = 20 * log10 (gain);
+ float const dB = linear_to_db(gain);
s = wxString::Format (
_("Audio will be passed from %s channel %s to %s channel %s with gain %.1fdB."),
_from,