mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-22 20:18:31 +02:00
240 lines
5.8 KiB
ObjectPascal
240 lines
5.8 KiB
ObjectPascal
{****************************************************************************
|
|
|
|
Copyright (c) 1993,94 by Florian Kl„mpfl
|
|
|
|
****************************************************************************}
|
|
unit os2def;
|
|
|
|
interface
|
|
|
|
const
|
|
SEVERITY_NOERROR = $0;
|
|
SEVERITY_WARNING = $4;
|
|
SEVERITY_ERROR = $8;
|
|
SEVERITY_SEVERE = $c;
|
|
SEVERITY_UNRECOVERABLE = $10;
|
|
|
|
WINERR_BASE = $1000;
|
|
GPIERR_BASE = $2000;
|
|
DEVERR_BASE = $3000;
|
|
SPLERR_BASE = $4000;
|
|
|
|
ADDRESS = 0;
|
|
DRIVER_NAME = 1;
|
|
DRIVER_DATA = 2;
|
|
DATA_TYPE = 3;
|
|
COMMENT = 4;
|
|
PROC_NAME = 5;
|
|
PROC_PARAMS = 6;
|
|
SPL_PARAMS = 7;
|
|
NETWORK_PARAMS = 8;
|
|
|
|
PD_JOB_PROPERTY = $0001;
|
|
FATTR_SEL_ITALIC = $0001;
|
|
FATTR_SEL_UNDERSCORE = $0002;
|
|
FATTR_SEL_OUTLINE = $0008;
|
|
FATTR_SEL_STRIKEOUT = $0010;
|
|
FATTR_SEL_BOLD = $0020;
|
|
FATTR_TYPE_KERNING = $0004;
|
|
FATTR_TYPE_MBCS = $0008;
|
|
FATTR_TYPE_DBCS = $0010;
|
|
FATTR_TYPE_ANTIALIASED = $0020;
|
|
FATTR_FONTUSE_NOMIX = $0002;
|
|
FATTR_FONTUSE_OUTLINE = $0004;
|
|
FATTR_FONTUSE_TRANSFORMABLE = $0008;
|
|
FACESIZE = 32;
|
|
|
|
FM_TYPE_FIXED = $0001;
|
|
FM_TYPE_LICENSED = $0002;
|
|
FM_TYPE_KERNING = $0004;
|
|
FM_TYPE_DBCS = $0010;
|
|
FM_TYPE_MBCS = $0018;
|
|
FM_TYPE_64K = $8000;
|
|
FM_TYPE_ATOMS = $4000;
|
|
FM_TYPE_FAMTRUNC = $2000;
|
|
FM_TYPE_FACETRUNC = $1000;
|
|
FM_DEFN_OUTLINE = $0001;
|
|
FM_DEFN_IFI = $0002;
|
|
FM_DEFN_WIN = $0004;
|
|
FM_DEFN_GENERIC = $8000;
|
|
FM_SEL_ITALIC = $0001;
|
|
FM_SEL_UNDERSCORE = $0002;
|
|
FM_SEL_NEGATIVE = $0004;
|
|
FM_SEL_OUTLINE = $0008;
|
|
FM_SEL_STRIKEOUT = $0010;
|
|
FM_SEL_BOLD = $0020;
|
|
FM_CAP_NOMIX = $0001;
|
|
|
|
type
|
|
pcardinal = ^cardinal;
|
|
plongint = ^longint;
|
|
pinteger = ^integer;
|
|
pshortint = ^shortint;
|
|
ppointer = ^pointer;
|
|
pbyte = ^byte;
|
|
|
|
POINTL = record
|
|
x : cardinal;
|
|
y : cardinal;
|
|
end;
|
|
|
|
PPOINTL = ^POINTL;
|
|
|
|
POINTS = record
|
|
x : integer;
|
|
y : integer;
|
|
end;
|
|
|
|
PPOINTS = ^POINTS;
|
|
|
|
RECTL = record
|
|
xLeft : longint;
|
|
yBottom : longint;
|
|
xRight : longint;
|
|
yTop : longint;
|
|
end;
|
|
|
|
PRECTL = ^RECTL;
|
|
|
|
NPRECTL = ^RECTL;
|
|
|
|
STR8 = array[0..7] of CHAR;
|
|
|
|
PSTR8 = ^STR8;
|
|
|
|
DRIVDATA = record
|
|
cb : longint;
|
|
lVersion : longint;
|
|
szDeviceName : array[0..32-1] of CHAR;
|
|
abGeneralData : array[0..1-1] of CHAR;
|
|
end;
|
|
|
|
PDRIVDATA = ^DRIVDATA;
|
|
|
|
PDEVOPENDATA = pshortint; {Initially, ^PSZ}
|
|
|
|
DEVOPENSTRUC = record
|
|
pszLogAddress : pchar;
|
|
pszDriverName : pchar;
|
|
pdriv : PDRIVDATA;
|
|
pszDataType : pchar;
|
|
pszComment : pchar;
|
|
pszQueueProcName : pchar;
|
|
pszQueueProcParams : pchar;
|
|
pszSpoolerParams : pchar;
|
|
pszNetworkParams : pchar;
|
|
end;
|
|
|
|
PDEVOPENSTRUC = ^DEVOPENSTRUC;
|
|
|
|
PRINTDEST = record
|
|
cb : cardinal;
|
|
lType : longint;
|
|
pszToken : pchar;
|
|
lCount : longint;
|
|
pdopData : PDEVOPENDATA;
|
|
fl : cardinal;
|
|
pszPrinter : pchar;
|
|
end;
|
|
|
|
PPRINTDEST = ^PRINTDEST;
|
|
|
|
FATTRS = record
|
|
usRecordLength : word;
|
|
fsSelection : word;
|
|
lMatch : longint;
|
|
szFacename : array[0..FACESIZE-1] of CHAR;
|
|
idRegistry : word;
|
|
usCodePage : word;
|
|
lMaxBaselineExt : longint;
|
|
lAveCharWidth : longint;
|
|
fsType : word;
|
|
fsFontUse : word;
|
|
end;
|
|
|
|
PFATTRS = ^FATTRS;
|
|
|
|
PANOSE = record
|
|
bFamilyType : BYTE;
|
|
bSerifStyle : BYTE;
|
|
bWeight : BYTE;
|
|
bProportion : BYTE;
|
|
bContrast : BYTE;
|
|
bStrokeVariation : BYTE;
|
|
bArmStyle : BYTE;
|
|
bLetterform : BYTE;
|
|
bMidline : BYTE;
|
|
bXHeight : BYTE;
|
|
abReserved : array[0..2-1] of BYTE;
|
|
end;
|
|
|
|
FONTMETRICS = record
|
|
szFamilyname : array[0..FACESIZE-1] of CHAR;
|
|
szFacename : array[0..FACESIZE-1] of CHAR;
|
|
idRegistry : word;
|
|
usCodePage : word;
|
|
lEmHeight : longint;
|
|
lXHeight : longint;
|
|
lMaxAscender : longint;
|
|
lMaxDescender : longint;
|
|
lLowerCaseAscent : longint;
|
|
lLowerCaseDescent : longint;
|
|
lInternalLeading : longint;
|
|
lExternalLeading : longint;
|
|
lAveCharWidth : longint;
|
|
lMaxCharInc : longint;
|
|
lEmInc : longint;
|
|
lMaxBaselineExt : longint;
|
|
sCharSlope : integer;
|
|
sInlineDir : integer;
|
|
sCharRot : integer;
|
|
usWeightClass : word;
|
|
usWidthClass : word;
|
|
sXDeviceRes : integer;
|
|
sYDeviceRes : integer;
|
|
sFirstChar : integer;
|
|
sLastChar : integer;
|
|
sDefaultChar : integer;
|
|
sBreakChar : integer;
|
|
sNominalPointSize : integer;
|
|
sMinimumPointSize : integer;
|
|
sMaximumPointSize : integer;
|
|
fsType : word;
|
|
fsDefn : word;
|
|
fsSelection : word;
|
|
fsCapabilities : word;
|
|
lSubscriptXSize : longint;
|
|
lSubscriptYSize : longint;
|
|
lSubscriptXOffset : longint;
|
|
lSubscriptYOffset : longint;
|
|
lSuperscriptXSize : longint;
|
|
lSuperscriptYSize : longint;
|
|
lSuperscriptXOffset : longint;
|
|
lSuperscriptYOffset : longint;
|
|
lUnderscoreSize : longint;
|
|
lUnderscorePosition : longint;
|
|
lStrikeoutSize : longint;
|
|
lStrikeoutPosition : longint;
|
|
sKerningPairs : integer;
|
|
sFamilyClass : integer;
|
|
lMatch : longint;
|
|
FamilyNameAtom : longint;
|
|
FaceNameAtom : longint;
|
|
panose : PANOSE;
|
|
end;
|
|
|
|
PFONTMETRICS = ^FONTMETRICS;
|
|
|
|
{ Nun folgen einige FPKPascal-spezifische Typen: }
|
|
|
|
{ null. term. Strings sind in den Header Dateien oft als }
|
|
{ array[0..0] of byte deklariert, der folgende Typ er- }
|
|
{ m”glich eine Typkonvertierung }
|
|
CHARARRAY = array[0..0] of char;
|
|
|
|
|
|
|
|
implementation
|
|
|
|
end.
|