1 /***************************************************************************
2 kde_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_
12 #include "kde_common.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 actual file and window*/
49 /** closes all open windows by calling close() on each memberList item until the list is empty, then quits the application.
50 * If queryClose() returns false because the user canceled the saveModified() dialog, the closing breaks.
53 void slotShowPreferences();
55 /** toggles the toolbar
57 void slotViewToolBar();
58 /** toggles the statusbar
60 void slotViewStatusBar();
61 /** changes the statusbar contents for the standard label permanently, used to indicate current actions.
62 * @param text the text that is displayed in the statusbar
64 void slotStatusMsg( const QString &text );
67 /** initializes the KActions of the application */
69 /** sets up the statusbar for the main window by initialzing a statuslabel.
73 virtual void dragEnterEvent( QDragEnterEvent *event );
74 virtual void dropEvent( QDropEvent *event );
77 /** we use this to manage the communication with the vlc core */
80 /** this slot is called when we drag the position seek bar */
81 void slotSliderMoved( int position );
83 /** called every time the slider changes values */
84 void slotSliderChanged( int position );
87 void slotOpenStream();
100 intf_thread_t *p_intf;
102 /** to call p_intf->pf_manage every now and then */
105 /** slider which works well with user movement */
109 KDiskDialog *fDiskDialog;
111 /** open net stream */
112 KNetDialog *fNetDialog;
114 KTitleMenu *fTitleMenu;
116 // KAction pointers to enable/disable actions
120 KRecentFilesAction *fileOpenRecent;
123 KToggleAction *viewToolBar;
124 KToggleAction *viewStatusBar;
133 KAction *preferences;
136 /*****************************************************************************
137 * intf_sys_t: description and status of KDE interface
138 *****************************************************************************/
144 KInterface *p_window;
147 input_thread_t *p_input;
150 #endif /* _KDE_INTERFACE_H_ */