/*****************************************************************************
* open.hpp : advanced open dialog
****************************************************************************
- * Copyright (C) 2006 the VideoLAN team
- * $Id: streaminfo.hpp 16806 2006-09-23 13:37:50Z zorglub $
+ * Copyright (C) 2006-2007 the VideoLAN team
+ * $Id$
*
* Authors: Jean-Baptiste Kempf <jb@videolan.org>
*
#include <vlc/vlc.h>
-#include "ui/open.h"
#include "util/qvlcframe.hpp"
+#include "dialogs_provider.hpp"
+#include "ui/open.h"
#include "components/open.hpp"
-#include <QTabWidget>
-#include <QBoxLayout>
-
-class InfoTab;
+class QString;
+class QToolButton;
+class QTabWidget;
-class OpenDialog : public QVLCFrame
+class OpenDialog : public QVLCDialog
{
Q_OBJECT;
public:
- static OpenDialog * getInstance( intf_thread_t *p_intf )
+ static OpenDialog * getInstance( QWidget *parent, intf_thread_t *p_intf,
+ int _action_flag = 0 )
{
if( !instance)
- instance = new OpenDialog( p_intf);
+ instance = new OpenDialog( parent, p_intf, false, _action_flag );
+ else
+ {
+ instance->i_action_flag = _action_flag;
+ instance->setMenuAction();
+ }
return instance;
}
+ OpenDialog( QWidget *parent, intf_thread_t *, bool modal,
+ int _action_flag = 0 );
virtual ~OpenDialog();
+
+ void showTab( int );
+
+ QString mrl;
+ QString mainMRL;
+
+public slots:
+ void play();
+ void stream( bool b_transode_only = false );
+ void enqueue();
+ void transcode();
private:
- OpenDialog( intf_thread_t * );
static OpenDialog *instance;
input_thread_t *p_input;
+
Ui::Open ui;
FileOpenPanel *fileOpenPanel;
NetOpenPanel *netOpenPanel;
- DiskOpenPanel *diskOpenPanel;
-public slots:
+ DiscOpenPanel *discOpenPanel;
+ CaptureOpenPanel *captureOpenPanel;
+
+ QString storedMethod;
+ QString mrlSub;
+ int advHeight, mainHeight;
+ int i_action_flag;
+ QStringList SeparateEntries( QString );
+
+ QPushButton *cancelButton;
+ QToolButton *playButton;
+ void finish( bool );
+
+private slots:
+ void setMenuAction();
void cancel();
- void ok();
+ void close();
+ void toggleAdvancedPanel();
+ void updateMRL( QString );
+ void updateMRL();
+ void newCachingMethod( QString );
+ void signalCurrent();
};
#endif