[31m-- Skywalker is another attempt of A. i. written with Ada.[m
[31m-- Skywalker is Copyright (C) 2024 Manuel De Girardi ; [m
[31m--[m
[31m--   This program is free software; you can redistribute it and/or modify[m
[31m--   it under the terms of the GNU General Public License as published by[m
[31m--   the Free Software Foundation; either version 2 of the License, or[m
[31m--   (at your option) any later version.[m
[31m--[m
[31m--   This program is distributed in the hope that it will be useful,[m
[31m--   but WITHOUT ANY WARRANTY; without even the implied warranty of[m
[31m--   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the[m
[31m--   GNU General Public License for more details.[m
[31m--[m
[31m--   You should have received a copy of the GNU General Public License[m
[31m--   along with this program; if not, write to the Free Software[m
[31m--   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA[m
[31m--[m
[31m-- Date := "2024-11-12 09:45:23"[m
[31m-- Version := "0.0.8r"[m
[01;34mwith[m Ada[31m.[mCharacters[31m.[mHandling[31m;[m
[01;34muse[m Ada[31m.[mCharacters[31m;[m
[01;34mwith[m Text_Io[31m;[m
[01;34muse[m Text_Io[31m;[m

[01;34mpackage[m [01;34mbody[m Sky[31m.[mWindows [01;34mis[m
   
   [01;34mfunction[m Lines_Max [01;34mreturn[m Line_Range [01;34mis[m
   [01;34mbegin[m
      [01;34mreturn[m Lines[31m;[m
   [01;34mend[m Lines_Max[31m;[m
   [01;34mfunction[m Cols_Max [01;34mreturn[m Column_Range [01;34mis[m
   [01;34mbegin[m
      [01;34mreturn[m Columns[31m;[m
   [01;34mend[m Cols_Max[31m;[m
   
   [01;34mprocedure[m [01;30mSet_Color[m [31m([mWindow [31m:[m [01;34min[m [01;34mout[m Window_Record[31m;[m Color [31m:[m Color_Type[31m)[m [01;34mis[m
      
   [01;34mbegin[m
      [01;34mcase[m Style [01;34mis[m
	 [01;34mwhen[m Black_And_Color [31m|[m Black_And_White [31m=>[m
	    [01;34mnull[m[31m;[m
	 [01;34mwhen[m [01;34mothers[m [31m=>[m
	    Window[31m.[mWin[31m.[mFrame_Color [31m:=[m Color[31m;[m
      [01;34mend[m [01;34mcase[m[31m;[m
   [01;34mend[m Set_Color[31m;[m
   
   
   [01;34mprocedure[m [01;30mInitialize[m [31m([mWin [31m:[m [01;34min[m [01;34mout[m Window_Record[31m;[m
			 Line_Pos [31m:[m [01;34min[m Line_Range[31m;[m
			 Col_Pos [31m:[m [01;34min[m Column_Range[31m;[m
			 Lines [31m:[m [01;34min[m Line_Range[31m;[m
			 Cols [31m:[m [01;34min[m Column_Range[31m;[m
			 Color [31m:[m [01;34min[m Color_Type[31m;[m
			 Box_Color [31m:[m [01;34min[m Color_Type[31m)[m [01;34mis[m
   [01;34mbegin[m
      
      Win[31m.[mWin[31m.[mL [31m:=[m Line_Pos[31m;[m
      
      Win[31m.[mWin[31m.[mC [31m:=[m Col_Pos[31m;[m
      
      Win[31m.[mWin[31m.[mH [31m:=[m Lines[31m;[m
      
      Win[31m.[mWin[31m.[mW [31m:=[m cols[31m;[m
      
      Win[31m.[mL [31m:=[m Line_Pos[31m;[m
      
      Win[31m.[mC [31m:=[m Col_Pos[31m;[m
      
      Win[31m.[mH [31m:=[m Lines[31m;[m
      
      Win[31m.[mW [31m:=[m cols[31m;[m
      
      
      Win[31m.[mWin[31m.[mFrame_Type [31m:=[m Single_Line_Frame[31m;[m
      
      [01;34mcase[m Style [01;34mis[m
	 [01;34mwhen[m Black_And_White [31m|[m Black_And_color [31m=>[m
	    
	    Win[31m.[mWin[31m.[mFrame_Color [31m:=[m black[31m;[m
	    
	    Win[31m.[mWin[31m.[mClose_Box_Color [31m:=[m black[31m;[m
	    
	 [01;34mwhen[m White_And_Color [31m=>[m
	    
	    Win[31m.[mWin[31m.[mFrame_Color [31m:=[m white[31m;[m
	    
	    Win[31m.[mWin[31m.[mClose_Box_Color [31m:=[m white[31m;[m
	    
	 [01;34mwhen[m [01;34mothers[m [31m=>[m
	    
	    Win[31m.[mWin[31m.[mFrame_Color [31m:=[m Color[31m;[m
	    
	    Win[31m.[mWin[31m.[mClose_Box_Color [31m:=[m Box_Color[31m;[m
      [01;34mend[m [01;34mcase[m[31m;[m
      
   [01;34mend[m Initialize[31m;[m
   
   [01;34mprocedure[m [01;30mDraw_Window[m [31m([mWin [31m:[m [01;34min[m Window_Record[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mDraw_Window[m[31m([mWin[31m.[mWin[31m);[m
   [01;34mend[m Draw_Window[31m;[m
   
   [01;34mprocedure[m [01;30mEnlight_Window[m [31m([mWin [31m:[m [01;34min[m Window_Record[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;30mEnlight_Window[m[31m([mWin[31m.[mWin[31m);[m
   [01;34mend[m Enlight_Window[31m;[m
   
   [01;34mprocedure[m [01;30mDraw_Text[m [31m([mWin [31m:[m [01;34min[m Window_Record[31m;[m 
			Line [31m:[m [01;34min[m Line_Range[31m;[m
   			Col [31m:[m [01;34min[m Column_Range[31m;[m
			Color [31m:[m [01;34min[m Color_Type[31m;[m Text [31m:[m [01;34min[m [32mWide_String[m[31m)[m [01;34mis[m
   [01;34mbegin[m      
      [01;34mcase[m Style [01;34mis[m
	 [01;34mwhen[m Black_And_White [31m=>[m
            
	    [01;30mDraw[m[31m([mWin[31m.[mWin[31m,[m Line[31m,[m Col[31m,[m white[31m,[m Text[31m);[m
	 [01;34mwhen[m [01;34mothers[m [31m=>[m   
	    [01;30mDraw[m[31m([mWin[31m.[mWin[31m,[m Line[31m,[m Col[31m,[m color[31m,[m Text[31m);[m
      [01;34mend[m [01;34mcase[m[31m;[m
   [01;34mend[m Draw_Text[31m;[m
   
   [01;34mprocedure[m [01;30mDraw_Text[m [31m([mWin [31m:[m [01;34min[m Window_Record[31m;[m
			Line [31m:[m [01;34min[m Line_Range[31m;[m
   			Col [31m:[m [01;34min[m Column_Range[31m;[m
			Color [31m:[m [01;34min[m Color_Type[31m;[m Text [31m:[m [01;34min[m [32mString[m[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;34mcase[m Style [01;34mis[m
	 [01;34mwhen[m Black_And_White [31m=>[m
            
	    [01;30mDraw[m[31m([mWin[31m.[mWin[31m,[m Line[31m,[m Col[31m,[m white[31m,[m Handling[31m.[m[01;30mTo_Wide_String[m[31m([mText[31m));[m
	 [01;34mwhen[m [01;34mothers[m [31m=>[m   
	    [01;30mDraw[m[31m([mWin[31m.[mWin[31m,[m Line[31m,[m Col[31m,[m color[31m,[m Handling[31m.[m[01;30mTo_Wide_String[m[31m([mText[31m));[m
      [01;34mend[m [01;34mcase[m[31m;[m
     
   [01;34mend[m Draw_Text[31m;[m
   
   [01;34mprocedure[m [01;30mEnlight_Draw_Text[m [31m([mWin [31m:[m [01;34min[m Window_Record[31m;[m
			Line [31m:[m [01;34min[m Line_Range[31m;[m
   			Col [31m:[m [01;34min[m Column_Range[31m;[m
			Color [31m:[m [01;34min[m Color_Type[31m;[m Text [31m:[m [01;34min[m [32mWide_String[m[31m)[m [01;34mis[m
   [01;34mbegin[m
      [01;34mcase[m Style [01;34mis[m
	 [01;34mwhen[m Black_And_White [31m=>[m
            
	    [01;30mEnlight_Draw[m[31m([mWin[31m.[mWin[31m,[m Line[31m,[m Col[31m,[m white[31m,[m Text[31m);[m
	 [01;34mwhen[m [01;34mothers[m [31m=>[m   
	    [01;30mEnlight_Draw[m[31m([mWin[31m.[mWin[31m,[m Line[31m,[m Col[31m,[m color[31m,[m Text[31m);[m
      [01;34mend[m [01;34mcase[m[31m;[m
     
   [01;34mend[m Enlight_Draw_Text[31m;[m


[01;34mend[m Sky[31m.[mWindows [31m;[m 
