diff options
| author | schwieni <mschwienbacher@gmail.com> | 2019-03-24 09:14:33 +0000 |
|---|---|---|
| committer | Markus Schwienbacher <mschwienbacher@gmail.com> | 2019-03-25 17:15:50 +0000 |
| commit | 2d2c778340997b1d4370bb583e40a0e8dbebfc57 (patch) | |
| tree | 40727666a7aced4425ebd557a659a8f31041846c /src/live_effects/parameter/parameter.cpp | |
| parent | lpe-pts2ellipse: added perspective circle from 4 points (diff) | |
| download | inkscape-2d2c778340997b1d4370bb583e40a0e8dbebfc57.tar.gz inkscape-2d2c778340997b1d4370bb583e40a0e8dbebfc57.zip | |
lpe-pts2ellipse: added perspective circle from 4 points
improved tool-tips for better usability
Diffstat (limited to 'src/live_effects/parameter/parameter.cpp')
| -rw-r--r-- | src/live_effects/parameter/parameter.cpp | 122 |
1 files changed, 46 insertions, 76 deletions
diff --git a/src/live_effects/parameter/parameter.cpp b/src/live_effects/parameter/parameter.cpp index a235e6076..50137ec36 100644 --- a/src/live_effects/parameter/parameter.cpp +++ b/src/live_effects/parameter/parameter.cpp @@ -6,8 +6,8 @@ */ -#include "live_effects/effect.h" #include "live_effects/parameter/parameter.h" +#include "live_effects/effect.h" #include "svg/svg.h" #include "xml/repr.h" @@ -26,29 +26,27 @@ namespace Inkscape { namespace LivePathEffect { -Parameter::Parameter( Glib::ustring label, Glib::ustring tip, - Glib::ustring key, Inkscape::UI::Widget::Registry* wr, - Effect* effect ) - : param_key(std::move(key)), - param_wr(wr), - param_label(std::move(label)), - oncanvas_editable(false), - widget_is_visible(true), - widget_is_enabled(true), - param_tooltip(std::move(tip)), - param_effect(effect) +Parameter::Parameter(Glib::ustring label, Glib::ustring tip, Glib::ustring key, Inkscape::UI::Widget::Registry *wr, + Effect *effect) + : param_key(std::move(key)) + , param_wr(wr) + , param_label(std::move(label)) + , oncanvas_editable(false) + , widget_is_visible(true) + , widget_is_enabled(true) + , param_tooltip(std::move(tip)) + , param_effect(effect) { } -void -Parameter::param_write_to_repr(const char * svgd) +void Parameter::param_write_to_repr(const char *svgd) { param_effect->getRepr()->setAttribute(param_key.c_str(), svgd); } void Parameter::write_to_SVG() { - gchar * str = param_getSVGValue(); + gchar *str = param_getSVGValue(); param_write_to_repr(str); g_free(str); } @@ -56,28 +54,25 @@ void Parameter::write_to_SVG() /*########################################### * REAL PARAM */ -ScalarParam::ScalarParam( const Glib::ustring& label, const Glib::ustring& tip, - const Glib::ustring& key, Inkscape::UI::Widget::Registry* wr, - Effect* effect, gdouble default_value) - : Parameter(label, tip, key, wr, effect), - value(default_value), - min(-SCALARPARAM_G_MAXDOUBLE), - max(SCALARPARAM_G_MAXDOUBLE), - integer(false), - defvalue(default_value), - digits(2), - inc_step(0.1), - inc_page(1), - add_slider(false), - _set_undo(true) +ScalarParam::ScalarParam(const Glib::ustring &label, const Glib::ustring &tip, const Glib::ustring &key, + Inkscape::UI::Widget::Registry *wr, Effect *effect, gdouble default_value) + : Parameter(label, tip, key, wr, effect) + , value(default_value) + , min(-SCALARPARAM_G_MAXDOUBLE) + , max(SCALARPARAM_G_MAXDOUBLE) + , integer(false) + , defvalue(default_value) + , digits(2) + , inc_step(0.1) + , inc_page(1) + , add_slider(false) + , _set_undo(true) { } -ScalarParam::~ScalarParam() -= default; +ScalarParam::~ScalarParam() = default; -bool -ScalarParam::param_readSVGValue(const gchar * strvalue) +bool ScalarParam::param_readSVGValue(const gchar *strvalue) { double newval; unsigned int success = sp_svg_number_read_d(strvalue, &newval); @@ -88,36 +83,25 @@ ScalarParam::param_readSVGValue(const gchar * strvalue) return false; } -gchar * -ScalarParam::param_getSVGValue() const +gchar *ScalarParam::param_getSVGValue() const { Inkscape::SVGOStringStream os; os << value; return g_strdup(os.str().c_str()); } -gchar * -ScalarParam::param_getDefaultSVGValue() const +gchar *ScalarParam::param_getDefaultSVGValue() const { Inkscape::SVGOStringStream os; os << defvalue; - return g_strdup(os.str().c_str()); + return g_strdup(os.str().c_str()); } -void -ScalarParam::param_set_default() -{ - param_set_value(defvalue); -} +void ScalarParam::param_set_default() { param_set_value(defvalue); } -void -ScalarParam::param_update_default(gdouble default_value) -{ - defvalue = default_value; -} +void ScalarParam::param_update_default(gdouble default_value) { defvalue = default_value; } -void -ScalarParam::param_update_default(const gchar * default_value) +void ScalarParam::param_update_default(const gchar *default_value) { double newval; unsigned int success = sp_svg_number_read_d(default_value, &newval); @@ -126,8 +110,7 @@ ScalarParam::param_update_default(const gchar * default_value) } } -void -ScalarParam::param_set_value(gdouble val) +void ScalarParam::param_set_value(gdouble val) { value = val; if (integer) @@ -138,8 +121,7 @@ ScalarParam::param_set_value(gdouble val) value = min; } -void -ScalarParam::param_set_range(gdouble min, gdouble max) +void ScalarParam::param_set_range(gdouble min, gdouble max) { // if you look at client code, you'll see that many effects // has a tendency to set an upper range of Geom::infinity(). @@ -159,8 +141,7 @@ ScalarParam::param_set_range(gdouble min, gdouble max) param_set_value(value); // reset value to see whether it is in ranges } -void -ScalarParam::param_make_integer(bool yes) +void ScalarParam::param_make_integer(bool yes) { integer = yes; digits = 0; @@ -168,19 +149,14 @@ ScalarParam::param_make_integer(bool yes) inc_page = 10; } -void -ScalarParam::param_set_undo(bool set_undo) -{ - _set_undo = set_undo; -} +void ScalarParam::param_set_undo(bool set_undo) { _set_undo = set_undo; } -Gtk::Widget * -ScalarParam::param_newWidget() +Gtk::Widget *ScalarParam::param_newWidget() { if (widget_is_visible) { - Inkscape::UI::Widget::RegisteredScalar *rsu = Gtk::manage( new Inkscape::UI::Widget::RegisteredScalar( - param_label, param_tooltip, param_key, *param_wr, param_effect->getRepr(), param_effect->getSPDoc() ) ); - + Inkscape::UI::Widget::RegisteredScalar *rsu = Gtk::manage(new Inkscape::UI::Widget::RegisteredScalar( + param_label, param_tooltip, param_key, *param_wr, param_effect->getRepr(), param_effect->getSPDoc())); + rsu->setValue(value); rsu->setDigits(digits); rsu->setIncrements(inc_step, inc_page); @@ -189,23 +165,18 @@ ScalarParam::param_newWidget() if (add_slider) { rsu->addSlider(); } - if(_set_undo){ + if (_set_undo) { rsu->set_undo_parameters(SP_VERB_DIALOG_LIVE_PATH_EFFECT, _("Change scalar parameter")); } - return dynamic_cast<Gtk::Widget *> (rsu); + return dynamic_cast<Gtk::Widget *>(rsu); } else { return nullptr; } } -void -ScalarParam::param_set_digits(unsigned digits) -{ - this->digits = digits; -} +void ScalarParam::param_set_digits(unsigned digits) { this->digits = digits; } -void -ScalarParam::param_set_increments(double step, double page) +void ScalarParam::param_set_increments(double step, double page) { inc_step = step; inc_page = page; @@ -213,7 +184,6 @@ ScalarParam::param_set_increments(double step, double page) - } /* namespace LivePathEffect */ } /* namespace Inkscape */ |
