summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 556728d)
raw | patch | inline | side by side (parent: 556728d)
author | scislac <scislac@users.sourceforge.net> | |
Thu, 8 Oct 2009 21:25:50 +0000 (21:25 +0000) | ||
committer | scislac <scislac@users.sourceforge.net> | |
Thu, 8 Oct 2009 21:25:50 +0000 (21:25 +0000) |
src/live_effects/lpe-knot.cpp | patch | blob | history |
index 793061b2f353ce819581b77f58f3d0fbd0654ac2..340cdf6332f644fcd4cd01ff046c028d5021bfea 100644 (file)
*/
#include "sp-shape.h"
+#include "sp-path.h"
#include "display/curve.h"
#include "live_effects/lpe-knot.h"
#include "svg/svg.h"
#include <2geom/basic-intersection.h>
#include <2geom/exception.h>
+// for change crossing undo
+#include "verbs.h"
+#include "document.h"
+
#include <exception>
namespace Inkscape {
@@ -486,7 +491,12 @@ void collectPathsAndWidths (SPLPEItem const *lpeitem, std::vector<Geom::Path> &p
}
}
else if (SP_IS_SHAPE(lpeitem)) {
- SPCurve * c = sp_shape_get_curve(SP_SHAPE(lpeitem));
+ SPCurve * c = NULL;
+ if (SP_IS_PATH(lpeitem)) {
+ c = sp_path_get_curve_for_edit(SP_PATH(lpeitem));
+ } else {
+ c = sp_shape_get_curve(SP_SHAPE(lpeitem));
+ }
if (c) {
Geom::PathVector subpaths = c->get_pathvector();
for (unsigned i=0; i<subpaths.size(); i++){
//std::cout<<"crossing set to"<<lpe->crossing_points[s].sign<<".\n";
}
lpe->crossing_points_vector.param_set_and_write_new_value(lpe->crossing_points.to_vector());
+ sp_document_done(lpe->getSPDoc(), SP_VERB_DIALOG_LIVE_PATH_EFFECT, /// @todo Is this the right verb?
+ _("Change knot crossing"));
// FIXME: this should not directly ask for updating the item. It should write to SVG, which triggers updating.
- sp_lpe_item_update_patheffect (SP_LPE_ITEM(item), false, true);
+// sp_lpe_item_update_patheffect (SP_LPE_ITEM(item), false, true);
}
}