Changeset 4012
- Timestamp:
- Aug 14, 2000, 5:51:20 PM (25 years ago)
- Location:
- trunk/src/gdi32
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/src/gdi32/gdi32.DEF ¶
r3940 r4012 1 ; $Id: gdi32.DEF,v 1.1 1 2000-08-02 19:58:26 birdExp $1 ; $Id: gdi32.DEF,v 1.12 2000-08-14 15:51:19 cbratschi Exp $ 2 2 3 3 ;Created by BLAST for IBM's compiler … … 12 12 _GpiEnableYInversion = PMGPI.723 13 13 _GpiQueryYInversion = PMGPI.726 14 WinDrawTabbedText = PMMERGE.5432 14 15 15 16 EXPORTS … … 356 357 ; 357 358 ObjAllocateHandle__FPUlUl10ObjectType @1201 358 ObjFreeHandle__FUl 359 ObjFreeHandle__FUl @1202 359 360 ObjGetHandleData__FUl @1203 360 361 ObjGetHandleType__FUl @1204 -
TabularUnified trunk/src/gdi32/oslibgpi.cpp ¶
r3705 r4012 1 /* $Id: oslibgpi.cpp,v 1. 5 2000-06-14 13:17:51 sandervlExp $ */1 /* $Id: oslibgpi.cpp,v 1.6 2000-08-14 15:51:20 cbratschi Exp $ */ 2 2 3 3 /* … … 21 21 #include "dcdata.h" 22 22 23 #define DBG_LOCALLOG 23 #define DBG_LOCALLOG DBG_oslibgpi 24 24 #include "dbglocal.h" 25 25 … … 292 292 } 293 293 294 LONG APIENTRY WinDrawTabbedText(HPS hps,LONG cchText,LONG lTabWidth,PCH lpchText,PRECTL prcl,LONG clrFore,LONG clrBack,ULONG flCmd); 295 294 296 LONG OSLibWinDrawTabbedText(PVOID pHps,LONG cchText,LONG lTabs,LPCSTR lpchText,PVOID prcl,LONG clrFore,LONG clrBack,ULONG flCmd) 295 297 { 296 //return WinDraw 297 //undocumented 298 return 0; 298 return WinDrawTabbedText(GetDCData(pHps)->hps,cchText,lTabs,(PCH)lpchText,(PRECTL)prcl,clrFore,clrBack,flCmd); 299 299 } 300 300 -
TabularUnified trunk/src/gdi32/oslibgpi.h ¶
r3705 r4012 1 /* $Id: oslibgpi.h,v 1. 6 2000-06-14 13:17:51 sandervlExp $ */1 /* $Id: oslibgpi.h,v 1.7 2000-08-14 15:51:20 cbratschi Exp $ */ 2 2 3 3 /* … … 139 139 140 140 VOID calcDimensions(POINTLOS2 box[],PPOINTLOS2 point); 141 142 #define BMOS_ERROR (-1L) 143 #define BMOS_DEFAULT 0L 144 #define BMOS_OR 1L 145 #define BMOS_OVERPAINT 2L 146 #define BMOS_LEAVEALONE 5L 147 148 LONG OSLibGpiQueryBackMix(PVOID pHps); 149 150 #define MMOS_TEXT 1 151 #define MMOS_LOMETRIC 2 152 #define MMOS_HIMETRIC 3 153 #define MMOS_LOENGLISH 4 154 #define MMOS_HIENGLISH 5 155 #define MMOS_TWIPS 6 156 #define MMOS_ISOTROPIC 7 157 #define MMOS_ANISOTROPIC 8 158 159 BOOL doesYAxisGrowNorth(PVOID pHps); 141 160 142 161 #define DTOS_LEFT 0x00000000 … … 156 175 #define DTOS_ERASERECT 0x00008000 157 176 158 #define BMOS_ERROR (-1L) 159 #define BMOS_DEFAULT 0L 160 #define BMOS_OR 1L 161 #define BMOS_OVERPAINT 2L 162 #define BMOS_LEAVEALONE 5L 163 164 LONG OSLibGpiQueryBackMix(PVOID pHps); 165 166 #define MMOS_TEXT 1 167 #define MMOS_LOMETRIC 2 168 #define MMOS_HIMETRIC 3 169 #define MMOS_LOENGLISH 4 170 #define MMOS_HIENGLISH 5 171 #define MMOS_TWIPS 6 172 #define MMOS_ISOTROPIC 7 173 #define MMOS_ANISOTROPIC 8 174 175 BOOL doesYAxisGrowNorth(PVOID pHps); 177 #define DTOS_SYSTEMFONT 0x00000001 178 #define DTOS_SINGLELINE 0x00010000 179 #define DTOS_MULTILINE 0x00020000 180 #define DTOS_NOCLIP 0x00040000 181 #define DTOS_OPAQUE 0x00080000 182 #define DTOS_AMPERSAND 0x00100000 183 #define DTOS_VERTICALEXTENT 0x00200000 184 #define DTOS_INVERTCHAR 0x20000000 185 #define DTOS_WORLDRECT 0x40000000 186 #define DTOS_INVERT 0x80000000 176 187 177 188 LONG OSLibWinDrawTabbedText(PVOID pHps,LONG cchText,LONG lTabs,LPCSTR lpchText,PVOID prcl,LONG clrFore,LONG clrBack,ULONG flCmd); -
TabularUnified trunk/src/gdi32/text.cpp ¶
r3648 r4012 1 /* $Id: text.cpp,v 1.1 0 2000-06-01 19:00:05 sandervlExp $ */1 /* $Id: text.cpp,v 1.11 2000-08-14 15:51:20 cbratschi Exp $ */ 2 2 3 3 /* … … 7 7 * 8 8 * Copyright 1993, 1994 Alexandre Julliard 9 * Copyright 1999 Christoph Bratschi9 * Copyright 1999-2000 Christoph Bratschi 10 10 * 11 11 * Project Odin Software License can be found in LICENSE.TXT … … 19 19 #include "oslibgpi.h" 20 20 21 #define DBG_LOCALLOG 21 #define DBG_LOCALLOG DBG_text 22 22 #include "dbglocal.h" 23 23 … … 95 95 INT SYSTEM EXPORT InternalDrawTextExA(HDC hdc,LPCSTR lpchText,INT cchText,LPRECT lprc,UINT dwDTFormat,LPDRAWTEXTPARAMS lpDTParams,BOOL isDrawTextEx) 96 96 { 97 /*98 PVOID pHps = OSLibGpiQueryDCData(hdc);99 97 INT rc; 100 98 ULONG flCmd; … … 102 100 PRECT rectPtr; 103 101 LONG lTabs,xLeft,yTop; 104 105 if ((!lpchText) || (cchText == 0) || (cchText < -1) || (!lprc == NULL)) 102 UINT fpuctrlword; 103 104 //SvL: Open32's DrawText messes up the fpu control word! (@#$@#$@#$) 105 //CB: don't know if this is still the case with WinDrawTabbedText (-> testcase) 106 fpuctrlword = _control87(0, 0); 107 108 if ((!lpchText) || (cchText == 0) || (cchText < -1) || (lprc == NULL)) 106 109 { 107 110 SetLastError(ERROR_INVALID_PARAMETER); 108 111 return 0; 109 112 } 113 114 PVOID pHps = OSLibGpiQueryDCData(hdc); 110 115 111 116 if (!pHps) … … 199 204 rectPtr = &localRectangle; 200 205 201 if ( getMapMode(pHps) == MMOS_ANISOTROPIC || getMapMode(pHps) == MMOS_ISOTROPIC)206 if ((getMapMode(pHps) == MMOS_ANISOTROPIC) || (getMapMode(pHps) == MMOS_ISOTROPIC)) 202 207 { 203 208 if (doesYAxisGrowNorth(pHps)) … … 232 237 if (isDrawTextEx) 233 238 { 234 lTabs = (lpDTParams && dwDTFormat & DT_TABSTOP) ? lpDTParams->iTabLength:8;239 lTabs = (lpDTParams && (dwDTFormat & DT_TABSTOP)) ? lpDTParams->iTabLength:8; 235 240 } else 236 241 { … … 385 390 386 391 if (!done) 392 { 387 393 rc = OSLibWinDrawTabbedText(pHps,cchText,lTabs,lpchText,rectPtr,0,0,flCmd); 394 } 388 395 389 396 if (dwDTFormat & DT_CALCRECT) … … 408 415 } 409 416 410 return rc;411 */412 UINT fpuctrlword;413 INT rc;414 415 //SvL: Open32's DrawText messes up the fpu control word! (@#$@#$@#$)416 fpuctrlword = _control87(0, 0);417 dwDTFormat &= ~(DT_END_ELLIPSIS | DT_PATH_ELLIPSIS);418 419 rc = O32_DrawText(hdc,lpchText,cchText,lprc,dwDTFormat);420 417 _control87(fpuctrlword, 0xFFFF); 418 421 419 return rc; 422 420 } … … 576 574 if (!pHps || (cbCount < 0) || ((lpszString == NULL) && (cbCount != 0))) 577 575 { 578 579 580 576 dprintf(("InternalTextOutA: invalid parameter")); 577 SetLastError(ERROR_INVALID_HANDLE); 578 return FALSE; 581 579 } 582 580 583 581 if (cbCount > 512) 584 582 { 585 586 587 583 dprintf(("InternalTextOutA: invalid parameter cbCount")); 584 SetLastError(ERROR_INVALID_PARAMETER); 585 return FALSE; 588 586 } 589 587 if (fuOptions & ~((UINT)(ETO_CLIPPED | ETO_OPAQUE))) 590 588 { 591 592 593 589 dprintf(("InternalTextOutA: invalid fuOptions")); 590 //ETO_GLYPH_INDEX, ETO_RTLLEADING, ETO_NUMERICSLOCAL, ETO_NUMERICSLATIN, ETO_IGNORELANGUAGE, ETO_PDY are ignored 591 return TRUE; 594 592 } 595 593 … … 603 601 if (excludeBottomRightPoint(pHps,(PPOINTLOS2)&pmRect) == 0) 604 602 { 605 603 dprintf(("InternalTextOutA: excludeBottomRightPoint returned 0")); 606 604 return TRUE; 607 605 } … … 610 608 if (fuOptions & ETO_OPAQUE) flOptions |= CHSOS_OPAQUE; 611 609 } 612 } 610 } 613 611 else 614 612 { 615 613 if (fuOptions) 616 614 { 617 618 619 615 dprintf(("InternalTextOutA: ERROR_INVALID_HANDLE")); 616 SetLastError(ERROR_INVALID_HANDLE); 617 return FALSE; 620 618 } 621 619 } … … 625 623 if (fuOptions & ETO_OPAQUE) 626 624 { 627 628 629 630 } 625 lpszString = " "; 626 cbCount = 1; 627 flOptions |= CHSOS_CLIP; 628 } 631 629 else { 632 633 630 dprintf(("InternalTextOutA: cbCount == 0")); 631 return TRUE; 634 632 } 635 633 } … … 643 641 644 642 flOptions |= CHSOS_LEAVEPOS; 645 } 643 } 646 644 else OSLibGpiQueryCurrentPosition(pHps,&ptl); 647 645 … … 675 673 676 674 if(hits == GPIOS_ERROR) { 677 678 675 dprintf(("InternalTextOutA: OSLibGpiCharStringPosAt returned GPIOS_ERROR")); 676 return FALSE; 679 677 } 680 678
Note:
See TracChangeset
for help on using the changeset viewer.