X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=mainwindow.cpp;h=f15e56ae008e5c5058e7f39807d21f05cf073670;hb=408b03dbd380f3b2ea89fc20915c38bd4e4b9750;hp=9f293342e8deda072defe176ea8baf308083190b;hpb=6b5c8411a2776e77d1bb7d66ee7ec255428f2a13;p=nageru diff --git a/mainwindow.cpp b/mainwindow.cpp index 9f29334..f15e56a 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -51,7 +51,7 @@ MainWindow::MainWindow() transition_btn1 = ui->transition_btn1; transition_btn2 = ui->transition_btn2; transition_btn3 = ui->transition_btn3; - qRegisterMetaType>("std::vector"); + qRegisterMetaType>("std::vector"); connect(ui->me_preview, &GLWidget::transition_names_updated, this, &MainWindow::set_transition_names); qRegisterMetaType("Mixer::Output"); } @@ -117,6 +117,15 @@ void MainWindow::mixer_created(Mixer *mixer) mixer->set_audio_level_callback(bind(&MainWindow::audio_level_callback, this, _1, _2, _3, _4, _5, _6)); } +void MainWindow::mixer_shutting_down() +{ + ui->me_live->clean_context(); + ui->me_preview->clean_context(); + for (Ui::Display *display : previews) { + display->display->clean_context(); + } +} + void MainWindow::cutoff_knob_changed(int value) { float octaves = value * 0.1f; @@ -211,12 +220,12 @@ void MainWindow::relayout() // The previews will be constrained by the remaining height, and the width. double preview_label_height = previews[0]->title_bar->geometry().height() + ui->preview_displays->spacing(); // Wrong spacing? int preview_total_width = ui->preview_displays->geometry().width(); - double preview_height = std::min(remaining_height - preview_label_height, (preview_total_width / double(previews.size())) * 9.0 / 16.0); + double preview_height = min(remaining_height - preview_label_height, (preview_total_width / double(previews.size())) * 9.0 / 16.0); remaining_height -= preview_height + preview_label_height + ui->vertical_layout->spacing(); ui->vertical_layout->setStretch(0, lrintf(me_height)); ui->vertical_layout->setStretch(1, 0); // Don't stretch the audiostrip. - ui->vertical_layout->setStretch(2, std::max(1, remaining_height)); // Spacer. + ui->vertical_layout->setStretch(2, max(1, remaining_height)); // Spacer. ui->vertical_layout->setStretch(3, lrintf(preview_height + preview_label_height)); // Set the widths for the previews.