Logo Search packages:      
Sourcecode: inkscape version File versions

TextTagAttributes Class Reference

#include <text-tag-attributes.h>

List of all members.

Detailed Description

contains and manages the attributes common to all types of text tag

The five attributes x, y, dx, dy and rotate (todo: textlength, lengthadjust) are permitted on all of text, tspan and textpath elements so we need a class to abstract the management of those attributes from the actual type of the element.

Definition at line 23 of file text-tag-attributes.h.

Public Member Functions

void addToDxDy (unsigned index, NR::Point const &adjust)
void addToRotate (unsigned index, double delta)
bool anyAttributesSet () const
void erase (unsigned start_index, unsigned n)
NR::Point firstXY () const
void insert (unsigned start_index, unsigned n)
void join (TextTagAttributes const &first, TextTagAttributes const &second, unsigned second_index)
void mergeInto (Inkscape::Text::Layout::OptionalTextTagAttrs *output, Inkscape::Text::Layout::OptionalTextTagAttrs const &parent_attrs, unsigned parent_attrs_offset, bool copy_xy, bool copy_dxdyrotate) const
void readFrom (Inkscape::XML::Node const *node)
 Fill in all the fields of attributes from the given node.
bool readSingleAttribute (unsigned key, gchar const *value)
void setFirstXY (NR::Point &point)
bool singleXYCoordinates () const
void split (unsigned index, TextTagAttributes *second)
 TextTagAttributes (Inkscape::Text::Layout::OptionalTextTagAttrs const &attrs)
void transform (NR::Matrix const &matrix, double scale_x, double scale_y, bool extend_zero_length=false)
void writeTo (Inkscape::XML::Node *node) const
 Write out all the contents of attributes to the given node.

Static Private Member Functions

static void eraseSingleAttribute (std::vector< SVGLength > *attr_vector, unsigned start_index, unsigned n)
 Does the work for erase().
static void insertSingleAttribute (std::vector< SVGLength > *attr_vector, unsigned start_index, unsigned n, bool is_xy)
 Does the work for insert().
static void joinSingleAttribute (std::vector< SVGLength > *dest_vector, std::vector< SVGLength > const &first_vector, std::vector< SVGLength > const &second_vector, unsigned second_index)
 Does the work for join().
static void mergeSingleAttribute (std::vector< SVGLength > *output_list, std::vector< SVGLength > const &parent_list, unsigned parent_offset, std::vector< SVGLength > const *overlay_list=NULL)
static void splitSingleAttribute (std::vector< SVGLength > *first_vector, unsigned index, std::vector< SVGLength > *second_vector, bool trimZeros)
 Does the work for split().
static void writeSingleAttribute (Inkscape::XML::Node *node, gchar const *key, std::vector< SVGLength > const &attr_vector)

Private Attributes

Inkscape::Text::Layout::OptionalTextTagAttrs attributes
 This holds the actual values.

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index