diff options
author | Sebastian Geerken <devnull@localhost> | 2014-10-23 12:29:38 +0200 |
---|---|---|
committer | Sebastian Geerken <devnull@localhost> | 2014-10-23 12:29:38 +0200 |
commit | d39956a7b0a38ebeda147d52aa734e992c425d9f (patch) | |
tree | aa66d82bb61a4c38ff0de04bec8dad62d69f6294 /dw/iterator.hh | |
parent | 3afc8db366cdfed92f5c53a606cfc82e551c9084 (diff) |
More work on drawing: interruptions work now halfway.
Diffstat (limited to 'dw/iterator.hh')
-rw-r--r-- | dw/iterator.hh | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/dw/iterator.hh b/dw/iterator.hh index 9460adc4..773cf303 100644 --- a/dw/iterator.hh +++ b/dw/iterator.hh @@ -263,6 +263,30 @@ public: hpos, vpos); } }; +/** + * \brief Some completely different kind of iterator: ... + */ +class StackingIteratorStack +{ +private: + lout::container::untyped::Vector *vector; + int topPos; + +public: + StackingIteratorStack (); + ~StackingIteratorStack (); + + void intoStringBuffer(lout::misc::StringBuffer *sb); + + inline bool atRealTop () { return topPos == vector->size () - 1; } + inline lout::object::Object *getTop () { return vector->get (topPos); } + + void push (lout::object::Object *object); + void pop (); + void forward (); + void backward (); +}; + } // namespace core } // namespace dw |