Jump to content

GreDeath

From EDM2
Revision as of 19:20, 17 January 2020 by Martini (talk | contribs) (Created page with "GreDeath informs the presentation driver that the entire screen is required by another screen group (an application that is not running under the Presentation Manager interfac...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

GreDeath informs the presentation driver that the entire screen is required by another screen group (an application that is not running under the Presentation Manager interface).

Simulation support
This function is mandatory for display drivers. For other drivers, it is simulated by a handling routine in the graphics engine.

Syntax

GreDeath(hdc, pInstance, lFunction);

Parameters

hdc (HDC) - input
The device context handle.
pInstance (PVOID) - input
A pointer to instance data.
lFunction (ULONG) - input
High-order WORD=flags; low-order WORD=NGreDeath.

Returns

fSuccess (BOOL) - returns
Return codes.
On completion, the handling routine must return BOOLEAN (fSuccess).
  • TRUE Successful
  • FALSE Error.
Possible Errors Detected: When an error is detected, the handling routine must call WinSetErrorInfo to post the condition. An error code for conditions that the handling routine is expected to check:
  • PMERR_DEV_FUNC_NOT_INSTALLED.

Sample

#define INCL_GRE_DEVMISC3
#include <os2.h>

HDC      hdc;        /*  The device context handle. */
PVOID    pInstance;  /*  A pointer to instance data. */
ULONG    lFunction;  /*  High-order WORD=flags; low-order WORD=NGreDeath. */
BOOL     fSuccess;   /*  Return codes. */

fSuccess = GreDeath(hdc, pInstance, lFunction);

Remarks

Any current Presentation Manager applications are set to the background. While this condition exists, the presentation driver must make all calls as usual. However, it might not affect the underlying hardware, that is, the presentation driver must continue to accumulate bounds and respond to queries but it might not actually draw to the display. When GreResurrection is called, the missing output will be re-created by the system sending a WM_PAINT message to the application.

This function goes directly to the Presentation Manager interface.