#include <QDialog>
#include <QPushButton>
-#include "clipmanager.h"
+#include "projectlist.h"
#include "ui_projectsettings_ui.h"
class ProjectSettings : public QDialog, public Ui::ProjectSettings_UI
Q_OBJECT
public:
- ProjectSettings(ClipManager *manager, int videotracks, int audiotracks, const QString projectPath, bool readOnlyTracks, bool unsavedProject, QWidget * parent = 0);
+ ProjectSettings(ProjectList *projectlist, QMap <QString, QString> metadata, const QStringList &lumas, int videotracks, int audiotracks, const QString& projectPath, bool readOnlyTracks, bool unsavedProject, QWidget * parent = 0);
QString selectedProfile() const;
KUrl selectedFolder() const;
- QPoint tracks();
+ QPoint tracks() const;
bool enableVideoThumbs() const;
bool enableAudioThumbs() const;
- bool deleteUnused() const;
+ bool useProxy() const;
+ bool generateProxy() const;
+ int proxyMinSize() const;
+ bool generateImageProxy() const;
+ int proxyImageMinSize() const;
+ QString proxyParams() const;
+ QString proxyExtension() const;
+ const QMap <QString, QString> metadata() const;
+ static QStringList extractPlaylistUrls(const QString &path);
+ static QStringList extractSlideshowUrls(const KUrl &url);
public slots:
virtual void accept();
void slotUpdateButton(const QString &path);
void slotUpdateFiles(bool cacheOnly = false);
void slotClearCache();
+ void slotDeleteProxies();
void slotDeleteUnused();
+ /** @brief Export project data to text file. */
+ void slotExportToText();
+ /** @brief Update the displayed proxy parameters when user changes selection. */
+ void slotUpdateProxyParams();
+ /** @brief Insert a new metadata field. */
+ void slotAddMetadataField();
+ /** @brief Delete current metadata field. */
+ void slotDeleteMetadataField();
private:
QPushButton *m_buttonOk;
bool m_savedProject;
- ClipManager *m_clipManager;
- bool m_deleteUnused;
+ ProjectList *m_projectList;
+ QStringList m_lumas;
+
+signals:
+ /** @brief User deleted proxies, so disable them in project. */
+ void disableProxies();
};