]> git.sesse.net Git - kdenlive/blobdiff - src/profilesdialog.h
Ask to change profile if first clip does not match project profile:
[kdenlive] / src / profilesdialog.h
index 689058405a5c0925ea7f20b60844c577ee360652..92a7fc4e8965db7f0a90ec4f3e9179d519b1814e 100644 (file)
 #ifndef PROFILESDIALOG_H
 #define PROFILESDIALOG_H
 
-#include <QDialog>
 
 #include "definitions.h"
 #include "ui_profiledialog_ui.h"
 
-class ProfilesDialog : public QDialog {
+class ProfilesDialog : public QDialog
+{
     Q_OBJECT
 
 public:
     ProfilesDialog(QWidget * parent = 0);
 
     void fillList(const QString selectedProfile = QString());
-    static QStringList getProfileNames();
-    static QString getProfileDescription(QString name);
     static QMap< QString, QString > getSettingsForProfile(const QString profileName);
     static QMap< QString, QString > getSettingsFromFile(const QString path);
     static QString getPathFromDescription(const QString profileDesc);
     static MltVideoProfile getVideoProfile(QString name);
     static QMap <QString, QString> getProfilesInfo();
+    static void saveProfile(MltVideoProfile &profile);
+    static QString existingProfile(MltVideoProfile profile);
+    static bool existingProfileDescription(const QString &desc);
+    static QString getPathFromProperties(int width, int height, double fps, double par = 0, double dar = 0);
+    static double getStringEval(const MltVideoProfile &profile, QString eval);
+
+protected:
+    virtual void closeEvent(QCloseEvent *event);
 
 private slots:
     void slotUpdateDisplay();
     void slotCreateProfile();
-    void slotSaveProfile();
+    bool slotSaveProfile();
     void slotDeleteProfile();
+    void slotSetDefaultProfile();
+    void slotProfileEdited();
+    virtual void accept();
 
 private:
     Ui::ProfilesDialog_UI m_view;
-    QStringList m_mltProfilesList;
-    QStringList m_customProfilesList;
+    int m_selectedProfileIndex;
+    bool m_profileIsModified;
     bool m_isCustomProfile;
     void saveProfile(const QString path);
+    bool askForSave();
 };