X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fada%2Fterminal_interface-curses-termcap__adb.htm;h=b6cf8933f4dec4feaffa1734c55e553661ada279;hp=3b7489f0271f3f09b582c91eea0350f845a9fddf;hb=a90dd7b66fa711acd24d8181ea20e4f57d4b36cd;hpb=bca50d0d8592defee6c584fdedd25f4b1a31345b diff --git a/doc/html/ada/terminal_interface-curses-termcap__adb.htm b/doc/html/ada/terminal_interface-curses-termcap__adb.htm index 3b7489f0..b6cf8933 100644 --- a/doc/html/ada/terminal_interface-curses-termcap__adb.htm +++ b/doc/html/ada/terminal_interface-curses-termcap__adb.htm @@ -24,7 +24,8 @@ -- B O D Y -- -- -- ------------------------------------------------------------------------------ --- Copyright (c) 2000-2006,2009 Free Software Foundation, Inc. -- +-- Copyright 2020 Thomas E. Dickey -- +-- Copyright 2000-2006,2009 Free Software Foundation, Inc. -- -- -- -- Permission is hereby granted, free of charge, to any person obtaining a -- -- copy of this software and associated documentation files (the -- @@ -52,130 +53,130 @@ ------------------------------------------------------------------------------ -- Author: Juergen Pfeifer, 1996 -- Version Control: --- @Revision: 1.12 @ --- @Date: 2009/12/26 17:38:58 @ +-- @Revision: 1.13 @ +-- @Date: 2020/02/02 23:34:34 @ -- Binding Version 01.00 ------------------------------------------------------------------------------ -with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux; +with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux; with Interfaces.C; use Interfaces.C; with Interfaces.C.Strings; use Interfaces.C.Strings; -package body Terminal_Interface.Curses.Termcap is +package body Terminal_Interface.Curses.Termcap is - function Get_Entry (Name : String) return Boolean + function Get_Entry (Name : String) return Boolean is - function tgetent (name : char_array; val : char_array) - return C_Int; + function tgetent (name : char_array; val : char_array) + return C_Int; pragma Import (C, tgetent, "tgetent"); - NameTxt : char_array (0 .. Name'Length); - Length : size_t; - ignored : constant char_array (0 .. 0) := (0 => nul); - result : C_Int; + NameTxt : char_array (0 .. Name'Length); + Length : size_t; + ignored : constant char_array (0 .. 0) := (0 => nul); + result : C_Int; begin - To_C (Name, NameTxt, Length); - result := tgetent (char_array (ignored), NameTxt); - if result = -1 then - raise Curses_Exception; + To_C (Name, NameTxt, Length); + result := tgetent (char_array (ignored), NameTxt); + if result = -1 then + raise Curses_Exception; else - return Boolean'Val (result); + return Boolean'Val (result); end if; - end Get_Entry; + end Get_Entry; ------------------------------------------------------------------------------ - function Get_Flag (Name : String) return Boolean + function Get_Flag (Name : String) return Boolean is - function tgetflag (id : char_array) return C_Int; + function tgetflag (id : char_array) return C_Int; pragma Import (C, tgetflag, "tgetflag"); - Txt : char_array (0 .. Name'Length); - Length : size_t; + Txt : char_array (0 .. Name'Length); + Length : size_t; begin - To_C (Name, Txt, Length); - if tgetflag (Txt) = 0 then + To_C (Name, Txt, Length); + if tgetflag (Txt) = 0 then return False; else return True; end if; - end Get_Flag; + end Get_Flag; ------------------------------------------------------------------------------ - procedure Get_Number (Name : String; - Value : out Integer; - Result : out Boolean) + procedure Get_Number (Name : String; + Value : out Integer; + Result : out Boolean) is - function tgetnum (id : char_array) return C_Int; + function tgetnum (id : char_array) return C_Int; pragma Import (C, tgetnum, "tgetnum"); - Txt : char_array (0 .. Name'Length); - Length : size_t; + Txt : char_array (0 .. Name'Length); + Length : size_t; begin - To_C (Name, Txt, Length); - Value := Integer (tgetnum (Txt)); - if Value = -1 then - Result := False; + To_C (Name, Txt, Length); + Value := Integer (tgetnum (Txt)); + if Value = -1 then + Result := False; else - Result := True; + Result := True; end if; - end Get_Number; + end Get_Number; ------------------------------------------------------------------------------ - procedure Get_String (Name : String; - Value : out String; - Result : out Boolean) + procedure Get_String (Name : String; + Value : out String; + Result : out Boolean) is - function tgetstr (id : char_array; - buf : char_array) return chars_ptr; + function tgetstr (id : char_array; + buf : char_array) return chars_ptr; pragma Import (C, tgetstr, "tgetstr"); - Txt : char_array (0 .. Name'Length); - Length : size_t; - Txt2 : chars_ptr; + Txt : char_array (0 .. Name'Length); + Length : size_t; + Txt2 : chars_ptr; type t is new char_array (0 .. 1024); -- does it need to be 1024? - Return_Buffer : constant t := (others => nul); + Return_Buffer : constant t := (others => nul); begin - To_C (Name, Txt, Length); - Txt2 := tgetstr (Txt, char_array (Return_Buffer)); - if Txt2 = Null_Ptr then - Result := False; + To_C (Name, Txt, Length); + Txt2 := tgetstr (Txt, char_array (Return_Buffer)); + if Txt2 = Null_Ptr then + Result := False; else - Value := Fill_String (Txt2); - Result := True; + Value := Fill_String (Txt2); + Result := True; end if; - end Get_String; + end Get_String; - function Get_String (Name : String) return Boolean + function Get_String (Name : String) return Boolean is - function tgetstr (Id : char_array; - buf : char_array) return chars_ptr; + function tgetstr (Id : char_array; + buf : char_array) return chars_ptr; pragma Import (C, tgetstr, "tgetstr"); - Txt : char_array (0 .. Name'Length); - Length : size_t; - Txt2 : chars_ptr; + Txt : char_array (0 .. Name'Length); + Length : size_t; + Txt2 : chars_ptr; type t is new char_array (0 .. 1024); -- does it need to be 1024? - Phony_Txt : constant t := (others => nul); + Phony_Txt : constant t := (others => nul); begin - To_C (Name, Txt, Length); - Txt2 := tgetstr (Txt, char_array (Phony_Txt)); - if Txt2 = Null_Ptr then + To_C (Name, Txt, Length); + Txt2 := tgetstr (Txt, char_array (Phony_Txt)); + if Txt2 = Null_Ptr then return False; else return True; end if; - end Get_String; + end Get_String; ------------------------------------------------------------------------------ - function TGoto (Cap : String; - Col : Column_Position; - Row : Line_Position) return Termcap_String is - function tgoto (cap : char_array; - col : C_Int; - row : C_Int) return chars_ptr; + function TGoto (Cap : String; + Col : Column_Position; + Row : Line_Position) return Termcap_String is + function tgoto (cap : char_array; + col : C_Int; + row : C_Int) return chars_ptr; pragma Import (C, tgoto); - Txt : char_array (0 .. Cap'Length); - Length : size_t; + Txt : char_array (0 .. Cap'Length); + Length : size_t; begin - To_C (Cap, Txt, Length); - return Termcap_String (Fill_String - (tgoto (Txt, C_Int (Col), C_Int (Row)))); - end TGoto; + To_C (Cap, Txt, Length); + return Termcap_String (Fill_String + (tgoto (Txt, C_Int (Col), C_Int (Row)))); + end TGoto; -end Terminal_Interface.Curses.Termcap; +end Terminal_Interface.Curses.Termcap;