]> git.sesse.net Git - nageru/blobdiff - nageru/mainwindow.h
IWYU-fix nageru/*.h.
[nageru] / nageru / mainwindow.h
index 37b1ce02006bd06b4557cf9c3851e4d0d3a71d98..c80c3c5cdfebca2a7f99d76468fa86ba3b1acfc1 100644 (file)
@@ -1,10 +1,12 @@
 #ifndef MAINWINDOW_H
 #define MAINWINDOW_H
 
+#include <memory>
 #include <stdbool.h>
 #include <sys/types.h>
 #include <QMainWindow>
 #include <QString>
+#include <QWidget>
 #include <chrono>
 #include <string>
 #include <vector>
@@ -13,7 +15,9 @@
 #include "audio_mixer.h"
 #include "midi_mapper.h"
 #include "mixer.h"
+#include "theme.h"
 
+class QDial;
 class QEvent;
 class QObject;
 class QResizeEvent;
@@ -84,9 +88,11 @@ public slots:
        void set_treble(unsigned bus_idx, float value) override;
        void set_mid(unsigned bus_idx, float value) override;
        void set_bass(unsigned bus_idx, float value) override;
+       void set_eq_absolute(unsigned bus_idx, EQBand eq_band, float value_db);
        void set_gain(unsigned bus_idx, float value) override;
        void set_compressor_threshold(unsigned bus_idx, float value) override;
        void set_fader(unsigned bus_idx, float value) override;
+       void set_fader_absolute(unsigned bus_idx, float value_db);  // Used by the theme only.
 
        void toggle_mute(unsigned bus_idx) override;
        void toggle_locut(unsigned bus_idx) override;
@@ -140,11 +146,12 @@ private:
        void update_stereo_label(unsigned bus_index, int stereo_width_percent);
        void update_eq_label(unsigned bus_index, EQBand band, float gain_db);
        void setup_theme_menu();
+       void fill_menu_from_theme_menu(const std::vector<std::unique_ptr<Theme::MenuEntry>> &entries, QMenu *menu);
        void prev_page();
        void next_page();
 
        // Called from DiskSpaceEstimator.
-       void report_disk_space(off_t free_bytes, double estimated_seconds_left);
+       void report_disk_space(off_t free_bytes, double estimated_seconds_left, double file_length_seconds);
 
        // Called from the mixer.
        void audio_level_callback(float level_lufs, float peak_db, std::vector<AudioMixer::BusLevel> bus_levels, float global_level_lufs, float range_low_lufs, float range_high_lufs, float final_makeup_gain_db, float correlation);
@@ -158,6 +165,8 @@ private:
        template<class T>
        void set_relative_value_if_exists(unsigned bus_idx, T *Ui_AudioExpandedView::*control, float value);
 
+       void set_db_value_if_exists(unsigned bus_idx, QDial *Ui_AudioExpandedView::*control, float value_db);
+
        template<class T>
        void click_button_if_exists(unsigned bus_idx, T *Ui_AudioExpandedView::*control);