+/* $BEGIN_LICENSE
+
+This file is part of Minitube.
+Copyright 2009, Flavio Tordini <flavio.tordini@gmail.com>
+
+Minitube is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+Minitube is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with Minitube. If not, see <http://www.gnu.org/licenses/>.
+
+$END_LICENSE */
+
#ifndef PLAYLISTMODEL_H
#define PLAYLISTMODEL_H
#include <QtGui>
+#if QT_VERSION >= 0x050000
+#include <QtWidgets>
+#endif
class Video;
class VideoSource;
Video* videoAt( int row ) const;
Video* activeVideo() const;
- int rowForCloneVideo(Video *video) const;
+ int rowForCloneVideo(const QString &videoId) const;
VideoSource* getVideoSource() { return videoSource; }
void setVideoSource(VideoSource *videoSource);
void searchNeeded();
void addVideos(QList<Video*> newVideos);
void searchFinished(int total);
- void searchError(QString message);
- void updateThumbnail();
+ void searchError(const QString &message);
+ void updateVideoSender();
+ void emitDataChanged();
void setHoveredRow(int row);
void clearHover();
+ void updateHoveredRow();
+
void enterAuthorHover();
void exitAuthorHover();
void enterAuthorPressed();
void exitAuthorPressed();
- void updateAuthor();
signals:
void activeRowChanged(int);
bool firstSearch;
QList<Video*> videos;
- int skip;
+ int startIndex;
int max;
int m_activeRow;
int hoveredRow;
bool authorHovered;
bool authorPressed;
+
+ QMutex mutex;
};
#endif