| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654 |
- Listing:
- 1 (* Release 3.10 *)
- 2 (*-------------------------------------------------------------------------*
- 3 * *
- 4 * GPI.DEF - OS/2 PM GPI interface *
- 5 * *
- 6 * COPYRIGHT (C) 1989..1992 Clarion Software Corporation. *
- 7 * Copyright (c) 1988 Microsoft Corporation *
- 8 * All Rights Reserved *
- 9 * This file is compatible with OS/2 version 1.2. *
- 10 * *
- 11 *--------------------------------------------------------------------------*)
- 12
- 13 (*# call(o_a_size => off,
- 14 o_a_copy=>off,
- 15 result_optional=>on,
- 16 reg_saved => (si, di, ds, st1, st2),
- 17 reg_param => (),
- 18 seg_name => none,
- 19 near_call => off,
- 20 ds_eq_ss => off) *)
- 21
- 22 (*# module(implementation=>off, init_code => off) *)
- 23 (*# name(prefix => os2_lib) *)
- 24 (*# data(near_ptr => off) *)
- 25 (*# check(index=>off,range=>off,overflow=>off,nil_ptr=>off) *)
- 26
- 27 DEFINITION MODULE Gpi;
- 28
- 29 (**)
- 30 (**--- OS/2 Presentation Manager GPI ---------------------------------------*)
- 31 (**)
- 32
- 33 FROM OS2DEF IMPORT HDC,HRGN,HAB,HPS,HBITMAP,HMF,LSET,POINTL,RECTL,STR8,HMODULE ;
- 34
- 35 (**)
- 36 (*--- Conditional sections, set to TRUE if required ------------------------*)
- 37 (**)
- 38 CONST
- 39 i_CONTROL = TRUE ; (* PS control *)
- 40 i_CORR = TRUE ; (* Picking, boundary and correlation *)
- 41 i_SEGM = TRUE ; (* Segment control and drawing *)
- 42 i_SEGMEDIT = TRUE ; (* Segment editing *)
- 43 i_TRANSF = TRUE ; (* Transforms and transform conversion *)
- 44 i_PATH = FALSE; (* Paths and clipping with paths *)
- 45 i_COLORTAB = TRUE ; (* Logical color tables *)
- 46 i_PRIM1 = TRUE ; (* Drawing primitives *)
- 47 i_PRIM2 = TRUE ; (* Drawing primitives uncommon *)
- 48 i_LCID = FALSE; (* Physical and logical fonts *)
- 49 i_BITMAP1 = TRUE ; (* Bitmaps and pel operations *)
- 50 i_BITMAP2 = TRUE ; (* Bitmaps and pel operations uncommon *)
- 51 i_BITMAP3 = FALSE; (* Bitmaps file formats *)
- 52 i_REGION = FALSE; (* Regions and clipping with regions *)
- 53 i_METAF = FALSE; (* Metafiles *)
- 54 i_DEFAULT = FALSE; (* Gpi Defaults *)
- 55 i_ORDER = FALSE; (* GOCA orders *)
- 56 i_FONT = FALSE; (* Font structures *)
- 57
- 58
- 59 (**)
- 60 (**--- Win General section 1 -----------------------------------------------*)
- 61 (**)
- 62
- 63 CONST
- 64 GPI_ERROR = 0; GPI_OK = 1; GPI_HITS = 2; (* HITSRET Correlation Error *)
- 65 GPI_ALTERROR = -1; (* GPIRET, >=0 returns value *)
- 66
- 67 TYPE
- 68
- 69 FIXED = RECORD frac : CARDINAL; int : INTEGER; END;
- ***** ^ not supported yet
- 70
- 71 GPIRET = LONGINT;
- 72 HITSRET = LONGINT;
- 73
- 74 TYPE
- 75
- 76 SIZEL = RECORD
- 77 cx : LONGINT;
- 78 cy : LONGINT;
- 79 END;
- ***** ^ not supported yet
- 80
- 81 CONST
- 82 CLR_NOINDEX = -254;
- 83 PU_ARBITRARY = 04H; PU_PELS = 08H; PU_LOMETRIC = 0CH; PU_HIMETRIC = 010H;
- 84 PU_LOENGLISH = 014H; PU_HIENGLISH = 018H; PU_TWIPS = 01CH;
- 85 GPIF_DEFAULT = 0; GPIF_SHORT = 0100H; GPIF_LONG = 0200H;
- 86 GPIT_NORMAL = 0; GPIT_MICRO = 01000H;
- 87 GPIA_NOASSOC = 0; GPIA_ASSOC = 04000H;
- 88 HDC_ERROR = HDC(-1);
- ***** ^ not supported yet
- ***** ^ not supported yet
- 89
- 90 PROCEDURE CreatePS(a:HAB; c:HDC; VAR s:SIZEL; o:LONGCARD) : HPS;
- ***** ^ undeclared identifier
- 91 PROCEDURE DestroyPS(h:HPS) : BOOLEAN;
- 92 PROCEDURE Associate(h:HPS; c:HDC) : BOOLEAN;
- 93 PROCEDURE RestorePS(h:HPS; p:LONGINT) : BOOLEAN;
- 94 PROCEDURE SavePS(h:HPS) : LONGINT;
- 95 PROCEDURE Erase(h:HPS) : BOOLEAN;
- 96 PROCEDURE QueryDevice(h:HPS) : HDC;
- 97
- 98 (**)
- 99 (**--- Gpi Control --------------------------------------------------------*)
- 100 (**)
- 101 (*%T i_CONTROL*)
- 102
- 103 CONST
- 104 (* options for GpiResetPS *)
- 105 GRES_ATTRS = LSET(01H); GRES_SEGMENTS = LSET(02H); GRES_ALL = LSET(04H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- 106 (* option masks for PS options used by GpiQueryPs *)
- 107 PS_UNITS = LSET(0FCH);
- ***** ^ not supported yet
- ***** ^ not supported yet
- 108 PS_FORMAT = LSET(0F00H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- 109 PS_TYPE = LSET(01000H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- 110 PS_MODE = LSET(02000H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- 111 PS_ASSOCIATE = LSET(04000H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- 112 PS_NORESET = LSET(08000H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- 113 (* error context returned by GpiErrorSegmentData *)
- 114 GPIE_SEGMENT = 0; GPIE_ELEMENT = 1; GPIE_DATA = 2;
- 115 (* control parameter for GpiSetDrawControl *)
- 116 DCTL_ERASE = 1; DCTL_DISPLAY = 2; DCTL_BOUNDARY = 3; DCTL_DYNAMIC = 4;
- 117 DCTL_CORRELATE = 5;
- 118 (* constants for GpiSet/QueryDrawControl *)
- 119 DCTL_ERROR = -1; DCTL_OFF = 0; DCTL_ON = 1;
- 120 (* constants for GpiSet/QueryStopDraw *)
- 121 SDW_ERROR = -1; SDW_OFF = 0; SDW_ON = 1;
- 122 (* drawing for GpiSet/QueryDrawingMode *)
- 123 DM_ERROR = 0; DM_DRAW = 1; DM_RETAIN = 2; DM_DRAWANDRETAIN = 3;
- 124
- 125 PROCEDURE ResetPS(h:HPS; o:LSET) : BOOLEAN;
- 126 PROCEDURE SetPS(h:HPS; VAR s:SIZEL; o:LONGCARD) : BOOLEAN;
- ***** ^ undeclared identifier
- 127 PROCEDURE QueryPS(h:HPS; VAR s:SIZEL) : LSET;
- 128 PROCEDURE ErrorSegmentData(h:HPS; VAR s:LONGCARD; VAR c:LONGINT) : GPIRET;
- ***** ^ undeclared identifier
- 129 PROCEDURE QueryDrawControl(h:HPS; c:LONGINT) : LONGINT;
- 130 PROCEDURE SetDrawControl(h:HPS; c,v:LONGINT) : BOOLEAN;
- 131 PROCEDURE QueryDrawingMode(h:HPS) : LONGINT;
- 132 PROCEDURE SetDrawingMode(h:HPS; m:LONGINT) : BOOLEAN;
- 133 PROCEDURE QueryStopDraw(h:HPS) : LONGINT;
- 134 PROCEDURE SetStopDraw(h:HPS; v:LONGINT) : BOOLEAN;
- 135
- 136 (*%E*)
- 137 (**)
- 138 (**--- Gpi Correlation ----------------------------------------------------*)
- 139 (**)
- 140 (*%T i_CORR*)
- 141
- 142 CONST
- 143 (* options for GpiSetPickApertureSize *)
- 144 PICKAP_DEFAULT = 0; PICKAP_REC = 2;
- 145 (* type of correlation for GpiCorrelateChain *)
- 146 PICKSEL_VISIBLE = 0; PICKSEL_ALL = 1;
- 147
- 148 PROCEDURE CorrelateChain(h:HPS; t:LONGINT; VAR p:POINTL; m,d:LONGCARD; VAR s:ARRAY OF LONGINT) : LONGINT;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 149 PROCEDURE QueryTag(h:HPS; VAR t:LONGINT) : BOOLEAN;
- 150 PROCEDURE SetTag(h:HPS; t:LONGINT) : BOOLEAN;
- 151 PROCEDURE QueryPickApertureSize(h:HPS; VAR s:SIZEL) : BOOLEAN;
- 152 PROCEDURE SetPickApertureSize(h:HPS; o:LONGINT; VAR s:SIZEL) : BOOLEAN;
- 153 PROCEDURE QueryPickAperturePosition(h:HPS; VAR p:POINTL) : BOOLEAN;
- 154 PROCEDURE SetPickAperturePosition(h:HPS; VAR p:POINTL) : BOOLEAN;
- 155 PROCEDURE QueryBoundaryData(h:HPS; VAR r:RECTL) : BOOLEAN;
- 156 PROCEDURE ResetBoundaryData(h:HPS) : BOOLEAN;
- 157 PROCEDURE CorrelateFrom(h:HPS; f,l:LONGCARD; t:LONGINT; VAR p:POINTL; m,d:LONGCARD; VAR s:ARRAY OF LONGINT) : LONGINT;
- ***** ^ undeclared identifier
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 158 PROCEDURE CorrelateSegment(h:HPS; s,t:LONGINT; VAR p:POINTL; m,d:LONGCARD; VAR a:ARRAY OF LONGINT) : LONGINT;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 159
- 160 (*%E*)
- 161 (**)
- 162 (**--- Gpi Segments -------------------------------------------------------*)
- 163 (**)
- 164 (*%T i_SEGM*)
- 165
- 166 CONST
- 167 (* data formats for GpiPutData and GpiGetData *)
- 168 DFORM_NOCONV = 0; DFORM_S370SHORT = 1; DFORM_PCSHORT = 2; DFORM_PCLONG = 4;
- 169 (* segment attributes used by GpiSet/QuerySegmentAttrs and others *)
- 170 ATTR_ERROR = -1; ATTR_DETECTABLE = 1; ATTR_VISIBLE = 2; ATTR_CHAINED = 6;
- 171 ATTR_DYNAMIC = 8; ATTR_FASTCHAIN = 9; ATTR_PROP_DETECTABLE = 10; ATTR_PROP_VISIBLE = 11;
- 172 ATTR_OFF = 0; ATTR_ON = 1;
- 173 (* segment priority used by GpiSetSegmentPriority and others *)
- 174 LOWER_PRI = -1; HIGHER_PRI = 1;
- 175
- 176 (* segment control functions *)
- 177 PROCEDURE OpenSegment(h:HPS; s:LONGCARD) : BOOLEAN;
- ***** ^ undeclared identifier
- 178 PROCEDURE CloseSegment(h:HPS) :BOOLEAN;
- 179 PROCEDURE DeleteSegment(h:HPS; s:LONGCARD) : BOOLEAN;
- ***** ^ undeclared identifier
- 180 PROCEDURE QueryInitialSegmentAttrs(h:HPS; a:LONGINT) : LONGINT;
- 181 PROCEDURE SetInitialSegmentAttrs(h:HPS; a,v:LONGINT) : BOOLEAN;
- 182 PROCEDURE QuerySegmentAttrs(h:HPS; i:LONGCARD; a:LONGINT) : LONGINT;
- ***** ^ undeclared identifier
- 183 PROCEDURE SetSegmentAttrs(h:HPS; s:LONGCARD; a,v:LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- 184 PROCEDURE QuerySegmentPriority(h:HPS; s:LONGCARD; o:LONGINT) : GPIRET;
- ***** ^ undeclared identifier
- 185 PROCEDURE SetSegmentPriority(h:HPS; s,r:LONGCARD; o:LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- 186 PROCEDURE DeleteSegments(h:HPS; f,l:LONGCARD) : BOOLEAN;
- ***** ^ undeclared identifier
- 187 PROCEDURE QuerySegmentNames(h:HPS; f,l,m:LONGCARD; VAR s:ARRAY OF LONGCARD) : GPIRET;
- ***** ^ undeclared identifier
- ***** ^ undeclared identifier
- 188 (* draw functions for segments *)
- 189 PROCEDURE GetData(h:HPS; s:LONGCARD; VAR o:LONGINT; f:LONGCARD; l:LONGCARD; VAR d:ARRAY OF BYTE) : GPIRET;
- ***** ^ undeclared identifier
- ***** ^ undeclared identifier
- ***** ^ undeclared identifier
- ***** ^ undeclared identifier
- 190 PROCEDURE PutData(h:HPS; f:LONGINT; VAR c:LONGCARD; d:ARRAY OF BYTE) : HITSRET;
- ***** ^ undeclared identifier
- ***** ^ undeclared identifier
- 191 PROCEDURE DrawChain(h:HPS) : BOOLEAN;
- 192 PROCEDURE DrawFrom(h:HPS; f,l:LONGCARD) : BOOLEAN;
- ***** ^ undeclared identifier
- 193 PROCEDURE DrawSegment(h:HPS; s:LONGCARD) : BOOLEAN;
- ***** ^ undeclared identifier
- 194 PROCEDURE DrawDynamics(h:HPS) : BOOLEAN;
- 195 PROCEDURE RemoveDynamics(h:HPS; f,l:LONGCARD) : BOOLEAN;
- ***** ^ undeclared identifier
- 196
- 197 (*%E*)
- 198 (**)
- 199 (**--- Gpi Segment Editing ------------------------------------------------*)
- 200 (**)
- 201 (*%T i_SEGMEDIT*)
- 202
- 203 CONST
- 204 (* edit modes used by GpiSet/QueryEditMode *)
- 205 SEGEM_ERROR = 0; SEGEM_INSERT = 1; SEGEM_REPLACE = 2;
- 206
- 207 (*** segment editing by element functions *)
- 208 PROCEDURE BeginElement(h:HPS; t:LONGINT; d:ARRAY OF CHAR) : BOOLEAN;
- ***** ^ not supported yet
- 209 PROCEDURE EndElement(h:HPS) : BOOLEAN;
- 210 PROCEDURE Label(h:HPS; l:LONGINT) : BOOLEAN;
- 211 PROCEDURE Element(h:HPS; t:LONGINT; s:ARRAY OF CHAR; l:LONGCARD; VAR d:ARRAY OF BYTE) : HITSRET;
- ***** ^ not supported yet
- ***** ^ undeclared identifier
- ***** ^ undeclared identifier
- 212 PROCEDURE QueryElement(h:HPS; o,m:LONGCARD; VAR b:ARRAY OF BYTE) : GPIRET;
- ***** ^ undeclared identifier
- ***** ^ undeclared identifier
- 213 PROCEDURE DeleteElement(h:HPS) : BOOLEAN;
- 214 PROCEDURE DeleteElementRange(h:HPS; f,l:LONGINT) : BOOLEAN;
- 215 PROCEDURE DeleteElementsBetweenLabels(h:HPS; f,l:LONGINT) : BOOLEAN;
- 216 PROCEDURE QueryEditMode(h:HPS) : LONGINT;
- 217 PROCEDURE SetEditMode(h:HPS; m:LONGINT) : BOOLEAN;
- 218 PROCEDURE QueryElementPointer(h:HPS) : GPIRET;
- 219 PROCEDURE SetElementPointer(h:HPS; e:LONGINT) : BOOLEAN;
- 220 PROCEDURE OffsetElementPointer(h:HPS; o:LONGINT) : BOOLEAN;
- 221 PROCEDURE QueryElementType(h:HPS; VAR t:LONGINT; c:LONGCARD; VAR d:ARRAY OF CHAR) : GPIRET;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 222 PROCEDURE SetElementPointerAtLabel(h:HPS; l:LONGINT) : BOOLEAN;
- 223
- 224 (*%E*)
- 225 (**)
- 226 (**--- Gpi Transforms -----------------------------------------------------*)
- 227 (**)
- 228 (*%T i_TRANSF*)
- 229
- 230 CONST
- 231 (* co-ordinates space for GpiConvert *)
- 232 CVTC_WORLD = 1; CVTC_MODEL = 2; CVTC_DEFAULTPAGE = 3; CVTC_PAGE = 4;
- 233 CVTC_DEVICE = 5;
- 234 (* type of transformation for GpiSetSegmentTransformMatrix *)
- 235 TRANSFORM_REPLACE = 0; TRANSFORM_ADD = 1; TRANSFORM_PREEMPT = 2;
- 236
- 237 TYPE
- 238
- 239 (* transform matrix *)
- 240 MATRIXLF = RECORD
- 241 M11,M12 : FIXED;
- 242 M13 : LONGINT;
- 243 M21,M22 : FIXED;
- 244 M23 : LONGINT;
- 245 M31,M32,M33 : LONGINT;
- 246 END;
- ***** ^ not supported yet
- 247
- 248 PROCEDURE QuerySegmentTransformMatrix(h:HPS; s,c:LONGCARD; VAR m:ARRAY OF MATRIXLF) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 249 PROCEDURE SetSegmentTransformMatrix(h:HPS; s,c:LONGCARD; m:ARRAY OF MATRIXLF; o:LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 250 PROCEDURE Convert(h:HPS; s,t:LONGINT; c:LONGCARD; VAR p:ARRAY OF POINTL) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 251 PROCEDURE QueryModelTransformMatrix(h:HPS; c:LONGCARD; VAR m:MATRIXLF) : BOOLEAN;
- ***** ^ undeclared identifier
- 252 PROCEDURE SetModelTransformMatrix(h:HPS; c:LONGCARD; m:ARRAY OF MATRIXLF; o:LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 253 PROCEDURE CallSegmentMatrix(h:HPS; s:LONGCARD; c:LONGCARD; VAR m:MATRIXLF; o:LONGINT) : HITSRET;
- ***** ^ undeclared identifier
- ***** ^ undeclared identifier
- 254 PROCEDURE QueryDefaultViewMatrix(h:HPS; c:LONGCARD; VAR m:ARRAY OF MATRIXLF) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 255 PROCEDURE SetDefaultViewMatrix(h:HPS; c:LONGCARD; m:ARRAY OF MATRIXLF; o:LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 256 PROCEDURE QueryPageViewport(h:HPS; VAR r:RECTL) : BOOLEAN;
- 257 PROCEDURE SetPageViewport(h:HPS; VAR r:RECTL) : BOOLEAN;
- 258 PROCEDURE QueryViewingTransformMatrix(h:HPS; c:LONGCARD; VAR m:ARRAY OF MATRIXLF) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 259 PROCEDURE SetViewingTransformMatrix(h:HPS; c:LONGCARD; m:ARRAY OF MATRIXLF; o:LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 260 (*** transform helper routines *)
- 261 PROCEDURE Translate(h: HPS; VAR m: MATRIXLF; l:LONGINT; VAR p:POINTL): BOOLEAN;
- 262 PROCEDURE Scale(h: HPS; VAR m:MATRIXLF; l:LONGINT; VAR f:FIXED; VAR p:POINTL): BOOLEAN;
- 263 PROCEDURE Rotate(h: HPS; VAR m:MATRIXLF; l:LONGINT; f:FIXED; VAR p:POINTL): BOOLEAN;
- 264 (*** general clipping functions *)
- 265 PROCEDURE SetGraphicsField(h:HPS; VAR r:RECTL) : BOOLEAN;
- 266 PROCEDURE QueryGraphicsField(h:HPS; VAR r:RECTL) : BOOLEAN;
- 267 PROCEDURE SetViewingLimits(h:HPS; VAR r:RECTL) : BOOLEAN;
- 268 PROCEDURE QueryViewingLimits(h:HPS; VAR r:RECTL) : BOOLEAN;
- 269
- 270 (*%E*)
- 271 (**)
- 272 (**--- Gpi Paths ----------------------------------------------------------*)
- 273 (**)
- 274 (*%T i_PATH*)
- 275
- 276 CONST
- 277 (* modes for GpiModifyPath *)
- 278 MPATH_STROKE = 6;
- 279 (* modes for GpiFillPath *)
- 280 FPATH_ALTERNATE = 0; FPATH_WINDING = 2;
- 281 (* modes for GpiSetClipPath *)
- 282 SCP_ALTERNATE = 0; SCP_WINDING = 2; SCP_AND = 4; SCP_RESET = 0;
- 283
- 284 PROCEDURE BeginPath(h:HPS; i:LONGINT) : BOOLEAN;
- 285 PROCEDURE EndPath(h:HPS) : BOOLEAN;
- 286 PROCEDURE CloseFigure(h:HPS) : BOOLEAN;
- 287 PROCEDURE ModifyPath(h:HPS; p:LONGCARD; m:LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- 288 PROCEDURE FillPath(h:HPS; p:LONGCARD; o:LONGINT) : HITSRET;
- ***** ^ undeclared identifier
- 289 PROCEDURE SetClipPath(h:HPS; p:LONGCARD; o:LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- 290 PROCEDURE OutlinePath(h:HPS; Path: LONGINT; Options: LONGINT): LONGINT;
- 291 PROCEDURE StrokePath(h:HPS; p,o:LONGCARD) : HITSRET;
- ***** ^ undeclared identifier
- 292
- 293 (*%E*)
- 294 (**)
- 295 (**--- Gpi Logical Color Tables -------------------------------------------*)
- 296 (**)
- 297 (*%T i_COLORTAB*)
- 298
- 299 CONST
- 300 (* options for GpiCreateLogColorTable and others *)
- 301 LCOL_RESET = LSET(01H); LCOL_REALIZABLE = LSET(02H); LCOL_PURECOLOR = LSET(04H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- 302 (* format of logical lColor table for GpiCreateLogColorTable and others *)
- 303 LCOLF_DEFAULT = 0; LCOLF_INDRGB = 1; LCOLF_CONSECRGB = 2; LCOLF_RGB = 3;
- 304 (* options for GpiQueryRealColors and others *)
- 305 LCOLOPT_REALIZED = LSET(01H); LCOLOPT_INDEX = LSET(02H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- 306 (* return codes from GpiQueryLogColorTable to indicate it is in RGB mode *)
- 307 QLCT_ERROR = -1; QLCT_RGB = -2;
- 308 (* GpiQueryLogColorTable index returned for colors not explicitly loaded *)
- 309 QLCT_NOTLOADED = -1;
- 310 (* return codes for GpiQueryColorData *)
- 311 QCD_LCT_FORMAT = 0; QCD_LCT_LOINDEX = 1; QCD_LCT_HIINDEX = 2;
- 312
- 313 (* logical lColor table functions *)
- 314 PROCEDURE CreateLogColorTable(h:HPS; o:LSET; f:LONGINT; s,c:LONGCARD; VAR t:ARRAY OF LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 315 PROCEDURE RealizeColorTable(h:HPS) : BOOLEAN;
- 316 PROCEDURE UnrealizeColorTable(h:HPS) : BOOLEAN;
- 317 PROCEDURE QueryColorData(h:HPS; c:LONGCARD; VAR a:ARRAY OF LONGINT) : BOOLEAN;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 318 PROCEDURE QueryLogColorTable(h:HPS; o:LSET; s,c:LONGCARD; VAR a:ARRAY OF LONGINT) : LONGINT;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 319 PROCEDURE QueryRealColors(h:HPS; o:LSET; s,c:LONGCARD; VAR a:ARRAY OF LONGINT) : GPIRET;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 320 PROCEDURE QueryNearestColor(h:HPS; o:LSET; r:LONGINT) : GPIRET;
- 321 PROCEDURE QueryColorIndex(h:HPS; o:LSET; c:LONGINT) : LONGINT;
- 322 PROCEDURE QueryRGBColor(h:HPS; o:LSET; i:LONGINT) : GPIRET;
- 323
- 324 (*%E*)
- 325 (**)
- 326 (**--- Gpi Common Primitives ----------------------------------------------*)
- 327 (**)
- 328 (*%T i_PRIM1*)
- 329
- 330 CONST
- 331 (* default color table indices *)
- 332 CLR_FALSE = -5;
- 333 CLR_TRUE = -4;
- 334 CLR_ERROR = -255;
- 335 CLR_DEFAULT = -3;
- 336 CLR_WHITE = -2;
- 337 CLR_BLACK = -1;
- 338 CLR_BACKGROUND = 0;
- 339 CLR_BLUE = 1;
- 340 CLR_RED = 2;
- 341 CLR_PINK = 3;
- 342 CLR_GREEN = 4;
- 343 CLR_CYAN = 5;
- 344 CLR_YELLOW = 6;
- 345 CLR_NEUTRAL = 7;
- 346 CLR_DARKGRAY = 8;
- 347 CLR_DARKBLUE = 9;
- 348 CLR_DARKRED = 10;
- 349 CLR_DARKPINK = 11;
- 350 CLR_DARKGREEN = 12;
- 351 CLR_DARKCYAN = 13;
- 352 CLR_BROWN = 14;
- 353 CLR_PALEGRAY = 15;
- 354 (* rgb colors *)
- 355 RGB_ERROR = -255; RGB_BLACK = 00H; RGB_BLUE = 0FFH; RGB_GREEN = 0FF00H;
- 356 RGB_CYAN = 0FFFFH; RGB_RED = 0FF0000H; RGB_PINK = 0FF00FFH; RGB_YELLOW = 0FFFF00H;
- 357 RGB_WHITE = 0FFFFFFH;
- 358 (* control flags used by GpiBeginArea *)
- 359 BA_NOBOUNDARY = LSET(0); BA_BOUNDARY = LSET(01H); BA_ALTERNATE = LSET(0); BA_WINDING = LSET(02H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- 360 (* fill options for GpiBox/GpiFullArc *)
- 361 DRO_FILL = 1; DRO_OUTLINE = 2; DRO_OUTLINEFILL = 3;
- 362 (* basic pattern symbols *)
- 363 PATSYM_ERROR = -1; PATSYM_DEFAULT = 0; PATSYM_DENSE1 = 1; PATSYM_DENSE2 = 2;
- 364 PATSYM_DENSE3 = 3; PATSYM_DENSE4 = 4; PATSYM_DENSE5 = 5; PATSYM_DENSE6 = 6;
- 365 PATSYM_DENSE7 = 7; PATSYM_DENSE8 = 8; PATSYM_VERT = 9; PATSYM_HORIZ = 10;
- 366 PATSYM_DIAG1 = 11; PATSYM_DIAG2 = 12; PATSYM_DIAG3 = 13; PATSYM_DIAG4 = 14;
- 367 PATSYM_NOSHADE = 15; PATSYM_SOLID = 16; PATSYM_BLANK = 64; PATSYM_HALFTONE = 17;
- 368 (* lcid values for GpiSet/QueryPattern and others *)
- 369 LCID_ERROR = -1; LCID_DEFAULT = 0;
- 370
- 371 PROCEDURE SetColor(h:HPS; c:LONGINT) : BOOLEAN;
- 372 PROCEDURE QueryColor(h:HPS) : LONGINT;
- 373 PROCEDURE Box(h:HPS; c:LONGINT; VAR p:POINTL; hr,vr:LONGINT) : HITSRET;
- 374 PROCEDURE Move(h:HPS; VAR p:POINTL) : BOOLEAN;
- 375 PROCEDURE Line(h:HPS; VAR p:POINTL) : HITSRET;
- 376 PROCEDURE PolyLine(h:HPS; c:LONGCARD; p:ARRAY OF POINTL) : GPIRET;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 377 PROCEDURE SetPattern(h:HPS; p:LONGINT) : BOOLEAN;
- 378 PROCEDURE QueryPattern(h:HPS) : LONGINT;
- 379 PROCEDURE BeginArea(h:HPS; o:LSET) : BOOLEAN;
- 380 PROCEDURE EndArea(h:HPS) : HITSRET;
- 381 PROCEDURE CharString(h:HPS; c:LONGCARD; s:ARRAY OF CHAR) : HITSRET;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 382 PROCEDURE CharStringAt(h:HPS; VAR p:POINTL; c:LONGCARD; s:ARRAY OF CHAR) : HITSRET;
- ***** ^ undeclared identifier
- ***** ^ not supported yet
- 383
- 384 (*%E*)
- 385 (**)
- 386 (**--- Gpi Uncommon Primitives --------------------------------------------*)
- 387 (**)
- 388 (*%T i_PRIM2*)
- 389
- 390 CONST
- 391 (* mode for GpiSetAttrMode *)
- 392 AM_ERROR = -1; AM_PRESERVE = 0; AM_NOPRESERVE = 1;
- 393 (* foreground mixes *)
- 394 FM_ERROR = -1; FM_DEFAULT = 0; FM_OR = 1; FM_OVERPAINT = 2;
- 395 FM_LEAVEALONE = 5; FM_XOR = 4; FM_AND = 6; FM_SUBTRACT = 7;
- 396 FM_MASKSRCNOT = 8; FM_ZERO = 9; FM_NOTMERGESRC = 10; FM_NOTXORSRC = 11;
- 397 FM_INVERT = 12; FM_MERGESRCNOT = 13; FM_NOTCOPYSRC = 14; FM_MERGENOTSRC = 15;
- 398 FM_NOTMASKSRC = 16; FM_ONE = 17;
- 399 (* background mixes *)
- 400 BM_ERROR = -1; BM_DEFAULT = 0; BM_OVERPAINT = 2; BM_LEAVEALONE = 5;
- 401 BM_OR = 1; BM_XOR = 4;
- 402 (* basic line type styles *)
- 403 LINETYPE_ERROR = -1; LINETYPE_DEFAULT = 0; LINETYPE_DOT = 1; LINETYPE_SHORTDASH = 2;
- 404 LINETYPE_DASHDOT = 3; LINETYPE_DOUBLEDOT = 4; LINETYPE_LONGDASH = 5; LINETYPE_DASHDOUBLEDOT = 6;
- 405 LINETYPE_SOLID = 7; LINETYPE_INVISIBLE = 8; LINETYPE_ALTERNATE = 9;
- 406 (* cosmetic line widths *)
- 407 LINEWIDTH_ERROR = -1; LINEWIDTH_DEFAULT = 0; LINEWIDTH_NORMAL = 010000H;
- 408 (* actual line widths *)
- 409 LINEWIDTHGEOM_ERROR = -1;
- 410 (* line end styles *)
- 411 LINEEND_ERROR = -1; LINEEND_DEFAULT = 0; LINEEND_FLAT = 1; LINEEND_SQUARE = 2;
- 412 LINEEND_ROUND = 3;
- 413 (* line join styles *)
- 414 LINEJOIN_ERROR = -1; LINEJOIN_DEFAULT = 0; LINEJOIN_BEVEL = 1; LINEJOIN_ROUND = 2;
- 415 LINEJOIN_MITRE = 3;
- 416 (* character directions *)
- 417 CHDIRN_ERROR = -1; CHDIRN_DEFAULT = 0; CHDIRN_LEFTRIGHT = 1; CHDIRN_TOPBOTTOM = 2;
- 418 CHDIRN_RIGHTLEFT = 3; CHDIRN_BOTTOMTOP = 4;
- 419 (* character modes *)
- 420 CM_ERROR = -1; CM_DEFAULT = 0; CM_MODE1 = 1; CM_MODE2 = 2;
- 421 CM_MODE3 = 3;
- 422 (* basic marker symbols *)
- 423 MARKSYM_ERROR = -1; MARKSYM_DEFAULT = 0; MARKSYM_CROSS = 1; MARKSYM_PLUS = 2;
- 424 MARKSYM_DIAMOND = 3; MARKSYM_SQUARE = 4; MARKSYM_SIXPOINTSTAR = 5; MARKSYM_EIGHTPOINTSTAR = 6;
- 425 MARKSYM_SOLIDDIAMOND = 7; MARKSYM_SOLIDSQUARE = 8; MARKSYM_DOT = 9; MARKSYM_SMALLCIRCLE = 10;
- 426 MARKSYM_BLANK = 64;
- 427 (* formatting options for GpiCharStringPosAt *)
- 428 CHS_OPAQUE = LSET(01H); CHS_VECTOR = LSET(02H); CHS_LEAVEPOS = LSET(08H); CHS_CLIP = LSET(010H);
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- ***** ^ not supported yet
- 429
- 430 (* bundle codes for GpiSetAttributes and GpiQueryAttributes *)
- 431 PRIM_LINE = 1;
- 432 PRIM_CHAR = 2;
- 433 PRIM_MARKER = 3;
- 434 PRIM_AREA = 4;
- 435 PRIM_IMAGE = 5;
- 436 (* line bundle mask bits *)
- 437 LBB_COLOR = LSET{0};
- ***** ^ not supported yet
- 438 LBB_MIX_MODE = LSET{2};
- 439 LBB_WIDTH = LSET{4};
- 440 LBB_GEOM_WIDTH = LSET{5};
- 441 LBB_TYPE = LSET{6};
- 442 LBB_END = LSET{7};
- 443 LBB_JOIN = LSET{8};
- 444 (* character bundle mask bits *)
- 445 CBB_COLOR = LSET{0};
- 446 CBB_BACK_COLOR = LSET{1};
- 447 CBB_MIX_MODE = LSET{2};
- 448 CBB_BACK_MIX_MODE = LSET{3};
- 449 CBB_SET = LSET{4};
- 450 CBB_MODE = LSET{5};
- 451 CBB_BOX = LSET{6};
- 452 CBB_ANGLE = LSET{7};
- 453 CBB_SHEAR = LSET{8};
- 454 CBB_DIRECTION = LSET{9};
- 455 (* marker bundle mask bits *)
- 456 MBB_COLOR = LSET{0};
- 457 MBB_BACK_COLOR = LSET{1};
- 458 MBB_MIX_MODE = LSET{2};
- 459 MBB_BACK_MIX_MODE = LSET{3};
- 460 MBB_SET = LSET{4};
- 461 MBB_SYMBOL = LSET{5};
- 462 MBB_BOX = LSET{6};
- 463 (* pattern bundle mask bits *)
- 464 ABB_COLOR = LSET{0};
- 465 ABB_BACK_COLOR = LSET{1};
- 466 ABB_MIX_MODE = LSET{2};
- 467 ABB_BACK_MIX_MODE = LSET{3};
- 468 ABB_SET = LSET{4};
- 469 ABB_SYMBOL = LSET{5};
- 470 ABB_REF_POINT = LSET{6};
- 471 (* image bundle mask bits *)
- 472 IBB_COLOR = LSET{0};
- 473 IBB_BACK_COLOR = LSET{1};
- 474 IBB_MIX_MODE = LSET{2};
- 475 IBB_BACK_MIX_MODE = LSET{3};
- 476
- 477 TYPE
- 478 (* structure for GpiSetArcParams and GpiQueryArcParams *)
- 479 ARCPARAMS = RECORD
- 480 P,Q,R,S : LONGINT;
- 481 END;
- 482
- 483 (* variation of SIZE used for FIXEDs *)
- 484 SIZEF = RECORD
- 485 cx,cy : LONGINT;
- 486 END;
- 487
- 488 (* structure for gradient parameters e.g. for GpiSetCharAngle *)
- 489 GRADIENTL = RECORD
- 490 x,y : LONGINT;
- 491 END;
- 492
- 493 (* line bundle for GpiSetAttributes and GpiQueryAttributes *)
- 494 LINEBUNDLE = RECORD
- 495 Color : LONGINT;
- 496 Reserved : LONGINT;
- 497 MixMode : CARDINAL;
- 498 Reserved2 : CARDINAL;
- 499 Width : LONGINT;
- 500 GeomWidth : LONGINT;
- 501 Type : CARDINAL;
- 502 End : CARDINAL;
- 503 Join : CARDINAL;
- 504 END;
- 505
- 506 (* character bundle for GpiSetAttributes and GpiQueryAttributes *)
- 507 CHARBUNDLE = RECORD
- 508 Color : LONGINT;
- 509 BackColor : LONGINT;
- 510 MixMode : CARDINAL;
- 511 BackMixMode : CARDINAL;
- 512 Set : CARDINAL;
- 513 Precision : CARDINAL;
- 514 Cell : SIZEF;
- 515 Angle : POINTL;
- 516 Shear : POINTL;
- 517 Direction : CARDINAL;
- 518 END;
- 519
- 520 (* marker bundle for GpiSetAttributes and GpiQueryAttributes *)
- 521 MARKERBUNDLE = RECORD
- 522 Color : LONGINT;
- 523 BackColor : LONGINT;
- 524 MixMode : CARDINAL;
- 525 BackMixMode : CARDINAL;
- 526 Set : CARDINAL;
- 527 Symbol : CARDINAL;
- 528 Cell : SIZEF;
- 529 END;
- 530
- 531 (* pattern bundle for GpiSetAttributes and GpiQueryAttributes *)
- 532 AREABUNDLE = RECORD
- 533 Color : LONGINT;
- 534 BackColor : LONGINT;
- 535 MixMode : CARDINAL;
- 536 BackMixMode : CARDINAL;
- 537 Set : CARDINAL;
- 538 Symbol : CARDINAL;
- 539 RefPoint : POINTL;
- 540 END;
- 541
- 542 (* image bundle for GpiSetAttributes and GpiQueryAttributes *)
- 543 IMAGEBUNDLE = RECORD
- 544 Color : LONGINT;
- 545 BackColor : LONGINT;
- 546 MixMode : CARDINAL;
- 547 BackMixMode : CARDINAL;
- 548 END;
- 549 (* pointer to any bundle used by GpiSet/QueryAttrs *)
- 550 PBUNDLE = FarADDRESS;
- 551
- 552 CONST
- 553 (* array indices for GpiQueryTextBox *)
- 554 TXTBOX_TOPLEFT = 0; TXTBOX_BOTTOMLEFT = 1; TXTBOX_TOPRIGHT = 2; TXTBOX_BOTTOMRIGHT = 3;
- 555 TXTBOX_CONCAT = 4; TXTBOX_COUNT = 5;
- 556 (* return codes for GpiPtVisible *)
- 557 PVIS_ERROR = 0; PVIS_INVISIBLE = 1; PVIS_VISIBLE = 2;
- 558 (* return codes for GpiRectVisible *)
- 559 RVIS_ERROR = 0; RVIS_INVISIBLE = 1; RVIS_PARTIAL = 2; RVIS_VISIBLE = 3;
- 560
- 561 (*** attribute mode functions *)
- 562 PROCEDURE SetAttrMode(h:HPS; m:LONGINT) : BOOLEAN;
- 563 PROCEDURE QueryAttrMode(h:HPS) : LONGINT;
- 564 PROCEDURE SetAttrs(h:HPS; p:LONGINT; a,d:LSET; b:FarADDRESS) : BOOLEAN;
- 565 PROCEDURE QueryAttrs(h:HPS; p:LONGINT; a:LSET; b:FarADDRESS) : LSET;
- 566 PROCEDURE SetBackColor(h:HPS; c:LONGINT) : BOOLEAN;
- 567 PROCEDURE QueryBackColor(h:HPS) : LONGINT;
- 568 PROCEDURE SetMix(h:HPS; m:LONGINT) : BOOLEAN;
- 569 PROCEDURE QueryMix(h:HPS) : LONGINT;
- 570 PROCEDURE SetBackMix(h:HPS; c:LONGINT) : BOOLEAN;
- 571 PROCEDURE QueryBackMix(h:HPS) : LONGINT;
- 572 PROCEDURE SetLineType(h:HPS; t:LONGINT) : BOOLEAN;
- 573 PROCEDURE QueryLineType(h:HPS) : LONGINT;
- 574 PROCEDURE SetLineWidth(h:HPS; w:FIXED) : BOOLEAN;
- 575 PROCEDURE QueryLineWidth(h:HPS) : LONGINT;
- 576 PROCEDURE SetLineWidthGeom(h:HPS; w:LONGINT) : BOOLEAN;
- 577 PROCEDURE QueryLineWidthGeom(h:HPS) : LONGINT;
- 578 PROCEDURE SetLineEnd(h:HPS; e:LONGINT) : BOOLEAN;
- 579 PROCEDURE QueryLineEnd(h:HPS) : LONGINT;
- 580 PROCEDURE SetLineJoin(h:HPS; j:LONGINT) : BOOLEAN;
- 581 PROCEDURE QueryLineJoin(h:HPS) : LONGINT;
- 582 PROCEDURE SetCurrentPosition(h:HPS; VAR p:POINTL) : BOOLEAN;
- 583 PROCEDURE QueryCurrentPosition(h:HPS; VAR p:POINTL) : BOOLEAN;
- 584 PROCEDURE SetArcParams(h:HPS; VAR a:ARCPARAMS) : BOOLEAN;
- 585 PROCEDURE QueryArcParams(h:HPS; VAR a:ARCPARAMS) : BOOLEAN;
- 586 PROCEDURE PointArc(h:HPS; VAR p:POINTL) : HITSRET;
- 587 PROCEDURE FullArc(h:HPS; c:LONGINT; m:FIXED) : HITSRET;
- 588 PROCEDURE PartialArc(h:HPS; VAR p:POINTL; m:FIXED; a,s:LONGINT) : HITSRET;
- 589 PROCEDURE PolyFilletSharp(h:HPS; c:LONGCARD; p:ARRAY OF POINTL; s:ARRAY OF FIXED) : HITSRET;
- 590 PROCEDURE PolySpline(h:HPS; c:LONGCARD; p:ARRAY OF POINTL) : HITSRET;
- 591 PROCEDURE PolyFillet(h:HPS; c:LONGCARD; p:ARRAY OF POINTL) : HITSRET;
- 592 PROCEDURE SetPatternSet(h:HPS; s:LONGINT) : BOOLEAN;
- 593 PROCEDURE QueryPatternSet(h:HPS) : LONGINT;
- 594 PROCEDURE SetPatternRefPoint(h:HPS; VAR p:POINTL) : BOOLEAN;
- 595 PROCEDURE QueryPatternRefPoint(h:HPS; VAR p:POINTL) : BOOLEAN;
- 596 PROCEDURE QueryCharStringPos(h:HPS; o:LSET; c:LONGCARD; s:ARRAY OF CHAR; x:ARRAY OF LONGINT; VAR p:ARRAY OF POINTL) : BOOLEAN;
- 597 PROCEDURE QueryCharStringPosAt(h:HPS; VAR p:POINTL; o:LSET; c:LONGCARD; s:ARRAY OF CHAR; x:ARRAY OF LONGINT; VAR po:ARRAY OF POINTL) : BOOLEAN;
- 598 PROCEDURE QueryTextBox(h:HPS; c:LONGCARD; s:ARRAY OF CHAR; c2:LONGCARD; VAR p:ARRAY OF POINTL) : BOOLEAN;
- 599 PROCEDURE QueryDefCharBox(h:HPS; VAR s:SIZEL) : BOOLEAN;
- 600 PROCEDURE SetCharSet(h:HPS; i:LONGINT) : BOOLEAN;
- 601 PROCEDURE QueryCharSet(h:HPS) : LONGINT;
- 602 PROCEDURE SetCharBox(h:HPS; VAR b:SIZEF) : BOOLEAN;
- 603 PROCEDURE QueryCharBox(h:HPS; VAR s:SIZEF) : BOOLEAN;
- 604 PROCEDURE SetCharAngle(h:HPS; VAR a:GRADIENTL) : BOOLEAN;
- 605 PROCEDURE QueryCharAngle(h:HPS; VAR a:GRADIENTL) : BOOLEAN;
- 606 PROCEDURE SetCharShear(h:HPS; VAR p:POINTL) : BOOLEAN;
- 607 PROCEDURE QueryCharShear(h:HPS; VAR p:POINTL) : BOOLEAN;
- 608 PROCEDURE SetCharDirection(h:HPS; d:LONGINT) : BOOLEAN;
- 609 PROCEDURE QueryCharDirection(h:HPS) : LONGINT;
- 610 PROCEDURE SetCharMode(h:HPS; m:LONGINT) : BOOLEAN;
- 611 PROCEDURE QueryCharMode(h:HPS) : LONGINT;
- 612 PROCEDURE CharStringPos(h:HPS; VAR r:RECTL; o:LSET; c:LONGCARD; s:ARRAY OF CHAR; VAR i: ARRAY OF LONGINT) : HITSRET;
- 613 PROCEDURE CharStringPosAt(h:HPS; VAR p:POINTL; VAR r:RECTL; o:LSET; c:LONGCARD; s:ARRAY OF CHAR; VAR i:ARRAY OF LONGINT) : HITSRET;
- 614 PROCEDURE SetMarkerSet(h:HPS; s:LONGINT) : BOOLEAN;
- 615 PROCEDURE QueryMarkerSet(h:HPS) : LONGINT;
- 616 PROCEDURE SetMarker(h:HPS; s:LONGINT) : BOOLEAN;
- 617 PROCEDURE QueryMarker(h:HPS) :LONGINT;
- 618 PROCEDURE SetMarkerBox(h:HPS; VAR s:SIZEF) : BOOLEAN;
- 619 PROCEDURE QueryMarkerBox(h:HPS; VAR s:SIZEF) : BOOLEAN;
- 620 PROCEDURE Marker(h:HPS; VAR p:POINTL) : HITSRET;
- 621 PROCEDURE PolyMarker(h:HPS; c:LONGCARD; p:ARRAY OF POINTL) : GPIRET;
- 622 PROCEDURE Image(h:HPS; f:LONGINT; VAR s:SIZEL; l:LONGCARD; VAR d:ARRAY OF BYTE) : HITSRET;
- 623 PROCEDURE Pop(h:HPS; c:LONGCARD) : BOOLEAN;
- 624 PROCEDURE PtVisible(h:HPS; VAR p:POINTL) : LONGINT;
- 625 PROCEDURE RectVisible(h:HPS; VAR r:RECTL) : LONGINT;
- 626 PROCEDURE Comment(h:HPS; l:LONGCARD; VAR b:ARRAY OF BYTE) : BOOLEAN;
- 627
- 628 (*%E*)
- 629 (**)
- 630 (**--- Gpi LCIDS ----------------------------------------------------------*)
- 631 (**)
- 632 (*%T i_LCID*)
- 633
- 634 CONST
- 635 (* return codes from GpiCreateLogFont *)
- 636 FONT_DEFAULT = 1;
- 637 FONT_MATCH = 2;
- 638 (* lcid type for GpiQuerySetIds *)
- 639 LCIDT_FONT = 6;
- 640 LCIDT_BITMAP = 7;
- 641 LCID_ALL = -1;
- 642
- 643 TYPE
- 644 (* kerning data returned by GpiQueryKerningPairs *)
- 645 KERNINGPAIRS = RECORD
- 646 FirstChar : INTEGER;
- 647 SecondChar : INTEGER;
- 648 KerningAmount : INTEGER;
- 649 END;
- 650
- 651 CONST
- 652 (* options for GpiQueryFonts *)
- 653 QF_PUBLIC = LSET(01H);
- 654 QF_PRIVATE = LSET(02H);
- 655
- 656 TYPE
- 657 (* font file descriptions for GpiQueryFontFileDescriptions *)
- 658 FFDESCS = ARRAY [0..1] OF ARRAY [0..31] OF CHAR;
- 659
- 660 CONST
- 661 (* values of Selection field of FATTRS structure *)
- 662 FATTR_SEL_ITALIC = 001H;
- 663 FATTR_SEL_UNDERSCORE = 002H;
- 664 FATTR_SEL_OUTLINE = 008H;
- 665 FATTR_SEL_STRIKEOUT = 010H;
- 666 FATTR_SEL_BOLD = 020H;
- 667
- 668 (* values of Type field of FATTRS structure *)
- 669 FATTR_TYPE_FIXED = 002H;
- 670 FATTR_TYPE_KERNING = 004H;
- 671 FATTR_TYPE_MBCS = 008H;
- 672 FATTR_TYPE_DBCS = 010H;
- 673 FATTR_TYPE_ANTIALIASED= 020H;
- 674
- 675 (* values of FontUse field of FATTRS structure *)
- 676 FATTR_FONTUSE_NOMIX = 002H;
- 677 FATTR_FONTUSE_OUTLINE = 004H;
- 678 FATTR_FONTUSE_TRANSFORMABLE = 008H;
- 679
- 680 (* size for fields in the font structures *)
- 681 FACESIZE = 32;
- 682
- 683 TYPE
- 684 FATTRS = RECORD
- 685 RecordLength : CARDINAL;
- 686 Selection : CARDINAL;
- 687 Match : LONGINT;
- 688 FaceName : ARRAY [0..31] OF CHAR;
- 689 IdRegistry : CARDINAL;
- 690 CodePage : CARDINAL;
- 691 MaxBaselineExt : LONGINT;
- 692 AveCharWidth : LONGINT;
- 693 Type : CARDINAL;
- 694 FontUse : CARDINAL;
- 695 END;
- 696
- 697 CONST
- 698 (* values of fsType field of FONTMETRICS structure *)
- 699 FM_TYPE_FIXED = 0001H;
- 700 FM_TYPE_LICENSED = 0002H;
- 701 FM_TYPE_KERNING = 0004H;
- 702 FM_TYPE_DBCS = 0010H;
- 703 FM_TYPE_MBCS = 0018H;
- 704 FM_TYPE_64K = 8000H;
- 705
- 706 (* values of fsDefn field of FONTMETRICS structure *)
- 707 FM_DEFN_OUTLINE = 0;
- 708 FM_DEFN_GENERIC = 15;
- 709
- 710 (* values of fsSelection field of FONTMETRICS structure *)
- 711 FM_SEL_ITALIC = 0001H;
- 712 FM_SEL_UNDERSCORE = 0002H;
- 713 FM_SEL_NEGATIVE = 0004H;
- 714 FM_SEL_OUTLINE = 0008H; (* Hollow Outline Font *)
- 715 FM_SEL_STRIKEOUT = 0010H;
- 716 FM_SEL_BOLD = 0020H;
- 717
- 718 (* values of fsCapabilities field of FONTMETRICS structure *)
- 719 FM_CAP_NOMIX = 0001H;
- 720
- 721 TYPE
- 722 FONTMETRICS = RECORD
- 723 Familyname : ARRAY [0..31] OF CHAR;
- 724 Facename : ARRAY [0..31] OF CHAR;
- 725 IdRegistry : INTEGER;
- 726 CodePage : INTEGER;
- 727 EmHeight : LONGINT;
- 728 XHeight : LONGINT;
- 729 MaxAscender : LONGINT;
- 730 MaxDescender : LONGINT;
- 731 LowerCaseAscent : LONGINT;
- 732 LowerCaseDescent : LONGINT;
- 733 InternalLeading : LONGINT;
- 734 ExternalLeading : LONGINT;
- 735 AveCharWidth : LONGINT;
- 736 MaxCharInc : LONGINT;
- 737 EmInc : LONGINT;
- 738 MaxBaselineExt : LONGINT;
- 739 CharSlope : INTEGER;
- 740 InlineDir : INTEGER;
- 741 CharRot : INTEGER;
- 742 WeightClass : CARDINAL;
- 743 WidthClass : CARDINAL;
- 744 XDeviceRes : INTEGER;
- 745 YDeviceRes : INTEGER;
- 746 FirstChar : INTEGER;
- 747 LastChar : INTEGER;
- 748 DefaultChar : INTEGER;
- 749 BreakChar : INTEGER;
- 750 NominalPointSize : INTEGER;
- 751 MinimumPointSize : INTEGER;
- 752 MaximumPointSize : INTEGER;
- 753 Type : CARDINAL;
- 754 Defn : BITSET;
- 755 Selection : CARDINAL;
- 756 Capabilities : CARDINAL;
- 757 SubscriptXSize : LONGINT;
- 758 SubscriptYSize : LONGINT;
- 759 SubscriptXOffset : LONGINT;
- 760 SubscriptYOffset : LONGINT;
- 761 SuperscriptXSize : LONGINT;
- 762 SuperscriptYSize : LONGINT;
- 763 SuperscriptXOffset : LONGINT;
- 764 SuperscriptYOffset : LONGINT;
- 765 UnderscoreSize : LONGINT;
- 766 UnderscorePosition : LONGINT;
- 767 StrikeoutSize : LONGINT;
- 768 StrikeoutPosition : LONGINT;
- 769 KerningPairs : INTEGER;
- 770 Reserved : INTEGER;
- 771 Match : LONGINT;
- 772 END;
- 773
- 774 (*** physical and logical font functions *)
- 775 PROCEDURE DeleteSetId(h:HPS; i:LONGINT) : BOOLEAN;
- 776 PROCEDURE QueryNumberSetIds(h:HPS) : GPIRET;
- 777 PROCEDURE QuerySetIds(h:HPS; c:LONGCARD; VAR t:ARRAY OF LONGINT; VAR n:ARRAY OF STR8; VAR i:ARRAY OF LONGCARD) : BOOLEAN;
- 778 PROCEDURE LoadFonts(a:HAB; f:ARRAY OF CHAR) : BOOLEAN;
- 779 PROCEDURE UnloadFonts(a:HAB; f:ARRAY OF CHAR) : BOOLEAN;
- 780 PROCEDURE CreateLogFont(h:HPS; VAR n:STR8; i:LONGCARD; VAR a:FATTRS) : LONGINT;
- 781 PROCEDURE QueryFonts(h:HPS; o:LSET; f:ARRAY OF CHAR; VAR c:LONGINT; l:LONGINT; VAR m:ARRAY OF FONTMETRICS) : LONGINT;
- 782 PROCEDURE QueryFontMetrics(h:HPS; c:LONGCARD; VAR m:ARRAY OF FONTMETRICS) : BOOLEAN;
- 783 PROCEDURE QueryKerningPairs(h:HPS; c:LONGCARD; VAR d:ARRAY OF KERNINGPAIRS) : GPIRET;
- 784 PROCEDURE QueryWidthTable(h:HPS; f,c:LONGCARD; VAR d:ARRAY OF LONGCARD) : BOOLEAN;
- 785 PROCEDURE SetCp(h:HPS; p:CARDINAL) : BOOLEAN;
- 786 PROCEDURE QueryCp(h:HPS) : CARDINAL;
- 787 PROCEDURE QueryFontFileDescriptions(a:HAB; f:ARRAY OF CHAR; VAR c:LONGCARD; VAR d:ARRAY OF FFDESCS) : GPIRET;
- 788
- 789 (*%E*)
- 790 (**)
- 791 (**--- Gpi Common BITMAP functions ----------------------------------------*)
- 792 (**)
- 793 (*%T i_BITMAP1*)
- 794
- 795 CONST
- 796 (* rastor operations defined for GpiBitBlt *)
- 797 ROP_SRCCOPY = 0CCH; ROP_SRCPAINT = 0EEH; ROP_SRCAND = 088H; ROP_SRCINVERT = 066H;
- 798 ROP_SRCERASE = 044H; ROP_NOTSRCCOPY = 033H; ROP_NOTSRCERASE = 011H; ROP_MERGECOPY = 0C0H;
- 799 ROP_MERGEPAINT = 0BBH; ROP_PATCOPY = 0F0H; ROP_PATPAINT = 0FBH; ROP_PATINVERT = 05AH;
- 800 ROP_DSTINVERT = 055H; ROP_ZERO = 00H; ROP_ONE = 0FFH;
- 801 (* Blt options for GpiBitBlt *)
- 802 BBO_OR = LSET(0); BBO_AND = LSET(1); BBO_IGNORE = LSET(2);
- 803 (* error return for GpiSetBitmap *)
- 804 HBM_ERROR = HBITMAP(-1);
- 805
- 806 (*** bitmap and pel functions *)
- 807 PROCEDURE LoadBitmap(s:HPS; r:HMODULE; b:CARDINAL; w,h:LONGCARD) : HBITMAP;
- 808 PROCEDURE DeleteBitmap(b:HBITMAP) : BOOLEAN;
- 809 PROCEDURE SetBitmap(h:HPS; b:HBITMAP) : HBITMAP;
- 810 PROCEDURE BitBlt(t,s:HPS; c:LONGCARD; VAR p:ARRAY OF POINTL; r:LONGCARD; o:LSET) : HITSRET;
- 811 PROCEDURE WCBitBlt(h:HPS; b:HBITMAP; c:LONGCARD; p:ARRAY OF POINTL; r:LONGINT; o:LSET) : HITSRET;
- 812
- 813 (*%E*)
- 814 (**)
- 815 (**--- Gpi Uncommon BITMAP Funtions ---------------------------------------*)
- 816 (**)
- 817 (*%T i_BITMAP2*)
- 818
- 819 CONST
- 820 (* usage flags for GpiCreateBitmap *)
- 821 CBM_INIT = LSET(04H);
- 822
- 823 TYPE
- 824
- 825 (* bitmap parameterization used by GpiCreateBitmap and others *)
- 826 BITMAPINFOHEADER = RECORD
- 827 Fix : LONGCARD;
- 828 x : CARDINAL;
- 829 y : CARDINAL;
- 830 Planes : CARDINAL;
- 831 BitCount : CARDINAL;
- 832 END;
- 833
- 834 (* RGB data for _BITMAPINFO struct *)
- 835 RGB = RECORD
- 836 Blue : SHORTCARD;
- 837 Green : SHORTCARD;
- 838 Red : SHORTCARD;
- 839 END;
- 840
- 841 (* bitmap data used by GpiSetBitmapBits and others *)
- 842 BITMAPINFO = RECORD
- 843 Fix : LONGCARD;
- 844 x : CARDINAL;
- 845 y : CARDINAL;
- 846 Planes : CARDINAL;
- 847 BitCount : CARDINAL;
- 848 Color : ARRAY [0..0] OF RGB; (* *** *)
- 849 END;
- 850
- 851 CONST
- 852 (* error return code for GpiSet/QueryBitmapBits *)
- 853 BMB_ERROR = -1;
- 854
- 855 (*** bitmap and pel functions *)
- 856 PROCEDURE CreateBitmap(h:HPS; VAR n:BITMAPINFOHEADER; o:LSET; VAR d:ARRAY OF BYTE; VAR i:BITMAPINFO) : HBITMAP;
- 857 PROCEDURE SetBitmapDimension(b:HBITMAP; VAR s:SIZEL) : BOOLEAN;
- 858 PROCEDURE QueryBitmapDimension(b:HBITMAP; VAR s:SIZEL) : BOOLEAN;
- 859 PROCEDURE QueryDeviceBitmapFormats(h:HPS; c:LONGCARD; VAR a:ARRAY OF LONGINT) : BOOLEAN;
- 860 PROCEDURE QueryBitmapParameters(b:HBITMAP; VAR i:BITMAPINFOHEADER) : BOOLEAN;
- 861 PROCEDURE QueryBitmapBits(h:HPS; s,n:LONGCARD; VAR b:ARRAY OF BYTE; VAR i:BITMAPINFO) : GPIRET;
- 862 PROCEDURE SetBitmapBits(h:HPS; s,n :LONGCARD; b:ARRAY OF BYTE; VAR d:BITMAPINFO) : GPIRET;
- 863 PROCEDURE SetPel(h:HPS; VAR p:POINTL) : LONGINT;
- 864 PROCEDURE QueryPel(h:HPS; VAR p:POINTL) : GPIRET;
- 865 PROCEDURE SetBitmapId(h:HPS; b:HBITMAP; y:LONGINT) : BOOLEAN;
- 866 PROCEDURE QueryBitmapHandle(h:HPS; i:LONGINT) : HBITMAP;
- 867
- 868 (*%E*)
- 869 (**)
- 870 (**--- Bitmap file formats ------------------------------------------------*)
- 871 (**)
- 872 (*%T i_BITMAP3*)
- 873
- 874 (*
- 875 * This is the file format structure for Bit Maps, Pointers and Icons
- 876 * as stored in the resource file of a PM application.
- 877 *
- 878 * Notes on file format:
- 879 * Each BITMAPFILEHEADER entry is immediately followed by the color table
- 880 * for the bit map bits it references.
- 881 * Icons and Pointers contain two BITMAPFILEHEADERs for each ARRAYHEADER
- 882 * item. The first one is for the ANDXOR mask, the second is for the
- 883 * COLOR mask. All offsets are absolute based on the start of the FILE.
- 884 *)
- 885
- 886 TYPE
- 887 BITMAPFILEHEADER = RECORD
- 888 Type: CARDINAL;
- 889 Size: LONGCARD;
- 890 xHotspot: INTEGER;
- 891 yHotspot: INTEGER;
- 892 offBits : LONGCARD;
- 893 bmp : BITMAPINFOHEADER;
- 894 END;
- 895
- 896 (* This is the 1.2 device independent format header *)
- 897 BITMAPARRAYFILEHEADER = RECORD
- 898 Type: CARDINAL;
- 899 Size: LONGCARD;
- 900 offNext : LONGCARD;
- 901 cxDisplay: CARDINAL;
- 902 cyDisplay: CARDINAL;
- 903 bfh : BITMAPFILEHEADER;
- 904 END;
- 905
- 906 (* These are the identifying values that go in the usType field of the
- 907 * BITMAPFILEHEADER and BITMAPARRAYFILEHEADER. (BFT_ => Bit map File Type) *)
- 908 CONST
- 909 BFT_ICON = 04349H; (* 'IC' *)
- 910 BFT_BMAP = 04D42H; (* 'BM' *)
- 911 BFT_POINTER = 05450H; (* 'PT' *)
- 912 BFT_COLORICON = 04943H; (* 'CI' *)
- 913 BFT_COLORPOINTER = 05043H; (* 'CP' *)
- 914 BFT_BITMAPARRAY = 04142H; (* 'BA' *)
- 915
- 916 (*%E*)
- 917 (**)
- 918 (**--- Gpi Regions --------------------------------------------------------*)
- 919 (**)
- 920 (*%T i_REGION*)
- 921
- 922 CONST
- 923 (* options for GpiCombineRegion *)
- 924 CRGN_OR = 1; CRGN_COPY = 2; CRGN_XOR = 4; CRGN_AND = 6; CRGN_DIFF = 7;
- 925 (* usDirection of returned region data for GpiQueryRegionRects *)
- 926 RECTDIR_LFRT_TOPBOT = 1; RECTDIR_RTLF_TOPBOT = 2; RECTDIR_LFRT_BOTTOP = 3; RECTDIR_RTLF_BOTTOP = 4;
- 927
- 928 TYPE
- 929
- 930 (* control data for GpiQueryRegionRects *)
- 931 RGNRECT = RECORD
- 932 Start : CARDINAL;
- 933 crc : CARDINAL;
- 934 crcReturned : CARDINAL;
- 935 Direction : CARDINAL;
- 936 END;
- 937
- 938 CONST
- 939 (* return code to indicate type of region for GpiCombineRegion and others *)
- 940 RGN_ERROR = 0; RGN_NULL = 1; RGN_RECT = 2; RGN_COMPLEX = 3;
- 941 (* return codes for GpiPtInRegion *)
- 942 PRGN_ERROR = 0; PRGN_OUTSIDE = 1; PRGN_INSIDE = 2;
- 943 (* return codes for GpiRectInRegion *)
- 944 RRGN_ERROR = 0; RRGN_OUTSIDE = 1; RRGN_PARTIAL = 2; RRGN_INSIDE = 3;
- 945 (* return codes for GpiEqualRegion *)
- 946 EQRGN_ERROR = 0; EQRGN_NOTEQUAL = 1; EQRGN_EQUAL = 2;
- 947 (* error return code for GpiSetRegion *)
- 948 HRGN_ERROR = HRGN(-1);
- 949
- 950 (*** main region functions *)
- 951 PROCEDURE CreateRegion(h:HPS; c:LONGCARD; VAR r:ARRAY OF RECTL) : HRGN;
- 952 PROCEDURE SetRegion(h:HPS; r:HRGN; c:LONGCARD; a:ARRAY OF RECTL) : BOOLEAN;
- 953 PROCEDURE DestroyRegion(h:HPS; r:HRGN) : BOOLEAN;
- 954 PROCEDURE CombineRegion(h:HPS; d,s1,s2:HRGN; m:LONGCARD) : LONGINT;
- 955 PROCEDURE EqualRegion(h:HPS; s1,s2:HRGN) : LONGINT;
- 956 PROCEDURE OffsetRegion(h:HPS; r:HRGN; VAR p:POINTL) : BOOLEAN;
- 957 PROCEDURE PtInRegion(h:HPS; r:HRGN; VAR p:POINTL) : LONGINT;
- 958 PROCEDURE RectInRegion(h:HPS; r:HRGN; VAR t:RECTL) : LONGINT;
- 959 PROCEDURE QueryRegionBox(h:HPS; r:HRGN; VAR b:RECTL) : LONGINT;
- 960 PROCEDURE QueryRegionRects(h:HPS; r:HRGN; VAR b:RECTL; VAR c:RGNRECT; VAR a:ARRAY OF RECTL) : BOOLEAN;
- 961 PROCEDURE PaintRegion(h:HPS; r:HRGN) : HITSRET;
- 962 PROCEDURE SetClipRegion(h:HPS; r:HRGN; VAR o:HRGN) : LONGINT;
- 963 PROCEDURE QueryClipRegion(h:HPS) : HRGN;
- 964 PROCEDURE QueryClipBox(h:HPS; VAR r:RECTL) : LONGINT;
- 965 PROCEDURE IntersectClipRectangle(h:HPS; VAR r:RECTL) : LONGINT;
- 966 PROCEDURE ExcludeClipRectangle(h:HPS; VAR r:RECTL) : LONGINT;
- 967 PROCEDURE OffsetClipRegion(h:HPS; VAR p:POINTL) : LONGINT;
- 968
- 969 (*%E*)
- 970 (**)
- 971 (**--- Gpi Metafiles ------------------------------------------------------*)
- 972 (**)
- 973 (*%T i_METAF*)
- 974
- 975 CONST
- 976 (* constants for index values of options array for GpiPlayMetafile *)
- 977 PMF_SEGBASE = 0; PMF_LOADTYPE = 1; PMF_RESOLVE = 2; PMF_LCIDS = 3;
- 978 PMF_RESET = 4; PMF_SUPPRESS = 5; PMF_COLORTABLES = 6; PMF_COLORREALIZABLE = 7;
- 979 (* options for GpiPlayMetafile *)
- 980 RS_DEFAULT = 0; RS_NODISCARD = 1;
- 981 LC_DEFAULT = 0; LC_NOLOAD = 1; LC_LOADDISC = 3;
- 982 LT_DEFAULT = 0; LT_NOMODIFY = 1; LT_ORIGINALVIEW = 4;
- 983 RES_DEFAULT = 0; RES_NORESET = 1; RES_RESET = 2;
- 984 SUP_DEFAULT = 0; SUP_NOSUPPRESS = 1; SUP_SUPPRESS = 2;
- 985 CTAB_DEFAULT = 0; CTAB_NOMODIFY = 1; CTAB_REPLACE = 3;
- 986 CREA_DEFAULT = 0; CREA_REALIZE = 1; CREA_NOREALIZE = 2;
- 987 DDEF_DEFAULT = 0; DDEF_IGNORE = 1; DDEF_LOADDISC = 3;
- 988 RSP_DEFAULT = 0; RSP_NODISCARD = 1;
- 989
- 990 PROCEDURE LoadMetaFile(a:HAB; f:ARRAY OF CHAR) : HMF;
- 991 PROCEDURE PlayMetaFile(h:HPS; f:HMF; c1:LONGCARD; VAR o:ARRAY OF LONGINT; VAR s:LONGCARD; c2:LONGCARD; VAR d:ARRAY OF BYTE) : HITSRET;
- 992 PROCEDURE SaveMetaFile(f:HMF; n:ARRAY OF CHAR) : BOOLEAN;
- 993 PROCEDURE DeleteMetaFile(f:HMF) : BOOLEAN;
- 994 PROCEDURE CopyMetaFile(f:HMF) : HMF;
- 995 PROCEDURE QueryMetaFileLength(f:HMF) : GPIRET;
- 996 PROCEDURE QueryMetaFileBits(f:HMF; o,c:LONGCARD; VAR d:ARRAY OF BYTE) : BOOLEAN;
- 997 PROCEDURE SetMetaFileBits(f:HMF; o,c:LONGCARD; d:ARRAY OF BYTE) : BOOLEAN;
- 998
- 999 (*%E*)
- 1000 (**)
- 1001 (**--- Gpi Defaults ------------------------------------------------------*)
- 1002 (**)
- 1003 (*%T i_DEFAULT*)
- 1004
- 1005 (* default functions *)
- 1006 PROCEDURE QueryDefArcParams(h:HPS; VAR a:ARCPARAMS): BOOLEAN;
- 1007 PROCEDURE QueryDefAttrs(h:HPS; Prim: LONGINT; Mask: LONGCARD; bun: PBUNDLE): BOOLEAN;
- 1008 PROCEDURE QueryDefTag(h:HPS; VAR Tag: LONGINT): BOOLEAN;
- 1009 PROCEDURE QueryDefViewingLimits(h:HPS; VAR Limits: RECTL): BOOLEAN;
- 1010 PROCEDURE SetDefArcParams(h:HPS; VAR p: ARCPARAMS): BOOLEAN;
- 1011 PROCEDURE SetDefAttrs(h:HPS; Prim: LONGINT; Mask: LSET; bun: PBUNDLE): BOOLEAN;
- 1012 PROCEDURE SetDefTag(h:HPS; Tag: LONGINT): BOOLEAN;
- 1013 PROCEDURE SetDefViewingLimits(h:HPS; VAR Limits:RECTL): BOOLEAN;
- 1014
- 1015 (*%E*)
- 1016 (**)
- 1017 (**--- GOCA Orders --------------------------------------------------------*)
- 1018 (**)
- 1019 (*%T i_ORDER*)
- 1020
- 1021 (* form of RECTL with shorts instead of longs *)
- 1022 TYPE
- 1023 RECT1S = RECORD
- 1024 xLeft,
- 1025 yBottom,
- 1026 xRight,
- 1027 yTop: INTEGER;
- 1028 END;
- 1029
- 1030 (* form of POINTL with 1 byte offsets instead of longs *)
- 1031 ODPOINT = RECORD
- 1032 dx,dy: SHORTCARD;
- 1033 END;
- 1034
- 1035 (* form of SIZEL with shorts instead of longs *)
- 1036 SIZES = RECORD
- 1037 cx,cy: INTEGER;
- 1038 END;
- 1039
- 1040 (* unsigned two-byte swapped integer *)
- 1041 SWPUSHORT = RECORD
- 1042 HiByte: SHORTCARD;
- 1043 LoByte: SHORTCARD;
- 1044 END;
- 1045
- 1046 CONST
- 1047 (* 1-byte order codes *)
- 1048 OCODE_GNOP1 = 000H; (* No-operation *)
- 1049 OCODE_GESD = 0FFH; (* End symbol definition *)
- 1050
- 1051 (* definitions to help determine whether an order code is a 2-byte order *)
- 1052 OCODE2_1 = 080H;
- 1053 OCODE2_2 = 088H;
- 1054
- 1055 TYPE
- 1056 (* General 2-byte order structure *)
- 1057 ORDER = RECORD
- 1058 Code,Data: SHORTCARD;
- 1059 END;
- 1060
- 1061 CONST
- 1062 (* 2-byte order codes *)
- 1063 OCODE_GBAR = 068H; (* Begin area *)
- 1064 OCODE_GCFIG = 07DH; (* Close figure *)
- 1065 OCODE_GEEL = 049H; (* End element *)
- 1066 OCODE_GEPTH = 07FH; (* End path *)
- 1067 OCODE_GEPROL = 03EH; (* End prologue *)
- 1068 OCODE_GPOP = 03FH; (* Pop *)
- 1069 OCODE_GSBMX = 00DH; (* Set background mix *)
- 1070 OCODE_GPSBMX = 04DH; (* Push & set b/g mix *)
- 1071 OCODE_GSCD = 03AH; (* Set char direction *)
- 1072 OCODE_GPSCD = 07AH; (* Push & set char direction *)
- 1073 OCODE_GSCR = 039H; (* Set char precision *)
- 1074 OCODE_GPSCR = 079H; (* Push & set char precision *)
- 1075 OCODE_GSCS = 038H; (* Set char set *)
- 1076 OCODE_GPSCS = 078H; (* Push & set char set *)
- 1077 OCODE_GSCOL = 00AH; (* Set color *)
- 1078 OCODE_GPSCOL = 04AH; (* Push & set color *)
- 1079 OCODE_GSLE = 01AH; (* Set line end *)
- 1080 OCODE_GPSLE = 05AH; (* Push & set line end *)
- 1081 OCODE_GSLJ = 01BH; (* Set line join *)
- 1082 OCODE_GPSLJ = 05BH; (* Push & set line join *)
- 1083 OCODE_GSLT = 018H; (* Set line type *)
- 1084 OCODE_GPSLT = 058H; (* Push & set line type *)
- 1085 OCODE_GSLW = 019H; (* Set line width *)
- 1086 OCODE_GPSLW = 059H; (* Push & set line width *)
- 1087 OCODE_GSMP = 03BH; (* Set marker precision *)
- 1088 OCODE_GPSMP = 07BH; (* Push & set marker precision *)
- 1089 OCODE_GSMS = 03CH; (* Set marker set *)
- 1090 OCODE_GPSMS = 07CH; (* Push & set marker set *)
- 1091 OCODE_GSMT = 029H; (* Set marker symbol *)
- 1092 OCODE_GPSMT = 069H; (* Push & set marker symbol *)
- 1093 OCODE_GSMX = 00CH; (* Set mix *)
- 1094 OCODE_GPSMX = 04CH; (* Push & set mix *)
- 1095 OCODE_GSPS = 008H; (* Set pattern set *)
- 1096 OCODE_GPSPS = 048H; (* Push & set pattern set *)
- 1097 OCODE_GSPT = 028H; (* Set pattern symbol *)
- 1098 OCODE_GPSPT = 009H; (* Push & set pattern symbol *)
- 1099
- 1100 (* constants for 2-byte orders *)
- 1101
- 1102 (* Begin area *)
- 1103 GBAR_RESERVED = 080H;
- 1104 GBAR_BOUNDARY = 0C0H;
- 1105 GBAR_NOBOUNDARY = 080H;
- 1106 GBAR_WINDING = 0A0H;
- 1107 GBAR_ALTERNATE = 080H;
- 1108
- 1109 (* Set Character Precision *)
- 1110 GSCR_PRECISION = 00FH;
- 1111
- 1112 (* definitions to help determine whether an order code is a long order *)
- 1113
- 1114 OCODE_VLONG = 0FEH;
- 1115
- 1116 (* long order structure *)
- 1117 LORDER_ML = 253;
- 1118
- 1119 TYPE
- 1120 LORDER = RECORD
- 1121 Code,length: SHORTCARD;
- 1122 Data: ARRAY [0..LORDER_ML] OF SHORTCARD;
- 1123 END;
- 1124
- 1125 CONST
- 1126 (* Long orders for which the length of data is normally zero *)
- 1127 OCODE_GEAR = 060H; (* End Area *)
- 1128 OCODE_GEIMG = 093H; (* End Image *)
- 1129
- 1130 (* Long orders for which the data is contained in a type already defined *)
- 1131
- 1132 (* Character String *)
- 1133 OCODE_GCCHST = 083H; (* char string at curr posn *)
- 1134 GCCHST_MC = 255; (* Max len of string in bytes *)
- 1135
- 1136 OCODE_GCHST = 0C3H; (* char string at given pos *)
- 1137 GCHST_SMC = 251; (* Max len of string (S) *)
- 1138 GCHST_LMC = 247; (* Max len of string (L) *)
- 1139
- 1140 (* Character String Move *)
- 1141 OCODE_GCCHSTM = 0B1H; (* char string move at c.p. *)
- 1142 GCCHSTM_MC = 255; (* Max len of string in byte *)
- 1143
- 1144 OCODE_GCHSTM = 0F1H; (* char string move at g.p. *)
- 1145 GCHSTM_SMC = 251; (* Max len of string (S) *)
- 1146 GCHSTM_LMC = 247; (* Max len of string (L) *)
- 1147
- 1148 (* Comment *)
- 1149 OCODE_GCOMT = 001H; (* Comment *)
- 1150 GCOMT_ML = 255; (* Maximum len of comment data *)
- 1151
- 1152 (* Image *)
- 1153 OCODE_GIMD = 092H; (* Image data *)
- 1154 GIMD_ML = 255; (* Maximum len of image data *)
- 1155
- 1156 (* Full Arc *)
- 1157 OCODE_GCFARC = 087H; (* full arc at current posn *)
- 1158 OCODE_GFARC = 0C7H; (* full arc at given posn *)
- 1159
- 1160 (* Label *)
- 1161 OCODE_GLABL = 0D3H; (* Label *)
- 1162
- 1163 (* Set Current Position *)
- 1164 OCODE_GSCP = 021H; (* Set current position *)
- 1165 OCODE_GPSCP = 061H; (* Push and set curr posn *)
- 1166
- 1167 (* Bezier spline *)
- 1168 OCODE_GCBEZ = 0A5H; (* Bezier spline at curr pos *)
- 1169 GCBEZ_SMB = 21; (* Max number of splines (S) *)
- 1170 GCBEZ_LMB = 10; (* Max number of splines (L) *)
- 1171
- 1172 OCODE_GBEZ = 0E5H; (* Bezier spline at given pos *)
- 1173 GBEZ_SMB = 20; (* Max number of splines (S) *)
- 1174 GBEZ_LMB = 10; (* Max number of splines (L) *)
- 1175
- 1176 (* Fillet *)
- 1177 OCODE_GCFLT = 085H; (* fillet at current posn *)
- 1178 GCFLT_SMP = 63; (* Max number of points (S) *)
- 1179 GCFLT_LMP = 31; (* Max number of points (L) *)
- 1180
- 1181 OCODE_GFLT = 0C5H; (* fillet at given position *)
- 1182 GFLT_SMP = 62; (* Max number of points (S) *)
- 1183 GFLT_LMP = 30; (* Max number of points (L) *)
- 1184
- 1185 (* Polyline *)
- 1186 OCODE_GCLINE = 081H; (* polyline at current posn *)
- 1187 GCLINE_SMP = 63; (* Max number of points (S) *)
- 1188 GCLINE_LMP = 31; (* Max number of points (L) *)
- 1189
- 1190 OCODE_GLINE = 0C1H; (* polyline at given posn *)
- 1191 GLINE_SMP = 62; (* Max number of points (S) *)
- 1192 GLINE_LMP = 30; (* Max number of points (L) *)
- 1193
- 1194 (* Polymarker *)
- 1195 OCODE_GCMRK = 082H; (* marker at current posn *)
- 1196 GCMRK_SMP = 63; (* Max number of points (S) *)
- 1197 GCMRK_LMP = 31; (* Max number of points (L) *)
- 1198
- 1199 OCODE_GMRK = 0C2H; (* marker at given posn *)
- 1200 GMRK_SMP = 62; (* Max number of points (S) *)
- 1201 GMRK_LMP = 30; (* Max number of points (L) *)
- 1202
- 1203 (* Relative Line *)
- 1204 OCODE_GCRLINE = 0A1H; (* Relative line at curr pos *)
- 1205 GCRLINE_MP = 127; (* Max number of points *)
- 1206
- 1207 OCODE_GRLINE = 0E1H; (* Relative line at givn pos *)
- 1208 GRLINE_SMP = 125; (* Max number of points (S) *)
- 1209 GRLINE_LMP = 123; (* Max number of points (L) *)
- 1210
- 1211 (* Set Background Color *)
- 1212 OCODE_GSBCOL = 025H; (* Set background color *)
- 1213 OCODE_GPSBCOL = 065H; (* Push and set b/g color *)
- 1214
- 1215 (* Set Extended Color *)
- 1216 OCODE_GSECOL = 026H; (* Set extended color *)
- 1217 OCODE_GPSECOL = 066H; (* Push and set ext color *)
- 1218
- 1219 (* Extended Color values *)
- 1220 SECOL_DEFAULT0 = 00000H;
- 1221 SECOL_DEFAULT1 = 0FF00H;
- 1222 SECOL_NEUTRAL = 0FF07H;
- 1223 SECOL_RESET = 0FF08H;
- 1224
- 1225 (* Set Character Angle *)
- 1226 OCODE_GSCA = 034H; (* Set character angle *)
- 1227 OCODE_GPSCA = 074H; (* Push and set char angle *)
- 1228
- 1229 (* Set Character Shear *)
- 1230 OCODE_GSCH = 035H; (* Set character shear *)
- 1231 OCODE_GPSCH = 075H; (* Push and set char shear *)
- 1232
- 1233 (* Set Fractional Line Width *)
- 1234 OCODE_GSFLW = 011H; (* Set fractional line width *)
- 1235 OCODE_GPSFLW = 051H; (* Push and set frac l width *)
- 1236
- 1237 (* Set Pick Identifier *)
- 1238 OCODE_GSPIK = 043H; (* Set pick identifier *)
- 1239 OCODE_GPSPIK = 023H; (* Push and set pick id *)
- 1240 OCODE_GCARC = 086H; (* Arc at Current Position *)
- 1241 OCODE_GARC = 0C6H; (* Arc at Given Position *)
- 1242 OCODE_GBEL = 0D2H; (* Begin Element *)
- 1243 GBEL_DL = 251;
- 1244 OCODE_GCBIMG = 091H; (* Begin Image at curr posn *)
- 1245 OCODE_GBIMG = 0D1H; (* Begin Image at given posn *)
- 1246 OCODE_GBPTH = 0D0H; (* Begin Path *)
- 1247 OCODE_GCBOX = 080H; (* Box at current position *)
- 1248 OCODE_GBOX = 0C0H; (* Box at given position *)
- 1249 GCBOX_FILL = 040H;
- 1250 GCBOX_BOUNDARY = 020H;
- 1251 OCODE_GCALLS = 007H; (* call segment *)
- 1252 OCODE_GFPTH = 0D7H; (* Fill path *)
- 1253 GFPTH_ALTERNATE = 000H;
- 1254 GFPTH_WINDING = 040H;
- 1255 GFPTH_MODIFY = 020H;
- 1256 OCODE_GOPTH = 0D4H; (* Outline Path *)
- 1257 OCODE_GMPTH = 0D8H; (* modify path *)
- 1258 GMPTH_STROKE = 006H;
- 1259 OCODE_GCPARC = 0A3H; (* Partial arc at curr posn *)
- 1260 OCODE_GPARC = 0E3H; (* Partial arc at given posn *)
- 1261 OCODE_GSCPTH = 0B4H; (* Set clip path *)
- 1262 GSCPTH_ALTERNATE = 000H;
- 1263 GSCPTH_WINDING = 040H;
- 1264 GSCPTH_RESET = 000H;
- 1265 GSCPTH_INTERSECT = 020H;
- 1266 OCODE_GSAP = 022H; (* Set arc parameters *)
- 1267 OCODE_GPSAP = 062H; (* Push and set arc params *)
- 1268 OCODE_GSBICOL = 0A7H; (* Set b/g indexed color *)
- 1269 OCODE_GPSBICOL = 0E7H; (* Push and set b/g ind color *)
- 1270 OCODE_GSICOL = 0A6H; (* Set indexed color *)
- 1271 OCODE_GPSICOL = 0E6H; (* Push and set indexd color *)
- 1272 SICOL_SPECIFY = 000H;
- 1273 SICOL_SPECIAL = 040H;
- 1274 SICOL_DEFAULT = 080H;
- 1275 SICOL_BLACK = 1;
- 1276 SICOL_WHITE = 2;
- 1277 SICOL_ONES = 4;
- 1278 SICOL_ZEROES = 5;
- 1279 OCODE_GSCC = 033H; (* Set character cell *)
- 1280 OCODE_GPSCC = 003H; (* Push and set char cell *)
- 1281 GSCC_ZERODEF = 000H;
- 1282 GSCC_ZEROZERO = 080H;
- 1283 OCODE_GPSMC = 077H; (* Push and set marker cell *)
- 1284 GSMC_ZERODEF = 000H;
- 1285 GSMC_ZEROZERO = 080H;
- 1286 OCODE_GSPRP = 0A0H; (* Set pattern ref point *)
- 1287 OCODE_GPSPRP = 0E0H; (* Push and set patt ref pt *)
- 1288 GSPRP_DEFAULT = 080H;
- 1289 GSPRP_SPECIFY = 000H;
- 1290 OCODE_GSIA = 014H; (* Set individual attribute *)
- 1291 OCODE_GPSIA = 054H; (* Push and set ind attr *)
- 1292 GSIA_COLOR = 001H;
- 1293 GSIA_BCOLOR = 002H;
- 1294 GSIA_MIX = 003H;
- 1295 GSIA_BMIX = 004H;
- 1296 GSIA_LINE = 001H;
- 1297 GSIA_CHAR = 002H;
- 1298 GSIA_MARKER = 003H;
- 1299 GSIA_PATTERN = 004H;
- 1300 GSIA_IMAGE = 005H;
- 1301 GSIA_SPECIFY = 000H;
- 1302 GSIA_SPECIAL = 040H;
- 1303 GSIA_DEFAULT = 080H;
- 1304 GSIA_BLACK = 1;
- 1305 GSIA_WHITE = 2;
- 1306 GSIA_ONES = 4;
- 1307 GSIA_ZEROES = 5;
- 1308 OCODE_GSTM = 024H; (* Set model transform *)
- 1309 OCODE_GPSTM = 064H; (* Push and set model tfm *)
- 1310 OCODE_GSTV = 031H; (* Set Viewing Transform *)
- 1311 GSTM_ML = 16;
- 1312 GSTM_M11 = 08000H;
- 1313 GSTM_M12 = 04000H;
- 1314 GSTM_M13 = 02000H;
- 1315 GSTM_M14 = 01000H;
- 1316 GSTM_M21 = 00800H;
- 1317 GSTM_M22 = 00400H;
- 1318 GSTM_M23 = 00200H;
- 1319 GSTM_M24 = 00100H;
- 1320 GSTM_M31 = 00080H;
- 1321 GSTM_M32 = 00040H;
- 1322 GSTM_M33 = 00020H;
- 1323 GSTM_M34 = 00010H;
- 1324 GSTM_M41 = 00008H;
- 1325 GSTM_M42 = 00004H;
- 1326 GSTM_M43 = 00002H;
- 1327 GSTM_M44 = 00001H;
- 1328 GSTM_UNITY = 000H;
- 1329 GSTM_AFTER = 001H;
- 1330 GSTM_BEFORE = 002H;
- 1331 GSTM_OVERWRITE = 003H;
- 1332 GSTV_OVERWRITE = 000H;
- 1333 GSTV_AFTER = 004H;
- 1334 OCODE_GSSB = 032H; (* Set segment boundary *)
- 1335 OCODE_GSVW = 027H; (* Set viewing window *)
- 1336 OCODE_GPSVW = 067H; (* Push and set view window *)
- 1337 GSSB_ML = 4;
- 1338 GSSB_XLEFT = 020H;
- 1339 GSSB_XRIGHT = 010H;
- 1340 GSSB_YBOTTOM = 008H;
- 1341 GSSB_YTOP = 004H;
- 1342 GSVW_INTERSECT = 000H;
- 1343 GSVW_REPLACE = 080H;
- 1344 OCODE_GSGCH = 004H; (* Set segment characteristics *)
- 1345 GSGCH_ML = 254;
- 1346 OCODE_GSSLW = 015H; (* Set stroke line width *)
- 1347 OCODE_GPSSLW = 055H; (* Push and set strk l width *)
- 1348 GSSLW_DEFAULT = 080H;
- 1349 GSSLW_SPECIFY = 000H;
- 1350 OCODE_GCSFLT = 0A4H; (* Sharp fillet at curr pos *)
- 1351 OCODE_GSFLT = 0E4H; (* Sharp fillet at given pos *)
- 1352 GCSFLT_SMF = 21;
- 1353 GSFLT_SMF = 20;
- 1354 GCSFLT_LMF = 12;
- 1355 GSFLT_LMF = 12;
- 1356 OCODE_GBBLT = 0D6H; (* Bitblt *)
- 1357 OCODE_GESCP = 0D5H; (* Escape *)
- 1358 GESCP_ML = 253;
- 1359 GESCP_REG = 080H; (* identifier is registered *)
- 1360 GEBB_REGID = 002H; (* uchIdent - Bitblt *)
- 1361 ETYPE_GEBB = 0800200D5H;
- 1362 GEBB_LMP = 29;
- 1363 GEPEL_REGID = 001H; (* uchIdent - Set Pel *)
- 1364 ETYPE_GEPEL = 0800100D5H;
- 1365 ETYPE_LINEBUNDLE = 00000FD01H;
- 1366 ETYPE_CHARBUNDLE = 00000FD02H;
- 1367 ETYPE_MARKERBUNDLE = 00000FD03H;
- 1368 ETYPE_AREABUNDLE = 00000FD04H;
- 1369 ETYPE_IMAGEBUNDLE = 00000FD05H;
- 1370
- 1371 (***************************************************************************\
- 1372 *
- 1373 * Very long orders
- 1374 *
- 1375 \***************************************************************************)
- 1376
- 1377 (* Very long order structure *)
- 1378 CONST
- 1379 VORDER_ML = 65530;
- 1380 TYPE
- 1381 VORDER = RECORD
- 1382 Code: SHORTCARD;
- 1383 Qual: SHORTCARD;
- 1384 Length: SWPUSHORT;
- 1385 DATA: ARRAY [0..VORDER_ML-1] OF SHORTCARD;
- 1386 END;
- 1387
- 1388 CONST
- 1389 (* Character String Extended *)
- 1390 OCODEQ_GCCHSTE = 0B0H; (* Qualifier - current posn *)
- 1391 OCODEQ_GCHSTE = 0F0H; (* Qualifier - given position *)
- 1392 ETYPE_GCCHSTE = 00000FEB0H;
- 1393 ETYPE_GCHSTE = 00000FEF0H;
- 1394 GCCHSTE_DRAWRECT = 080H;
- 1395 GCCHSTE_NORECT = 000H;
- 1396 GCCHSTE_CLIP = 040H;
- 1397 GCCHSTE_NOCLIP = 000H;
- 1398 GCCHSTE_DEEMPHASIZE = 020H;
- 1399 GCCHSTE_NODEEMPHASIZE = 000H;
- 1400 GCCHSTE_LEAVEPOS = 010H;
- 1401 GCCHSTE_MOVEPOS = 000H;
- 1402
- 1403 OCODEQ_GEESCP = 0D5H; (* Qualifier - extended escape *)
- 1404
- 1405 (*%E*)
- 1406 (**)
- 1407 (**--- Font stuff ---------------------------------------------------------*)
- 1408 (**)
- 1409 (*%T i_FONT*)
- 1410 TYPE
- 1411 FOCAMETRICS = RECORD
- 1412 Identity : LONGCARD;
- 1413 Size : LONGCARD;
- 1414 Familyname: ARRAY[0..31] OF CHAR;
- 1415 Facename : ARRAY[0..31] OF CHAR;
- 1416 RegistryId: INTEGER;
- 1417 CodePage : INTEGER;
- 1418 EmHeight : INTEGER;
- 1419 XHeight : INTEGER;
- 1420 yMaxAscender : INTEGER;
- 1421 yMaxDescender : INTEGER;
- 1422 yLowerCaseAscent : INTEGER;
- 1423 yLowerCaseDescent: INTEGER;
- 1424 yInternalLeading : INTEGER;
- 1425 yExternalLeading : INTEGER;
- 1426 xAveCharWidth : INTEGER;
- 1427 xMaxCharInc : INTEGER;
- 1428 xEmInc : INTEGER;
- 1429 yMaxBaselineExt : INTEGER;
- 1430 CharSlope : INTEGER;
- 1431 InlineDir : INTEGER;
- 1432 CharRot : INTEGER;
- 1433 WeightClass: CARDINAL;
- 1434 WidthClass : CARDINAL;
- 1435 xDeviceRes : INTEGER;
- 1436 yDeviceRes : INTEGER;
- 1437 FirstChar : INTEGER;
- 1438 LastChar : INTEGER;
- 1439 DefaultChar: INTEGER;
- 1440 BreakChar : INTEGER;
- 1441 NominalPointSize : INTEGER;
- 1442 MinimumPointSize : INTEGER;
- 1443 MaximumPointSize : INTEGER;
- 1444 TypeFlags : INTEGER;
- 1445 Defn : INTEGER;
- 1446 SelectionFlags : INTEGER;
- 1447 Capabilities : INTEGER;
- 1448 ySubscriptXSize : INTEGER;
- 1449 ySubscriptYSize : INTEGER;
- 1450 ySubscriptXOffset: INTEGER;
- 1451 ySubscriptYOffset: INTEGER;
- 1452 ySuperscriptXSize: INTEGER;
- 1453 ySuperscriptYSize: INTEGER;
- 1454 ySuperscriptXOffset: INTEGER;
- 1455 ySuperscriptYOffset: INTEGER;
- 1456 yUnderscoreSize : INTEGER;
- 1457 yUnderscorePosition: INTEGER;
- 1458 yStrikeoutSize : INTEGER;
- 1459 yStrikeoutPosition : INTEGER;
- 1460 KerningPairs : INTEGER;
- 1461 FamilyClass : INTEGER;
- 1462 DeviceNameOffset: FarADDRESS;
- 1463 END;
- 1464
- 1465 FONTDEFINITIONHEADER = RECORD
- 1466 Identity: LONGCARD;
- 1467 Size : LONGCARD;
- 1468 Fontdef : INTEGER;
- 1469 Chardef : INTEGER;
- 1470 CellSize: INTEGER;
- 1471 xCellWidth : INTEGER;
- 1472 yCellHeight : INTEGER;
- 1473 xCellIncrement: INTEGER;
- 1474 xCellA : INTEGER;
- 1475 xCellB : INTEGER;
- 1476 xCellC : INTEGER;
- 1477 pCellBaseOffset: INTEGER;
- 1478 END;
- 1479
- 1480 CONST
- 1481 FONTDEFFONT1 = 0047H; (* set width, height, inc. & base offset *)
- 1482 FONTDEFFONT2 = 0042H; (* set height & base offset *)
- 1483 FONTDEFFONT3 = 0042H; (* set height & base offset *)
- 1484 FONTDEFCHAR1 = 0081H; (* set char offset and width *)
- 1485 FONTDEFCHAR2 = 0081H; (* set char offset and width *)
- 1486 FONTDEFCHAR3 = 00B8H; (* set char offset, A, B, and C space *)
- 1487 SPACE_UNDEF = 08000H; (* space undefined = take default *)
- 1488
- 1489 TYPE
- 1490 FONTSIGNATURE = RECORD
- 1491 Identity : LONGCARD;
- 1492 Size : LONGCARD;
- 1493 Signature: ARRAY [0..11] OF CHAR;
- 1494 END;
- 1495
- 1496 FOCAFONT = RECORD
- 1497 Signature : FONTSIGNATURE;
- 1498 Metrics : FOCAMETRICS;
- 1499 Definitions: FONTDEFINITIONHEADER;
- 1500 END;
- 1501
- 1502 CONST
- 1503 FONT_SIGNATURE = 0FFFFFFFEH; (* Identity header start *)
- 1504 FONT_METRICS = 000000001H; (* Identity metrics *)
- 1505 FONT_DEFINITION = 000000002H; (* Identity definition *)
- 1506 FONT_ENDRECORD = 0FFFFFFFFH; (* Identity record end *)
- 1507
- 1508 (* Options for QueryFonts *)
- 1509
- 1510 QUERY_PUBLIC_FONTS = 01H;
- 1511 QUERY_PRIVATE_FONTS = 02H;
- 1512
- 1513 CDEF_GENERIC = 00001H;
- 1514 CDEF_BOLD = 00002H;
- 1515 CDEF_ITALIC = 00004H;
- 1516 CDEF_UNDERSCORE = 00008H;
- 1517 CDEF_STRIKEOUT = 00010H;
- 1518 CDEF_OUTLINE = 00020H;
- 1519
- 1520 (*%E*)
- 1521 (**)
- 1522 (**--- Gpi End ------------------------------------------------------------*)
- 1523 (**)
- 1524
- 1525 END Gpi.
- 123 errors
|