The InvertFrames function applies an inversion effect to an area defined by an arbitrary array of frames within an existing memory surface. This function is like InvertBox, but instead of a single rectangle, it uses an aray of PowerDoc frames. The blend parameters of the effect can be set by calling SetInvert.
Parameter | Description |
---|---|
frames_format |
Specifies whether the frames are in DT_PD_FRAME_FORMAT1 or DT_PD_FRAME_FORMAT2 format. Set to 1 for DT_PD_FRAME_FORMAT1 and 2 for DT_PD_FRAME_FORMAT2. |
frames |
The DT_PD_FRAMES union defining the array of frames. |
frames_len |
The size of the frames array. |
frames_flags |
Reserved for future use. Must be set to DV_NULL. |
x_off |
Same as in Draw. See the Draw function for details. |
y_off |
Same as in Draw. See the Draw function for details. |
format |
Same as in Draw. See the Draw function for details. |
subformat |
Same as in Draw. See the Draw function for details. |
memory_surface |
A pointer to the DT_MDC structure that describes the surface. See D-Type Standard Engine Manual for details. |
This function can be used to invert the color of an area within an existing memory surface without the need to redraw the entire area by calling the Draw function. Depending on the blend parameters (set by calling the SetInvert function), certain inversion effects are reversible. This means that when applied two times successively to the same pixels, the result will be the same as if the effect was not applied at all. For this reason, these inversion effect can be used to visually indicate various types of temporary user selections (e.g. the cursor movements, text or block selections).