X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fada%2Fterminal_interface-curses-text_io-aux__adb.htm;h=104b9496243d6422bc915c07250b75bbef19bbbf;hp=14797f8fc533e458681859526c748ab4c2038906;hb=77afe78361875f531dc2bf8d73f2e781c8e76176;hpb=b1f61d9f3aa244512045a6b02e759825d7049d34 diff --git a/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm b/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm index 14797f8f..104b9496 100644 --- a/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm +++ b/doc/html/ada/terminal_interface-curses-text_io-aux__adb.htm @@ -1,3 +1,4 @@ + terminal_interface-curses-text_io-aux.adb

File : terminal_interface-curses-text_io-aux.adb


@@ -11,7 +12,7 @@ -- B O D Y -- -- -- ------------------------------------------------------------------------------ --- Copyright (c) 1998 Free Software Foundation, Inc. -- +-- Copyright (c) 1998-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 -- @@ -37,97 +38,97 @@ -- sale, use or other dealings in this Software without prior written -- -- authorization. -- ------------------------------------------------------------------------------ --- Author: Jürgen Pfeifer <<juergen.pfeifer@gmx.net>> 1996 +-- Author: Juergen Pfeifer, 1996 -- Version Control: --- @Revision: 1.9 @ +-- @Revision: 1.13 @ +-- @Date: 2009/12/26 17:38:58 @ -- Binding Version 01.00 ------------------------------------------------------------------------------ -package body Terminal_Interface.Curses.Text_IO.Aux is +package body Terminal_Interface.Curses.Text_IO.Aux is - procedure Put_Buf - (Win : in Window; - Buf : in String; - Width : in Field; - Signal : in Boolean := True; - Ljust : in Boolean := False) + procedure Put_Buf + (Win : Window; + Buf : String; + Width : Field; + Signal : Boolean := True; + Ljust : Boolean := False) is - L : Field; - Len : Field; - W : Field := Width; - LC : Line_Count; - CC : Column_Count; - Y : Line_Position; - X : Column_Position; + L : Field; + Len : Field; + W : Field := Width; + LC : Line_Count; + CC : Column_Count; + Y : Line_Position; + X : Column_Position; - procedure Output (From, To : Field); + procedure Output (From, To : Field); - procedure Output (From, To : Field) + procedure Output (From, To : Field) is begin - if Len > 0 then - if W = 0 then - W := Len; + if Len > 0 then + if W = 0 then + W := Len; end if; - if Len > W then + if Len > W then -- LRM A10.6 (7) says this - W := Len; + W := Len; end if; - pragma Assert (Len <= W); - Get_Size (Win, LC, CC); - if Column_Count (Len) > CC then - if Signal then - raise Layout_Error; + pragma Assert (Len <= W); + Get_Size (Win, LC, CC); + if Column_Count (Len) > CC then + if Signal then + raise Layout_Error; else return; end if; else - if Len < W and then not Ljust then + if Len < W and then not Ljust then declare - Filler : constant String (1 .. (W - Len)) + Filler : constant String (1 .. (W - Len)) := (others => ' '); begin - Put (Win, Filler); + Put (Win, Filler); end; end if; - Get_Cursor_Position (Win, Y, X); - if (X + Column_Position (Len)) > CC then - New_Line (Win); + Get_Cursor_Position (Win, Y, X); + if (X + Column_Position (Len)) > CC then + New_Line (Win); end if; - Put (Win, Buf (From .. To)); - if Len < W and then Ljust then + Put (Win, Buf (From .. To)); + if Len < W and then Ljust then declare - Filler : constant String (1 .. (W - Len)) + Filler : constant String (1 .. (W - Len)) := (others => ' '); begin - Put (Win, Filler); + Put (Win, Filler); end; end if; end if; end if; - end Output; + end Output; begin - pragma Assert (Win /= Null_Window); - if Ljust then - L := 1; - for I in 1 .. Buf'Length loop - exit when Buf (L) = ' '; - L := L + 1; + pragma Assert (Win /= Null_Window); + if Ljust then + L := 1; + for I in 1 .. Buf'Length loop + exit when Buf (L) = ' '; + L := L + 1; end loop; - Len := L - 1; - Output (1, Len); + Len := L - 1; + Output (1, Len); else -- input buffer is not left justified - L := Buf'Length; - for I in 1 .. Buf'Length loop - exit when Buf (L) = ' '; - L := L - 1; + L := Buf'Length; + for I in 1 .. Buf'Length loop + exit when Buf (L) = ' '; + L := L - 1; end loop; - Len := Buf'Length - L; - Output (L + 1, Buf'Length); + Len := Buf'Length - L; + Output (L + 1, Buf'Length); end if; - end Put_Buf; + end Put_Buf; -end Terminal_Interface.Curses.Text_IO.Aux; - - \ No newline at end of file +end Terminal_Interface.Curses.Text_IO.Aux; +