]> git.sesse.net Git - vlc/blobdiff - modules/gui/qt4/components/extended_panels.hpp
Fix most of the issues of the Equalizer.
[vlc] / modules / gui / qt4 / components / extended_panels.hpp
index 08a7c29cc6c07b623d6a16f2b4d4e00ef6375d3c..fd56a253314e23b7cdaa3c4847cd9fe66e8c2765 100644 (file)
 # include "config.h"
 #endif
 
-#include <vlc/vlc.h>
+#include <vlc_common.h>
 #include <vlc_aout.h>
+#include "../../audio_filter/equalizer_presets.h"
 
 #include "ui/equalizer.h"
 #include "ui/video_effects.h"
 #include "ui/v4l2.h"
 
+
 #include <QTabWidget>
-#define BANDS 10
+
+#define BANDS EQZ_BANDS_MAX
 #define NUM_SP_CTRL 5
 
 class QSignalMapper;
@@ -53,12 +56,14 @@ private:
     Ui::ExtVideoWidget ui;
     QSignalMapper* filterMapper;
     intf_thread_t *p_intf;
+    vout_thread_t *p_vout;
     void initComboBoxItems( QObject* );
     void setWidgetValue( QObject* );
-    void ChangeVFiltersString( char *psz_name, vlc_bool_t b_add );
+    void ChangeVFiltersString( char *psz_name, bool b_add );
 private slots:
     void updateFilters();
     void updateFilterOptions();
+    void cropChange();
 };
 
 class ExtV4l2 : public QWidget
@@ -89,6 +94,8 @@ public:
     virtual ~Equalizer();
     QComboBox *presetsComboBox;
 
+    char * createValuesFromPreset( int i_preset );
+    void updateUIFromCore();
 private:
     Ui::EqualizerWidget ui;
     QSlider *bands[BANDS];
@@ -96,7 +103,6 @@ private:
 
     void delCallbacks( aout_instance_t * );
     void addCallbacks( aout_instance_t * );
-    void setValues( char *, float );
 
     intf_thread_t *p_intf;
 private slots:
@@ -104,8 +110,9 @@ private slots:
     void enable();
     void set2Pass();
     void setPreamp();
-    void setBand();
-    void setPreset(int);
+    void setCoreBands();
+    void setCorePreset(int);
+    void updateUISliderValues( int );
 };
 
 class Spatializer: public QWidget
@@ -150,4 +157,23 @@ private slots:
     void snapshot() {};
 };
 
+class SyncControls : public QWidget
+{
+    Q_OBJECT
+public:
+    SyncControls( intf_thread_t *, QWidget * );
+    virtual ~SyncControls() {};
+private:
+    intf_thread_t *p_intf;
+    QDoubleSpinBox *AVSpin;
+    QDoubleSpinBox *subsSpin;
+    QDoubleSpinBox *subSpeedSpin;
+public slots:
+    void update();
+private slots:
+    void advanceAudio( double );
+    void advanceSubs( double );
+    void adjustSubsSpeed( double );
+};
+
 #endif