X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fgui%2Fqt4%2Fcomponents%2Fpreferences_widgets.cpp;h=67f1cf8b7b5369c28d146e1f8b05f668cd6e359b;hb=36f0edc98752f8afa17a50cb8de086b30ba54c2e;hp=2346bfd5aaed07a85785940ad3d4039337af517d;hpb=7326fad1f18a82b58db09d0a0ddc7c086c60c62e;p=vlc diff --git a/modules/gui/qt4/components/preferences_widgets.cpp b/modules/gui/qt4/components/preferences_widgets.cpp index 2346bfd5aa..67f1cf8b7b 100644 --- a/modules/gui/qt4/components/preferences_widgets.cpp +++ b/modules/gui/qt4/components/preferences_widgets.cpp @@ -184,7 +184,7 @@ void ConfigControl::doApply( intf_thread_t *p_intf ) VStringConfigControl *vscc = qobject_cast(this); assert( vscc ); - config_PutPsz( p_intf, vscc->getName(), qta( vscc->getValue() ) ); + config_PutPsz( p_intf, vscc->getName(), qtu( vscc->getValue() ) ); break; } case CONFIG_ITEM_KEY: @@ -299,7 +299,7 @@ FileConfigControl::FileConfigControl( vlc_object_t *_p_this, void FileConfigControl::updateField() { QString file = QFileDialog::getOpenFileName( NULL, - qtr( "Select File" ), qfu( p_this->p_libvlc->psz_homedir ) ); + qtr( "Select File" ), qfu( config_GetHomeDir() ) ); if( file.isNull() ) return; text->setText( file ); } @@ -330,7 +330,7 @@ void DirectoryConfigControl::updateField() QString dir = QFileDialog::getExistingDirectory( NULL, qtr( "Select Directory" ), text->text().isEmpty() ? - qfu( p_this->p_libvlc->psz_homedir ) : text->text(), + qfu( config_GetHomeDir() ) : text->text(), QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks ); if( dir.isNull() ) return; @@ -374,17 +374,17 @@ StringListConfigControl::StringListConfigControl( vlc_object_t *_p_this, combo->setSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::Preferred ); module_config_t *p_module_config = config_FindConfig( p_this, p_item->psz_name ); - if(p_module_config && p_module_config->pf_update_list) + if(p_module_config && p_module_config->pf_update_list) { vlc_value_t val; val.psz_string = strdup(p_module_config->value.psz); - + p_module_config->pf_update_list(p_this, p_item->psz_name, val, val, NULL); - // assume in a×y case that dirty was set to VLC_TRUE + // assume in any case that dirty was set to true // because lazy programmes will use the same callback for // this, like the one behind the refresh push button? - p_module_config->b_dirty = VLC_FALSE; + p_module_config->b_dirty = false; free( val.psz_string ); } @@ -439,7 +439,7 @@ void StringListConfigControl::actionRequested( int i_action ) { combo->clear(); finish( p_module_config, true ); - p_module_config->b_dirty = VLC_FALSE; + p_module_config->b_dirty = false; } } StringListConfigControl::StringListConfigControl( vlc_object_t *_p_this, @@ -462,10 +462,11 @@ void StringListConfigControl::finish(module_config_t *p_module_config, bool byca for( int i_index = 0; i_index < p_module_config->i_list; i_index++ ) { - combo->addItem( qfu(p_module_config->ppsz_list_text ? + combo->addItem( qfu((p_module_config->ppsz_list_text && + p_module_config->ppsz_list_text[i_index])? p_module_config->ppsz_list_text[i_index] : p_module_config->ppsz_list[i_index] ), - QVariant( p_module_config->ppsz_list[i_index] ) ); + QVariant( qfu(p_module_config->ppsz_list[i_index] )) ); if( p_item->value.psz && !strcmp( p_module_config->value.psz, p_module_config->ppsz_list[i_index] ) ) combo->setCurrentIndex( combo->count() - 1 ); @@ -487,15 +488,15 @@ void setfillVLCConfigCombo( const char *configname, intf_thread_t *p_intf, config_FindConfig( VLC_OBJECT(p_intf), configname ); if( p_config ) { - if(p_config->pf_update_list) + if(p_config->pf_update_list) { vlc_value_t val; val.i_int = p_config->value.i; p_config->pf_update_list(VLC_OBJECT(p_intf), configname, val, val, NULL); - // assume in any case that dirty was set to VLC_TRUE + // assume in any case that dirty was set to true // because lazy programmes will use the same callback for // this, like the one behind the refresh push button? - p_config->b_dirty = VLC_FALSE; + p_config->b_dirty = false; } for ( int i_index = 0; i_index < p_config->i_list; i_index++ ) @@ -605,8 +606,11 @@ ModuleListConfigControl::ModuleListConfigControl( vlc_object_t *_p_this, QGridLayout *l, int &line) : VStringConfigControl( _p_this, _p_item, _parent ) { + groupBox = NULL; + if( !p_item->psz_text ) return; + groupBox = new QGroupBox ( qtr(p_item->psz_text) ); - text = new QLineEdit(); + text = new QLineEdit; QGridLayout *layoutGroupBox = new QGridLayout( groupBox ); finish( bycat ); @@ -640,8 +644,7 @@ ModuleListConfigControl::~ModuleListConfigControl() { delete *it; } - delete groupBox; - delete text; + if( groupBox ) delete groupBox; } #define CHECKBOX_LISTS \ @@ -863,17 +866,17 @@ IntegerListConfigControl::IntegerListConfigControl( vlc_object_t *_p_this, combo->setMinimumWidth( MINWIDTH_BOX ); module_config_t *p_module_config = config_FindConfig( p_this, p_item->psz_name ); - if(p_module_config && p_module_config->pf_update_list) + if(p_module_config && p_module_config->pf_update_list) { vlc_value_t val; val.i_int = p_module_config->value.i; - + p_module_config->pf_update_list(p_this, p_item->psz_name, val, val, NULL); - // assume in any case that dirty was set to VLC_TRUE + // assume in any case that dirty was set to true // because lazy programmes will use the same callback for // this, like the one behind the refresh push button? - p_module_config->b_dirty = VLC_FALSE; + p_module_config->b_dirty = false; } @@ -957,7 +960,7 @@ void IntegerListConfigControl::actionRequested( int i_action ) { combo->clear(); finish( p_module_config, true ); - p_module_config->b_dirty = VLC_FALSE; + p_module_config->b_dirty = false; } } @@ -1000,14 +1003,14 @@ BoolConfigControl::BoolConfigControl( vlc_object_t *_p_this, void BoolConfigControl::finish() { - checkbox->setCheckState( p_item->value.i == VLC_TRUE ? Qt::Checked + checkbox->setCheckState( p_item->value.i == true ? Qt::Checked : Qt::Unchecked ); checkbox->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) ); } int BoolConfigControl::getValue() { - return checkbox->checkState() == Qt::Checked ? VLC_TRUE : VLC_FALSE; + return checkbox->checkState() == Qt::Checked ? true : false; } /************************************************************************** @@ -1139,6 +1142,7 @@ KeySelectorControl::KeySelectorControl( vlc_object_t *_p_this, l->addWidget( keyContainer, line, 0, 1, 2 ); CONNECT( clearButton, clicked(), shortcutValue, clear() ); + CONNECT( clearButton, clicked(), this, setTheKey() ); BUTTONACT( setButton, setTheKey() ); } @@ -1191,16 +1195,18 @@ void KeySelectorControl::finish() table->resizeColumnToContents( 0 ); - CONNECT( table, itemClicked( QTreeWidgetItem *, int ), - this, select1Key( QTreeWidgetItem * ) ); CONNECT( table, itemDoubleClicked( QTreeWidgetItem *, int ), this, selectKey( QTreeWidgetItem * ) ); + CONNECT( table, itemSelectionChanged (), + this, select1Key() ); + CONNECT( shortcutValue, pressed(), this, selectKey() ); } /* Show the key selected from the table in the keySelector */ -void KeySelectorControl::select1Key( QTreeWidgetItem *keyItem ) +void KeySelectorControl::select1Key() { + QTreeWidgetItem *keyItem = table->currentItem(); shortcutValue->setText( keyItem->text( 1 ) ); shortcutValue->setValue( keyItem->data( 1, Qt::UserRole ).toInt() ); }