X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=Ada95%2Fhtml%2Findex.html;h=50ec3abc5b40151d4698240d6130b64d58aeae3b;hp=6900ef374713d70cd456858b83772971270f95c2;hb=refs%2Ftags%2Fv4.2;hpb=3a9b6a3bf0269231bef7de74757a910dedd04e0c;ds=sidebyside
diff --git a/Ada95/html/index.html b/Ada95/html/index.html
index 6900ef37..50ec3abc 100644
--- a/Ada95/html/index.html
+++ b/Ada95/html/index.html
@@ -24,15 +24,15 @@ This binding comes AS IS with no warranty, implied or expressed.
General Remarks
-- This document describes Version 00.92.00 of the binding.
+- This document describes Version 00.93 of the binding.
- The functionality is modelled to be compatible with the ncurses
package, a clone of the SVr4 curses model.
I did the development on an Intel box running
Linux 1.3.x and 2.0,
-ncurses-1.9.9e and the
+ncurses-4.x and the
GNU Ada Translator
-gnat-3.05. For any older versions of ncurses and gnat
-it will not work.
+gnat-3.09. For any older versions of ncurses and gnat
+it is not guaranteed to work.
- You must have the m4 macroprocessor to build this package.
If you don't have this program, you can get the FSF version
here.
@@ -71,13 +71,10 @@ Same suggestion as above.
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.
-- 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 section in implementention
-details.
+of (n)curses functionality.
+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.
- I currently do not support the link_fieldtype functionality of the
forms subsystem.
- The *_IO packages are currently output only.
@@ -99,9 +96,21 @@ forms subsystem.
- Forms
+
- Field_Types
+
+
Text_IO
- Integer_IO
- Float_IO
@@ -124,12 +133,6 @@ low level (n)curses structures like
MENU * or FORM *.
So you can safely pass them to C routines that expect a pointer
to one of those structures.
-
Item and Field Arrays
-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.
Extended ripoffline() usage
The official documentation of (n)curses says, that the line parameter
determines only whether or not exactly one 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 Rip_Off_Lines
routine of the binding.
-User Pointer mechanism
-TBD
How user defined field types work
TBD
Enumeration fields handling
@@ -150,12 +151,7 @@ in this binding, because it is internally arranged to safely copy these
values.
Using other Ada compilers
-This should basically not be a problem, but you have to replace a code
-sequence in package
-Terminal_Interface.Curses.Forms
-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.
Port to other curses implementations
Basically it should not be too hard to make all this run on a regular SVr4
implementation of curses. The problems are probably these:
@@ -168,11 +164,6 @@ have two choices to deal with this:
Most likely you will follow a mixed approach. Some features are easy to simulate,
others will be hard if not impossible.
-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
-New_Item to safestore the strings.
I'm quite sure I forgot something.