]> git.sesse.net Git - kdenlive/blobdiff - src/renderwidget.h
Make render widget a few pixels smaller
[kdenlive] / src / renderwidget.h
index 11e9e08eae77e278d3f8d4f71b54ce36d0ce6970..559d9ed363ec391410d8efdddb0ce8238c054ee9 100644 (file)
 #ifndef RENDERWIDGET_H
 #define RENDERWIDGET_H
 
+#include <kdeversion.h>
+#if KDE_IS_VERSION(4,7,0)
+#include <KMessageWidget>
+#endif
+
 #include <QPushButton>
 #include <QPainter>
 #include <QStyledItemDelegate>
@@ -109,14 +114,14 @@ class RenderWidget : public QDialog
     Q_OBJECT
 
 public:
-    explicit RenderWidget(const QString &projectfolder, bool enableProxy, QWidget * parent = 0);
+    explicit RenderWidget(const QString &projectfolder, bool enableProxy, MltVideoProfile profile, QWidget * parent = 0);
     virtual ~RenderWidget();
     void setGuides(QDomElement guidesxml, double duration);
     void focusFirstVisibleItem();
     void setProfile(MltVideoProfile profile);
     void setRenderJob(const QString &dest, int progress = 0);
     void setRenderStatus(const QString &dest, int status, const QString &error);
-    void setDocumentPath(const QString path);
+    void setDocumentPath(const QString &path);
     void reloadProfiles();
     void setRenderProfile(QMap <QString, QString> props);
     int waitingJobsCount() const;
@@ -132,6 +137,9 @@ public:
     /** @brief Should we render using proxy clips. */
     bool proxyRendering();
 
+protected:
+    virtual QSize sizeHint() const;
+
 public slots:
     void slotExport(bool scriptExport, int zoneIn, int zoneOut, const QString &playlistPath, const QString &scriptPath, bool exportAudio);
 
@@ -170,15 +178,22 @@ private slots:
     void slotSwitchAspectRatio();
     /** @brief Update export audio label depending on current settings. */
     void slotUpdateAudioLabel(int ix);
+    /** @brief Enable / disable the rescale options. */
+    void setRescaleEnabled(bool enable);
 
 private:
     Ui::RenderWidget_UI m_view;
-    MltVideoProfile m_profile;
     QString m_projectFolder;
+    MltVideoProfile m_profile;
     RenderViewDelegate *m_scriptsDelegate;
     RenderViewDelegate *m_jobsDelegate;
     bool m_blockProcessing;
     QString m_renderer;
+
+#if KDE_IS_VERSION(4,7,0)
+    KMessageWidget *m_infoMessage;
+#endif
+
     void parseProfiles(QString meta = QString(), QString group = QString(), QString profile = QString());
     void parseFile(QString exportFile, bool editable);
     void updateButtons();
@@ -188,6 +203,7 @@ private:
     void saveProfile(QDomElement newprofile);
     QList <QListWidgetItem *> m_renderItems;
     QList <QListWidgetItem *> m_renderCategory;
+    void errorMessage(const QString &message);
 
 signals:
     void abortProcess(const QString &url);