Release 971221
[wine/multimedia.git] / include / path.h
blobfbf00e12598485a40b578e300c0002619068be91
1 /*
2 * Graphics paths (BeginPath, EndPath etc.)
4 * Copyright 1997 Martin Boehme
5 */
7 #ifndef __WINE_PATH_H
8 #define __WINE_PATH_H
10 /* It should not be necessary to access the contents of the GdiPath
11 * structure directly; if you find that the exported functions don't
12 * allow you to do what you want, then please place a new exported
13 * function that does this job in path.c.
16 typedef enum tagGdiPathState
18 PATH_Null,
19 PATH_Open,
20 PATH_Closed
21 } GdiPathState;
23 typedef struct tagGdiPath
25 GdiPathState state;
26 POINT32 *pPoints;
27 BYTE *pFlags;
28 int numEntriesUsed, numEntriesAllocated;
29 BOOL32 newStroke;
30 } GdiPath;
32 #define PATH_IsPathOpen(path) ((path).state==PATH_Open)
33 /* Returns TRUE if the specified path is in the open state, i.e. in the
34 * state where points will be added to the path, or FALSE otherwise. This
35 * function is implemented as a macro for performance reasons.
38 extern void PATH_InitGdiPath(GdiPath *pPath);
39 extern void PATH_DestroyGdiPath(GdiPath *pPath);
40 extern BOOL32 PATH_AssignGdiPath(GdiPath *pPathDest,
41 const GdiPath *pPathSrc);
42 extern BOOL32 PATH_MoveTo(HDC32 hdc);
43 extern BOOL32 PATH_LineTo(HDC32 hdc, INT32 x, INT32 y);
45 #endif /* __WINE_PATH_H */