summaryrefslogtreecommitdiffstats
path: root/examples/animation/stickman/animation.h
diff options
context:
space:
mode:
Diffstat (limited to 'examples/animation/stickman/animation.h')
-rw-r--r--examples/animation/stickman/animation.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/examples/animation/stickman/animation.h b/examples/animation/stickman/animation.h
new file mode 100644
index 0000000..22afab6
--- /dev/null
+++ b/examples/animation/stickman/animation.h
@@ -0,0 +1,40 @@
+#ifndef ANIMATION_H
+#define ANIMATION_H
+
+#include <QPointF>
+#include <QList>
+#include <QString>
+
+class Frame;
+class QIODevice;
+class Animation
+{
+public:
+ Animation();
+ ~Animation();
+
+ void setTotalFrames(int totalFrames);
+ int totalFrames() const;
+
+ void setCurrentFrame(int currentFrame);
+ int currentFrame() const;
+
+ void setNodeCount(int nodeCount);
+ int nodeCount() const;
+
+ void setNodePos(int idx, const QPointF &pos);
+ QPointF nodePos(int idx) const;
+
+ QString name() const;
+ void setName(const QString &name);
+
+ void save(QIODevice *device) const;
+ void load(QIODevice *device);
+
+private:
+ QString m_name;
+ QList<Frame *> m_frames;
+ int m_currentFrame;
+};
+
+#endif