Code

Set teeth selector in lpe-gears to an integer value >= 3.
[inkscape.git] / src / live_effects / parameter / path.h
index 39ea9e2d8d44d957a769535fb9b3847e1bec0248..fc5a16a5b879b3f84ad72acf881710a495fcd9fb 100644 (file)
@@ -1,56 +1,77 @@
-#ifndef INKSCAPE_LIVEPATHEFFECT_PARAMETER_PATH_H\r
-#define INKSCAPE_LIVEPATHEFFECT_PARAMETER_PATH_H\r
-\r
-/*\r
- * Inkscape::LivePathEffectParameters\r
- *\r
-* Copyright (C) Johan Engelen 2007 <j.b.c.engelen@utwente.nl>\r
- *\r
- * Released under GNU GPL, read the file 'COPYING' for more information\r
- */\r
-\r
-#include <glib/gtypes.h>\r
-#include <2geom/path.h>\r
-\r
-#include "ui/widget/registry.h"\r
-#include <gtkmm/tooltips.h>\r
-\r
-#include "live_effects/parameter/parameter.h"\r
-\r
-#include <sigc++/sigc++.h>\r
-\r
-namespace Inkscape {\r
-\r
-namespace LivePathEffect {\r
-\r
-class PathParam : public Geom::Piecewise<Geom::D2<Geom::SBasis> >, public Parameter {\r
-public:\r
-    PathParam(const Glib::ustring& label, const Glib::ustring& tip, const Glib::ustring& key, Inkscape::UI::Widget::Registry* wr, Effect* effect);;\r
-    ~PathParam();\r
-\r
-    Gtk::Widget * param_getWidget();\r
-\r
-    bool param_readSVGValue(const gchar * strvalue);\r
-    gchar * param_writeSVGValue() const;\r
-\r
-    sigc::signal <void> signal_path_pasted;\r
-\r
-private:\r
-    PathParam(const PathParam&);\r
-    PathParam& operator=(const PathParam&);\r
-\r
-    Gtk::Widget * _widget;\r
-    Gtk::Tooltips * _tooltips;\r
-\r
-    void param_write_to_repr(const char * svgd);\r
-\r
-    void on_edit_button_click();\r
-    void on_paste_button_click();\r
-};\r
-\r
-\r
-}; //namespace LivePathEffect\r
-\r
-}; //namespace Inkscape\r
-\r
-#endif\r
+#ifndef INKSCAPE_LIVEPATHEFFECT_PARAMETER_PATH_H
+#define INKSCAPE_LIVEPATHEFFECT_PARAMETER_PATH_H
+
+/*
+ * Inkscape::LivePathEffectParameters
+ *
+* Copyright (C) Johan Engelen 2007 <j.b.c.engelen@utwente.nl>
+ *
+ * Released under GNU GPL, read the file 'COPYING' for more information
+ */
+
+#include <glib/gtypes.h>
+#include <2geom/path.h>
+
+#include "ui/widget/registry.h"
+#include <gtkmm/tooltips.h>
+
+#include "live_effects/parameter/parameter.h"
+
+#include <sigc++/sigc++.h>
+
+namespace Gtk {
+    class Button;
+}
+
+namespace Inkscape {
+
+namespace LivePathEffect {
+
+class PathParam : public Geom::Piecewise<Geom::D2<Geom::SBasis> >, public Parameter {
+public:
+    PathParam ( const Glib::ustring& label,
+                const Glib::ustring& tip,
+                const Glib::ustring& key,
+                Inkscape::UI::Widget::Registry* wr,
+                Effect* effect,
+                const gchar * default_value = "M0,0 L1,1");
+    virtual ~PathParam();
+
+    Gtk::Widget * param_getWidget();
+
+    bool param_readSVGValue(const gchar * strvalue);
+    gchar * param_writeSVGValue() const;
+
+    void param_set_default();
+
+    void param_set_and_write_new_value (Geom::Piecewise<Geom::D2<Geom::SBasis> > newpath);
+
+    void param_editOncanvas(SPItem * item, SPDesktop * dt);
+    void param_setup_notepath(Inkscape::NodePath::Path *np);
+
+    sigc::signal <void> signal_path_pasted;
+    sigc::signal <void> signal_path_changed;
+
+private:
+    PathParam(const PathParam&);
+    PathParam& operator=(const PathParam&);
+
+    Gtk::Widget * _widget;
+    Gtk::Tooltips * _tooltips;
+
+    void param_write_to_repr(const char * svgd);
+
+    void on_edit_button_click();
+    void on_paste_button_click();
+
+    gchar * defvalue;
+
+    Gtk::Button * edit_button;
+};
+
+
+} //namespace LivePathEffect
+
+} //namespace Inkscape
+
+#endif