|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 6144 (0x1800) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, procedure Add_Object_Hyper_Table, seg_004587
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
--| @SUMMARY The procedure will traverse a set of objects and their children --| by build an abstract document table of objects that meet some criteria. --| --| @DESCRIPTION This procedure traverses the entire set of objects in all --| units specified by the Units parameter. Based on the feedback from the --| formal function parameter Included_Object, a row is included in a table. --| For each column (designated by an enumeration type), an image, explanation, --| and linkage is requested from the instantiator. --| --| if Include_Object (The_Object) then --| for C in Columns loop --| --| Linkage (For_Column => C, --| For_Object => My_Object, --| Linkage => Linkage_Object, --| Linkage_List => Linkage_Objects); --| --| Table.Item (Image (C, My_Object), --| Object_Linkage => Linkage_Object, --| Object_Linkage_List => Linkage_Objects, --| Explanation => Explanation (C, My_Object)); --| end loop; --| end if; --| --| After each object is analyze the instantiator is queried to determine in --| traversal should continue with any child objects: --| --| if Continue_Traversal (My_Object) then --| Control := Traversal.Continue; --| else --| Control := Traversal.Skip_Children; --| end if; --| --| Once all elements are traversed and the table completed, it is sorted in --| left to right column order. The table is then appended to an existing --| (open) document handle. --| --| @INDICES (DIRECTORY_TRAVERSAL, HYPER_TEXT) with Directory_Tools; with Abstract_Document; generic --| @DESCRIPTION Determines whether to include a row in the table for --| the current object with function Include_Object (Obj : Directory_Tools.Object.Handle) return Boolean; --| @DESCRIPTION Determines whether to continue traversal to child objects with function Continue_Traversal (For_Object : Directory_Tools.Object.Handle) return Boolean; --| @DESCRIPTION Defines the list of columns. The name of the column is --| the image of the enumeration value. Data is sorted in left to right --| column order. type Columns is (<>); --| @DESCRIPTION Defines if the data in the column is integer values. --| If this is so it will be sorted by its integer magnitude, not by --| its string image. with function Is_Integer_Valued (C : Columns) return Boolean; --| @DESCRIPTION Provides the image of each column of the table row for --| the current object with function Image (For_Column : Columns; For_Object : Directory_Tools.Object.Handle) return String; --| @DESCRIPTION Provides explanation text for each column of the table --| row for the current object. This text is displayed when the user --| presses the Explain key. with function Explanation (For_Column : Columns; For_Object : Directory_Tools.Object.Handle) return String; --| @DESCRIPTION Provides an object or list of object that the column --| is "linked" to. If the user presses the Definition key on the column --| the editor will traverse to this object or generate a menu of --| objects. with procedure Linkage (For_Column : Columns; For_Object : Directory_Tools.Object.Handle; Linkage : out Directory_Tools.Object.Handle; Linkage_List : out Directory_Tools.Object.Iterator); --| @DESCRIPTION Defines the title of the table placed in the --| abstract document. Table_Title : String := ""; procedure Add_Object_Hyper_Table (Units : in out Directory_Tools.Object.Iterator; To_Document : in out Abstract_Document.Handle; Response : String := "<PROFILE>");
nblk1=5 nid=0 hdr6=a [0x00] rec0=16 rec1=00 rec2=01 rec3=00c [0x01] rec0=1a rec1=00 rec2=02 rec3=09c [0x02] rec0=16 rec1=00 rec2=03 rec3=07a [0x03] rec0=15 rec1=00 rec2=04 rec3=016 [0x04] rec0=02 rec1=00 rec2=05 rec3=000 tail 0x217002096815c6507177f 0x42a00088462061e03