diff options
| author | Jabier Arraiza Cenoz <jabier.arraiza@marker.es> | 2013-10-14 22:06:48 +0000 |
|---|---|---|
| committer | Jabiertxof <jtx@jtx.marker.es> | 2013-10-14 22:06:48 +0000 |
| commit | fa9188693f47d184c188613c1191c7ff97bdd9bb (patch) | |
| tree | 81c73700af02767e211f1c0c7c36c8012c1403d1 /src | |
| parent | Update to trunk (diff) | |
| parent | Fix tangent calculation for counter-clockwise arcs. (diff) | |
| download | inkscape-fa9188693f47d184c188613c1191c7ff97bdd9bb.tar.gz inkscape-fa9188693f47d184c188613c1191c7ff97bdd9bb.zip | |
Update to trunk
(bzr r11950.1.182)
Diffstat (limited to 'src')
| -rw-r--r-- | src/2geom/elliptical-arc.cpp | 2 | ||||
| -rw-r--r-- | src/live_effects/lpe-rough-hatches.cpp | 6 | ||||
| -rw-r--r-- | src/sp-object.cpp | 29 |
3 files changed, 19 insertions, 18 deletions
diff --git a/src/2geom/elliptical-arc.cpp b/src/2geom/elliptical-arc.cpp index 29e983ad4..d2cb0b707 100644 --- a/src/2geom/elliptical-arc.cpp +++ b/src/2geom/elliptical-arc.cpp @@ -360,7 +360,7 @@ EllipticalArc::pointAndDerivatives(Coord t, unsigned int n) const for ( unsigned int i = 0; i < m; ++i ) { result.push_back( ea->pointAtAngle(angle) ); - angle += M_PI/2; + angle += (_sweep ? M_PI/2 : -M_PI/2); if ( !(angle < 2*M_PI) ) angle -= 2*M_PI; } m = nn / 4; diff --git a/src/live_effects/lpe-rough-hatches.cpp b/src/live_effects/lpe-rough-hatches.cpp index 0579b1016..6ffb913bd 100644 --- a/src/live_effects/lpe-rough-hatches.cpp +++ b/src/live_effects/lpe-rough-hatches.cpp @@ -239,10 +239,10 @@ LPERoughHatches::LPERoughHatches(LivePathEffectObject *lpeobject) : fat_output(_("Generate thick/thin path"), _("Simulate a stroke of varying width"), "fat_output", &wr, this, true), do_bend(_("Bend hatches"), _("Add a global bend to the hatches (slower)"), "do_bend", &wr, this, true), stroke_width_top(_("Thickness: at 1st side:"), _("Width at 'bottom' half-turns"), "stroke_width_top", &wr, this, 1.), - stroke_width_bot(_("at 2nd side:"), _("Width at 'top' half-turns"), "stroke_width_bottom", &wr, this, 1.), + stroke_width_bot(_("At 2nd side:"), _("Width at 'top' half-turns"), "stroke_width_bottom", &wr, this, 1.), // - front_thickness(_("from 2nd to 1st side:"), _("Width from 'top' to 'bottom'"), "front_thickness", &wr, this, 1.), - back_thickness(_("from 1st to 2nd side:"), _("Width from 'bottom' to 'top'"), "back_thickness", &wr, this, .25), + front_thickness(_("From 2nd to 1st side:"), _("Width from 'top' to 'bottom'"), "front_thickness", &wr, this, 1.), + back_thickness(_("From 1st to 2nd side:"), _("Width from 'bottom' to 'top'"), "back_thickness", &wr, this, .25), direction(_("Hatches width and dir"), _("Defines hatches frequency and direction"), "direction", &wr, this, Geom::Point(50,0)), // diff --git a/src/sp-object.cpp b/src/sp-object.cpp index 6fd4de43b..8c54caf48 100644 --- a/src/sp-object.cpp +++ b/src/sp-object.cpp @@ -596,14 +596,11 @@ void SPObject::child_added(Inkscape::XML::Node *child, Inkscape::XML::Node *ref) ochild->invoke_build(object->document, child, object->cloned); } catch (const FactoryExceptions::TypeNotRegistered& e) { - std::string node = e.what(); - - // special cases - if (node.empty()) return; // comments, usually - if (node == "rdf:RDF") return; // no SP node yet - if (node == "inkscape:clipboard") return; // SP node not necessary - - g_warning("TypeNotRegistered exception: %s", e.what()); + // Currenty, there are many node types that do not have + // corresponding classes in the SPObject tree. + // (rdf:RDF, inkscape:clipboard, ...) + // Thus, simply ignore this case for now. + return; } } @@ -617,13 +614,13 @@ void SPObject::release() { } void SPObject::remove_child(Inkscape::XML::Node* child) { - SPObject* object = this; + debug("id=%x, typename=%s", this, g_type_name_from_instance((GTypeInstance*)this)); - debug("id=%x, typename=%s", object, g_type_name_from_instance((GTypeInstance*)object)); - SPObject *ochild = object->get_child_by_repr(child); - g_return_if_fail (ochild != NULL || !strcmp("comment", child->name())); // comments have no objects + SPObject *ochild = this->get_child_by_repr(child); + + // If the xml node has got a corresponding child in the object tree if (ochild) { - object->detach(ochild); + this->detach(ochild); } } @@ -662,7 +659,11 @@ void SPObject::build(SPDocument *document, Inkscape::XML::Node *repr) { sp_object_unref(child, NULL); child->invoke_build(document, rchild, object->cloned); } catch (const FactoryExceptions::TypeNotRegistered& e) { - g_warning("TypeNotRegistered exception: %s", e.what()); + // Currenty, there are many node types that do not have + // corresponding classes in the SPObject tree. + // (rdf:RDF, inkscape:clipboard, ...) + // Thus, simply ignore this case for now. + return; } } } |
