]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - Ada95/html/index.html
ncurses 4.2
[ncurses.git] / Ada95 / html / index.html
index 6900ef374713d70cd456858b83772971270f95c2..50ec3abc5b40151d4698240d6130b64d58aeae3b 100644 (file)
@@ -24,15 +24,15 @@ This binding comes AS IS with no warranty, implied or expressed.
 <HR SIZE=3 NOSHADE>
 <H2>General Remarks</H2>
 <UL>
 <HR SIZE=3 NOSHADE>
 <H2>General Remarks</H2>
 <UL>
-<LI>This document describes Version 00.92.00 of the binding.</LI>
+<LI>This document describes Version 00.93 of the binding.</LI>
 <LI>The functionality is modelled to be compatible with the ncurses
 package, a clone of the SVr4 curses model.<BR>
 I did the development on an Intel box running 
 <A HREF="http://www.linux.org">Linux</A> 1.3.x and 2.0,
 <LI>The functionality is modelled to be compatible with the ncurses
 package, a clone of the SVr4 curses model.<BR>
 I did the development on an Intel box running 
 <A HREF="http://www.linux.org">Linux</A> 1.3.x and 2.0,
-ncurses-1.9.9e and the 
+ncurses-4.x and the 
 <A HREF="http://www.gnat.com">GNU Ada Translator</A>
 <A HREF="http://www.gnat.com">GNU Ada Translator</A>
-gnat-3.05. For any older versions of ncurses and gnat
-it will not work.</LI>
+gnat-3.09. For any older versions of ncurses and gnat
+it is not guaranteed to work.</LI>
 <LI>You must have the m4 macroprocessor to build this package.
 If you don't have this program, you can get the FSF version
 <A HREF="ftp://prep.ai.mit.edu/pub/gnu/">here</A>.</LI>
 <LI>You must have the m4 macroprocessor to build this package.
 If you don't have this program, you can get the FSF version
 <A HREF="ftp://prep.ai.mit.edu/pub/gnu/">here</A>.</LI>
@@ -71,13 +71,10 @@ Same suggestion as above.</LI>
 an OO abstraction of the (n)curses functionality. As mentioned above
 it's a thin binding for the (n)curses functions. But without any
 doubt it would be nice to build on top of this an OO abstraction
 an OO abstraction of the (n)curses functionality. As mentioned above
 it's a thin binding for the (n)curses functions. But without any
 doubt it would be nice to build on top of this an OO abstraction
-of (n)curses functionality.</LI>
-<LI>If you use the user-pointer mechanism for most of the ncurses
-structures in a mixed language environemt, i.e. Ada95 and C routines
-operate on the same objects, care must be taken because the Ada
-binding itself uses the user pointer mechanism for it's own purposes.
-See the corresponding <A HREF="#userpointer">section</A> in implementention
-details.</LI>
+of (n)curses functionality.<BR>
+The only exception is the method how fieldtypes are represented in
+this Binding. We provide an abstract tagged type Field_Type from
+which the various fieldtypes are derived.</LI>
 <LI>I currently do not support the link_fieldtype functionality of the
 forms subsystem.</LI>
 <LI>The *_IO packages are currently output only.</LI>
 <LI>I currently do not support the link_fieldtype functionality of the
 forms subsystem.</LI>
 <LI>The *_IO packages are currently output only.</LI>
@@ -99,9 +96,21 @@ forms subsystem.</LI>
            <LI><A HREF="terminal_interface-curses-forms_s.html">Forms</A>
                <UL><LI><A HREF="terminal_interface-curses-forms-form_user_data_s.html">Form_User_Data</A>
                    <LI><A HREF="terminal_interface-curses-forms-field_user_data_s.html">Field_User_Data</A>
            <LI><A HREF="terminal_interface-curses-forms_s.html">Forms</A>
                <UL><LI><A HREF="terminal_interface-curses-forms-form_user_data_s.html">Form_User_Data</A>
                    <LI><A HREF="terminal_interface-curses-forms-field_user_data_s.html">Field_User_Data</A>
-                   <LI><A HREF="terminal_interface-curses-forms-field_types_s.html">Field_Types</A>
-                   <LI><A HREF="terminal_interface-curses-forms-choice_field_types_s.html">Choice_Field_Types</A>
-               </UL>    
+                   <LI><A HREF="terminal_interface-curses-forms-field_types_s.html">Field_Types</A>                 
+                   <UL><LI><A HREF="terminal_interface-curses-forms-field_types-alpha_s.html">Alpha</A>
+                       <LI><A HREF="terminal_interface-curses-forms-field_types-alphanumeric_s.html">AlphaNumeric</A>
+                       <LI><A HREF="terminal_interface-curses-forms-field_types-intfield_s.html">IntField</A>
+                       <LI><A HREF="terminal_interface-curses-forms-field_types-numeric_s.html">Numeric</A>
+                       <LI><A HREF="terminal_interface-curses-forms-field_types-regexp_s.html">RegExp</A>
+                       <LI><A HREF="terminal_interface-curses-forms-field_types-ipv4_address_s.html">IPV4_Address</A>
+                       <LI><A HREF="terminal_interface-curses-forms-field_types-enumeration_s.html">Enumeration</A>
+                       <UL><LI><A HREF="terminal_interface-curses-forms-field_types-enumeration-ada_s.html">Ada</A>
+                       </UL>
+                       <LI><A HREF="terminal_interface-curses-forms-field_types-user_s.html">User</A>
+                       <UL><LI><A HREF="terminal_interface-curses-forms-field_types-user-choice_s.html">Choice</A>
+                        </UL>
+                     </UL>   
+               </UL>   
            <LI><A HREF="terminal_interface-curses-text_io_s.html">Text_IO</A>
                <UL><LI><A HREF="terminal_interface-curses-text_io-integer_io_s.html">Integer_IO</A>
                    <LI><A HREF="terminal_interface-curses-text_io-float_io_s.html">Float_IO</A>
            <LI><A HREF="terminal_interface-curses-text_io_s.html">Text_IO</A>
                <UL><LI><A HREF="terminal_interface-curses-text_io-integer_io_s.html">Integer_IO</A>
                    <LI><A HREF="terminal_interface-curses-text_io-float_io_s.html">Float_IO</A>
@@ -124,12 +133,6 @@ low level (n)curses structures like
 <STRONG>MENU *</STRONG> or <STRONG>FORM *</STRONG>.
 So you can safely pass them to C routines that expect a pointer
 to one of those structures.
 <STRONG>MENU *</STRONG> or <STRONG>FORM *</STRONG>.
 So you can safely pass them to C routines that expect a pointer
 to one of those structures.
-<H4>Item and Field Arrays</H4>
-In C you have to pass the item and field arrays to define menus or forms
-terminated by a null item or null field. This is not necessary in this
-binding. The binding routines will construct from an Ada95 style array
-of Item or Field objects internally the properly terminated array of
-C structure pointers. See the examples for more details. 
 <H4>Extended ripoffline() usage</H4>
 The official documentation of (n)curses says, that the line parameter
 determines only whether or not exactly <STRONG>one</STRONG> line is
 <H4>Extended ripoffline() usage</H4>
 The official documentation of (n)curses says, that the line parameter
 determines only whether or not exactly <STRONG>one</STRONG> line is
@@ -139,8 +142,6 @@ it in a way, that uses the line parameter also to control the amount of
 lines to steal. This mechanism is used in the <STRONG>Rip_Off_Lines</STRONG>
 routine of the binding.
 <A NAME="userpointer">
 lines to steal. This mechanism is used in the <STRONG>Rip_Off_Lines</STRONG>
 routine of the binding.
 <A NAME="userpointer">
-<H4>User Pointer mechanism</H4>
-TBD
 <H4>How user defined field types work</H4>
 TBD
 <H4>Enumeration fields handling</H4>
 <H4>How user defined field types work</H4>
 TBD
 <H4>Enumeration fields handling</H4>
@@ -150,12 +151,7 @@ in this binding, because it is internally arranged to safely copy these
 values.
 <A NAME="compiler">
 <H4>Using other Ada compilers</H4>
 values.
 <A NAME="compiler">
 <H4>Using other Ada compilers</H4>
-This should basically not be a problem, but you have to replace a code
-sequence in package
-<A HREF="terminal_interface-curses-forms_s.html">Terminal_Interface.Curses.Forms</A>
-that uses a hashing package supplied with the GNAT runtime, which is not part
-of the Standard Ada runtimes. This should not be too hard. I intend to remove
-this dependency in the future.
+This should basically not be a problem.
 <H4>Port to other curses implementations</H4>
 Basically it should not be too hard to make all this run on a regular SVr4
 implementation of curses. The problems are probably these:<BR>
 <H4>Port to other curses implementations</H4>
 Basically it should not be too hard to make all this run on a regular SVr4
 implementation of curses. The problems are probably these:<BR>
@@ -168,11 +164,6 @@ have two choices to deal with this:
 </UL>
 Most likely you will follow a mixed approach. Some features are easy to simulate,
 others will be hard if not impossible.</LI>
 </UL>
 Most likely you will follow a mixed approach. Some features are easy to simulate,
 others will be hard if not impossible.</LI>
-<LI>For menu items, the name and descriptions are internally copied by ncurses.
-So the binding doesn't care for the lifetime of the strings passed to the
-construction routine for items. This assumption is not true in most other implementations
-of the menu library. In this case you have to modify the binding routine
-<STRONG>New_Item</STRONG> to safestore the strings.</LI>
 </UL>
 I'm quite sure I forgot something.<P>
 </BODY>
 </UL>
 I'm quite sure I forgot something.<P>
 </BODY>