setModal( modal );
ui.setupUi( this );
setWindowTitle( qtr("Open" ) );
- fileOpenPanel = new FileOpenPanel(this , p_intf );
- diskOpenPanel = new DiskOpenPanel(this , p_intf );
- netOpenPanel = new NetOpenPanel(this , p_intf );
- ui.Tab->addTab(fileOpenPanel, qtr("File"));
- ui.Tab->addTab(diskOpenPanel, qtr("Disk"));
- ui.Tab->addTab(netOpenPanel, qtr("Network"));
+ resize( 500, 300);
+
+ fileOpenPanel = new FileOpenPanel( this , p_intf );
+ diskOpenPanel = new DiskOpenPanel( this , p_intf );
+ netOpenPanel = new NetOpenPanel( this , p_intf );
+ captureOpenPanel = new CaptureOpenPanel( this, p_intf );
+
+ ui.Tab->addTab( fileOpenPanel, qtr( "&File" ) );
+ ui.Tab->addTab( diskOpenPanel, qtr( "&Disc" ) );
+ ui.Tab->addTab( netOpenPanel, qtr( "&Network" ) );
+ ui.Tab->addTab( captureOpenPanel, qtr( "Capture &Device" ) );
ui.advancedFrame->hide();
CONNECT( fileOpenPanel, mrlUpdated( QString ), this, updateMRL(QString) );
CONNECT( netOpenPanel, mrlUpdated( QString ), this, updateMRL(QString) );
CONNECT( diskOpenPanel, mrlUpdated( QString ), this, updateMRL(QString) );
+ CONNECT( captureOpenPanel, mrlUpdated( QString ), this,
+ updateMRL(QString) );
+
CONNECT( fileOpenPanel, methodChanged( QString ),
this, newMethod(QString) );
CONNECT( ui.slaveText, textChanged(QString), this, updateMRL());
CONNECT( ui.cacheSpinBox, valueChanged(int), this, updateMRL());
- BUTTONACT( ui.closeButton, ok());
+ BUTTONACT( ui.closeButton, play());
BUTTONACT( ui.cancelButton, cancel());
+ BUTTONACT( ui.enqueueButton, enqueue());
BUTTONACT( ui.advancedCheckBox , toggleAdvancedPanel() );
/* Initialize caching */
void OpenDialog::showTab(int i_tab=0)
{
- printf ( "%i" , i_tab);
this->show();
ui.Tab->setCurrentIndex(i_tab);
}
reject();
}
-void OpenDialog::ok()
+void OpenDialog::play()
+{
+ playOrEnqueue( false );
+}
+
+void OpenDialog::enqueue()
+{
+ playOrEnqueue( true );
+}
+
+void OpenDialog::playOrEnqueue( bool b_enqueue = false )
{
this->toggleVisible();
mrl = ui.advancedLineInput->text();
QString mrli = tempMRL[i].remove( QRegExp( "^\"" ) ).
remove( QRegExp( "\"\\s+$" ) );
const char * psz_utf8 = qtu( tempMRL[i] );
- /* Play the first one, parse and enqueue the other ones */
- playlist_Add( THEPL, psz_utf8, NULL,
- PLAYLIST_APPEND | (i ? 0 : PLAYLIST_GO) |
- ( i ? PLAYLIST_PREPARSE : 0 ),
- PLAYLIST_END, VLC_TRUE );
- }
+ if ( b_enqueue )
+ {
+ /* Enqueue and Preparse all items*/
+ playlist_Add( THEPL, psz_utf8, NULL,
+ PLAYLIST_APPEND | PLAYLIST_PREPARSE,
+ PLAYLIST_END, VLC_TRUE, VLC_FALSE );
+
+ }
+ else
+ {
+ /* Play the first one, parse and enqueue the other ones */
+ playlist_Add( THEPL, psz_utf8, NULL,
+ PLAYLIST_APPEND | (i ? 0 : PLAYLIST_GO) |
+ ( i ? PLAYLIST_PREPARSE : 0 ),
+ PLAYLIST_END, VLC_TRUE, VLC_FALSE );
+ }
+ }
}
else
void OpenDialog::toggleAdvancedPanel()
{
+ //FIXME does not work under Windows
if (ui.advancedFrame->isVisible()) {
ui.advancedFrame->hide();
setMinimumHeight(1);
}
resize( width(), mainHeight + advHeight );
}
-
- showTab( 2 );
}
void OpenDialog::updateMRL() {