panel.pp 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. unit panel;
  2. {---------------------------------------------------------------------------
  3. CncWare
  4. ----------------------------------------------------------------------------
  5. Filename..: panel.pp
  6. Programmer: Ken J. Wright
  7. Date......: 12/08/1999
  8. Purpose - Link to the Linux 'panel' library for ncurses windowing
  9. functions. The panel library handles overlapping windows,
  10. whereas, native ncurses windowing is only tiled.
  11. -------------------------------< Revisions >---------------------------------
  12. Revision| Date | Prog| Description
  13. -----------------------------------------------------------------------------
  14. 1.00 | 12/08/99 | kjw | Initial release.
  15. -----------------------------------------------------------------------------
  16. }
  17. interface
  18. uses ncurses;
  19. {$PACKRECORDS 4}
  20. {$linklib panel}
  21. const
  22. libpanel = 'panel';
  23. type
  24. pPANEL = ^_PANEL;
  25. _PANEL = record
  26. win : ^WINDOW;
  27. wstarty : longint;
  28. wendy : longint;
  29. wstartx : longint;
  30. wendx : longint;
  31. below : ppanel;
  32. above : ppanel;
  33. user : longint; { NCURSES_CONST void user; }
  34. obscure : pointer;
  35. end;
  36. function panel_window(_para1:pPANEL):pWINDOW;cdecl;
  37. procedure update_panels;cdecl;
  38. function hide_panel(_para1:pPANEL):longint;cdecl;
  39. function show_panel(_para1:pPANEL):longint;cdecl;
  40. function del_panel(_para1:pPANEL):longint;cdecl;
  41. function top_panel(_para1:pPANEL):longint;cdecl;
  42. function bottom_panel(_para1:pPANEL):longint;cdecl;
  43. function new_panel(_para1:pWINDOW):pPANEL;cdecl;
  44. function panel_above(_para1:pPANEL):pPANEL;cdecl;
  45. function panel_below(_para1:pPANEL):pPANEL;cdecl;
  46. { extern int set_panel_userptr(PANEL , NCURSES_CONST void ); }
  47. { extern NCURSES_CONST void panel_userptr(const PANEL ); }
  48. function move_panel(_para1:pPANEL; _para2:longint; _para3:longint):longint;cdecl;
  49. function replace_panel(_para1:pPANEL; _para2:pWINDOW):longint;cdecl;
  50. function panel_hidden(_para1:pPANEL):longint;cdecl;
  51. implementation
  52. {const External_library='';}
  53. function panel_window(_para1:pPANEL):pWINDOW;cdecl;external libpanel;
  54. procedure update_panels;cdecl;external libpanel;
  55. function hide_panel(_para1:pPANEL):longint;cdecl;external libpanel;
  56. function show_panel(_para1:pPANEL):longint;cdecl;external libpanel;
  57. function del_panel(_para1:pPANEL):longint;cdecl;external libpanel;
  58. function top_panel(_para1:pPANEL):longint;cdecl;external libpanel;
  59. function bottom_panel(_para1:pPANEL):longint;cdecl;external libpanel;
  60. function new_panel(_para1:pWINDOW):pPANEL;cdecl;external libpanel;
  61. function panel_above(_para1:pPANEL):pPANEL;cdecl;external libpanel;
  62. function panel_below(_para1:pPANEL):pPANEL;cdecl;external libpanel;
  63. { extern int set_panel_userptr(PANEL , NCURSES_CONST void ); }
  64. { extern NCURSES_CONST void panel_userptr(const PANEL ); }
  65. function move_panel(_para1:pPANEL; _para2:longint; _para3:longint):longint;cdecl;external libpanel;
  66. function replace_panel(_para1:pPANEL; _para2:pWINDOW):longint;cdecl;external libpanel;
  67. function panel_hidden(_para1:pPANEL):longint;cdecl;external libpanel;
  68. end.
  69. {
  70. $Log$
  71. Revision 1.4 2004-05-08 20:50:19 jonas
  72. * Darwin fixes by mischi
  73. Revision 1.3 2002/09/09 19:43:48 peter
  74. * fix for new complete type check
  75. Revision 1.2 2002/09/07 15:43:01 peter
  76. * old logs removed and tabs fixed
  77. Revision 1.1 2002/01/29 17:55:17 peter
  78. * splitted to base and extra
  79. }