text->setText( toNativeSepNoSlash( dir ) );
}
-#include <QFontDialog>
+#include <QFontComboBox>
/********* String / Font **********/
FontConfigControl::FontConfigControl( vlc_object_t *_p_this,
- module_config_t *_p_item, QWidget *_p_widget,
- QGridLayout *_p_layout, int& _int) :
- FileConfigControl( _p_this, _p_item, _p_widget, _p_layout, _int)
-{}
+ module_config_t *_p_item, QWidget *_parent,
+ QGridLayout *_p_layout, int& line) :
+ VStringConfigControl( _p_this, _p_item, _parent )
+{
+ label = new QLabel( qtr(p_item->psz_text) );
+ font = new QFontComboBox( _parent );
+ if( !_p_layout )
+ {
+ QHBoxLayout *layout = new QHBoxLayout();
+ layout->addWidget( label, 0 );
+ layout->addWidget( font, 1 );
+ widget->setLayout( layout );
+ }
+ else
+ {
+ _p_layout->addWidget( label, line, 0 );
+ _p_layout->addWidget( font, line, 1 );
+ }
+}
FontConfigControl::FontConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item, QLabel *_p_label,
- QLineEdit *_p_line, QPushButton *_p_button):
- FileConfigControl( _p_this, _p_item, _p_label, _p_line, _p_button)
-{}
-
-void FontConfigControl::updateField()
+ QFontComboBox *_p_font):
+ VStringConfigControl( _p_this, _p_item)
{
- bool ok;
- QFont font = QFontDialog::getFont( &ok, QFont( text->text() ), NULL );
- if( !ok ) return;
- text->setText( font.family() );
+ label = _p_label;
+ font = _p_font;
}
/********* String / choice list **********/
#include <QPushButton>
#include <QVector>
#include <QDialog>
+#include <QFontComboBox>
class QTreeWidget;
class QTreeWidgetItem;
virtual void updateField();
};
-class FontConfigControl : public FileConfigControl
+class FontConfigControl : public VStringConfigControl
{
Q_OBJECT;
public:
FontConfigControl( vlc_object_t *, module_config_t *, QWidget *,
QGridLayout *, int&);
FontConfigControl( vlc_object_t *, module_config_t *, QLabel *,
- QLineEdit *, QPushButton *);
+ QFontComboBox *);
virtual ~FontConfigControl() {};
-public slots:
- virtual void updateField();
+ virtual QString getValue(){ return font->currentFont().toString(); }
+protected:
+ QLabel *label;
+ QFontComboBox *font;
};
class ModuleConfigControl : public VStringConfigControl
encoding );
CONFIG_GENERIC( "sub-language", String, ui.subLangLabel,
preferredLanguage );
- CONFIG_GENERIC_FILE( "freetype-font", Font, ui.fontLabel, ui.font,
- ui.fontBrowse );
+ CONFIG_GENERIC_NO_BOOL( "freetype-font", Font, ui.fontLabel, font );
CONFIG_GENERIC( "freetype-color", IntegerList, ui.fontColorLabel,
fontColor );
CONFIG_GENERIC( "freetype-rel-fontsize", IntegerList,
<x>0</x>
<y>0</y>
<width>772</width>
- <height>444</height>
+ <height>446</height>
</rect>
</property>
<property name="windowTitle">
</property>
</widget>
</item>
- <item row="0" column="2">
- <widget class="QPushButton" name="fontBrowse">
- <property name="text">
- <string>Browse...</string>
- </property>
- </widget>
- </item>
<item row="0" column="1">
- <widget class="QLineEdit" name="font"/>
+ <widget class="QFontComboBox" name="font"/>
</item>
<item row="0" column="0">
<widget class="QLabel" name="fontLabel">
<tabstop>preferredLanguage</tabstop>
<tabstop>encoding</tabstop>
<tabstop>font</tabstop>
- <tabstop>fontBrowse</tabstop>
<tabstop>fontSize</tabstop>
<tabstop>fontColor</tabstop>
<tabstop>effect</tabstop>