]> git.sesse.net Git - vlc/blobdiff - modules/gui/qt4/components/extended_panels.hpp
Fix part of the extended panel generation using us_strtod()
[vlc] / modules / gui / qt4 / components / extended_panels.hpp
index a7e097849f8208b044a66d093fadc7189b82b121..f81eb515ec9bf8aff4cea859d498efa3cceb7ec2 100644 (file)
@@ -2,9 +2,10 @@
  * extended_panels.hpp : Exentended Panels
  ****************************************************************************
  * Copyright (C) 2006 the VideoLAN team
- * $Id: preferences.hpp 16643 2006-09-13 12:45:46Z zorglub $
+ * $Id$
  *
  * Authors: ClĂ©ment Stenac <zorglub@videolan.org>
+ *          Antoine Cellerier <dionoea at videolan dot org>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
 #ifndef _EQUALIZER_H_
 #define _EQUALIZER_H_
 
-#include <vlc/vlc.h>
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#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/spatializer.h"
+#include "ui/v4l2.h"
+
 
-#define BANDS 10
+#include <QTabWidget>
+
+#define BANDS EQZ_BANDS_MAX
 #define NUM_SP_CTRL 5
 
 class QSignalMapper;
 
-class ExtVideo: public QWidget
+class ExtVideo: public QObject
 {
     Q_OBJECT
 public:
-    ExtVideo( intf_thread_t *, QWidget * );
+    ExtVideo( intf_thread_t *, QTabWidget * );
     virtual ~ExtVideo();
     /*void gotoConf( QObject* );*/
 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
+{
+    Q_OBJECT
+public:
+    ExtV4l2( intf_thread_t *, QWidget * );
+    virtual ~ExtV4l2();
+
+    virtual void showEvent( QShowEvent *event );
+
+private:
+    intf_thread_t *p_intf;
+    Ui::ExtV4l2Widget ui;
+    QGroupBox *box;
+
+private slots:
+    void Refresh( void );
+    void ValueChange( int value );
+    void ValueChange( bool value );
 };
 
 class Equalizer: public QWidget
@@ -70,7 +101,8 @@ private:
 
     void delCallbacks( aout_instance_t * );
     void addCallbacks( aout_instance_t * );
-    void setValues( char *, float );
+    void updateUIValues( char *, float );
+    char * createValuesFromPreset( int i_preset );
 
     intf_thread_t *p_intf;
 private slots:
@@ -78,7 +110,7 @@ private slots:
     void enable();
     void set2Pass();
     void setPreamp();
-    void setBand();
+    void changeCoreBands();
     void setPreset(int);
 };
 
@@ -90,13 +122,14 @@ public:
     virtual ~Spatializer();
 
 private:
-    Ui::SpatializerWidget ui;
     QSlider *spatCtrl[NUM_SP_CTRL];
     QLabel *ctrl_texts[NUM_SP_CTRL];
     QLabel *ctrl_readout[NUM_SP_CTRL];
     float controlVars[5];
     float oldControlVars[5];
 
+    QCheckBox *enableCheck;
+
     void delCallbacks( aout_instance_t * );
     void addCallbacks( aout_instance_t * );
     intf_thread_t *p_intf;
@@ -123,4 +156,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