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);
32 void messageReceived(const QString &message);
35 void changeEvent(QEvent *);
36 void closeEvent(QCloseEvent *);
37 bool eventFilter(QObject *obj, QEvent *event);
38 void dragEnterEvent(QDragEnterEvent *event);
39 void dropEvent(QDropEvent *event);
40 void resizeEvent(QResizeEvent *);
43 void checkForUpdate();
44 void gotNewVersion(QString version);
52 void updateUIForFullscreen();
53 void compactView(bool enable);
55 void stateChanged(Phonon::State newState, Phonon::State oldState);
57 void tick(qint64 time);
58 void totalTimeChanged(qint64 time);
59 void setDefinitionMode(QString definitionName);
60 void toggleDefinitionMode();
61 void clearRecentKeywords();
67 void volumeChanged(qreal newVolume);
68 void volumeMutedChanged(bool muted);
71 void showFullscreenToolbar(bool show);
72 void showFullscreenPlaylist(bool show);
74 void setManualPlay(bool enabled);
75 void updateDownloadMessage(QString);
76 void downloadsFinished();
77 void toggleDownloads(bool show);
79 void startToolbarSearch(QString query);
80 void floatOnTop(bool);
81 void showActionInStatusBar(QAction*, bool show);
82 void showStopAfterThisInStatusBar(bool show);
88 void createToolBars();
89 void createStatusBar();
90 void showWidget(QWidget*);
91 static QString formatTime(qint64 time);
94 UpdateChecker *updateChecker;
97 QStackedWidget *views;
98 QStack<QWidget*> *history;
101 SearchView *searchView;
102 MediaView *mediaView;
104 QWidget *downloadView;
107 QAction *addGadgetAct;
113 QAction *searchFocusAct;
116 QAction *skipBackwardAct;
120 QAction *fullscreenAct;
121 QAction *compactViewAct;
123 QAction *copyPageAct;
124 QAction *copyLinkAct;
125 QAction *volumeUpAct;
126 QAction *volumeDownAct;
127 QAction *volumeMuteAct;
128 QAction *findVideoPartsAct;
132 QAction *moveDownAct;
134 QAction *fetchMoreAct;
144 QToolBar *mainToolBar;
145 SearchLineEdit *toolbarSearch;
146 QToolBar *statusToolBar;
149 Phonon::SeekSlider *seekSlider;
150 Phonon::VolumeSlider *volumeSlider;
151 Phonon::MediaObject *mediaObject;
152 Phonon::AudioOutput *audioOutput;