Mercurial > MadButterfly
annotate nodejs/X_supp_njs.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 | 67d0fed24120 |
children | 176cba3ad32c |
rev | line source |
---|---|
822
586e50f82c1f
Unify coding style tag for emacs and vim.
Shih-Yuan Lee (FourDollars) <fourdollars@gmail.com>
parents:
681
diff
changeset
|
1 // -*- indent-tabs-mode: t; tab-width: 8; c-basic-offset: 4; -*- |
586e50f82c1f
Unify coding style tag for emacs and vim.
Shih-Yuan Lee (FourDollars) <fourdollars@gmail.com>
parents:
681
diff
changeset
|
2 // vim: sw=4:ts=8:sts=4 |
550
127499ab2412
Upgrade ndoejs plugin to level of a new runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
diff
changeset
|
3 #ifndef __X_SUPP_NJS_H_ |
127499ab2412
Upgrade ndoejs plugin to level of a new runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
diff
changeset
|
4 #define __X_SUPP_NJS_H_ |
127499ab2412
Upgrade ndoejs plugin to level of a new runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
diff
changeset
|
5 |
560
ce7a35abcb0d
Function to instantiate coord for Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
556
diff
changeset
|
6 #include <ev.h> |
ce7a35abcb0d
Function to instantiate coord for Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
556
diff
changeset
|
7 |
ce7a35abcb0d
Function to instantiate coord for Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
556
diff
changeset
|
8 typedef struct _njs_runtime { |
ce7a35abcb0d
Function to instantiate coord for Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
556
diff
changeset
|
9 ev_io iowatcher; |
ce7a35abcb0d
Function to instantiate coord for Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
556
diff
changeset
|
10 ev_timer tmwatcher; |
ce7a35abcb0d
Function to instantiate coord for Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
556
diff
changeset
|
11 int enable_io; |
ce7a35abcb0d
Function to instantiate coord for Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
556
diff
changeset
|
12 int enable_timer; |
ce7a35abcb0d
Function to instantiate coord for Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
556
diff
changeset
|
13 void *xrt; |
ce7a35abcb0d
Function to instantiate coord for Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
556
diff
changeset
|
14 } njs_runtime_t; |
550
127499ab2412
Upgrade ndoejs plugin to level of a new runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
diff
changeset
|
15 |
556
c9d23f7279a4
The first testcase that nodejs code can show a MadButterfly window.
Thinker K.F. Li <thinker@branda.to>
parents:
555
diff
changeset
|
16 extern void X_njs_MB_init_handle_connection(njs_runtime_t *rt); |
552 | 17 extern void X_njs_MB_free(njs_runtime_t *rt); |
551
9e69c4a0f565
rename njs_ev_data_t to njs_runtime_t
Thinker K.F. Li <thinker@branda.to>
parents:
550
diff
changeset
|
18 extern njs_runtime_t *X_njs_MB_new(char *display_name, int w, int h); |
871
67d0fed24120
Export a function to create a runtime for an existed window for JS
Thinker K.F. Li <thinker@codemud.net>
parents:
869
diff
changeset
|
19 extern void X_njs_MB_free_keep_win(njs_runtime_t *rt); |
67d0fed24120
Export a function to create a runtime for an existed window for JS
Thinker K.F. Li <thinker@codemud.net>
parents:
869
diff
changeset
|
20 extern njs_runtime_t *X_njs_MB_new_with_win(void *display, long win); |
571
13b15b7a463b
Redraw all and changed in Javascript
Thinker K.F. Li <thinker@branda.to>
parents:
560
diff
changeset
|
21 extern int X_njs_MB_flush(njs_runtime_t *rt); |
869
c18058fb48ee
Export API for JS to feed X events.
Thinker K.F. Li <thinker@codemud.net>
parents:
822
diff
changeset
|
22 extern void X_njs_MB_handle_single_event(njs_runtime_t *rt, void *evt); |
c18058fb48ee
Export API for JS to feed X events.
Thinker K.F. Li <thinker@codemud.net>
parents:
822
diff
changeset
|
23 extern void X_njs_MB_no_more_event(njs_runtime_t *rt); |
553
0a77b88500bf
rename _X_njs_MB_get_runtime to _X_njs_MB_get_X_runtime
Thinker K.F. Li <thinker@branda.to>
parents:
552
diff
changeset
|
24 extern void *_X_njs_MB_get_X_runtime(njs_runtime_t *rt); |
550
127499ab2412
Upgrade ndoejs plugin to level of a new runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
diff
changeset
|
25 |
555
962d8436a303
Define functions to fill gap of njs runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
553
diff
changeset
|
26 #define X_njs_MB_kbevents(rt) X_MB_kbevents((rt)->xrt) |
962d8436a303
Define functions to fill gap of njs runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
553
diff
changeset
|
27 #define X_njs_MB_rdman(rt) X_MB_rdman((rt)->xrt) |
962d8436a303
Define functions to fill gap of njs runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
553
diff
changeset
|
28 #define X_njs_MB_tman(rt) X_MB_tman((rt)->xrt) |
962d8436a303
Define functions to fill gap of njs runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
553
diff
changeset
|
29 #define X_njs_MB_ob_factory(rt) X_MB_ob_factory((rt)->xrt) |
962d8436a303
Define functions to fill gap of njs runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
553
diff
changeset
|
30 #define X_njs_MB_img_ldr(rt) X_MB_img_ldr((rt)->xrt) |
681
b601a4d6f7d1
Change kbevent to kbevents and hide X_MB_kbevents()
Thinker K.F. Li <thinker@branda.to>
parents:
571
diff
changeset
|
31 #define X_njs_MB_kbevents(rt) X_MB_kbevents((rt)->xrt) |
555
962d8436a303
Define functions to fill gap of njs runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
553
diff
changeset
|
32 |
550
127499ab2412
Upgrade ndoejs plugin to level of a new runtime.
Thinker K.F. Li <thinker@branda.to>
parents:
diff
changeset
|
33 #endif /* __X_SUPP_NJS_H_ */ |