summaryrefslogtreecommitdiffstats
path: root/src/live_effects/parameter
diff options
context:
space:
mode:
authorJabiertxo Arraiza Cenoz <jtx@jtx-desktop.markerlab.es>2017-12-05 12:48:06 +0000
committerJabiertxo Arraiza Cenoz <jtx@jtx-desktop.markerlab.es>2017-12-05 12:48:06 +0000
commitc0a73d338290a417a79005a296d8975e12429fb2 (patch)
treef9dd2c315a4e42fd615aa60e1562dc434c78af5b /src/live_effects/parameter
parentAdd fix to problem switching pen tool modes (diff)
parentAttemp to fix compile bug (diff)
downloadinkscape-c0a73d338290a417a79005a296d8975e12429fb2.tar.gz
inkscape-c0a73d338290a417a79005a296d8975e12429fb2.zip
Merge branch 'master' into pen-tool-mode-fixes
Diffstat (limited to 'src/live_effects/parameter')
-rw-r--r--src/live_effects/parameter/parameter.cpp11
-rw-r--r--src/live_effects/parameter/parameter.h2
-rw-r--r--src/live_effects/parameter/point.cpp6
-rw-r--r--src/live_effects/parameter/point.h1
-rw-r--r--src/live_effects/parameter/random.cpp7
-rw-r--r--src/live_effects/parameter/random.h1
6 files changed, 23 insertions, 5 deletions
diff --git a/src/live_effects/parameter/parameter.cpp b/src/live_effects/parameter/parameter.cpp
index 319ab3fe8..497113e03 100644
--- a/src/live_effects/parameter/parameter.cpp
+++ b/src/live_effects/parameter/parameter.cpp
@@ -129,9 +129,6 @@ ScalarParam::param_update_default(const gchar * default_value)
void
ScalarParam::param_set_value(gdouble val)
{
- if (value != val) {
- param_effect->upd_params = true;
- }
value = val;
if (integer)
value = round(value);
@@ -180,7 +177,7 @@ ScalarParam::param_set_undo(bool set_undo)
Gtk::Widget *
ScalarParam::param_newWidget()
{
- if(widget_is_visible){
+ 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() ) );
@@ -192,6 +189,7 @@ ScalarParam::param_newWidget()
if (add_slider) {
rsu->addSlider();
}
+ rsu->signal_button_release_event().connect(sigc::mem_fun (*this, &ScalarParam::on_button_release));
if(_set_undo){
rsu->set_undo_parameters(SP_VERB_DIALOG_LIVE_PATH_EFFECT, _("Change scalar parameter"));
}
@@ -201,6 +199,11 @@ ScalarParam::param_newWidget()
}
}
+bool ScalarParam::on_button_release(GdkEventButton* button_event) {
+ param_effect->upd_params = true;
+ return false;
+}
+
void
ScalarParam::param_set_digits(unsigned digits)
{
diff --git a/src/live_effects/parameter/parameter.h b/src/live_effects/parameter/parameter.h
index 1586ef346..aa4212f15 100644
--- a/src/live_effects/parameter/parameter.h
+++ b/src/live_effects/parameter/parameter.h
@@ -141,6 +141,8 @@ protected:
bool _set_undo;
private:
+ bool on_button_release(GdkEventButton* button_event);
+
ScalarParam(const ScalarParam&);
ScalarParam& operator=(const ScalarParam&);
};
diff --git a/src/live_effects/parameter/point.cpp b/src/live_effects/parameter/point.cpp
index da6edf812..ff5f59ce2 100644
--- a/src/live_effects/parameter/point.cpp
+++ b/src/live_effects/parameter/point.cpp
@@ -146,6 +146,7 @@ PointParam::param_newWidget()
pointwdg->setValue( *this );
pointwdg->clearProgrammatically();
pointwdg->set_undo_parameters(SP_VERB_DIALOG_LIVE_PATH_EFFECT, _("Change point parameter"));
+ pointwdg->signal_button_release_event().connect(sigc::mem_fun (*this, &PointParam::on_button_release));
Gtk::HBox * hbox = Gtk::manage( new Gtk::HBox() );
static_cast<Gtk::HBox*>(hbox)->pack_start(*pointwdg, true, true);
@@ -153,6 +154,11 @@ PointParam::param_newWidget()
return dynamic_cast<Gtk::Widget *> (hbox);
}
+bool PointParam::on_button_release(GdkEventButton* button_event) {
+ param_effect->upd_params = true;
+ return false;
+}
+
void
PointParam::set_oncanvas_looks(SPKnotShapeType shape, SPKnotModeType mode, guint32 color)
{
diff --git a/src/live_effects/parameter/point.h b/src/live_effects/parameter/point.h
index 03256f6d0..6c5f8df65 100644
--- a/src/live_effects/parameter/point.h
+++ b/src/live_effects/parameter/point.h
@@ -57,6 +57,7 @@ public:
private:
PointParam(const PointParam&);
PointParam& operator=(const PointParam&);
+ bool on_button_release(GdkEventButton* button_event);
Geom::Point defvalue;
bool liveupdate;
KnotHolder *knoth;
diff --git a/src/live_effects/parameter/random.cpp b/src/live_effects/parameter/random.cpp
index c2c1b5440..4afa43c6e 100644
--- a/src/live_effects/parameter/random.cpp
+++ b/src/live_effects/parameter/random.cpp
@@ -103,7 +103,6 @@ RandomParam::param_update_default(const gchar * default_value){
void
RandomParam::param_set_value(gdouble val, long newseed)
{
- param_effect->upd_params = true;
value = val;
if (integer)
value = round(value);
@@ -154,12 +153,18 @@ RandomParam::param_newWidget()
}
regrandom->setRange(min, max);
regrandom->setProgrammatically = false;
+ regrandom->signal_button_release_event().connect(sigc::mem_fun (*this, &RandomParam::on_button_release));
regrandom->set_undo_parameters(SP_VERB_DIALOG_LIVE_PATH_EFFECT, _("Change random parameter"));
return dynamic_cast<Gtk::Widget *> (regrandom);
}
+bool RandomParam::on_button_release(GdkEventButton* button_event) {
+ param_effect->upd_params = true;
+ return false;
+}
+
RandomParam::operator gdouble()
{
return rand() * value;
diff --git a/src/live_effects/parameter/random.h b/src/live_effects/parameter/random.h
index c10473e85..a2c3712a1 100644
--- a/src/live_effects/parameter/random.h
+++ b/src/live_effects/parameter/random.h
@@ -57,6 +57,7 @@ protected:
gdouble defvalue;
private:
+ bool on_button_release(GdkEventButton* button_event);
long setup_seed(long);
gdouble rand();