/* === S Y N F I G ========================================================= */
/*! \file context.h
-** \brief Template Header
+** \brief Iterator for the layers behind the current Layer.
**
** $Id$
**
class Rect;
/*! \class Context
-** \todo writeme
-** \see Layer, Canvas */
+** \brief Context is a class to warp the iterator for a double queue of layers
+* (that is the CanvasBase).
+** \see Layer, Canvas, CanvasBase */
class Context : public CanvasBase::const_iterator
{
public:
Context() { }
+ //! Constructor based on other CanvasBase iterator
Context(const CanvasBase::const_iterator &x):CanvasBase::const_iterator(x) { }
+ //!Assignation operator
Context operator=(const CanvasBase::const_iterator &x)
{ return CanvasBase::const_iterator::operator=(x); }
- /*! \todo write me */
+ //! Returns the color of the context at the Point \pos.
+ //! It is the blended color of the context
Color get_color(const Point &pos)const;
- /*! \todo write me */
+ //! With a given \quality and a given render description it puts the context
+ //! blend result into the painting \surface */
bool accelerated_render(Surface *surface,int quality, const RendDesc &renddesc, ProgressCallback *cb) const;
- /*! \todo write me */
+ //! Sets the context to the Time \time. It is done recursively.
void set_time(Time time)const;
- /*! \writeme */
+ //! Sets the context to the Time \time. It is done recursively. Vector \pos is not used
void set_time(Time time,const Vector &pos)const;
+ //! Returns the bounding rectangle of all the context.
+ //! It is the union of all the layers's bounding rectangle.
Rect get_full_bounding_rect()const;
- /*! \writeme */
+ //! Returns the first context's layer's handle that intesects the given \point */
etl::handle<Layer> hit_check(const Point &point)const;
}; // END of class Context