Mercurial > MadButterfly
view include/mbbutton.h @ 1248:2f9fa5d59e67
Add data_monitor meta-class to monitor accessing on domview_ui.
- The monitoring is to prevent from reentry triggered by DOM events.
- call 'do*' methods of a monitored class would try to lock
domview_ui at first.
- The method would not be executed actually if being fault to lock.
- You can make monitor to print debug message with environment variable
- DATA_MONITOR_DBG=1, or
- DATA_MONITOR_DBG=2
author | Thinker K.F. Li <thinker@codemud.net> |
---|---|
date | Tue, 11 Jan 2011 10:04:14 +0800 |
parents | 586e50f82c1f |
children |
line wrap: on
line source
// -*- indent-tabs-mode: t; tab-width: 8; c-basic-offset: 4; -*- // vim: sw=4:ts=8:sts=4 #ifndef __MBBUTTON_H #define __MBBUTTON_H typedef struct _mb_button { mb_obj_t obj; redraw_man_t *rdman; int state; coord_t *root; coord_t *active; coord_t *normal; coord_t *click; void (*press)(); void *arg; observer_t *obs_move,*obs_out,*obs_press; mb_progm_t *progm; } mb_button_t; mb_button_t *mb_button_new(redraw_man_t *rdman,mb_sprite_t *sp, char *name); void mb_button_add_onClick(mb_button_t *b, void (*h)(void *arg), void *arg); #endif