DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦485268f1f⟧ Ada Source

    Length: 6144 (0x1800)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Table_Formatter, seg_0046cf

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦5a81ac88f⟧ »Space Info Vol 1« 
        └─⟦this⟧ 

E3 Source Code



--| @Summary This package is a variation of the table formatter provided by the
--| Environment in !Tools.  It provides the additional ability to provide
--| linkage to Ada_Program.Elements, and the ability to designate that
--| a column should be sorted as an integer value instead of a string.
--| two display options are available, one to create a text image of the
--| table and a second to add the table to an abstract document.
--| @INDICES (Hyper_Text, Table_Processing)
--|
with Io;
with Ada_Program;
with Abstract_Document;
with Directory_Tools;
generic
    Number_Of_Columns : Positive;
    Subitem_Separator : String := " ";
package Table_Formatter is

    package Ada    renames Ada_Program;
    package Object renames Directory_Tools.Object;

    --| @SPECIAL_NOTES Designates the placement of headers and table items
    type Adjust is (Left, Right, Centered);

    --| @DESCRIPTION if Is_Integer is True the column is assumed to contain
    --| integer values only.  Each value will be checked when it is
    --| inserted with the item command.  This will also allow this
    --| column to be sorted by integer value rather than by its ascii image.
    procedure Header (S          : String;
                      Format     : Adjust  := Left;
                      Is_Integer : Boolean := False);

    --| @DESCRIPTION  Adds an item to the table.  If the normal textual
    --| display is desired, then the user can use the defualts for all
    --| linkage parameters.
    --|
    --| @PARAMETERS Linkage, Linkage_List, and Object_Linkage define what
    --| elements and objects an item is linked to.  When the user presses the
    --| definition key, an image of the linked element brought up on the screen.  If
    --| Multiple items in a linkage list provides a menu of all items.
    --| If Linkage_List is a Nil_List then it is ignored and just the
    --| Linkage is used.  If both are non-nil, the Linkage element is
    --| appended to the list and the entire list is used.
    --|
    --| @PARAMETERS Explanation The explanation text is returned to the
    --| user when the explain key is pressed.
    --|
    procedure Item (S : String;
                    Linkage : Ada.Element := Ada.Nil_Element;
                    Linkage_List : Ada.Element_List := Ada.Nil_List;
                    Object_Linkage : Object.Handle := Object.Nil;
                    Object_Linkage_List : Object.Iterator := Object.Create;
                    Explanation : String := "");

    procedure Subitem (S : String);
    procedure Last_Subitem;

    --| @DESCRIPTION Displays the table to a file
    procedure Display (On_File : Io.File_Type);

    --| @DESCRIPTION Appends the table to an open abstract document handle
    --| with the specified title.
    procedure Display (In_Document : in out Abstract_Document.Handle;
                       Table_Title :        String);


    --| @SPECIAL_NOTES For N > 0 sort by field N in increasing order.
    --| For N < 0 sort by field abs (N) in decreasing order.
    --| Sorting is done on input value before right adjustment or centering.
    type Field_List is array (Integer range <>) of Integer;

    --| @DESCRIPTION  Sorts the table on the specified column.  Columns with
    --| Integer values are sorted by value not lexical image.
    procedure Sort (On_Field : Integer := 1);

    --| @DESCRIPTION  Sorts the table on the specified columns in order
    --| of their appearance in the Field_List.  Columns with
    --| Integer values are sorted by value not lexical image.
    procedure Sort (On_Fields : Field_List);

end Table_Formatter;

E3 Meta Data

    nblk1=5
    nid=0
    hdr6=a
        [0x00] rec0=1a rec1=00 rec2=01 rec3=01c
        [0x01] rec0=00 rec1=00 rec2=05 rec3=006
        [0x02] rec0=11 rec1=00 rec2=02 rec3=016
        [0x03] rec0=18 rec1=00 rec2=03 rec3=046
        [0x04] rec0=0f rec1=00 rec2=04 rec3=000
    tail 0x215004b34815c671342d0 0x42a00088462061e03