DIRECTORY Imager, ImagerBasic, ImagerOps, JaMOps, JaMInternal, JaMFnsDefs, Rope USING [ROPE], ConvertUnsafe, Real, JaMImager; JaMIAISImpl: PROGRAM IMPORTS Imager, ImagerOps, JaMFnsDefs, JaMOps, ConvertUnsafe, Real, JaMImager = { JDrawImage: PROCEDURE [frame: JaMInternal.Frame] = { Draw: PROC [dc: Imager.Context] = { Imager.DrawImage[dc,image] }; str: STRING _ [100]; name: Rope.ROPE; image: ImagerBasic.ImageRef; JaMFnsDefs.PopString[str]; name _ ConvertUnsafe.ToRope[str]; image _ ImagerOps.NewAisImage[name]; JaMImager.Painter[Draw, frame]; }; JCopyScreen: PROCEDURE [frame: JaMInternal.Frame] = { Get: PROC RETURNS [CARDINAL] = { RETURN [Real.RoundC[MAX[JaMOps.PopReal[frame.opstk],0.0]]] }; y2: CARDINAL _ Get[]; x2: CARDINAL _ Get[]; y1: CARDINAL _ Get[]; x1: CARDINAL _ Get[]; Copy: PROC [dc: Imager.Context] = { ImagerOps.DrawBitmap[ self: dc, bitmap: ImagerOps.ScreenBitmap[], w: x2-x1, h: y2-y1, x: x1, y: y1, xorigin: (x1+x2)/2, yorigin: (y1+y2)/2 ] }; IF x1 > x2 THEN { temp: CARDINAL _ x1; x1 _ x2; x2 _ temp }; IF y1 > y2 THEN { temp: CARDINAL _ y1; y1 _ y2; y2 _ temp }; JaMImager.Painter[Copy, frame]; }; JaMOps.RegisterExplicit[JaMOps.defaultFrame,".drawimage"L,JDrawImage]; JaMOps.RegisterExplicit[JaMOps.defaultFrame,".copyscreen"L,JCopyScreen]; }... ´JaMIAISImpl.mesa Last changed by Bill Paxton, March 12, 1982 8:35 am Last changed by Doug Wyatt, September 13, 1982 1:21 pm Last Edited by: Stone, December 9, 1983 2:13 pm ʨ˜J˜Jšœ™Jšœ4™4Jšœ7™7Jšœ/™/J˜šÏk ˜ J˜J˜ J˜ J˜J˜ J˜ Jšœœœ˜J˜J˜J˜ J˜—Jšœ ˜šœ˜J˜ J˜ J˜J˜J˜J˜ J˜—šÏn œ œ˜4Jšžœœ7˜AJšœœ ˜Jšœ œ˜J˜J˜J˜!J˜$J˜J˜J˜—šž œ œ˜5šžœœœœ˜ Jšœœ&˜=—Jšœœ ˜Jšœœ ˜Jšœœ ˜Jšœœ ˜šžœœ˜#˜J˜ J˜!J˜ J˜ J˜J˜J˜˜J˜———Jšœ œ œ˜