view examples/dynamic/mbbutton.h @ 887:8a2d676d9fa3 abs_n_rel_center

Fix bug of clearing COF_TEMP_MARK. draw_shapes_in_dirty_areas() mark COF_TEMP_MARK on coords and clear them before leaving. But, it always clear the same one coord for several times and keep others untouched. It is a logical error. It can be avoided by avoiding to use the variable at mutliple place for different purpose in a function, and compiler will check it out by yelling that the variable is used before assigning a value.
author Thinker K.F. Li <thinker@codemud.net>
date Sun, 26 Sep 2010 14:07:05 +0800
parents ab8284c8dcee
children
line wrap: on
line source

#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