diff options
| author | Johan B. C. Engelen <jbc.engelen@swissonline.ch> | 2007-08-14 20:54:48 +0000 |
|---|---|---|
| committer | johanengelen <johanengelen@users.sourceforge.net> | 2007-08-14 20:54:48 +0000 |
| commit | 55d43e4e27e0ba58a47fad70957dfa989aa173ad (patch) | |
| tree | 2ccfbac1c50023d08ae32975c876fa2478c1ad2a /src/nodepath.h | |
| parent | Fix for bug #1752113; added set_preview_widget_active(false) to FileSaveDialo... (diff) | |
| download | inkscape-55d43e4e27e0ba58a47fad70957dfa989aa173ad.tar.gz inkscape-55d43e4e27e0ba58a47fad70957dfa989aa173ad.zip | |
Commit LivePathEffect branch to trunk!
(disabled extension/internal/bitmap/*.* in build.xml to fix compilation)
(bzr r3472)
Diffstat (limited to 'src/nodepath.h')
| -rw-r--r-- | src/nodepath.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/nodepath.h b/src/nodepath.h index 7e4066769..29d34addd 100644 --- a/src/nodepath.h +++ b/src/nodepath.h @@ -17,6 +17,7 @@ //#include "desktop-handles.h" #include "libnr/nr-path-code.h" #include "livarot/Path.h" +#include <glibmm/ustring.h> #include <list> @@ -111,7 +112,7 @@ class Path { /** Pointer to the current desktop, for reporting purposes */ SPDesktop * desktop; /** The parent path of this nodepath */ - SPPath * path; + SPObject * object; /** The context which created this nodepath. Important if this nodepath is deleted */ ShapeEditor *shape_editor; /** The subpaths which comprise this NodePath */ @@ -122,12 +123,19 @@ class Path { njh: I'd be guessing that these are item <-> desktop transforms.*/ NR::Matrix i2d, d2i; /** The DOM node which describes this NodePath */ - Inkscape::XML::Node *repr; + Inkscape::XML::Node *repr; + gchar *repr_key; + gchar *repr_nodetypes_key; //STL compliant method to get the selected nodes void selection(std::list<Node *> &l); /// livarot library is used for "point on path" and "nearest position on path", so we need to maintain its path representation as well ::Path *livarot_path; + + /// draw a "sketch" of the path by using these variables + SPCanvasItem *helper_path; + SPCurve *curve; + bool show_helperpath; /// true if we changed repr, to tell this change from an external one such as from undo, simplify, or another desktop unsigned int local_change; @@ -135,6 +143,9 @@ class Path { /// true if we're showing selected nodes' handles bool show_handles; + /// true if the path cannot contain curves, just straight lines + bool straight_path; + /// active_node points to the node that is currently mouseovered (= NULL if /// there isn't any); we also consider the node mouseovered if it is covered /// by one of its handles and the latter is mouseovered @@ -246,7 +257,7 @@ enum { }; // Do function documentation in nodepath.cpp -Inkscape::NodePath::Path * sp_nodepath_new (SPDesktop * desktop, SPItem * item, bool show_handles); +Inkscape::NodePath::Path * sp_nodepath_new (SPDesktop * desktop, SPObject *object, bool show_handles, const char * repr_key = NULL); void sp_nodepath_destroy (Inkscape::NodePath::Path * nodepath); void sp_nodepath_ensure_livarot_path(Inkscape::NodePath::Path *np); void sp_nodepath_deselect (Inkscape::NodePath::Path *nodepath); |
