diff options
| author | Jabiertxof <jtx@jtx> | 2016-12-16 22:49:53 +0000 |
|---|---|---|
| committer | Jabiertxof <jtx@jtx> | 2016-12-16 22:49:53 +0000 |
| commit | 5927b3bf5d9d8dcc9f519b4b9060669bd2599a28 (patch) | |
| tree | 3b51f70f9b467bb016c678afcaae650e3afd395b /src/live_effects/lpe-mirror_symmetry.h | |
| parent | working with mirrors (diff) | |
| download | inkscape-5927b3bf5d9d8dcc9f519b4b9060669bd2599a28.tar.gz inkscape-5927b3bf5d9d8dcc9f519b4b9060669bd2599a28.zip | |
Rollback 15315
(bzr r15295.1.25)
Diffstat (limited to 'src/live_effects/lpe-mirror_symmetry.h')
| -rw-r--r-- | src/live_effects/lpe-mirror_symmetry.h | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/src/live_effects/lpe-mirror_symmetry.h b/src/live_effects/lpe-mirror_symmetry.h index 12ceebaf8..7b090ed82 100644 --- a/src/live_effects/lpe-mirror_symmetry.h +++ b/src/live_effects/lpe-mirror_symmetry.h @@ -15,10 +15,10 @@ * * Released under GNU GPL, read the file 'COPYING' for more information */ - +#include <gtkmm.h> #include "live_effects/effect.h" -#include "live_effects/parameter/parameter.h" #include "live_effects/parameter/text.h" +#include "live_effects/parameter/parameter.h" #include "live_effects/parameter/point.h" #include "live_effects/parameter/path.h" #include "live_effects/parameter/enum.h" @@ -27,6 +27,11 @@ namespace Inkscape { namespace LivePathEffect { +namespace MS { +// we need a separate namespace to avoid clashes with LPEPerpBisector +class KnotHolderEntityCenterMirrorSymmetry; +} + enum ModeType { MT_V, MT_H, @@ -46,13 +51,14 @@ public: virtual Geom::PathVector doEffect_path (Geom::PathVector const & path_in); virtual void doOnRemove (SPLPEItem const* /*lpeitem*/); virtual void doOnVisibilityToggled(SPLPEItem const* /*lpeitem*/); -// virtual Gtk::Widget * newWidget(); + virtual Gtk::Widget *newWidget(); void processObjects(LpeAction lpe_action); - void createMirror(SPLPEItem *origin, Geom::Affine transform); + /* the knotholder entity classes must be declared friends */ + friend class MS::KnotHolderEntityCenterMirrorSymmetry; + void createMirror(SPLPEItem *origin, Geom::Affine transform, const char * id); // void cloneAttrbutes(Inkscape::XML::Node * origin, Inkscape::XML::Node * dest, const char * first_attribute, ...); -// void syncMirror(SPLPEItem *origin, const char * id); void cloneAttrbutes(SPObject *origin, SPObject *dest, bool live, const char * first_attribute, ...); - bool allow_split(); + void addKnotHolderEntities(KnotHolder *knotholder, SPDesktop *desktop, SPItem *item); protected: virtual void addCanvasIndicators(SPLPEItem const *lpeitem, std::vector<Geom::PathVector> &hp_vec); @@ -66,11 +72,13 @@ private: BoolParam split_elements; PointParam start_point; PointParam end_point; - PointParam center_point; + TextParam id_origin; Geom::Line line_separation; Geom::Point previous_center; + Geom::Point center_point; + bool actual; std::vector<const char *> elements; - SPObject * container; + SPObject * ms_container; LPEMirrorSymmetry(const LPEMirrorSymmetry&); LPEMirrorSymmetry& operator=(const LPEMirrorSymmetry&); }; |
