X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Flive_effects%2Fparameter%2Fparameter.h;h=23faffc308c7506f38eb85f686bfbacdcc4676c2;hb=d43709890eb582d2be4fb89d5735665e6b917fcd;hp=614f799c0c2166f362aa57f409342afed8c352d0;hpb=56542e2b97ec8826cc692153b0e2d4f5ac8ef913;p=inkscape.git diff --git a/src/live_effects/parameter/parameter.h b/src/live_effects/parameter/parameter.h index 614f799c0..23faffc30 100644 --- a/src/live_effects/parameter/parameter.h +++ b/src/live_effects/parameter/parameter.h @@ -13,14 +13,12 @@ #include <2geom/point.h> #include <2geom/path.h> -#include "ui/widget/registry.h" -#include "ui/widget/registered-widget.h" - struct SPDesktop; struct SPItem; namespace Gtk { class Widget; + class Tooltips; } namespace Inkscape { @@ -29,6 +27,12 @@ namespace NodePath { class Path ; } +namespace UI { +namespace Widget { + class Registry; +} +} + namespace LivePathEffect { class Effect; @@ -47,13 +51,15 @@ public: virtual void param_set_default() = 0; - // This returns pointer to the parameter's widget to be put in the live-effects dialog. Must also create the - // necessary widget if it does not exist yet. - virtual Gtk::Widget * param_getWidget() = 0; + // This creates a new widget (newed with Gtk::manage(new ...);) + virtual Gtk::Widget * param_newWidget(Gtk::Tooltips * tooltips) = 0; + virtual Glib::ustring * param_getTooltip() { return ¶m_tooltip; }; - virtual void param_editOncanvas(SPItem * item, SPDesktop * dt) { return; }; - virtual void param_setup_notepath(Inkscape::NodePath::Path *np) { return; }; + virtual void param_editOncanvas(SPItem * /*item*/, SPDesktop * /*dt*/) {}; + virtual void param_setup_nodepath(Inkscape::NodePath::Path */*np*/) {}; + + virtual void param_transform_multiply(Geom::Matrix const& /*postmul*/, bool /*set*/) {}; Glib::ustring param_key; Inkscape::UI::Widget::Registry * param_wr; @@ -66,6 +72,8 @@ protected: Effect* param_effect; + void param_write_to_repr(const char * svgd); + private: Parameter(const Parameter&); Parameter& operator=(const Parameter&); @@ -76,7 +84,7 @@ class ScalarParam : public Parameter { public: ScalarParam( const Glib::ustring& label, const Glib::ustring& tip, - const Glib::ustring& key, + const Glib::ustring& key, Inkscape::UI::Widget::Registry* wr, Effect* effect, gdouble default_value = 1.0); @@ -92,7 +100,7 @@ public: void param_set_digits(unsigned digits); void param_set_increments(double step, double page); - virtual Gtk::Widget * param_getWidget(); + virtual Gtk::Widget * param_newWidget(Gtk::Tooltips * tooltips); inline operator gdouble() { return value; }; @@ -103,7 +111,6 @@ protected: gdouble max; bool integer; gdouble defvalue; - Inkscape::UI::Widget::RegisteredScalar * rsu; unsigned digits; double inc_step; double inc_page; @@ -118,3 +125,14 @@ private: } //namespace Inkscape #endif + +/* + Local Variables: + mode:c++ + c-file-style:"stroustrup" + c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) + indent-tabs-mode:nil + fill-column:99 + End: +*/ +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :