Lines Matching +full:- +full:- +full:include
9 #include "lv_slider_private.h"
10 #include "../../misc/lv_area_private.h"
11 #include "../../core/lv_obj_private.h"
12 #include "../../core/lv_obj_event_private.h"
13 #include "../../core/lv_obj_class_private.h"
16 #include "../../misc/lv_assert.h"
17 #include "../../core/lv_group.h"
18 #include "../../indev/lv_indev.h"
19 #include "../../indev/lv_indev_private.h"
20 #include "../../display/lv_display.h"
21 #include "../../draw/lv_draw.h"
22 #include "../../stdlib/lv_string.h"
23 #include "../../misc/lv_math.h"
24 #include "../image/lv_image.h"
140 return slider->dragging; in lv_slider_is_dragged()
219 slider->value_to_set = NULL; in lv_slider_constructor()
220 slider->dragging = 0U; in lv_slider_constructor()
221 slider->left_knob_focus = 0U; in lv_slider_constructor()
247 int32_t ext_click_area = obj->spec_attr ? obj->spec_attr->ext_click_pad : 0; in lv_slider_event()
251 lv_area_copy(&a, &slider->right_knob_area); in lv_slider_event()
253 info->res = lv_area_is_point_on(&a, info->point, 0); in lv_slider_event()
256 if((info->res == false) && (type == LV_SLIDER_MODE_RANGE)) { in lv_slider_event()
257 lv_area_copy(&a, &slider->left_knob_area); in lv_slider_event()
259 info->res = lv_area_is_point_on(&a, info->point, 0); in lv_slider_event()
264 lv_indev_get_point(lv_indev_active(), &slider->pressed_point); in lv_slider_event()
265 …lv_obj_transform_point(obj, &slider->pressed_point, LV_OBJ_POINT_TRANSFORM_FLAG_INVERSE_RECURSIVE); in lv_slider_event()
272 slider->dragging = false; in lv_slider_event()
273 slider->value_to_set = NULL; in lv_slider_event()
284 if(slider->left_knob_focus == 0) slider->left_knob_focus = 1; in lv_slider_event()
286 slider->left_knob_focus = 0; in lv_slider_event()
303 slider->left_knob_focus = 0; in lv_slider_event()
340 … if(!slider->left_knob_focus) lv_slider_set_value(obj, lv_slider_get_value(obj) + 1, LV_ANIM_ON); in lv_slider_event()
344 … if(!slider->left_knob_focus) lv_slider_set_value(obj, lv_slider_get_value(obj) - 1, LV_ANIM_ON); in lv_slider_event()
345 else lv_slider_set_left_value(obj, lv_slider_get_left_value(obj) - 1, LV_ANIM_ON); in lv_slider_event()
357 … if(!slider->left_knob_focus) lv_slider_set_value(obj, lv_slider_get_value(obj) + r, LV_ANIM_ON); in lv_slider_event()
376 const bool is_reversed = slider->bar.val_reversed ^ (is_rtl && is_horizontal); in draw_knob()
385 …slider->bar.cur_value < 0) knob_area.x1 = LV_SLIDER_KNOB_COORD(!is_reversed, slider->bar.indic_are… in draw_knob()
386 else knob_area.x1 = LV_SLIDER_KNOB_COORD(is_reversed, slider->bar.indic_area); in draw_knob()
391 …slider->bar.cur_value < 0) knob_area.y1 = LV_SLIDER_KNOB_COORD_VERTICAL(!is_reversed, slider->bar… in draw_knob()
392 else knob_area.y1 = LV_SLIDER_KNOB_COORD_VERTICAL(is_reversed, slider->bar.indic_area); in draw_knob()
401 lv_area_copy(&slider->right_knob_area, &knob_area); in draw_knob()
404 lv_draw_rect(layer, &knob_rect_dsc, &slider->right_knob_area); in draw_knob()
411 lv_draw_rect(layer, &knob_rect_dsc, &slider->right_knob_area); in draw_knob()
416 knob_area.x1 = LV_SLIDER_KNOB_COORD(!is_reversed, slider->bar.indic_area); in draw_knob()
419 knob_area.y1 = LV_SLIDER_KNOB_COORD_VERTICAL(!is_reversed, slider->bar.indic_area); in draw_knob()
422 lv_area_copy(&slider->left_knob_area, &knob_area); in draw_knob()
426 lv_draw_rect(layer, &knob_rect_dsc, &slider->left_knob_area); in draw_knob()
433 knob_area->x1 -= (knob_size >> 1); in position_knob()
434 knob_area->x2 = knob_area->x1 + knob_size - 1; in position_knob()
435 knob_area->y1 = obj->coords.y1; in position_knob()
436 knob_area->y2 = obj->coords.y2; in position_knob()
439 knob_area->y1 -= (knob_size >> 1); in position_knob()
440 knob_area->y2 = knob_area->y1 + knob_size - 1; in position_knob()
441 knob_area->x1 = obj->coords.x1; in position_knob()
442 knob_area->x2 = obj->coords.x2; in position_knob()
454 knob_area->x1 -= knob_left + transf_w; in position_knob()
455 knob_area->x2 += knob_right + transf_w; in position_knob()
456 knob_area->y1 -= knob_top + transf_h; in position_knob()
457 knob_area->y2 += knob_bottom + transf_h; in position_knob()
463 …if(slider->bar.orientation == LV_BAR_ORIENTATION_AUTO) return lv_obj_get_width(obj) >= lv_obj_get_… in is_slider_horizontal()
464 else if(slider->bar.orientation == LV_BAR_ORIENTATION_HORIZONTAL) return true; in is_slider_horizontal()
473 slider->dragging = true; in drag_start()
475 slider->value_to_set = &slider->bar.cur_value; in drag_start()
482 const bool is_reversed = slider->bar.val_reversed ^ (is_rtl && is_horizontal); in drag_start()
485 …if((!is_reversed && p.x > slider->right_knob_area.x2) || (is_reversed && p.x < slider->right_knob_… in drag_start()
486 slider->value_to_set = &slider->bar.cur_value; in drag_start()
488 …else if((!is_reversed && p.x < slider->left_knob_area.x1) || (is_reversed && p.x > slider->left_kn… in drag_start()
489 slider->value_to_set = &slider->bar.start_value; in drag_start()
493 …dist_left = LV_ABS((slider->left_knob_area.x1 + (slider->left_knob_area.x2 - slider->left_knob_are… in drag_start()
494 …dist_right = LV_ABS((slider->right_knob_area.x1 + (slider->right_knob_area.x2 - slider->right_knob… in drag_start()
497 slider->value_to_set = &slider->bar.cur_value; in drag_start()
498 slider->left_knob_focus = 0; in drag_start()
501 slider->value_to_set = &slider->bar.start_value; in drag_start()
502 slider->left_knob_focus = 1; in drag_start()
507 …if((!is_reversed && p.y < slider->right_knob_area.y1) || (is_reversed && p.y > slider->right_knob_… in drag_start()
508 slider->value_to_set = &slider->bar.cur_value; in drag_start()
510 …else if((!is_reversed && p.y > slider->left_knob_area.y2) || (is_reversed && p.y < slider->left_kn… in drag_start()
511 slider->value_to_set = &slider->bar.start_value; in drag_start()
515 …dist_left = LV_ABS((slider->left_knob_area.y1 + (slider->left_knob_area.y2 - slider->left_knob_are… in drag_start()
516 …dist_right = LV_ABS((slider->right_knob_area.y1 + (slider->right_knob_area.y2 - slider->right_knob… in drag_start()
520 slider->value_to_set = &slider->bar.cur_value; in drag_start()
521 slider->left_knob_focus = 0; in drag_start()
524 slider->value_to_set = &slider->bar.start_value; in drag_start()
525 slider->left_knob_focus = 1; in drag_start()
547 if(check_drag && !slider->dragging) { in update_knob_pos()
548 int32_t ofs = is_hor ? (p.x - slider->pressed_point.x) : (p.y - slider->pressed_point.y); in update_knob_pos()
551 if(LV_ABS(ofs) < indev->scroll_limit) { in update_knob_pos()
556 if(!slider->value_to_set) { in update_knob_pos()
562 const int32_t range = slider->bar.max_value - slider->bar.min_value; in update_knob_pos()
565 const bool is_reversed = slider->bar.val_reversed ^ (is_rtl && is_horizontal); in update_knob_pos()
571 const int32_t indic_w = w - bg_left - bg_right; in update_knob_pos()
575 new_value = (obj->coords.x2 - bg_right) - p.x; in update_knob_pos()
579 new_value = p.x - (obj->coords.x1 + bg_left); in update_knob_pos()
583 new_value += slider->bar.min_value; in update_knob_pos()
590 const int32_t indic_h = h - bg_bottom - bg_top; in update_knob_pos()
594 new_value = p.y - (obj->coords.y1 + bg_top); in update_knob_pos()
598 new_value = p.y - (obj->coords.y2 + bg_bottom); in update_knob_pos()
599 new_value = -new_value; in update_knob_pos()
602 new_value += slider->bar.min_value; in update_knob_pos()
605 int32_t real_max_value = slider->bar.max_value; in update_knob_pos()
606 int32_t real_min_value = slider->bar.min_value; in update_knob_pos()
608 if(slider->value_to_set == &slider->bar.start_value) { in update_knob_pos()
609 real_max_value = slider->bar.cur_value; in update_knob_pos()
612 real_min_value = slider->bar.start_value; in update_knob_pos()
616 if(*slider->value_to_set != new_value) { in update_knob_pos()
617 *slider->value_to_set = new_value; in update_knob_pos()