Lines Matching refs:item
61 static void item_repos(lv_obj_t * item, lv_grid_calc_t * c, item_repos_hint_t * hint);
211 lv_obj_t * item = cont->spec_attr->children[i]; in grid_update() local
212 item_repos(item, &c, &hint); in grid_update()
313 lv_obj_t * item = lv_obj_get_child(cont, ci); in calc_cols() local
314 …if(lv_obj_has_flag_any(item, LV_OBJ_FLAG_IGNORE_LAYOUT | LV_OBJ_FLAG_HIDDEN | LV_OBJ_FLAG_FLOATING… in calc_cols()
315 uint32_t col_span = get_col_span(item); in calc_cols()
318 uint32_t col_pos = get_col_pos(item); in calc_cols()
321 size = LV_MAX(size, lv_obj_get_width(item)); in calc_cols()
402 lv_obj_t * item = lv_obj_get_child(cont, ci); in calc_rows() local
403 …if(lv_obj_has_flag_any(item, LV_OBJ_FLAG_IGNORE_LAYOUT | LV_OBJ_FLAG_HIDDEN | LV_OBJ_FLAG_FLOATING… in calc_rows()
404 uint32_t row_span = get_row_span(item); in calc_rows()
407 uint32_t row_pos = get_row_pos(item); in calc_rows()
410 size = LV_MAX(size, lv_obj_get_height(item)); in calc_rows()
464 static void item_repos(lv_obj_t * item, lv_grid_calc_t * c, item_repos_hint_t * hint) in item_repos() argument
466 …if(lv_obj_has_flag_any(item, LV_OBJ_FLAG_IGNORE_LAYOUT | LV_OBJ_FLAG_HIDDEN | LV_OBJ_FLAG_FLOATING… in item_repos()
467 uint32_t col_span = get_col_span(item); in item_repos()
468 uint32_t row_span = get_row_span(item); in item_repos()
471 uint32_t col_pos = get_col_pos(item); in item_repos()
472 uint32_t row_pos = get_row_pos(item); in item_repos()
473 lv_grid_align_t col_align = get_cell_col_align(item); in item_repos()
474 lv_grid_align_t row_align = get_cell_row_align(item); in item_repos()
485 if(lv_obj_get_style_base_dir(item, LV_PART_MAIN) == LV_BASE_DIR_RTL) { in item_repos()
492 int32_t item_w = lv_area_get_width(&item->coords); in item_repos()
493 int32_t item_h = lv_area_get_height(&item->coords); in item_repos()
498 x = c->x[col_pos] + lv_obj_get_style_margin_left(item, LV_PART_MAIN); in item_repos()
499 item->w_layout = 0; in item_repos()
502 x = c->x[col_pos] + lv_obj_get_style_margin_left(item, LV_PART_MAIN); in item_repos()
503 item_w = col_w - get_margin_hor(item); in item_repos()
504 item->w_layout = 1; in item_repos()
507 … x = c->x[col_pos] + (col_w - item_w) / 2 + (lv_obj_get_style_margin_left(item, LV_PART_MAIN) - in item_repos()
508 … lv_obj_get_style_margin_right(item, LV_PART_MAIN)) / 2; in item_repos()
509 item->w_layout = 0; in item_repos()
512 …x = c->x[col_pos] + col_w - lv_obj_get_width(item) - lv_obj_get_style_margin_right(item, LV_PART_M… in item_repos()
513 item->w_layout = 0; in item_repos()
520 y = c->y[row_pos] + lv_obj_get_style_margin_top(item, LV_PART_MAIN); in item_repos()
521 item->h_layout = 0; in item_repos()
524 y = c->y[row_pos] + lv_obj_get_style_margin_top(item, LV_PART_MAIN); in item_repos()
525 item_h = row_h - get_margin_ver(item); in item_repos()
526 item->h_layout = 1; in item_repos()
529 … y = c->y[row_pos] + (row_h - item_h) / 2 + (lv_obj_get_style_margin_top(item, LV_PART_MAIN) - in item_repos()
530 … lv_obj_get_style_margin_bottom(item, LV_PART_MAIN)) / 2; in item_repos()
531 item->h_layout = 0; in item_repos()
534 …y = c->y[row_pos] + row_h - lv_obj_get_height(item) - lv_obj_get_style_margin_bottom(item, LV_PART… in item_repos()
535 item->h_layout = 0; in item_repos()
540 if(lv_obj_get_width(item) != item_w || lv_obj_get_height(item) != item_h) { in item_repos()
542 lv_area_copy(&old_coords, &item->coords); in item_repos()
543 lv_obj_invalidate(item); in item_repos()
544 lv_area_set_width(&item->coords, item_w); in item_repos()
545 lv_area_set_height(&item->coords, item_h); in item_repos()
546 lv_obj_invalidate(item); in item_repos()
547 lv_obj_send_event(item, LV_EVENT_SIZE_CHANGED, &old_coords); in item_repos()
548 lv_obj_send_event(lv_obj_get_parent(item), LV_EVENT_CHILD_CHANGED, item); in item_repos()
553 int32_t tr_x = lv_obj_get_style_translate_x(item, LV_PART_MAIN); in item_repos()
554 int32_t tr_y = lv_obj_get_style_translate_y(item, LV_PART_MAIN); in item_repos()
555 int32_t w = lv_obj_get_width(item); in item_repos()
556 int32_t h = lv_obj_get_height(item); in item_repos()
563 int32_t diff_x = hint->grid_abs.x + x - item->coords.x1; in item_repos()
564 int32_t diff_y = hint->grid_abs.y + y - item->coords.y1; in item_repos()
566 lv_obj_invalidate(item); in item_repos()
567 item->coords.x1 += diff_x; in item_repos()
568 item->coords.x2 += diff_x; in item_repos()
569 item->coords.y1 += diff_y; in item_repos()
570 item->coords.y2 += diff_y; in item_repos()
571 lv_obj_invalidate(item); in item_repos()
572 lv_obj_move_children_by(item, diff_x, diff_y, false); in item_repos()