Mercurial > MadButterfly
comparison examples/svg2code_ex/main.c @ 84:42698de1f653
Support translate() function for transform attribute of 'g' tag.
author | Thinker K.F. Li <thinker@branda.to> |
---|---|
date | Fri, 22 Aug 2008 12:52:48 +0800 |
parents | ea758bb3bbe2 |
children | 565b55508c8d |
comparison
equal
deleted
inserted
replaced
83:ea758bb3bbe2 | 84:42698de1f653 |
---|---|
10 }; | 10 }; |
11 | 11 |
12 static void file_button_handler(event_t *evt, void *arg) { | 12 static void file_button_handler(event_t *evt, void *arg) { |
13 ex_rt_t *ex_rt = (ex_rt_t *)arg; | 13 ex_rt_t *ex_rt = (ex_rt_t *)arg; |
14 | 14 |
15 coord_show(ex_rt->code->file_menu); | 15 switch(evt->type) { |
16 rdman_coord_changed(ex_rt->rt->rdman, ex_rt->code->file_menu); | 16 case EVT_MOUSE_BUT_PRESS: |
17 rdman_redraw_changed(ex_rt->rt->rdman); | 17 coord_show(ex_rt->code->file_menu); |
18 rdman_coord_changed(ex_rt->rt->rdman, ex_rt->code->file_menu); | |
19 rdman_redraw_changed(ex_rt->rt->rdman); | |
20 break; | |
21 } | |
22 } | |
23 | |
24 static void file_menu_handler(event_t *evt, void *arg) { | |
25 ex_rt_t *ex_rt = (ex_rt_t *)arg; | |
26 | |
27 switch(evt->type) { | |
28 case EVT_MOUSE_BUT_PRESS: | |
29 coord_hide(ex_rt->code->file_menu); | |
30 rdman_coord_changed(ex_rt->rt->rdman, ex_rt->code->file_menu); | |
31 rdman_redraw_changed(ex_rt->rt->rdman); | |
32 break; | |
33 } | |
18 } | 34 } |
19 | 35 |
20 int main(int argc, char * const argv[]) { | 36 int main(int argc, char * const argv[]) { |
21 X_MB_runtime_t rt; | 37 X_MB_runtime_t rt; |
22 svg2code_ex_t *svg2code; | 38 svg2code_ex_t *svg2code; |
32 factory = rdman_get_ob_factory(rt.rdman); | 48 factory = rdman_get_ob_factory(rt.rdman); |
33 subject = coord_get_mouse_event(svg2code->file_button); | 49 subject = coord_get_mouse_event(svg2code->file_button); |
34 ex_rt.rt = &rt; | 50 ex_rt.rt = &rt; |
35 ex_rt.code = svg2code; | 51 ex_rt.code = svg2code; |
36 subject_add_observer(factory, subject, file_button_handler, &ex_rt); | 52 subject_add_observer(factory, subject, file_button_handler, &ex_rt); |
53 subject = coord_get_mouse_event(svg2code->file_menu); | |
54 subject_add_observer(factory, subject, file_menu_handler, &ex_rt); | |
37 | 55 |
38 X_MB_handle_connection(&rt); | 56 X_MB_handle_connection(&rt); |
39 | 57 |
40 svg2code_ex_free(svg2code); | 58 svg2code_ex_free(svg2code); |
41 X_MB_destroy(&rt); | 59 X_MB_destroy(&rt); |