1 /* Public Domain Curses */ 2 3 /* $Id: panel.h,v 1.19 2008/07/13 16:08:16 wmcbrine Exp $ */ 4 5 /*----------------------------------------------------------------------* 6 * Panels for PDCurses * 7 *----------------------------------------------------------------------*/ 8 9 #ifndef __PDCURSES_PANEL_H__ 10 #define __PDCURSES_PANEL_H__ 1 11 12 #include <curses.h> 13 14 #if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS) 15 extern "C" 16 { 17 #endif 18 19 typedef struct panelobs 20 { 21 struct panelobs *above; 22 struct panel *pan; 23 } PANELOBS; 24 25 typedef struct panel 26 { 27 WINDOW *win; 28 int wstarty; 29 int wendy; 30 int wstartx; 31 int wendx; 32 struct panel *below; 33 struct panel *above; 34 const void *user; 35 struct panelobs *obscure; 36 } PANEL; 37 38 int bottom_panel(PANEL *pan); 39 int del_panel(PANEL *pan); 40 int hide_panel(PANEL *pan); 41 int move_panel(PANEL *pan, int starty, int startx); 42 PANEL *new_panel(WINDOW *win); 43 PANEL *panel_above(const PANEL *pan); 44 PANEL *panel_below(const PANEL *pan); 45 int panel_hidden(const PANEL *pan); 46 const void *panel_userptr(const PANEL *pan); 47 WINDOW *panel_window(const PANEL *pan); 48 int replace_panel(PANEL *pan, WINDOW *win); 49 int set_panel_userptr(PANEL *pan, const void *uptr); 50 int show_panel(PANEL *pan); 51 int top_panel(PANEL *pan); 52 void update_panels(void); 53 54 #if defined(__cplusplus) || defined(__cplusplus__) || defined(__CPLUSPLUS) 55 } 56 #endif 57 58 #endif /* __PDCURSES_PANEL_H__ */ 59