e26611b859da8ab8d0a2b7390b2aebd3dd895258
1 #ifndef INKSCAPE_LIVEPATHEFFECT_PARAMETER_PATH_H\r
2 #define INKSCAPE_LIVEPATHEFFECT_PARAMETER_PATH_H\r
3 \r
4 /*\r
5 * Inkscape::LivePathEffectParameters\r
6 *\r
7 * Copyright (C) Johan Engelen 2007 <j.b.c.engelen@utwente.nl>\r
8 *\r
9 * Released under GNU GPL, read the file 'COPYING' for more information\r
10 */\r
11 \r
12 #include <glib/gtypes.h>\r
13 #include <2geom/path.h>\r
14 \r
15 #include "ui/widget/registry.h"\r
16 #include <gtkmm/tooltips.h>\r
17 \r
18 #include "live_effects/parameter/parameter.h"\r
19 \r
20 #include <sigc++/sigc++.h>\r
21 \r
22 namespace Inkscape {\r
23 \r
24 namespace LivePathEffect {\r
25 \r
26 class PathParam : public Geom::Piecewise<Geom::D2<Geom::SBasis> >, public Parameter {\r
27 public:\r
28 PathParam ( const Glib::ustring& label,\r
29 const Glib::ustring& tip,\r
30 const Glib::ustring& key,\r
31 Inkscape::UI::Widget::Registry* wr,\r
32 Effect* effect,\r
33 const gchar * default_value = "M0,0 L1,1");\r
34 ~PathParam();\r
35 \r
36 Gtk::Widget * param_getWidget();\r
37 \r
38 bool param_readSVGValue(const gchar * strvalue);\r
39 gchar * param_writeSVGValue() const;\r
40 \r
41 void param_set_default();\r
42 \r
43 sigc::signal <void> signal_path_pasted;\r
44 sigc::signal <void> signal_path_changed;\r
45 \r
46 private:\r
47 PathParam(const PathParam&);\r
48 PathParam& operator=(const PathParam&);\r
49 \r
50 Gtk::Widget * _widget;\r
51 Gtk::Tooltips * _tooltips;\r
52 \r
53 void param_write_to_repr(const char * svgd);\r
54 \r
55 void on_edit_button_click();\r
56 void on_paste_button_click();\r
57 \r
58 gchar * defvalue;\r
59 };\r
60 \r
61 \r
62 } //namespace LivePathEffect\r
63 \r
64 } //namespace Inkscape\r
65 \r
66 #endif\r