1 /***************************************************************************
2 interface.h - description
4 begin : Sun Mar 25 2001
5 copyright : (C) 2001 by andres
7 ***************************************************************************/
9 #ifndef _KDE_INTERFACE_H_
10 #define _KDE_INTERFACE_H_
14 #include <kmainwindow.h>
15 #include <kapplication.h>
17 #include <qdragobject.h>
25 class KRecentFilesAction;
30 /**Main Window for the KDE vlc interface
34 class KInterface : public KMainWindow
38 KInterface(intf_thread_t *p_intf, QWidget *parent=0,
43 /** open a file and load it into the document*/
45 /** opens a file from the recent files menu */
46 void slotFileOpenRecent(const KURL& url);
47 /** asks for saving if the file is modified, then closes the
48 * actual file and window*/
50 /** closes all open windows by calling close() on each
51 * memberList item until the list is empty, then quits the
52 * application. If queryClose() returns false because the
53 * user canceled the saveModified() dialog, the closing
57 void slotShowPreferences();
59 /** toggles the toolbar
61 void slotViewToolBar();
62 /** toggles the statusbar
64 void slotViewStatusBar();
65 /** changes the statusbar contents for the standard label
66 * permanently, used to indicate current actions.
67 * @param text the text that is displayed in the statusbar
69 void slotStatusMsg( const QString &text );
70 void slotShowMessages();
73 /** initializes the KActions of the application */
75 /** sets up the statusbar for the main window by initialzing a statuslabel.
79 virtual void dragEnterEvent( QDragEnterEvent *event );
80 virtual void dropEvent( QDropEvent *event );
83 /** we use this to manage the communication with the vlc core */
86 /** this slot is called when we drag the position seek bar */
87 void slotSliderMoved( int position );
89 /** called every time the slider changes values */
90 void slotSliderChanged( int position );
93 void slotOpenStream();
106 intf_thread_t *p_intf;
107 KMessagesWindow *p_messagesWindow;
109 /** to call p_intf->pf_manage every now and then */
112 /** slider which works well with user movement */
116 KDiskDialog *fDiskDialog;
118 /** open net stream */
119 KNetDialog *fNetDialog;
121 KTitleMenu *fTitleMenu;
123 // KAction pointers to enable/disable actions
127 KRecentFilesAction *fileOpenRecent;
130 KToggleAction *viewToolBar;
131 KToggleAction *viewStatusBar;
141 KAction *preferences;
144 /*****************************************************************************
145 * intf_sys_t: description and status of KDE interface
146 *****************************************************************************/
150 KInterface *p_window;
153 input_thread_t *p_input;
154 msg_subscription_t *p_msg;
157 #endif /* _KDE_INTERFACE_H_ */