Commit 240dc04a authored by Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf

Qt4 - Rewrite of the VLM Dialog. It features a list on the left of the VLM...

Qt4 - Rewrite of the VLM Dialog. It features a list on the left of the VLM object, and a right pane to see them in details. Creation and modification is doable. This is not yet a VCR, but it could be :D
The code is way not finished and uncleaned, but feel free to improve.
Only Brodcast elements have a start of code.


parent accc4e29
/***************************************************************************** /*****************************************************************************
* sout.cpp : stream output dialog ( old-style ) * vlm.cpp : VLM Management
**************************************************************************** ****************************************************************************
* Copyright ( C ) 2006 the VideoLAN team * Copyright ( C ) 2006 the VideoLAN team
* $Id: sout.cpp 21875 2007-09-08 16:01:33Z jb $ * $Id: sout.cpp 21875 2007-09-08 16:01:33Z jb $
* *
* Authors: Clément Stenac <zorglub@videolan.org> * Authors: Jean-Baptiste Kempf <jb@videolan.org>
* Jean-Baptiste Kempf <jb@videolan.org>
* Jean-François Massol <jf.massol -at- gmail.com> * Jean-François Massol <jf.massol -at- gmail.com>
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
...@@ -27,7 +26,6 @@ ...@@ -27,7 +26,6 @@
#include <vlc_streaming.h> #include <vlc_streaming.h>
#include <QString> #include <QString>
#include <QFileDialog>
#include <QComboBox> #include <QComboBox>
#include <QVBoxLayout> #include <QVBoxLayout>
#include <QStackedWidget> #include <QStackedWidget>
...@@ -44,106 +42,37 @@ ...@@ -44,106 +42,37 @@
#include <QDateEdit> #include <QDateEdit>
#include <QSpinBox> #include <QSpinBox>
#include <QHeaderView> #include <QHeaderView>
#include <QScrollArea>
VLMDialog *VLMDialog::instance = NULL; static const char *psz_type[] = { "Broadcast", "Schedule", "VOD" };
VLMDialog *VLMDialog::instance = NULL;
VLMDialog::VLMDialog( intf_thread_t *_p_intf ) : QVLCFrame( _p_intf ) VLMDialog::VLMDialog( intf_thread_t *_p_intf ) : QVLCFrame( _p_intf )
{ {
// UI stuff // UI stuff
ui.setupUi( this ); ui.setupUi( this );
ui.saveButton->hide();
#define ADDMEDIATYPES( str, type ) ui.mediaType->addItem( qtr( str ), QVariant( type ) ); #define ADDMEDIATYPES( str, type ) ui.mediaType->addItem( qtr( str ), QVariant( type ) );
ADDMEDIATYPES( "Broadcast", QVLM_Broadcast ); ADDMEDIATYPES( "Broadcast", QVLM_Broadcast );
ADDMEDIATYPES( "Video On Demand ( VOD )", QVLM_VOD );
ADDMEDIATYPES( "Schedule", QVLM_Schedule ); ADDMEDIATYPES( "Schedule", QVLM_Schedule );
ADDMEDIATYPES( "Video On Demand ( VOD )", QVLM_VOD );
#undef ADDMEDIATYPES #undef ADDMEDIATYPES
/* ui.mediasDB->horizontalHeader()->setResizeMode( 0, QHeaderView::ResizeToContents ); /* Schedule Stuffs */
ui.mediasDB->horizontalHeader()->resizeSection( 1, 160 ); QGridLayout *schetimelayout = new QGridLayout( ui.schedBox );
ui.mediasDB->horizontalHeader()->resizeSection( 2, 120 );
ui.mediasDB->horizontalHeader()->resizeSection( 3, 120 );
ui.mediasDB->horizontalHeader()->setStretchLastSection ( true );*/
QGridLayout *bcastlayout = new QGridLayout( ui.pBcast );
QLabel *bcastname = new QLabel( qtr( "Name:" ) );
bcastnameledit = new QLineEdit;
bcastenable = new QCheckBox( qtr( "Enable" ) );
bcastenable->setCheckState( Qt::Checked );
QLabel *bcastinput = new QLabel( qtr( "Input:" ) );
bcastinputledit = new QLineEdit;
bcastinputtbutton = new QToolButton;
QLabel *bcastoutput = new QLabel( qtr( "Output:" ) );
bcastoutputledit = new QLineEdit;
bcastoutputtbutton = new QToolButton;
QGroupBox *bcastcontrol = new QGroupBox( qtr( "Controls" ) );
QHBoxLayout *bcastgbox = new QHBoxLayout( bcastcontrol );
bcastplay = new QPushButton( qtr( "Play" ) );
bcastpause = new QPushButton( qtr( "Pause" ) );
bcaststop = new QPushButton( qtr( "Stop" ) );
bcastgbox->addWidget( bcastplay );
bcastgbox->addWidget( bcastpause );
bcastgbox->addWidget( bcaststop );
bcastlayout->addWidget( bcastname, 0, 0 );
bcastlayout->addWidget( bcastnameledit, 0, 1 );
bcastlayout->addWidget( bcastenable, 0, 2 );
bcastlayout->addWidget( bcastinput, 1, 0 );
bcastlayout->addWidget( bcastinputledit, 1, 1 );
bcastlayout->addWidget( bcastinputtbutton, 1, 2 );
bcastlayout->addWidget( bcastoutput, 2, 0 );
bcastlayout->addWidget( bcastoutputledit, 2, 1 );
bcastlayout->addWidget( bcastoutputtbutton, 2, 2 );
bcastlayout->addWidget( bcastcontrol, 3, 0, 1, 3 );
QSpacerItem *spacerItem = new QSpacerItem(10, 5,
QSizePolicy::Expanding, QSizePolicy::MinimumExpanding );
bcastlayout->addItem(spacerItem, 4, 0, 1, 1);
QGridLayout *vodlayout = new QGridLayout( ui.pVod );
QLabel *vodname = new QLabel( qtr( "Name :" ) );
vodnameledit = new QLineEdit;
vodenable = new QCheckBox( qtr( "Enable" ) );
QLabel *vodinput = new QLabel( qtr( "Input :" ) );
vodinputledit = new QLineEdit;
vodinputtbutton = new QToolButton;
QLabel *vodoutput = new QLabel( qtr( "Output :" ) );
vodoutputledit = new QLineEdit;
vodoutputtbutton = new QToolButton;
vodlayout->addWidget( vodname, 0, 0 );
vodlayout->addWidget( vodnameledit, 0, 1 );
vodlayout->addWidget( vodenable, 0, 2 );
vodlayout->addWidget( vodinput, 1, 0 );
vodlayout->addWidget( vodinputledit, 1, 1 );
vodlayout->addWidget( vodinputtbutton, 1, 2 );
vodlayout->addWidget( vodoutput, 2, 0 );
vodlayout->addWidget( vodoutputledit, 2, 1 );
vodlayout->addWidget( vodoutputtbutton, 2, 2 );
QSpacerItem *spacerVod = new QSpacerItem(10, 5,
QSizePolicy::Expanding, QSizePolicy::MinimumExpanding );
vodlayout->addItem( spacerVod, 4, 0, 1, 1);
QGridLayout *schelayout = new QGridLayout( ui.pSched );
QLabel *schename = new QLabel( qtr( "Name:" ) );
schenameledit = new QLineEdit;
scheenable = new QCheckBox( qtr( "Enable" ) );
QLabel *scheinput = new QLabel( qtr( "Input:" ) );
scheinputledit = new QLineEdit;
scheinputtbutton = new QToolButton;
QLabel *scheoutput = new QLabel( qtr( "Output:" ) );
scheoutputledit = new QLineEdit;
scheoutputtbutton = new QToolButton;
QGroupBox *schecontrol = new QGroupBox( qtr( "Time Control" ), ui.pSched );
QGridLayout *schetimelayout = new QGridLayout( schecontrol );
QLabel *schetimelabel = new QLabel( qtr( "Hours/Minutes/Seconds:" ) ); QLabel *schetimelabel = new QLabel( qtr( "Hours/Minutes/Seconds:" ) );
schetimelayout->addWidget( schetimelabel, 0, 0 );
QLabel *schedatelabel = new QLabel( qtr( "Day Month Year:" ) ); QLabel *schedatelabel = new QLabel( qtr( "Day Month Year:" ) );
QLabel *schetimerepeat = new QLabel( qtr( "Repeat:" ) ); schetimelayout->addWidget( schedatelabel, 1, 0 );
QLabel *scherepeatLabel = new QLabel( qtr( "Repeat:" ) );
schetimelayout->addWidget( scherepeatLabel, 2, 0 );
time = new QTimeEdit( QTime::currentTime() ); time = new QTimeEdit( QTime::currentTime() );
time->setAlignment( Qt::AlignRight ); time->setAlignment( Qt::AlignRight );
schetimelayout->addWidget( time, 0, 1 );
date = new QDateEdit( QDate::currentDate() ); date = new QDateEdit( QDate::currentDate() );
date->setAlignment( Qt::AlignRight ); date->setAlignment( Qt::AlignRight );
#ifdef WIN32 #ifdef WIN32
...@@ -151,98 +80,248 @@ VLMDialog::VLMDialog( intf_thread_t *_p_intf ) : QVLCFrame( _p_intf ) ...@@ -151,98 +80,248 @@ VLMDialog::VLMDialog( intf_thread_t *_p_intf ) : QVLCFrame( _p_intf )
#else #else
date->setDisplayFormat( "dd MMMM yyyy" ); date->setDisplayFormat( "dd MMMM yyyy" );
#endif #endif
schetimelayout->addWidget( date, 1, 1 );
scherepeatnumber = new QSpinBox; scherepeatnumber = new QSpinBox;
scherepeatnumber->setAlignment( Qt::AlignRight ); scherepeatnumber->setAlignment( Qt::AlignRight );
schecontrol->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Minimum );
schetimelayout->addWidget( schetimelabel, 0, 0 );
schetimelayout->addWidget( time, 0, 1 );
schetimelayout->addWidget( schedatelabel, 1, 0 );
schetimelayout->addWidget( date, 1, 1 );
schetimelayout->addWidget( schetimerepeat, 2, 0 );
schetimelayout->addWidget( scherepeatnumber, 2, 1 ); schetimelayout->addWidget( scherepeatnumber, 2, 1 );
schelayout->addWidget( schename, 0, 0 );
schelayout->addWidget( schenameledit, 0, 1 ); /* scrollArea */
schelayout->addWidget( scheenable, 0, 2 ); ui.vlmItemScroll->setFrameStyle( QFrame::NoFrame );
schelayout->addWidget( scheinput, 1, 0 ); ui.vlmItemScroll->setWidgetResizable( true );
schelayout->addWidget( scheinputledit, 1, 1 ); vlmItemWidget = new QWidget;
schelayout->addWidget( scheinputtbutton, 1, 2 ); vlmItemLayout = new QVBoxLayout( vlmItemWidget );
schelayout->addWidget( scheoutput, 2, 0 ); vlmItemWidget->setLayout( vlmItemLayout );
schelayout->addWidget( scheoutputledit, 2, 1 ); ui.vlmItemScroll->setWidget( vlmItemWidget );
schelayout->addWidget( scheoutputtbutton, 2, 2 );
schelayout->addWidget( schecontrol, 3, 0, 1, 3 ); QSpacerItem *spacer = new QSpacerItem( 10, 10, QSizePolicy::Minimum, QSizePolicy::Expanding);
vlmItemLayout->addItem( spacer );
QPushButton *closeButton = new QPushButton( qtr( "Close" ) ); QPushButton *closeButton = new QPushButton( qtr( "Close" ) );
QPushButton *cancelButton = new QPushButton( qtr( "Cancel" ) );
ui.buttonBox->addButton( closeButton, QDialogButtonBox::AcceptRole ); ui.buttonBox->addButton( closeButton, QDialogButtonBox::AcceptRole );
ui.buttonBox->addButton( cancelButton, QDialogButtonBox::RejectRole );
ui.mediaStacked->setCurrentIndex( QVLM_Broadcast ); ui.schedBox->hide();
CONNECT( ui.mediaType, currentIndexChanged( int ),
ui.mediaStacked, setCurrentIndex( int ) );
BUTTONACT( closeButton, finish() ); /* Connect the comboBox to show the right Widgets */
BUTTONACT( cancelButton, cancel() ); CONNECT( ui.mediaType, currentIndexChanged( int ),
this, showScheduleWidget( int ) );
/* Connect the leftList to show the good VLMItem */
CONNECT( ui.vlmListItem, currentRowChanged( int ),
this, selectVLMItem( int ) );
BUTTONACT( closeButton, close() );
BUTTONACT( ui.addButton, addVLMItem() ); BUTTONACT( ui.addButton, addVLMItem() );
BUTTONACT( ui.clearButton, clearVLMItem() ); BUTTONACT( ui.clearButton, clearWidgets() );
BUTTONACT( ui.saveButton, saveModifications() );
} }
VLMDialog::~VLMDialog(){} VLMDialog::~VLMDialog(){}
void VLMDialog::cancel() void VLMDialog::showScheduleWidget( int i )
{ {
hide(); ui.schedBox->setVisible( ( i == QVLM_Schedule ) );
}
void VLMDialog::selectVLMItem( int i )
{
ui.vlmItemScroll->ensureWidgetVisible( vlmItems.at( i ) );
} }
void VLMDialog::finish() bool VLMDialog::isNameGenuine( QString name )
{ {
// for( int i = 0; i < ui.mediasDB->topLevelItemCount(); i++ ); for( int i = 0; i < vlmItems.size(); i++ )
hide(); {
if( vlmItems.at( i )->name == name )
return false;
}
return true;
} }
void VLMDialog::addVLMItem() void VLMDialog::addVLMItem()
{ {
// int row = ui.mediasDB->rowCount() -1 ; int vlmItemCount = vlmItems.size();
int type = ui.mediaType->itemData( ui.mediaType->currentIndex() ).toInt();
QString str;
QString name;
/* Take the name and Check it */
QString name = ui.nameLedit->text();
if( name.isEmpty() || !isNameGenuine( name ) )
{
msg_Dbg( p_intf, "VLM Name is empty or already exists, I can't do it" );
return;
}
int type = ui.mediaType->itemData( ui.mediaType->currentIndex() ).toInt();
QString typeShortName;
switch( type ) switch( type )
{ {
case QVLM_Broadcast: case QVLM_Broadcast:
str = "broadcast"; typeShortName = "Bcast";
name = bcastnameledit->text();
break; break;
case QVLM_VOD: case QVLM_VOD:
str = "vod"; typeShortName = "VOD";
name = vodnameledit->text();
break; break;
case QVLM_Schedule: case QVLM_Schedule:
str = "schedule"; typeShortName = "Sched";
name = schenameledit->text();
break; break;
default: default:
break; msg_Warn( p_intf, "Something bad happened" );
return;
} }
QGroupBox *groupItem = new QGroupBox( name ); /* Add an Item of the Side List */
ui.vlmListItem->addItem( typeShortName + " : " + name );
ui.vlmListItem->setCurrentRow( vlmItemCount - 1 );
/* Add a new VLMObject on the main List */
VLMObject *vlmObject = new VLMObject( type, name,
ui.inputLedit->text(),
ui.outputLedit->text(),
ui.enableCheck->isChecked(),
this );
vlmItemLayout->insertWidget( vlmItemCount, vlmObject );
vlmItems.append( vlmObject );
/* HERE BE DRAGONS VLM REQUEST */
}
void VLMDialog::clearWidgets()
{
ui.nameLedit->clear();
ui.inputLedit->clear();
ui.outputLedit->clear();
time->setTime( QTime::currentTime() );
date->setDate( QDate::currentDate() );
ui.enableCheck->setChecked( true );
ui.nameLedit->setReadOnly( false );
}
void VLMDialog::saveModifications()
{
VLMObject *vlmObj = vlmItems.at( currentIndex );
if( vlmObj )
{
vlmObj->input = ui.inputLedit->text();
vlmObj->output = ui.outputLedit->text();
vlmObj->setChecked( ui.enableCheck->isChecked() );
vlmObj->b_enabled = ui.enableCheck->isChecked();
}
ui.saveButton->hide();
ui.addButton->show();
clearWidgets();
}
/* Object Modification */
void VLMDialog::removeVLMItem( VLMObject *vlmObj )
{
int index = vlmItems.indexOf( vlmObj );
if( index < 0 ) return;
delete ui.vlmListItem->takeItem( index );
vlmItems.removeAt( index );
delete vlmObj;
/* HERE BE DRAGONS VLM REQUEST */
}
void VLMDialog::startModifyVLMItem( VLMObject *vlmObj )
{
currentIndex = vlmItems.indexOf( vlmObj );
if( currentIndex < 0 ) return;
ui.vlmListItem->setCurrentRow( currentIndex );
ui.nameLedit->setText( vlmObj->name );
ui.inputLedit->setText( vlmObj->input );
ui.outputLedit->setText( vlmObj->output );
ui.enableCheck->setChecked( vlmObj->b_enabled );
ui.nameLedit->setReadOnly( true );
ui.addButton->hide();
ui.saveButton->show();
}
/*********************************
* VLMObject
********************************/
VLMObject::VLMObject( int type,
QString _name,
QString _input,
QString _output,
bool _enabled,
VLMDialog *_parent )
: QGroupBox( _name, _parent )
{
parent = _parent;
name = _name;
input = _input;
output = _output;
b_enabled = _enabled;
setChecked( b_enabled );
QGridLayout *objLayout = new QGridLayout( this );
setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Maximum );
QLabel *label = new QLabel( psz_type[type] + ( ": " + name ) );
objLayout->addWidget( label, 0, 0, 1, 4 );
QToolButton *playButton = new QToolButton;
playButton->setIcon( QIcon( QPixmap( ":/pixmaps/play_16px.png" ) ) );
objLayout->addWidget( playButton, 1, 0 );
QToolButton *stopButton = new QToolButton;
stopButton->setIcon( QIcon( QPixmap( ":/pixmaps/stop_16px.png" ) ) );
objLayout->addWidget( stopButton, 1, 1 );
QToolButton *loopButton = new QToolButton;
loopButton->setIcon( QIcon( QPixmap( ":/pixmaps/playlist_repeat_off.png" ) ) );
objLayout->addWidget( loopButton, 1, 2 );
/*QTableWidgetItem *newItem = new QTableWidgetItem( str ); QLabel *time = new QLabel( "--:--/--:--" );
ui.mediasDB->setItem( row, 0, newItem ); objLayout->addWidget( time, 1, 3, 1, 2 );
QTableWidgetItem *newItem2 = new QTableWidgetItem( name );
ui.mediasDB->setItem( row, 1, newItem2 );*/
QToolButton *modifyButton = new QToolButton;
modifyButton->setIcon( QIcon( QPixmap( ":/pixmaps/menus_settings_16px.png" ) ) );
objLayout->addWidget( modifyButton, 0, 5 );
QToolButton *deleteButton = new QToolButton;
deleteButton->setIcon( QIcon( QPixmap( ":/pixmaps/menus_quit_16px.png" ) ) );
objLayout->addWidget( deleteButton, 0, 6 );
BUTTONACT( playButton, togglePlayPause() );
BUTTONACT( stopButton, stop() );
BUTTONACT( modifyButton, modify() );
BUTTONACT( deleteButton, del() );
BUTTONACT( loopButton, toggleLoop() );
}
void VLMObject::modify()
{
parent->startModifyVLMItem( this );
} }
void VLMDialog::removeVLMItem() void VLMObject::del()
{
parent->removeVLMItem( this );
}
void VLMObject::togglePlayPause()
{ {
} }
void VLMObject::toggleLoop()
{
}
void VLMDialog::clearVLMItem() void VLMObject::stop()
{ {
} }
void VLMObject::enterEvent( QEvent *event )
{
printf( "test" );
}
/***************************************************************************** /*****************************************************************************
* vlm.hpp : Stream output dialog ( old-style, ala WX ) * vlm.hpp : VLM Management
**************************************************************************** ****************************************************************************
* Copyright ( C ) 2006 the VideoLAN team * Copyright ( C ) 2006 the VideoLAN team
* $Id: vlm.hpp 21875 2007-09-08 16:01:33Z jb $ * $Id: vlm.hpp 21875 2007-09-08 16:01:33Z jb $
...@@ -32,8 +32,8 @@ ...@@ -32,8 +32,8 @@
enum{ enum{
QVLM_Broadcast, QVLM_Broadcast,
QVLM_VOD, QVLM_Schedule,
QVLM_Schedule QVLM_VOD
}; };
class QComboBox; class QComboBox;
...@@ -50,6 +50,7 @@ class QHBoxLayout; ...@@ -50,6 +50,7 @@ class QHBoxLayout;
class QDateEdit; class QDateEdit;
class QTimeEdit; class QTimeEdit;
class QSpinBox; class QSpinBox;
class VLMObject;
class VLMDialog : public QVLCFrame class VLMDialog : public QVLCFrame
{ {
...@@ -67,28 +68,50 @@ private: ...@@ -67,28 +68,50 @@ private:
VLMDialog( intf_thread_t * ); VLMDialog( intf_thread_t * );
static VLMDialog *instance; static VLMDialog *instance;
Ui::Vlm ui; Ui::Vlm ui;
QGridLayout *vlmItemLayout;
QList<VLMObject *> vlmItems;
int currentIndex;
QVBoxLayout *vlmItemLayout;
QWidget *vlmItemWidget;
QComboBox *mediatype; QComboBox *mediatype;
QCheckBox *bcastenable, *vodenable, *scheenable;
QLineEdit *bcastnameledit, *vodnameledit, *schenameledit, *bcastinputledit, *vodinputledit, *scheinputledit;
QLineEdit *bcastoutputledit, *vodoutputledit, *scheoutputledit;
QTimeEdit *time; QTimeEdit *time;
QDateEdit *date; QDateEdit *date;
QSpinBox *scherepeatnumber; QSpinBox *scherepeatnumber;
bool isNameGenuine( QString );
QToolButton *bcastinputtbutton, *vodinputtbutton, *scheinputtbutton; public slots:
QToolButton *bcastoutputtbutton, *vodoutputtbutton, *scheoutputtbutton; void removeVLMItem( VLMObject * );
QPushButton *bcastplay, *bcastpause, *bcaststop; void startModifyVLMItem( VLMObject * );
QPushButton *bcastadd, *vodadd, *scheadd, *bcastremove, *vodremove, *scheremove;
private slots: private slots:
void finish();
void cancel();
void addVLMItem(); void addVLMItem();
void removeVLMItem(); void clearWidgets();
void clearVLMItem(); void saveModifications();
void showScheduleWidget( int );
void selectVLMItem( int );
};
class VLMObject : public QGroupBox
{
Q_OBJECT
friend class VLMDialog;
public:
VLMObject( int type, QString name, QString input, QString output, bool _enable, VLMDialog *parent );
private:
QString name;
QString input;
QString output;
bool b_looped;
bool b_enabled;
VLMDialog *parent;
protected:
virtual void enterEvent( QEvent * );
private slots:
void modify();
void stop();
void del();
void togglePlayPause();
void toggleLoop();
}; };
#endif #endif
...@@ -8,8 +8,8 @@ ...@@ -8,8 +8,8 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>588</width> <width>738</width>
<height>393</height> <height>598</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy" > <property name="sizePolicy" >
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
<string>_("VLM configurator")</string> <string>_("VLM configurator")</string>
</property> </property>
<layout class="QGridLayout" > <layout class="QGridLayout" >
<item rowspan="3" row="0" column="0" > <item rowspan="5" row="0" column="0" >
<widget class="QGroupBox" name="mediaConfBox" > <widget class="QGroupBox" name="mediaConfBox" >
<property name="sizePolicy" > <property name="sizePolicy" >
<sizepolicy vsizetype="Minimum" hsizetype="Preferred" > <sizepolicy vsizetype="Minimum" hsizetype="Preferred" >
...@@ -31,10 +31,10 @@ ...@@ -31,10 +31,10 @@
</sizepolicy> </sizepolicy>
</property> </property>
<property name="title" > <property name="title" >
<string>_("Media Creation")</string> <string>_("Media Manager Edition")</string>
</property> </property>
<layout class="QVBoxLayout" > <layout class="QGridLayout" >
<item> <item row="0" column="0" colspan="3" >
<widget class="QComboBox" name="mediaType" > <widget class="QComboBox" name="mediaType" >
<property name="sizePolicy" > <property name="sizePolicy" >
<sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" > <sizepolicy vsizetype="Fixed" hsizetype="MinimumExpanding" >
...@@ -44,41 +44,115 @@ ...@@ -44,41 +44,115 @@
</property> </property>
</widget> </widget>
</item> </item>
<item> <item row="1" column="0" colspan="3" >
<widget class="Line" name="line" > <widget class="Line" name="line" >
<property name="orientation" > <property name="orientation" >
<enum>Qt::Horizontal</enum> <enum>Qt::Horizontal</enum>
</property> </property>
</widget> </widget>
</item> </item>
<item> <item row="2" column="0" >
<widget class="QStackedWidget" name="mediaStacked" > <widget class="QLabel" name="nameLabel" >
<property name="currentIndex" > <property name="text" >
<number>2</number> <string>_("Name:")</string>
</property>
</widget>
</item>
<item row="2" column="1" >
<widget class="QLineEdit" name="nameLedit" />
</item>
<item row="2" column="2" >
<widget class="QCheckBox" name="enableCheck" >
<property name="text" >
<string>_("Enable")</string>
</property>
<property name="checked" >
<bool>true</bool>
</property>
</widget>
</item>
<item row="3" column="0" >
<widget class="QLabel" name="inputLabel" >
<property name="text" >
<string>_("Input:")</string>
</property>
</widget>
</item>
<item row="3" column="1" >
<widget class="QLineEdit" name="inputLedit" />
</item>
<item row="3" column="2" >
<widget class="QPushButton" name="inputButton" >
<property name="text" >
<string>_("Select Input")</string>
</property>
</widget>
</item>
<item row="4" column="0" >
<widget class="QLabel" name="outputLabel" >
<property name="text" >
<string>_("Output:")</string>
</property>
</widget>
</item>
<item row="4" column="1" >
<widget class="QLineEdit" name="outputLedit" />
</item>
<item row="4" column="2" >
<widget class="QPushButton" name="outputButton" >
<property name="text" >
<string>_("Select Output")</string>
</property>
</widget>
</item>
<item row="5" column="0" colspan="3" >
<widget class="QGroupBox" name="schedBox" >
<property name="title" >
<string>_("Time Control")</string>
</property> </property>
<widget class="QWidget" name="pBcast" />
<widget class="QWidget" name="pVod" />
<widget class="QWidget" name="pSched" />
</widget> </widget>
</item> </item>
</layout> </layout>
</widget> </widget>
</item> </item>
<item row="0" column="1" > <item row="0" column="1" >
<spacer>
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType" >
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" >
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="1" column="1" >
<widget class="QPushButton" name="addButton" > <widget class="QPushButton" name="addButton" >
<property name="text" > <property name="text" >
<string>_("Add")</string> <string>_("Add")</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="1" column="1" > <item row="2" column="1" >
<widget class="QPushButton" name="clearButton" > <widget class="QPushButton" name="clearButton" >
<property name="text" > <property name="text" >
<string>_("Clear")</string> <string>_("Clear")</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="2" column="1" > <item row="3" column="1" >
<widget class="QPushButton" name="saveButton" >
<property name="text" >
<string>_("Save")</string>
</property>
</widget>
</item>
<item row="4" column="1" >
<spacer> <spacer>
<property name="orientation" > <property name="orientation" >
<enum>Qt::Vertical</enum> <enum>Qt::Vertical</enum>
...@@ -86,12 +160,12 @@ ...@@ -86,12 +160,12 @@
<property name="sizeHint" > <property name="sizeHint" >
<size> <size>
<width>80</width> <width>80</width>
<height>20</height> <height>81</height>
</size> </size>
</property> </property>
</spacer> </spacer>
</item> </item>
<item row="3" column="0" colspan="2" > <item row="5" column="0" colspan="2" >
<widget class="QGroupBox" name="mediaBox" > <widget class="QGroupBox" name="mediaBox" >
<property name="sizePolicy" > <property name="sizePolicy" >
<sizepolicy vsizetype="MinimumExpanding" hsizetype="Preferred" > <sizepolicy vsizetype="MinimumExpanding" hsizetype="Preferred" >
...@@ -100,12 +174,52 @@ ...@@ -100,12 +174,52 @@
</sizepolicy> </sizepolicy>
</property> </property>
<property name="title" > <property name="title" >
<string>_("Media Configuration")</string> <string>_("Media Manager List")</string>
</property> </property>
<layout class="QHBoxLayout" /> <layout class="QGridLayout" >
<item row="0" column="0" >
<widget class="QListWidget" name="vlmListItem" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Preferred" hsizetype="MinimumExpanding" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="maximumSize" >
<size>
<width>200</width>
<height>16777215</height>
</size>
</property>
</widget>
</item>
<item row="0" column="1" >
<widget class="Line" name="line_2" >
<property name="orientation" >
<enum>Qt::Vertical</enum>
</property>
</widget>
</item>
<item row="0" column="2" >
<widget class="QScrollArea" native="1" name="vlmItemScroll" >
<property name="sizePolicy" >
<sizepolicy vsizetype="Preferred" hsizetype="MinimumExpanding" >
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize" >
<size>
<width>300</width>
<height>0</height>
</size>
</property>
</widget>
</item>
</layout>
</widget> </widget>
</item> </item>
<item row="4" column="0" colspan="2" > <item row="6" column="0" colspan="2" >
<widget class="QDialogButtonBox" name="buttonBox" > <widget class="QDialogButtonBox" name="buttonBox" >
<property name="standardButtons" > <property name="standardButtons" >
<set>QDialogButtonBox::NoButton</set> <set>QDialogButtonBox::NoButton</set>
...@@ -114,6 +228,13 @@ ...@@ -114,6 +228,13 @@
</item> </item>
</layout> </layout>
</widget> </widget>
<customwidgets>
<customwidget>
<class>QScrollArea</class>
<extends>QWidget</extends>
<header>qscrollarea.h</header>
</customwidget>
</customwidgets>
<resources/> <resources/>
<connections/> <connections/>
</ui> </ui>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment