Commit 5ba543ca4ff61a14d5057ff1601dc6002d90395f
1 parent
5e0c04d2
Exists in
master
and in
67 other branches
ENH: Improvements in gradient widget, like, the impossibility of set max thresho…
…ld greather than max range
Showing
1 changed file
with
13 additions
and
3 deletions
Show diff stats
invesalius/gui/widgets/gradient.py
@@ -155,8 +155,8 @@ class GradientSlider(wx.Panel): | @@ -155,8 +155,8 @@ class GradientSlider(wx.Panel): | ||
155 | value = self._min_position_to_minimun(x) | 155 | value = self._min_position_to_minimun(x) |
156 | self.minimun = value | 156 | self.minimun = value |
157 | self.min_position = x | 157 | self.min_position = x |
158 | - self.Refresh() | ||
159 | self._generate_event(myEVT_SLIDER_CHANGING) | 158 | self._generate_event(myEVT_SLIDER_CHANGING) |
159 | + self.Refresh() | ||
160 | 160 | ||
161 | # The user is moving the second push (Max) | 161 | # The user is moving the second push (Max) |
162 | elif self.selected == 2: | 162 | elif self.selected == 2: |
@@ -169,8 +169,8 @@ class GradientSlider(wx.Panel): | @@ -169,8 +169,8 @@ class GradientSlider(wx.Panel): | ||
169 | value = self._max_position_to_maximun(x) | 169 | value = self._max_position_to_maximun(x) |
170 | self.maximun = value | 170 | self.maximun = value |
171 | self.max_position = x | 171 | self.max_position = x |
172 | - self.Refresh() | ||
173 | self._generate_event(myEVT_SLIDER_CHANGING) | 172 | self._generate_event(myEVT_SLIDER_CHANGING) |
173 | + self.Refresh() | ||
174 | 174 | ||
175 | # The user is moving the slide. | 175 | # The user is moving the slide. |
176 | elif self.selected == 3: | 176 | elif self.selected == 3: |
@@ -196,8 +196,8 @@ class GradientSlider(wx.Panel): | @@ -196,8 +196,8 @@ class GradientSlider(wx.Panel): | ||
196 | self.maximun = self.minimun + diff_values | 196 | self.maximun = self.minimun + diff_values |
197 | self.CalculateControlPositions() | 197 | self.CalculateControlPositions() |
198 | 198 | ||
199 | - self.Refresh() | ||
200 | self._generate_event(myEVT_SLIDER_CHANGING) | 199 | self._generate_event(myEVT_SLIDER_CHANGING) |
200 | + self.Refresh() | ||
201 | evt.Skip() | 201 | evt.Skip() |
202 | 202 | ||
203 | 203 | ||
@@ -416,20 +416,30 @@ class GradientCtrl(wx.Panel): | @@ -416,20 +416,30 @@ class GradientCtrl(wx.Panel): | ||
416 | self.spin_min.SetMax(value) | 416 | self.spin_min.SetMax(value) |
417 | self.spin_max.SetMax(value) | 417 | self.spin_max.SetMax(value) |
418 | self.gradient_slider.SetMaxRange(value) | 418 | self.gradient_slider.SetMaxRange(value) |
419 | + self.max_range = value | ||
420 | + if value > self.max_range: | ||
421 | + value = self.max_range | ||
419 | 422 | ||
420 | def SetMinRange(self, value): | 423 | def SetMinRange(self, value): |
421 | self.spin_min.SetMin(value) | 424 | self.spin_min.SetMin(value) |
422 | self.spin_max.SetMin(value) | 425 | self.spin_max.SetMin(value) |
423 | self.gradient_slider.SetMinRange(value) | 426 | self.gradient_slider.SetMinRange(value) |
427 | + self.min_range = value | ||
428 | + if value < self.min_range: | ||
429 | + value = self.min_range | ||
424 | 430 | ||
425 | def SetMaxValue(self, value): | 431 | def SetMaxValue(self, value): |
426 | value = int(value) | 432 | value = int(value) |
433 | + if value > self.max_range: | ||
434 | + value = int(self.max_range) | ||
427 | self.spin_max.SetValue(value) | 435 | self.spin_max.SetValue(value) |
428 | self.gradient_slider.SetMaximun(value) | 436 | self.gradient_slider.SetMaximun(value) |
429 | self.maximun = value | 437 | self.maximun = value |
430 | 438 | ||
431 | def SetMinValue(self, value): | 439 | def SetMinValue(self, value): |
432 | value = int(value) | 440 | value = int(value) |
441 | + if value < self.min_range: | ||
442 | + value = int(self.min_range) | ||
433 | self.spin_min.SetValue(value) | 443 | self.spin_min.SetValue(value) |
434 | self.gradient_slider.SetMinimun(value) | 444 | self.gradient_slider.SetMinimun(value) |
435 | self.minimun = value | 445 | self.minimun = value |