X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;ds=sidebyside;f=windows.h;h=2080ef3c5257b95fac71bd7ef5900f56245d9e00;hb=5cf8ee7f5a9867ebeae9122f37d292f9c9205b20;hp=1f3dfa0fd3d9094be287aabe6a2593e63cf2cfa7;hpb=acac955931dc1e68d590dbd0fe51a237da785cac;p=plomrogue diff --git a/windows.h b/windows.h index 1f3dfa0..2080ef3 100644 --- a/windows.h +++ b/windows.h @@ -2,29 +2,32 @@ struct yx_uint16 { uint16_t y; uint16_t x; }; +struct Frame { + WINDOW * curses_win; + struct yx_uint16 size; }; + struct WinMeta { WINDOW * screen; - WINDOW * pad; - uint16_t pad_offset; + uint16_t pad_offset; + struct Frame pad; struct Win * chain_start; struct Win * chain_end; - struct Win * active; - struct yx_uint16 size; }; + struct Win * active; }; struct Win { struct Win * prev; struct Win * next; struct yx_uint16 start; - struct yx_uint16 size; - WINDOW * curses; + struct Frame frame; char * title; void (* draw) (struct Win *); void * data; }; -extern struct WinMeta init_win_meta (WINDOW *); +extern struct WinMeta init_win_meta (WINDOW *); extern struct Win init_window (struct WinMeta *, char *, void *, void *); extern void append_window (struct WinMeta *, struct Win *); extern void suspend_window (struct WinMeta *, struct Win *); +extern void draw_scroll_hint (struct Frame *, uint16_t, uint32_t, char); extern void draw_all_windows (struct WinMeta *); extern void resize_active_window (struct WinMeta *, uint16_t, uint16_t); extern void cycle_active_window (struct WinMeta *, char);