view nodejs/njs_mb_supp.h @ 1399:9cebe429508c

Override the clone_from_subtree to setup the parent and children for the coord object. However, the current children is incorrect since we can not copy it from the origin tree. Instead, we need to get coord_t from the cloned group and then modify all coord objects to include correct parent, children, add_shape and clone_from_subtree.
author wycc
date Sun, 03 Apr 2011 11:51:39 +0800
parents e415c55b4a0d
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 __NJS_MB_SUPP_H_
#define __NJS_MB_SUPP_H_

#include <ev.h>
#include <mb_backend.h>

typedef struct _njs_runtime {
    mb_rt_t *mb_rt;
} njs_runtime_t;

extern void njs_mb_reg_timer_man(void);
extern void njs_mb_reg_IO_man(void);
/* extern void njs_mb_init_handle_connection(njs_runtime_t *rt); */
extern void njs_mb_free(njs_runtime_t *rt);
extern njs_runtime_t *njs_mb_new(char *display_name, int w, int h);
extern void njs_mb_free_keep_win(njs_runtime_t *rt);
extern njs_runtime_t *njs_mb_new_with_win(void *display, long win);
extern int njs_mb_flush(njs_runtime_t *rt);
extern void njs_mb_handle_single_event(njs_runtime_t *rt, void *evt);
extern void njs_mb_no_more_event(njs_runtime_t *rt);
extern mb_rt_t *_njs_mb_get_runtime(njs_runtime_t *rt);

#define njs_mb_kbevents(rt) mb_runtime_kbevents((rt)->mb_rt)
#define njs_mb_rdman(rt) mb_runtime_rdman((rt)->mb_rt)
#define njs_mb_timer_man(rt) mb_runtime_timer_man((rt)->mb_rt)
#define njs_mb_observer_factory(rt) mb_runtime_observer_factory((rt)->mb_rt)
#define njs_mb_img_ldr(rt) mb_runtime_img_ldr((rt)->mb_rt)

#endif /* __NJS_MB_SUPP_H_ */