From b1d9857cfcec04ad618bd13ca871b5d8a63193fa Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Kempf Date: Thu, 26 Apr 2007 22:37:58 +0000 Subject: [PATCH] Qt4 - Complete preferences. Make ModuleList Clearer than it is now... Align SpinBox correctly. Make directory and file use 2 column instead of three. --- .../qt4/components/preferences_widgets.cpp | 55 +++++++++++-------- .../qt4/components/preferences_widgets.hpp | 3 +- 2 files changed, 34 insertions(+), 24 deletions(-) diff --git a/modules/gui/qt4/components/preferences_widgets.cpp b/modules/gui/qt4/components/preferences_widgets.cpp index 90bc37917b..f169a91a9f 100644 --- a/modules/gui/qt4/components/preferences_widgets.cpp +++ b/modules/gui/qt4/components/preferences_widgets.cpp @@ -47,6 +47,7 @@ #include #include #include +#include #include @@ -226,6 +227,10 @@ FileConfigControl::FileConfigControl( vlc_object_t *_p_this, label = new QLabel( qfu(p_item->psz_text) ); text = new QLineEdit( qfu(p_item->value.psz) ); browse = new QPushButton( qtr( "Browse..." ) ); + QHBoxLayout *textAndButton = new QHBoxLayout(); + textAndButton->setMargin( 0 ); + textAndButton->addWidget( text, 2 ); + textAndButton->addWidget( browse, 0 ); BUTTONACT( browse, updateField() ); @@ -234,14 +239,14 @@ FileConfigControl::FileConfigControl( vlc_object_t *_p_this, if( !l ) { QHBoxLayout *layout = new QHBoxLayout(); - layout->addWidget( label, 0 ); layout->addWidget( text, 1 ); - layout->addWidget( browse, 2 ); + layout->addWidget( label, 0 ); + layout->addLayout( textAndButton, 1 ); widget->setLayout( layout ); } else { - l->addWidget( label, line, 0 ); l->addWidget( text, line, 1 ); - l->addWidget( browse, line, 2 ); + l->addWidget( label, line, 0 ); + l->addLayout( textAndButton, line, 1 ); } } @@ -464,26 +469,30 @@ ModuleListConfigControl::ModuleListConfigControl( vlc_object_t *_p_this, QGridLayout *l, int &line) : VStringConfigControl( _p_this, _p_item, _parent ) { - label = new QLabel( qfu(p_item->psz_text) ); + groupBox = new QGroupBox ( qfu(p_item->psz_text) ); text = new QLineEdit(); + QGridLayout *layoutGroupBox = new QGridLayout( groupBox ); + finish( bycat ); - bool pom = false; + int boxline = 0; + for( QVector::iterator it = modules.begin(); + it != modules.end(); it++ ) + { + layoutGroupBox->addWidget( *it, boxline++, 0 ); + } + layoutGroupBox->addWidget( text, boxline, 0 ); + if( !l ) { - l = new QGridLayout(); - line = 0; - pom = true; + QVBoxLayout *layout = new QVBoxLayout(); + layout->addWidget( groupBox, line, 0 ); + widget->setLayout( layout ); } - for( QVector::iterator it = modules.begin(); - it != modules.end(); it++ ) + else { - l->addWidget( *it, line++, 1 ); + l->addWidget( groupBox, line, 0, 1, -1 ); } - l->addWidget( label, line, 0 ); - l->addWidget( text, line, 1 ); - if( pom ) - widget->setLayout( l ); } #if 0 ModuleConfigControl::ModuleConfigControl( vlc_object_t *_p_this, @@ -503,7 +512,7 @@ ModuleListConfigControl::~ModuleListConfigControl() { delete *it; } - delete label; + delete groupBox; delete text; } @@ -546,8 +555,8 @@ void ModuleListConfigControl::finish( bool bycat ) } vlc_list_release( p_list ); text->setToolTip( qfu(p_item->psz_longtext) ); - if( label ) - label->setToolTip( qfu(p_item->psz_longtext) ); + if( groupBox ) + groupBox->setToolTip( qfu(p_item->psz_longtext) ); } QString ModuleListConfigControl::getValue() @@ -562,8 +571,7 @@ void ModuleListConfigControl::hide() { (*it)->hide(); } - text->hide(); - label->hide(); + groupBox->hide(); } void ModuleListConfigControl::show() @@ -573,8 +581,7 @@ void ModuleListConfigControl::show() { (*it)->show(); } - text->show(); - label->show(); + groupBox->show(); } @@ -600,6 +607,7 @@ IntegerConfigControl::IntegerConfigControl( vlc_object_t *_p_this, { label = new QLabel( qfu(p_item->psz_text) ); spin = new QSpinBox; spin->setMinimumWidth( 80 ); + spin->setAlignment( Qt::AlignRight ); spin->setMaximumWidth( 90 ); finish(); @@ -795,6 +803,7 @@ FloatConfigControl::FloatConfigControl( vlc_object_t *_p_this, label = new QLabel( qfu(p_item->psz_text) ); spin = new QDoubleSpinBox; spin->setMinimumWidth( 80 ); spin->setMaximumWidth( 90 ); + spin->setAlignment( Qt::AlignRight ); finish(); if( !l ) diff --git a/modules/gui/qt4/components/preferences_widgets.hpp b/modules/gui/qt4/components/preferences_widgets.hpp index 2a9dfb423e..8f09e57c3f 100644 --- a/modules/gui/qt4/components/preferences_widgets.hpp +++ b/modules/gui/qt4/components/preferences_widgets.hpp @@ -38,6 +38,7 @@ #include #include #include +#include #include "qt4.hpp" #include @@ -342,7 +343,7 @@ public slots: private: void finish( bool ); QVector modules; - QLabel *label; + QGroupBox *groupBox; QLineEdit *text; }; -- 2.39.2