// // Image.h // // Copyright (c) 2010 LearnBoost // #ifndef __NODE_IMAGE_H__ #define __NODE_IMAGE_H__ #include "canvas.h" using namespace v8; class Image: public node::ObjectWrap { public: bool complete; char *filename; Persistent onload; Persistent onerror; static void Initialize(Handle target); static Handle New(const Arguments &args); static Handle Inspect(const Arguments &args); static Handle GetSrc(Local prop, const AccessorInfo &info); static Handle GetOnload(Local prop, const AccessorInfo &info); static Handle GetOnerror(Local prop, const AccessorInfo &info); static Handle GetComplete(Local prop, const AccessorInfo &info); static void SetSrc(Local prop, Local val, const AccessorInfo &info); static void SetOnload(Local prop, Local val, const AccessorInfo &info); static void SetOnerror(Local prop, Local val, const AccessorInfo &info); inline cairo_surface_t *surface(){ return _surface; } cairo_status_t loadSurface(); void error(Local); void loaded(); void load(); Image(); private: cairo_surface_t *_surface; ~Image(); }; #endif