]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - Ada95/src/terminal_interface-curses-forms-field_types-numeric.adb
ncurses 6.3 - patch 20220703
[ncurses.git] / Ada95 / src / terminal_interface-curses-forms-field_types-numeric.adb
index bd3daf26f3d1de1e05ac96450bb18ef483945f6d..7b1d93181808feb458f763e7d90498e86fc267b0 100644 (file)
@@ -7,7 +7,8 @@
 --                                 B O D Y                                  --
 --                                                                          --
 ------------------------------------------------------------------------------
--- Copyright (c) 1998 Free Software Foundation, Inc.                        --
+-- Copyright 2020 Thomas E. Dickey                                          --
+-- Copyright 1999-2011,2014 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            --
@@ -34,9 +35,9 @@
 -- authorization.                                                           --
 ------------------------------------------------------------------------------
 --  Author:  Juergen Pfeifer, 1996
---  Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en
 --  Version Control:
---  $Revision: 1.8 $
+--  $Revision: 1.15 $
+--  $Date: 2020/02/02 23:34:34 $
 --  Binding Version 01.00
 ------------------------------------------------------------------------------
 with Interfaces.C;
@@ -44,31 +45,21 @@ with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux;
 
 package body Terminal_Interface.Curses.Forms.Field_Types.Numeric is
 
-   use type Interfaces.C.int;
-
-   procedure Set_Field_Type (Fld : in Field;
-                             Typ : in Numeric_Field)
+   procedure Set_Field_Type (Fld : Field;
+                             Typ : Numeric_Field)
    is
       type Double is new Interfaces.C.double;
 
-      C_Numeric_Field_Type : C_Field_Type;
-      pragma Import (C, C_Numeric_Field_Type, "TYPE_NUMERIC");
-
       function Set_Fld_Type (F    : Field := Fld;
-                             Cft  : C_Field_Type := C_Numeric_Field_Type;
                              Arg1 : C_Int;
                              Arg2 : Double;
-                             Arg3 : Double) return C_Int;
-      pragma Import (C, Set_Fld_Type, "set_field_type");
+                             Arg3 : Double) return Eti_Error;
+      pragma Import (C, Set_Fld_Type, "set_field_type_numeric");
 
-      Res : Eti_Error;
    begin
-      Res := Set_Fld_Type (Arg1 => C_Int (Typ.Precision),
-                           Arg2 => Double (Typ.Lower_Limit),
-                           Arg3 => Double (Typ.Upper_Limit));
-      if Res /= E_Ok then
-         Eti_Exception (Res);
-      end if;
+      Eti_Exception (Set_Fld_Type (Arg1 => C_Int (Typ.Precision),
+                                   Arg2 => Double (Typ.Lower_Limit),
+                                   Arg3 => Double (Typ.Upper_Limit)));
       Wrap_Builtin (Fld, Typ);
    end Set_Field_Type;