diff --git a/src/shape-editor.h b/src/shape-editor.h
index 9ce64355fe15b64c6e8c7d8e144a0586c1e9ea36..98dbb35d7f94c266d5f4ac7899e963971f40c4be 100644 (file)
--- a/src/shape-editor.h
+++ b/src/shape-editor.h
*/
#include <forward.h>
-#include <libnr/nr-forward.h>
+#include <2geom/forward.h>
namespace Inkscape { namespace NodePath { class Path; } }
namespace Inkscape { namespace XML { class Node; } }
-#include "libnr/nr-path-code.h"
-#include "libnr/nr-point.h"
-#include <boost/optional.hpp>
-#include <vector>
-
class KnotHolder;
class SPDesktop;
class SPNodeContext;
class ShapeEditorsCollective;
+class LivePathEffectObject;
+
+#include "libnr/nr-path-code.h"
+#include <2geom/point.h>
+#include <boost/optional.hpp>
+#include <vector>
enum SubType{
SH_NODEPATH,
~ShapeEditor();
void set_item (SPItem *item, SubType type, bool keep_knotholder = false);
- void set_item_lpe_path_parameter(SPItem *item, SPObject *lpeobject, const char * key);
- void set_knotholder(KnotHolder * knot_holder);
- void reset_item (SubType type, bool keep_knotholder = true);
+ void set_item_lpe_path_parameter(SPItem *item, LivePathEffectObject *lpeobject, const char * key);
void unset_item (SubType type, bool keep_knotholder = false);
- const SPItem *get_item (SubType type);
-
- bool has_nodepath ();
- bool has_knotholder ();
- void update_knotholder ();
+ bool has_nodepath (); //((deprecated))
+ void update_knotholder (); //((deprecated))
bool has_local_change (SubType type);
void decrement_local_change (SubType type);
void finish_drag ();
- void select_rect (NR::Rect const &rect, bool add);
+ void select_rect (Geom::Rect const &rect, bool add);
bool has_selection ();
void deselect ();
bool nodepath_edits_repr_key(gchar const *name);
+ // this one is only public because it's called from non-C++ repr changed callback
+ void shapeeditor_event_attr_changed(gchar const *name);
+
private:
+ bool has_knotholder ();
+ void reset_item (SubType type, bool keep_knotholder = true);
+ const SPItem *get_item (SubType type);
+
SPDesktop *desktop;
Inkscape::NodePath::Path *nodepath;
+
+ // TODO: std::list<KnotHolder *> knotholders;
KnotHolder *knotholder;
ShapeEditorsCollective *container;
Geom::Point curvepoint_event; // int coords from event
Geom::Point curvepoint_doc; // same, in doc coords
- Inkscape::XML::Node *listener_attached_for;
+ Inkscape::XML::Node *knotholder_listener_attached_for;
+ Inkscape::XML::Node *nodepath_listener_attached_for;
};