summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--AnyRip.pro6
-rw-r--r--video.cpp5
-rw-r--r--video.h2
-rw-r--r--videogui.cpp42
-rw-r--r--videogui.h26
5 files changed, 79 insertions, 2 deletions
diff --git a/AnyRip.pro b/AnyRip.pro
index db8f7a5..10d4bce 100644
--- a/AnyRip.pro
+++ b/AnyRip.pro
@@ -8,7 +8,8 @@ SOURCES += main.cpp \
videoqueue.cpp \
encodemp4job.cpp \
uploadjob.cpp \
- titleloadjob.cpp
+ titleloadjob.cpp \
+ videogui.cpp
HEADERS += dvdimagejob.h \
dvdimagejobgui.h \
job.h \
@@ -18,7 +19,8 @@ HEADERS += dvdimagejob.h \
videoqueue.h \
encodemp4job.h \
uploadjob.h \
- titleloadjob.h
+ titleloadjob.h \
+ videogui.h
LIBS += -ldvdcss \
-ldvdread
QT += dbus
diff --git a/video.cpp b/video.cpp
index a4240b9..44450d1 100644
--- a/video.cpp
+++ b/video.cpp
@@ -4,6 +4,7 @@
#include "encodemp4job.h"
#include "uploadjob.h"
#include "titleloadjob.h"
+#include "videogui.h"
#include <QDir>
@@ -102,3 +103,7 @@ QString Video::title() const
{
return m_title;
}
+VideoGui* Video::gui()
+{
+ return new VideoGui(this);
+}
diff --git a/video.h b/video.h
index 0defb42..c36cca0 100644
--- a/video.h
+++ b/video.h
@@ -11,6 +11,7 @@ class EncodeMP4Job;
class UploadJob;
class TitleLoadJob;
class Job;
+class VideoGui;
class Video : public QObject
{
@@ -26,6 +27,7 @@ public:
TitleLoadJob* titleLoadJob();
QList<Job*> availableJobs();
QString title() const;
+ VideoGui* gui();
private:
QBitArray m_jobsCompleted;
QBitArray m_jobsInProgress;
diff --git a/videogui.cpp b/videogui.cpp
new file mode 100644
index 0000000..f837132
--- /dev/null
+++ b/videogui.cpp
@@ -0,0 +1,42 @@
+#include "videogui.h"
+#include <QCheckBox>
+
+VideoGui::VideoGui(Video *video) :
+ m_video(video)
+{
+ m_imageCheck = new QCheckBox(tr("Copied DVD ISO"), this);
+ m_imageCheck->setEnabled(false);
+ m_encodeCheck = new QCheckBox(tr("Encoded MP4"), this);
+ m_encodeCheck->setEnabled(false);
+ m_uploadCheck = new QCheckBox(tr("Uploaded MP4"), this);
+ m_uploadCheck->setEnabled(false);
+ m_titleLoadCheck = new QCheckBox(tr("Title-loaded"), this);
+ m_titleLoadCheck->setEnabled(false);
+ m_subtitleCheck = new QCheckBox(tr("Found Subtitle"), this);
+ m_posterCheck = new QCheckBox(tr("Found Poster"), this);
+ //TODO: actions for checking subtitle and poster check to actually do it
+ connect(video, SIGNAL(jobCompleted(Video::Jobs,bool)), this, SLOT(jobCompleted(Video::Jobs,bool)));
+}
+void VideoGui::jobCompleted(Video::Jobs jobType, bool success)
+{
+ switch (jobType) {
+ case Video::DVDImage:
+ m_imageCheck->setChecked(success);
+ break;
+ case Video::EncodeMP4:
+ m_encodeCheck->setChecked(success);
+ break;
+ case Video::Upload:
+ m_uploadCheck->setChecked(success);
+ break;
+ case Video::TitleLoad:
+ m_titleLoadCheck->setChecked(success);
+ break;
+ case Video::Subtitle:
+ m_subtitleCheck->setChecked(success);
+ break;
+ case Video::Poster:
+ m_posterCheck->setChecked(success);
+ break;
+ }
+}
diff --git a/videogui.h b/videogui.h
new file mode 100644
index 0000000..d087b85
--- /dev/null
+++ b/videogui.h
@@ -0,0 +1,26 @@
+#ifndef VIDEOGUI_H
+#define VIDEOGUI_H
+
+#include <QWidget>
+#include "video.h"
+class QCheckBox;
+class Video;
+
+class VideoGui : public QWidget
+{
+ Q_OBJECT
+public:
+ VideoGui(Video *video);
+private:
+ QCheckBox *m_imageCheck;
+ QCheckBox *m_encodeCheck;
+ QCheckBox *m_uploadCheck;
+ QCheckBox *m_titleLoadCheck;
+ QCheckBox *m_subtitleCheck;
+ QCheckBox *m_posterCheck;
+ Video *m_video;
+private slots:
+ void jobCompleted(Video::Jobs jobType, bool success);
+};
+
+#endif // VIDEOGUI_H