QDomDocument m_guidesXml;
QDomElement guidesXml() const;
ClipManager *clipManager();
+ /** @brief Add a clip to the project tree */
void addClip(QDomElement elem, QString clipId, bool createClipItem = true);
void addClipInfo(QDomElement elem, QDomElement orig, QString clipId);
void slotAddClipFile(const KUrl url, const QString group, const QString &groupId = QString());
void deleteClip(const QString &clipId);
int getFramePos(QString duration);
DocClipBase *getBaseClip(const QString &clipId);
- void updateClip(const QString &id);
- void deleteProjectClip(QList <QString> ids);
+ void updateClip(const QString id);
/** Inform application of the audio thumbnails generation progress */
void setThumbsProgress(const QString &message, int progress);
const QString &profilePath() const;
MltVideoProfile mltProfile() const;
const QString description() const;
void setUrl(KUrl url);
- void setProfilePath(QString path);
+ /** update project profile, returns true if fps was changed */
+ bool setProfilePath(QString path);
const QString getFreeClipId();
/** does the document need saving */
bool isModified() const;
/** Returns project folder, used to store project files (titles, effects,...) */
KUrl projectFolder() const;
- /** Used to inform main app of the current document loading progress */
- void loadingProgressed();
void syncGuides(QList <Guide *> guides);
void setZoom(int horizontal, int vertical);
QPoint zoom() const;
bool isTrackLocked(int ix) const;
void setDocumentProperty(const QString &name, const QString &value);
const QString getDocumentProperty(const QString &name) const;
+ /** @brief get the list of renderer properties that were saved in the document */
+ QMap <QString, QString> getRenderProperties() const;
+ void addTrackEffect(int ix, QDomElement effect);
+ void removeTrackEffect(int ix, QDomElement effect);
+ void setTrackEffect(int trackIndex, int effectIndex, QDomElement effect);
+ const EffectsList getTrackEffects(int ix);
+ QDomElement getTrackEffect(int trackIndex, int effectIndex) const;
private:
KUrl m_url;
bool m_modified;
/** Project folder, used to store project files (titles, effects,...) */
KUrl m_projectFolder;
- double m_documentLoadingStep;
- double m_documentLoadingProgress;
bool m_abortLoading;
QMap <QString, QString> m_documentProperties;
QList <TrackInfo> m_tracksList;
-
- QDomDocument createEmptyDocument(const int videotracks, const int audiotracks);
-
void setNewClipResource(const QString &id, const QString &path);
QString searchFileRecursively(const QDir &dir, const QString &matchSize, const QString &matchHash) const;
void moveProjectData(KUrl url);
bool checkDocumentClips(QDomNodeList infoproducers);
+ /** Creates a new project */
+ QDomDocument createEmptyDocument(int videotracks, int audiotracks);
+ QDomDocument createEmptyDocument(QList <TrackInfo> tracks);
public slots:
+ void slotCreateXmlClip(const QString &name, const QDomElement xml, QString group, const QString &groupId);
void slotCreateColorClip(const QString &name, const QString &color, const QString &duration, QString group, const QString &groupId);
- void slotCreateSlideshowClipFile(const QString name, const QString path, int count, const QString duration, const bool loop, const bool fade, const QString &luma_duration, const QString &luma_file, const int softness, QString group, const QString &groupId);
+ void slotCreateSlideshowClipFile(const QString name, const QString path, int count, const QString duration,
+ const bool loop, const bool crop, const bool fade,
+ const QString &luma_duration, const QString &luma_file, const int softness,
+ const QString &animation, QString group, const QString &groupId);
void slotCreateTextClip(QString group, const QString &groupId, const QString &templatePath = QString());
void slotCreateTextTemplateClip(QString group, const QString &groupId, KUrl path);
/** Set to true if document needs saving, false otherwise */