]> git.sven.stormbind.net Git - sven/vym.git/blobdiff - src/slideitem.h
New upstream version 2.9.22
[sven/vym.git] / src / slideitem.h
diff --git a/src/slideitem.h b/src/slideitem.h
new file mode 100644 (file)
index 0000000..097ecbd
--- /dev/null
@@ -0,0 +1,72 @@
+#ifndef SLIDEITEM_H
+#define SLIDEITEM_H
+
+#include <QEasingCurve>
+#include <QList>
+#include <QVariant>
+#include <QVector>
+
+#include "xmlobj.h"
+
+class TreeItem;
+class SlideModel;
+
+class SlideItem : public XMLObj {
+  public:
+    SlideItem(const QVector<QVariant> &data, SlideItem *parent = 0,
+              SlideModel *sm = 0);
+    ~SlideItem();
+    SlideModel *getModel();
+    uint getID();
+    SlideItem *child(int number);
+    int childCount() const;
+    int columnCount() const;
+    QVariant data(int column) const;
+    int row() const;
+    void insertItem(int pos, SlideItem *si);
+    void removeItem(int pos);
+    bool insertChildren(int position, int count, int columns);
+    bool insertColumns(int position, int columns);
+    SlideItem *parent();
+    bool removeChildren(int position, int count);
+    bool removeColumns(int position, int columns);
+    int childNumber() const;
+    bool setData(int column, const QVariant &value);
+    void setName(const QString &n);
+    QString getName();
+    void setTreeItem(TreeItem *ti);
+    int getTreeItemID();
+    void setInScript(const QString &);
+    QString getInScript();
+    void setOutScript(const QString &);
+    QString getOutScript();
+    void setZoomFactor(const qreal &);
+    qreal getZoomFactor();
+    void setRotationAngle(const qreal &);
+    qreal getRotationAngle();
+    void setDuration(const int &);
+    int getDuration();
+    void setEasingCurve(const QEasingCurve &);
+    QEasingCurve getEasingCurve();
+    QString saveToDir();
+
+  private:
+    SlideModel *model;
+    QList<SlideItem *> childItems;
+    QVector<QVariant> itemData;
+    SlideItem *parentItem;
+
+    static uint idLastSlide; //! Last used unique ID for slide
+    uint slideID;
+
+    QString inScript;
+    QString outScript;
+
+    int treeItemID;
+    qreal zoomFactor;
+    qreal rotationAngle;
+    int duration;
+    QEasingCurve easingCurve;
+};
+
+#endif