]> git.sesse.net Git - vlc/blobdiff - modules/gui/kde/interface.h
* Update of README and install files with new information.
[vlc] / modules / gui / kde / interface.h
index 9a7c7bf7de396b2ca87e6c49ed80fda562d14a1a..59534e6163d1b38b4734890525ed8d23d62454a6 100644 (file)
 
 #include "common.h"
 
+#include <kaction.h>
 #include <kmainwindow.h>
 #include <kapplication.h>
 #include <kurl.h>
 #include <qdragobject.h>
 #include <qstring.h>
 #include <qwidget.h>
-
+#include "messages.h"
 class KThread;
 
 class KDiskDialog;
@@ -36,7 +37,7 @@ class KInterface : public KMainWindow
     Q_OBJECT
     public:
         KInterface(intf_thread_t *p_intf, QWidget *parent=0,
-                   const char *name=0);
+                   const char *name="VLC");
         ~KInterface();
 
     public slots:
@@ -44,10 +45,11 @@ class KInterface : public KMainWindow
         void slotFileOpen();
         /** opens a file from the recent files menu */
         void slotFileOpenRecent(const KURL& url);
-        /** asks for saving if the file is modified, then closes the actual file and window*/
-        void slotFileClose();
-        /** closes all open windows by calling close() on each memberList item until the list is empty, then quits the application.
-         * If queryClose() returns false because the user canceled the saveModified() dialog, the closing breaks.
+        /** closes all open windows by calling close() on each
+         * memberList item until the list is empty, then quits the
+         * application.  If queryClose() returns false because the
+         * user canceled the saveModified() dialog, the closing
+         * breaks.
          */
         void slotFileQuit();
         void slotShowPreferences();
@@ -58,10 +60,14 @@ class KInterface : public KMainWindow
         /** toggles the statusbar
          */
         void slotViewStatusBar();
-        /** changes the statusbar contents for the standard label permanently, used to indicate current actions.
+        /** changes the statusbar contents for the standard label
+         * permanently, used to indicate current actions.
          * @param text the text that is displayed in the statusbar
          */
         void slotStatusMsg( const QString &text );
+        void slotShowMessages();
+        void slotShowInfo();
+        void slotSetLanguage( bool, es_descriptor_t * );
 
     protected:
         /** initializes the KActions of the application */
@@ -78,11 +84,13 @@ class KInterface : public KMainWindow
         void slotManage();
 
         /** this slot is called when we drag the position seek bar */
-        void slotSliderMoved( int position );
+        void slotSliderMoved( int );
 
         /** called every time the slider changes values */
         void slotSliderChanged( int position );
 
+        void slotUpdateLanguages();
+        
         void slotOpenDisk();
         void slotOpenStream();
 
@@ -96,8 +104,10 @@ class KInterface : public KMainWindow
         void slotNext();
 
   private:
+        void languageMenus( KActionMenu *, es_descriptor_t *, int );
 
         intf_thread_t    *p_intf;
+        KMessagesWindow *p_messagesWindow;
 
         /** to call p_intf->pf_manage every now and then */
         QTimer            *fTimer;
@@ -118,7 +128,6 @@ class KInterface : public KMainWindow
         KAction             *diskOpen;
         KAction             *streamOpen;
         KRecentFilesAction  *fileOpenRecent;
-        KAction             *fileClose;
         KAction             *fileQuit;
         KToggleAction       *viewToolBar;
         KToggleAction       *viewStatusBar;
@@ -130,7 +139,16 @@ class KInterface : public KMainWindow
         KAction             *fast;
         KAction             *prev;
         KAction             *next;
+        KAction             *messages;
         KAction             *preferences;
+        KAction             *info;
+        KActionMenu         *languages;
+        KActionMenu         *subtitles;
+        KActionCollection   *languageCollection;
+        KActionCollection   *subtitleCollection;
+        KActionMenu         *program;
+        KActionMenu         *title;
+        KActionMenu         *chapter;
 };
 
 /*****************************************************************************
@@ -138,13 +156,13 @@ class KInterface : public KMainWindow
  *****************************************************************************/
 struct intf_sys_t
 {
-    KThread      *p_thread;
-
     KApplication *p_app;
     KInterface   *p_window;
     KAboutData   *p_about;
+    int b_playing;
 
     input_thread_t *p_input;
+    msg_subscription_t *p_msg;
 };
 
 #endif /* _KDE_INTERFACE_H_ */