added basic video looping backend
This commit is contained in:
parent
b75eb449c0
commit
0d483979cc
3 changed files with 43 additions and 35 deletions
|
@ -45,7 +45,8 @@ Item {
|
|||
|
||||
text: "Repeat"
|
||||
padding: 10
|
||||
onToggled: showPassiveNotification("BOOM!")
|
||||
checked: video.loop
|
||||
onToggled: updateLoop(!video.loop)
|
||||
}
|
||||
|
||||
Controls.ToolSeparator {}
|
||||
|
@ -247,6 +248,13 @@ Item {
|
|||
showPassiveNotification(video.title);
|
||||
}
|
||||
|
||||
function updateLoop(value) {
|
||||
/* changeStartTime(value, false); */
|
||||
videosqlmodel.updateLoop(video.id, value);
|
||||
video.loop = value;
|
||||
showPassiveNotification("Loop changed to: " + video.loop);
|
||||
}
|
||||
|
||||
function changeTitle(text, updateBox) {
|
||||
if (updateBox)
|
||||
videoTitleField.text = text;
|
||||
|
|
|
@ -247,39 +247,39 @@ void VideoSqlModel::updateEndTime(const int &row, const int &endTime) {
|
|||
emit endTimeChanged();
|
||||
}
|
||||
|
||||
// bool VideoSqlModel::loop() const {
|
||||
// return m_loop;
|
||||
// }
|
||||
bool VideoSqlModel::loop() const {
|
||||
return m_loop;
|
||||
}
|
||||
|
||||
// void VideoSqlModel::setloop(const bool &loop) {
|
||||
// if (loop == m_loop)
|
||||
// return;
|
||||
void VideoSqlModel::setLoop(const bool &loop) {
|
||||
if (loop == m_loop)
|
||||
return;
|
||||
|
||||
// m_loop = loop;
|
||||
m_loop = loop;
|
||||
|
||||
// select();
|
||||
// emit loopChanged();
|
||||
// }
|
||||
select();
|
||||
emit loopChanged();
|
||||
}
|
||||
|
||||
// // This function is for updating looping from outside the delegate
|
||||
// void VideoSqlModel::updateloop(const int &row, const bool &loop) {
|
||||
// qDebug() << "Row is " << row;
|
||||
// QSqlQuery query("select id from videos");
|
||||
// QList<int> ids;
|
||||
// while (query.next()) {
|
||||
// ids.append(query.value(0).toInt());
|
||||
// // qDebug() << ids;
|
||||
// }
|
||||
// int id = ids.indexOf(row,0);
|
||||
// This function is for updating looping from outside the delegate
|
||||
void VideoSqlModel::updateLoop(const int &row, const bool &loop) {
|
||||
qDebug() << "Row is " << row;
|
||||
QSqlQuery query("select id from videos");
|
||||
QList<int> ids;
|
||||
while (query.next()) {
|
||||
ids.append(query.value(0).toInt());
|
||||
// qDebug() << ids;
|
||||
}
|
||||
int id = ids.indexOf(row,0);
|
||||
|
||||
// QSqlRecord rowdata = record(id);
|
||||
// qDebug() << rowdata;
|
||||
// rowdata.setValue("loop", loop);
|
||||
// setRecord(id, rowdata);
|
||||
// qDebug() << rowdata;
|
||||
// submitAll();
|
||||
// emit loopChanged();
|
||||
// }
|
||||
QSqlRecord rowdata = record(id);
|
||||
qDebug() << rowdata;
|
||||
rowdata.setValue("loop", loop);
|
||||
setRecord(id, rowdata);
|
||||
qDebug() << rowdata;
|
||||
submitAll();
|
||||
emit loopChanged();
|
||||
}
|
||||
|
||||
QVariantMap VideoSqlModel::getVideo(const int &row) {
|
||||
// qDebug() << "Row we are getting is " << row;
|
||||
|
|
|
@ -16,7 +16,7 @@ class VideoSqlModel : public QSqlTableModel
|
|||
Q_PROPERTY(QUrl filePath READ filePath WRITE setFilePath NOTIFY filePathChanged)
|
||||
Q_PROPERTY(int startTime READ startTime WRITE setStartTime NOTIFY startTimeChanged)
|
||||
Q_PROPERTY(int endTime READ endTime WRITE setEndTime NOTIFY endTimeChanged)
|
||||
// Q_PROPERTY(bool loop READ loop WRITE setLoop NOTIFY loopChanged)
|
||||
Q_PROPERTY(bool loop READ loop WRITE setLoop NOTIFY loopChanged)
|
||||
QML_ELEMENT
|
||||
|
||||
public:
|
||||
|
@ -27,19 +27,19 @@ public:
|
|||
QUrl filePath() const;
|
||||
int startTime() const;
|
||||
int endTime() const;
|
||||
// bool loop() const;
|
||||
bool loop() const;
|
||||
|
||||
void setTitle(const QString &title);
|
||||
void setFilePath(const QUrl &filePath);
|
||||
void setStartTime(const int &startTime);
|
||||
void setEndTime(const int &endTime);
|
||||
// void setLoop(const bool &loop);
|
||||
void setLoop(const bool &loop);
|
||||
|
||||
Q_INVOKABLE void updateTitle(const int &row, const QString &title);
|
||||
Q_INVOKABLE void updateFilePath(const int &row, const QUrl &filePath);
|
||||
Q_INVOKABLE void updateStartTime(const int &row, const int &startTime);
|
||||
Q_INVOKABLE void updateEndTime(const int &row, const int &endTime);
|
||||
// Q_INVOKABLE void updateLoop(const int &row, const bool &loop);
|
||||
Q_INVOKABLE void updateLoop(const int &row, const bool &loop);
|
||||
|
||||
Q_INVOKABLE void newVideo(const QUrl &filePath);
|
||||
Q_INVOKABLE void deleteVideo(const int &row);
|
||||
|
@ -51,7 +51,7 @@ public:
|
|||
signals:
|
||||
void titleChanged();
|
||||
void filePathChanged();
|
||||
// void loopChanged();
|
||||
void loopChanged();
|
||||
void startTimeChanged();
|
||||
void endTimeChanged();
|
||||
|
||||
|
@ -61,7 +61,7 @@ private:
|
|||
QUrl m_filePath;
|
||||
int m_startTime;
|
||||
int m_endTime;
|
||||
// bool m_loop;
|
||||
bool m_loop;
|
||||
};
|
||||
|
||||
#endif //VIDEOSQLMODEL_H
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue