Browse Source

* Darwin fixes by mischi

Jonas Maebe 21 years ago
parent
commit
8dd485f78c
3 changed files with 370 additions and 336 deletions
  1. 81 78
      packages/extra/ncurses/menu.pp
  2. 269 244
      packages/extra/ncurses/ncurses.pp
  3. 20 14
      packages/extra/ncurses/panel.pp

+ 81 - 78
packages/extra/ncurses/menu.pp

@@ -64,6 +64,9 @@ uses ncurses;
 
 {$include eti.inc}
 
+  const
+    libmenu = 'menu';
+
   type
      Menu_Options = longint;
      Item_Options = longint;
@@ -156,25 +159,25 @@ uses ncurses;
 
   const
   { Define keys  }
-     REQ_LEFT_ITEM = KEY_MAX + 1;
-     REQ_RIGHT_ITEM = KEY_MAX + 2;
-     REQ_UP_ITEM = KEY_MAX + 3;
-     REQ_DOWN_ITEM = KEY_MAX + 4;
-     REQ_SCR_ULINE = KEY_MAX + 5;
-     REQ_SCR_DLINE = KEY_MAX + 6;
-     REQ_SCR_DPAGE = KEY_MAX + 7;
-     REQ_SCR_UPAGE = KEY_MAX + 8;
-     REQ_FIRST_ITEM = KEY_MAX + 9;
-     REQ_LAST_ITEM = KEY_MAX + 10;
-     REQ_NEXT_ITEM = KEY_MAX + 11;
-     REQ_PREV_ITEM = KEY_MAX + 12;
-     REQ_TOGGLE_ITEM = KEY_MAX + 13;
-     REQ_CLEAR_PATTERN = KEY_MAX + 14;
-     REQ_BACK_PATTERN = KEY_MAX + 15;
-     REQ_NEXT_MATCH = KEY_MAX + 16;
-     REQ_PREV_MATCH = KEY_MAX + 17;
-     MIN_MENU_COMMAND = KEY_MAX + 1;
-     MAX_MENU_COMMAND = KEY_MAX + 17;
+     REQ_LEFT_ITEM      = KEY_MAX + 1;
+     REQ_RIGHT_ITEM     = KEY_MAX + 2;
+     REQ_UP_ITEM        = KEY_MAX + 3;
+     REQ_DOWN_ITEM      = KEY_MAX + 4;
+     REQ_SCR_ULINE      = KEY_MAX + 5;
+     REQ_SCR_DLINE      = KEY_MAX + 6;
+     REQ_SCR_DPAGE      = KEY_MAX + 7;
+     REQ_SCR_UPAGE      = KEY_MAX + 8;
+     REQ_FIRST_ITEM     = KEY_MAX + 9;
+     REQ_LAST_ITEM      = KEY_MAX + 10;
+     REQ_NEXT_ITEM      = KEY_MAX + 11;
+     REQ_PREV_ITEM      = KEY_MAX + 12;
+     REQ_TOGGLE_ITEM    = KEY_MAX + 13;
+     REQ_CLEAR_PATTERN  = KEY_MAX + 14;
+     REQ_BACK_PATTERN   = KEY_MAX + 15;
+     REQ_NEXT_MATCH     = KEY_MAX + 16;
+     REQ_PREV_MATCH     = KEY_MAX + 17;
+     MIN_MENU_COMMAND   = KEY_MAX + 1;
+     MAX_MENU_COMMAND   = KEY_MAX + 17;
   {
      Some AT&T code expects MAX_COMMAND to be out-of-band not
      just for menu commands but for forms ones as well.
@@ -261,12 +264,12 @@ uses ncurses;
 
 {const External_library=''; Setup as you need!}
 
-  function menu_items(_para1:pMENU):ppITEM;cdecl;external;
-  function current_item(_para1:pMENU):pITEM;cdecl;external;
-  function new_item(_para1:pchar; _para2:pchar):pITEM;cdecl;external;
-  function new_menu(_para1:ppITEM):pMENU;cdecl;external;
-  function item_opts(_para1:pITEM):Item_Options;cdecl;external;
-  function menu_opts(_para1:pMENU):Menu_Options;cdecl;external;
+  function menu_items(_para1:pMENU):ppITEM;cdecl;external libmenu;
+  function current_item(_para1:pMENU):pITEM;cdecl;external libmenu;
+  function new_item(_para1:pchar; _para2:pchar):pITEM;cdecl;external libmenu;
+  function new_menu(_para1:ppITEM):pMENU;cdecl;external libmenu;
+  function item_opts(_para1:pITEM):Item_Options;cdecl;external libmenu;
+  function menu_opts(_para1:pMENU):Menu_Options;cdecl;external libmenu;
 (*
   function item_init(_para1:pMENU):Menu_Hook;
     begin
@@ -285,59 +288,59 @@ uses ncurses;
        { You must implemented this function }
     end;
 *)
-  function menu_sub(_para1:pMENU):pWINDOW;cdecl;external;
-  function menu_win(_para1:pMENU):pWINDOW;cdecl;external;
-  function item_description(_para1:pITEM):pchar;cdecl;external;
-  function item_name(_para1:pITEM):pchar;cdecl;external;
-  function menu_mark(_para1:pMENU):pchar;cdecl;external;
-  function menu_request_name(_para1:longint):pchar;cdecl;external;
-  function menu_pattern(_para1:pMENU):pchar;cdecl;external;
-  function menu_userptr(_para1:pMENU):pointer;cdecl;external;
-  function item_userptr(_para1:pITEM):pointer;cdecl;external;
-  function menu_back(_para1:pMENU):chtype;cdecl;external;
-  function menu_fore(_para1:pMENU):chtype;cdecl;external;
-  function menu_grey(_para1:pMENU):chtype;cdecl;external;
-  function free_item(_para1:pITEM):longint;cdecl;external;
-  function free_menu(_para1:pMENU):longint;cdecl;external;
-  function item_count(_para1:pMENU):longint;cdecl;external;
-  function item_index(_para1:pITEM):longint;cdecl;external;
-  function item_opts_off(_para1:pITEM; _para2:Item_Options):longint;cdecl;external;
-  function item_opts_on(_para1:pITEM; _para2:Item_Options):longint;cdecl;external;
-  function menu_driver(_para1:pMENU; _para2:longint):longint;cdecl;external;
-  function menu_opts_off(_para1:pMENU; _para2:Menu_Options):longint;cdecl;external;
-  function menu_opts_on(_para1:pMENU; _para2:Menu_Options):longint;cdecl;external;
-  function menu_pad(_para1:pMENU):longint;cdecl;external;
-  function pos_menu_cursor(_para1:pMENU):longint;cdecl;external;
-  function post_menu(_para1:pMENU):longint;cdecl;external;
-  function scale_menu(_para1:pMENU; _para2:plongint; _para3:plongint):longint;cdecl;external;
-  function set_current_item(menu:pMENU; item:pITEM):longint;cdecl;external;
-{  function set_item_init(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;external;}
-  function set_item_opts(_para1:pITEM; _para2:Item_Options):longint;cdecl;external;
-{  function set_item_term(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;external;}
-  function set_item_userptr(_para1:pITEM; _para2:pointer):longint;cdecl;external;
-  function set_item_value(_para1:pITEM; _para2:bool):longint;cdecl;external;
-  function set_menu_back(_para1:pMENU; _para2:chtype):longint;cdecl;external;
-  function set_menu_fore(_para1:pMENU; _para2:chtype):longint;cdecl;external;
-  function set_menu_format(_para1:pMENU; _para2:longint; _para3:longint):longint;cdecl;external;
-  function set_menu_grey(_para1:pMENU; _para2:chtype):longint;cdecl;external;
-{  function set_menu_init(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;external;}
-  function set_menu_items(_para1:pMENU; _para2:ppITEM):longint;cdecl;external;
-  function set_menu_mark(_para1:pMENU; _para2:pchar):longint;cdecl;external;
-  function set_menu_opts(_para1:pMENU; _para2:Menu_Options):longint;cdecl;external;
-  function set_menu_pad(_para1:pMENU; _para2:longint):longint;cdecl;external;
-  function set_menu_pattern(_para1:pMENU; _para2:pchar):longint;cdecl;external;
-  function set_menu_sub(_para1:pMENU; _para2:pWINDOW):longint;cdecl;external;
-{  function set_menu_term(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;external;}
-  function set_menu_userptr(_para1:pMENU; _para2:pointer):longint;cdecl;external;
-  function set_menu_win(_para1:pMENU; _para2:pWINDOW):longint;cdecl;external;
-  function set_top_row(_para1:pMENU; _para2:longint):longint;cdecl;external;
-  function top_row(_para1:pMENU):longint;cdecl;external;
-  function unpost_menu(_para1:pMENU):longint;cdecl;external;
-  function menu_request_by_name(_para1:pchar):longint;cdecl;external;
-  function set_menu_spacing(_para1:pMENU; _para2:longint; _para3:longint; _para4:longint):longint;cdecl;external;
-  function menu_spacing(_para1:pMENU; _para2:plongint; _para3:plongint; _para4:plongint):longint;cdecl;external;
-  function item_value(_para1:pITEM):bool;cdecl;external;
-  function item_visible(_para1:pITEM):bool;cdecl;external;
+  function menu_sub(_para1:pMENU):pWINDOW;cdecl;external libmenu;
+  function menu_win(_para1:pMENU):pWINDOW;cdecl;external libmenu;
+  function item_description(_para1:pITEM):pchar;cdecl;external libmenu;
+  function item_name(_para1:pITEM):pchar;cdecl;external libmenu;
+  function menu_mark(_para1:pMENU):pchar;cdecl;external libmenu;
+  function menu_request_name(_para1:longint):pchar;cdecl;external libmenu;
+  function menu_pattern(_para1:pMENU):pchar;cdecl;external libmenu;
+  function menu_userptr(_para1:pMENU):pointer;cdecl;external libmenu;
+  function item_userptr(_para1:pITEM):pointer;cdecl;external libmenu;
+  function menu_back(_para1:pMENU):chtype;cdecl;external libmenu;
+  function menu_fore(_para1:pMENU):chtype;cdecl;external libmenu;
+  function menu_grey(_para1:pMENU):chtype;cdecl;external libmenu;
+  function free_item(_para1:pITEM):longint;cdecl;external libmenu;
+  function free_menu(_para1:pMENU):longint;cdecl;external libmenu;
+  function item_count(_para1:pMENU):longint;cdecl;external libmenu;
+  function item_index(_para1:pITEM):longint;cdecl;external libmenu;
+  function item_opts_off(_para1:pITEM; _para2:Item_Options):longint;cdecl;external libmenu;
+  function item_opts_on(_para1:pITEM; _para2:Item_Options):longint;cdecl;external libmenu;
+  function menu_driver(_para1:pMENU; _para2:longint):longint;cdecl;external libmenu;
+  function menu_opts_off(_para1:pMENU; _para2:Menu_Options):longint;cdecl;external libmenu;
+  function menu_opts_on(_para1:pMENU; _para2:Menu_Options):longint;cdecl;external libmenu;
+  function menu_pad(_para1:pMENU):longint;cdecl;external libmenu;
+  function pos_menu_cursor(_para1:pMENU):longint;cdecl;external libmenu;
+  function post_menu(_para1:pMENU):longint;cdecl;external libmenu;
+  function scale_menu(_para1:pMENU; _para2:plongint; _para3:plongint):longint;cdecl;external libmenu;
+  function set_current_item(menu:pMENU; item:pITEM):longint;cdecl;external libmenu;
+{  function set_item_init(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;external libmenu;}
+  function set_item_opts(_para1:pITEM; _para2:Item_Options):longint;cdecl;external libmenu;
+{  function set_item_term(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;external libmenu;}
+  function set_item_userptr(_para1:pITEM; _para2:pointer):longint;cdecl;external libmenu;
+  function set_item_value(_para1:pITEM; _para2:bool):longint;cdecl;external libmenu;
+  function set_menu_back(_para1:pMENU; _para2:chtype):longint;cdecl;external libmenu;
+  function set_menu_fore(_para1:pMENU; _para2:chtype):longint;cdecl;external libmenu;
+  function set_menu_format(_para1:pMENU; _para2:longint; _para3:longint):longint;cdecl;external libmenu;
+  function set_menu_grey(_para1:pMENU; _para2:chtype):longint;cdecl;external libmenu;
+{  function set_menu_init(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;external libmenu;}
+  function set_menu_items(_para1:pMENU; _para2:ppITEM):longint;cdecl;external libmenu;
+  function set_menu_mark(_para1:pMENU; _para2:pchar):longint;cdecl;external libmenu;
+  function set_menu_opts(_para1:pMENU; _para2:Menu_Options):longint;cdecl;external libmenu;
+  function set_menu_pad(_para1:pMENU; _para2:longint):longint;cdecl;external libmenu;
+  function set_menu_pattern(_para1:pMENU; _para2:pchar):longint;cdecl;external libmenu;
+  function set_menu_sub(_para1:pMENU; _para2:pWINDOW):longint;cdecl;external libmenu;
+{  function set_menu_term(_para1:pMENU; _para2:Menu_Hook):longint;cdecl;external libmenu;}
+  function set_menu_userptr(_para1:pMENU; _para2:pointer):longint;cdecl;external libmenu;
+  function set_menu_win(_para1:pMENU; _para2:pWINDOW):longint;cdecl;external libmenu;
+  function set_top_row(_para1:pMENU; _para2:longint):longint;cdecl;external libmenu;
+  function top_row(_para1:pMENU):longint;cdecl;external libmenu;
+  function unpost_menu(_para1:pMENU):longint;cdecl;external libmenu;
+  function menu_request_by_name(_para1:pchar):longint;cdecl;external libmenu;
+  function set_menu_spacing(_para1:pMENU; _para2:longint; _para3:longint; _para4:longint):longint;cdecl;external libmenu;
+  function menu_spacing(_para1:pMENU; _para2:plongint; _para3:plongint; _para4:plongint):longint;cdecl;external libmenu;
+  function item_value(_para1:pITEM):bool;cdecl;external libmenu;
+  function item_visible(_para1:pITEM):bool;cdecl;external libmenu;
 (*
   procedure menu_format(_para1:pMENU; _para2:plongint; _para3:plongint);
     begin

+ 269 - 244
packages/extra/ncurses/ncurses.pp

@@ -29,13 +29,18 @@ interface
 {$linklib c}
 
 { Manually Added types }
-Type
+type
   Bool = byte;
   PINTEGER = ^Longint;
   PLongint = ^ longint;
   PFILE = pointer;
 
 const
+{$ifndef openbsd}
+  libncurses = 'ncurses';
+{$else openbsd}
+  libncurses = 'curses';
+{$endif openbsd}
   NCURSES_VERSION_MAJOR = 5;
   NCURSES_VERSION_MINOR = 0;
   NCURSES_VERSION_PATCH = 19991023;
@@ -50,9 +55,14 @@ const
 type
   CXX_TYPE_OF_BOOL = char;
 
-Var
+var
+{$ifndef darwin}
     COLORS : longint; cvar; external;
     COLOR_PAIRS : longint; cvar; external;
+{$else darwin}
+    COLORS : longint; external libncurses name 'COLORS';
+    COLOR_PAIRS : longint; external libncurses name 'COLOR_PAIRS';
+{$endif darwin}
 
     const
        COLOR_BLACK = 0;
@@ -64,44 +74,48 @@ Var
        COLOR_CYAN = 6;
        COLOR_WHITE = 7;
 
-Type
+type
     tacs_map = array [char] of chtype;
     pacs_map = ^tacs_map;
 
-Var
+var
+{$ifndef darwin}
     acs_map : tacs_map; cvar; external;
-
+{$else darwin}
+    acs_map : tacs_map; external libncurses name 'acs_map';
+{$endif darwin}
+    
     function ACS_ULCORNER : chtype;
     function ACS_LLCORNER : chtype;
     function ACS_URCORNER : chtype;
     function ACS_LRCORNER : chtype;
-    function ACS_LTEE : chtype;
-    function ACS_RTEE : chtype;
-    function ACS_BTEE : chtype;
-    function ACS_TTEE : chtype;
-    function ACS_HLINE : chtype;
-    function ACS_VLINE : chtype;
-    function ACS_PLUS : chtype;
-    function ACS_S1      : chtype;
-    function ACS_S9      : chtype;
-    function ACS_DIAMOND : chtype;
-    function ACS_CKBOARD : chtype;
-    function ACS_DEGREE : chtype;
-    function ACS_PLMINUS : chtype;
-    function ACS_BULLET : chtype;
-    function ACS_LARROW : chtype;
-    function ACS_RARROW : chtype;
-    function ACS_DARROW : chtype;
-    function ACS_UARROW : chtype;
-    function ACS_BOARD : chtype;
-    function ACS_LANTERN : chtype;
-    function ACS_BLOCK : chtype;
-    function ACS_S3      : chtype;
-    function ACS_S7      : chtype;
-    function ACS_LEQUAL : chtype;
-    function ACS_GEQUAL : chtype;
-    function ACS_PI      : chtype;
-    function ACS_NEQUAL : chtype;
+    function ACS_LTEE     : chtype;
+    function ACS_RTEE     : chtype;
+    function ACS_BTEE     : chtype;
+    function ACS_TTEE     : chtype;
+    function ACS_HLINE    : chtype;
+    function ACS_VLINE    : chtype;
+    function ACS_PLUS     : chtype;
+    function ACS_S1       : chtype;
+    function ACS_S9       : chtype;
+    function ACS_DIAMOND  : chtype;
+    function ACS_CKBOARD  : chtype;
+    function ACS_DEGREE   : chtype;
+    function ACS_PLMINUS  : chtype;
+    function ACS_BULLET   : chtype;
+    function ACS_LARROW   : chtype;
+    function ACS_RARROW   : chtype;
+    function ACS_DARROW   : chtype;
+    function ACS_UARROW   : chtype;
+    function ACS_BOARD    : chtype;
+    function ACS_LANTERN  : chtype;
+    function ACS_BLOCK    : chtype;
+    function ACS_S3       : chtype;
+    function ACS_S7       : chtype;
+    function ACS_LEQUAL   : chtype;
+    function ACS_GEQUAL   : chtype;
+    function ACS_PI       : chtype;
+    function ACS_NEQUAL   : chtype;
     function ACS_STERLING : chtype;
     {
        Line drawing ACS names are of the form ACS_trbl, where t is the top, r
@@ -122,7 +136,8 @@ Var
     #define ACS_SBSB    ACS_VLINE
     #define ACS_SSSS    ACS_PLUS
     }
-    Const
+
+    const
        ERR = -(1);
        OK = 0;
        _SUBWIN = $01;
@@ -199,6 +214,7 @@ Var
        PSCREEN = PWINDOW;
 
       var
+{$ifndef darwin}
        stdscr  : PWINDOW; cvar; external;
        curscr  : PWINDOW; cvar; external;
        newscr  : PWINDOW; cvar; external;
@@ -206,229 +222,234 @@ Var
        COLS    : longint; cvar; external; 
        TABSIZE : longint; cvar; external;
        ESCDELAY: longint; cvar; external;
-
-    Function define_key(_para1:pchar; _para2:longint):longint; cdecl;external;
-    Function keyok(_para1:longint; _para2:bool):longint; cdecl;external;
-    Function resizeterm(_para1:longint; _para2:longint):longint; cdecl;external;
-    Function use_default_colors:longint; cdecl;external;
-    Function wresize(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
+{$else darwin}
+       stdscr  : PWINDOW; external libncurses name 'stdscr';
+       curscr  : PWINDOW; external libncurses name 'curscr';
+       newscr  : PWINDOW; external libncurses name 'newscr';
+       LINES   : longint; external libncurses name 'LINES'; 
+       COLS    : longint; external libncurses name 'COLS'; 
+       TABSIZE : longint; external libncurses name 'TABSIZE';
+       ESCDELAY: longint; external libncurses name 'ESCDELAY';
+{$endif darwin}
+
+    function define_key(_para1:pchar; _para2:longint):longint; cdecl;external libncurses;
+    function keyok(_para1:longint; _para2:bool):longint; cdecl;external libncurses;
+    function resizeterm(_para1:longint; _para2:longint):longint; cdecl;external libncurses;
+    function use_default_colors:longint; cdecl;external libncurses;
+    function wresize(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external libncurses;
     {
     extern char ttytype[];
     }
-    Function baudrate:longint; cdecl;external;
-    Function beep:longint; cdecl;external;
-    Function can_change_color:bool; cdecl;external;
-    Function cbreak:longint; cdecl;external;
-    Function clearok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-    Function color_content(_para1:longint; _para2:plongint; _para3:plongint; _para4:plongint):longint; cdecl;external;
-
-    Function copywin(_para1:pWINDOW; _para2:pWINDOW; _para3:longint; _para4:longint; _para5:longint;
-               _para6:longint; _para7:longint; _para8:longint; _para9:longint):longint;cdecl;external;
-    Function curs_set(_para1:longint):longint; cdecl;external;
-    Function def_prog_mode:longint; cdecl;external;
-    Function def_shell_mode:longint; cdecl;external;
-    Function delay_output(_para1:longint):longint; cdecl;external;
-    procedure delscreen(_para1:pSCREEN);cdecl;external;
-    Function delwin(_para1:pWINDOW):longint; cdecl;external;
-
-    Function doupdate:longint; cdecl;external;
-
-    Function echo:longint; cdecl;external;
-    Function endwin:longint; cdecl;external;
-    Function erasechar:char; cdecl;external;
-    procedure filter;cdecl;external;
-    Function flash:longint; cdecl;external;
-    Function flushinp:longint; cdecl;external;
-
-    Function halfdelay(_para1:longint):longint; cdecl;external;
-    Function has_colors:bool; cdecl;external;
-    Function has_ic:longint; cdecl;external;
-    Function has_il:longint; cdecl;external;
-    procedure idcok(_para1:pWINDOW; _para2:bool);cdecl;external;
-    Function idlok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-    procedure immedok(_para1:pWINDOW; _para2:bool);cdecl;external;
-
-    Function init_color(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;external;
-    Function init_pair(_para1:longint; _para2:longint; _para3:longint):longint; cdecl;external;
-    Function intrflush(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-    Function isendwin:longint; cdecl;external;
-    Function is_linetouched(_para1:pWINDOW; _para2:longint):longint; cdecl;external;
-    Function is_wintouched(_para1:pWINDOW):longint; cdecl;external;
-
-
-    Function keypad(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-    Function killchar:char; cdecl;external;
-    Function leaveok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-
-    Function meta(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-    Function mvcur(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;external;
-    Function mvderwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
-    function mvprintw(_para1:longint;_para2:longint;_para3:pchar;_para4:array of const):longint; cdecl;external;
+    function baudrate:longint; cdecl;external libncurses;
+    function beep:longint; cdecl;external libncurses;
+    function can_change_color:bool; cdecl;external libncurses;
+    function cbreak:longint; cdecl;external libncurses;
+    function clearok(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+    function color_content(_para1:longint; _para2:plongint; _para3:plongint; _para4:plongint):longint; cdecl;external libncurses;
+
+    function copywin(_para1:pWINDOW; _para2:pWINDOW; _para3:longint; _para4:longint; _para5:longint;
+               _para6:longint; _para7:longint; _para8:longint; _para9:longint):longint;cdecl;external libncurses;
+    function curs_set(_para1:longint):longint; cdecl;external libncurses;
+    function def_prog_mode:longint; cdecl;external libncurses;
+    function def_shell_mode:longint; cdecl;external libncurses;
+    function delay_output(_para1:longint):longint; cdecl;external libncurses;
+    procedure delscreen(_para1:pSCREEN);cdecl;external libncurses;
+    function delwin(_para1:pWINDOW):longint; cdecl;external libncurses;
+
+    function doupdate:longint; cdecl;external libncurses;
+
+    function echo:longint; cdecl;external libncurses;
+    function endwin:longint; cdecl;external libncurses;
+    function erasechar:char; cdecl;external libncurses;
+    procedure filter;cdecl;external libncurses;
+    function flash:longint; cdecl;external libncurses;
+    function flushinp:longint; cdecl;external libncurses;
+
+    function halfdelay(_para1:longint):longint; cdecl;external libncurses;
+    function has_colors:bool; cdecl;external libncurses;
+    function has_ic:longint; cdecl;external libncurses;
+    function has_il:longint; cdecl;external libncurses;
+    procedure idcok(_para1:pWINDOW; _para2:bool);cdecl;external libncurses;
+    function idlok(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+    procedure immedok(_para1:pWINDOW; _para2:bool);cdecl;external libncurses;
+
+    function init_color(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;external libncurses;
+    function init_pair(_para1:longint; _para2:longint; _para3:longint):longint; cdecl;external libncurses;
+    function intrflush(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+    function isendwin:longint; cdecl;external libncurses;
+    function is_linetouched(_para1:pWINDOW; _para2:longint):longint; cdecl;external libncurses;
+    function is_wintouched(_para1:pWINDOW):longint; cdecl;external libncurses;
+
+
+    function keypad(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+    function killchar:char; cdecl;external libncurses;
+    function leaveok(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+
+    function meta(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+    function mvcur(_para1:longint; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;external libncurses;
+    function mvderwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external libncurses;
+    function mvprintw(_para1:longint;_para2:longint;_para3:pchar;_para4:array of const):longint; cdecl;external libncurses;
     {
     extern int mvscanw(int,int,const char  ,...)
                 GCC_SCANFLIKE(3,4);
     }
-    Function mvwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
-    Function mvwprintw(_para1:pWINDOW;_para2,_para3:longint;_para4:pchar;_para5:array of const):longint; cdecl;external;
+    function mvwin(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external libncurses;
+    function mvwprintw(_para1:pWINDOW;_para2,_para3:longint;_para4:pchar;_para5:array of const):longint; cdecl;external libncurses;
     {
     extern int mvwprintw(WINDOW ,int,int,const char  ,...)
                 GCC_PRINTFLIKE(4,5);
     extern int mvwscanw(WINDOW  ,int,int,const char  ,...)
                 GCC_SCANFLIKE(4,5);
     }
-    Function napms(_para1:longint):longint; cdecl;external;
-
-    Function nl:longint; cdecl;external;
-    Function nocbreak:longint; cdecl;external;
-    Function nodelay(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-    Function noecho:longint; cdecl;external;
-    Function nonl:longint; cdecl;external;
-    Function noqiflush:longint; cdecl;external;
-    Function noraw:longint; cdecl;external;
-    Function notimeout(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-
-    Function overlay(_para1:pWINDOW; _para2:pWINDOW):longint; cdecl;external;
-
-    Function overwrite(_para1:pWINDOW; _para2:pWINDOW):longint; cdecl;external;
-    Function pair_content(_para1:longint; _para2:plongint; _para3:plongint):longint; cdecl;external;
-
-    Function pechochar(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
-    Function pnoutrefresh(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint;
-               _para6:longint; _para7:longint):longint;cdecl;external;
-    Function prefresh(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint;
-               _para6:longint; _para7:longint):longint;cdecl;external;
+    function napms(_para1:longint):longint; cdecl;external libncurses;
+
+    function nl:longint; cdecl;external libncurses;
+    function nocbreak:longint; cdecl;external libncurses;
+    function nodelay(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+    function noecho:longint; cdecl;external libncurses;
+    function nonl:longint; cdecl;external libncurses;
+    function noqiflush:longint; cdecl;external libncurses;
+    function noraw:longint; cdecl;external libncurses;
+    function notimeout(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+
+    function overlay(_para1:pWINDOW; _para2:pWINDOW):longint; cdecl;external libncurses;
+
+    function overwrite(_para1:pWINDOW; _para2:pWINDOW):longint; cdecl;external libncurses;
+    function pair_content(_para1:longint; _para2:plongint; _para3:plongint):longint; cdecl;external libncurses;
+
+    function pechochar(_para1:pWINDOW; _para2:chtype):longint; cdecl;external libncurses;
+    function pnoutrefresh(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint;
+               _para6:longint; _para7:longint):longint;cdecl;external libncurses;
+    function prefresh(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint;
+               _para6:longint; _para7:longint):longint;cdecl;external libncurses;
     {
     extern int printw(const char  ,...)
                 GCC_PRINTFLIKE(1,2);
     }
-    Function putp(_para1:pchar):longint; cdecl;external;
-    Function putwin(_para1:pWINDOW; _para2:pFILE):longint; cdecl;external;
-    Function qiflush:longint; cdecl;external;
-    Function raw:longint; cdecl;external;
-    Function resetty:longint; cdecl;external;
-    Function reset_prog_mode:longint; cdecl;external;
-    Function reset_shell_mode:longint; cdecl;external;
+    function putp(_para1:pchar):longint; cdecl;external libncurses;
+    function putwin(_para1:pWINDOW; _para2:pFILE):longint; cdecl;external libncurses;
+    function qiflush:longint; cdecl;external libncurses;
+    function raw:longint; cdecl;external libncurses;
+    function resetty:longint; cdecl;external libncurses;
+    function reset_prog_mode:longint; cdecl;external libncurses;
+    function reset_shell_mode:longint; cdecl;external libncurses;
 {
-    Function ripoffline(_para1:longint; init:function (_para1:pWINDOW; _para2:longint):longint):longint; cdecl;external;
+    function ripoffline(_para1:longint; init:function (_para1:pWINDOW; _para2:longint):longint):longint; cdecl;external libncurses;
 }
-    Function savetty:longint; cdecl;external;
+    function savetty:longint; cdecl;external libncurses;
     {
     extern int scanw(const char  ,...)
                 GCC_SCANFLIKE(1,2);
     }
-    Function scr_dump(_para1:pchar):longint; cdecl;external;
-
-    Function scr_init(_para1:pchar):longint; cdecl;external;
-    Function scrollok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-
-    Function scr_restore(_para1:pchar):longint; cdecl;external;
-
-    Function scr_set(_para1:pchar):longint; cdecl;external;
-
-
-    Function slk_attroff(_para1:attr_t):longint; cdecl;external;
-
-    Function slk_attron(_para1:attr_t):longint; cdecl;external;
-
-    Function slk_attrset(_para1:attr_t):longint; cdecl;external;
-    Function slk_attr:attr_t; cdecl;external;
-    Function slk_clear:longint; cdecl;external;
-    Function slk_init(_para1:longint):longint; cdecl;external;
-
-    Function slk_noutrefresh:longint; cdecl;external;
-    Function slk_refresh:longint; cdecl;external;
-    Function slk_restore:longint; cdecl;external;
-
-    Function slk_set(_para1:longint; _para2:pchar; _para3:longint):longint; cdecl;external;
-    Function slk_touch:longint; cdecl;external;
-    Function start_color:longint; cdecl;external;
-
-    Function syncok(_para1:pWINDOW; _para2:bool):longint; cdecl;external;
-    Function termattrs:chtype; cdecl;external;
-
-    Function tigetflag(_para1:pchar):longint; cdecl;external;
-
-    Function tigetnum(_para1:pchar):longint; cdecl;external;
-
-    Function derwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;external;
-    Function dupwin (_para1:pWINDOW):PWINDOW; cdecl;external;
-    Function getwin (_para1:pFILE):PWINDOW; cdecl;external;
-    Function initscr :PWINDOW; cdecl;external;
-    Function keyname  (_para1:longint):pchar; cdecl;external;
-    Function longname :pchar; cdecl;external;
-    Function newpad (_para1:longint; _para2:longint):PWINDOW; cdecl;external;
-    Function newterm (_para1:pchar; _para2:pFILE; _para3:pFILE):PSCREEN; cdecl;external;
-    Function newwin  (_para1:longint; _para2:longint; _para3:longint; _para4:longint):PWINDOW; cdecl;external;
-    Function set_term (_para1:pSCREEN):PSCREEN; cdecl;external;
-    Function slk_label (_para1:longint):pchar; cdecl;external;
-    Function subpad (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;external;
-    Function subwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;external;
-    Function termname :pchar; cdecl;external;
-    Function tigetstr (_para1:pchar):pchar; cdecl;external;
-    Function typeahead(_para1:longint):longint; cdecl;external;
-    Function ungetch(_para1:longint):longint; cdecl;external;
-    procedure use_env(_para1:bool);cdecl;external;
-    Function vidattr(_para1:chtype):longint; cdecl;external;
+    function scr_dump(_para1:pchar):longint; cdecl;external libncurses;
+
+    function scr_init(_para1:pchar):longint; cdecl;external libncurses;
+    function scrollok(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+
+    function scr_restore(_para1:pchar):longint; cdecl;external libncurses;
+    function scr_set(_para1:pchar):longint; cdecl;external libncurses;
+
+    function slk_attroff(_para1:attr_t):longint; cdecl;external libncurses;
+    function slk_attron(_para1:attr_t):longint; cdecl;external libncurses;
+    function slk_attrset(_para1:attr_t):longint; cdecl;external libncurses;
+    function slk_attr:attr_t; cdecl;external libncurses;
+    function slk_clear:longint; cdecl;external libncurses;
+    function slk_init(_para1:longint):longint; cdecl;external libncurses;
+
+    function slk_noutrefresh:longint; cdecl;external libncurses;
+    function slk_refresh:longint; cdecl;external libncurses;
+    function slk_restore:longint; cdecl;external libncurses;
+
+    function slk_set(_para1:longint; _para2:pchar; _para3:longint):longint; cdecl;external libncurses;
+    function slk_touch:longint; cdecl;external libncurses;
+    function start_color:longint; cdecl;external libncurses;
+
+    function syncok(_para1:pWINDOW; _para2:bool):longint; cdecl;external libncurses;
+    function termattrs:chtype; cdecl;external libncurses;
+
+    function tigetflag(_para1:pchar):longint; cdecl;external libncurses;
+
+    function tigetnum(_para1:pchar):longint; cdecl;external libncurses;
+
+    function derwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;external libncurses;
+    function dupwin (_para1:pWINDOW):PWINDOW; cdecl;external libncurses;
+    function getwin (_para1:pFILE):PWINDOW; cdecl;external libncurses;
+    function initscr :PWINDOW; cdecl;external libncurses;
+    function keyname  (_para1:longint):pchar; cdecl;external libncurses;
+    function longname :pchar; cdecl;external libncurses;
+    function newpad (_para1:longint; _para2:longint):PWINDOW; cdecl;external libncurses;
+    function newterm (_para1:pchar; _para2:pFILE; _para3:pFILE):PSCREEN; cdecl;external libncurses;
+    function newwin  (_para1:longint; _para2:longint; _para3:longint; _para4:longint):PWINDOW; cdecl;external libncurses;
+    function set_term (_para1:pSCREEN):PSCREEN; cdecl;external libncurses;
+    function slk_label (_para1:longint):pchar; cdecl;external libncurses;
+    function subpad (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;external libncurses;
+    function subwin (_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint; _para5:longint):PWINDOW; cdecl;external libncurses;
+    function termname :pchar; cdecl;external libncurses;
+    function tigetstr (_para1:pchar):pchar; cdecl;external libncurses;
+    function typeahead(_para1:longint):longint; cdecl;external libncurses;
+    function ungetch(_para1:longint):longint; cdecl;external libncurses;
+    procedure use_env(_para1:bool);cdecl;external libncurses;
+    function vidattr(_para1:chtype):longint; cdecl;external libncurses;
 {
-    Function vidputs(_para1:chtype; _para2:function (_para1:longint):longint):longint; cdecl;external;
+    function vidputs(_para1:chtype; _para2:function (_para1:longint):longint):longint; cdecl;external libncurses;
 }
 {
-    Function vwprintw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint; cdecl;external;
-    Function vwscanw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint; cdecl;external;
+    function vwprintw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint; cdecl;external libncurses;
+    function vwscanw(_para1:pWINDOW; _para2:pchar; _para3:va_list):longint; cdecl;external libncurses;
 }
-    Function waddch(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
-    Function waddchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint; cdecl;external;
-    Function waddnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external;
-    Function wattr_on(_para1:pWINDOW; _para2:attr_t):longint; cdecl;external;
-    Function wattr_off(_para1:pWINDOW; _para2:attr_t):longint; cdecl;external;
-    Function wattr_set(win : pwindow; at : longint) : longint; cdecl;external;
-    function wattron(win : pwindow;at : longint) : longint; cdecl;external;
-    function wattroff(win : pwindow;at : longint) : longint; cdecl;external;
-    function wattrset(win : pwindow;at : longint) : longint; cdecl;external;
-    Function wbkgd(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
-    procedure wbkgdset(_para1:pWINDOW; _para2:chtype);cdecl;external;
-    Function wborder(_para1:pWINDOW; _para2:chtype; _para3:chtype; _para4:chtype; _para5:chtype;
-               _para6:chtype; _para7:chtype; _para8:chtype; _para9:chtype):longint;cdecl;external;
-    Function wchgat(_para1:pWINDOW; _para2:longint; _para3:attr_t; _para4:longint; _para5:pointer):longint; cdecl;external;
-    Function wclear(_para1:pWINDOW):longint; cdecl;external;
-    Function wclrtobot(_para1:pWINDOW):longint; cdecl;external;
-    Function wclrtoeol(_para1:pWINDOW):longint; cdecl;external;
-    procedure wcursyncup(_para1:pWINDOW);cdecl;external;
-    Function wdelch(_para1:pWINDOW):longint; cdecl;external;
-    Function wechochar(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
-    Function werase(_para1:pWINDOW):longint; cdecl;external;
-    Function wgetch(_para1:pWINDOW):longint; cdecl;external;
-    Function wgetnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external;
-    Function whline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint; cdecl;external;
-    Function winch (win : PWindow) : longint; cdecl;external;
-    Function winchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint; cdecl;external;
-    Function winnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external;
-    Function winsch(_para1:pWINDOW; _para2:chtype):longint; cdecl;external;
-    Function winsdelln(_para1:pWINDOW; _para2:longint):longint; cdecl;external;
-    Function winsnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external;
-    Function wmove(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
-    Function wnoutrefresh(_para1:pWINDOW):longint; cdecl;external;
+    function waddch(_para1:pWINDOW; _para2:chtype):longint; cdecl;external libncurses;
+    function waddchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint; cdecl;external libncurses;
+    function waddnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external libncurses;
+    function wattr_on(_para1:pWINDOW; _para2:attr_t):longint; cdecl;external libncurses;
+    function wattr_off(_para1:pWINDOW; _para2:attr_t):longint; cdecl;external libncurses;
+    function wattr_set(win : pwindow; at : longint) : longint; cdecl;external libncurses;
+    function wattron(win : pwindow;at : longint) : longint; cdecl;external libncurses;
+    function wattroff(win : pwindow;at : longint) : longint; cdecl;external libncurses;
+    function wattrset(win : pwindow;at : longint) : longint; cdecl;external libncurses;
+    function wbkgd(_para1:pWINDOW; _para2:chtype):longint; cdecl;external libncurses;
+    procedure wbkgdset(_para1:pWINDOW; _para2:chtype);cdecl;external libncurses;
+    function wborder(_para1:pWINDOW; _para2:chtype; _para3:chtype; _para4:chtype; _para5:chtype;
+               _para6:chtype; _para7:chtype; _para8:chtype; _para9:chtype):longint;cdecl;external libncurses;
+    function wchgat(_para1:pWINDOW; _para2:longint; _para3:attr_t; _para4:longint; _para5:pointer):longint; cdecl;external libncurses;
+    function wclear(_para1:pWINDOW):longint; cdecl;external libncurses;
+    function wclrtobot(_para1:pWINDOW):longint; cdecl;external libncurses;
+    function wclrtoeol(_para1:pWINDOW):longint; cdecl;external libncurses;
+    procedure wcursyncup(_para1:pWINDOW);cdecl;external libncurses;
+    function wdelch(_para1:pWINDOW):longint; cdecl;external libncurses;
+    function wechochar(_para1:pWINDOW; _para2:chtype):longint; cdecl;external libncurses;
+    function werase(_para1:pWINDOW):longint; cdecl;external libncurses;
+    function wgetch(_para1:pWINDOW):longint; cdecl;external libncurses;
+    function wgetnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external libncurses;
+    function whline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint; cdecl;external libncurses;
+    function winch (win : PWindow) : longint; cdecl;external libncurses;
+    function winchnstr(_para1:pWINDOW; _para2:pchtype; _para3:longint):longint; cdecl;external libncurses;
+    function winnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external libncurses;
+    function winsch(_para1:pWINDOW; _para2:chtype):longint; cdecl;external libncurses;
+    function winsdelln(_para1:pWINDOW; _para2:longint):longint; cdecl;external libncurses;
+    function winsnstr(_para1:pWINDOW; _para2:pchar; _para3:longint):longint; cdecl;external libncurses;
+    function wmove(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external libncurses;
+    function wnoutrefresh(_para1:pWINDOW):longint; cdecl;external libncurses;
     {
     extern int wprintw(WINDOW  ,const char  ,...)
                 GCC_PRINTFLIKE(2,3);
     }
-    Function wredrawln(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
-    Function wrefresh(_para1:pWINDOW):longint; cdecl;external;
+    function wredrawln(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external libncurses;
+    function wrefresh(_para1:pWINDOW):longint; cdecl;external libncurses;
     {
     extern int wscanw(WINDOW  ,const char  ,...)
                 GCC_SCANFLIKE(2,3);
     }
-    Function wscrl(_para1:pWINDOW; _para2:longint):longint; cdecl;external;
-    Function wsetscrreg(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external;
-    procedure wsyncdown(_para1:pWINDOW);cdecl;external;
-    procedure wsyncup(_para1:pWINDOW);cdecl;external;
-    Function wtimeout(_para1:pWINDOW; _para2:longint):longint; cdecl;external;
-    Function wtouchln(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;external;
-    Function wvline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint; cdecl;external;
-    Function mvwchgat(_para1:pWINDOW; _para2:longint; _para3:longint;
+    function wscrl(_para1:pWINDOW; _para2:longint):longint; cdecl;external libncurses;
+    function wsetscrreg(_para1:pWINDOW; _para2:longint; _para3:longint):longint; cdecl;external libncurses;
+    procedure wsyncdown(_para1:pWINDOW);cdecl;external libncurses;
+    procedure wsyncup(_para1:pWINDOW);cdecl;external libncurses;
+    function wtimeout(_para1:pWINDOW; _para2:longint):longint; cdecl;external libncurses;
+    function wtouchln(_para1:pWINDOW; _para2:longint; _para3:longint; _para4:longint):longint; cdecl;external libncurses;
+    function wvline(_para1:pWINDOW; _para2:chtype; _para3:longint):longint; cdecl;external libncurses;
+    function mvwchgat(_para1:pWINDOW; _para2:longint; _para3:longint;
                       _para4:longint; _para5:longint; _para6:longint;
-                      _para7:longint):longint;cdecl;external;
-    Function PAIR_NUMBER(_para1:longint):longint;cdecl;external;
+                      _para7:longint):longint;cdecl;external libncurses;
+    function PAIR_NUMBER(_para1:longint):longint;cdecl;external libncurses;
 
     const
            A_NORMAL = 0;
@@ -450,7 +471,7 @@ Var
            A_RIGHT = 1 shl (20 + 8);
            A_TOP = 1 shl (21 + 8);
            A_VERTICAL = 1 shl (22 + 8);
-     Function color_pair(n : longint): longint;
+     function color_pair(n : longint): longint;
 {
            PAIR_NUMBER = (a(@(A_COLOR))) shr 8;
 }
@@ -470,7 +491,7 @@ Var
     procedure getbegyx(win : pwindow; var y,x : longint);
     procedure getmaxyx(win : pwindow; var y,x : longint);
     procedure getparyx(win : pwindow; var y,x : longint);
-    Procedure getsyx  (var y,x : longint);
+    procedure getsyx  (var y,x : longint);
     procedure setsyx (y,x : longint);
     function getattrs(win : pwindow) : longint;
     function getcurx(win : pwindow) : longint;
@@ -547,25 +568,25 @@ Var
     {
        mv functions
      }
-    function  mvwaddch(win : pwindow;y,x : longint; ch : chtype) : longint;
-    function  mvwaddchnstr(win : pwindow;y,x : longint;st : pchar;n : longint) : longint;
-    function  mvwaddchstr(win : pwindow;y,x : longint;st : pchar) : longint;
-    function  mvwaddnstr(win : pwindow;y,x : longint;st : pchar;n : longint) : longint;
-    function  mvwaddstr(win : pwindow;y,x : longint;st : pchar) : longint;
-    function  mvwdelch(win : pwindow;y,x : longint) : longint;
-    function  mvwgetch(win : pwindow;y,x : longint) : longint;
-    function  mvwgetnstr(win : pwindow;y,x : longint;st : pchar;n: longint) : longint;
-    function  mvwgetstr(win : pwindow;y,x : longint;st: pchar) : longint;
-    function  mvwhline(win : pwindow;y,x : longint;c : chtype;n : longint) : longint;
-    function  mvwinch(win : pwindow;y,x : longint) : longint;
-    function  mvwinchnstr(win : pwindow;y,x : longint;s : pchar; n : longint) : longint;
-    function  mvwinchstr(win : pwindow;y,x : longint;s : pchar) : longint;
-    function  mvwinnstr(win : pwindow;y,x : longint;s : pchar;n : longint) : longint;
-    function  mvwinsch(win : pwindow;y,x : longint;c : chtype) : longint;
-    function  mvwinsnstr(win : pwindow;y,x : longint;s : pchar;n : longint) : longint;
-    function  mvwinsstr(win : pwindow;y,x : longint;s : pchar) : longint;
-    function  mvwinstr(win : pwindow;y,x : longint;s : pchar) : longint;
-    function  mvwvline(win : pwindow;y,x : longint;c : chtype;n : longint) : longint;
+    function mvwaddch(win : pwindow;y,x : longint; ch : chtype) : longint;
+    function mvwaddchnstr(win : pwindow;y,x : longint;st : pchar;n : longint) : longint;
+    function mvwaddchstr(win : pwindow;y,x : longint;st : pchar) : longint;
+    function mvwaddnstr(win : pwindow;y,x : longint;st : pchar;n : longint) : longint;
+    function mvwaddstr(win : pwindow;y,x : longint;st : pchar) : longint;
+    function mvwdelch(win : pwindow;y,x : longint) : longint;
+    function mvwgetch(win : pwindow;y,x : longint) : longint;
+    function mvwgetnstr(win : pwindow;y,x : longint;st : pchar;n: longint) : longint;
+    function mvwgetstr(win : pwindow;y,x : longint;st: pchar) : longint;
+    function mvwhline(win : pwindow;y,x : longint;c : chtype;n : longint) : longint;
+    function mvwinch(win : pwindow;y,x : longint) : longint;
+    function mvwinchnstr(win : pwindow;y,x : longint;s : pchar; n : longint) : longint;
+    function mvwinchstr(win : pwindow;y,x : longint;s : pchar) : longint;
+    function mvwinnstr(win : pwindow;y,x : longint;s : pchar;n : longint) : longint;
+    function mvwinsch(win : pwindow;y,x : longint;c : chtype) : longint;
+    function mvwinsnstr(win : pwindow;y,x : longint;s : pchar;n : longint) : longint;
+    function mvwinsstr(win : pwindow;y,x : longint;s : pchar) : longint;
+    function mvwinstr(win : pwindow;y,x : longint;s : pchar) : longint;
+    function mvwvline(win : pwindow;y,x : longint;c : chtype;n : longint) : longint;
     function mvaddch(y,x,ch : longint) : longint;
     function mvaddchnstr(y,x : longint; st: pchar;n : longint) : longint;
     function mvaddchstr(y,x : longint; st : pchar) : longint;
@@ -612,6 +633,7 @@ Var
        KEY_HOME = 262;          {0406}
        KEY_BACKSPACE = 263;     {0407}
        KEY_F0 = 264;            {0410}
+
     function KEY_F(n : longint) : longint;
 
     const
@@ -700,8 +722,8 @@ Var
        KEY_RESIZE = 410;        {0632}
        KEY_MAX = 511;           {0777}
 
-    function mcprint(_para1:pchar; _para2:longint):longint;cdecl;external;
-    function has_key(_para1:longint):longint;cdecl;external;
+    function mcprint(_para1:pchar; _para2:longint):longint;cdecl;external libncurses;
+    function has_key(_para1:longint):longint;cdecl;external libncurses;
 
 implementation
 
@@ -1687,7 +1709,10 @@ end;
 end.
 {
   $Log$
-  Revision 1.6  2003-10-15 17:04:40  florian
+  Revision 1.7  2004-05-08 20:50:19  jonas
+    * Darwin fixes by mischi
+
+  Revision 1.6  2003/10/15 17:04:40  florian
     + some print functions added
 
   Revision 1.5  2003/02/09 19:10:13  marco

+ 20 - 14
packages/extra/ncurses/panel.pp

@@ -22,6 +22,9 @@ uses ncurses;
 {$PACKRECORDS 4}
 {$linklib panel}
 
+  const
+    libpanel = 'panel';
+
   type
 
      pPANEL = ^_PANEL;
@@ -60,28 +63,31 @@ implementation
 
 {const External_library='';}
 
-  function panel_window(_para1:pPANEL):pWINDOW;cdecl;External;
-  procedure update_panels;cdecl;External;
-  function hide_panel(_para1:pPANEL):longint;cdecl;External;
-  function show_panel(_para1:pPANEL):longint;cdecl;External;
-  function del_panel(_para1:pPANEL):longint;cdecl;External;
-  function top_panel(_para1:pPANEL):longint;cdecl;External;
-  function bottom_panel(_para1:pPANEL):longint;cdecl;External;
-  function new_panel(_para1:pWINDOW):pPANEL;cdecl;External;
-  function panel_above(_para1:pPANEL):pPANEL;cdecl;External;
-  function panel_below(_para1:pPANEL):pPANEL;cdecl;External;
+  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;
-  function replace_panel(_para1:pPANEL; _para2:pWINDOW):longint;cdecl;External;
-  function panel_hidden(_para1:pPANEL):longint;cdecl;External;
+  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.3  2002-09-09 19:43:48  peter
+  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