5 #include <phonon/audiooutput.h>
6 #include <phonon/volumeslider.h>
7 #include <phonon/mediaobject.h>
8 #include <phonon/seekslider.h>
10 #include "SearchView.h"
11 #include "MediaView.h"
12 #include "AboutView.h"
13 #include "downloadview.h"
18 class MainWindow : public QMainWindow {
23 static MainWindow* instance();
26 Phonon::SeekSlider* getSeekSlider() { return seekSlider; }
31 void showMedia(SearchParams *params);
33 void messageReceived(const QString &message);
35 void startToolbarSearch(QString query);
38 void changeEvent(QEvent *);
39 void closeEvent(QCloseEvent *);
40 bool eventFilter(QObject *obj, QEvent *event);
41 void dragEnterEvent(QDragEnterEvent *event);
42 void dropEvent(QDropEvent *event);
43 void resizeEvent(QResizeEvent *);
46 void checkForUpdate();
47 void gotNewVersion(QString version);
55 void updateUIForFullscreen();
56 void compactView(bool enable);
58 void stateChanged(Phonon::State newState, Phonon::State oldState);
60 void tick(qint64 time);
61 void totalTimeChanged(qint64 time);
62 void setDefinitionMode(QString definitionName);
63 void toggleDefinitionMode();
64 void clearRecentKeywords();
70 void volumeChanged(qreal newVolume);
71 void volumeMutedChanged(bool muted);
74 void showFullscreenToolbar(bool show);
75 void showFullscreenPlaylist(bool show);
77 void setManualPlay(bool enabled);
78 void updateDownloadMessage(QString);
79 void downloadsFinished();
80 void toggleDownloads(bool show);
82 void floatOnTop(bool);
83 void showActionInStatusBar(QAction*, bool show);
84 void showStopAfterThisInStatusBar(bool show);
92 void createToolBars();
93 void createStatusBar();
94 void showWidget(QWidget*);
95 static QString formatTime(qint64 time);
98 UpdateChecker *updateChecker;
101 QStackedWidget *views;
102 QStack<QWidget*> *history;
105 SearchView *searchView;
106 MediaView *mediaView;
108 QWidget *downloadView;
111 QAction *addGadgetAct;
117 QAction *searchFocusAct;
120 QAction *skipBackwardAct;
124 QAction *fullscreenAct;
125 QAction *compactViewAct;
127 QAction *copyPageAct;
128 QAction *copyLinkAct;
129 QAction *volumeUpAct;
130 QAction *volumeDownAct;
131 QAction *volumeMuteAct;
132 QAction *findVideoPartsAct;
136 QAction *moveDownAct;
138 QAction *fetchMoreAct;
148 QToolBar *mainToolBar;
149 SearchLineEdit *toolbarSearch;
150 QToolBar *statusToolBar;
153 Phonon::SeekSlider *seekSlider;
154 Phonon::VolumeSlider *volumeSlider;
155 Phonon::MediaObject *mediaObject;
156 Phonon::AudioOutput *audioOutput;