Support non-notifying ui::spinbox::set_value

This commit is contained in:
Nikita Lisitsa 2022-03-15 16:56:34 +03:00
parent 56bade1b6b
commit 64a8255c8c
2 changed files with 5 additions and 3 deletions

View file

@ -11,7 +11,7 @@ namespace psemek::ui
: element : element
{ {
virtual int value() const { return value_; } virtual int value() const { return value_; }
virtual void set_value(int v); virtual void set_value(int v, bool notify = true);
virtual geom::interval<int> value_range() const { return value_range_; } virtual geom::interval<int> value_range() const { return value_range_; }
virtual void set_value_range(geom::interval<int> i); virtual void set_value_range(geom::interval<int> i);

View file

@ -3,13 +3,15 @@
namespace psemek::ui namespace psemek::ui
{ {
void spinbox::set_value(int v) void spinbox::set_value(int v, bool notify)
{ {
v = geom::clamp(v, value_range_); v = geom::clamp(v, value_range_);
if (v != value_) if (v != value_)
{ {
value_ = v; value_ = v;
post_value_changed();
if (notify)
post_value_changed();
} }
} }