update according 0.3.1 series and add XML parser.

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@699 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
bernard.xiong
2010-05-08 15:50:45 +00:00
parent cfe7e91b95
commit e7fb7e6c14
14 changed files with 372 additions and 29 deletions

View File

@@ -22,7 +22,7 @@ static void _rtgui_button_constructor(rtgui_button_t *button)
rtgui_widget_set_event_handler(RTGUI_WIDGET(button), rtgui_button_event_handler);
/* un-press button */
button->flag &= ~RTGUI_BUTTON_FLAG_PRESS;
button->flag = 0;
/* set flag and on_button event handler */
button->pressed_image = RT_NULL;
@@ -119,9 +119,13 @@ rt_bool_t rtgui_button_event_handler(struct rtgui_widget* widget, struct rtgui_e
if (emouse->button & RTGUI_MOUSE_BUTTON_UP)
{
if (btn->flag & RTGUI_BUTTON_FLAG_PRESS)
{
btn->flag &= ~RTGUI_BUTTON_FLAG_PRESS;
}
else
{
btn->flag |= RTGUI_BUTTON_FLAG_PRESS;
}
/* draw button */
#ifndef RTGUI_USING_SMALL_SIZE

View File

@@ -207,7 +207,7 @@ rt_bool_t rtgui_list_view_event_handler(struct rtgui_widget* widget, struct rtgu
old_item = view->current_item;
/* set selected item */
view->current_item = view->current_item/view->page_items + index;
view->current_item = (view->current_item/view->page_items) * view->page_items + index;
rtgui_list_view_update_current(view, old_item);
}
}

View File

@@ -167,7 +167,6 @@ void rtgui_toplevel_update_clip(rtgui_toplevel_t* top)
/* reset toplevel widget clip to extent */
rtgui_region_reset(&(RTGUI_WIDGET(top)->clip), &(RTGUI_WIDGET(top)->extent));
RTGUI_WIDGET(top)->clip_sync ++;
/* subtract the screen rect */
screen_rect.x1 = screen_rect.y1 = 0;

View File

@@ -51,9 +51,8 @@ static void _rtgui_widget_constructor(rtgui_widget_t *widget)
/* set default event handler */
widget->event_handler = rtgui_widget_event_handler;
/* does not set widget extent and only set clip_sync to zero */
/* init clip information */
rtgui_region_init(&(widget->clip));
widget->clip_sync = 0;
}
/* Destroys the widget */
@@ -71,7 +70,6 @@ static void _rtgui_widget_destructor(rtgui_widget_t *widget)
/* fini clip region */
rtgui_region_fini(&(widget->clip));
widget->clip_sync = 0;
}
rtgui_type_t *rtgui_widget_type_get(void)
@@ -411,9 +409,6 @@ void rtgui_widget_update_clip(rtgui_widget_t* widget)
/* if there is no parent, do not update clip (please use toplevel widget API) */
if (parent == RT_NULL) return;
/* increase clip sync */
widget->clip_sync ++;
/* reset clip to extent */
rtgui_region_reset(&(widget->clip), &(widget->extent));