提交 5837cd79 编写于 作者: B bernard.xiong@gmail.com

change the selection block to square in list_view icon mode.

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1042 bbd45198-f89e-11dd-88c7-29a3b14d5316
上级 523980b4
......@@ -104,7 +104,9 @@ static void rtgui_event_dump(rt_thread_t tid, rtgui_event_t* event)
if (event->sender != RT_NULL) sender = event->sender->name;
if (event->type == RTGUI_EVENT_TIMER)
if ((event->type == RTGUI_EVENT_TIMER) ||
(event->type == RTGUI_EVENT_UPDATE_BEGIN) ||
(event->type == RTGUI_EVENT_UPDATE_END))
{
/* don't dump timer event */
return ;
......@@ -127,6 +129,8 @@ static void rtgui_event_dump(rt_thread_t tid, rtgui_event_t* event)
struct rtgui_event_kbd *ekbd = (struct rtgui_event_kbd*) event;
if (ekbd->wid != RT_NULL)
rt_kprintf("win: %s", ekbd->wid->title);
if (RTGUI_KBD_IS_UP(ekbd)) rt_kprintf(", up");
else rt_kprintf(", down");
}
break;
......@@ -324,25 +328,25 @@ rtgui_thread_t* rtgui_thread_self()
return thread;
}
void rtgui_thread_set_onidle(rtgui_idle_func onidle)
{
struct rtgui_thread* thread;
thread = rtgui_thread_self();
RT_ASSERT(thread != RT_NULL);
thread->on_idle = onidle;
}
rtgui_idle_func rtgui_thread_get_onidle()
{
struct rtgui_thread* thread;
thread = rtgui_thread_self();
RT_ASSERT(thread != RT_NULL);
return thread->on_idle;
}
void rtgui_thread_set_onidle(rtgui_idle_func onidle)
{
struct rtgui_thread* thread;
thread = rtgui_thread_self();
RT_ASSERT(thread != RT_NULL);
thread->on_idle = onidle;
}
rtgui_idle_func rtgui_thread_get_onidle()
{
struct rtgui_thread* thread;
thread = rtgui_thread_self();
RT_ASSERT(thread != RT_NULL);
return thread->on_idle;
}
extern rt_thread_t rt_thread_find(char* name);
rt_thread_t rtgui_thread_get_server()
......
......@@ -86,7 +86,7 @@ static void rtgui_list_view_onicondraw(struct rtgui_list_view* view, struct rtgu
drawing_rect.x2 = image->w;
drawing_rect.y2 = image->h;
rtgui_rect_moveto_align(&item_rect, &drawing_rect, RTGUI_ALIGN_CENTER_HORIZONTAL);
drawing_rect.y1 += 3; drawing_rect.y2 += 3;
drawing_rect.y1 += 5; drawing_rect.y2 += 5;
rtgui_image_blit(view->items[item_index].image, dc, &drawing_rect);
item_rect.y1 = drawing_rect.y2 + LIST_MARGIN;
......@@ -145,7 +145,7 @@ static void rtgui_list_view_update_icon(struct rtgui_list_view* view, rt_uint16_
drawing_rect.x2 = image->w;
drawing_rect.y2 = image->h;
rtgui_rect_moveto_align(&item_rect, &drawing_rect, RTGUI_ALIGN_CENTER_HORIZONTAL);
drawing_rect.y1 += 3; drawing_rect.y2 += 3;
drawing_rect.y1 += 5; drawing_rect.y2 += 5;
rtgui_image_blit(view->items[old_item].image, dc, &drawing_rect);
/* draw text */
......@@ -576,8 +576,10 @@ static void rtgui_list_view_calc(struct rtgui_list_view* view)
item_width = (image->w + LIST_MARGIN);
if (item_width < (text_width + LIST_MARGIN)) item_width = text_width + LIST_MARGIN;
item_height = image->h + 3 + text_height + LIST_MARGIN;
item_height = image->h + 8 + text_height + LIST_MARGIN;
if (item_width > item_height) item_height = item_width;
else item_width = item_height;
view->row_items = (rtgui_rect_height(rect) - 2 * LIST_MARGIN) / item_height;
view->col_items = (rtgui_rect_width(rect) - 2 * LIST_MARGIN) / item_width;
view->page_items = view->row_items * view->col_items;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册