X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2FAda95.html;h=77557e774b30b8ec4f8124284be9a534c43645e1;hp=89073216eec15d871ddd8986b910887dfb680cfe;hb=f344f8539c1543f8cd65a5bb142dbaf23b9421d2;hpb=b1f61d9f3aa244512045a6b02e759825d7049d34 diff --git a/doc/html/Ada95.html b/doc/html/Ada95.html index 89073216..77557e77 100644 --- a/doc/html/Ada95.html +++ b/doc/html/Ada95.html @@ -1,172 +1,343 @@ - - - - -Ada95 Binding for ncurses - - -

Ada95 Binding for ncurses

-The ncurses Ada95 binding is © 1996-2000 by -Jürgen Pfeifer. -

- -Permission is hereby granted to reproduce and distribute this -binding by any means and for any fee, whether alone or as part -of a larger distribution, in source or in binary form, PROVIDED -this notice is included with any such distribution, and is not -removed from any of its header files. Mention of ncurses and the -author of this binding in any applications linked with it is -highly appreciated.
- -This binding comes AS IS with no warranty, implied or expressed. -

-


-

General Remarks

- -

- -

Limitations

- - -

Hierarchy of packages

- -If you want to navigate through the html pages of the package specs, click here. -

Implementation Details

-

Behind the abstraction

-All the new types like Window, Panel, -Menu, Form etc. are just -opaque representations of the pointers to the corresponding -low level (n)curses structures like -WINDOW *, PANEL *, -MENU * or FORM *. -So you can safely pass them to C routines that expect a pointer -to one of those structures. -

Extended ripoffline() usage

-The official documentation of (n)curses says, that the line parameter -determines only whether or not exactly one line is -stolen from the top or bottom of the screen. So essentially only the -sign of the parameter is evaluated. ncurses has internally implemented -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. - -

How user defined field types work

-TBD -

Enumeration fields handling

-The (n)curses documentation says, that the String arrays to be passed to -an TYPE_ENUM fieldtype must not be automatic variables. This is not true -in this binding, because it is internally arranged to safely copy these -values. -
-

Using other Ada compilers

-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:
- -I'm quite sure I forgot something.

- - + + + + + + + Ada95 Binding for ncurses + + + + + +

Ada95 Binding for ncurses

+ +

by Jürgen Pfeifer.

+
+ +

General Remarks

+ +
+ +

Limitations

+ + + +

Hierarchy of packages

+ + + +

If you want to navigate through the html pages of the package + specs, click here.

+ +

Implementation Details

+ +

Behind the abstraction

+ +

All the new types like Window, + Panel, Menu, + Form etc. are just opaque representations of the + pointers to the corresponding low level (n)curses structures like + WINDOW *, PANEL *, MENU + * or FORM *. So you can safely pass + them to C routines that expect a pointer to one of those + structures.

+ +

Extended ripoffline() usage

+ +

The official documentation of (n)curses says, that the line + parameter determines only whether or not exactly + one line is stolen from the top or bottom of the + screen. So essentially only the sign of the parameter is + evaluated. ncurses has internally implemented 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.

+ +

How user defined field + types work

+ +

TBD

+ +

Enumeration fields handling

+ +

The (n)curses documentation says, that the String arrays to be + passed to an TYPE_ENUM fieldtype must not be automatic variables. + This is not true in this binding, because it is internally + arranged to safely copy these values.

+ +

Using other Ada + compilers

+ +

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:

+ + + +

I'm quite sure I forgot something.

+ +