- * @brief Const forward iterator-like class enabling the iteration over the children nodes of the given paint.
- *
- * For the Scene-type Paint the children nodes represent the paints pushed into the Scene - the order of the children nodes is the same as the order as they were pushed. For the Picture-type Paint the child node is the read image in one of the supported formats. The Shape-type Paint doesn't have any child nodes.
- *
- * @BETA_API
- */
- class Iterator
- {
- const Paint* parent;
- const Paint* child;
-
- public:
- Iterator (Paint* p = nullptr, Paint* c = nullptr);
- const Paint& operator*() const;
- Iterator& operator++();
- Iterator operator++(int);
- friend bool operator!=(const Iterator& it1, const Iterator& it2)
- {
- return it1.child != it2.child;
- };
- friend bool operator==(const Iterator& it1, const Iterator& it2)
- {
- return it1.child == it2.child;
- };
- };
-
- /**
- * @brief Gets the iterator to the first child node.
- *
- * @return The iterator pointing to the first element of the children nodes of the given paint object.
- *
- * @BETA_API
- */
- Iterator begin() const noexcept;
-
- /**
- * @brief Gets the iterator to the past-the end child node.
- *
- * @return The iterator referring to the past-the-end element of the children nodes of the given paint object.
- *
- * @BETA_API
- */
- Iterator end() const noexcept;
-
- /**