home · contact · privacy
497908e4ab19614d24b67fd7dd4c52ba3a32899a
[plomrogue] / windows.h
1 struct WinMeta {
2   WINDOW * screen;
3   WINDOW * pad;
4   uint16_t  pad_offset;
5   struct Win * chain_start;
6   struct Win * chain_end;
7   struct Win * active;
8   uint16_t width;
9   uint16_t height; };
10
11 struct Win {
12   struct Win * prev;
13   struct Win * next;
14   uint16_t startx;
15   uint16_t starty;
16   uint16_t width;
17   uint16_t height;
18   WINDOW * curses;
19   char * title;
20   void (* draw) (struct Win *);
21   void * data; };
22
23 extern struct  WinMeta init_win_meta (WINDOW *);
24 extern struct Win init_window (struct WinMeta *, char *, void *, void *);
25 extern void append_window (struct WinMeta *, struct Win *);
26 extern void suspend_window (struct WinMeta *, struct Win *);
27 extern void draw_all_windows (struct WinMeta *);
28 extern void resize_active_window (struct WinMeta *, uint16_t, uint16_t);
29 extern void cycle_active_window (struct WinMeta *, char);
30 extern void shift_active_window (struct WinMeta *, char);
31 extern void reset_pad_offset (struct WinMeta *, uint16_t);