f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm * Inkscape::LivePathEffectParameters
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm* Copyright (C) Johan Engelen 2007 <j.b.c.engelen@utwente.nl>
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm * Released under GNU GPL, read the file 'COPYING' for more information
43f848b15ee40a6c108ae9d965cf06f055ecb7a5johanengelen#include "live_effects/parameter/path-reference.h"
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński Geom::PathVector const & get_pathvector() const;
3cc77bbe681dd68bde92a2c4796cd5020aecb214johanengelen Geom::Piecewise<Geom::D2<Geom::SBasis> > const & get_pwd2();
94f2e710e9cc2e0eb14c8d73abfe77d60f961db2johanengelen virtual bool param_readSVGValue(const gchar * strvalue);
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński void set_new_value (Geom::PathVector const &newpath, bool write_to_svg);
94f2e710e9cc2e0eb14c8d73abfe77d60f961db2johanengelen void set_new_value (Geom::Piecewise<Geom::D2<Geom::SBasis> > const &newpath, bool write_to_svg);
d431763a9ec8059aa4962688de8144319969fb0fjohanengelen virtual void param_editOncanvas(SPItem * item, SPDesktop * dt);
d431763a9ec8059aa4962688de8144319969fb0fjohanengelen virtual void param_setup_nodepath(Inkscape::NodePath::Path *np);
0b2d8abc1011ad865fce3b883ccb2587cb15cc90Johan B. C. Engelen virtual void addCanvasIndicators(SPLPEItem const* lpeitem, std::vector<Geom::PathVector> &hp_vec);
d37634d73670180f99a3e0ea583621373d90ec4fJohan Engelen virtual void param_transform_multiply(Geom::Affine const& /*postmul*/, bool /*set*/);
c776c7f3860f657ea9db62d62e9da98df09b0c70johanengelen bool changed; /* this gets set whenever the path is changed (this is set to true, and then the signal_path_changed signal is emitted).
c776c7f3860f657ea9db62d62e9da98df09b0c70johanengelen * the user must set it back to false if she wants to use it sensibly */
76addc201c409e81eaaa73fe27cc0f79c4db097cKrzysztof Kosiński Geom::PathVector _pathvector; // this is primary data storage, since it is closest to SVG.
1673045848db9654bcb07a81fad34afb4b0623d1johanengelen Geom::Piecewise<Geom::D2<Geom::SBasis> > _pwd2; // secondary, hence the bool must_recalculate_pwd2
1673045848db9654bcb07a81fad34afb4b0623d1johanengelen bool must_recalculate_pwd2; // set when _pathvector was updated, but _pwd2 not
1673045848db9654bcb07a81fad34afb4b0623d1johanengelen void ensure_pwd2(); // ensures _pwd2 is up to date
442e92e07cfe50f73dda0d06638025a65e23a956johanengelen gchar * href; // contains link to other object, e.g. "#path2428", NULL if PathParam contains pathdata itself
588c60840c153d582c076b618f9a548ab002da4eJohan B. C. Engelen sigc::connection linked_transformed_connection;
43f848b15ee40a6c108ae9d965cf06f055ecb7a5johanengelen void ref_changed(SPObject *old_ref, SPObject *new_ref);
43f848b15ee40a6c108ae9d965cf06f055ecb7a5johanengelen void linked_modified(SPObject *linked_obj, guint flags);
588c60840c153d582c076b618f9a548ab002da4eJohan B. C. Engelen void linked_transformed(Geom::Affine const *rel_transf, SPItem *moved_item);
05e1ec4d6f1ccc3a0db3cc13e8a3b18489714f14Johan Engelen virtual void linked_modified_callback(SPObject *linked_obj, guint flags);
588c60840c153d582c076b618f9a548ab002da4eJohan B. C. Engelen virtual void linked_transformed_callback(Geom::Affine const * /*rel_transf*/, SPItem * /*moved_item*/) {};
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm} //namespace LivePathEffect
f07bfd5a05d43a6d11f7cd442f085149092dea88pjrm} //namespace Inkscape