Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Rishel <nicholas_rishel>2020-02-14 17:35:34 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2020-02-14 19:57:34 +0300
commite7cf132e573da5c47718be79a2d3278fb842d49b (patch)
tree094651b57145c7a5dff64560bd16990ec58411ef /source/blender/editors/interface/view2d_ops.c
parent9b243b9a53ca48f5dba1142170944174716bbd72 (diff)
Cleanup: simplify redundant tests in scrollbar code
Differential Revision: https://developer.blender.org/D6783
Diffstat (limited to 'source/blender/editors/interface/view2d_ops.c')
-rw-r--r--source/blender/editors/interface/view2d_ops.c42
1 files changed, 14 insertions, 28 deletions
diff --git a/source/blender/editors/interface/view2d_ops.c b/source/blender/editors/interface/view2d_ops.c
index 5cf7cb4e7c4..527c23e4588 100644
--- a/source/blender/editors/interface/view2d_ops.c
+++ b/source/blender/editors/interface/view2d_ops.c
@@ -1738,46 +1738,32 @@ enum {
*/
static short mouse_in_scroller_handle(int mouse, int sc_min, int sc_max, int sh_min, int sh_max)
{
- bool in_min, in_max, in_bar, out_min, out_max, in_view = 1;
-
/* firstly, check if
* - 'bubble' fills entire scroller
* - 'bubble' completely out of view on either side
*/
- if ((sh_min <= sc_min) && (sh_max >= sc_max)) {
- in_view = 0;
- }
- if (sh_min == sh_max) {
- if (sh_min <= sc_min) {
- in_view = 0;
- }
- if (sh_max >= sc_max) {
- in_view = 0;
- }
+ bool in_view = true;
+ if (sh_min <= sc_min && sc_max <= sh_max) {
+ in_view = false;
}
- else {
- if (sh_max <= sc_min) {
- in_view = 0;
- }
- if (sh_min >= sc_max) {
- in_view = 0;
- }
+ else if (sh_max <= sc_min || sc_max <= sh_min) {
+ in_view = false;
}
- if (in_view == 0) {
+ if (!in_view) {
return SCROLLHANDLE_BAR;
}
/* check if mouse is in or past either handle */
/* TODO: check if these extents are still valid or not */
- in_max = ((mouse >= (sh_max - V2D_SCROLL_HANDLE_SIZE_HOTSPOT)) &&
- (mouse <= (sh_max + V2D_SCROLL_HANDLE_SIZE_HOTSPOT)));
- in_min = ((mouse <= (sh_min + V2D_SCROLL_HANDLE_SIZE_HOTSPOT)) &&
- (mouse >= (sh_min - V2D_SCROLL_HANDLE_SIZE_HOTSPOT)));
- in_bar = ((mouse < (sh_max - V2D_SCROLL_HANDLE_SIZE_HOTSPOT)) &&
- (mouse > (sh_min + V2D_SCROLL_HANDLE_SIZE_HOTSPOT)));
- out_min = mouse < (sh_min - V2D_SCROLL_HANDLE_SIZE_HOTSPOT);
- out_max = mouse > (sh_max + V2D_SCROLL_HANDLE_SIZE_HOTSPOT);
+ bool in_max = ((mouse >= (sh_max - V2D_SCROLL_HANDLE_SIZE_HOTSPOT)) &&
+ (mouse <= (sh_max + V2D_SCROLL_HANDLE_SIZE_HOTSPOT)));
+ bool in_min = ((mouse <= (sh_min + V2D_SCROLL_HANDLE_SIZE_HOTSPOT)) &&
+ (mouse >= (sh_min - V2D_SCROLL_HANDLE_SIZE_HOTSPOT)));
+ bool in_bar = ((mouse < (sh_max - V2D_SCROLL_HANDLE_SIZE_HOTSPOT)) &&
+ (mouse > (sh_min + V2D_SCROLL_HANDLE_SIZE_HOTSPOT)));
+ bool out_min = mouse < (sh_min - V2D_SCROLL_HANDLE_SIZE_HOTSPOT);
+ bool out_max = mouse > (sh_max + V2D_SCROLL_HANDLE_SIZE_HOTSPOT);
if (in_bar) {
return SCROLLHANDLE_BAR;