From: Carlos Lopez Date: Sun, 18 Jul 2010 18:04:54 +0000 (+0200) Subject: Documentation for the context class X-Git-Url: https://git.pterodactylus.net/?a=commitdiff_plain;h=abe901f86de422ad66435764f03727d1bf179501;p=synfig.git Documentation for the context class --- diff --git a/synfig-core/src/synfig/context.cpp b/synfig-core/src/synfig/context.cpp index 38e0f67..28d8e41 100644 --- a/synfig-core/src/synfig/context.cpp +++ b/synfig-core/src/synfig/context.cpp @@ -347,13 +347,14 @@ Context::set_time(Time time)const { 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; } diff --git a/synfig-core/src/synfig/context.h b/synfig-core/src/synfig/context.h index c03d312..3419fa7 100644 --- a/synfig-core/src/synfig/context.h +++ b/synfig-core/src/synfig/context.h @@ -1,6 +1,6 @@ /* === S Y N F I G ========================================================= */ /*! \file context.h -** \brief Template Header +** \brief Iterator for the layers behind the current Layer. ** ** $Id$ ** @@ -49,33 +49,40 @@ class Time; 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 hit_check(const Point &point)const; }; // END of class Context