5 #include "searchlineedit.h"
6 #include <phonon/audiooutput.h>
7 #include <phonon/volumeslider.h>
8 #include <phonon/mediaobject.h>
9 #include <phonon/seekslider.h>
11 #include "SearchView.h"
12 #include "MediaView.h"
13 #include "AboutView.h"
14 #include "downloadview.h"
18 class MainWindow : public QMainWindow {
25 Phonon::SeekSlider* getSeekSlider() { return seekSlider; }
28 void showMedia(SearchParams *params);
31 void closeEvent(QCloseEvent *);
32 bool eventFilter(QObject *obj, QEvent *event);
33 void dragEnterEvent(QDragEnterEvent *event);
34 void dropEvent(QDropEvent *event);
35 void resizeEvent(QResizeEvent *);
38 void checkForUpdate();
39 void gotNewVersion(QString version);
47 void updateUIForFullscreen();
48 void compactView(bool enable);
50 void stateChanged(Phonon::State newState, Phonon::State oldState);
52 void tick(qint64 time);
53 void totalTimeChanged(qint64 time);
54 void setDefinitionMode(QString definitionName);
55 void toggleDefinitionMode();
56 void clearRecentKeywords();
62 void volumeChanged(qreal newVolume);
63 void volumeMutedChanged(bool muted);
66 void showFullscreenToolbar(bool show);
67 void showFullscreenPlaylist(bool show);
69 // void setAutoplay(bool enabled);
70 void updateDownloadMessage(QString);
71 void downloadsFinished();
72 void toggleDownloads(bool show);
74 void startToolbarSearch(QString query);
80 void createToolBars();
81 void createStatusBar();
84 void showWidget(QWidget*);
85 static QString formatTime(qint64 time);
87 UpdateChecker *updateChecker;
90 QStackedWidget *views;
91 QStack<QWidget*> *history;
94 SearchView *searchView;
97 QWidget *downloadView;
100 QAction *addGadgetAct;
106 QAction *searchFocusAct;
112 QAction *fullscreenAct;
113 QAction *compactViewAct;
115 QAction *copyPageAct;
116 QAction *copyLinkAct;
117 QAction *volumeUpAct;
118 QAction *volumeDownAct;
119 QAction *volumeMuteAct;
120 QAction *findVideoPartsAct;
124 QAction *moveDownAct;
126 QAction *fetchMoreAct;
136 QToolBar *mainToolBar;
137 SearchLineEdit *toolbarSearch;
140 Phonon::SeekSlider *seekSlider;
141 Phonon::VolumeSlider *volumeSlider;
142 Phonon::MediaObject *mediaObject;
143 Phonon::AudioOutput *audioOutput;