]> git.sesse.net Git - nageru/commitdiff
Create buses in the expanded view. (Still inert.)
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Mon, 22 Aug 2016 16:28:32 +0000 (18:28 +0200)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Wed, 19 Oct 2016 22:55:44 +0000 (00:55 +0200)
.gitignore
Makefile
mainwindow.cpp
mainwindow.h

index 070c8fc9610f3619dd611a5b5d9e1e8f6be206d5..e53266c43078975d90555c7e9d552bc1a18d1f11 100644 (file)
@@ -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
index 5cf71d709cda1e7a5a9e84ae4adaa2f18b140446..1299697e83782de4bdd2cb0175c5f33d8356f977 100644 (file)
--- 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:
index 70e4261ce8abdadf97b0a2b821070841c569a156..68f3aaf268df57f27a62263cba473186fcaa1a9a 100644 (file)
@@ -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();
        }
 }
 
index cfde53e1e086cf806dbcff7c36e54a6198c588a9..ff05b1994039afe1426a163192a3e9712da4c8de 100644 (file)
@@ -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<Ui::Display *> previews;
        std::vector<Ui::AudioMiniView *> audio_miniviews;
+       std::vector<Ui::AudioExpandedView *> audio_expanded_views;
        int current_wb_pick_display = -1;
 };