home *** CD-ROM | disk | FTP | other *** search
Modula Implementation | 1993-11-22 | 1.6 KB | 61 lines |
- (* @B- @P- *)
- IMPLEMENTATION MODULE Intuition ;
-
- FROM SYSTEM IMPORT ADR, ADDRESS ;
- IMPORT M2Lib ;
-
- CONST
- SHIFT5 = 32 ;
- SHIFT11 = 2048 ;
-
- PROCEDURE CUSTOM_HOOK( gadget : GadgetPtr ) : ADDRESS ;
- BEGIN RETURN ADDRESS( gadget^.MutualExclude )
- END CUSTOM_HOOK ;
-
- PROCEDURE GADGET_BOX( g : GadgetPtr ) : IBoxPtr ;
- BEGIN RETURN ADR( g^.LeftEdge )
- END GADGET_BOX ;
-
- PROCEDURE IM_BOX( im : ImagePtr ) : IBoxPtr ;
- BEGIN RETURN ADR( im^.LeftEdge )
- END IM_BOX ;
-
- PROCEDURE IM_FGPEN( im : ImagePtr ) : SHORTCARD ;
- BEGIN RETURN im^.PlanePick
- END IM_FGPEN ;
-
- PROCEDURE IM_BGPEN( im : ImagePtr ) : SHORTCARD ;
- BEGIN RETURN im^.PlaneOnOff
- END IM_BGPEN ;
-
- PROCEDURE MENUNUM( n : CARDINAL ) : CARDINAL ;
- BEGIN RETURN CARDINAL( BITSET( n ) * BITSET( 01FH ) )
- END MENUNUM ;
-
- PROCEDURE ITEMNUM( n : CARDINAL ) : CARDINAL ;
- BEGIN RETURN CARDINAL( BITSET( n / SHIFT5 ) * BITSET( 0003FH ) )
- END ITEMNUM ;
-
- PROCEDURE SUBNUM( n : CARDINAL ) : CARDINAL ;
- BEGIN RETURN CARDINAL( BITSET( n / SHIFT11 ) * BITSET( 0001FH ) )
- END SUBNUM ;
-
- PROCEDURE SHIFTMENU( n : CARDINAL ) : CARDINAL ;
- BEGIN RETURN CARDINAL( BITSET( n ) * BITSET( 01FH ) )
- END SHIFTMENU ;
-
- PROCEDURE SHIFTITEM( n : CARDINAL ) : CARDINAL ;
- BEGIN RETURN CARDINAL( BITSET( n ) * BITSET( 03FH ) ) * SHIFT5
- END SHIFTITEM ;
-
- PROCEDURE SHIFTSUB( n : CARDINAL ) : CARDINAL ;
- BEGIN RETURN CARDINAL( BITSET( n ) * BITSET( 01FH ) ) * SHIFT11
- END SHIFTSUB ;
-
- PROCEDURE FULLMENUNUM( menu, item, sub : CARDINAL ) : CARDINAL ;
- BEGIN RETURN SHIFTMENU( menu ) + SHIFTITEM( item ) + SHIFTSUB( sub )
- END FULLMENUNUM ;
-
- BEGIN IntuitionBase := M2Lib.OpenLib( "intuition.library", VERSION )
- END Intuition.
-