From c609a22c5980cd504f655f28ba01d451dc0a081f Mon Sep 17 00:00:00 2001 From: "Steinar H. Gunderson" Date: Mon, 22 Aug 2016 18:28:32 +0200 Subject: [PATCH] Create buses in the expanded view. (Still inert.) --- .gitignore | 1 + Makefile | 4 ++-- mainwindow.cpp | 30 ++++++++++++++++++++++++++++++ mainwindow.h | 3 +++ 4 files changed, 36 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 070c8fc..e53266c 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ *.o *.moc.cpp ui_aboutdialog.h +ui_audio_expanded_view.h ui_audio_miniview.h ui_display.h ui_input_mapping.h diff --git a/Makefile b/Makefile index 5cf71d7..1299697 100644 --- a/Makefile +++ b/Makefile @@ -46,7 +46,7 @@ all: nageru nageru: $(OBJS) $(CXX) -o $@ $^ $(LDFLAGS) $(LDLIBS) -mainwindow.o: mainwindow.cpp ui_mainwindow.h ui_display.h ui_audio_miniview.h +mainwindow.o: mainwindow.cpp ui_mainwindow.h ui_display.h ui_audio_miniview.h ui_audio_expanded_view.h aboutdialog.o: aboutdialog.cpp ui_aboutdialog.h @@ -56,7 +56,7 @@ DEPS=$(OBJS:.o=.d) -include $(DEPS) clean: - $(RM) $(OBJS) $(DEPS) nageru ui_aboutdialog.h ui_mainwindow.h ui_display.h ui_about.h ui_audio_miniview.h aboutdialog.moc.cpp correlation_meter.moc.cpp lrameter.moc.cpp vumeter.moc.cpp glwidget.moc.cpp mainwindow.moc.cpp window.moc.cpp chain-*.frag *.dot + $(RM) $(OBJS) $(DEPS) nageru ui_aboutdialog.h ui_mainwindow.h ui_display.h ui_about.h ui_audio_miniview.h ui_audio_expanded_view.h aboutdialog.moc.cpp correlation_meter.moc.cpp lrameter.moc.cpp vumeter.moc.cpp glwidget.moc.cpp mainwindow.moc.cpp window.moc.cpp chain-*.frag *.dot PREFIX=/usr/local install: diff --git a/mainwindow.cpp b/mainwindow.cpp index 70e4261..68f3aaf 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -27,6 +27,7 @@ #include "mixer.h" #include "post_to_main_thread.h" #include "ui_audio_miniview.h" +#include "ui_audio_expanded_view.h" #include "ui_display.h" #include "ui_mainwindow.h" #include "vumeter.h" @@ -208,6 +209,7 @@ void MainWindow::mixer_created(Mixer *mixer) } setup_audio_miniview(); + setup_audio_expanded_view(); slave_knob(ui->locut_cutoff_knob, ui->locut_cutoff_knob_2); slave_knob(ui->limiter_threshold_knob, ui->limiter_threshold_knob_2); @@ -298,6 +300,33 @@ void MainWindow::setup_audio_miniview() } } +void MainWindow::setup_audio_expanded_view() +{ + // Remove any existing channels. + for (QLayoutItem *item; (item = ui->buses->takeAt(0)) != nullptr; ) { + delete item->widget(); + delete item; + } + audio_expanded_views.clear(); + + // Set up brand new ones from the input mapping. + InputMapping mapping = global_mixer->get_audio_mixer()->get_input_mapping(); + audio_expanded_views.resize(mapping.buses.size()); + for (unsigned bus_index = 0; bus_index < mapping.buses.size(); ++bus_index) { + QWidget *channel = new QWidget(this); + Ui::AudioExpandedView *ui_audio_expanded_view = new Ui::AudioExpandedView; + ui_audio_expanded_view->setupUi(channel); + ui_audio_expanded_view->bus_desc_label->setFullText( + QString::fromStdString(mapping.buses[bus_index].name)); + audio_expanded_views[bus_index] = ui_audio_expanded_view; + // TODO: Set the fader position. + ui->buses->addWidget(channel); + + //connect(ui_audio_expanded_view->fader, &NonLinearFader::dbValueChanged, + // bind(&MainWindow::mini_fader_changed, this, ui_audio_expanded_view, bus_index, _1)); + } +} + void MainWindow::mixer_shutting_down() { ui->me_live->clean_context(); @@ -336,6 +365,7 @@ void MainWindow::input_mapping_triggered() { if (InputMappingDialog().exec() == QDialog::Accepted) { setup_audio_miniview(); + setup_audio_expanded_view(); } } diff --git a/mainwindow.h b/mainwindow.h index cfde53e..ff05b19 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -13,6 +13,7 @@ class GLWidget; class QResizeEvent; namespace Ui { +class AudioExpandedView; class AudioMiniView; class Display; class MainWindow; @@ -57,6 +58,7 @@ public slots: private: void setup_audio_miniview(); + void setup_audio_expanded_view(); bool eventFilter(QObject *watched, QEvent *event) override; void set_white_balance(int channel_number, int x, int y); @@ -72,6 +74,7 @@ private: QPushButton *transition_btn1, *transition_btn2, *transition_btn3; std::vector previews; std::vector audio_miniviews; + std::vector audio_expanded_views; int current_wb_pick_display = -1; }; -- 2.39.2