]> git.sesse.net Git - vlc/blobdiff - modules/gui/qt4/dialogs_provider.hpp
Rework a bit the OpenDialog calls in order to fix the double-click issue when transco...
[vlc] / modules / gui / qt4 / dialogs_provider.hpp
index be195ce8d5f696dfd0b9510583d5f6be94fac3b8..97c19c6e5c39751eb151e048fa4a84a8ce9245fb 100644 (file)
 #ifndef _DIALOGS_PROVIDER_H_
 #define _DIALOGS_PROVIDER_H_
 
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
 #include <assert.h>
-#include <vlc/vlc.h>
+#include <vlc_common.h>
 #include <vlc_interface.h>
 
+#include "qt4.hpp"
 #include "dialogs/interaction.hpp"
+#include "dialogs/open.hpp"
 
 #include <QObject>
 #include <QTimer>
 #include <QApplication>
 
-#define ADD_FILTER_MEDIA( string )   \
-    string += qtr("Media Files");      \
-    string += " ( ";                 \
-    string += EXTENSIONS_MEDIA;      \
+#define ADD_FILTER_MEDIA( string )     \
+    string += qtr( "Media Files" );    \
+    string += " ( ";                   \
+    string += EXTENSIONS_MEDIA;        \
     string += ");;";
-#define ADD_FILTER_VIDEO( string )   \
-    string += qtr("Video Files");      \
-    string += " ( ";                 \
-    string += EXTENSIONS_VIDEO;      \
+#define ADD_FILTER_VIDEO( string )     \
+    string += qtr( "Video Files" );    \
+    string += " ( ";                   \
+    string += EXTENSIONS_VIDEO;        \
     string += ");;";
-#define ADD_FILTER_AUDIO( string )   \
-    string += qtr("Audio Files");      \
-    string += " ( ";                 \
-    string += EXTENSIONS_AUDIO;      \
+#define ADD_FILTER_AUDIO( string )     \
+    string += qtr( "Audio Files" );    \
+    string += " ( ";                   \
+    string += EXTENSIONS_AUDIO;        \
     string += ");;";
-#define ADD_FILTER_PLAYLIST( string )\
-    string += qtr("Playlist Files");   \
-    string += " ( ";                 \
-    string += EXTENSIONS_PLAYLIST;   \
+#define ADD_FILTER_PLAYLIST( string )  \
+    string += qtr( "Playlist Files" ); \
+    string += " ( ";                   \
+    string += EXTENSIONS_PLAYLIST;     \
     string += ");;";
-#define ADD_FILTER_SUBTITLE( string )\
-    string += qtr("Subtitles Files");   \
-    string += " ( ";                 \
-    string += EXTENSIONS_SUBTITLE;   \
+#define ADD_FILTER_SUBTITLE( string )  \
+    string += qtr( "Subtitles Files" );\
+    string += " ( ";                   \
+    string += EXTENSIONS_SUBTITLE;     \
     string += ");;";
-#define ADD_FILTER_ALL( string )     \
-    string += qtr("All Files");        \
+#define ADD_FILTER_ALL( string )       \
+    string += qtr( "All Files" );      \
     string += " (*.*)";
 
-#define EXT_FILTER_MEDIA        0x01
-#define EXT_FILTER_VIDEO        0x02
-#define EXT_FILTER_AUDIO        0x04
-#define EXT_FILTER_PLAYLIST     0x08
-#define EXT_FILTER_SUBTITLE     0x10
-
 enum {
-    OPEN_FILE_TAB,
-    OPEN_DISC_TAB,
-    OPEN_NETWORK_TAB,
-    OPEN_CAPTURE_TAB,
-    OPEN_TAB_MAX
-};
-
-enum {
-    OPEN_AND_PLAY,
-    OPEN_AND_STREAM,
-    OPEN_AND_SAVE,
-    OPEN_AND_ENQUEUE
+    EXT_FILTER_MEDIA     =  0x01,
+    EXT_FILTER_VIDEO     =  0x02,
+    EXT_FILTER_AUDIO     =  0x04,
+    EXT_FILTER_PLAYLIST  =  0x08,
+    EXT_FILTER_SUBTITLE  =  0x10,
 };
 
 class QEvent;
@@ -92,6 +85,8 @@ class QVLCMenu;
 class DialogsProvider : public QObject
 {
     Q_OBJECT;
+    friend class QVLCMenu;
+
 public:
     static DialogsProvider *getInstance()
     {
@@ -107,7 +102,7 @@ public:
     static void killInstance()
     {
         if( instance ) delete instance;
-        instance=NULL;
+        instance = NULL;
     }
     virtual ~DialogsProvider();
     QTimer *fixed_timer;
@@ -118,11 +113,11 @@ public:
                                 EXT_FILTER_PLAYLIST,
                                 QString path = QString() );
 protected:
-    friend class QVLCMenu;
     QSignalMapper *menusMapper;
     QSignalMapper *menusUpdateMapper;
     QSignalMapper *SDMapper;
     void customEvent( QEvent *);
+
 private:
     DialogsProvider( intf_thread_t *);
     intf_thread_t *p_intf;
@@ -132,7 +127,7 @@ private:
 public slots:
     void doInteraction( intf_dialog_args_t * );
     void menuAction( QObject *);
-    void menuUpdateAction( QObject *);
+    void menuUpdateAction( QObject * );
     void SDMenuAction( QString );
 
     void playlistDialog();
@@ -142,11 +137,16 @@ public slots:
     void prefsDialog();
     void extendedDialog();
     void messagesDialog();
+#ifdef ENABLE_VLM
     void vlmDialog();
+#endif
     void helpDialog();
+#ifdef UPDATE_CHECK
     void updateDialog();
+#endif
     void aboutDialog();
     void gotoTimeDialog();
+    void podcastConfigureDialog();
 
     void simpleOpenDialog();
     void simplePLAppendDialog();
@@ -164,16 +164,16 @@ public slots:
     void PLAppendDir();
     void MLAppendDir();
 
-    void streamingDialog( QString mrl = "", bool b_stream = true );
+    void streamingDialog( QWidget *parent, QString mrl = "",
+            bool b_stream = true );
     void openThenStreamingDialogs();
     void openThenTranscodingDialogs();
 
-    void openPlaylist();
-    void savePlaylist();
+    void openAPlaylist();
+    void saveAPlaylist();
 
-    void podcastConfigureDialog();
+    void loadSubtitlesFile();
 
-    void switchToSkins();
     void quit();
 };