diff options
author | Sampo Savolainen <v2@iki.fi> | 2006-01-09 21:36:04 +0000 |
---|---|---|
committer | Sampo Savolainen <v2@iki.fi> | 2006-01-09 21:36:04 +0000 |
commit | 86f540cb051e8314f3456630d216743800c5b84e (patch) | |
tree | 27a65fceecbea02518ddc296bc42aa36b841cc74 /gtk2_ardour/plugin_ui.cc | |
parent | cf702541274471a5ee7b7c94f58fa4428160e538 (diff) |
Plugin output meters are now vertical. It still needs a rotateable text
label to finish it off.
git-svn-id: svn://localhost/trunk/ardour2@252 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/plugin_ui.cc')
-rw-r--r-- | gtk2_ardour/plugin_ui.cc | 29 |
1 files changed, 24 insertions, 5 deletions
diff --git a/gtk2_ardour/plugin_ui.cc b/gtk2_ardour/plugin_ui.cc index 958654dab5..d64d723795 100644 --- a/gtk2_ardour/plugin_ui.cc +++ b/gtk2_ardour/plugin_ui.cc @@ -290,6 +290,19 @@ PluginUI::build (AudioEngine &engine) } else if (cui->display) { + output_table.attach (*cui, output_col, output_col + 1, output_row, output_row+1, + FILL|EXPAND, FILL); + + // TODO: The meters should be divided into multiple rows + + if (++output_col == output_cols) { + output_cols ++; + output_table.resize (output_rows, output_cols); + } + + /* old code, which divides meters into + * columns first, rows later. New code divides into one row + if (output_row == output_rows) { output_row = 0; if (++output_col == output_cols) { @@ -302,6 +315,7 @@ PluginUI::build (AudioEngine &engine) FILL|EXPAND, FILL); output_row++; + */ } /* HACK: ideally the preferred height would be queried from @@ -588,6 +602,7 @@ control_ui->adjustment->signal_value_changed().connect (bind (mem_fun(*this, &Pl control_ui->display = manage (new EventBox); control_ui->display->set_name ("ParameterValueDisplay"); + // TODO: This label should be rotated 90 degrees CCW control_ui->display_label = manage (new Label); control_ui->display_label->set_name ("ParameterValueDisplay"); @@ -602,7 +617,7 @@ control_ui->adjustment->signal_value_changed().connect (bind (mem_fun(*this, &Pl MeterInfo * info = new MeterInfo(port_index); control_ui->meterinfo = info; - info->meter = new FastMeter (100, 5, FastMeter::Horizontal); + info->meter = new FastMeter (5, 100, FastMeter::Vertical); info->min_unbound = desc.min_unbound; info->max_unbound = desc.max_unbound; @@ -611,12 +626,16 @@ control_ui->adjustment->signal_value_changed().connect (bind (mem_fun(*this, &Pl info->max = desc.upper; control_ui->vbox = manage (new VBox); + control_ui->hbox = manage (new HBox); + + control_ui->hbox->pack_start (control_ui->label, false, false); + control_ui->hbox->pack_start (*info->meter, false, false); - control_ui->vbox->pack_start (control_ui->label, false, false); - control_ui->vbox->pack_start (*info->meter, false, false); + control_ui->vbox->pack_start (*control_ui->hbox, false, false); - control_ui->pack_start (*control_ui->vbox, false, false); - control_ui->pack_start (*control_ui->display, false, false); + control_ui->vbox->pack_start (*control_ui->display, false, false); + + control_ui->pack_start (*control_ui->vbox); control_ui->meterinfo->meter->show_all(); control_ui->meterinfo->packed = true; |