Important: The information in this document is obsolete and should not be used for new development.
DeviceLoopFlags
When you use theDeviceLoopprocedure (described on page 5-28), you can change its default behavior by using theflagsparameter to specify one or more members of the set of flags defined by theDeviceLoopFlagsdata type. These flags are described here; if you want to use the default behavior ofDeviceLoop, pass in theflagsparameter 0 in your C code or an empty set ([ ]) in your Pascal code.
TYPE DeviceLoopFlags = SET OF {for flags parameter of DeviceLoop} (singleDevices, {DeviceLoop doesn't group similar graphics } { devices when calling drawing procedure} dontMatchSeeds, {DeviceLoop doesn't consider ctSeed fields } { of ColorTable records for graphics } { devices when comparing them} allDevices); {DeviceLoop ignores value of drawingRgn } { parameter--instead, it calls drawing } { procedure for every screen}
Field Description
singleDevices- If this flag is not set,
DeviceLoopcalls your drawing procedure only once for each set of similar graphics devices, and the first one found is passed as the target device. (It is assumed to be representative of all the similar graphics devices.) If you set thesingleDevicesflag, thenDeviceLoopdoes not group similar graphics devices--that is, those having identical pixel depths, black-and-white or color settings, and matching color table
seeds--when it calls your drawing procedure.dontMatchSeeds
If you set thedontMatchSeedsflag, thenDeviceLoopdoesn't consider color table seeds when comparing graphics devices for similarity;DeviceLoopignores this flag if you set thesingleDevicesflag. Used primarily by the Palette Manager, thectSeedfield of aColorTablerecord is described in the chapter "Color QuickDraw" in this book.allDevices- If you set the
allDevicesflag,DeviceLoopignores thedrawingRgnparameter and calls your drawing procedure for every graphics device. The value of current graphics port'svisRgnfield is not affected when you set this flag.