home *** CD-ROM | disk | FTP | other *** search
/ Global Amiga Experience / globalamigaexperience.iso / compressed / development / clusterdemo.dms / clusterdemo.adf / Modules.lha / modules / txt / Intuition.def < prev    next >
Text File  |  1994-05-25  |  69KB  |  2,303 lines

  1. |##########|
  2. |#MAGIC   #|CLABLJDK
  3. |#PROJECT #|"IMPORTALL"
  4. |#PATHS   #|"StdProject"
  5. |#FLAGS   #|xx---x-xx---xxx-----------------
  6. |#USERSW  #|--------------------------------
  7. |#USERMASK#|--------------------------------
  8. |#SWITCHES#|xx---xxxxx------
  9. |##########|
  10. DEFINITION MODULE Intuition;
  11. (* $A- *)
  12.  
  13. | von Thilo bekommen Anfang Mai
  14. |
  15. | WB 21 May 1992 kompilierbar gemacht
  16. | WB  1 Jun 1992 typen besser
  17. | WB 19 Aug 1992 Konflikte mit Exec beseitigt PaperType, GadgetType.
  18.  
  19. FROM Exec      IMPORT Interrupt,          IOStdReq,           Library,
  20.               List,               ListPtr,            MemReqSet,
  21.               Message,            MinNode,            MsgPortPtr,
  22.               Node,               SignalSemaphore,    TaskPtr,
  23.               TaskSignals,        TaskSignals;
  24.  
  25. FROM Graphics  IMPORT BitMap,             BitMapPtr,          ClipRect,
  26.               DisplayInfoPtr,     PenArrayPtr,
  27.               DrawModeSet,        GfxBasePtr,         jam2,
  28.               LayerInfo,          LayerPtr,           RastPort,
  29.               RastPortPtr,        RectanglePtr,       RegionPtr,
  30.               RegionRectanglePtr, SimpleSpritePtr,    TextAttr,
  31.               TextAttrPtr,        TextFontPtr,        TmpRas,
  32.               View,               ViewModeSet,        ViewModes,
  33.               ViewPort,           ViewPortPtr,        ViewPtr;
  34.  
  35. FROM Timer     IMPORT IOTimer,            TimeVal;
  36.  
  37. FROM System    IMPORT BITSET,             LONGSET,            PROC,
  38.               Regs,               SysStringPtr;
  39.  
  40. FROM Input     IMPORT InputEvent,         InputEventPtr,
  41.               lButton,            Qualifiers,         QualifierSet,
  42.               rButton,            upPrefix;
  43.  
  44. FROM Resources IMPORT ResHandles;
  45.  
  46. FROM Utility   IMPORT Hook,               HookPtr,            StdTags,
  47.               tagUser,            TagArrayPtr;
  48.  
  49.  
  50. CONST
  51.   wTB                   = tagUser + 99;  | $80000063    WindowTags base
  52.   sTB                   = tagUser + 32;  | $80000020    ScreenTags base
  53.  
  54. TYPE
  55.  
  56.   BorderPtr             = POINTER TO Border;
  57.   GadgetPtr             = POINTER TO Gadget;
  58.   IBoxPtr               = POINTER TO IBox;
  59.   ImagePtr              = POINTER TO Image;
  60.   IntuiMessagePtr       = POINTER TO IntuiMessage;
  61.   IntuiTextPtr          = POINTER TO IntuiText;
  62.   MenuItemPtr           = POINTER TO MenuItem;
  63.   PreferencesPtr        = POINTER TO Preferences;
  64.   PropInfoPtr           = POINTER TO PropInfo;
  65.   RememberPtr           = POINTER TO Remember;
  66.   RequesterPtr          = POINTER TO Requester;
  67.   ScreenPtr             = POINTER TO Screen;
  68.   StringInfoPtr         = POINTER TO StringInfo;
  69.   WindowPtr             = POINTER TO Window;
  70.  
  71. DEFINITION MODULE WinRes = Resources.ResHandles(WindowPtr);
  72.  
  73. DEFINITION MODULE ScreenRes = Resources.ResHandles(ScreenPtr);
  74.  
  75. TYPE
  76.   MenuFlags    = ( menuEnabled,            | r/w this menu is enabled
  77.            miDrawn     = 8);       | r/o items are being drawn
  78.   MenuFlagSet  = SET OF MenuFlags;
  79.  
  80.   MenuPtr      = POINTER TO Menu;
  81.   Menu         = RECORD
  82.            nextMenu   : MenuPtr;
  83.            leftEdge   : INTEGER;
  84.            topEdge    : INTEGER;
  85.            width      : INTEGER;
  86.            height     : INTEGER;
  87.            flags      : MenuFlagSet;
  88.            menuName   : SysStringPtr;
  89.            firstItem  : MenuItemPtr;
  90.            jazzx      : INTEGER;
  91.            jazzy      : INTEGER;
  92.            beatx      : INTEGER;
  93.            beaty      : INTEGER;
  94.          END;
  95.  
  96.   MenuItemFlags   = (
  97.           checkIt,       | checkmarkable item
  98.           itemText,      | textual item, FALSE if graphical item
  99.           commSeq,       | command sequence
  100.           menuToggle,    | toggling checks (else mut. exclude)
  101.           itemEnabled,   | this item is enabled
  102.           mif5,          |
  103.           highComp,      | highlight by complementing the selectbox
  104.           highBox,       | highlight by "boxing" the selectbox
  105.           checked,       | state of the checkmark
  106.           mif9,          |
  107.           mif10,         |
  108.           mif11,         |
  109.           isDrawn,       | this item's subs are currently drawn
  110.           highItem,      | this item is currently highlighted
  111.           menuToggled ); | this item was already toggled
  112.  
  113.   MenuItemFlagSet = SET OF MenuItemFlags;
  114.  
  115. CONST
  116.   highNone        = MenuItemFlagSet:{highBox,highComp};
  117.   checkWidth      = 19;
  118.   commWidth       = 27;
  119.   lowCheckWidth   = 13;
  120.   lowCommWidth    = 16;
  121.  
  122. TYPE
  123.  
  124.   MenuItem = RECORD
  125.            nextItem      : MenuItemPtr;
  126.            leftEdge      : INTEGER;
  127.            topEdge       : INTEGER;
  128.            width         : INTEGER;
  129.            height        : INTEGER;
  130.            flags         : MenuItemFlagSet;
  131.            mutualExclude : LONGSET;
  132.            itemFill      : ANYPTR;
  133.            selectFill    : ANYPTR;
  134.            command       : CHAR;
  135.            subItem       : MenuItemPtr;
  136.            nextSelect    : CARDINAL;
  137.          END;
  138.  
  139.   RequesterFlags  = (
  140.           pointRel,       | TopLeft is relative to pointer for
  141.                   | DMRequester, relative to window
  142.                   | center for Request()
  143.           preDrawn,       | imageBMap -> predrawn Requester imagery
  144.           noisReg,        | requester does not filter input
  145.           rf3,            |
  146.           simpleReq,      | to use SIMPLEREFRESH layer (recommended)
  147.           userEqImage,    | render-order BackFill, image, gadgets,
  148.                   | text don't fill requester with
  149.                   | backFill pen
  150.           noReqBackFill,  |
  151.           rf7,            |
  152.           rf8,            |
  153.           rf9,            |
  154.           rf10,           |
  155.           rf11,           |
  156.           reqOffWindow,   | r/o part of the Gadgets was offwindow
  157.           reqActive,      | r/o this requester is active
  158.           sysRequest,     | (unused) this requester caused by system
  159.           deferRefresh ); | this Requester stops a Refresh broadcast
  160.  
  161.   RequesterFlagSet= SET OF RequesterFlags;
  162.  
  163.   Requester= RECORD
  164.            olderRequest  : RequesterPtr;
  165.            leftEdge      : INTEGER;
  166.            topEdge       : INTEGER;
  167.            width         : INTEGER;
  168.            height        : INTEGER;
  169.            relLeft       : INTEGER;
  170.            relTop        : INTEGER;
  171.            gadgets       : GadgetPtr;
  172.            border        : BorderPtr;
  173.            text          : IntuiTextPtr;
  174.            flags         : RequesterFlagSet;
  175.            backFill      : SHORTCARD;                 | background pen
  176.            layer         : LayerPtr;
  177.            pad1          : ARRAY [0..31] OF SHORTINT;
  178.            imageBMap     : BitMapPtr;                 | if predrawn
  179.            rWindow       : WindowPtr;                 | our owner
  180.            image         : ImagePtr;                  | if userEqImage
  181.            reqPad2       : ARRAY [0..31] OF SHORTINT;
  182.          END;
  183.  
  184.   GadgetFlags       = (gadgHBox,gadgHImage,gadgImage,gRelBottom,gRelRight,
  185.                gRelWidth,gRelHeight,selected,gadgDisabled,
  186.                tabCycle,stringExtend,ggf11,labelString,labelImage);
  187.   GadgetFlagSet     = SET OF GadgetFlags;
  188.  
  189.   ActivationFlags   = (relVerify,gadgImmediate,endGadget,followMouse,
  190.                rightBorder,leftBorger,topBorder,bottomBorder,
  191.                toggleSelect,stringCenter,stringRight,longint,
  192.                altKeyMap,extended,activeGadget,bordersniff);
  193.   ActivationFlagSet = SET OF ActivationFlags;
  194.  
  195. CONST
  196.   gadgHighbits = GadgetFlagSet:{gadgHBox,gadgHImage};
  197.   gadgHNone    = GadgetFlagSet:{gadgHBox,gadgHImage};
  198.   gadgHComp    = GadgetFlagSet:{};
  199.   labelIText   = GadgetFlagSet:{};
  200.   labelMask    = GadgetFlagSet:{labelString,labelImage};
  201.   stringLeft   = ActivationFlagSet:{};
  202.  
  203. TYPE
  204.   GadgetTypeBits = (gtb0,gtb1,gtb2,gtb3,
  205.             gtb4,gtb5,gtb6,gtb7,
  206.             gtb8,gtb9,gbtA,gtbB,
  207.             reqGadget,gzzGadget,scrGadget,sysGadget);
  208.   GadgetType     = SET OF GadgetTypeBits;
  209.  
  210. CONST
  211.   boolGadget     = GadgetType:{gtb0};
  212.   propGadget     = GadgetType:{gtb0,gtb1};
  213.   strGadget      = GadgetType:{gtb2};
  214.   customGadget   = GadgetType:{gtb0,gtb2};
  215.  
  216.   wSizing        = GadgetType:{gtb4};
  217.   wDragging      = GadgetType:{gtb5};
  218.   sDragging      = GadgetType:{gtb4,gtb5};
  219.   wUpFront       = GadgetType:{gtb6};
  220.   sUpFront       = GadgetType:{gtb4,gtb6};
  221.   wDownBack      = GadgetType:{gtb5,gtb6};
  222.   sDownBack      = GadgetType:{gtb4,gtb5,gtb6};
  223.   wClose         = GadgetType:{gtb7};
  224.  
  225. TYPE
  226.   GadgInfoPtr = POINTER TO GadgInfo;
  227.   GadgInfo    = RECORD END;
  228.  
  229.   Gadget = RECORD
  230.          nextGadget   : GadgetPtr;
  231.          leftEdge     : INTEGER;
  232.          topEdge      : INTEGER;
  233.          width        : INTEGER;
  234.          height       : INTEGER;
  235.          flags        : GadgetFlagSet;
  236.          activation   : ActivationFlagSet;
  237.          gadgetType   : GadgetType;
  238.          gadgetRender : ANYPTR;
  239.          selectRender : ANYPTR;
  240.          gadgetText   : IntuiTextPtr;
  241.          mutualExclude: LONGSET;
  242.          specialInfo  : GadgInfoPtr;
  243.          gadgetID     : INTEGER;
  244.          userData     : ANYPTR;
  245.        END;
  246.  
  247. CONST
  248.   boolMask = 1;
  249.  
  250. TYPE
  251.   BoolInfo = RECORD OF GadgInfo
  252.            flags      : BITSET;
  253.            mask       : ANYPTR;
  254.            reserved   : LONGCARD;
  255.          END;
  256.  
  257.   PropInfoFlags     = (autoKnob,freeHoriz,freeVert,propBorderless,
  258.                propNewLook,pf5,pf6,pf7,knobHit);
  259.   PropInfoFlagSet   = SET OF PropInfoFlags;
  260.  
  261. CONST
  262.   knobVmin = 4;
  263.   knobHmin = 6;
  264.   maxBody  = $FFFF;
  265.   maxPot   = $FFFF;
  266.  
  267. TYPE
  268.   PropInfo = RECORD OF GadgInfo
  269.            flags      : PropInfoFlagSet;
  270.            horizPot   : CARDINAL;
  271.            vertPot    : CARDINAL;
  272.            horizBody  : CARDINAL;
  273.            vertBody   : CARDINAL;
  274.            cWidth     : CARDINAL;
  275.            cHeight    : CARDINAL;
  276.            hPotRes    : CARDINAL;
  277.            vPotRes    : CARDINAL;
  278.            leftBorder : CARDINAL;
  279.            topBorder  : CARDINAL;
  280.          END;
  281.  
  282.   StringExtFlags   = (replace,fixedField,noFilter,noChange,
  283.               noWorkBuffer,control,longint,exitHelp,
  284.               makeMeLong = 31);
  285.   StringExtFlagSet = SET OF StringExtFlags;
  286.  
  287.   StringExtendPtr = POINTER TO StringExtend;
  288.   StringExtend    = RECORD
  289.               font       : TextFontPtr;
  290.               pens       : ARRAY [2] OF SHORTCARD;
  291.               activePens : ARRAY [2] OF SHORTCARD;
  292.               initModes  : StringExtFlagSet;
  293.               editHook   : HookPtr;
  294.               buffer     : SysStringPtr;
  295.               reserved   : ARRAY [4] OF LONGINT;
  296.             END;
  297.  
  298.   StringInfo = RECORD OF GadgInfo
  299.          buffer      : ANYPTR;
  300.          undoBuffer  : ANYPTR;
  301.          bufferPos   : INTEGER;
  302.          maxChars    : INTEGER;
  303.          dispPos     : INTEGER;
  304.          undoPos     : INTEGER;
  305.          numChars    : INTEGER;
  306.          dispcount   : INTEGER;
  307.          cLeft       : INTEGER;
  308.          cTop        : INTEGER;
  309.          extension   : StringExtendPtr;
  310.          longint     : LONGINT;
  311.          altKeyMap   : ANYPTR;
  312.            END;
  313.  
  314.  
  315. CONST
  316.   autoFrontPen   = 0;
  317.   autoBackPen    = 1;
  318.   autoDrawMode   = jam2;
  319.   autoLeftEdge   = 6;
  320.   autoTopEdge    = 3;
  321.   autoITextFont  = NIL;
  322.   autoNextText   = NIL;
  323.  
  324. TYPE
  325.   IntuiText   = RECORD
  326.           frontPen    : SHORTCARD;
  327.           backPen     : SHORTCARD;
  328.           drawMode    : DrawModeSet;
  329.           leftEdge    : INTEGER;
  330.           topEdge     : INTEGER;
  331.           iTextFont   : TextAttrPtr;
  332.           iText       : SysStringPtr;
  333.           nextText    : IntuiTextPtr;
  334.         END;
  335.  
  336. GROUP
  337.   IntuiTextGrp = IntuiText,IntuiTextPtr,DrawModeSet,
  338.          Graphics.DrawModes,autoFrontPen,autoBackPen,autoDrawMode,
  339.          autoLeftEdge,autoTopEdge,autoITextFont,autoNextText;
  340.  
  341. TYPE
  342.   BorderList   = ARRAY OF RECORD x,y : INTEGER END;
  343.   Border       = RECORD
  344.           leftEdge,
  345.           topEdge     : INTEGER;
  346.           frontPen,
  347.           backPen     : SHORTCARD;
  348.           drawMode    : DrawModeSet;
  349.           count       : SHORTCARD;
  350.           xy          : POINTER TO BorderList;
  351.           nextBorder  : BorderPtr;
  352.         END;
  353.  
  354. GROUP
  355.   BorderGrp   = BorderPtr,Border,DrawModeSet,
  356.         Graphics.DrawModes;
  357.  
  358.  
  359. TYPE
  360.   Image       = RECORD
  361.           leftEdge,
  362.           topEdge,
  363.           width,
  364.           height,
  365.           depth       : INTEGER;
  366.           imageData   : ANYPTR;
  367.           planePick,
  368.           planeOnOff  : SHORTCARD;
  369.           nextImage   : ImagePtr;
  370.         END;
  371.  
  372.  
  373. TYPE
  374.   IDCMPFlags  = ( sizeVerify,         newSize,            refreshWindow,
  375.           mouseButtons,       mouseMove,          gadgetDown,
  376.           gadgetUp,           reqSet,             menuPick,
  377.           closeWindow,        rawKey,             reqVerify,
  378.           reqClear,           menuVerify,         newPrefs,
  379.           diskInserted,       diskRemoved,        wbenchMessage,
  380.           activeWindow,       inactiveWindow,     deltaMove,
  381.           vanillaKey,         intuiTicks,         idcmpUpdate,
  382.           menuHelp,           changeWindow,       c26,
  383.           c27,                c28,                c29,
  384.           c30,                lonelyMessage );
  385.   IDCMPFlagSet  = SET OF IDCMPFlags;
  386.  
  387.   IDCMPFlagSetPtr  = POINTER TO IDCMPFlagSet;
  388.  
  389. CONST
  390.   selectUp     = lButton+upPrefix;
  391.   selectDown   = lButton;
  392.   menuUp       = rButton+upPrefix;
  393.   menuDown     = rButton;
  394.   menuNull     = $FFFF;
  395.   noMenu       = $1F;
  396.   noItem       = $3F;
  397.   noSub        = $1F;
  398.   keyCodeQ     = $10;
  399.   keyCodeX     = $32;
  400.   keyCodeV     = $34;
  401.   keyCodeB     = $35;
  402.   keyCodeN     = $36;
  403.   keyCodeM     = $37;
  404.   cursorUp     = $4C;
  405.   cursorDown   = $4D;
  406.   cursorRight  = $4E;
  407.   cursorLeft   = $4F;
  408.   menuHot      = 1;
  409.   menuCancel   = 2;
  410.   menuWaiting  = 3;
  411.   okOk         = menuHot;
  412.   okAbort      = 4;
  413.   okCancel     = menuCancel;
  414.   wbenchOpen   = 1;
  415.   wbenchClose  = 2;
  416.   altLeft      = QualifierSet:{lAlt};
  417.   altRight     = QualifierSet:{rAlt};
  418.   amigaLeft    = QualifierSet:{lCommand};
  419.   amigaRight   = QualifierSet:{rCommand};
  420.   amigaKeys    = amigaLeft+amigaRight;
  421.  
  422. TYPE
  423.   IntuiMessage = RECORD OF Message
  424.            class        : IDCMPFlagSet;
  425.            code         : CARDINAL;
  426.            qualifier    : QualifierSet;
  427.            iAddress     : ANYPTR;
  428.            mouseX,
  429.            mouseY       : INTEGER;
  430.            seconds,
  431.            micros       : LONGCARD;
  432.            idcmpWindow  : WindowPtr;
  433.            specialLink  : IntuiMessagePtr;
  434.          END;
  435.  
  436.  
  437.  
  438. GROUP
  439.   IDCMPGrp   =  IDCMPFlags,         IDCMPFlagSet,
  440.         selectUp,           selectDown,         menuUp,
  441.         menuDown,           menuNull,           noMenu,
  442.         noItem,             noSub,              keyCodeQ,
  443.         keyCodeX,           keyCodeV,           keyCodeB,
  444.         keyCodeN,           keyCodeM,           cursorUp,
  445.         cursorDown,         cursorRight,        cursorLeft,
  446.         menuHot,            menuCancel,         menuWaiting,
  447.         okOk,               okAbort,            okCancel,
  448.         wbenchOpen,         wbenchClose,        altLeft,
  449.         altRight,           amigaLeft,          amigaRight,
  450.         amigaKeys,          IntuiMessage,       IntuiMessagePtr;
  451.  
  452. TYPE
  453.   WindowFlags   = (windowSizing,windowDrag,windowDepth,windowClose,
  454.            sizeBRight,sizeBBottom,simpleRefresh,superBitMap,
  455.            backDrop,reportMouse,gimmeZeroZero,borderless,
  456.            activate,windowActive,inRequest,menuState,rmbTrap,
  457.            noCareRefresh,nw_Extended,wf19,wf20,wf21,wf22,wf23,
  458.            windowRefresh,wbenchWindow,windowTicked,visitor,zoomed,
  459.            hasZoom,wf30,wf31);
  460.   WindowFlagSet = SET OF WindowFlags;
  461.  
  462.   ScreenFlags   = (wbenchScreen,publicScreen,sf2,sf3,showTitle,beeping,
  463.            customBitMap,screenBehind,screenQuiet,screenHiRes,
  464.            sf10,sf11,nsExtended,sf13,autoScroll);
  465.   ScreenFlagSet = SET OF ScreenFlags;
  466.  
  467.  
  468. CONST
  469.   defaultMouseQueue = 5;    | the default for WindowTags.mouseQueue
  470.   otherRefresh      = WindowFlagSet:{simpleRefresh,superBitMap};
  471.   refreshBits       = otherRefresh;
  472.   stdScreenHeight   = -1;
  473.   stdScreenWidth    = -1;
  474.   customScreen      = ScreenFlagSet:{wbenchScreen..sf3};
  475.  
  476. TYPE
  477.   NewWindowPtr = POINTER TO NewWindow;
  478.   NewWindow    = RECORD
  479.            leftEdge,
  480.            topEdge,
  481.            width,
  482.            height      : INTEGER;
  483.            detailPen,
  484.            blockPen    : SHORTINT;
  485.            idcmpFlags  : IDCMPFlagSet;
  486.            flags       : WindowFlagSet;
  487.            firstGadget : GadgetPtr;
  488.            checkMark   : ImagePtr;
  489.            title       : SysStringPtr;
  490.            screen      : ScreenPtr;
  491.            bitMap      : BitMapPtr;
  492.            minWidth,
  493.            minHeight,
  494.            maxWidth,
  495.            maxHeight   : INTEGER;
  496.            type        : ScreenFlagSet;
  497.          END;
  498.  
  499.   ColorSpecPtr = POINTER TO ColorSpec;
  500.   ColorSpec    = RECORD
  501.            colorIndex  : INTEGER;
  502.            red,
  503.            green,
  504.            blue        : CARDINAL;
  505.          END;
  506.   ColorSpecs   = ARRAY OF ColorSpec;
  507.  
  508.   ColorPtr     =  POINTER TO ColorSpecs;
  509.  
  510.   EasyStructPtr = POINTER TO EasyStruct;
  511.   EasyStruct    = RECORD
  512.             structSize  : LONGCARD;
  513.             flags       : LONGCARD;
  514.             title,
  515.             textFormat,
  516.             gadgetFormat: SysStringPtr;
  517.           END;
  518.  
  519.   WindowTags      =
  520.     TAGS OF StdTags
  521.       left              = wTB+$01 : LONGINT;
  522.       top               = wTB+$02 : LONGINT;
  523.       width             = wTB+$03 : LONGINT;
  524.       height            = wTB+$04 : LONGINT;
  525.       detailPen         = wTB+$05 : LONGCARD;       | SHORTCARD
  526.       blockPen          = wTB+$06 : LONGCARD;       | SHORTCARD
  527.       IDCMP             = wTB+$07 : IDCMPFlagSet;
  528.       flags             = wTB+$08 : WindowFlagSet;
  529.       gadgets           = wTB+$09 : GadgetPtr;
  530.       checkmark         = wTB+$0A : ImagePtr;
  531.       title             = wTB+$0B : SysStringPtr;
  532.       screenTitle       = wTB+$0C : SysStringPtr;
  533.       customScreen      = wTB+$0D : ScreenPtr;
  534.       superBitMap       = wTB+$0E : BitMapPtr;
  535.       minWidth          = wTB+$0F : LONGINT;        | INTEGER
  536.       minHeight         = wTB+$10 : LONGINT;        | INTEGER
  537.       maxWidth          = wTB+$11 : LONGCARD;       | CARDINAL
  538.       maxHeight         = wTB+$12 : LONGCARD;       | CARDINAL
  539.       innerWidth        = wTB+$13 : LONGINT;
  540.       innerHeight       = wTB+$14 : LONGINT;
  541.  
  542.       pubScreenName     = wTB+$15 : SysStringPtr;
  543.       pubScreen         = wTB+$16 : ScreenPtr;
  544.       pubScreenFallBack = wTB+$17 : LONGBOOL;
  545.       windowName        = wTB+$18 : SysStringPtr;
  546.       colors            = wTB+$19 : ColorPtr;  | may not ever be implemented
  547.       zoom              = wTB+$1A : IBoxPtr;
  548.       mouseQueue        = wTB+$1B : LONGINT;  | def. defaultMouseQueue
  549.       backFill          = wTB+$1C : HookPtr;   | see Layers.InstallLayerHook
  550.       RPTQueue          = wTB+$1D : LONGINT;   | queue for events (see RKM)
  551.  
  552.       sizeGadget        = wTB+$1E : LONGBOOL;
  553.       dragBar           = wTB+$1F : LONGBOOL;
  554.       depthGadget       = wTB+$20 : LONGBOOL;
  555.       closeGadget       = wTB+$21 : LONGBOOL;
  556.       backDrop          = wTB+$22 : LONGBOOL;
  557.       reportMouse       = wTB+$23 : LONGBOOL;
  558.       noCareRefresh     = wTB+$24 : LONGBOOL;
  559.       borderless        = wTB+$25 : LONGBOOL;
  560.       activate          = wTB+$26 : LONGBOOL;
  561.       RMBTrap           = wTB+$27 : LONGBOOL;
  562.       wBenchWindow      = wTB+$28 : LONGBOOL;
  563.       simpleRefresh     = wTB+$29 : LONGBOOL;
  564.       smartRefresh      = wTB+$2A : LONGBOOL;
  565.       sizeBRight        = wTB+$2B : LONGBOOL;  | SizeGadget in right border
  566.       sizeBBottom       = wTB+$2C : LONGBOOL;  | SizeGadget in bottom Border
  567.       autoAdjust        = wTB+$2D : LONGBOOL;
  568.       gimmeZeroZero     = wTB+$2E : LONGBOOL;
  569.       menuHelp          = wTB+$2F : LONGBOOL;  | see IDCMP.menuHelp
  570.     END;
  571.  
  572.   WindowTagListPtr = POINTER TO WindowTagList;
  573.   WindowTagList    = ARRAY OF WindowTags;
  574.  
  575.   ExtNewWindowPtr  = POINTER TO ExtNewWindow;
  576.   ExtNewWindow     = RECORD OF NewWindow;
  577.                extension   : WindowTagListPtr;
  578.              END;
  579.  
  580.   NewScreenPtr     = POINTER TO NewScreen;
  581.   NewScreen        = RECORD
  582.                leftEdge    : INTEGER;
  583.                topEdge     : INTEGER;
  584.                width       : INTEGER;
  585.                height      : INTEGER;
  586.                depth       : INTEGER;
  587.                detailPen   : SHORTINT;
  588.                blockPen    : SHORTINT;
  589.                viewModes   : ViewModeSet;
  590.                type        : ScreenFlagSet;
  591.                font        : TextAttrPtr;
  592.                defaultTitle: ANYPTR;
  593.                gadgets     : GadgetPtr;
  594.                customBitMap: BitMapPtr;
  595.              END;
  596.  
  597.   | Types for ScreenTags
  598.  
  599.   ErrorTypePtr     = POINTER TO ErrorType;
  600.   ErrorType        = ( noMonitor,     noChips,       noMem,
  601.                noChipMem,     pubNotUnique,  unknownMode,
  602.                mmlong = $10000 );
  603.  
  604.   FontPrefs        = ( oldDefaultFont,    | The old fixed-width default
  605.                wbScreenFont,      | be font sensitive !!!
  606.                mmlong = $10000 );
  607.  
  608.   OScanType        = ( text,standard,max,video );
  609.  
  610.   ScreenTags       =
  611.     TAGS OF StdTags
  612.       left         = sTB + $01 : LONGINT;
  613.       top          = sTB + $02 : LONGINT;
  614.       width        = sTB + $03 : LONGINT;
  615.       height       = sTB + $04 : LONGINT;
  616.       depth        = sTB + $05 : LONGINT;
  617.       detailPen    = sTB + $06 : LONGCARD;     | SHORTCARD
  618.       blockPen     = sTB + $07 : LONGCARD;     | SHORTCARD
  619.       title        = sTB + $08 : SysStringPtr;
  620.       colors       = sTB + $09 : ColorPtr;     | initial Palette. Finish
  621.                            | with -1.
  622.       errorCode    = sTB + $0A : ErrorTypePtr;
  623.       font         = sTB + $0B : TextAttrPtr;
  624.       sysFont      = sTB + $0C : FontPrefs;
  625.       type         = sTB + $0D : ScreenFlagSet;
  626.       bitMap       = sTB + $0E : BitMapPtr;      | custom bitmap
  627.       pubName      = sTB + $0F : SysStringPtr;   | state before the two
  628.                          | below
  629.       pubSig       = sTB + $10 : TaskSignals;    | signal for pubTask
  630.       pubTask      = sTB + $11 : TaskPtr;        | the pubscreen task
  631.       displayID    = sTB + $12 : LONGINT;        | a custom Display
  632.       dClip        = sTB + $13 : RectanglePtr;   | better use overScan
  633.       overScan     = sTB + $14 : OScanType;
  634.       obsolete1    = sTB + $15 : SysStringPtr;   | used to be Monitorname
  635.       showTitle    = sTB + $16 : LONGBOOL;
  636.       behind       = sTB + $17 : LONGBOOL;
  637.       quiet        = sTB + $18 : LONGBOOL;
  638.       autoScroll   = sTB + $19 : LONGBOOL;
  639.       pens         = sTB + $1A : PenArrayPtr; | init screen.drawInfo.pens
  640.       fullPalette  = sTB + $1B : LONGBOOL;    | init all preferences colors
  641.     END;
  642.  
  643.   ScreenTagListPtr = POINTER TO ScreenTagList;
  644.   ScreenTagList    = ARRAY OF ScreenTags;
  645.  
  646.   ExtNewScreenPtr  = POINTER TO ExtNewScreen;
  647.   ExtNewScreen     = RECORD OF NewScreen;
  648.                extension   : ScreenTagListPtr;
  649.              END;
  650.  
  651.   Window           = RECORD  OF WinRes.ResHandle
  652.                nextWindow  : WindowPtr;
  653.                leftEdge    : INTEGER;
  654.                topEdge     : INTEGER;
  655.                width       : INTEGER;
  656.                height      : INTEGER;
  657.                mouseY      : INTEGER;
  658.                mouseX      : INTEGER;
  659.                minWidth    : INTEGER;
  660.                minHeight   : INTEGER;
  661.                maxWidth    : INTEGER;
  662.                maxHeight   : INTEGER;
  663.                flags       : WindowFlagSet;
  664.                menuStrip   : MenuPtr;
  665.                title       : SysStringPtr;
  666.                firstRequest: RequesterPtr;
  667.                dmRequest   : RequesterPtr;
  668.                reqCount    : INTEGER;
  669.                wScreen     : ScreenPtr;
  670.                rPort       : RastPortPtr;
  671.                borderLeft  : SHORTINT;
  672.                borderTop   : SHORTINT;
  673.                borderRight : SHORTINT;
  674.                borderBottom: SHORTINT;
  675.                borderRPort : RastPortPtr;
  676.                firstGadget : GadgetPtr;
  677.                parent      : WindowPtr;
  678.                descendant  : WindowPtr;
  679.                pointer     : ANYPTR;
  680.                ptrHeight   : SHORTINT;
  681.                ptrWidth    : [0..16];
  682.                xOffset     : SHORTINT;
  683.                yOffset     : SHORTINT;
  684.                idcmpFlags  : IDCMPFlagSet;
  685.                userPort    : MsgPortPtr;
  686.                windowPort  : MsgPortPtr;
  687.                messageKey  : IntuiMessagePtr;
  688.                detailPen   : SHORTCARD;
  689.                blockPen    : SHORTCARD;
  690.                checkMark   : ImagePtr;
  691.                screenTitle : SysStringPtr;
  692.                gzzMouseX   : INTEGER;
  693.                gzzMouseY   : INTEGER;
  694.                gzzWidth    : INTEGER;
  695.                gzzHeight   : INTEGER;
  696.                extData     : ANYPTR;
  697.                userData    : ANYPTR;
  698.                wLayer      : LayerPtr;
  699.                iFont       : TextFontPtr;
  700.              END;
  701.  
  702.   Screen           = RECORD OF ScreenRes.ResHandle
  703.                nextScreen  : ScreenPtr;
  704.                firstWindow : WindowPtr;
  705.                leftEdge    : INTEGER;
  706.                topEdge     : INTEGER;
  707.                width       : INTEGER;
  708.                height      : INTEGER;
  709.                mouseY      : INTEGER;
  710.                mouseX      : INTEGER;
  711.                flags       : ScreenFlagSet;
  712.                title       : SysStringPtr;
  713.                defaultTitle: SysStringPtr;
  714.                barHeight   : SHORTINT;
  715.                barVBorder  : SHORTINT;
  716.                barHBorder  : SHORTINT;
  717.                menuVBorder : SHORTINT;
  718.                menuHBorder : SHORTINT;
  719.                wBorTop     : SHORTINT;
  720.                wBorLeft    : SHORTINT;
  721.                wBorRight   : SHORTINT;
  722.                wBorBottom  : SHORTINT;
  723.                font        : TextAttrPtr;
  724.                viewPort    : ViewPort;
  725.                rastPort    : RastPort;
  726.                bitMap      : BitMap;
  727.                layerInfo   : LayerInfo;
  728.                firstGadget : GadgetPtr;
  729.                detailPen   : SHORTCARD;
  730.                blockPen    : SHORTCARD;
  731.                saveColor0  : CARDINAL;
  732.                barLayer    : LayerPtr;
  733.                extData     : ANYPTR;
  734.                userData    : ANYPTR;
  735.              END;
  736.  
  737. CONST
  738.   private          =  1;
  739.   maxPubScreenName =  139;          (* names no longer *)
  740.  
  741. TYPE
  742.   PBNFlags         = ( shanghai, popPubScreen, makeMeWord = 15 );
  743.   PBNFlagSet       = SET OF PBNFlags;
  744.  
  745.   PubScreenNode    = RECORD OF Node;
  746.                screen        : ScreenPtr;
  747.                flags         : PBNFlagSet;
  748.                size          : INTEGER;
  749.                visitorCount  : INTEGER;
  750.                sigTask       : TaskPtr;
  751.                sigBit        : TaskSignals;
  752.              END;
  753.  
  754.  
  755.  
  756. CONST
  757.   filenameSize  = 30;
  758.   pointerSize   = (1+16+1)*2;
  759.   topazEighty   = 8;
  760.   topazSixty    = 9;
  761.  
  762. TYPE
  763.   PrinterPort   = (parallelPrinter,serialPrinter);
  764.  
  765.  
  766. (* PrinterTypes *)
  767. CONST
  768.   CustomName     = 0;
  769.   AlphaP101      = 1;
  770.   Brother15XL    = 2;
  771.   CbmMps1000     = 3;
  772.   Diab630        = 4;
  773.   DiabAdvD25     = 5;
  774.   DiabC150       = 6;
  775.   Epson          = 7;
  776.   EpsonJX80      = 8;
  777.   Okimate20      = 9;
  778.   QumeLP20       = 10;
  779.   HpLaserjet     = 11;
  780.   HpLaserjetPlus = 12;
  781.  
  782. TYPE
  783.   SerParShk     =(shakeXon,shakeRts,shakeNone,sps3,parityNone,parityEven,
  784.           parityOdd);
  785.  
  786.   SerParShkSet  = SET OF SerParShk;
  787.  
  788.   Print         =(ignoreDimensions,correctRed,correctGreen,correctBlue,
  789.           centerImage,boundedDimensions,absoluteDimensions,
  790.           pixelDimensions,mulitplyDimensions,integerScaling,
  791.           halftoneDithering,floydDithering,antiAlias,greyScale2);
  792.  
  793.   PrintFlags    = SET OF Print;
  794.  
  795.  
  796. CONST
  797.   orderedDithering = ignoreDimensions;
  798.   correctRgbMask   = PrintFlags :{correctRed..correctBlue};
  799.   dimensionsMask   = PrintFlags :{boundedDimensions..pixelDimensions};
  800.   ditheringMask    = PrintFlags :{halftoneDithering,floydDithering};
  801.  
  802. TYPE
  803.  
  804.   PaperType = ( fanfold       = $0,
  805.         single        = $080 );
  806.  
  807.   Preferences   = RECORD
  808.             fontHeight        : SHORTCARD;
  809.             printerPort       : PrinterPort;
  810.             baudRate          : CARDINAL;
  811.             keyRptSpeed       : TimeVal;
  812.             keyRptDelay       : TimeVal;
  813.             doubleClick       : TimeVal;
  814.             pointerMatrix     : ARRAY [0..pointerSize-1] OF CARDINAL;
  815.             xOffset           : SHORTINT;
  816.             yOffset           : SHORTINT;
  817.             color17           : CARDINAL;
  818.             color18           : CARDINAL;
  819.             color19           : CARDINAL;
  820.             pointerTicks      : CARDINAL;
  821.             color0            : CARDINAL;
  822.             color1            : CARDINAL;
  823.             color2            : CARDINAL;
  824.             color3            : CARDINAL;
  825.             viewXOffset       : SHORTINT;
  826.             viewYOffset       : SHORTINT;
  827.             viewInitX         : INTEGER;
  828.             viewInitY         : INTEGER;
  829.             enableCLI         : BOOLEAN;
  830.             printerType       : CARDINAL;
  831.             printerFilename   : ARRAY [0..filenameSize-1] OF CHAR;
  832.             printPitch        : CARDINAL;
  833.             printQuality      : CARDINAL;
  834.             printSpacing      : CARDINAL;
  835.             printLeftMargin   : CARDINAL;
  836.             printRightMargin  : CARDINAL;
  837.             printImage        : CARDINAL;
  838.             printAspect       : CARDINAL;
  839.             printShade        : CARDINAL;
  840.             printTreshhold    : INTEGER;
  841.             paperSize         : CARDINAL;
  842.             paperLength       : CARDINAL;
  843.             paperType         : PaperType;
  844.             serRWBits         : SHORTCARD;
  845.             serStopBuf        : SHORTCARD;
  846.             serParShk         : SerParShkSet;
  847.             laceWB            : BOOLEAN;
  848.             workName          : ARRAY [0..filenameSize-1] OF CHAR;
  849.             padding           : ARRAY [0..15] OF SHORTINT;
  850.           END;
  851.  
  852.  
  853. CONST
  854.   baud110       = 0;
  855.   baud300       = 1;
  856.   baud1200      = 2;
  857.   baud2400      = 3;
  858.   baud4800      = 4;
  859.   baud9600      = 5;
  860.   baud19200     = 6;
  861.   baudMidi      = 7;
  862.   pica          = $0;
  863.   elite         = $0400;
  864.   fine          = $0800;
  865.   draft         = $0;
  866.   letter        = $0100;
  867.   sixLPI        = $0;
  868.   eightLPI      = $0200;
  869.   imagePositive = 0;
  870.   imageNegative = 1;
  871.   aspectHoriz   = 0;
  872.   aspectVert    = 1;
  873.   shadeBW       = 0;
  874.   shadeGreyscale= 1;
  875.   shadeColor    = 2;
  876.   usLetter      = $0;
  877.   usLegal       = $010;
  878.   nTractor      = $020;
  879.   wTractor      = $030;
  880.   custom        = $040;
  881.  
  882.   readBits      = $0F0;
  883.   writeBits     = $0F;
  884.   stopBits      = $0F0;
  885.   bufSizeBits   = $0F;
  886.   buf512        = 0;
  887.   buf1024       = 1;
  888.   buf2048       = 2;
  889.   buf4096       = 3;
  890.   buf8000       = 4;
  891.   buf16000      = 5;
  892.  
  893. TYPE
  894.   Remember      = RECORD
  895.             nextRemember : RememberPtr;
  896.             rememberSize : LONGCARD;
  897.             memory       : ANYPTR;
  898.           END;
  899.  
  900. CONST
  901.   deadendAlert  = $80000000;
  902.   recoveryAlert = 0;
  903.  
  904. TYPE
  905.   DisplayMode   = (hiresPick,lowresPick);
  906.  
  907. CONST
  908.   dMountCode    = LONGINT(DisplayMode'MAX)+1;
  909.   eventMax      = 10;
  910.  
  911. TYPE
  912.   Res           = (hiresGadget,lowresGadget);
  913.  
  914. CONST
  915.   resCount      = LONGINT(Res'MAX)+1;
  916.  
  917. TYPE
  918.   Gadgets       = (upFrontGadget,downBackGadget,sizeGadget,
  919.            closeGadget,dragGadget,
  920.            sUpFrontGadget,sDownBackGadget,sDragGadget);
  921.  
  922. CONST
  923.   gadgetCount   = LONGINT(Gadgets'MAX)+1;
  924.  
  925. TYPE
  926.   ILocks        = (iStateLock,layerInfoLock,gadgetsLock,layerRomLock,
  927.            viewLock,iBaseLock,rpLock);
  928.  
  929. CONST
  930.   numILocks     = LONGINT(ILocks'MAX)+1;
  931.  
  932. TYPE
  933.   FatIntuiMessagePtr = POINTER TO FatIntuiMessage;
  934.   FatIntuiMessage    = RECORD OF IntuiMessage
  935.              prevKeys     : LONGCARD;
  936.                END;
  937.  
  938.   IBox            = RECORD
  939.               left          : INTEGER;
  940.               top           : INTEGER;
  941.               width         : INTEGER;
  942.               height        : INTEGER;
  943.             END;
  944.  
  945.   PointPtr        = POINTER TO Point;
  946.   Point           = RECORD
  947.               x             : INTEGER;
  948.               y             : INTEGER;
  949.             END;
  950.  
  951.   PenPair         = RECORD
  952.               detailPen     : SHORTCARD;
  953.               blockPen      : SHORTCARD;
  954.             END;
  955.  
  956.  
  957.   CoordinatesPtr  = POINTER TO Coordinates;
  958.   Coordinates     = RECORD
  959.               x,
  960.               y   : CARDINAL;
  961.             END;
  962.  
  963.  
  964.  
  965.   DrawInfoFlags   = (newLook,makeMeLong=31);
  966.   DrawInfoFlagSet = SET OF DrawInfoFlags;
  967.  
  968.   DrawInfoPenss   = (detailPen,
  969.              blockPen,
  970.              textPen,
  971.              shinePen,
  972.              shadowPen,
  973.              fillPen,
  974.              fillTextPen,
  975.              backgroundPen,
  976.              highlightTextPen);
  977.  
  978.   DrawInfoPtr     = POINTER TO DrawInfo;
  979.   DrawInfo        = RECORD
  980.               version       : CARDINAL;
  981.               numPens       : CARDINAL;
  982.               pens          : ANYPTR;  | Pointer to Pen-Array ??
  983.               font          : TextFontPtr;
  984.               depth         : CARDINAL;
  985.               resolution    : Coordinates;
  986.               flags         : DrawInfoFlagSet;
  987.               reserved      : ARRAY [0..6] OF LONGCARD;
  988.             END;
  989.  
  990.  
  991. (*
  992.  * Package of information passed to custom and 'boopsi'
  993.  * gadget "hook" functions.  This structure is READ ONLY.
  994.  *)
  995.  
  996.   GadgetInfoPtr = POINTER TO GadgetInfo;
  997.   GadgetInfo    = RECORD
  998.             screen    : ScreenPtr;
  999.             window    : WindowPtr;
  1000.             requester : RequesterPtr;
  1001.             |
  1002.             | rendering information:
  1003.             | don't use these without cloning/locking.
  1004.             | Official way is to call ObtainRPort()
  1005.             |
  1006.             rastPort  : RastPortPtr;
  1007.             layer     : LayerPtr;
  1008.             |
  1009.             | copy of dimensions of screen/window/g00/req(/group)
  1010.             | that gadget resides in.  Left/Top of this box is
  1011.             | offset from window mouse coordinates to gadget
  1012.             | coordinates
  1013.             |   screen gadgets           : 0,0 (from screen coords)
  1014.             |   window gadgets (no g00)  : 0,0
  1015.             |   gzzGadget (borderlayer)  : 0,0
  1016.             |   gzz innerlayer gadget    : borderleft, bordertop
  1017.             |   Requester gadgets        : reqleft, reqtop
  1018.             |
  1019.             domain    : IBox;
  1020.             pens      : PenPair;
  1021.             |
  1022.             | the Detail and Block pens in drInfo.pens are
  1023.             | for the screen.  Use the above for window-sensitive
  1024.             | colors.
  1025.             |
  1026.             drInfo    : DrawInfo;
  1027.             |
  1028.             | reserved space: this structure is extensible anyway,
  1029.             | but using these saves some recompilation
  1030.             | (orig. CBM comment).
  1031.             |
  1032.             reserved  : ARRAY [0..5] OF LONGCARD;
  1033.           END;
  1034.  
  1035.  
  1036. CONST
  1037.   numIEvents = 4;
  1038.  
  1039. TYPE
  1040.   PGX           = RECORD
  1041.             container   : IBox;
  1042.             newKnob     : IBox;
  1043.           END;
  1044.  
  1045.   SGActionFlags   = (use,end,beep,reuese,redisplay,
  1046.              nextActive,prevActive,makeMeLong=31);
  1047.   SGActionFlagSet = SET OF SGActionFlags;
  1048.  
  1049.   EditOperation   = (null,noOp,delBackward,delForward,
  1050.              moveCursor,enter,reset,replaceChar,
  1051.              insertChar,badFormat,bigChange,undo,
  1052.              clear,special,
  1053.              makeMeWord = $1000);
  1054.  
  1055.   SGWorkPtr       = POINTER TO SGWork;
  1056.   SGWork          = RECORD
  1057.               gadget       : GadgetPtr;
  1058.               strInfo      : StringInfoPtr;
  1059.               workBuffer,
  1060.               prevBuffer   : SysStringPtr;
  1061.               modes        : StringExtFlagSet;
  1062.               iEvent       : InputEventPtr;
  1063.               code         : CARDINAL;
  1064.               bufferPos,
  1065.               numChars     : INTEGER;
  1066.               actions      : SGActionFlagSet;
  1067.               longInt      : LONGINT;
  1068.               info         : GadgetInfoPtr;
  1069.               editOp       : EditOperation;
  1070.             END;
  1071.  
  1072.  
  1073.  
  1074.  
  1075.  
  1076.   IClassPtr  = POINTER TO IClass;
  1077.   ObjectPtr  = POINTER TO Object;
  1078.   Object     = RECORD OF MinNode;
  1079.          class  :  IClassPtr;
  1080.            END;
  1081.  
  1082.   | Dispatched method ID's
  1083.   | NOTE: Applications should use Intuition entry points, not direct
  1084.   | DoMethod() calls, for NewObject, DisposeObject, SetAttrs,
  1085.   | SetGadgetAttrs, and GetAttr.
  1086.   |
  1087.   | the following enum is for clean access for magic string values in
  1088.   | variant RECORD ClassId just below.
  1089.  
  1090.   MethodID = (dummy   = $100,  | to start us off
  1091.           new,             | 'object' parameter is "true class"
  1092.           dispose,         | delete self (no parameters)
  1093.           set,             | set attributes (in tag list)
  1094.           get,             | return single attribute value
  1095.           addTail,         | add self to a List (let root do it)
  1096.           remove,          | remove self from list
  1097.           notify,          | send to self: notify dependents
  1098.           update,          | notification message from somebody
  1099.           addMember,       | used by various classes with lists
  1100.           remMember,       | used by various classes with lists
  1101.           ldummy = $10000);| dummy to make the enum a long value
  1102.  
  1103.   ClassId   = SysStringPtr;
  1104.  
  1105.   |
  1106.   | you can use this type to point to a "generic" message,
  1107.   | in the object-oriented programming parlance.  Based on
  1108.   | the value of 'MethodID', you dispatch to processing
  1109.   | for the various message types.  The meaningful parameter
  1110.   | packet structure definitions are defined below.
  1111.   |
  1112.   Msg      = POINTER TO MsgRoot;
  1113.   MsgRoot  = RECORD
  1114.            methodId  : MethodID;
  1115.            | method-specific data follows, some examples below
  1116.          END;
  1117.  
  1118. CONST
  1119.   RootClass      = "rootclass";
  1120.   ImageClass     = "imageclass";
  1121.   FrameIClass    = "frameiclass";
  1122.   SysIClass      = "sysiclass";
  1123.   FillRectClass  = "fillrectclass";
  1124.   GadgetClass    = "gadgetclass";
  1125.   PropGClass     = "propgclass";
  1126.   StrGClass      = "strgclass";
  1127.   ButtonGClass   = "buttongclass";
  1128.   FRButtonGClass = "frbuttonclass";
  1129.   GroupGClass    = "groupgclass";
  1130.   ICClass        = "icclass";
  1131.   ModelClass     = "modelclass";
  1132.  
  1133. TYPE
  1134.   |
  1135.   | ´new´ and ´set´:
  1136.   |
  1137.   OpSetPtr  = POINTER TO OpSet;
  1138.   OpSet     = RECORD OF MsgRoot
  1139.         attrList  : ANYPTR;        | Taglist of any tags
  1140.         gInfo     : GadgetInfoPtr; | always there for gadgets,
  1141.           END;                         | when SetGadgetAttrs() is used,
  1142.                        | but will be NULL for ´new´
  1143.  
  1144.   |
  1145.   | ´notify´ and ´update´:
  1146.   |
  1147.   | this flag (interim) means that the update message is being issued from
  1148.   | something like an active gadget, a la followMouse.  When  the gadget goes
  1149.   | inactive, it will issue a final update message with this bit cleared.
  1150.   | Examples of use are for followMouse equivalents for propgadclass, and
  1151.   | repeat strobes for buttons.
  1152.   |
  1153.   OpuFlags   =  (   interim,  opufmax = 31 );
  1154.   OpuFlagSet =  SET OF OpuFlags;
  1155.   |
  1156.   | Message for notify or update Methods
  1157.   |
  1158.   OpUpdatePtr = POINTER TO OpUpdate;
  1159.   OpUpdate    = RECORD OF MsgRoot
  1160.           attrList  : ANYPTR;    | TagList of new attributes
  1161.           gInfo     : GadgetPtr; | non-NULL when SetGadgetAttrs or
  1162.                      | notification resultingfrom gadget
  1163.                      | input occurs.
  1164.           flags     : OpuFlagSet;
  1165.         END;
  1166.  
  1167.  
  1168.   |
  1169.   | Message for Method 'get'
  1170.   |
  1171.   OpGetPtr    = POINTER TO OpGet;
  1172.   OpGet       = RECORD OF MsgRoot
  1173.           attrId    : LONGCARD;
  1174.           storage   : ANYPTR; | may be other types, but
  1175.                       | "int" , types are all LONGCARD
  1176.         END;
  1177.  
  1178.  
  1179.   |
  1180.   | 'addTail' Message
  1181.   |
  1182.   OpAddTailPtr = POINTER TO OpAddTail;
  1183.   OpAddTail    = RECORD OF MsgRoot
  1184.            list     : ListPtr;
  1185.          END;
  1186.  
  1187.   |
  1188.   | ´addMember´ and ´remMember´ Message
  1189.   |
  1190.   OpMemberPtr = POINTER TO OpMember;
  1191.   OpMember    = RECORD OF MsgRoot
  1192.           object   : ObjectPtr;
  1193.         END;
  1194.  
  1195.   IClassFlags     = ( inPublicList, icfmax=31 );
  1196.   IClassFlagSet   = SET OF IClassFlags;
  1197.  
  1198.   IClass    =  RECORD
  1199.          dispatcher   :  Hook;
  1200.          reserved     :  LONGCARD;
  1201.          super        :  IClassPtr;
  1202.          id           :  ClassId;
  1203.  
  1204.          instOffset   :  CARDINAL;
  1205.          instSize     :  CARDINAL;
  1206.          userData     :  LONGCARD;
  1207.          subClassCount:  LONGCARD;
  1208.          objectCount  :  LONGCARD;
  1209.          flags        :  LONGCARD;
  1210.            END;
  1211.  
  1212.   Class = IClass;
  1213.  
  1214.  
  1215.  
  1216. |
  1217. |   GadgetClass
  1218. |
  1219.  
  1220.  
  1221. CONST
  1222.   |
  1223.   | Tag offsets
  1224.   |
  1225.   gaTB          = tagUser + $30000;  | OffSet GadgetClass attributeTags
  1226.   pgaTB         = gaTB    + $01000;  | Offset PropGClass attributeTags
  1227.   strgTB        = gaTB    + $02000;  | Offset STRGClass attributeTags
  1228.   layoTB        = gaTB    + $08000;  | Offset Gadget layout attributeTags
  1229.  
  1230.   defaultMaxChars   = 128;
  1231.  
  1232.  
  1233. TYPE
  1234.   GadgetTags        =
  1235.     TAGS OF StdTags
  1236.       dummy = tagUser + $30000;
  1237.       left           : LONGINT;
  1238.       relRight       : LONGINT;
  1239.       top            : LONGINT;
  1240.       relBottom      : LONGINT;
  1241.       width          : LONGINT;
  1242.       relWidth       : LONGINT;
  1243.       height         : LONGINT;
  1244.       relHeight      : LONGINT;
  1245.       text           : SysStringPtr;
  1246.       image          : ImagePtr;
  1247.       border         : BorderPtr;
  1248.       selectRender   : ANYPTR;
  1249.       highLight      : LONGINT; | ????
  1250.       disabled       : LONGBOOL;
  1251.       gzzGadget      : LONGBOOL;
  1252.       id             : LONGINT;
  1253.       userData       : ANYPTR;
  1254.       specialInfo    : GadgInfoPtr;
  1255.       selected       : LONGBOOL;
  1256.       endGadget      : LONGBOOL;
  1257.       immediate      : LONGBOOL;
  1258.       relVerify      : LONGBOOL;
  1259.       followMouse    : LONGBOOL;
  1260.       rightBorder    : LONGBOOL;
  1261.       leftBorder     : LONGBOOL;
  1262.       topBorder      : LONGBOOL;
  1263.       bottomBorder   : LONGBOOL;
  1264.       toggleSelect   : LONGBOOL;
  1265.       sysGadget      : LONGBOOL;
  1266.              |
  1267.              | bool, sets GTYP_SYSGADGET field in type
  1268.              |
  1269.       sysGType       : GadgetType;     | internal use only
  1270.              |
  1271.              | e.g., wUpFront , ...
  1272.              |
  1273.       previous       : GadgetPtr;
  1274.              |
  1275.              | previous gadget (or GadgetPtrPtr) in linked list
  1276.              | This attribute CANNOT be used to link new gadgets
  1277.              | to an open window or requester. Use AddGList().
  1278.              |
  1279.       next           : GadgetPtr;      | not implemented
  1280.       drawInfo       : DrawInfoPtr;
  1281.              |
  1282.              | some fancy gadgets need to see a DrawInfo
  1283.              | when created or for layout
  1284.              |
  1285.       intuiText      : IntuiTextPtr;
  1286.              |
  1287.              | use at most ONE of text, intuiText, or labelImage
  1288.              |
  1289.       labelImage     : ImagePtr;
  1290.              |
  1291.              | an Image object used in place of GadgetText
  1292.              |
  1293.       tabCycle       : LONGBOOL;
  1294.              |
  1295.              | indicates that this gadget is to participate in
  1296.              | cycling activation with Tab or Shift-Tab.
  1297.     END;
  1298.  
  1299.   GadgetTagListPtr  = POINTER TO GadgetTagList;
  1300.   GadgetTagList     = ARRAY OF GadgetTags;
  1301.  
  1302.  
  1303.   OrientationFlags   = (horizontal,vertical,makeMeLong = 31);
  1304.   OrientationFlagSet = SET OF OrientationFlags;
  1305.  
  1306.   PropGTags         = TAGS OF GadgetTags
  1307.             dummy = tagUser + $31000;
  1308.  
  1309.             freedom      : OrientationFlagSet;
  1310.             borderless   : LONGCARD;
  1311.             horizPot     : LONGCARD;
  1312.             horizBody    : LONGCARD;
  1313.             vertPot      : LONGCARD;
  1314.             vertBody     : LONGCARD;
  1315.             total        : LONGCARD;
  1316.             visible      : LONGCARD;
  1317.             top          : LONGCARD;
  1318.             newLook      : LONGBOOL;
  1319.               END;
  1320.  
  1321.   TagStrgPtr        = POINTER TO StringTags;
  1322.   StringTags        = TAGS OF GadgetTags
  1323.             dummy = tagUser + $32000;
  1324.  
  1325.             maxChars         : LONGINT;
  1326.             buffer           : SysStringPtr;
  1327.             undoBuffer       : SysStringPtr;
  1328.             workBuffer       : SysStringPtr;
  1329.             bufferPos        : SysStringPtr;
  1330.             dispPos          : LONGINT;
  1331.             altKeyMap        : ANYPTR;
  1332.             font             : LONGINT;
  1333.             pens             : LONGINT;
  1334.             activePens       : LONGINT;
  1335.             editHook         : LONGINT;
  1336.             editModes        : LONGINT;
  1337.  
  1338.             replaceMode      : BOOLEAN;
  1339.             fixedFieldMode   : BOOLEAN;
  1340.             noFilterMode     : BOOLEAN;
  1341.  
  1342.             justification    : GadgetFlagSet;
  1343.  
  1344.             longVal          : LONGINT;
  1345.             textVal          : SysStringPtr;
  1346.  
  1347.             exitHelp         : LONGBOOL;
  1348.               END;
  1349.  
  1350.   StringTagListPtr  = POINTER TO StringTagList;
  1351.   StringTagList     = ARRAY OF StringTags;
  1352.  
  1353.  
  1354.   TagLayoutPtr      = POINTER TO LayoutTags;
  1355.   LayoutTags        = TAGS OF GadgetTags
  1356.             dummy = tagUser + $38000;
  1357.             layoutObj       : LONGINT;
  1358.             spacing         : LONGINT;
  1359.             orientation     : OrientationFlagSet;
  1360.               END;
  1361.  
  1362.   LayoutTagListPtr  = POINTER TO LayoutTagList;
  1363.   LayoutTagList     = ARRAY OF LayoutTags;
  1364.  
  1365. CONST
  1366.     hitTest     = MethodID(0); | return 'gadgetHit' if you are clicked on
  1367.                    | (whether or not you are disabled).
  1368.     render      = MethodID(1); | draw yourself, in the appropriate state
  1369.     goActive    = MethodID(2); | you are now going to be fed input
  1370.     handleInput = MethodID(3); | handle that input
  1371.     goInactive  = MethodID(4); | whether or not by choice, you are done
  1372.  
  1373. CONST
  1374.   | HitTest-Return Value :
  1375.   gadgetNotHit      =  0;
  1376.   gadgetHit         =  4;
  1377.  
  1378. TYPE
  1379.   |
  1380.   | Parameter "Messages" passed to gadget class methods
  1381.   |
  1382.   | 'hitTest' Message:
  1383.   |
  1384.   HitTest           = RECORD OF MsgRoot;
  1385.             gInfo       : GadgInfo;
  1386.             mouse       : Point;
  1387.               END;
  1388.  
  1389.   | values for Render.redraw
  1390.   |
  1391.   RedrawType    = (toggle,reDraw,update,makemelong = 1000000 );
  1392.  
  1393.   |
  1394.   | 'render' message:
  1395.   |
  1396.   Render            = RECORD OF MsgRoot;
  1397.             gInfo       : GadgInfo;
  1398.             rPort       : RastPort;
  1399.             redraw      : RedrawType;
  1400.               END;
  1401.  
  1402. TYPE
  1403.   |
  1404.   | 'goActive' and 'handleInput' messages:
  1405.   |
  1406.   GPInput           = RECORD OF MsgRoot;
  1407.             gInfo       : GadgInfo;
  1408.             iEvent      : InputEvent;
  1409.             termination : POINTER TO LONGINT;
  1410.             mouse       : Point;
  1411.               END;
  1412.  
  1413.  
  1414.   InputGoActiveCodeFlags = (iga0,noReUse,reUse,verify,nextActive,
  1415.                 prevActive);
  1416.   IGoActFlagSet          = SET OF InputGoActiveCodeFlags;
  1417.  
  1418.  
  1419.   |
  1420.   | 'goInactive' message:
  1421.   |
  1422.   GoInactive        = RECORD OF MsgRoot;
  1423.             gInfo       : GadgInfo;
  1424.             abort       : LONGBOOL;
  1425.               END;
  1426.  
  1427.  
  1428. (* IcClass starts here : *)
  1429.  
  1430. CONST
  1431.   ioCdummy      = MethodID($0401); | used for nothing
  1432.   setLoop       = MethodID($0402); | set/increment loop counter
  1433.   clearLoop     = MethodID($0403); | clear/decrement loop counter
  1434.   checkLoop     = MethodID($0404); | set/increment loop
  1435.  
  1436.   icaTB          = tagUser + $40000;
  1437.   icTargetIDCMP  = -1;   (* ? *)
  1438.  
  1439. TYPE
  1440.  
  1441.   |
  1442.   | InterConnection Attribute Tags
  1443.   |
  1444.   ICATags     = TAGS OF StdTags
  1445.           dummy = tagUser + $40000;
  1446.           target : LONGINT;
  1447.           map    : LONGINT;
  1448.           code   : LONGINT;
  1449.         END;
  1450.  
  1451.   ICATagListPtr = POINTER TO ICATagList;
  1452.   ICATagList    = ARRAY OF ICATags;
  1453.  
  1454.  
  1455. CONST
  1456.   customImageDepth    = -1;
  1457.  
  1458.  
  1459. TYPE
  1460.   SYSIAWichValues   = (depthImage=0,zoomImage,sizeImage,closeImage,
  1461.                sDepthImage=5,leftImage=$A,upImage,rightImage,
  1462.                downImage,checkImage,mxImage);
  1463.  
  1464.   SYSIASizeValues   = (medRes=0,lowRes,hiRes);
  1465.  
  1466.  
  1467.   ImageMessageId    = (draw=$202,
  1468.                hitTest,   | return TRUE if click hits image
  1469.                erase,     | erase yourself
  1470.                move,      | draw new and erase old, smoothly
  1471.                drawFrame, | draw with specified dimensions
  1472.                frameBox,  | get recommended frame around some box
  1473.                hitFrame,  | hittest with dimensions
  1474.                eraseFrame | hittest with dimensions
  1475.               );
  1476.  
  1477. (* image draw states or styles, for IM_DRAW *)
  1478.  ImageDrawStates    = (normal=0,
  1479.                selected,        | for selected gadgets
  1480.                disabled,        | for disabled gadgets
  1481.                busy,            | for future functionality
  1482.                indeterminant,   | for future functionality
  1483.                inactiveNormal,  | normal, in inactive window border
  1484.                inactiveSelected,| selected, in inactive border
  1485.                inactiveDisabled | disabled, in inactive border
  1486.                );
  1487.  
  1488.   TagImagePtr       = POINTER TO ImageTags;
  1489.   ImageTags         = TAGS OF StdTags
  1490.             dummy = tagUser + $20000;
  1491.             left         : LONGINT;
  1492.             top          : LONGINT;
  1493.             width        : LONGINT;
  1494.             height       : LONGINT;
  1495.             fgPen        : LONGINT;
  1496.             bgPen        : LONGINT;
  1497.             data         : LONGINT;
  1498.             lineWidth    : LONGINT;
  1499.             sysIAShadowPen     : LONGINT;
  1500.             sysIAHighLightPen  : LONGINT;
  1501.             size         : SYSIASizeValues;
  1502.             sysIADepth   : LONGINT;
  1503.             sysIAWich    : SYSIAWichValues;
  1504.             pens         : ANYPTR; (* ? Pointer to Pens[] *)
  1505.             resolution   : LONGCARD;
  1506.             aPattern     : LONGINT;
  1507.             aPatSize     : LONGINT;
  1508.             mode         : LONGINT;
  1509.             font         : LONGINT;
  1510.             outLine      : LONGINT;
  1511.             recessed     : LONGINT;
  1512.             doubleEmboss : LONGINT;
  1513.             edgesOnly    : LONGINT;
  1514.             sysIADrawInfo  : LONGINT;
  1515.               END;
  1516.  
  1517.   ImageTagListPtr   = POINTER TO ImageTagList;
  1518.   ImageTagList      = ARRAY OF ImageTags;
  1519.  
  1520.   ImpFrameBox   = RECORD OF MsgRoot;
  1521.             contentsBox   : IBoxPtr; | input: relative box
  1522.                          | of contents
  1523.             frameBox      : IBoxPtr; | output: rel. box of
  1524.                          | encl frame
  1525.             drInfo        : DrawInfo;
  1526.             frameFlags    : LONGCARD;
  1527.           END;
  1528.  
  1529.   (* es folgen seltsame Macros.... ? *)
  1530.  
  1531.   DimensionRec  = RECORD
  1532.             width   : INTEGER;
  1533.             height  : INTEGER;
  1534.           END;
  1535.  
  1536.   ImpDraw       = RECORD
  1537.             methodId    : LONGCARD;
  1538.             rPort       : RastPort;
  1539.             offset      : Point;
  1540.             state       : LONGCARD;
  1541.             drInfo      : DrawInfo;
  1542.             (* this parameters only valid in DRAWFRAME *)
  1543.             dimensions  : DimensionRec;
  1544.           END;
  1545.  
  1546. (* IM_ERASE, IM_ERASEFRAME      *)
  1547. (* NOTE: This is a subset of impDraw    *)
  1548.   ImpErase      = RECORD
  1549.             methodId    : LONGCARD;
  1550.             rPort       : RastPort;
  1551.             offset      : Point;
  1552.             (* this parameters only valid in ERASEFRAME *)
  1553.             dimensions  : DimensionRec;
  1554.           END;
  1555.  
  1556.   ImpHitTest    = RECORD
  1557.             methodId    : LONGCARD;
  1558.             point       : Point;
  1559.             (* this parameters only valid in HITFRAME *)
  1560.             dimensions  : DimensionRec;
  1561.           END;
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567. (* ------------------ Procedures ----------------------- *)
  1568.  
  1569.  
  1570. TYPE
  1571.   IntuitionBasePtr  = POINTER TO IntuitionBaseType;
  1572.   IntuitionBaseType = RECORD OF Library
  1573.             viewLord      : View;
  1574.             activeWindow  : WindowPtr;
  1575.             activeScreen  : ScreenPtr;
  1576.             firstScreen   : ScreenPtr;
  1577.             flags         : LONGSET;
  1578.             mousey        : INTEGER;
  1579.             mousex        : INTEGER;
  1580.             seconds       : LONGCARD;
  1581.             micros        : LONGCARD;
  1582.               END;
  1583.  
  1584.  
  1585.  
  1586.  
  1587. VAR
  1588.   IntuitionBase : IntuitionBasePtr;
  1589.  
  1590. LIBRARY IntuitionBase BY -30
  1591.   PROCEDURE OpenIntuition();
  1592.  
  1593. LIBRARY IntuitionBase BY -36
  1594.   PROCEDURE Intuition( iEvent IN A0: InputEventPtr );
  1595.  
  1596. LIBRARY IntuitionBase BY -42
  1597.   PROCEDURE AddGadget( window   IN A0: WindowPtr;
  1598.                gadget   IN A1: GadgetPtr;
  1599.                position IN D0: LONGCARD ): LONGCARD;
  1600.  
  1601. LIBRARY IntuitionBase BY -48
  1602.   PROCEDURE ClearDMRequest( window IN A0: WindowPtr ): LONGBOOL;
  1603.  
  1604. LIBRARY IntuitionBase BY -54
  1605.   PROCEDURE ClearMenuStrip( window IN A0: WindowPtr );
  1606.  
  1607. LIBRARY IntuitionBase BY -60
  1608.   PROCEDURE ClearPointer( window IN A0: WindowPtr );
  1609.  
  1610. LIBRARY IntuitionBase BY -66
  1611.   PROCEDURE CloseScreen( screen IN A0: ScreenPtr ): LONGBOOL;
  1612.  
  1613. LIBRARY IntuitionBase BY -72
  1614.   PROCEDURE CloseWindow( window IN A0: WindowPtr );
  1615.  
  1616.  
  1617. LIBRARY IntuitionBase BY -78
  1618.   PROCEDURE CloseWorkbench(): LONGBOOL;
  1619.  
  1620. LIBRARY IntuitionBase BY -78
  1621.   PROCEDURE CloseWorkBench(): LONGBOOL;
  1622.  
  1623. LIBRARY IntuitionBase BY -84
  1624.   PROCEDURE CurrentTime( VAR seconds IN A0: LONGCARD;
  1625.              VAR micros  IN A1: LONGCARD );
  1626.  
  1627. LIBRARY IntuitionBase BY -90
  1628.   PROCEDURE DisplayAlert(     alertNumber IN D0: LONGCARD;
  1629.               REF string      IN A0: STRING;
  1630.                   height      IN D1: LONGINT ): LONGBOOL;
  1631.  
  1632. LIBRARY IntuitionBase BY -96
  1633.   PROCEDURE DisplayBeep( screen IN A0: ScreenPtr );
  1634.  
  1635. LIBRARY IntuitionBase BY -102
  1636.   PROCEDURE DoubleClick( sSeconds IN D0 : LONGCARD;
  1637.              sMicros  IN D1 : LONGCARD;
  1638.              cSeconds IN D2 : LONGCARD;
  1639.              cMicros  IN D3 : LONGCARD ): LONGBOOL;
  1640.  
  1641. LIBRARY IntuitionBase BY -108
  1642.   PROCEDURE DrawBorder( rp         IN A0: RastPortPtr;
  1643.             border     IN A1: BorderPtr;
  1644.             leftOffset IN D0: LONGINT;
  1645.             topOffset  IN D1: LONGINT );
  1646.  
  1647. LIBRARY IntuitionBase BY -114
  1648.   PROCEDURE DrawImage( rp         IN A0: RastPortPtr;
  1649.                image      IN A1: ImagePtr;
  1650.                leftOffset IN D0: LONGINT;
  1651.                topOffset  IN D1: LONGINT );
  1652.  
  1653. LIBRARY IntuitionBase BY -120
  1654.   PROCEDURE EndRequest( requester IN A0: RequesterPtr;
  1655.             window    IN A1: WindowPtr );
  1656.  
  1657. LIBRARY IntuitionBase BY -126
  1658.   PROCEDURE GetDefPrefs( preferences IN A0: PreferencesPtr;
  1659.              size        IN D0: LONGINT ): PreferencesPtr;
  1660.  
  1661. LIBRARY IntuitionBase BY -132
  1662.   PROCEDURE GetPrefs( preferences IN A0: PreferencesPtr;
  1663.               size        IN D0: LONGINT ): PreferencesPtr;
  1664.  
  1665. LIBRARY IntuitionBase BY -138
  1666.   PROCEDURE InitRequester( requester IN A0: RequesterPtr );
  1667.  
  1668. LIBRARY IntuitionBase BY -144
  1669.   PROCEDURE ItemAddress( menuStrip  IN A0: MenuPtr;
  1670.              menuNumber IN D0: LONGCARD ): MenuItemPtr;
  1671.  
  1672. LIBRARY IntuitionBase BY -150
  1673.   PROCEDURE ModifyIDCMP( window IN A0: WindowPtr;
  1674.              flags  IN D0: IDCMPFlagSet ): LONGBOOL;
  1675.  
  1676. LIBRARY IntuitionBase BY -156
  1677.   PROCEDURE ModifyProp( gadget    IN A0: GadgetPtr;
  1678.             window    IN A1: WindowPtr;
  1679.             requester IN A2: RequesterPtr;
  1680.             flags     IN D0: LONGCARD;
  1681.             horizPot  IN D1: LONGCARD;
  1682.             vertPot   IN D2: LONGCARD;
  1683.             horizBody IN D3: LONGCARD;
  1684.             vertBody  IN D4: LONGCARD );
  1685.  
  1686. LIBRARY IntuitionBase BY -162
  1687.   PROCEDURE MoveScreen( screen IN A0: ScreenPtr;
  1688.             dx     IN D0: LONGINT;
  1689.             dy     IN D1: LONGINT );
  1690.  
  1691. LIBRARY IntuitionBase BY -168
  1692.   PROCEDURE MoveWindow( window IN A0: WindowPtr;
  1693.             dx     IN D0: LONGINT;
  1694.             dy     IN D1: LONGINT );
  1695.  
  1696. LIBRARY IntuitionBase BY -174
  1697.   PROCEDURE OffGadget( gadget    IN A0: GadgetPtr;
  1698.                window    IN A1: WindowPtr;
  1699.                requester IN A2: RequesterPtr );
  1700.  
  1701. LIBRARY IntuitionBase BY -180
  1702.   PROCEDURE OffMenu( window     IN A0: WindowPtr;
  1703.              menuNumber IN D0: LONGCARD );
  1704.  
  1705. LIBRARY IntuitionBase BY -186
  1706.   PROCEDURE OnGadget( gadget    IN A0: GadgetPtr;
  1707.               window    IN A1: WindowPtr;
  1708.               requester IN A2: RequesterPtr );
  1709.  
  1710. LIBRARY IntuitionBase BY -192
  1711.   PROCEDURE OnMenu( window     IN A0: WindowPtr;
  1712.             menuNumber IN D0: LONGCARD );
  1713.  
  1714. LIBRARY IntuitionBase BY -198
  1715.   PROCEDURE OpenScreen( REF newScreen IN A0: NewScreen ): ScreenPtr;
  1716.  
  1717. LIBRARY IntuitionBase BY -204
  1718.   PROCEDURE OpenWindow( REF newWindow IN A0: NewWindow ): WindowPtr;
  1719.  
  1720. LIBRARY IntuitionBase BY -210
  1721.   PROCEDURE OpenWorkbench(): LONGCARD;
  1722.  
  1723. LIBRARY IntuitionBase BY -210
  1724.   PROCEDURE OpenWorkBench(): LONGCARD;
  1725.  
  1726. LIBRARY IntuitionBase BY -216
  1727.   PROCEDURE PrintIText( rp    IN A0: RastPortPtr;
  1728.             iText IN A1: IntuiTextPtr;
  1729.             left  IN D0: LONGINT;
  1730.             top   IN D1: LONGINT );
  1731.  
  1732. LIBRARY IntuitionBase BY -222
  1733.   PROCEDURE RefreshGadgets( gadgets   IN A0: GadgetPtr;
  1734.                 window    IN A1: WindowPtr;
  1735.                 requester IN A2: RequesterPtr );
  1736.  
  1737. LIBRARY IntuitionBase BY -228
  1738.   PROCEDURE RemoveGadget( window IN A0: WindowPtr;
  1739.               gadget IN A1: GadgetPtr ): LONGCARD;
  1740.  
  1741. LIBRARY IntuitionBase BY -234
  1742.   PROCEDURE ReportMouse( flag   IN D0: LONGBOOL;
  1743.              window IN A0: WindowPtr );
  1744.  
  1745. LIBRARY IntuitionBase BY -240
  1746.   PROCEDURE Request( requester IN A0: RequesterPtr;
  1747.              window    IN A1: WindowPtr ): LONGBOOL;
  1748.  
  1749. LIBRARY IntuitionBase BY -246
  1750.   PROCEDURE ScreenToBack( screen IN A0: ScreenPtr );
  1751.  
  1752. LIBRARY IntuitionBase BY -252
  1753.   PROCEDURE ScreenToFront( screen IN A0: ScreenPtr );
  1754.  
  1755. LIBRARY IntuitionBase BY -258
  1756.   PROCEDURE SetDMRequest( window    IN A0: WindowPtr;
  1757.               requester IN A1: RequesterPtr ): LONGBOOL;
  1758.  
  1759. LIBRARY IntuitionBase BY -264
  1760.   PROCEDURE SetMenuStrip( window IN A0: WindowPtr;
  1761.               menu   IN A1: MenuPtr ): LONGBOOL;
  1762.  
  1763. LIBRARY IntuitionBase BY -270
  1764.   PROCEDURE SetPointer( window  IN A0: WindowPtr;
  1765.             pointer IN A1: ANYPTR;
  1766.             height  IN D0: LONGINT;
  1767.             width   IN D1: LONGINT;
  1768.             xOffset IN D2: LONGINT;
  1769.             yOffset IN D3: LONGINT );
  1770.  
  1771. LIBRARY IntuitionBase BY -276
  1772.   PROCEDURE SetWindowTitles( window      IN A0: WindowPtr;
  1773.                  windowTitle IN A1: SysStringPtr;
  1774.                  screenTitle IN A2: SysStringPtr );
  1775.  
  1776. LIBRARY IntuitionBase BY -282
  1777.   PROCEDURE ShowTitle( screen IN A0: ScreenPtr;
  1778.                showIt IN D0: LONGBOOL );
  1779.  
  1780. LIBRARY IntuitionBase BY -288
  1781.   PROCEDURE SizeWindow( window IN A0: WindowPtr;
  1782.             dx     IN D0: LONGINT;
  1783.             dy     IN D1: LONGINT );
  1784.  
  1785. LIBRARY IntuitionBase BY -294
  1786.   PROCEDURE ViewAddress(): ViewPtr;
  1787.  
  1788. LIBRARY IntuitionBase BY -300
  1789.   PROCEDURE ViewPortAddress( window IN A0: WindowPtr ): ViewPortPtr;
  1790.  
  1791. LIBRARY IntuitionBase BY -306
  1792.   PROCEDURE WindowToBack( window IN A0: WindowPtr );
  1793.  
  1794. LIBRARY IntuitionBase BY -312
  1795.   PROCEDURE WindowToFront( window IN A0: WindowPtr );
  1796.  
  1797. LIBRARY IntuitionBase BY -318
  1798.   PROCEDURE WindowLimits( window    IN A0: WindowPtr;
  1799.               widthMin  IN D0: LONGINT;
  1800.               heightMin IN D1: LONGINT;
  1801.               widthMax  IN D2: LONGCARD;
  1802.               heightMax IN D3: LONGCARD ): LONGBOOL;
  1803.  
  1804. LIBRARY IntuitionBase BY -324
  1805.   PROCEDURE SetPrefs( preferences IN A0: PreferencesPtr;
  1806.               size        IN D0: LONGINT;
  1807.               inform      IN D1: LONGBOOL ): PreferencesPtr;
  1808.  
  1809. LIBRARY IntuitionBase BY -330
  1810.   PROCEDURE IntuiTextLength( iText IN A0: IntuiTextPtr ): LONGINT;
  1811.  
  1812. LIBRARY IntuitionBase BY -336
  1813.   PROCEDURE WBenchToBack(): LONGBOOL;
  1814.  
  1815. LIBRARY IntuitionBase BY -342
  1816.   PROCEDURE WBenchToFront(): LONGBOOL;
  1817.  
  1818. LIBRARY IntuitionBase BY -348
  1819.   PROCEDURE AutoRequest( window  IN A0: WindowPtr;
  1820.              body    IN A1: IntuiTextPtr;
  1821.              posText IN A2: IntuiTextPtr;
  1822.              negText IN A3: IntuiTextPtr;
  1823.              pFlag   IN D0: LONGCARD;
  1824.              nFlag   IN D1: LONGCARD;
  1825.              width   IN D2: LONGINT;
  1826.              height  IN D3: LONGINT ): LONGBOOL;
  1827.  
  1828. LIBRARY IntuitionBase BY -354
  1829.   PROCEDURE BeginRefresh( window IN A0: WindowPtr );
  1830.  
  1831. LIBRARY IntuitionBase BY -360
  1832.   PROCEDURE BuildSysRequest( window  IN A0: WindowPtr;
  1833.                  body    IN A1: IntuiTextPtr;
  1834.                  posText IN A2: IntuiTextPtr;
  1835.                  negText IN A3: IntuiTextPtr;
  1836.                  flags   IN D0: LONGCARD;
  1837.                  width   IN D1: LONGINT;
  1838.                  height  IN D2: LONGINT ): WindowPtr;
  1839.  
  1840. LIBRARY IntuitionBase BY -366
  1841.   PROCEDURE EndRefresh( window   IN A0: WindowPtr;
  1842.             complete IN D0: LONGBOOL );
  1843.  
  1844. LIBRARY IntuitionBase BY -372
  1845.   PROCEDURE FreeSysRequest( window IN A0: WindowPtr );
  1846.  
  1847. LIBRARY IntuitionBase BY -378
  1848.   PROCEDURE MakeScreen( screen IN A0: ScreenPtr );
  1849.  
  1850. LIBRARY IntuitionBase BY -384
  1851.   PROCEDURE RemakeDisplay();
  1852.  
  1853. LIBRARY IntuitionBase BY -390
  1854.   PROCEDURE RethinkDisplay();
  1855.  
  1856. LIBRARY IntuitionBase BY -396
  1857.   PROCEDURE AllocRemember( VAR rememberKey IN A0: RememberPtr;
  1858.                    size        IN D0: LONGCARD;
  1859.                    flags       IN D1: LONGCARD ): ANYPTR;
  1860.  
  1861. LIBRARY IntuitionBase BY -408
  1862.   PROCEDURE FreeRemember( VAR rememberKey  IN A0: RememberPtr;
  1863.                   reallyForget IN D0: LONGBOOL );
  1864.  
  1865. LIBRARY IntuitionBase BY -414
  1866.   PROCEDURE LockIBase( dontknow IN D0: LONGCARD ): LONGCARD;
  1867.  
  1868. LIBRARY IntuitionBase BY -420
  1869.   PROCEDURE UnlockIBase( ibLock IN A0: LONGCARD );
  1870.  
  1871. LIBRARY IntuitionBase BY -426
  1872.   PROCEDURE GetScreenData( buffer IN A0: ANYPTR;
  1873.                size   IN D0: LONGCARD;
  1874.                type   IN D1: LONGCARD;
  1875.                screen IN A1: ScreenPtr ): LONGBOOL;
  1876.  
  1877. LIBRARY IntuitionBase BY -432
  1878.   PROCEDURE RefreshGList( gadgets   IN A0: GadgetPtr;
  1879.               window    IN A1: WindowPtr;
  1880.               requester IN A2: RequesterPtr;
  1881.               numGad    IN D0: LONGINT );
  1882.  
  1883. LIBRARY IntuitionBase BY -438
  1884.   PROCEDURE AddGList( window    IN A0: WindowPtr;
  1885.               gadget    IN A1: GadgetPtr;
  1886.               position  IN D0: LONGCARD;
  1887.               numGad    IN D1: LONGINT;
  1888.               requester IN A2: RequesterPtr ): LONGCARD;
  1889.  
  1890. LIBRARY IntuitionBase BY -444
  1891.   PROCEDURE RemoveGList( window IN A0: WindowPtr;
  1892.              gadget IN A1: GadgetPtr;
  1893.              numGad IN D0: LONGINT ): LONGCARD;
  1894.  
  1895. LIBRARY IntuitionBase BY -450
  1896.   PROCEDURE ActivateWindow( window IN A0: WindowPtr ): LONGINT;
  1897.  
  1898. LIBRARY IntuitionBase BY -456
  1899.   PROCEDURE RefreshWindowFrame( window IN A0: WindowPtr );
  1900.  
  1901. LIBRARY IntuitionBase BY -462
  1902.   PROCEDURE ActivateGadget( gadgets   IN A0: GadgetPtr;
  1903.                 window    IN A1: WindowPtr;
  1904.                 requester IN A2: RequesterPtr ): LONGBOOL;
  1905.  
  1906. LIBRARY IntuitionBase BY -468
  1907.   PROCEDURE NewModifyProp( gadget    IN A0: GadgetPtr;
  1908.                window    IN A1: WindowPtr;
  1909.                requester IN A2: RequesterPtr;
  1910.                flags     IN D0: LONGCARD;
  1911.                horizPot  IN D1: LONGCARD;
  1912.                vertPot   IN D2: LONGCARD;
  1913.                horizBody IN D3: LONGCARD;
  1914.                vertBody  IN D4: LONGCARD;
  1915.                numGad    IN D5: LONGINT );
  1916.  
  1917. LIBRARY IntuitionBase BY -474
  1918.   PROCEDURE QueryOverscan( displayID IN A0: LONGCARD;
  1919.                rect      IN A1: RectanglePtr;
  1920.                oScanType IN D0: LONGINT ): LONGINT;
  1921.  
  1922. LIBRARY IntuitionBase BY -480
  1923.   PROCEDURE MoveWindowInFrontOf( window       IN A0: WindowPtr;
  1924.                  behindWindow IN A1: WindowPtr );
  1925.  
  1926. LIBRARY IntuitionBase BY -486
  1927.   PROCEDURE ChangeWindowBox( window IN A0: WindowPtr;
  1928.                  left   IN D0: LONGINT;
  1929.                  top    IN D1: LONGINT;
  1930.                  width  IN D2: LONGINT;
  1931.                  height IN D3: LONGINT );
  1932.  
  1933. LIBRARY IntuitionBase BY -492
  1934.   PROCEDURE SetEditHook( hook IN A0: HookPtr ): HookPtr;
  1935.  
  1936. LIBRARY IntuitionBase BY -498
  1937.   PROCEDURE SetMouseQueue( window      IN A0: WindowPtr;
  1938.                queueLength IN D0: LONGCARD ): LONGINT;
  1939.  
  1940. LIBRARY IntuitionBase BY -504
  1941.   PROCEDURE ZipWindow( window IN A0: WindowPtr );
  1942.  
  1943. LIBRARY IntuitionBase BY -510
  1944.   PROCEDURE LockPubScreen( name IN A0: SysStringPtr ): ScreenPtr;
  1945.  
  1946. LIBRARY IntuitionBase BY -516
  1947.   PROCEDURE UnlockPubScreen( name   IN A0: SysStringPtr;
  1948.                  screen IN A1: ScreenPtr );
  1949.  
  1950. LIBRARY IntuitionBase BY -522
  1951.   PROCEDURE LockPubScreenList(): ListPtr;
  1952.  
  1953. LIBRARY IntuitionBase BY -528
  1954.   PROCEDURE UnlockPubScreenList();
  1955.  
  1956. LIBRARY IntuitionBase BY -534
  1957.   PROCEDURE NextPubScreen( screen  IN A0: ScreenPtr;
  1958.                namebuf IN A1: SysStringPtr ): SysStringPtr;
  1959.  
  1960. LIBRARY IntuitionBase BY -540
  1961.   PROCEDURE SetDefaultPubScreen( name IN A0: SysStringPtr );
  1962.  
  1963. LIBRARY IntuitionBase BY -546
  1964.   PROCEDURE SetPubScreenModes( modes IN D0: LONGCARD ): LONGCARD;
  1965.  
  1966. LIBRARY IntuitionBase BY -552
  1967.   PROCEDURE PubScreenStatus( screen      IN A0: ScreenPtr;
  1968.                  statusFlags IN D0: LONGCARD ): LONGCARD;
  1969.  
  1970. LIBRARY IntuitionBase BY -558
  1971.   PROCEDURE ObtainGIRPort( gInfo IN A0: GadgetInfoPtr ): RastPortPtr;
  1972.  
  1973. LIBRARY IntuitionBase BY -564
  1974.   PROCEDURE ReleaseGIRPort( rp IN A0: RastPortPtr );
  1975.  
  1976. LIBRARY IntuitionBase BY -570
  1977.   PROCEDURE GadgetMouse( gadget     IN A0: GadgetPtr;
  1978.              gInfo      IN A1: GadgetInfoPtr;
  1979.              mousePoint IN A2: Point );
  1980.  
  1981.  
  1982. (* private *)
  1983. (*******
  1984. LIBRARY IntuitionBase BY -576
  1985.   PROCEDURE SetIPrefs( ptr  IN A0: PreferencesPtr;
  1986.                size IN D0: LONGINT;
  1987.                type IN D1: LONGBOOL ): PreferencesPtr;
  1988. ****)
  1989.  
  1990. (* public *)
  1991.  
  1992. LIBRARY IntuitionBase BY -582
  1993.   PROCEDURE GetDefaultPubScreen( nameBuffer IN A0: SysStringPtr );
  1994.  
  1995. LIBRARY IntuitionBase BY -588
  1996.   PROCEDURE EasyRequest( window     IN A0: WindowPtr;
  1997.              easyStruct IN A1: EasyStructPtr;
  1998.              idcmpPtr   IN A2: IDCMPFlagSetPtr;
  1999.              args       IN A3: LIST OF LONGINT ): LONGINT;
  2000.  
  2001. LIBRARY IntuitionBase BY -594
  2002.   PROCEDURE BuildEasyRequestArgs( window     IN A0: WindowPtr;
  2003.                   easyStruct IN A1: EasyStructPtr;
  2004.                   idcmp      IN D0: IDCMPFlagSet;
  2005.                   args       IN A3: ANYPTR ): WindowPtr;
  2006.  
  2007. LIBRARY IntuitionBase BY -594
  2008.   PROCEDURE BuildEasyRequest( window     IN A0: WindowPtr;
  2009.                   easyStruct IN A1: EasyStructPtr;
  2010.                   idcmp      IN D0: IDCMPFlagSet;
  2011.                   args       IN A3: LIST OF LONGINT):WindowPtr;
  2012.  
  2013. LIBRARY IntuitionBase BY -600
  2014.   PROCEDURE SysReqHandler( window    IN A0: WindowPtr;
  2015.                idcmpPtr  IN A1: IDCMPFlagSetPtr;
  2016.                waitInput IN D0: LONGBOOL ): LONGINT;
  2017.  
  2018. LIBRARY IntuitionBase BY -606
  2019.   PROCEDURE OpenWindowTags( newWindow IN A0: NewWindowPtr;
  2020.                 tagList   IN A1: LIST OF WindowTags):WindowPtr;
  2021.  
  2022. LIBRARY IntuitionBase BY -606
  2023.   PROCEDURE OpenWindowTagList(newWindow IN A0: NewWindowPtr;
  2024.                   tagList   IN A1: WindowTagListPtr):WindowPtr;
  2025.  
  2026. LIBRARY IntuitionBase BY -612
  2027.   PROCEDURE OpenScreenTags( newScreen IN A0: NewScreenPtr;
  2028.                 tagList   IN A1: LIST OF ScreenTags):ScreenPtr;
  2029.  
  2030. LIBRARY IntuitionBase BY -612
  2031.   PROCEDURE OpenScreenTagList(newScreen IN A0: NewScreenPtr;
  2032.                   tagList   IN A1: ScreenTagListPtr):ScreenPtr;
  2033.  
  2034. LIBRARY IntuitionBase BY -618
  2035.   PROCEDURE DrawImageState( rp         IN A0: RastPortPtr;
  2036.                 image      IN A1: ImagePtr;
  2037.                 leftOffset IN D0: LONGINT;
  2038.                 topOffset  IN D1: LONGINT;
  2039.                 state      IN D2: LONGCARD;
  2040.                 drawInfo   IN A2: DrawInfoPtr );
  2041.  
  2042. LIBRARY IntuitionBase BY -624
  2043.   PROCEDURE PointInImage( point IN D0: Point;
  2044.               image IN A0: ImagePtr ): LONGBOOL;
  2045.  
  2046. LIBRARY IntuitionBase BY -630
  2047.   PROCEDURE EraseImage( rp         IN A0: RastPortPtr;
  2048.             image      IN A1: ImagePtr;
  2049.             leftOffset IN D0: LONGINT;
  2050.             topOffset  IN D1: LONGINT );
  2051.  
  2052. LIBRARY IntuitionBase BY -636
  2053.   PROCEDURE NewObjectA( class   IN A0: IClassPtr;
  2054.             classID IN A1: ClassId;  (* SysStringPtr *)
  2055.               tagList IN A2: TagArrayPtr ): ANYPTR;
  2056.  
  2057. LIBRARY IntuitionBase BY -642
  2058.   PROCEDURE DisposeObject( object IN A0: ANYPTR );
  2059.  
  2060. LIBRARY IntuitionBase BY -648
  2061.   PROCEDURE SetAttrs( object  IN A0: ANYPTR;
  2062.               tagList IN A1: LIST OF StdTags ): LONGCARD;
  2063.  
  2064. LIBRARY IntuitionBase BY -648
  2065.   PROCEDURE SetAttrsA( object  IN A0: ANYPTR;
  2066.                tagList IN A1: TagArrayPtr ): LONGCARD;
  2067.  
  2068. LIBRARY IntuitionBase BY -654
  2069.   PROCEDURE GetAttr( attrID     IN D0: LONGCARD;
  2070.              object     IN A0: ANYPTR;
  2071.              storagePtr IN A1: ANYPTR ): LONGCARD;      (* ? *)
  2072.  
  2073. LIBRARY IntuitionBase BY -660
  2074.   PROCEDURE SetGadgetAttrs( gadget    IN A0: GadgetPtr;
  2075.                 window    IN A1: WindowPtr;
  2076.                 requester IN A2: RequesterPtr;
  2077.                 tagList   IN A3: LIST OF GadgetTags):LONGCARD;
  2078.  
  2079. LIBRARY IntuitionBase BY -660
  2080.   PROCEDURE SetGadgetAttrsA( gadget    IN A0: GadgetPtr;
  2081.                  window    IN A1: WindowPtr;
  2082.                  requester IN A2: RequesterPtr;
  2083.                  tagList   IN A3: GadgetTagListPtr): LONGCARD;
  2084.  
  2085. LIBRARY IntuitionBase BY -666
  2086.   PROCEDURE NextObject( objectPtrPtr IN A0: ANYPTR ): ANYPTR;
  2087.  
  2088.  
  2089. |*****
  2090. |
  2091. | private
  2092. |
  2093. |LIBRARY IntuitionBase BY -672 PROCEDURE FindClass( classID IN A0: #);
  2094. |
  2095. |******
  2096.  
  2097.  
  2098. LIBRARY IntuitionBase BY -678
  2099.   PROCEDURE MakeClass( classID       IN A0: SysStringPtr;
  2100.                superClassID  IN A1: SysStringPtr;
  2101.                superClassPtr IN A2: IClassPtr;
  2102.                instanceSize  IN D0: LONGCARD;
  2103.                flags         IN D1: IClassFlagSet ): IClassPtr;
  2104.  
  2105. LIBRARY IntuitionBase BY -684
  2106.   PROCEDURE AddClass( class IN A0: IClassPtr );
  2107.  
  2108. LIBRARY IntuitionBase BY -690
  2109.   PROCEDURE GetScreenDrawInfo( screen IN A0: ScreenPtr ): DrawInfoPtr;
  2110.  
  2111. LIBRARY IntuitionBase BY -696
  2112.   PROCEDURE FreeScreenDrawInfo( screen   IN A0: ScreenPtr;
  2113.                 drawInfo IN A1: DrawInfoPtr );
  2114.  
  2115. LIBRARY IntuitionBase BY -702
  2116.   PROCEDURE ResetMenuStrip( window IN A0: WindowPtr;
  2117.                 menu   IN A1: MenuPtr ): LONGBOOL;
  2118.  
  2119. LIBRARY IntuitionBase BY -708
  2120.   PROCEDURE RemoveClass( classPtr IN A0: IClassPtr );
  2121.  
  2122. LIBRARY IntuitionBase BY -714
  2123.   PROCEDURE FreeClass( classPtr IN A0: IClassPtr ): LONGBOOL;
  2124.  
  2125.  
  2126. (* private *)
  2127.  
  2128. LIBRARY IntuitionBase BY -720
  2129.   PROCEDURE LockPubClass();
  2130.  
  2131. LIBRARY IntuitionBase BY -726
  2132.   PROCEDURE UnlockPubClass();
  2133.  
  2134.  
  2135.  
  2136.  
  2137. GROUP
  2138.   WindowGrp  =
  2139.        (* I *)    IDCMPGrp,
  2140.        (* T *)
  2141.           ExtNewWindow,       ExtNewWindowPtr,    NewWindow,
  2142.           NewWindowPtr,       RastPort ,          RastPortPtr,
  2143.           Window,             WindowFlags,        WindowFlagSet,
  2144.           WindowPtr,
  2145.        (* C *)    otherRefresh ,      refreshBits,
  2146.        (* P *)    ActivateWindow,     CloseWindow,        ClearMenuStrip,
  2147.           ModifyIDCMP,        MoveWindow,         OpenWindow,
  2148.           OpenWindowTagList,  OpenWindowTags,
  2149.           RefreshWindowFrame,
  2150.           ResetMenuStrip,     SetMenuStrip,       SetWindowTitles,
  2151.           SizeWindow,         WindowLimits,       WindowToBack,
  2152.           WindowToFront;
  2153.  
  2154.  
  2155.   GadgetProcGrp =
  2156.        (* P *)    ActivateGadget,     AddGadget,          AddGList,
  2157.           ModifyProp,         NewModifyProp,      OffGadget,
  2158.           OnGadget,           RefreshGadgets,     RefreshGList,
  2159.           RemoveGadget,       RemoveGList;
  2160.  
  2161.   ImageGrp    =   ImagePtr, Image;
  2162.  
  2163.   GadgetGrp   =
  2164.       (* I *) GadgetProcGrp,
  2165.           GadgetPtr,          PropInfoPtr,      StringInfoPtr,
  2166.           GadgetFlags,        GadgetFlagSet,    ActivationFlags,
  2167.           ActivationFlagSet,  gadgHighbits,     gadgHNone,
  2168.           gadgHComp,          GadgetType,       GadgInfoPtr,
  2169.           GadgInfo,           Gadget,           boolMask,
  2170.           BoolInfo,           PropInfoFlags,    PropInfoFlagSet,
  2171.           knobVmin,           knobHmin,         maxBody,
  2172.           maxPot,             PropInfo,         BITSET,
  2173.           StringInfo,         BorderGrp,        ImageGrp,
  2174.           IntuiTextGrp;
  2175.  
  2176.   MenuGrp  =
  2177.       (* I *) BITSET,             LONGSET,
  2178.       (* T *) Menu,               MenuItem,           MenuItemFlags,
  2179.           MenuItemFlagSet,    MenuItemPtr,        MenuPtr,
  2180.       (* C *) checkWidth,         commWidth,          highNone,
  2181.           lowCheckWidth,      lowCommWidth,       menuEnabled,
  2182.           miDrawn,
  2183.       (* P *) ClearMenuStrip,     ItemAddress,        OffMenu,
  2184.           OnMenu;
  2185.  
  2186.  
  2187.   ReqGrp        =
  2188.       (* P *) AutoRequest,        BuildSysRequest,    ClearDMRequest,
  2189.           DisplayAlert,       EndRequest,         FreeSysRequest,
  2190.           InitRequester,      Request,            SetDMRequest,
  2191.           Requester,          RequesterFlags,
  2192.           RequesterFlagSet,   RequesterPtr,
  2193.       (* C *) deadendAlert,       recoveryAlert;
  2194.  
  2195.  
  2196.   ScreenGrp     =
  2197.       (* I *) ViewModeSet,        ViewModes,
  2198.       (* T *) BitMap,             BitMapPtr,          ExtNewScreen,
  2199.           ExtNewScreenPtr,    NewScreen,          NewScreenPtr,
  2200.           RastPortPtr,        Screen,             ScreenFlags,
  2201.           ScreenFlagSet,      ScreenPtr,          ViewPortPtr,
  2202.       (* C *) stdScreenHeight,    customScreen,
  2203.       (* P *) CloseScreen,        CloseWorkbench,     CloseWorkBench,
  2204.           DisplayBeep,        GetScreenData,      LockPubScreen,
  2205.           LockPubScreenList,
  2206.           MakeScreen,         NextPubScreen,
  2207.           MoveScreen,         OpenScreen,
  2208.           OpenScreenTagList,
  2209.           OpenScreenTags,     OpenWorkbench,
  2210.           OpenWorkBench,      ScreenToBack,       ScreenToFront,
  2211.           ShowTitle,          UnlockPubScreen,
  2212.           UnlockPubScreenList,
  2213.           WBenchToBack,
  2214.           WBenchToFront;
  2215.  
  2216.   GfxGrp        =
  2217.       (* I *) IntuiTextGrp,       BorderGrp,          ImageGrp,
  2218.       (* P *) ClearPointer,       DrawBorder,         DrawImage,
  2219.           IntuiTextLength,    PrintIText,         SetPointer;
  2220.  
  2221.  
  2222.   MemGrp        =
  2223.       (* I *) Exec.MemReqSet,     Exec.MemReqs,
  2224.       (* T *) Remember,           RememberPtr,
  2225.       (* P *) AllocRemember,      FreeRemember;
  2226.  
  2227.  
  2228.   RefreshGrp    =
  2229.       (* P *) BeginRefresh,       EndRefresh,         RemakeDisplay,
  2230.           RethinkDisplay;
  2231.  
  2232.  
  2233.   TimeGrp       = CurrentTime,        DoubleClick;
  2234.  
  2235.   PrefGrp     = GetDefPrefs,        GetPrefs,           SetPrefs,
  2236.         filenameSize,       pointerSize,        topazEighty,
  2237.         topazSixty,         PrinterPort,        CustomName,
  2238.         AlphaP101,          Brother15XL,        CbmMps1000,
  2239.         Diab630,            DiabAdvD25,         DiabC150,
  2240.         Epson,              EpsonJX80,          Okimate20,
  2241.         QumeLP20,           HpLaserjet,         HpLaserjetPlus,
  2242.         SerParShk,          SerParShkSet,       Preferences,
  2243.         baud110,            baud300,            baud1200,
  2244.         baud2400,           baud4800,           baud9600,
  2245.         baud19200,          baudMidi,           pica,
  2246.         elite,              fine,               draft,
  2247.         letter,             sixLPI,             eightLPI,
  2248.         imagePositive,      imageNegative,      aspectHoriz,
  2249.         aspectVert,         shadeBW,            shadeGreyscale,
  2250.         shadeColor,         usLetter,           usLegal,
  2251.         nTractor,           wTractor,           custom,
  2252.         PaperType,          readBits,
  2253.         writeBits,          stopBits,           bufSizeBits,
  2254.         buf512,             buf1024,            buf2048,
  2255.         buf4096,            buf8000,            buf16000;
  2256.  
  2257.   ViewGrp     = ViewAddress, ViewPortAddress;
  2258.  
  2259.   LockGrp     = LockIBase, UnlockIBase;
  2260.  
  2261.   IntuiIOGrp  = ReportMouse,  IDCMPGrp, Exec.MsgGrp,  Input.EventGrp;
  2262.  
  2263.   RecordGrp   =   BoolInfo,           Border,             BorderList,
  2264.           ColorSpec,          Coordinates,        DimensionRec,
  2265.           DrawInfo,           EasyStruct,         ExtNewScreen,
  2266.           ExtNewWindow,       FatIntuiMessage,    Gadget,
  2267.           GadgetInfo,         GadgetInfo,         GadgInfo,
  2268.           GoInactive,         GPInput,
  2269.           HitTest,            IBox,               IClass,
  2270.           Image,              ImpDraw,            ImpErase,
  2271.           ImpFrameBox,        ImpHitTest,         IntuiMessage,
  2272.           IntuiText,          IntuitionBaseType,  Menu,
  2273.           MenuItem,           MsgRoot,            NewScreen,
  2274.           NewWindow,          Object,             OpAddTail,
  2275.           OpGet,              OpMember,           OpSet,
  2276.           OpUpdate,           PenPair,            PGX,
  2277.           Point,              Preferences,        PropInfo,
  2278.           PubScreenNode,      Remember,           Render,
  2279.           Requester,          Screen,             StringInfo,
  2280.           Window;
  2281.  
  2282.  
  2283.   All           = IntuiTextGrp,       BorderGrp,          ImageGrp,
  2284.           GadgetGrp,          IDCMPGrp,           WindowGrp,
  2285.           GadgetProcGrp,      MemGrp,             GfxGrp,
  2286.           ReqGrp,             MenuGrp,            ReqGrp,
  2287.           GadgetProcGrp,      ScreenGrp,
  2288.           RefreshGrp,         TimeGrp,            PrefGrp,
  2289.           ViewGrp,            LockGrp,            IntuiIOGrp,
  2290.           DisplayMode,        dMountCode,         eventMax,
  2291.           Res,                resCount,           Gadgets,
  2292.           gadgetCount,        ILocks,             numILocks,
  2293.           FatIntuiMessage,    IBox,               Point,
  2294.           PenPair,
  2295.           GadgetInfo,         numIEvents,         IntuitionBase,
  2296.           IntuitionBasePtr,   IntuitionBaseType;
  2297.  
  2298.  
  2299. END Intuition.
  2300.  
  2301.  
  2302.  
  2303.