Lines Matching refs:obj

31 static void lv_image_constructor(const lv_obj_class_t * class_p, lv_obj_t * obj);
32 static void lv_image_destructor(const lv_obj_class_t * class_p, lv_obj_t * obj);
35 static void scale_update(lv_obj_t * obj, int32_t scale_x, int32_t scale_y);
36 static void update_align(lv_obj_t * obj);
38 static void lv_image_set_pivot_helper(lv_obj_t * obj, lv_point_t * pivot);
39 static lv_point_t lv_image_get_pivot_helper(lv_obj_t * obj);
139 lv_obj_t * obj = lv_obj_class_create_obj(MY_CLASS, parent); in lv_image_create() local
140 lv_obj_class_init_obj(obj); in lv_image_create()
141 return obj; in lv_image_create()
148 void lv_image_set_src(lv_obj_t * obj, const void * src) in lv_image_set_src() argument
150 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_src()
152 lv_obj_invalidate(obj); in lv_image_set_src()
155 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_src()
224 const lv_font_t * font = lv_obj_get_style_text_font(obj, LV_PART_MAIN); in lv_image_set_src()
225 int32_t letter_space = lv_obj_get_style_text_letter_space(obj, LV_PART_MAIN); in lv_image_set_src()
226 int32_t line_space = lv_obj_get_style_text_line_space(obj, LV_PART_MAIN); in lv_image_set_src()
238 lv_obj_refresh_self_size(obj); in lv_image_set_src()
240 update_align(obj); in lv_image_set_src()
244 lv_obj_refresh_ext_draw_size(obj); in lv_image_set_src()
247 lv_obj_invalidate(obj); in lv_image_set_src()
250 void lv_image_set_offset_x(lv_obj_t * obj, int32_t x) in lv_image_set_offset_x() argument
252 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_offset_x()
254 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_offset_x()
257 lv_obj_invalidate(obj); in lv_image_set_offset_x()
260 void lv_image_set_offset_y(lv_obj_t * obj, int32_t y) in lv_image_set_offset_y() argument
262 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_offset_y()
264 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_offset_y()
267 lv_obj_invalidate(obj); in lv_image_set_offset_y()
270 void lv_image_set_rotation(lv_obj_t * obj, int32_t angle) in lv_image_set_rotation() argument
272 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_rotation()
274 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_rotation()
285 lv_obj_update_layout(obj); /*Be sure the object's size is calculated*/ in lv_image_set_rotation()
286 int32_t w = lv_obj_get_width(obj); in lv_image_set_rotation()
287 int32_t h = lv_obj_get_height(obj); in lv_image_set_rotation()
290 lv_image_get_pivot(obj, &pivot_px); in lv_image_set_rotation()
292 a.x1 += obj->coords.x1; in lv_image_set_rotation()
293 a.y1 += obj->coords.y1; in lv_image_set_rotation()
294 a.x2 += obj->coords.x1; in lv_image_set_rotation()
295 a.y2 += obj->coords.y1; in lv_image_set_rotation()
296 lv_obj_invalidate_area(obj, &a); in lv_image_set_rotation()
302 lv_display_t * disp = lv_obj_get_display(obj); in lv_image_set_rotation()
304 lv_obj_refresh_ext_draw_size(obj); in lv_image_set_rotation()
308 a.x1 += obj->coords.x1; in lv_image_set_rotation()
309 a.y1 += obj->coords.y1; in lv_image_set_rotation()
310 a.x2 += obj->coords.x1; in lv_image_set_rotation()
311 a.y2 += obj->coords.y1; in lv_image_set_rotation()
312 lv_obj_invalidate_area(obj, &a); in lv_image_set_rotation()
315 void lv_image_set_pivot(lv_obj_t * obj, int32_t x, int32_t y) in lv_image_set_pivot() argument
317 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_pivot()
319 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_pivot()
327 lv_obj_update_layout(obj); /*Be sure the object's size is calculated*/ in lv_image_set_pivot()
328 int32_t w = lv_obj_get_width(obj); in lv_image_set_pivot()
329 int32_t h = lv_obj_get_height(obj); in lv_image_set_pivot()
332 lv_image_get_pivot(obj, &pivot_px); in lv_image_set_pivot()
334 a.x1 += obj->coords.x1; in lv_image_set_pivot()
335 a.y1 += obj->coords.y1; in lv_image_set_pivot()
336 a.x2 += obj->coords.x1; in lv_image_set_pivot()
337 a.y2 += obj->coords.y1; in lv_image_set_pivot()
338 lv_obj_invalidate_area(obj, &a); in lv_image_set_pivot()
344 lv_display_t * disp = lv_obj_get_display(obj); in lv_image_set_pivot()
346 lv_obj_refresh_ext_draw_size(obj); in lv_image_set_pivot()
349 lv_image_get_pivot(obj, &pivot_px); in lv_image_set_pivot()
351 a.x1 += obj->coords.x1; in lv_image_set_pivot()
352 a.y1 += obj->coords.y1; in lv_image_set_pivot()
353 a.x2 += obj->coords.x1; in lv_image_set_pivot()
354 a.y2 += obj->coords.y1; in lv_image_set_pivot()
355 lv_obj_invalidate_area(obj, &a); in lv_image_set_pivot()
358 void lv_image_set_scale(lv_obj_t * obj, uint32_t zoom) in lv_image_set_scale() argument
360 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_scale()
362 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_scale()
371 scale_update(obj, zoom, zoom); in lv_image_set_scale()
374 void lv_image_set_scale_x(lv_obj_t * obj, uint32_t zoom) in lv_image_set_scale_x() argument
376 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_scale_x()
378 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_scale_x()
387 scale_update(obj, zoom, img->scale_y); in lv_image_set_scale_x()
390 void lv_image_set_scale_y(lv_obj_t * obj, uint32_t zoom) in lv_image_set_scale_y() argument
392 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_scale_y()
394 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_scale_y()
403 scale_update(obj, img->scale_x, zoom); in lv_image_set_scale_y()
406 void lv_image_set_blend_mode(lv_obj_t * obj, lv_blend_mode_t blend_mode) in lv_image_set_blend_mode() argument
408 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_blend_mode()
410 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_blend_mode()
417 lv_obj_invalidate(obj); in lv_image_set_blend_mode()
420 void lv_image_set_antialias(lv_obj_t * obj, bool antialias) in lv_image_set_antialias() argument
422 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_antialias()
424 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_antialias()
428 lv_obj_invalidate(obj); in lv_image_set_antialias()
431 void lv_image_set_inner_align(lv_obj_t * obj, lv_image_align_t align) in lv_image_set_inner_align() argument
433 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_inner_align()
435 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_inner_align()
440 lv_image_set_scale(obj, LV_SCALE_NONE); in lv_image_set_inner_align()
444 update_align(obj); in lv_image_set_inner_align()
446 lv_obj_invalidate(obj); in lv_image_set_inner_align()
449 void lv_image_set_bitmap_map_src(lv_obj_t * obj, const lv_image_dsc_t * src) in lv_image_set_bitmap_map_src() argument
451 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_set_bitmap_map_src()
452 lv_image_t * img = (lv_image_t *)obj; in lv_image_set_bitmap_map_src()
454 lv_obj_invalidate(obj); in lv_image_set_bitmap_map_src()
461 const void * lv_image_get_src(lv_obj_t * obj) in lv_image_get_src() argument
463 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_src()
465 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_src()
470 int32_t lv_image_get_offset_x(lv_obj_t * obj) in lv_image_get_offset_x() argument
472 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_offset_x()
474 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_offset_x()
479 int32_t lv_image_get_offset_y(lv_obj_t * obj) in lv_image_get_offset_y() argument
481 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_offset_y()
483 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_offset_y()
488 int32_t lv_image_get_rotation(lv_obj_t * obj) in lv_image_get_rotation() argument
490 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_rotation()
492 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_rotation()
497 void lv_image_get_pivot(lv_obj_t * obj, lv_point_t * pivot) in lv_image_get_pivot() argument
499 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_pivot()
501 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_pivot()
507 int32_t lv_image_get_scale(lv_obj_t * obj) in lv_image_get_scale() argument
509 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_scale()
511 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_scale()
516 int32_t lv_image_get_scale_x(lv_obj_t * obj) in lv_image_get_scale_x() argument
518 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_scale_x()
520 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_scale_x()
525 int32_t lv_image_get_scale_y(lv_obj_t * obj) in lv_image_get_scale_y() argument
527 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_scale_y()
529 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_scale_y()
534 lv_blend_mode_t lv_image_get_blend_mode(lv_obj_t * obj) in lv_image_get_blend_mode() argument
536 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_blend_mode()
538 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_blend_mode()
543 bool lv_image_get_antialias(lv_obj_t * obj) in lv_image_get_antialias() argument
545 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_antialias()
547 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_antialias()
552 lv_image_align_t lv_image_get_inner_align(lv_obj_t * obj) in lv_image_get_inner_align() argument
554 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_inner_align()
556 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_inner_align()
561 const lv_image_dsc_t * lv_image_get_bitmap_map_src(lv_obj_t * obj) in lv_image_get_bitmap_map_src() argument
563 LV_ASSERT_OBJ(obj, MY_CLASS); in lv_image_get_bitmap_map_src()
565 lv_image_t * img = (lv_image_t *)obj; in lv_image_get_bitmap_map_src()
574 static void lv_image_constructor(const lv_obj_class_t * class_p, lv_obj_t * obj) in lv_image_constructor() argument
579 lv_image_t * img = (lv_image_t *)obj; in lv_image_constructor()
584 img->w = lv_obj_get_width(obj); in lv_image_constructor()
585 img->h = lv_obj_get_height(obj); in lv_image_constructor()
594 lv_obj_remove_flag(obj, LV_OBJ_FLAG_CLICKABLE); in lv_image_constructor()
595 lv_obj_add_flag(obj, LV_OBJ_FLAG_ADV_HITTEST); in lv_image_constructor()
600 static void lv_image_destructor(const lv_obj_class_t * class_p, lv_obj_t * obj) in lv_image_destructor() argument
603 lv_image_t * img = (lv_image_t *)obj; in lv_image_destructor()
621 lv_obj_t * obj = lv_event_get_current_target(e); in lv_image_event() local
622 lv_image_t * img = (lv_image_t *)obj; in lv_image_event()
624 lv_image_get_pivot(obj, &pivot_px); in lv_image_event()
629 lv_image_set_src(obj, img->src); in lv_image_event()
633 lv_obj_refresh_ext_draw_size(obj); in lv_image_event()
643 int32_t w = lv_obj_get_width(obj); in lv_image_event()
644 int32_t h = lv_obj_get_height(obj); in lv_image_event()
657 if(img->w == lv_obj_get_width(obj) && img->h == lv_obj_get_height(obj) && in lv_image_event()
661 int32_t w = lv_obj_get_width(obj); in lv_image_event()
662 int32_t h = lv_obj_get_height(obj); in lv_image_event()
665 coords.x1 += obj->coords.x1; in lv_image_event()
666 coords.y1 += obj->coords.y1; in lv_image_event()
667 coords.x2 += obj->coords.x1; in lv_image_event()
668 coords.y2 += obj->coords.y1; in lv_image_event()
674 lv_obj_get_click_area(obj, &a); in lv_image_event()
691 lv_obj_t * obj = lv_event_get_current_target(e); in draw_image() local
692 lv_image_t * img = (lv_image_t *)obj; in draw_image()
708 if(lv_obj_get_style_image_opa(obj, LV_PART_MAIN) != LV_OPA_COVER) { in draw_image()
719 if(lv_area_is_in(info->area, &obj->coords, 0) == false) { in draw_image()
727 lv_image_get_pivot(obj, &pivot_px); in draw_image()
728 …lv_image_buf_get_transformed_area(&a, lv_obj_get_width(obj), lv_obj_get_height(obj), 0, img->scale… in draw_image()
730 a.x1 += obj->coords.x1; in draw_image()
731 a.y1 += obj->coords.y1; in draw_image()
732 a.x2 += obj->coords.x1; in draw_image()
733 a.y2 += obj->coords.y1; in draw_image()
756 lv_obj_init_draw_image_dsc(obj, LV_PART_MAIN, &draw_dsc); in draw_image()
760 lv_image_get_pivot(obj, &draw_dsc.pivot); in draw_image()
769 lv_area_set(&draw_dsc.image_area, obj->coords.x1, in draw_image()
770 obj->coords.y1, in draw_image()
771 obj->coords.x1 + img->w - 1, in draw_image()
772 obj->coords.y1 + img->h - 1); in draw_image()
774 draw_dsc.clip_radius = lv_obj_get_style_radius(obj, LV_PART_MAIN); in draw_image()
778 … lv_area_align(&obj->coords, &draw_dsc.image_area, img->align, img->offset.x, img->offset.y); in draw_image()
782 lv_area_intersect(&layer->_clip_area, &layer->_clip_area, &obj->coords); in draw_image()
803 lv_obj_init_draw_label_dsc(obj, LV_PART_MAIN, &label_dsc); in draw_image()
805 lv_draw_label(layer, &label_dsc, &obj->coords); in draw_image()
818 static void scale_update(lv_obj_t * obj, int32_t scale_x, int32_t scale_y) in scale_update() argument
820 lv_image_t * img = (lv_image_t *)obj; in scale_update()
822 lv_obj_update_layout(obj); /*Be sure the object's size is calculated*/ in scale_update()
823 int32_t w = lv_obj_get_width(obj); in scale_update()
824 int32_t h = lv_obj_get_height(obj); in scale_update()
827 lv_image_get_pivot(obj, &pivot_px); in scale_update()
829 a.x1 += obj->coords.x1 - 1; in scale_update()
830 a.y1 += obj->coords.y1 - 1; in scale_update()
831 a.x2 += obj->coords.x1 + 1; in scale_update()
832 a.y2 += obj->coords.y1 + 1; in scale_update()
833 lv_obj_invalidate_area(obj, &a); in scale_update()
840 lv_display_t * disp = lv_obj_get_display(obj); in scale_update()
842 lv_obj_refresh_ext_draw_size(obj); in scale_update()
846 a.x1 += obj->coords.x1 - 1; in scale_update()
847 a.y1 += obj->coords.y1 - 1; in scale_update()
848 a.x2 += obj->coords.x1 + 1; in scale_update()
849 a.y2 += obj->coords.y1 + 1; in scale_update()
850 lv_obj_invalidate_area(obj, &a); in scale_update()
853 static void update_align(lv_obj_t * obj) in update_align() argument
855 lv_image_t * img = (lv_image_t *)obj; in update_align()
857 lv_image_set_rotation(obj, 0); in update_align()
858 lv_image_set_pivot(obj, 0, 0); in update_align()
860 lv_obj_update_layout(obj); in update_align()
861 int32_t scale_x = lv_obj_get_width(obj) * LV_SCALE_NONE / img->w; in update_align()
862 int32_t scale_y = lv_obj_get_height(obj) * LV_SCALE_NONE / img->h; in update_align()
863 scale_update(obj, scale_x, scale_y); in update_align()
867 lv_image_set_rotation(obj, 0); in update_align()
868 lv_image_set_pivot(obj, 0, 0); in update_align()
869 scale_update(obj, LV_SCALE_NONE, LV_SCALE_NONE); in update_align()
875 static void lv_image_set_pivot_helper(lv_obj_t * obj, lv_point_t * pivot) in lv_image_set_pivot_helper() argument
877 lv_image_set_pivot(obj, pivot->x, pivot->y); in lv_image_set_pivot_helper()
880 static lv_point_t lv_image_get_pivot_helper(lv_obj_t * obj) in lv_image_get_pivot_helper() argument
883 lv_image_get_pivot(obj, &pivot); in lv_image_get_pivot_helper()