remove varispeed control; shuttle controller now has a context menu with max speed options; rearrange and optimize meter metric displays
git-svn-id: svn://localhost/trunk/ardour2@382 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
fd9d6433a1
commit
a505e1469d
@ -480,8 +480,8 @@ style "editor_time_ruler" = "small_text"
|
||||
|
||||
style "audio_track_base" = "default_base"
|
||||
{
|
||||
font_name = "sans medium 8"
|
||||
fg[NORMAL] = { 0.80, 0.80, 0.80 }
|
||||
font_name = "sans 6"
|
||||
fg[NORMAL] = { 0.77, 0.77, 0.72 }
|
||||
bg[NORMAL] = { 0.18, 0.18, 0.22 }
|
||||
bg[ACTIVE] = { 0.20, 0.20, 0.20 }
|
||||
bg[PRELIGHT] = { 0.20, 0.20, 0.20 }
|
||||
@ -491,7 +491,8 @@ style "audio_track_base" = "default_base"
|
||||
|
||||
style "audio_bus_base"
|
||||
{
|
||||
font_name = "sans medium 8"
|
||||
font_name = "sans 6"
|
||||
fg[NORMAL] = { 0.77, 0.77, 0.72 }
|
||||
fg[NORMAL] = { 0.7, 0.8, 0.2 }
|
||||
bg[NORMAL] = {0, 0.36, 0.40 }
|
||||
}
|
||||
@ -778,8 +779,8 @@ style "tearoff_arrow" = "medium_bold_entry"
|
||||
|
||||
style "meter_metrics_strip" = "default_base"
|
||||
{
|
||||
font = "sans medium 10"
|
||||
fg[NORMAL] = { 0.7, 0.8, 0.2 }
|
||||
font_name = "sans 4"
|
||||
fg[NORMAL] = { 1.0, 0.8, 0.2 }
|
||||
}
|
||||
|
||||
style "location_row_button" = "default_buttons_menus"
|
||||
|
@ -177,6 +177,7 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[], string rcfile)
|
||||
|
||||
shuttle_grabbed = false;
|
||||
shuttle_fract = 0.0;
|
||||
shuttle_max_speed = 8.0f;
|
||||
|
||||
set_shuttle_units (Percentage);
|
||||
set_shuttle_behaviour (Sprung);
|
||||
|
@ -388,11 +388,16 @@ class ARDOUR_UI : public Gtkmm2ext::UI
|
||||
Gtk::Menu* shuttle_style_menu;
|
||||
ShuttleBehaviour shuttle_behaviour;
|
||||
ShuttleUnits shuttle_units;
|
||||
float shuttle_max_speed;
|
||||
Gtk::Menu* shuttle_context_menu;
|
||||
|
||||
void build_shuttle_context_menu ();
|
||||
void show_shuttle_context_menu ();
|
||||
void shuttle_style_changed();
|
||||
void shuttle_unit_clicked ();
|
||||
void set_shuttle_behaviour (ShuttleBehaviour);
|
||||
void set_shuttle_units (ShuttleUnits);
|
||||
void set_shuttle_max_speed (float);
|
||||
void update_speed_display ();
|
||||
float last_speed_displayed;
|
||||
|
||||
|
@ -56,8 +56,6 @@ using namespace sigc;
|
||||
int
|
||||
ARDOUR_UI::setup_windows ()
|
||||
{
|
||||
using namespace Menu_Helpers;
|
||||
|
||||
if (create_editor ()) {
|
||||
error << _("UI: cannot setup editor") << endmsg;
|
||||
return -1;
|
||||
@ -556,12 +554,73 @@ ARDOUR_UI::audition_blink (bool onoff)
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
ARDOUR_UI::build_shuttle_context_menu ()
|
||||
{
|
||||
using namespace Menu_Helpers;
|
||||
|
||||
shuttle_context_menu = new Menu();
|
||||
MenuList& items = shuttle_context_menu->items();
|
||||
|
||||
Menu* speed_menu = manage (new Menu());
|
||||
MenuList& speed_items = speed_menu->items();
|
||||
|
||||
RadioMenuItem::Group group;
|
||||
|
||||
speed_items.push_back (RadioMenuElem (group, "8", bind (mem_fun (*this, &ARDOUR_UI::set_shuttle_max_speed), 8.0f)));
|
||||
if (shuttle_max_speed == 8.0) {
|
||||
static_cast<RadioMenuItem*>(&speed_items.back())->set_active ();
|
||||
}
|
||||
speed_items.push_back (RadioMenuElem (group, "6", bind (mem_fun (*this, &ARDOUR_UI::set_shuttle_max_speed), 6.0f)));
|
||||
if (shuttle_max_speed == 6.0) {
|
||||
static_cast<RadioMenuItem*>(&speed_items.back())->set_active ();
|
||||
}
|
||||
speed_items.push_back (RadioMenuElem (group, "4", bind (mem_fun (*this, &ARDOUR_UI::set_shuttle_max_speed), 4.0f)));
|
||||
if (shuttle_max_speed == 4.0) {
|
||||
static_cast<RadioMenuItem*>(&speed_items.back())->set_active ();
|
||||
}
|
||||
speed_items.push_back (RadioMenuElem (group, "3", bind (mem_fun (*this, &ARDOUR_UI::set_shuttle_max_speed), 3.0f)));
|
||||
if (shuttle_max_speed == 3.0) {
|
||||
static_cast<RadioMenuItem*>(&speed_items.back())->set_active ();
|
||||
}
|
||||
speed_items.push_back (RadioMenuElem (group, "2", bind (mem_fun (*this, &ARDOUR_UI::set_shuttle_max_speed), 2.0f)));
|
||||
if (shuttle_max_speed == 2.0) {
|
||||
static_cast<RadioMenuItem*>(&speed_items.back())->set_active ();
|
||||
}
|
||||
speed_items.push_back (RadioMenuElem (group, "1.5", bind (mem_fun (*this, &ARDOUR_UI::set_shuttle_max_speed), 1.5f)));
|
||||
if (shuttle_max_speed == 1.5) {
|
||||
static_cast<RadioMenuItem*>(&speed_items.back())->set_active ();
|
||||
}
|
||||
|
||||
items.push_back (MenuElem (_("Maximum speed"), *speed_menu));
|
||||
}
|
||||
|
||||
void
|
||||
ARDOUR_UI::show_shuttle_context_menu ()
|
||||
{
|
||||
if (shuttle_context_menu == 0) {
|
||||
build_shuttle_context_menu ();
|
||||
}
|
||||
|
||||
shuttle_context_menu->popup (1, 0);
|
||||
}
|
||||
|
||||
void
|
||||
ARDOUR_UI::set_shuttle_max_speed (float speed)
|
||||
{
|
||||
shuttle_max_speed = speed;
|
||||
}
|
||||
|
||||
gint
|
||||
ARDOUR_UI::shuttle_box_button_press (GdkEventButton* ev)
|
||||
{
|
||||
if (!session) {
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (Keyboard::is_context_menu_event (ev)) {
|
||||
show_shuttle_context_menu ();
|
||||
return true;
|
||||
}
|
||||
|
||||
switch (ev->button) {
|
||||
@ -573,20 +632,20 @@ ARDOUR_UI::shuttle_box_button_press (GdkEventButton* ev)
|
||||
|
||||
case 2:
|
||||
case 3:
|
||||
return TRUE;
|
||||
return true;
|
||||
break;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
gint
|
||||
ARDOUR_UI::shuttle_box_button_release (GdkEventButton* ev)
|
||||
{
|
||||
if (!session) {
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
switch (ev->button) {
|
||||
case 1:
|
||||
mouse_shuttle (ev->x, true);
|
||||
@ -597,7 +656,7 @@ ARDOUR_UI::shuttle_box_button_release (GdkEventButton* ev)
|
||||
session->request_transport_speed (1.0);
|
||||
shuttle_box.queue_draw ();
|
||||
}
|
||||
return TRUE;
|
||||
return true;
|
||||
|
||||
case 2:
|
||||
if (session->transport_rolling()) {
|
||||
@ -607,10 +666,10 @@ ARDOUR_UI::shuttle_box_button_release (GdkEventButton* ev)
|
||||
shuttle_fract = 0;
|
||||
}
|
||||
shuttle_box.queue_draw ();
|
||||
return TRUE;
|
||||
return true;
|
||||
|
||||
case 3:
|
||||
return TRUE;
|
||||
return true;
|
||||
|
||||
case 4:
|
||||
shuttle_fract += 0.005;
|
||||
@ -622,14 +681,14 @@ ARDOUR_UI::shuttle_box_button_release (GdkEventButton* ev)
|
||||
|
||||
use_shuttle_fract (true);
|
||||
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
gint
|
||||
ARDOUR_UI::shuttle_box_motion (GdkEventMotion* ev)
|
||||
{
|
||||
if (!session || !shuttle_grabbed) {
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
return mouse_shuttle (ev->x, false);
|
||||
@ -649,7 +708,7 @@ ARDOUR_UI::mouse_shuttle (double x, bool force)
|
||||
|
||||
shuttle_fract = distance / half_width;
|
||||
use_shuttle_fract (force);
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
void
|
||||
@ -679,7 +738,7 @@ ARDOUR_UI::use_shuttle_fract (bool force)
|
||||
fract = -fract;
|
||||
}
|
||||
|
||||
session->request_transport_speed (8.0 * fract); // Formula A2
|
||||
session->request_transport_speed (shuttle_max_speed * fract); // Formula A2
|
||||
shuttle_box.queue_draw ();
|
||||
}
|
||||
|
||||
@ -706,7 +765,7 @@ ARDOUR_UI::shuttle_box_expose (GdkEventExpose* event)
|
||||
0,
|
||||
x,
|
||||
shuttle_box.get_height());
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -52,10 +52,12 @@ using namespace ARDOUR;
|
||||
using namespace Gtkmm2ext;
|
||||
using namespace Gtk;
|
||||
using namespace sigc;
|
||||
using namespace std;
|
||||
|
||||
sigc::signal<void> GainMeter::ResetAllPeakDisplays;
|
||||
sigc::signal<void,RouteGroup*> GainMeter::ResetGroupPeakDisplays;
|
||||
Pix* GainMeter::slider_pix = 0;
|
||||
map<string,Glib::RefPtr<Gdk::Pixmap> > GainMeter::metric_pixmaps;
|
||||
|
||||
int
|
||||
GainMeter::setup_slider_pix ()
|
||||
@ -74,6 +76,12 @@ GainMeter::setup_slider_pix ()
|
||||
return 0;
|
||||
}
|
||||
|
||||
void
|
||||
was_pressed ()
|
||||
{
|
||||
cerr << "was pressed\n";
|
||||
}
|
||||
|
||||
GainMeter::GainMeter (IO& io, Session& s)
|
||||
: _io (io),
|
||||
_session (s),
|
||||
@ -113,6 +121,8 @@ GainMeter::GainMeter (IO& io, Session& s)
|
||||
gain_unit_button.set_name ("MixerStripGainUnitButton");
|
||||
gain_unit_label.set_name ("MixerStripGainUnitButton");
|
||||
|
||||
gain_unit_button.signal_clicked().connect (ptr_fun (was_pressed));
|
||||
|
||||
top_table.set_col_spacings (2);
|
||||
top_table.set_homogeneous (true);
|
||||
top_table.attach (gain_unit_button, 0, 1, 0, 1);
|
||||
@ -120,6 +130,7 @@ GainMeter::GainMeter (IO& io, Session& s)
|
||||
Route* r;
|
||||
|
||||
if ((r = dynamic_cast<Route*> (&_io)) != 0) {
|
||||
|
||||
r->meter_change.connect (mem_fun(*this, &GainMeter::meter_changed));
|
||||
meter_point_button.add (meter_point_label);
|
||||
meter_point_button.set_name ("MixerStripMeterPreButton");
|
||||
@ -168,17 +179,14 @@ GainMeter::GainMeter (IO& io, Session& s)
|
||||
|
||||
gain_display_box.pack_end (peak_display_frame, Gtk::PACK_SHRINK);
|
||||
|
||||
meter_metric_area.set_size_request (18, -1);
|
||||
meter_metric_area.set_size_request (25, -1);
|
||||
meter_metric_area.set_name ("MeterMetricsStrip");
|
||||
|
||||
meter_packer.set_spacing (2);
|
||||
fader_box.set_spacing (2);
|
||||
|
||||
fader_box.pack_start (*gain_slider, Gtk::PACK_SHRINK);
|
||||
|
||||
hbox.set_spacing (4);
|
||||
hbox.pack_start (fader_box, Gtk::PACK_SHRINK);
|
||||
hbox.pack_start (meter_packer, Gtk::PACK_SHRINK);
|
||||
hbox.pack_start (*gain_slider, false, false, 2);
|
||||
hbox.pack_start (meter_packer, true, false);
|
||||
|
||||
set_spacing (4);
|
||||
|
||||
@ -217,24 +225,54 @@ GainMeter::set_width (Width w)
|
||||
setup_meters ();
|
||||
}
|
||||
|
||||
Glib::RefPtr<Gdk::Pixmap>
|
||||
GainMeter::render_metrics (Gtk::Widget& w)
|
||||
{
|
||||
Glib::RefPtr<Gdk::Window> win (w.get_window());
|
||||
Glib::RefPtr<Gdk::GC> fg_gc (w.get_style()->get_fg_gc (Gtk::STATE_NORMAL));
|
||||
Glib::RefPtr<Gdk::GC> bg_gc (w.get_style()->get_bg_gc (Gtk::STATE_NORMAL));
|
||||
gint x, y, width, height, depth;
|
||||
int db_points[] = { -50, -40, -20, -30, -10, -3, 0, 4 };
|
||||
char buf[32];
|
||||
int theight;
|
||||
int twidth;
|
||||
|
||||
win->get_geometry (x, y, width, height, depth);
|
||||
|
||||
Glib::RefPtr<Gdk::Pixmap> pixmap = Gdk::Pixmap::create (win, width, height);
|
||||
|
||||
metric_pixmaps[w.get_name()] = pixmap;
|
||||
|
||||
pixmap->draw_rectangle (bg_gc, true, 0, 0, width, height);
|
||||
|
||||
Glib::RefPtr<Pango::Layout> layout = w.create_pango_layout("");
|
||||
|
||||
for (uint32_t i = 0; i < sizeof (db_points)/sizeof (db_points[0]); ++i) {
|
||||
|
||||
float fraction = log_meter (db_points[i]);
|
||||
gint pos = height - (gint) floor (height * fraction);
|
||||
|
||||
snprintf (buf, sizeof (buf), "%d", abs (db_points[i]));
|
||||
|
||||
layout->set_text (buf);
|
||||
layout->get_pixel_size (twidth, theight);
|
||||
|
||||
pixmap->draw_line (fg_gc, 0, pos, 4, pos);
|
||||
pixmap->draw_layout (fg_gc, 6, pos - (theight/2), layout);
|
||||
}
|
||||
|
||||
return pixmap;
|
||||
}
|
||||
|
||||
gint
|
||||
GainMeter::meter_metrics_expose (GdkEventExpose *ev)
|
||||
{
|
||||
/* XXX optimize this so that it doesn't do it all everytime */
|
||||
|
||||
double fraction;
|
||||
Glib::RefPtr<Gdk::Window> win (meter_metric_area.get_window());
|
||||
Glib::RefPtr<Gdk::GC> fg_gc (meter_metric_area.get_style()->get_fg_gc (Gtk::STATE_NORMAL));
|
||||
Glib::RefPtr<Gdk::GC> bg_gc (meter_metric_area.get_style()->get_bg_gc (Gtk::STATE_NORMAL));
|
||||
gint x, y, width, height, depth;
|
||||
gint pos;
|
||||
int db_points[] = { -50, -10, -3, 0, 6 };
|
||||
uint32_t i;
|
||||
char buf[32];
|
||||
GdkRectangle base_rect;
|
||||
GdkRectangle draw_rect;
|
||||
int theight;
|
||||
int twidth;
|
||||
gint x, y, width, height, depth;
|
||||
|
||||
win->get_geometry (x, y, width, height, depth);
|
||||
|
||||
@ -243,30 +281,24 @@ GainMeter::meter_metrics_expose (GdkEventExpose *ev)
|
||||
base_rect.x = 0;
|
||||
base_rect.y = 0;
|
||||
|
||||
gdk_rectangle_intersect (&ev->area, &base_rect, &draw_rect);
|
||||
win->draw_rectangle (bg_gc, true, draw_rect.x, draw_rect.y, draw_rect.width, draw_rect.height);
|
||||
Glib::RefPtr<Gdk::Pixmap> pixmap;
|
||||
std::map<string,Glib::RefPtr<Gdk::Pixmap> >::iterator i = metric_pixmaps.find (meter_metric_area.get_name());
|
||||
|
||||
Glib::RefPtr<Pango::Layout> layout = meter_metric_area.create_pango_layout("");
|
||||
|
||||
for (i = 0; i < sizeof (db_points)/sizeof (db_points[0]); ++i) {
|
||||
|
||||
fraction = log_meter (db_points[i]);
|
||||
pos = height - (gint) floor (height * fraction);
|
||||
|
||||
snprintf (buf, sizeof (buf), "%d", db_points[i]);
|
||||
|
||||
layout->set_text (buf);
|
||||
layout->get_pixel_size (twidth, theight);
|
||||
|
||||
win->draw_layout (fg_gc, width - twidth, pos + theight, layout);
|
||||
if (i == metric_pixmaps.end()) {
|
||||
pixmap = render_metrics (meter_metric_area);
|
||||
} else {
|
||||
pixmap = i->second;
|
||||
}
|
||||
|
||||
gdk_rectangle_intersect (&ev->area, &base_rect, &draw_rect);
|
||||
win->draw_rectangle (bg_gc, true, draw_rect.x, draw_rect.y, draw_rect.width, draw_rect.height);
|
||||
win->draw_drawable (bg_gc, pixmap, draw_rect.x, draw_rect.y, draw_rect.x, draw_rect.y, draw_rect.width, draw_rect.height);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
GainMeter::~GainMeter ()
|
||||
{
|
||||
|
||||
if (meter_menu) {
|
||||
delete meter_menu;
|
||||
}
|
||||
@ -398,11 +430,6 @@ GainMeter::setup_meters ()
|
||||
return;
|
||||
}
|
||||
|
||||
if (_width == Wide) {
|
||||
meter_packer.pack_start (meter_metric_area, Gtk::PACK_SHRINK);
|
||||
meter_metric_area.show_all ();
|
||||
}
|
||||
|
||||
if (nmeters <= 2) {
|
||||
width = regular_meter_width;
|
||||
} else {
|
||||
@ -427,6 +454,11 @@ GainMeter::setup_meters ()
|
||||
meters[n].meter->show_all ();
|
||||
meters[n].packed = true;
|
||||
}
|
||||
|
||||
if (_width == Wide) {
|
||||
meter_packer.pack_start (meter_metric_area, Gtk::PACK_SHRINK);
|
||||
meter_metric_area.show_all ();
|
||||
}
|
||||
}
|
||||
|
||||
gint
|
||||
@ -596,6 +628,8 @@ GainMeter::meter_press(GdkEventButton* ev)
|
||||
|
||||
wait_for_release = false;
|
||||
|
||||
cerr << "meter point button press\n";
|
||||
|
||||
if ((_route = dynamic_cast<Route*>(&_io)) == 0) {
|
||||
return FALSE;
|
||||
}
|
||||
@ -647,21 +681,22 @@ GainMeter::meter_press(GdkEventButton* ev)
|
||||
}
|
||||
}
|
||||
|
||||
return stop_signal (meter_point_button, "button-press-event");
|
||||
return true;
|
||||
|
||||
}
|
||||
|
||||
gint
|
||||
GainMeter::meter_release(GdkEventButton* ev)
|
||||
{
|
||||
cerr << "meter point button release\n";
|
||||
|
||||
if(!ignore_toggle){
|
||||
if (wait_for_release){
|
||||
wait_for_release = false;
|
||||
set_meter_point (*(dynamic_cast<Route*>(&_io)), old_meter_point);
|
||||
stop_signal (meter_point_button, "button-release-event");
|
||||
}
|
||||
}
|
||||
return TRUE;
|
||||
return true;
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -22,6 +22,7 @@
|
||||
#define __ardour_gtk_gain_meter_h__
|
||||
|
||||
#include <vector>
|
||||
#include <map>
|
||||
|
||||
#include <gtkmm/box.h>
|
||||
#include <gtkmm/adjustment.h>
|
||||
@ -96,6 +97,9 @@ class GainMeter : public Gtk::VBox
|
||||
Gtk::Table top_table;
|
||||
Width _width;
|
||||
|
||||
static std::map<std::string,Glib::RefPtr<Gdk::Pixmap> > metric_pixmaps;
|
||||
static Glib::RefPtr<Gdk::Pixmap> render_metrics (Gtk::Widget&);
|
||||
|
||||
gint meter_metrics_expose (GdkEventExpose *);
|
||||
|
||||
static void _gain_printer (char buf[32], Gtk::Adjustment&, void *);
|
||||
|
@ -65,6 +65,7 @@ using namespace ARDOUR;
|
||||
using namespace Gtk;
|
||||
using namespace Gtkmm2ext;
|
||||
|
||||
#ifdef VARISPEED_IN_MIXER_STRIP
|
||||
static void
|
||||
speed_printer (char buf[32], Gtk::Adjustment& adj, void* arg)
|
||||
{
|
||||
@ -76,6 +77,7 @@ speed_printer (char buf[32], Gtk::Adjustment& adj, void* arg)
|
||||
snprintf (buf, 32, "%.3f", val);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
MixerStrip::MixerStrip (Mixer_UI& mx, Session& sess, Route& rt, bool in_mixer)
|
||||
: AxisView(sess),
|
||||
@ -85,7 +87,7 @@ MixerStrip::MixerStrip (Mixer_UI& mx, Session& sess, Route& rt, bool in_mixer)
|
||||
post_redirect_box (PostFader, sess, rt, mx.plugin_selector(), mx.selection(), in_mixer),
|
||||
gpm (_route, sess),
|
||||
panners (_route, sess),
|
||||
button_table (8, 2),
|
||||
button_table (7, 2),
|
||||
gain_automation_style_button (""),
|
||||
gain_automation_state_button (""),
|
||||
pan_automation_style_button (""),
|
||||
@ -157,6 +159,7 @@ MixerStrip::MixerStrip (Mixer_UI& mx, Session& sess, Route& rt, bool in_mixer)
|
||||
polarity_button.unset_flags (Gtk::CAN_FOCUS);
|
||||
|
||||
button_table.set_homogeneous (true);
|
||||
button_table.set_spacings (0);
|
||||
|
||||
button_table.attach (name_button, 0, 2, 0, 1);
|
||||
button_table.attach (group_button, 0, 2, 1, 2);
|
||||
@ -214,6 +217,7 @@ MixerStrip::MixerStrip (Mixer_UI& mx, Session& sess, Route& rt, bool in_mixer)
|
||||
|
||||
at->FreezeChange.connect (mem_fun(*this, &MixerStrip::map_frozen));
|
||||
|
||||
#ifdef VARISPEED_IN_MIXER_STRIP
|
||||
speed_adjustment.signal_value_changed().connect (mem_fun(*this, &MixerStrip::speed_adjustment_changed));
|
||||
|
||||
speed_frame.set_name ("BaseFrame");
|
||||
@ -225,7 +229,9 @@ MixerStrip::MixerStrip (Mixer_UI& mx, Session& sess, Route& rt, bool in_mixer)
|
||||
ARDOUR_UI::instance()->tooltips().set_tip (speed_spinner, _("varispeed"));
|
||||
|
||||
button_table.attach (speed_frame, 0, 2, 6, 7);
|
||||
button_table.attach (*rec_enable_button, 0, 2, 7, 8);
|
||||
#endif /* VARISPEED_IN_MIXER_STRIP */
|
||||
|
||||
button_table.attach (*rec_enable_button, 0, 2, 6, 7);
|
||||
}
|
||||
|
||||
name_button.add (name_label);
|
||||
@ -264,7 +270,7 @@ MixerStrip::MixerStrip (Mixer_UI& mx, Session& sess, Route& rt, bool in_mixer)
|
||||
global_vpacker.pack_start (*whvbox, Gtk::PACK_SHRINK);
|
||||
global_vpacker.pack_start (button_table,Gtk::PACK_SHRINK);
|
||||
global_vpacker.pack_start (pre_redirect_box, true, true);
|
||||
global_vpacker.pack_start (gpm, Gtk::PACK_SHRINK);
|
||||
global_vpacker.pack_start (gpm, Gtk::PACK_SHRINK, 4);
|
||||
global_vpacker.pack_start (post_redirect_box, true, true);
|
||||
global_vpacker.pack_start (panners, Gtk::PACK_SHRINK);
|
||||
global_vpacker.pack_start (output_button, Gtk::PACK_SHRINK);
|
||||
|
@ -894,7 +894,6 @@ TempoMap::bbt_duration_at_unlocked (const BBT_Time& when, const BBT_Time& bbt, i
|
||||
|
||||
|
||||
jack_nframes_t
|
||||
|
||||
TempoMap::round_to_bar (jack_nframes_t fr, int dir)
|
||||
{
|
||||
LockMonitor lm (lock, __LINE__, __FILE__);
|
||||
@ -903,7 +902,6 @@ TempoMap::round_to_bar (jack_nframes_t fr, int dir)
|
||||
|
||||
|
||||
jack_nframes_t
|
||||
|
||||
TempoMap::round_to_beat (jack_nframes_t fr, int dir)
|
||||
{
|
||||
LockMonitor lm (lock, __LINE__, __FILE__);
|
||||
|
Loading…
Reference in New Issue
Block a user