annotate nodejs/X_supp_njs.h @ 880:ac3e8492ad74 abs_n_rel_center

Formalize path data for MadButterfly. Inkscape and other editors would omit 'l' or 'L' after 'm' or 'M'. MadButterfly can not handle it, now. So, we work around it at SVG parser.
author Thinker K.F. Li <thinker@codemud.net>
date Sat, 25 Sep 2010 18:46:37 +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
dd8d32b4c899 rename ev_data to rt
Thinker K.F. Li <thinker@branda.to>
parents: 551
diff changeset
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_ */