X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fdvdwizardvob.h;h=64d76e2ae4feb650c43d6dc897ebac0697f73d13;hb=29ceabd2afc227e0fb8b586c567eeaf7921b542e;hp=1208ff39b9f76e5dda68d05e14cf61514a7c3a2f;hpb=9ad93a6f43ea95f4f43acd9bdd226ec2253621e1;p=kdenlive diff --git a/src/dvdwizardvob.h b/src/dvdwizardvob.h index 1208ff39..64d76e2a 100644 --- a/src/dvdwizardvob.h +++ b/src/dvdwizardvob.h @@ -34,9 +34,29 @@ #include #include #include +#include +#include +#include enum DVDFORMAT { PAL, PAL_WIDE, NTSC, NTSC_WIDE }; +class DvdTreeWidget : public QTreeWidget +{ + Q_OBJECT +public: + explicit DvdTreeWidget(QWidget *parent); + +protected: + void dragEnterEvent(QDragEnterEvent * event ); + void dropEvent(QDropEvent * event ); + void mouseDoubleClickEvent( QMouseEvent * ); + void dragMoveEvent(QDragMoveEvent * event); + +signals: + void addNewClip(); + void addClips(const QList&); +}; + class DvdViewDelegate : public QStyledItemDelegate { Q_OBJECT @@ -48,7 +68,7 @@ public: if (index.column() == 0) { painter->save(); QStyleOptionViewItemV4 opt(option); - QRect r1 = option.rect; + QRect r1 = option.rect; QStyle *style = opt.widget ? opt.widget->style() : QApplication::style(); const int textMargin = style->pixelMetric(QStyle::PM_FocusFrameHMargin) + 1; style->drawPrimitive(QStyle::PE_PanelItemViewItem, &opt, painter, opt.widget); @@ -58,7 +78,7 @@ public: painter->drawPixmap(pixmapPoint, pixmap); int decoWidth = pixmap.width() + 2 * textMargin; - QFont font = painter->font(); + QFont font = painter->font(); font.setBold(true); painter->setFont(font); int mid = (int)((r1.height() / 2)); @@ -72,7 +92,9 @@ public: QRectF bounding; painter->drawText(r2, Qt::AlignLeft | Qt::AlignVCenter , subText, &bounding); painter->restore(); - } else QStyledItemDelegate::paint(painter, option, index); + } else { + QStyledItemDelegate::paint(painter, option, index); + } } }; @@ -87,7 +109,6 @@ public: virtual bool isComplete() const; QStringList selectedUrls() const; void setUrl(const QString &url); - QString introMovie() const; DVDFORMAT dvdFormat() const; const QString dvdProfile() const; int duration(int ix) const; @@ -95,20 +116,26 @@ public: QStringList chapters() const; void setProfile(const QString& profile); void clear(); - void updateChapters(QMap chaptersdata); - void setIntroMovie(const QString& path); + const QString introMovie() const; + void setUseIntroMovie(bool use); + void updateChapters(const QMap &chaptersdata); static QString getDvdProfile(DVDFORMAT format); private: Ui::DvdWizardVob_UI m_view; - QString m_errorMessage; + DvdTreeWidget *m_vobList; KCapacityBar *m_capacityBar; + QAction *m_transcodeAction; + bool m_installCheck; #if KDE_IS_VERSION(4,7,0) KMessageWidget *m_warnMessage; #endif + void showProfileError(); + void showError(const QString &error); public slots: - void slotAddVobFile(KUrl url = KUrl(), const QString &chapters = QString()); + void slotAddVobFile(KUrl url = KUrl(), const QString &chapters = QString(), bool checkFormats = true); + void slotAddVobList(const QList &list); void slotCheckProfiles(); private slots: @@ -116,7 +143,11 @@ private slots: void slotDeleteVobFile(); void slotItemUp(); void slotItemDown(); - void changeFormat(); + void slotTranscodeFiles(); + void slotTranscodedClip(KUrl, KUrl); + +signals: + void prepareMonitor(); }; #endif