X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Fsp-line.cpp;h=a3964b171daed3db25feccb635b328c00ce6e346;hb=7b51296159813ffbc382e4decef735f222ee23f8;hp=9be7cf928a0f9307b5a30379b23d16f573cf3f08;hpb=e7333a0a54c8d33b7397406dd76938aa430836d5;p=inkscape.git diff --git a/src/sp-line.cpp b/src/sp-line.cpp index 9be7cf928..a3964b171 100644 --- a/src/sp-line.cpp +++ b/src/sp-line.cpp @@ -28,10 +28,10 @@ static void sp_line_init (SPLine *line); static void sp_line_build (SPObject * object, SPDocument * document, Inkscape::XML::Node * repr); static void sp_line_set (SPObject *object, unsigned int key, const gchar *value); -static Inkscape::XML::Node *sp_line_write (SPObject *object, Inkscape::XML::Node *repr, guint flags); +static Inkscape::XML::Node *sp_line_write (SPObject *object, Inkscape::XML::Document *doc, Inkscape::XML::Node *repr, guint flags); static gchar *sp_line_description (SPItem * item); -static NR::Matrix sp_line_set_transform(SPItem *item, NR::Matrix const &xform); +static Geom::Matrix sp_line_set_transform(SPItem *item, Geom::Matrix const &xform); static void sp_line_update (SPObject *object, SPCtx *ctx, guint flags); static void sp_line_set_shape (SPShape *shape); @@ -159,12 +159,11 @@ sp_line_update (SPObject *object, SPCtx *ctx, guint flags) static Inkscape::XML::Node * -sp_line_write (SPObject *object, Inkscape::XML::Node *repr, guint flags) +sp_line_write (SPObject *object, Inkscape::XML::Document *xml_doc, Inkscape::XML::Node *repr, guint flags) { SPLine *line = SP_LINE (object); if ((flags & SP_OBJECT_WRITE_BUILD) && !repr) { - Inkscape::XML::Document *xml_doc = sp_document_repr_doc(SP_OBJECT_DOCUMENT(object)); repr = xml_doc->createElement("svg:line"); } @@ -178,7 +177,7 @@ sp_line_write (SPObject *object, Inkscape::XML::Node *repr, guint flags) sp_repr_set_svg_double(repr, "y2", line->y2.computed); if (((SPObjectClass *) (parent_class))->write) - ((SPObjectClass *) (parent_class))->write (object, repr, flags); + ((SPObjectClass *) (parent_class))->write (object, xml_doc, repr, flags); return repr; } @@ -189,28 +188,28 @@ sp_line_description(SPItem */*item*/) return g_strdup(_("Line")); } -static NR::Matrix -sp_line_set_transform (SPItem *item, NR::Matrix const &xform) +static Geom::Matrix +sp_line_set_transform (SPItem *item, Geom::Matrix const &xform) { SPLine *line = SP_LINE (item); - NR::Point points[2]; + Geom::Point points[2]; - points[0] = NR::Point(line->x1.computed, line->y1.computed); - points[1] = NR::Point(line->x2.computed, line->y2.computed); + points[0] = Geom::Point(line->x1.computed, line->y1.computed); + points[1] = Geom::Point(line->x2.computed, line->y2.computed); points[0] *= xform; points[1] *= xform; - line->x1.computed = points[0][NR::X]; - line->y1.computed = points[0][NR::Y]; - line->x2.computed = points[1][NR::X]; - line->y2.computed = points[1][NR::Y]; + line->x1.computed = points[0][Geom::X]; + line->y1.computed = points[0][Geom::Y]; + line->x2.computed = points[1][Geom::X]; + line->y2.computed = points[1][Geom::Y]; - sp_item_adjust_stroke(item, NR::expansion(xform)); + sp_item_adjust_stroke(item, xform.descrim()); SP_OBJECT (item)->requestDisplayUpdate(SP_OBJECT_MODIFIED_FLAG | SP_OBJECT_STYLE_MODIFIED_FLAG); - return NR::identity(); + return Geom::identity(); } static void @@ -218,12 +217,12 @@ sp_line_set_shape (SPShape *shape) { SPLine *line = SP_LINE (shape); - SPCurve *c = sp_curve_new (); + SPCurve *c = new SPCurve (); - sp_curve_moveto (c, line->x1.computed, line->y1.computed); - sp_curve_lineto (c, line->x2.computed, line->y2.computed); + c->moveto(line->x1.computed, line->y1.computed); + c->lineto(line->x2.computed, line->y2.computed); sp_shape_set_curve_insync (shape, c, TRUE); // *_insync does not call update, avoiding infinite recursion when set_shape is called by update - sp_curve_unref (c); + c->unref(); }