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 | 155 | value = self._min_position_to_minimun(x) |
| 156 | 156 | self.minimun = value |
| 157 | 157 | self.min_position = x |
| 158 | - self.Refresh() | |
| 159 | 158 | self._generate_event(myEVT_SLIDER_CHANGING) |
| 159 | + self.Refresh() | |
| 160 | 160 | |
| 161 | 161 | # The user is moving the second push (Max) |
| 162 | 162 | elif self.selected == 2: |
| ... | ... | @@ -169,8 +169,8 @@ class GradientSlider(wx.Panel): |
| 169 | 169 | value = self._max_position_to_maximun(x) |
| 170 | 170 | self.maximun = value |
| 171 | 171 | self.max_position = x |
| 172 | - self.Refresh() | |
| 173 | 172 | self._generate_event(myEVT_SLIDER_CHANGING) |
| 173 | + self.Refresh() | |
| 174 | 174 | |
| 175 | 175 | # The user is moving the slide. |
| 176 | 176 | elif self.selected == 3: |
| ... | ... | @@ -196,8 +196,8 @@ class GradientSlider(wx.Panel): |
| 196 | 196 | self.maximun = self.minimun + diff_values |
| 197 | 197 | self.CalculateControlPositions() |
| 198 | 198 | |
| 199 | - self.Refresh() | |
| 200 | 199 | self._generate_event(myEVT_SLIDER_CHANGING) |
| 200 | + self.Refresh() | |
| 201 | 201 | evt.Skip() |
| 202 | 202 | |
| 203 | 203 | |
| ... | ... | @@ -416,20 +416,30 @@ class GradientCtrl(wx.Panel): |
| 416 | 416 | self.spin_min.SetMax(value) |
| 417 | 417 | self.spin_max.SetMax(value) |
| 418 | 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 | 423 | def SetMinRange(self, value): |
| 421 | 424 | self.spin_min.SetMin(value) |
| 422 | 425 | self.spin_max.SetMin(value) |
| 423 | 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 | 431 | def SetMaxValue(self, value): |
| 426 | 432 | value = int(value) |
| 433 | + if value > self.max_range: | |
| 434 | + value = int(self.max_range) | |
| 427 | 435 | self.spin_max.SetValue(value) |
| 428 | 436 | self.gradient_slider.SetMaximun(value) |
| 429 | 437 | self.maximun = value |
| 430 | 438 | |
| 431 | 439 | def SetMinValue(self, value): |
| 432 | 440 | value = int(value) |
| 441 | + if value < self.min_range: | |
| 442 | + value = int(self.min_range) | |
| 433 | 443 | self.spin_min.SetValue(value) |
| 434 | 444 | self.gradient_slider.SetMinimun(value) |
| 435 | 445 | self.minimun = value | ... | ... |