package body Windows.About is package WD renames FLTK.Widgets.Groups.Windows.Double; package BX renames FLTK.Widgets.Boxes; package EN renames FLTK.Widgets.Buttons.Enter; function Create return About_Window is My_Width : Integer := 350; My_Height : Integer := 250; Logo_Line : Integer := 30; Logo_Width : Integer := 50; Logo_Height : Integer := 50; Button_Width : Integer := 140; Button_Height : Integer := 40; Heading_Line : Integer := 90; Blurb_Line : Integer := 132; Author_Line : Integer := 157; Button_Line : Integer := 190; Heading_Size : Integer := 22; Text_Size : Integer := 12; Heading_Text : String := "Adapad 0.8"; Blurb_Text : String := "FLTK based simple text editor written in Ada"; Author_Text : String := "Programmed by Jed Barber"; begin return This : About_Window := (WD.Double_Window'(WD.Create (0, 0, My_Width, My_Height, "About Adapad")) with Picture => BX.Box'(BX.Create ((My_Width - Logo_Width) / 2, Logo_Line, Logo_Width, Logo_Height, "")), Heading => BX.Box'(BX.Create (0, Heading_Line, My_Width, Heading_Size, Heading_Text)), Blurb => BX.Box'(BX.Create (0, Blurb_Line, My_Width, Text_Size, Blurb_Text)), Author => BX.Box'(BX.Create (0, Author_Line, My_Width, Text_Size, Author_Text)), Dismiss => EN.Enter_Button'(EN.Create ((My_Width - Button_Width) / 2, Button_Line, Button_Width, Button_Height, "Close"))) do This.Add (This.Picture); This.Add (This.Heading); This.Heading.Set_Label_Size (FLTK.Font_Size (Heading_Size)); This.Add (This.Blurb); This.Add (This.Author); This.Add (This.Dismiss); This.Dismiss.Set_Callback (Hide_CB'Access); This.Set_Icon (Logo); This.Picture.Set_Image (Logo); This.Set_Callback (Hide_CB'Access); This.Set_Modal; end return; end Create; function Create (X, Y, W, H : in Integer; Label_Text : in String) return About_Window is begin return Create; end Create; function Create (W, H : in Integer) return About_Window is begin return Create; end Create; end Windows.About;