panel.h 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /*----------------------------------------------------------------------*
  2. * Panels for PDCurses *
  3. *----------------------------------------------------------------------*/
  4. #ifndef __PDCURSES_PANEL_H__
  5. #define __PDCURSES_PANEL_H__ 1
  6. #include <curses.h>
  7. #ifdef __cplusplus
  8. extern "C"
  9. {
  10. #endif
  11. typedef struct panelobs
  12. {
  13. struct panelobs *above;
  14. struct panel *pan;
  15. } PANELOBS;
  16. typedef struct panel
  17. {
  18. WINDOW *win;
  19. int wstarty;
  20. int wendy;
  21. int wstartx;
  22. int wendx;
  23. struct panel *below;
  24. struct panel *above;
  25. const void *user;
  26. struct panelobs *obscure;
  27. } PANEL;
  28. PDCEX int bottom_panel(PANEL *pan);
  29. PDCEX int del_panel(PANEL *pan);
  30. PDCEX int hide_panel(PANEL *pan);
  31. PDCEX int move_panel(PANEL *pan, int starty, int startx);
  32. PDCEX PANEL *new_panel(WINDOW *win);
  33. PDCEX PANEL *panel_above(const PANEL *pan);
  34. PDCEX PANEL *panel_below(const PANEL *pan);
  35. PDCEX int panel_hidden(const PANEL *pan);
  36. PDCEX const void *panel_userptr(const PANEL *pan);
  37. PDCEX WINDOW *panel_window(const PANEL *pan);
  38. PDCEX int replace_panel(PANEL *pan, WINDOW *win);
  39. PDCEX int set_panel_userptr(PANEL *pan, const void *uptr);
  40. PDCEX int show_panel(PANEL *pan);
  41. PDCEX int top_panel(PANEL *pan);
  42. PDCEX void update_panels(void);
  43. #ifdef __cplusplus
  44. }
  45. #endif
  46. #endif /* __PDCURSES_PANEL_H__ */