X-Git-Url: http://ncurses.scripts.mit.edu/?a=blobdiff_plain;f=doc%2Fhtml%2Fada%2Fterminal_interface-curses-forms-field_types-enumeration__adb.htm;h=adac9c06c62492e5c2ea9087ec8e1c900c4e6f8c;hb=29ee95cea37c4bbf2014a35677d9a0750c6b52a8;hp=87721a22be4136ce82d4cc64bd2c79dfa871f28b;hpb=77afe78361875f531dc2bf8d73f2e781c8e76176;p=ncurses.git
diff --git a/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm b/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm
index 87721a22..adac9c06 100644
--- a/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm
+++ b/doc/html/ada/terminal_interface-curses-forms-field_types-enumeration__adb.htm
@@ -12,7 +12,7 @@
-- B O D Y --
-- --
------------------------------------------------------------------------------
--- Copyright (c) 1998-2003,2009 Free Software Foundation, Inc. --
+-- Copyright (c) 1998-2009,2011 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 --
@@ -40,12 +40,12 @@
------------------------------------------------------------------------------
-- Author: Juergen Pfeifer, 1996
-- Version Control:
--- @Revision: 1.8 @
+-- @Revision: 1.10 @
-- Binding Version 01.00
------------------------------------------------------------------------------
with Ada.Unchecked_Deallocation;
-with Interfaces.C; use Interfaces.C;
-with Interfaces.C.Strings; use Interfaces.C.Strings;
+with Interfaces.C; use Interfaces.C;
+with Interfaces.C.Strings; use Interfaces.C.Strings;
with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
package body Terminal_Interface.Curses.Forms.Field_Types.Enumeration is
@@ -66,15 +66,15 @@
E.Arr := new chars_ptr_array (size_t (1) .. L);
for I in 1 .. Positive (L - 1) loop
if Info.Names (I) = null then
- raise Form_Exception;
+ raise Form_Exception;
end if;
- E.Arr (size_t (I)) := New_String (Info.Names (I).all);
+ E.Arr.all (size_t (I)) := New_String (Info.Names (I).all);
if Auto_Release_Names then
S := Info.Names (I);
Release_String (S);
end if;
end loop;
- E.Arr (L) := Null_Ptr;
+ E.Arr.all (L) := Null_Ptr;
return E;
end Create;
@@ -84,10 +84,10 @@
P : chars_ptr;
begin
loop
- P := Enum.Arr (I);
+ P := Enum.Arr.all (I);
exit when P = Null_Ptr;
Free (P);
- Enum.Arr (I) := Null_Ptr;
+ Enum.Arr.all (I) := Null_Ptr;
I := I + 1;
end loop;
Enum.Arr := null;
@@ -96,27 +96,23 @@
procedure Set_Field_Type (Fld : Field;
Typ : Enumeration_Field)
is
- C_Enum_Type : C_Field_Type;
- pragma Import (C, C_Enum_Type, "TYPE_ENUM");
+ function Set_Fld_Type (F : Field := Fld;
+ Arg1 : chars_ptr_array;
+ Arg2 : C_Int;
+ Arg3 : C_Int) return C_Int;
+ pragma Import (C, Set_Fld_Type, "set_field_type_enum");
- function Set_Fld_Type (F : Field := Fld;
- Cft : C_Field_Type := C_Enum_Type;
- Arg1 : chars_ptr_array;
- Arg2 : C_Int;
- Arg3 : C_Int) return C_Int;
- pragma Import (C, Set_Fld_Type, "set_field_type");
-
- Res : Eti_Error;
+ Res : Eti_Error;
begin
if Typ.Arr = null then
- raise Form_Exception;
+ raise Form_Exception;
end if;
- Res := Set_Fld_Type (Arg1 => Typ.Arr.all,
- Arg2 => C_Int (Boolean'Pos (Typ.Case_Sensitive)),
- Arg3 => C_Int (Boolean'Pos
+ Res := Set_Fld_Type (Arg1 => Typ.Arr.all,
+ Arg2 => C_Int (Boolean'Pos (Typ.Case_Sensitive)),
+ Arg3 => C_Int (Boolean'Pos
(Typ.Match_Must_Be_Unique)));
- if Res /= E_Ok then
- Eti_Exception (Res);
+ if Res /= E_Ok then
+ Eti_Exception (Res);
end if;
Wrap_Builtin (Fld, Typ, C_Choice_Router);
end Set_Field_Type;