Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenpath.h
Go to the documentation of this file.
00001 #pragma once 00002 00003 /* DCPATH flPath */ 00004 #define DCPATH_ACTIVE 0x0001 00005 #define DCPATH_SAVE 0x0002 00006 #define DCPATH_CLOCKWISE 0x0004 00007 // ReactOS only 00008 #define DCPATH_SAVESTATE 0x80000000 00009 00010 typedef HGDIOBJ HPATH, *PHPATH; 00011 00012 typedef enum tagGdiPathState 00013 { 00014 PATH_Null, 00015 PATH_Open, 00016 PATH_Closed 00017 } GdiPathState; 00018 00019 typedef struct _PATH 00020 { 00021 BASEOBJECT BaseObject; 00022 00023 RECTFX rcfxBoundBox; 00024 POINTFX ptfxSubPathStart; 00025 00026 // Things to convert from: 00027 DWORD state; 00028 POINT *pPoints; 00029 BYTE *pFlags; 00030 int numEntriesUsed; 00031 int numEntriesAllocated; 00032 BOOL newStroke; 00033 } PATH, *PPATH; 00034 00035 typedef struct _EPATHOBJ 00036 { 00037 PATHOBJ po; 00038 PPATH pPath; 00039 } EPATHOBJ, *PEPATHOBJ; 00040 00041 #define PATH_AllocPath() ((PPATH) GDIOBJ_AllocObj(GDIObjType_PATH_TYPE)) 00042 #define PATH_AllocPathWithHandle() ((PPATH) GDIOBJ_AllocObjWithHandle (GDI_OBJECT_TYPE_PATH, sizeof(PATH))) 00043 #define PATH_FreePath(pPath) GDIOBJ_FreeObj((POBJ)pPath, GDIObjType_PATH_TYPE) 00044 #define PATH_FreeExtPathByHandle(hPath) GDIOBJ_FreeObjByHandle((HGDIOBJ) hPath, GDI_OBJECT_TYPE_PATH) 00045 #define PATH_LockPath(hPath) ((PPATH)GDIOBJ_ShareLockObj((HGDIOBJ)hPath, GDI_OBJECT_TYPE_PATH)) 00046 #define PATH_UnlockPath(pPath) GDIOBJ_vDereferenceObject((POBJ)pPath) 00047 00048 00049 #define PATH_IsPathOpen(dclevel) ( ((dclevel).hPath) && ((dclevel).flPath & DCPATH_ACTIVE) ) 00050 00051 BOOL FASTCALL PATH_Arc (PDC dc, INT x1, INT y1, INT x2, INT y2, INT xStart, INT yStart, INT xEnd, INT yEnd, INT lines); 00052 BOOL FASTCALL PATH_Ellipse (PDC dc, INT x1, INT y1, INT x2, INT y2); 00053 VOID FASTCALL PATH_EmptyPath (PPATH pPath); 00054 BOOL FASTCALL PATH_LineTo (PDC dc, INT x, INT y); 00055 BOOL FASTCALL PATH_MoveTo (PDC dc); 00056 BOOL FASTCALL PATH_PolyBezier (PDC dc, const POINT *pts, DWORD cbPoints); 00057 BOOL FASTCALL PATH_PolyBezierTo (PDC dc, const POINT *pts, DWORD cbPoints); 00058 BOOL FASTCALL PATH_PolyDraw(PDC dc, const POINT *pts, const BYTE *types, DWORD cbPoints); 00059 BOOL FASTCALL PATH_Polygon (PDC dc, const POINT *pts, DWORD cbPoints); 00060 BOOL FASTCALL PATH_Polyline (PDC dc, const POINT *pts, DWORD cbPoints); 00061 BOOL FASTCALL PATH_PolylineTo (PDC dc, const POINT *pts, DWORD cbPoints); 00062 BOOL FASTCALL PATH_PolyPolygon ( PDC dc, const POINT* pts, const INT* counts, UINT polygons); 00063 BOOL FASTCALL PATH_PolyPolyline( PDC dc, const POINT* pts, const DWORD* counts, DWORD polylines); 00064 BOOL FASTCALL PATH_Rectangle (PDC dc, INT x1, INT y1, INT x2, INT y2); 00065 BOOL FASTCALL PATH_RoundRect(DC *dc, INT x1, INT y1, INT x2, INT y2, INT ell_width, INT ell_height); 00066 BOOL FASTCALL PATH_PathToRegion (PPATH pPath, INT nPolyFillMode, HRGN *pHrgn); 00067 BOOL FASTCALL PATH_ExtTextOut(PDC dc,INT x,INT y,UINT flags,const RECTL *lprc,LPCWSTR str,UINT count,const INT *dx); 00068 00069 BOOL FASTCALL PATH_AddEntry (PPATH pPath, const POINT *pPoint, BYTE flags); 00070 BOOL FASTCALL PATH_AddFlatBezier (PPATH pPath, POINT *pt, BOOL closed); 00071 BOOL FASTCALL PATH_DoArcPart (PPATH pPath, FLOAT_POINT corners[], double angleStart, double angleEnd, BYTE startEntryType); 00072 BOOL FASTCALL PATH_FillPath( PDC dc, PPATH pPath ); 00073 BOOL FASTCALL PATH_FlattenPath (PPATH pPath); 00074 VOID FASTCALL PATH_NormalizePoint (FLOAT_POINT corners[], const FLOAT_POINT *pPoint, double *pX, double *pY); 00075 00076 BOOL FASTCALL PATH_ReserveEntries (PPATH pPath, INT numEntries); 00077 VOID FASTCALL PATH_ScaleNormalizedPoint (FLOAT_POINT corners[], double x, double y, POINT *pPoint); 00078 BOOL FASTCALL PATH_StrokePath(DC *dc, PPATH pPath); 00079 BOOL PATH_CheckCorners(DC *dc, POINT corners[], INT x1, INT y1, INT x2, INT y2); 00080 00081 VOID FASTCALL IntGdiCloseFigure(PPATH pPath); 00082 BOOL FASTCALL PATH_Delete(HPATH hPath); 00083 00084 VOID FASTCALL IntGetCurrentPositionEx(PDC dc, LPPOINT pt); Generated on Sat May 26 2012 04:37:15 for ReactOS by
1.7.6.1
|