diff options
| author | [email protected] <[email protected]> | 2010-08-04 23:39:01 +0000 |
|---|---|---|
| committer | [email protected] <[email protected]> | 2010-08-04 23:39:01 +0000 |
| commit | 898ad75a7afec41a8d91c9dbe7f6ff5c9a47a572 (patch) | |
| tree | b9ce66c28cba9dbd4ef87099a83e0f06bd139c0e /components/rtgui/include | |
| parent | 1451735e9edecb2d11576920af36b55e8a539a0d (diff) | |
add on_idle call back function.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@829 bbd45198-f89e-11dd-88c7-29a3b14d5316
Diffstat (limited to 'components/rtgui/include')
| -rw-r--r-- | components/rtgui/include/rtgui/rtgui_system.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/components/rtgui/include/rtgui/rtgui_system.h b/components/rtgui/include/rtgui/rtgui_system.h index 4afc65e4e0..ef2bd5da84 100644 --- a/components/rtgui/include/rtgui/rtgui_system.h +++ b/components/rtgui/include/rtgui/rtgui_system.h @@ -39,10 +39,14 @@ struct rtgui_thread struct rtgui_widget* widget;
/* event buffer */
rt_uint8_t event_buffer[RTGUI_EVENT_BUFFER_SIZE];
+
+ /* on idle event handler */
+ void (*on_idle)(struct rtgui_widget* widget, struct rtgui_event *event);
};
typedef struct rtgui_thread rtgui_thread_t;
struct rtgui_timer;
typedef void (*rtgui_timeout_func)(struct rtgui_timer* timer, void* parameter);
+typedef void (*rtgui_idle_func)(struct rtgui_widget* widget, struct rtgui_event *event);
struct rtgui_timer
{
@@ -65,6 +69,8 @@ void rtgui_timer_stop (rtgui_timer_t* timer); rtgui_thread_t* rtgui_thread_register(rt_thread_t tid, rt_mq_t mq);
void rtgui_thread_deregister(rt_thread_t tid);
+void rtgui_thread_set_onidle(rtgui_idle_func onidle);
+rtgui_idle_func rtgui_thread_get_onidle();
rtgui_thread_t* rtgui_thread_self(void);
rt_thread_t rtgui_thread_get_server(void);
@@ -76,6 +82,7 @@ rt_err_t rtgui_thread_send(rt_thread_t tid, struct rtgui_event* event, rt_size_t rt_err_t rtgui_thread_send_urgent(rt_thread_t tid, struct rtgui_event* event, rt_size_t event_size);
rt_err_t rtgui_thread_send_sync(rt_thread_t tid, struct rtgui_event* event, rt_size_t event_size);
rt_err_t rtgui_thread_recv(struct rtgui_event* event, rt_size_t event_size);
+rt_err_t rtgui_thread_recv_nosuspend(struct rtgui_event* event, rt_size_t event_size); rt_err_t rtgui_thread_recv_filter(rt_uint32_t type, struct rtgui_event* event, rt_size_t event_size);
rt_err_t rtgui_thread_ack(struct rtgui_event* event, rt_int32_t status);
|
