X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fgui%2Fqt4%2Fcomponents%2Fextended_panels.hpp;h=f81eb515ec9bf8aff4cea859d498efa3cceb7ec2;hb=80717989682c8384a5755171e1e539e77a766ef6;hp=4943ec71032465ed5dae4909ea263a2f5930ba59;hpb=712f983f22d2880e2fe8f1af101d8b314b87c26b;p=vlc diff --git a/modules/gui/qt4/components/extended_panels.hpp b/modules/gui/qt4/components/extended_panels.hpp index 4943ec7103..f81eb515ec 100644 --- a/modules/gui/qt4/components/extended_panels.hpp +++ b/modules/gui/qt4/components/extended_panels.hpp @@ -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 + * Antoine Cellerier * * 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 @@ -24,31 +25,65 @@ #ifndef _EQUALIZER_H_ #define _EQUALIZER_H_ -#include +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include #include +#include "../../audio_filter/equalizer_presets.h" + #include "ui/equalizer.h" #include "ui/video_effects.h" +#include "ui/v4l2.h" + + +#include -#define BANDS 10 +#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 @@ -57,6 +92,7 @@ class Equalizer: public QWidget public: Equalizer( intf_thread_t *, QWidget * ); virtual ~Equalizer(); + QComboBox *presetsComboBox; private: Ui::EqualizerWidget ui; @@ -65,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: @@ -73,10 +110,36 @@ private slots: void enable(); void set2Pass(); void setPreamp(); - void setBand(); + void changeCoreBands(); void setPreset(int); }; +class Spatializer: public QWidget +{ + Q_OBJECT +public: + Spatializer( intf_thread_t *, QWidget * ); + virtual ~Spatializer(); + +private: + 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; +private slots: + void enable(bool); + void enable(); + void setValues(float *); + void setInitValues(); +}; + class ExtendedControls: public QWidget { Q_OBJECT @@ -93,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