#include <QtNetwork>
#include <phonon/mediaobject.h>
#include <phonon/videowidget.h>
+#include <phonon/seekslider.h>
#include "View.h"
#include "ListModel.h"
-#include "thlibrary/thblackbar.h"
+#include "segmentedcontrol.h"
#include "searchparams.h"
-#include "playlistwidget.h"
#include "loadingwidget.h"
#include "videoareawidget.h"
class DownloadItem;
+class PlaylistView;
+class SidebarWidget;
namespace The {
QMap<QString, QAction*>* globalActions();
void initialize();
// View
- void appear() {
- listView->setFocus();
- }
+ void appear();
void disappear();
QMap<QString, QVariant> metadata() {
QMap<QString, QVariant> metadata;
}
void setMediaObject(Phonon::MediaObject *mediaObject);
- void setSlider(QSlider *slider);
+ void setSlider(Phonon::SeekSlider *slider) { this->seekSlider = slider; }
public slots:
void search(SearchParams *searchParams);
void pause();
void stop();
void skip();
+ void skipBackward();
void skipVideo();
void openWebPage();
void copyWebPage();
void copyVideoLink();
+ void shareViaTwitter();
+ void shareViaFacebook();
+ void shareViaBuffer();
+ void shareViaEmail();
void removeSelected();
void moveUpSelected();
void moveDownSelected();
+ bool isPlaylistVisible();
void setPlaylistVisible(bool visible=true);
void saveSplitterState();
void downloadVideo();
+ void snapshot();
void fullscreen();
+ void findVideoParts();
private slots:
// list/model
void stateChanged(Phonon::State newState, Phonon::State oldState);
void currentSourceChanged(const Phonon::MediaSource source);
void showVideoContextMenu(QPoint point);
+ void aboutToFinish();
// bar
void searchMostRelevant();
void searchMostRecent();
void timerPlay();
#ifdef APP_DEMO
void demoMessage();
+ void updateContinueButton(int);
#endif
void startPlaying();
void downloadStatusChanged();
+ void playbackFinished();
+ void playbackResume();
+ void authorPushed(QModelIndex);
+ void searchAgain();
/*
void downloadProgress(int percent);
*/
private:
+ static QRegExp wordRE(QString s);
SearchParams *searchParams;
QSplitter *splitter;
- PlaylistWidget *playlistWidget;
- QListView *listView;
+ SidebarWidget *sidebar;
+ PlaylistView *listView;
ListModel *listModel;
// sortBar
- THBlackBar *sortBar;
+ SegmentedControl *sortBar;
QAction *mostRelevantAction;
QAction *mostRecentAction;
QAction *mostViewedAction;
// phonon
Phonon::MediaObject *mediaObject;
Phonon::VideoWidget *videoWidget;
+ Phonon::SeekSlider *seekSlider;
// loadingWidget
VideoAreaWidget *videoAreaWidget;
#endif
DownloadItem *downloadItem;
- // QSlider *slider;
};