-- Autogenerated by MSIL2Ada v. 2
-- By: Martin C. Carlisle
--     Department of Computer Science
--     US Air Force Academy
--     carlislem@acm.org
pragma Extensions_Allowed(On);
with MSSyst.Object;
with MSIL_Types;
use MSIL_Types;
with type MSSyst.ComponentModel.IComponent.Ref is access;
with type MSSyst.IDisposable.Ref is access;
with type MSSyst.EventHandler.Ref is access;
with type MSSyst.ComponentModel.CancelEventHandler.Ref is access;
with type MSSyst.Windows.Forms.KeyEventHandler.Ref is access;
with type MSSyst.Windows.Forms.KeyPressEventHandler.Ref is access;
with type MSSyst.Windows.Forms.MouseEventHandler.Ref is access;
with type MSSyst.Windows.Forms.PaintEventHandler.Ref is access;
with type MSSyst.Drawing.Graphics.Ref is access;
with type MSSyst.Runtime.Remoting.ObjRef.Ref is access;
with type MSSyst.Type_k.Ref is access;
with type MSSyst.Object.Ref is access;
with type MSSyst.Drawing.Color.Valuetype is tagged;
with type MSSyst.Windows.Forms.BindingContext.Ref is access;
with type MSSyst.Drawing.Rectangle.Valuetype is tagged;
with type MSSyst.Drawing.Size.Valuetype is tagged;
with type MSSyst.ComponentModel.IContainer.Ref is access;
with type MSSyst.Windows.Forms.ContextMenu.Ref is access;
with type MSSyst.Windows.Forms.Control.ControlCollection.Ref is access;
with type MSSyst.Windows.Forms.ControlBindingsCollection.Ref is access;
with MSSyst.Windows.Forms.DialogResult;
with type MSSyst.Drawing.Font.Ref is access;
with MSSyst.Windows.Forms.FormBorderStyle;
with type MSSyst.Drawing.Icon.Ref is access;
with type MSSyst.Drawing.Point.Valuetype is tagged;
with type MSSyst.Windows.Forms.MainMenu.Ref is access;
with type MSSyst.Windows.Forms.Control.Ref is access;
with type MSSyst.ComponentModel.ISite.Ref is access;
with type MSSyst.String.Ref is access;
with MSSyst.Windows.Forms.FormWindowState;
with type MSSyst.Delegate.Ref is access;
with MSSyst.Windows.Forms.ContainerControl;
package MSSyst.Windows.Forms.Form is
   type Typ;
   type Ref is access all Typ'Class;
   type Ref_addrof is access all Ref;
   type Ref_Arr is array(Natural range <>) of Ref;
   type Ref_Array is access all Ref_Arr;
   type Ref_Array_addrof is access all Ref_Array;
   type Typ(
         I_IComponent : MSSyst.ComponentModel.IComponent.Ref;
         I_IDisposable : MSSyst.IDisposable.Ref
      ) is new MSSyst.Windows.Forms.ContainerControl.Typ(
         I_IComponent => I_IComponent,
         I_IDisposable => I_IDisposable
      ) with record
      null;
   end record;
   function new_Form(
      This : Ref := null) return Ref;
   procedure add_Activated(
      This : access Typ;
      value : MSSyst.EventHandler.Ref);
   procedure add_Closed(
      This : access Typ;
      value : MSSyst.EventHandler.Ref);
   procedure add_Closing(
      This : access Typ;
      value : MSSyst.ComponentModel.CancelEventHandler.Ref);
   procedure add_Deactivate(
      This : access Typ;
      value : MSSyst.EventHandler.Ref);
   procedure add_Load(
      This : access Typ;
      value : MSSyst.EventHandler.Ref);
   procedure Close(
      This : access Typ);
   function get_ControlBox(
      This : access Typ) return Standard.Boolean;
   function get_DialogResult(
      This : access Typ) return MSSyst.Windows.Forms.DialogResult.Valuetype;
   function get_FormBorderStyle(
      This : access Typ) return MSSyst.Windows.Forms.FormBorderStyle.Valuetype;
   function get_Icon(
      This : access Typ) return MSSyst.Drawing.Icon.Ref;
   function get_MaximizeBox(
      This : access Typ) return Standard.Boolean;
   function get_Menu(
      This : access Typ) return MSSyst.Windows.Forms.MainMenu.Ref;
   function get_MinimizeBox(
      This : access Typ) return Standard.Boolean;
   function get_WindowState(
      This : access Typ) return MSSyst.Windows.Forms.FormWindowState.Valuetype;
   procedure remove_Activated(
      This : access Typ;
      value : MSSyst.EventHandler.Ref);
   procedure remove_Closed(
      This : access Typ;
      value : MSSyst.EventHandler.Ref);
   procedure remove_Closing(
      This : access Typ;
      value : MSSyst.ComponentModel.CancelEventHandler.Ref);
   procedure remove_Deactivate(
      This : access Typ;
      value : MSSyst.EventHandler.Ref);
   procedure remove_Load(
      This : access Typ;
      value : MSSyst.EventHandler.Ref);
   procedure set_ControlBox(
      This : access Typ;
      value : Standard.Boolean);
   procedure set_DialogResult(
      This : access Typ;
      value : MSSyst.Windows.Forms.DialogResult.Valuetype);
   procedure set_FormBorderStyle(
      This : access Typ;
      value : MSSyst.Windows.Forms.FormBorderStyle.Valuetype);
   procedure set_Icon(
      This : access Typ;
      value : MSSyst.Drawing.Icon.Ref);
   procedure set_MaximizeBox(
      This : access Typ;
      value : Standard.Boolean);
   procedure set_Menu(
      This : access Typ;
      value : MSSyst.Windows.Forms.MainMenu.Ref);
   procedure set_MinimizeBox(
      This : access Typ;
      value : Standard.Boolean);
   procedure set_WindowState(
      This : access Typ;
      value : MSSyst.Windows.Forms.FormWindowState.Valuetype);
   function ShowDialog(
      This : access Typ) return MSSyst.Windows.Forms.DialogResult.Valuetype;
private
   pragma Convention(MSIL,Typ);
   pragma MSIL_Constructor(new_Form);
   pragma Import(MSIL,add_Activated,"add_Activated");
   pragma Import(MSIL,add_Closed,"add_Closed");
   pragma Import(MSIL,add_Closing,"add_Closing");
   pragma Import(MSIL,add_Deactivate,"add_Deactivate");
   pragma Import(MSIL,add_Load,"add_Load");
   pragma Import(MSIL,Close,"Close");
   pragma Import(MSIL,get_ControlBox,"get_ControlBox");
   pragma Import(MSIL,get_DialogResult,"get_DialogResult");
   pragma Import(MSIL,get_FormBorderStyle,"get_FormBorderStyle");
   pragma Import(MSIL,get_Icon,"get_Icon");
   pragma Import(MSIL,get_MaximizeBox,"get_MaximizeBox");
   pragma Import(MSIL,get_Menu,"get_Menu");
   pragma Import(MSIL,get_MinimizeBox,"get_MinimizeBox");
   pragma Import(MSIL,get_WindowState,"get_WindowState");
   pragma Import(MSIL,remove_Activated,"remove_Activated");
   pragma Import(MSIL,remove_Closed,"remove_Closed");
   pragma Import(MSIL,remove_Closing,"remove_Closing");
   pragma Import(MSIL,remove_Deactivate,"remove_Deactivate");
   pragma Import(MSIL,remove_Load,"remove_Load");
   pragma Import(MSIL,set_ControlBox,"set_ControlBox");
   pragma Import(MSIL,set_DialogResult,"set_DialogResult");
   pragma Import(MSIL,set_FormBorderStyle,"set_FormBorderStyle");
   pragma Import(MSIL,set_Icon,"set_Icon");
   pragma Import(MSIL,set_MaximizeBox,"set_MaximizeBox");
   pragma Import(MSIL,set_Menu,"set_Menu");
   pragma Import(MSIL,set_MinimizeBox,"set_MinimizeBox");
   pragma Import(MSIL,set_WindowState,"set_WindowState");
   pragma Import(MSIL,ShowDialog,"ShowDialog");
end MSSyst.Windows.Forms.Form;
pragma Extensions_Allowed(Off);
pragma Import(MSIL,MSSyst.Windows.Forms.Form,
   ".ver 1:0:5000:0 .publickeytoken=( 96 9d b8 05 3d 33 22 ac )",
   "[System.Windows.Forms]System.Windows.Forms.Form");
