sync with github f5619cb8ad5e4f581e3b2f6a44be4ddd5b432e59

As always, full log is in GitHub.

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2253 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
dzzxzz@gmail.com
2012-08-13 06:30:05 +00:00
parent 7472bfded3
commit e6a9dd1922
59 changed files with 2999 additions and 432 deletions

View File

@@ -124,10 +124,12 @@ static void rtgui_winrect_show (void);
#endif
#define WIN_MOVE_BORDER 4
void rtgui_mouse_init()
void rtgui_mouse_init(void)
{
const struct rtgui_graphic_driver* gd = rtgui_graphic_driver_get_default();
if (_rtgui_cursor != RT_NULL) rtgui_mouse_fini();
_rtgui_cursor = (struct rtgui_cursor*) rtgui_malloc(sizeof(struct rtgui_cursor));
rt_memset(_rtgui_cursor, 0, sizeof(struct rtgui_cursor));
@@ -178,6 +180,27 @@ void rtgui_mouse_init()
#endif
}
void rtgui_mouse_fini(void)
{
if (_rtgui_cursor != RT_NULL)
{
#ifdef RTGUI_USING_WINMOVE
rtgui_free(_rtgui_cursor->win_left);
rtgui_free(_rtgui_cursor->win_right);
rtgui_free(_rtgui_cursor->win_top);
rtgui_free(_rtgui_cursor->win_bottom);
#endif
#ifdef RTGUI_USING_MOUSE_CURSOR
rt_mutex_detach(&cursor_mutex);
rtgui_image_destroy(_rtgui_cursor->cursor_image);
rtgui_free(_rtgui_cursor->rtgui_malloc);
#endif
rtgui_free(_rtgui_cursor);
_rtgui_cursor = RT_NULL;
}
}
void rtgui_mouse_moveto(int x, int y)
{
#ifdef RTGUI_USING_MOUSE_CURSOR