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

⟦46f673cd3⟧ Ada Source

    Length: 10240 (0x2800)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, generic, package Lists, seg_021fc9

Derivation

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

E3 Source Code



--      Copyright (c) 1990 Meridian Software Systems, Inc.      --
with Mac_Types;
use Mac_Types;
with Quickdraw;
with Controls;
package Lists is

    Ldovautoscroll : constant := 2;
    Ldohautoscroll : constant := 1;
    Lonlyone : constant := -128;
    Lextenddrag : constant := 64;
    Lnodisjoint : constant := 32;
    Lnoextend : constant := 16;
    Lnorect : constant := 8;
    Lusesense : constant := 4;
    Lnonilhilite : constant := 2;
    Linitmsg : constant := 0;
    Ldrawmsg : constant := 1;
    Lhilitemsg : constant := 2;
    Lclosemsg : constant := 3;

    subtype Cell is Point;
    type Varcell is access Cell;
    type Dataarray is array (0 .. 32000) of Char;
    type Dataptr is access Dataarray;
    type Datahandle is access Dataptr;

    type Array1_1integer is array (1 .. 1) of Mac_Types.Integer;
    type Listrec is
        record
            Rview : Rect;
            Port : Quickdraw.Grafptr;
            Indent : Point;
            Cellsize : Point;
            Visible : Rect;
            Vscroll : Controls.Controlhandle;
            Hscroll : Controls.Controlhandle;
            Selflags : Signedbyte;
            Lactive : Boolean;
            Lreserved : Signedbyte;
            Listflags : Signedbyte;
            Cliktime : Longint;
            Clikloc : Point;
            Mouseloc : Point;
            Lclikloop : Procptr;
            Lastclick : Cell;
            Refcon : Longint;
            Listdefproc : Handle;
            Userhandle : Handle;
            Databounds : Rect;
            Cells : Datahandle;
            Maxindex : Mac_Types.Integer;
            Cellarray : Array1_1integer;
        end record;
    type Listptr is access Listrec;
    type Listhandle is access Listptr;

    function Lnew (Rview : Rect;
                   Databounds : Rect;
                   Csize : Point;
                   Theproc : Mac_Types.Integer;
                   Thewindow : Quickdraw.Windowptr;
                   Drawit : Boolean;
                   Hasgrow : Boolean;
                   Scrollhoriz : Boolean;
                   Scrollvert : Boolean) return Listhandle;
    pragma Interface (Mpwpascal, Lnew, "16#3F3C#,16#0044#,16#A9E7#");

    procedure Ldispose (Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Ldispose, "16#3F3C#,16#0028#,16#A9E7#");

    function Laddcolumn (Count : Mac_Types.Integer;
                         Colnum : Mac_Types.Integer;
                         Lhandle : Listhandle) return Mac_Types.Integer;
    pragma Interface (Mpwpascal, Laddcolumn, "16#3F3C#,16#0004#,16#A9E7#");

    function Laddrow (Count : Mac_Types.Integer;
                      Rownum : Mac_Types.Integer;
                      Lhandle : Listhandle) return Mac_Types.Integer;
    pragma Interface (Mpwpascal, Laddrow, "16#3F3C#,16#0008#,16#A9E7#");

    procedure Ldelcolumn (Count : Mac_Types.Integer;
                          Colnum : Mac_Types.Integer;
                          Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Ldelcolumn, "16#3F3C#,16#0020#,16#A9E7#");

    procedure Ldelrow (Count : Mac_Types.Integer;
                       Rownum : Mac_Types.Integer;
                       Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Ldelrow, "16#3F3C#,16#0024#,16#A9E7#");

    function Lgetselect
                (Next : Boolean; Thecell : Varcell; Lhandle : Listhandle)
                return Boolean;
    pragma Interface (Mpwpascal, Lgetselect, "16#3F3C#,16#003C#,16#A9E7#");

    function Llastclick (Lhandle : Listhandle) return Cell;
    pragma Interface (Mpwpascal, Llastclick, "16#3F3C#,16#0040#,16#A9E7#");

    function Lnextcell (Hnext : Boolean;
                        Vnext : Boolean;
                        Thecell : Varcell;
                        Lhandle : Listhandle) return Boolean;
    pragma Interface (Mpwpascal, Lnextcell, "16#3F3C#,16#0048#,16#A9E7#");

    function Lsearch (Dataptr : Ptr;
                      Datalen : Mac_Types.Integer;
                      Searchproc : Procptr;
                      Thecell : Varcell;
                      Lhandle : Listhandle) return Boolean;
    pragma Interface (Mpwpascal, Lsearch, "16#3F3C#,16#0054#,16#A9E7#");

    procedure Lsize (Listwidth : Mac_Types.Integer;
                     Listheight : Mac_Types.Integer;
                     Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lsize, "16#3F3C#,16#0060#,16#A9E7#");

    procedure Ldodraw (Drawit : Boolean; Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Ldodraw, "16#3F3C#,16#002C#,16#A9E7#");

    procedure Lscroll (Dcols : Mac_Types.Integer;
                       Drows : Mac_Types.Integer;
                       Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lscroll, "16#3F3C#,16#0050#,16#A9E7#");

    procedure Lautoscroll (Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lautoscroll, "16#3F3C#,16#0010#,16#A9E7#");

    procedure Lupdate (Thergn : Quickdraw.Rgnhandle; Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lupdate, "16#3F3C#,16#0064#,16#A9E7#");

    procedure Lactivate (Act : Boolean; Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lactivate, "16#3F3C#,16#0000#,16#A9E7#");

    procedure Lcellsize (Csize : Point; Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lcellsize, "16#3F3C#,16#0014#,16#A9E7#");

    function Lclick (Pt : Point;
                     Modifiers : Mac_Types.Integer;
                     Lhandle : Listhandle) return Boolean;
    pragma Interface (Mpwpascal, Lclick, "16#3F3C#,16#0018#,16#A9E7#");

    procedure Laddtocell (Dataptr : Ptr;
                          Datalen : Mac_Types.Integer;
                          Thecell : Cell;
                          Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Laddtocell, "16#3F3C#,16#000C#,16#A9E7#");

    procedure Lclrcell (Thecell : Cell; Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lclrcell, "16#3F3C#,16#001C#,16#A9E7#");

    procedure Lgetcell (Dataptr : Ptr;
                        Datalen : in out Mac_Types.Integer;
                        Thecell : Cell;
                        Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lgetcell, "16#3F3C#,16#0038#,16#A9E7#");

    procedure Lfind (Offset : in out Mac_Types.Integer;
                     Len : in out Mac_Types.Integer;
                     Thecell : Cell;
                     Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lfind, "16#3F3C#,16#0034#,16#A9E7#");

    procedure Lrect
                 (Cellrect : in out Rect; Thecell : Cell; Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lrect, "16#3F3C#,16#004C#,16#A9E7#");

    procedure Lsetcell (Dataptr : Ptr;
                        Datalen : Mac_Types.Integer;
                        Thecell : Cell;
                        Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lsetcell, "16#3F3C#,16#0058#,16#A9E7#");

    procedure Lsetselect
                 (Setit : Boolean; Thecell : Cell; Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Lsetselect, "16#3F3C#,16#005C#,16#A9E7#");

    procedure Ldraw (Thecell : Cell; Lhandle : Listhandle);
    pragma Interface (Mpwpascal, Ldraw, "16#3F3C#,16#0030#,16#A9E7#");

    generic
        with function Routine return Boolean;
    procedure Userclickroutine;

    generic
        with function Routine
                         (Aptr : Ptr;
                          Bptr : Ptr;
                          Alen : Mac_Types.Integer;
                          Blen : Mac_Types.Integer) return Mac_Types.Integer;
    procedure Usersearchroutine;

    generic
        with procedure Routine (Lmessage : Mac_Types.Integer;
                                Lselect : Boolean;
                                Lrect : Rect;
                                Lcell : Cell;
                                Ldataoffset : Mac_Types.Integer;
                                Ldatalen : Mac_Types.Integer;
                                Lhandle : Listhandle);
    procedure Userlistroutine;

end Lists;


E3 Meta Data

    nblk1=9
    nid=0
    hdr6=12
        [0x00] rec0=22 rec1=00 rec2=01 rec3=036
        [0x01] rec0=1d rec1=00 rec2=02 rec3=036
        [0x02] rec0=15 rec1=00 rec2=03 rec3=03a
        [0x03] rec0=15 rec1=00 rec2=04 rec3=090
        [0x04] rec0=17 rec1=00 rec2=05 rec3=03e
        [0x05] rec0=16 rec1=00 rec2=06 rec3=022
        [0x06] rec0=16 rec1=00 rec2=07 rec3=030
        [0x07] rec0=1a rec1=00 rec2=08 rec3=01e
        [0x08] rec0=09 rec1=00 rec2=09 rec3=000
    tail 0x2171dcb7283906df2009f 0x42a00088462060003