X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fada%2Fterminal_interface-curses-text_io-aux__adb.htm;h=ac4415cdb27bc1f51c97e447d5683fbcb4111a97;hp=14797f8fc533e458681859526c748ab4c2038906;hb=46722468f47c2b77b3987729b4bcf2321cccfd01;hpb=c633e5103a29a38532cf1925257b91cea33fd090 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..ac4415cd 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 @@ -37,70 +37,71 @@ -- sale, use or other dealings in this Software without prior written -- -- authorization. -- ------------------------------------------------------------------------------ --- Author: Jürgen Pfeifer <<juergen.pfeifer@gmx.net>> 1996 +-- Author: Jürgen Pfeifer, 1996 +-- Contact: www.familiepfeifer.de/Contact.aspx?Lang=en -- Version Control: --- @Revision: 1.9 @ +-- @Revision: 1.10 @ -- 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 : in Window; + Buf : in String; + Width : in Field; + Signal : in Boolean := True; + Ljust : in 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; @@ -108,23 +109,23 @@ 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;