Logo Search packages:      
Sourcecode: inkscape version File versions  Download package

Classes | Defines | Functions | Variables

sp-gradient.cpp File Reference

#include <cstring>
#include <string>
#include <libnr/nr-matrix-fns.h>
#include <libnr/nr-matrix-ops.h>
#include <libnr/nr-matrix-scale-ops.h>
#include <2geom/transforms.h>
#include <sigc++/functors/ptr_fun.h>
#include <sigc++/adaptors/bind.h>
#include "libnr/nr-gradient.h"
#include "libnr/nr-pixops.h"
#include "svg/svg.h"
#include "svg/svg-color.h"
#include "svg/css-ostringstream.h"
#include "attributes.h"
#include "document-private.h"
#include "gradient-chemistry.h"
#include "sp-gradient-reference.h"
#include "sp-linear-gradient.h"
#include "sp-radial-gradient.h"
#include "sp-stop.h"
#include "streq.h"
#include "uri.h"
#include "xml/repr.h"
#include "macros.h"
Include dependency graph for sp-gradient.cpp:

Go to the source code of this file.

Classes

struct  SPLGPainter
 A context with linear gradient, painter, and gradient renderer. More...
struct  SPRGPainter
 A context with radial gradient, painter, and gradient renderer. More...

Defines

#define __SP_GRADIENT_C__
#define NCOLORS   NR_GRADIENT_VECTOR_LENGTH
 Has to be power of 2.
#define noSP_GRADIENT_VERBOSE
#define SP_MACROS_SILENT

Functions

static SPGradientchase_hrefs (SPGradient *const src, bool(*match)(SPGradient const *))
static void gradient_ref_changed (SPObject *old_ref, SPObject *ref, SPGradient *gradient)
static void gradient_ref_modified (SPObject *href, guint flags, SPGradient *gradient)
static bool has_spread_set (SPGradient const *gr)
static bool has_stops (SPGradient const *gr)
static bool has_units_set (SPGradient const *gr)
static void sp_gradient_build (SPObject *object, SPDocument *document, Inkscape::XML::Node *repr)
static void sp_gradient_child_added (SPObject *object, Inkscape::XML::Node *child, Inkscape::XML::Node *ref)
static void sp_gradient_class_init (SPGradientClass *klass)
void sp_gradient_ensure_colors (SPGradient *gr)
void sp_gradient_ensure_vector (SPGradient *gradient)
Geom::Matrix sp_gradient_get_g2d_matrix (SPGradient const *gr, Geom::Matrix const &ctm, Geom::Rect const &bbox)
Geom::Matrix sp_gradient_get_gs2d_matrix (SPGradient const *gr, Geom::Matrix const &ctm, Geom::Rect const &bbox)
SPGradientSpread sp_gradient_get_spread (SPGradient *gradient)
GType sp_gradient_get_type ()
SPGradientUnits sp_gradient_get_units (SPGradient *gradient)
SPGradientsp_gradient_get_vector (SPGradient *gradient, bool force_vector)
static void sp_gradient_init (SPGradient *gr)
static bool sp_gradient_invalidate_vector (SPGradient *gr)
static void sp_gradient_modified (SPObject *object, guint flags)
static void sp_gradient_rebuild_vector (SPGradient *gr)
static void sp_gradient_release (SPObject *object)
static void sp_gradient_remove_child (SPObject *object, Inkscape::XML::Node *child)
void sp_gradient_render_vector_block_rgb (SPGradient *gradient, guchar *buf, gint const width, gint const height, gint const , gint const pos, gint const span, bool const horizontal)
void sp_gradient_render_vector_block_rgba (SPGradient *const gradient, guchar *buf, gint const width, gint const height, gint const rowstride, gint const pos, gint const span, bool const horizontal)
static void sp_gradient_render_vector_line_rgba (SPGradient *const gradient, guchar *buf, gint const len, gint const pos, gint const span)
void sp_gradient_repr_clear_vector (SPGradient *gr)
void sp_gradient_repr_write_vector (SPGradient *gr)
static void sp_gradient_set (SPObject *object, unsigned key, gchar const *value)
void sp_gradient_set_gs2d_matrix (SPGradient *gr, Geom::Matrix const &ctm, Geom::Rect const &bbox, Geom::Matrix const &gs2d)
void sp_gradient_set_spread (SPGradient *gr, SPGradientSpread spread)
void sp_gradient_set_units (SPGradient *gr, SPGradientUnits units)
static Inkscape::XML::Nodesp_gradient_write (SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags)
static void sp_lg_fill (SPPainter *painter, NRPixBlock *pb)
static void sp_lineargradient_build (SPObject *object, SPDocument *document, Inkscape::XML::Node *repr)
static void sp_lineargradient_class_init (SPLinearGradientClass *klass)
GType sp_lineargradient_get_type ()
static void sp_lineargradient_init (SPLinearGradient *lg)
static void sp_lineargradient_painter_free (SPPaintServer *ps, SPPainter *painter)
static SPPaintersp_lineargradient_painter_new (SPPaintServer *ps, Geom::Matrix const &full_transform, Geom::Matrix const &parent_transform, NRRect const *bbox)
static void sp_lineargradient_set (SPObject *object, unsigned key, gchar const *value)
void sp_lineargradient_set_position (SPLinearGradient *lg, gdouble x1, gdouble y1, gdouble x2, gdouble y2)
static Inkscape::XML::Nodesp_lineargradient_write (SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags)
static void sp_radialgradient_build (SPObject *object, SPDocument *document, Inkscape::XML::Node *repr)
static void sp_radialgradient_class_init (SPRadialGradientClass *klass)
GType sp_radialgradient_get_type ()
static void sp_radialgradient_init (SPRadialGradient *rg)
static void sp_radialgradient_painter_free (SPPaintServer *ps, SPPainter *painter)
static SPPaintersp_radialgradient_painter_new (SPPaintServer *ps, Geom::Matrix const &full_transform, Geom::Matrix const &parent_transform, NRRect const *bbox)
static void sp_radialgradient_set (SPObject *object, unsigned key, gchar const *value)
void sp_radialgradient_set_position (SPRadialGradient *rg, gdouble cx, gdouble cy, gdouble fx, gdouble fy, gdouble r)
static Inkscape::XML::Nodesp_radialgradient_write (SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags)
static void sp_rg_fill (SPPainter *painter, NRPixBlock *pb)
static void sp_stop_build (SPObject *object, SPDocument *document, Inkscape::XML::Node *repr)
static void sp_stop_class_init (SPStopClass *klass)
static SPColor sp_stop_get_color (SPStop const *const stop)
guint32 sp_stop_get_rgba32 (SPStop const *const stop)
GType sp_stop_get_type ()
static void sp_stop_init (SPStop *stop)
static void sp_stop_set (SPObject *object, unsigned key, gchar const *value)
static Inkscape::XML::Nodesp_stop_write (SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags)

Variables

static SPPaintServerClassgradient_parent_class
static SPGradientClasslg_parent_class
static SPGradientClassrg_parent_class
static SPObjectClassstop_parent_class

Detailed Description

SPGradient, SPStop, SPLinearGradient, SPRadialGradient.

Definition in file sp-gradient.cpp.


Generated by  Doxygen 1.6.0   Back to index