/*****************************************************************************
* 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 "components/open.hpp"
-
-#include <QTabWidget>
-#include <QBoxLayout>
+#include "dialogs_provider.hpp"
+#include "ui/open.h"
+#include "components/open_panels.hpp"
-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, bool modal = false );
+
+ static void killInstance()
{
- if( !instance)
- instance = new OpenDialog( p_intf);
- return instance;
+ if( instance ) delete instance;
+ instance = NULL;
}
virtual ~OpenDialog();
+
+ void showTab( int );
+ QString getMRL(){ return mrl; }
+
+public slots:
+ void selectSlots();
+ void play();
+ void stream( bool b_transode_only = false );
+ void enqueue();
+ void transcode();
+
private:
- OpenDialog( intf_thread_t * );
+ OpenDialog( QWidget *parent, intf_thread_t *, bool modal,
+ int _action_flag = 0 );
+
static OpenDialog *instance;
input_thread_t *p_input;
+
+ QString mrl;
+ QString mainMRL;
+ QString storedMethod;
+
Ui::Open ui;
FileOpenPanel *fileOpenPanel;
NetOpenPanel *netOpenPanel;
- DiskOpenPanel *diskOpenPanel;
-public slots:
+ DiscOpenPanel *discOpenPanel;
+ CaptureOpenPanel *captureOpenPanel;
+
+ int i_action_flag;
+ QStringList SeparateEntries( QString );
+
+ QToolButton *cancelButton, *selectButton;
+ 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