{
Layer::ParamList params;
Layer::DynamicParamList::const_iterator iter;
-
+ // For each parameter of the layer sets the time by the operator()(time)
for(iter=(*context)->dynamic_param_list().begin();iter!=(*context)->dynamic_param_list().end();iter++)
params[iter->first]=(*iter->second)(time);
-
+ // Sets the modified parameter list to the current context layer
(*context)->set_param_list(params);
-
+ // Calls the set time for the next layer in the context.
(*context)->set_time(context+1,time);
+ // Sets the dirty time the current calling time
(*context)->dirty_time_=time;
}
/* === 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 ir 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