Repository navigation
Expand file tree
/
Copy pathmediaobject.cpp
More file actions
executable file
·80 lines (72 loc) · 2.57 KB
/
Copy pathmediaobject.cpp
File metadata and controls
executable file
·80 lines (72 loc) · 2.57 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#include "mediaobject.h"
MediaObject::MediaObject(QString title, QString link, QString progress = "") :
mTitle(title),
mLink(link),
mProgress(progress),
mIsStarted(false),
mIsFinished(false),
mIsFailed(false),
mIsSkipped(false),
mIsContainer(false),
mMaxSize(""),
mSpeed(""),
mTime(""),
mDownloadedSize(""),
treeNode(nullptr)
{
}
QVariant MediaObject::getData(MediaObject::Data data)
{
switch(data) {
case MediaObject::DATA_LINK: return mLink;;
case MediaObject::DATA_TITLE: return mTitle;
case MediaObject::DATA_PROGRESS: return mProgress;
case MediaObject::DATA_IS_FINISHED: return mIsFinished;
case MediaObject::DATA_IS_STARTED: return mIsStarted;
case MediaObject::DATA_IS_CONTAINER: return mIsContainer;
case MediaObject::DATA_IS_FAILED: return mIsFailed;
case MediaObject::DATA_IS_SKIPPED: return mIsSkipped;
case MediaObject::DATA_MAX_SIZE: return mMaxSize;
case MediaObject::DATA_SPEED: return mSpeed;
case MediaObject::DATA_TIME: return mTime;
case MediaObject::DATA_DOWNLOADED_SIZE: return mDownloadedSize;
default: throw; // TODO: proper error handling
}
}
void MediaObject::setData(MediaObject::Data data, QVariant value)
{
switch(data) {
case MediaObject::DATA_LINK: mLink = value.toString(); return;
case MediaObject::DATA_TITLE: mTitle = value.toString(); return;
case MediaObject::DATA_PROGRESS: mProgress = value.toString(); return;
case MediaObject::DATA_IS_FINISHED: mIsFinished = value.toBool(); return;
case MediaObject::DATA_IS_STARTED: mIsStarted = value.toBool(); return;
case MediaObject::DATA_IS_CONTAINER: mIsContainer = value.toBool(); return;
case MediaObject::DATA_IS_FAILED: mIsFailed = value.toBool(); return;
case MediaObject::DATA_IS_SKIPPED: mIsSkipped = value.toBool(); return;
case MediaObject::DATA_MAX_SIZE: mMaxSize = value.toString(); return;
case MediaObject::DATA_SPEED: mSpeed = value.toString(); return;
case MediaObject::DATA_TIME: mTime = value.toString(); return;
case MediaObject::DATA_DOWNLOADED_SIZE: mDownloadedSize = value.toString(); return;
default: throw; // TODO: proper error handling
}
}
Settings *MediaObject::getSettings()
{
return &this->settings;
}
QVariant MediaObject::getSettingsValue(QString key)
{
if(this->treeNode) {
return this->treeNode->getSettingsValue(key);
}
return Settings::getInstance().get(key);
}
void MediaObject::setTreeNode(TreeNode *treeNode)
{
this->treeNode = treeNode;
}
TreeNode *MediaObject::getTreeNode()
{
return this->treeNode;
}