#ifndef CURSETREE_SURFACE_H #define CURSETREE_SURFACE_H #include "dims.h" #ifndef __NCURSES_H typedef struct _win_st WINDOW; #endif /* __NCURSES_H */ struct ct_surface { struct ct_dims *dims; struct ct_bounds *bounds; WINDOW *win; unsigned char updatereq; }; struct ct_surface *new_surface(struct ct_dims *const dims, struct ct_bounds *const bounds); void destroy_surface(const struct ct_surface *const surface); void resize_surface(struct ct_surface *const surface, struct ct_dims *const dims); void rebind_surface(struct ct_surface *const surface, struct ct_bounds *const bounds); #define sfpos(surface, x, y) (x = sfposx(surface), y = sfposy(surface)) #define sfsize(surface, width, height) (width = sfwidth(surface), height = sfheight(surface)) void sclear(struct ct_surface *const surface); int swidth(const struct ct_surface *const surface); int sheight(const struct ct_surface *const surface); int sposx(const struct ct_surface *const surface); int sposy(const struct ct_surface *const surface); #endif /* CURSETREE_SURFACE_H */