[comp.sys.mac.hypercard] PICT compression; Screen refresh

bri@garnet.berkeley.edu (Brian Reilly) (09/19/90)

Is there an xcmd/xfcn that will take a pict resource and let me
create another resource of that pict scaled down to a specific size?
I want to display some color picts in HyperCard but all the pict display
xcmds I have seen will only resize without creating another pict, so
the screen refresh is very slow when a number of these picts have to
get updated and resized each time.  The 2.0 built-in picture xcmd would
be perfect if it scaled to fit a given rect rather than based on an
integer value.  But even it would be okay if there was a way to scale and save
the picts as new resources ahead of time so that I could control the
size of the reduced ones.

Also, on what basis/when does HyperCard refresh the screen?  I am having
trouble with what seem to me to be random refreshes that erase all
the picts I have displayed.  These seem to occur inconsistently, and
I can't track them through the message watcher.  For example, if I open
a second stack in a new window and have a display pict call at the bottom
of the openstack handler, the pict gets drawn, then the screen gets
refreshed and the pict is erased.  Or I return to the main stack, redraw
all my picts at the bottom of the openstack handler, and the part of the
screen that was covered by the second stack window gets refreshed.  What's
the best way to assure that my picts are visible all the time?


Brian Reilly			Division of Language and Literacy
bri@ucbgarne.bitnet		UC Berkeley School of Education
bri@garnet.berkeley.edu		Berkeley, CA 94720

stm@apple.com (Steve Maller) (09/22/90)

In article <1990Sep19.163943.18602@agate.berkeley.edu> 
bri@garnet.berkeley.edu (Brian Reilly) writes:
> ...on what basis/when does HyperCard refresh the screen?

Unfortunately the answer to that question is currently "any time it damn 
well pleases". There is currently no reliable way of predicting when a 
screen refresh will occur. The recommended way of handling picture display 
thingies is to write an XCMD/external window which places pictures in a 
window(s) that float above the card window.

Steve Maller
HyperCard Engineering Team
Apple Computer