X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fgui%2Fqt4%2Fdialogs%2Fopen.hpp;h=73a07e48bb84d8422f0658c8d662ac94d84a58ec;hb=d0389324b91b56a96bc6bbcb2c417ca824a892ab;hp=54255fe881de553c8af026c391ef7c33ad5fcd0d;hpb=de4f8d2c2279820a540926d9f153cc6f76739b0e;p=vlc diff --git a/modules/gui/qt4/dialogs/open.hpp b/modules/gui/qt4/dialogs/open.hpp index 54255fe881..73a07e48bb 100644 --- a/modules/gui/qt4/dialogs/open.hpp +++ b/modules/gui/qt4/dialogs/open.hpp @@ -2,7 +2,7 @@ * open.hpp : advanced open dialog **************************************************************************** * Copyright (C) 2006-2007 the VideoLAN team - * $Id: streaminfo.hpp 16806 2006-09-23 13:37:50Z zorglub $ + * $Id$ * * Authors: Jean-Baptiste Kempf * @@ -24,68 +24,84 @@ #ifndef _OPEN_DIALOG_H_ #define _OPEN_DIALOG_H_ -#include +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif -#include "ui/open.h" -#include "util/qvlcframe.hpp" -#include "components/open.hpp" +#include +#include "util/qvlcframe.hpp" #include "dialogs_provider.hpp" +#include "ui/open.h" +#include "components/open_panels.hpp" + +enum { + OPEN_FILE_TAB, + OPEN_DISC_TAB, + OPEN_NETWORK_TAB, + OPEN_CAPTURE_TAB, + OPEN_TAB_MAX +}; + +enum { + OPEN_AND_PLAY, + OPEN_AND_ENQUEUE, + OPEN_AND_STREAM, + OPEN_AND_SAVE, + SELECT /* Special mode to select a MRL (for VLM or similar */ +}; -#include -#include -#include -class QToolButton; +class QString; +class QTabWidget; class OpenDialog : public QVLCDialog { Q_OBJECT; public: static OpenDialog * getInstance( QWidget *parent, intf_thread_t *p_intf, - int _action_flag = 0 ) + bool b_rawInstance = false, int _action_flag = 0, bool b_selectMode = false ); + + static void killInstance() { - if( !instance) - instance = new OpenDialog( parent, p_intf, false, _action_flag ); - else - { - instance->i_action_flag = _action_flag; - instance->setMenuAction(); - } - return instance; + if( instance ) delete instance; + instance = NULL; } - OpenDialog( QWidget *parent, intf_thread_t *, bool modal, - int _action_flag = 0 ); virtual ~OpenDialog(); - void showTab( int ); - - QString mrl; - QString mainMRL; + void showTab( int = OPEN_FILE_TAB ); + QString getMRL(){ return mrl; } public slots: + void selectSlots(); void play(); void stream( bool b_transode_only = false ); void enqueue(); void transcode(); + private: + OpenDialog( QWidget *parent, intf_thread_t *, bool b_selectMode, + 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; DiscOpenPanel *discOpenPanel; CaptureOpenPanel *captureOpenPanel; - QString storedMethod; - QString mrlSub; - int advHeight, mainHeight; int i_action_flag; QStringList SeparateEntries( QString ); - QToolButton *cancelButton; - QToolButton *playButton; + QPushButton *cancelButton, *selectButton; + QPushButton *playButton; + void finish( bool ); private slots: @@ -95,7 +111,7 @@ private slots: void toggleAdvancedPanel(); void updateMRL( QString ); void updateMRL(); - void newMethod(QString); + void newCachingMethod( QString ); void signalCurrent(); };