info-mac@uw-beaver (info-mac) (09/28/84)
From: Avadis.Tevanian@CMU-CS-SPICE I have run into an interesting "problem" with the Mac. Let's suppose you have a need for some type of graphic operation that is not supported by QuickDraw, and it won't suffice to replace the standard ROM routines with your own (perhaps you have different parameters). Or, just suppose that you are a hacker who wants to do his own graphics directly on the screen's bitmap. Anyway, the problem, as best I can figure, is that there are these 16 long words starting at address 0x85c (I think). These 16 long words contain the "data under cursor." I think this means that when the cursor is drawn on the screen, the bits it has overwritten are saved, and then restored when the cursor is removed. (Why don't the routines that send the screen bitmap out to the video display just merge in the cursor's bitmap when appropriate?) The problem: when you write into the bitmap at an address that is covered by the cursor, the new bits don't get put into the "data under cursor" long words. So, any graphics you do under the cursor disappear when the cursor is moved! A quick hack around this is to call HideCursor before the graphics operation, then ShowCursor when you are done. But, unless done carefully, you'll end up with a flickering cursor. Does anyone know if there is a "better" way to get around this problem? I guess the real question is, how does QuickDraw get around this problem? Avie PS: No flames about not using QuickDraw please.
info-mac@uw-beaver (info-mac) (11/07/84)
From: tektronix!hplabs!oliveb!ios!apple!johan@uw-beaver.arpa QuickDraw allways hides the cursor if it thinks that the drawing command might intersect with the cursor. A slight flicker can sometimes be noticed if you are drawing/redrawing the same area many times and move the cursor on top of the drawn object. _________________________Computare necesse est!______________________ Johan Strandberg Apple Computer Education Research Group [ERG] {mtxinu,dual,nsc,voder,idi,ios,sun}!apple!johan