fpc/packages/extra/ncurses/panel.pp
2004-05-08 20:50:19 +00:00

100 lines
3.5 KiB
ObjectPascal

unit panel;
{---------------------------------------------------------------------------
CncWare
----------------------------------------------------------------------------
Filename..: panel.pp
Programmer: Ken J. Wright
Date......: 12/08/1999
Purpose - Link to the Linux 'panel' library for ncurses windowing
functions. The panel library handles overlapping windows,
whereas, native ncurses windowing is only tiled.
-------------------------------< Revisions >---------------------------------
Revision| Date | Prog| Description
-----------------------------------------------------------------------------
1.00 | 12/08/99 | kjw | Initial release.
-----------------------------------------------------------------------------
}
interface
uses ncurses;
{$PACKRECORDS 4}
{$linklib panel}
const
libpanel = 'panel';
type
pPANEL = ^_PANEL;
_PANEL = record
win : ^WINDOW;
wstarty : longint;
wendy : longint;
wstartx : longint;
wendx : longint;
below : ppanel;
above : ppanel;
user : longint; { NCURSES_CONST void user; }
obscure : pointer;
end;
function panel_window(_para1:pPANEL):pWINDOW;cdecl;
procedure update_panels;cdecl;
function hide_panel(_para1:pPANEL):longint;cdecl;
function show_panel(_para1:pPANEL):longint;cdecl;
function del_panel(_para1:pPANEL):longint;cdecl;
function top_panel(_para1:pPANEL):longint;cdecl;
function bottom_panel(_para1:pPANEL):longint;cdecl;
function new_panel(_para1:pWINDOW):pPANEL;cdecl;
function panel_above(_para1:pPANEL):pPANEL;cdecl;
function panel_below(_para1:pPANEL):pPANEL;cdecl;
{ extern int set_panel_userptr(PANEL , NCURSES_CONST void ); }
{ extern NCURSES_CONST void panel_userptr(const PANEL ); }
function move_panel(_para1:pPANEL; _para2:longint; _para3:longint):longint;cdecl;
function replace_panel(_para1:pPANEL; _para2:pWINDOW):longint;cdecl;
function panel_hidden(_para1:pPANEL):longint;cdecl;
implementation
{const External_library='';}
function panel_window(_para1:pPANEL):pWINDOW;cdecl;external libpanel;
procedure update_panels;cdecl;external libpanel;
function hide_panel(_para1:pPANEL):longint;cdecl;external libpanel;
function show_panel(_para1:pPANEL):longint;cdecl;external libpanel;
function del_panel(_para1:pPANEL):longint;cdecl;external libpanel;
function top_panel(_para1:pPANEL):longint;cdecl;external libpanel;
function bottom_panel(_para1:pPANEL):longint;cdecl;external libpanel;
function new_panel(_para1:pWINDOW):pPANEL;cdecl;external libpanel;
function panel_above(_para1:pPANEL):pPANEL;cdecl;external libpanel;
function panel_below(_para1:pPANEL):pPANEL;cdecl;external libpanel;
{ extern int set_panel_userptr(PANEL , NCURSES_CONST void ); }
{ extern NCURSES_CONST void panel_userptr(const PANEL ); }
function move_panel(_para1:pPANEL; _para2:longint; _para3:longint):longint;cdecl;external libpanel;
function replace_panel(_para1:pPANEL; _para2:pWINDOW):longint;cdecl;external libpanel;
function panel_hidden(_para1:pPANEL):longint;cdecl;external libpanel;
end.
{
$Log$
Revision 1.4 2004-05-08 20:50:19 jonas
* Darwin fixes by mischi
Revision 1.3 2002/09/09 19:43:48 peter
* fix for new complete type check
Revision 1.2 2002/09/07 15:43:01 peter
* old logs removed and tabs fixed
Revision 1.1 2002/01/29 17:55:17 peter
* splitted to base and extra
}