#include <QVBoxLayout>
#include <QItemDelegate>
#include <QPainter>
-#include <QGraphicsScene>
-#include <QGraphicsTextItem>
-#include <QGraphicsPixmapItem>
-#include <QGraphicsRectItem>
#include <QProcess>
#include <KDebug>
#include <KTemporaryFile>
-#include "ui_dvdwizardvob_ui.h"
-#include "ui_dvdwizardmenu_ui.h"
-#include "ui_dvdwizardiso_ui.h"
+#include "dvdwizardvob.h"
+#include "dvdwizardmenu.h"
+#include "dvdwizardchapters.h"
#include "ui_dvdwizardstatus_ui.h"
+#include "ui_dvdwizardchapters_ui.h"
-class DvdWizard : public QWizard {
+typedef QMap <QString, QRect> stringRectMap;
+
+class DvdWizard : public QWizard
+{
Q_OBJECT
public:
- DvdWizard(const QString &url = QString(), bool isPal = true, QWidget * parent = 0);
+ explicit DvdWizard(MonitorManager *manager, const QString &url = QString(), QWidget * parent = 0);
virtual ~DvdWizard();
+ void processSpumux();
private:
- Ui::DvdWizardVob_UI m_vob;
- Ui::DvdWizardMenu_UI m_menu;
- Ui::DvdWizardIso_UI m_iso;
+ DvdWizardVob *m_pageVob;
+ DvdWizardMenu *m_pageMenu;
Ui::DvdWizardStatus_UI m_status;
- bool m_isPal;
- QGraphicsScene *m_scene;
- QGraphicsTextItem *m_button;
- QGraphicsPixmapItem *m_background;
- QGraphicsRectItem *m_color;
- QGraphicsRectItem *m_safeRect;
- int m_width;
- int m_height;
- KTemporaryFile m_menuFile;
+#if KDE_IS_VERSION(4,7,0)
+ KMessageWidget *m_isoMessage;
+#endif
+
+ DvdWizardChapters *m_pageChapters;
KTemporaryFile m_authorFile;
+ KTemporaryFile m_menuFile;
+ KTemporaryFile m_menuVobFile;
+ KTemporaryFile m_letterboxMovie;
+ QProcess *m_dvdauthor;
+ QProcess *m_mkiso;
+ QProcess m_menuJob;
+ QString m_creationLog;
+ QListWidgetItem *m_vobitem;
+ KTemporaryFile m_selectedImage;
+ KTemporaryFile m_selectedLetterImage;
+ KTemporaryFile m_highlightedImage;
+ KTemporaryFile m_highlightedLetterImage;
+ KTemporaryFile m_menuVideo;
+ KTemporaryFile m_menuFinalVideo;
+ KTemporaryFile m_menuImageBackground;
+ void cleanup();
+ QMenu *m_burnMenu;
+ void errorMessage(const QString &text);
+ void infoMessage(const QString &text);
+ void processDvdauthor(QString menuMovieUrl = QString(), stringRectMap buttons = stringRectMap(), QStringList buttonsTarget = QStringList());
private slots:
- void slotCheckVobList(const QString &text);
- void buildButton();
- void buildColor();
- void buildImage();
- void checkBackground();
void slotPageChanged(int page);
void slotRenderFinished(int exitCode, QProcess::ExitStatus status);
void slotIsoFinished(int exitCode, QProcess::ExitStatus status);
void generateDvd();
+ void slotPreview();
+ void slotBurn();
+ void slotGenerate();
+ void slotAbort();
+ void slotLoad();
+ void slotSave();
+ void slotShowRenderInfo();
+ void slotShowIsoInfo();
+ void slotProcessMenuStatus(int, QProcess::ExitStatus status);
+ void slotprepareMonitor();
};
#endif