From: Jean-Baptiste Kempf Date: Sun, 21 Oct 2007 01:31:38 +0000 (+0000) Subject: Qt4 - Simple prefs, re-do [22621], but removes all the connects for all the configcon... X-Git-Tag: 0.9.0-test0~4901 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=3500cf1011e97ae7c60b63b4147cbcb69bde5d47;p=vlc Qt4 - Simple prefs, re-do [22621], but removes all the connects for all the configcontrol, remove some functions, clean it, remove some dynamic_cast, but basically do the same. --- diff --git a/modules/gui/qt4/components/preferences_widgets.cpp b/modules/gui/qt4/components/preferences_widgets.cpp index 81a48fe789..46682f44c0 100644 --- a/modules/gui/qt4/components/preferences_widgets.cpp +++ b/modules/gui/qt4/components/preferences_widgets.cpp @@ -231,8 +231,6 @@ void StringConfigControl::finish() text->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); if( label ) label->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); - connect( text, SIGNAL(textChanged( const QString & )), this, - SIGNAL(Updated()) ); } /*********** File **************/ @@ -298,8 +296,6 @@ void FileConfigControl::finish() text->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); if( label ) label->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); - connect( text, SIGNAL(textChanged( const QString & )), this, - SIGNAL(Updated()) ); } /********* String / Directory **********/ @@ -395,8 +391,6 @@ void StringListConfigControl::finish( bool bycat ) combo->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); if( label ) label->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); - connect( combo, SIGNAL(currentIndexChanged( int )), this, - SIGNAL(Updated()) ); } QString StringListConfigControl::getValue() @@ -425,6 +419,7 @@ ModuleConfigControl::ModuleConfigControl( vlc_object_t *_p_this, l->addWidget( combo, line, 1, Qt::AlignRight ); } } + ModuleConfigControl::ModuleConfigControl( vlc_object_t *_p_this, module_config_t *_p_item, QLabel *_label, QComboBox *_combo, bool bycat ) : VStringConfigControl( _p_this, _p_item ) @@ -478,8 +473,6 @@ void ModuleConfigControl::finish( bool bycat ) combo->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); if( label ) label->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); - connect( combo, SIGNAL(currentIndexChanged( int )), this, - SIGNAL(Updated()) ); } QString ModuleConfigControl::getValue() @@ -495,8 +488,6 @@ ModuleListConfigControl::ModuleListConfigControl( vlc_object_t *_p_this, { groupBox = new QGroupBox ( qtr(p_item->psz_text) ); text = new QLineEdit(); - connect( text, SIGNAL(textChanged( const QString & )), this, - SIGNAL(Updated()) ); QGridLayout *layoutGroupBox = new QGridLayout( groupBox ); finish( bycat ); @@ -522,16 +513,6 @@ ModuleListConfigControl::ModuleListConfigControl( vlc_object_t *_p_this, text->setToolTip( formatTooltip( qtr( p_item->psz_longtext) ) ); } -#if 0 -ModuleConfigControl::ModuleConfigControl( vlc_object_t *_p_this, - module_config_t *_p_item, QLabel *_label, QComboBox *_combo, - bool bycat ) : VStringConfigControl( _p_this, _p_item ) -{ - combo = _combo; - label = _label; - finish( bycat ); -} -#endif ModuleListConfigControl::~ModuleListConfigControl() { @@ -698,8 +679,6 @@ void IntegerConfigControl::finish() spin->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); if( label ) label->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); - connect( spin, SIGNAL(valueChanged( int )), this, - SIGNAL(Updated()) ); } int IntegerConfigControl::getValue() @@ -797,8 +776,6 @@ void IntegerListConfigControl::finish( bool bycat ) combo->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); if( label ) label->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); - connect( combo, SIGNAL(currentIndexChanged( int )), this, - SIGNAL(Updated()) ); } int IntegerListConfigControl::getValue() @@ -843,8 +820,6 @@ void BoolConfigControl::finish() checkbox->setCheckState( p_item->value.i == VLC_TRUE ? Qt::Checked : Qt::Unchecked ); checkbox->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); - connect( checkbox, SIGNAL(stateChanged( int )), this, - SIGNAL(Updated()) ); } int BoolConfigControl::getValue() @@ -902,8 +877,6 @@ void FloatConfigControl::finish() spin->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); if( label ) label->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); - connect( spin, SIGNAL(valueChanged( double )), this, - SIGNAL(Updated()) ); } float FloatConfigControl::getValue() diff --git a/modules/gui/qt4/components/simple_preferences.cpp b/modules/gui/qt4/components/simple_preferences.cpp index 808a358209..61814a3c41 100644 --- a/modules/gui/qt4/components/simple_preferences.cpp +++ b/modules/gui/qt4/components/simple_preferences.cpp @@ -26,8 +26,8 @@ #include "components/simple_preferences.hpp" #include "components/preferences_widgets.hpp" -#include "ui/sprefs_audio.h" #include "ui/sprefs_input.h" +#include "ui/sprefs_audio.h" #include "ui/sprefs_video.h" #include "ui/sprefs_subtitles.h" #include "ui/sprefs_hotkeys.h" @@ -196,53 +196,55 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, /* Audio Panel Implementation */ START_SPREFS_CAT( Audio, qtr("General audio settings") ); - CONFIG_GENERIC( "audio", Bool, NULL, enableAudio ); + CONFIG_GENERIC( "audio", Bool, NULL, enableAudio ); + + CONFIG_GENERIC_NO_BOOL( "volume" , IntegerRangeSlider, NULL, + defaultVolume ); + CONFIG_GENERIC( "audio-language" , String , NULL, + preferredAudioLanguage ); - CONFIG_GENERIC_NO_BOOL( "volume" , IntegerRangeSlider, NULL, - defaultVolume ); - CONFIG_GENERIC( "audio-language" , String , NULL, - preferredAudioLanguage ); + CONFIG_GENERIC( "spdif", Bool, NULL, spdifBox ); + CONFIG_GENERIC( "force-dolby-surround" , IntegerList , NULL, + detectionDolby ); - CONFIG_GENERIC( "spdif" , Bool , NULL, spdifBox ); - CONFIG_GENERIC( "force-dolby-surround" , IntegerList , NULL, - detectionDolby ); + CONFIG_GENERIC( "aout", Module, NULL, outputModule ); - CONFIG_GENERIC( "aout" , Module , NULL, outputModule ); - CONNECT( control, Updated(), this, AudioDeviceChanged() ); - QString aout_value = (dynamic_cast(control))->getValue(); + CONNECT( ui.outputModule, currentIndexChanged( int ), this, + updateAudioOptions( int ) ); + audioOutput = ui.outputModule; + + //FIXME: use modules_Exists #ifndef WIN32 - CONFIG_GENERIC( "alsadev" , StringList , ui.alsaLabel, alsaDevice ); - alsa_options = control; - CONFIG_GENERIC_FILE( "dspdev" , File , ui.OSSLabel, OSSDevice, - OSSBrowse ); - oss_options = control; + CONFIG_GENERIC( "alsadev" , StringList , ui.alsaLabel, alsaDevice ); + CONFIG_GENERIC_FILE( "dspdev" , File , ui.OSSLabel, OSSDevice, + OSSBrowse ); #else - CONFIG_GENERIC( "directx-audio-device" , IntegerList, ui.DirectXLabel, - DirectXDevice ); - directx_options = control; + CONFIG_GENERIC( "directx-audio-device", IntegerList, ui.DirectXLabel, + DirectXDevice ); #endif - CONFIG_GENERIC_FILE( "audiofile-file" , File , ui.FileLabel, FileName, - fileBrowseButton ); - file_options = control; - + // File exists everywhere + CONFIG_GENERIC_FILE( "audiofile-file" , File , ui.fileLabel, fileName, + fileBrowseButton ); + alsa_options = ui.alsaControl; + oss_options = ui.OSSControl; + directx_options = ui.DirectXControl; + file_options = ui.fileControl; + + /* and hide if necessary */ #ifdef WIN32 - ui.OSSBrowse->hide(); - ui.OSSDevice->hide(); - ui.OSSLabel->hide(); - ui.alsaDevice->hide(); - ui.alsaLabel->hide(); + oss_options->hide(); + alsa_options->hide(); #else - ui.DirectXLabel->setVisible( false ); - ui.DirectXDevice->setVisible( false ); + directx_options->hide(); #endif - updateAudioOptions( aout_value ); + updateAudioOptions( audioOutput->currentIndex() ); - CONFIG_GENERIC( "headphone-dolby" , Bool , NULL, headphoneEffect ); + CONFIG_GENERIC( "headphone-dolby" , Bool , NULL, headphoneEffect ); // CONFIG_GENERIC( "" , Bool, NULL, ); activation of normalizer //FIXME - CONFIG_GENERIC_NO_BOOL( "norm-max-level" , Float , NULL, + CONFIG_GENERIC_NO_BOOL( "norm-max-level" , Float , NULL, volNormalizer ); - CONFIG_GENERIC( "audio-visual" , Module , NULL, visualisation); + CONFIG_GENERIC( "audio-visual" , Module , NULL, visualisation); #if 0 if( control_Exists( VLC_OBJECT( p_intf ), "audioscrobbler" ) ) @@ -255,6 +257,10 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, lastfm_user_edit ); CONFIG_GENERIC( "lastfm-password", String, ui.lastfm_pass_label, lastfm_pass_edit ); + ui.lastfm_user_edit->hide(); + ui.lastfm_user_label->hide(); + ui.lastfm_pass_edit->hide(); + ui.lastfm_pass_label->hide(); END_SPREFS_CAT; /* Input and Codecs Panel Implementation */ @@ -344,25 +350,21 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, this->setLayout(panel_layout); } -void SPrefsPanel::AudioDeviceChanged() +void SPrefsPanel::updateAudioOptions( int number) { - ModuleConfigControl *module_config = - dynamic_cast( sender() ); - updateAudioOptions( module_config->getValue() ); -} + QString value = audioOutput->itemData( number ).toString(); + msg_Dbg( p_intf, "I was here, waiting for funman, %s", qtu( value ) ); -void SPrefsPanel::updateAudioOptions( QString value ) -{ #ifndef WIN32 - alsa_options->hide(); oss_options->hide(); + alsa_options->hide(); #else directx_options->hide(); #endif file_options->hide(); - if( value == "aout_file" ) - file_options->show(); + if( value == "aout_file" ) + file_options->show(); #ifndef WIN32 else if( value == "alsa" ) alsa_options->show(); diff --git a/modules/gui/qt4/components/simple_preferences.hpp b/modules/gui/qt4/components/simple_preferences.hpp index bc739e25d9..08a8b1f626 100644 --- a/modules/gui/qt4/components/simple_preferences.hpp +++ b/modules/gui/qt4/components/simple_preferences.hpp @@ -26,7 +26,6 @@ #include #include - #include enum { @@ -41,7 +40,7 @@ enum { #define SPrefsDefaultCat SPrefsInterface class ConfigControl; - +class QComboBox; class SPrefsCatList : public QWidget { Q_OBJECT; @@ -68,21 +67,16 @@ private: intf_thread_t *p_intf; QList controls; -/* ConfigControl for audio output options */ -#ifndef WIN32 - ConfigControl *alsa_options; - ConfigControl *oss_options; -#else - ConfigControl *directx_options; -#endif - ConfigControl *file_options; - - void updateAudioOptions( QString ); + QWidget *alsa_options; + QWidget *oss_options; + QWidget *directx_options; + QWidget *file_options; + QComboBox *audioOutput; /* Display only the options for the selected audio output */ private slots: - void AudioDeviceChanged(); void lastfm_Changed( int ); + void updateAudioOptions( int ); }; #endif diff --git a/modules/gui/qt4/ui/sprefs_audio.ui b/modules/gui/qt4/ui/sprefs_audio.ui index a6fd4bb1c9..ccbf1ea9aa 100644 --- a/modules/gui/qt4/ui/sprefs_audio.ui +++ b/modules/gui/qt4/ui/sprefs_audio.ui @@ -6,20 +6,14 @@ 0 0 - 461 - 682 + 550 + 725 Form - - 9 - - - 10 - @@ -36,10 +30,22 @@ _("General Audio") - + 9 - + + 9 + + + 9 + + + 9 + + + 6 + + 6 @@ -52,9 +58,7 @@ - - 3 - 0 + 0 0 @@ -87,9 +91,7 @@ - - 1 - 0 + 0 0 @@ -124,74 +126,167 @@ Output - - 9 - - - 6 - - - - - - - - _("Browse...") - - - - - + + - _("File") + _("Type") - - - - _("Browse...") + + + + + 0 + 0 + - - - - - - - _("Device") - + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + _("Device") + + + + + + + + 0 + 0 + + + + + - - - - _("Device") - + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + + 0 + 0 + + + + _("Device") + + + + + + + + 0 + 0 + + + + + - - - - - - - _("Device") - + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + _("Device") + + + + + + + + + + _("Browse...") + + + + - - - - - - - - - - _("Type") - + + + + + 0 + + + 0 + + + 0 + + + 0 + + + + + _("File") + + + + + + + + + + _("Browse...") + + + + @@ -203,10 +298,22 @@ _("Effects") - + + 9 + + + 9 + + 9 - + + 9 + + + 6 + + 6 @@ -296,7 +403,6 @@ DirectXDevice OSSDevice OSSBrowse - FileName fileBrowseButton headphoneEffect volumeNormalizer @@ -304,5 +410,70 @@ visualisation - + + + lastfm + toggled(bool) + lastfm_pass_edit + setVisible(bool) + + + 188 + 619 + + + 360 + 689 + + + + + lastfm + toggled(bool) + lastfm_pass_label + setVisible(bool) + + + 188 + 619 + + + 102 + 689 + + + + + lastfm + toggled(bool) + lastfm_user_edit + setVisible(bool) + + + 188 + 619 + + + 360 + 653 + + + + + lastfm + toggled(bool) + lastfm_user_label + setVisible(bool) + + + 188 + 619 + + + 102 + 653 + + + +