#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;
Q_OBJECT
public:
KInterface(intf_thread_t *p_intf, QWidget *parent=0,
- const char *name=0);
+ const char *name="VLC");
~KInterface();
public slots:
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();
/** 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 */
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();
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;
KAction *diskOpen;
KAction *streamOpen;
KRecentFilesAction *fileOpenRecent;
- KAction *fileClose;
KAction *fileQuit;
KToggleAction *viewToolBar;
KToggleAction *viewStatusBar;
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;
};
/*****************************************************************************
*****************************************************************************/
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_ */