home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
ddkx86v1.zip
/
DDKX86
/
IBMH
/
PMGPIP.H
< prev
next >
Wrap
C/C++ Source or Header
|
1995-04-14
|
7KB
|
226 lines
/*DDK*************************************************************************/
/* */
/* COPYRIGHT Copyright (C) 1995 IBM Corporation */
/* */
/* The following IBM OS/2 WARP source code is provided to you solely for */
/* the purpose of assisting you in your development of OS/2 WARP device */
/* drivers. You may use this code in accordance with the IBM License */
/* Agreement provided in the IBM Device Driver Source Kit for OS/2. This */
/* Copyright statement may not be removed. */
/* */
/*****************************************************************************/
/****************************** Module Header ******************************\
*
* Module Name: PMGPIP.H
*
* OS/2 Presentation Manager GPI PRIVATE function declarations
*
*
*
* ===========================================================================
*
* Comments at the end of each typedef line give the name tags used in
* the assembler include version of this file.
*
* The assembler include version of this file excludes lines between NOINC
* and INC comments.
*
* ===========================================================================
*
*/
/* NOINC */
#ifdef __IBMC__
#pragma checkout( suspend )
#ifndef __CHKHDR__
#pragma checkout( suspend )
#endif
#pragma checkout( resume )
#endif
/* INC */
#define PMGPIP_INCLUDED
/* data truncated error on GpiMoveData and others */
#define GPI_TRUNCATED 2
/* control parameter for GpiSetDrawControl */
#define DCTL_PICKMODE 6L
#define DCTL_CORRELATE_FORMAT 7L
/* correlation type GpiSetDrawControl */
#define DCTL_CORRELATE_ALL 0L
#define DCTL_CORRELATE_FIRST 1L
#define DCTL_CORRELATE_LAST 2L
/* correlate format type GpiSetDrawControl */
#define DCTL_FORMAT_0 0L
#define DCTL_FORMAT_1 1L
/* segment attributes used by GpiSet/QuerySegmentAttrs and others */
#define ATTR_PROLOG 7L
/* 2@P2D */
/* 2@P1D */
/* @P2D */
/* 4@P1D */
/* 3@P2D */
/* NOINC */
/* INC */
LONG APIENTRY GpiVectorSymbol( HPS,
HDC,
PBYTE );
BOOL APIENTRY GpiOpenMetafile( HDC,
PBYTE );
HMF APIENTRY GpiCloseMetafile( HDC );
HDC APIENTRY GpiConvPsH( HPS );
BOOL APIENTRY GpiMTAssociate( HDC );
BOOL APIENTRY GpiMTDisassociate( HDC );
BOOL APIENTRY GpiAccessMetaFile( HMF );
BOOL APIENTRY GpiResumePlay( HPS );
BOOL APIENTRY GpiSuspendPlay( HPS );
BOOL APIENTRY GpiSetDCOwner( HDC,
ULONG ); /* @D2A*/
BOOL APIENTRY GpiSetBitmapOwner( HPS,
HBITMAP,
ULONG ); /* @D2A*/
BOOL APIENTRY GpiSetRegionOwner( HPS,
HRGN,
ULONG ); /* @D2A*/
LONG APIENTRY GpiInstallIFIFont ( ULONG,
PSZ,
PSZ,
PSZ );
//@bidi
//
// For use in GpiSet/QueryAttrs.
// This is the value that sets/queries the BidiAttr field
// in the DC structure.
//
#define PRIM_BIDIATTR 65
#ifdef INCL_GPIP_NLSEX
/* Definition for flNlsProcess. */
#define GNLS_PROCESS_BIDI 0x00000001
#define GNLS_PROCESS_HEBREW 0x00000002
#define GNLS_PROCESS_ARABIC 0x00000004
/* structure for extended NLS */
typedef struct _GNLSEX /* gnlsex */
{
ULONG flNlsProcess; //leave at beginning of struc for performance
ULONG ulCodepageOverride;
PULONG pProcess_BidiAttr;
PFN pfnBidiConvertString;
ULONG ulCodepageOverrideEBCDIC; //@Ebcdic
ULONG ulReserved;
} GNLSEX ;
typedef GNLSEX *PGNLSEX;
#endif //incl_GpiNlsEx
//@bidi end
#ifdef INCL_GPIDISPPRF
/* structures for Disp Profile Functions */
typedef struct _DSPINFO /* dspnfo */
{
PSZ pszDriverName;
ULONG cchDriverName;
PSZ pszDesc;
ULONG cchDesc;
PSZ pszFileName;
ULONG cchFileName;
PSZ pszOptionalParameters;
ULONG cchOptionalParameters;
} DSPINFO;
typedef DSPINFO *PDSPINFO;
typedef struct _SCREENRESCOUNT /* scrcnt */
{
ULONG maxcount;
ULONG count;
ULONG res_struct_length;
} SCREENRESCOUNT;
typedef SCREENRESCOUNT *PSCREENRESCOUNT;
typedef struct _SCREENRESOLUTION /* scrres */
{
ULONG width;
ULONG height;
ULONG colors;
ULONG planes;
ULONG floptions;
} SCREENRESOLUTION;
typedef SCREENRESOLUTION *PSCREENRESOLUTION;
#define DSP_DELETE_DRIVER 1
#define DSP_OPT_PARMS_PRESENT 2
#define DSP_QUERY_OPT_PARMS 2
#define DSP_SET_DEFAULT_DRIVER 4
#define DSP_QUERY_DEFAULT_DRIVER 4
#define DSP_SET_INSTALL_ON_IPL 8
#define DSP_QUERY_INSTALL_ON_IPL 8
#define DSP_SET_CURRENT_DRIVER 16
#define DSP_QUERY_CURRENT_DRIVER 16
#define DSP_SET_DEFAULT_RESOLUTION 32
#define DSP_RESOLUTION_OBTAINABLE 64
#define DSP_RESOLUTION_DEFAULT 128
#define DSP_FILENAME_PRESENT 256
#define DSP_QUERY_FILENAME 256
#define DSP_DESC_PRESENT 512
#define DSP_QUERY_DESC 512
#ifndef INCL_DDIDEFS
/*** Display Driver functions */
BOOL APIENTRY DspSetDriverInfo(PDSPINFO pDSPInfo,
ULONG flOptions);
ULONG APIENTRY DspQueryDriverInfo(PDSPINFO pDSPInfo,
ULONG flOptions);
ULONG APIENTRY DspQueryDriverNames(PVOID pBuffer,
ULONG ulCount);
BOOL APIENTRY DspDefaultResolution(PVOID pScreenResolution,
PULONG pcbScreenResolution,
ULONG flOptions);
ULONG APIENTRY DevQueryDisplayResolutions(PSZ pszDriverName,
PVOID pBuf,
PULONG pcbBuf);
BOOL APIENTRY DspInitSystemDriverName(PSZ pszDriverFileName,
ULONG ccbDriverFileName );
#endif /* no INCL_DDIDEFS */
#endif /* non-common GPIDISPPRF */
/* NOINC */
#ifdef __IBMC__
#pragma checkout( suspend )
#ifndef __CHKHDR__
#pragma checkout( resume )
#endif
#pragma checkout( resume )
#endif
/* INC */
/**************************** end of file **********************************/