:pserver:cvsanon@mok.lvcm.com:/CVS/ReactOS reactos
[reactos.git] / include / win32k / path.h
1 #ifndef __WIN32K_PATH_H
2 #define __WIN32K_PATH_H
3
4 typedef enum tagGdiPathState
5 {
6    PATH_Null,
7    PATH_Open,
8    PATH_Closed
9 } GdiPathState;
10
11 typedef struct tagGdiPath
12 {
13    GdiPathState state;
14    POINT      *pPoints;
15    BYTE         *pFlags;
16    int          numEntriesUsed, numEntriesAllocated;
17    BOOL       newStroke;
18 } GdiPath;
19
20 #define PATH_IsPathOpen(path) ((path).state==PATH_Open)
21
22 BOOL STDCALL W32kAbortPath(HDC  hDC);
23
24 BOOL STDCALL W32kBeginPath(HDC  hDC);
25
26 BOOL STDCALL W32kCloseFigure(HDC  hDC);
27
28 BOOL STDCALL W32kEndPath(HDC  hDC);
29
30 BOOL STDCALL W32kFillPath(HDC  hDC);
31
32 BOOL STDCALL W32kFlattenPath(HDC  hDC);
33
34 BOOL STDCALL W32kGetMiterLimit(HDC  hDC,
35                         PFLOAT  Limit);
36
37 INT STDCALL W32kGetPath(HDC  hDC,
38                  LPPOINT  Points,
39                  LPBYTE  Types,
40                  INT  nSize);
41
42 HRGN STDCALL W32kPathToRegion(HDC  hDC);
43
44 BOOL STDCALL W32kSetMiterLimit(HDC  hDC,
45                         FLOAT  NewLimit,
46                         PFLOAT  OldLimit);
47
48 BOOL STDCALL W32kStrokeAndFillPath(HDC  hDC);
49
50 BOOL STDCALL W32kStrokePath(HDC  hDC);
51
52 BOOL STDCALL W32kWidenPath(HDC  hDC);
53
54 #endif