[4] | 1 | /* $Id: path.h,v 1.1 1999-05-24 20:19:17 ktk Exp $ */
|
---|
| 2 |
|
---|
| 3 | /*
|
---|
| 4 | * Graphics paths (BeginPath, EndPath etc.)
|
---|
| 5 | *
|
---|
| 6 | * Copyright 1997, 1998 Martin Boehme
|
---|
| 7 | */
|
---|
| 8 |
|
---|
| 9 | #ifndef __WINE_PATH_H
|
---|
| 10 | #define __WINE_PATH_H
|
---|
| 11 |
|
---|
| 12 | #include "windef.h"
|
---|
| 13 |
|
---|
| 14 | /* It should not be necessary to access the contents of the GdiPath
|
---|
| 15 | * structure directly; if you find that the exported functions don't
|
---|
| 16 | * allow you to do what you want, then please place a new exported
|
---|
| 17 | * function that does this job in path.c.
|
---|
| 18 | */
|
---|
| 19 |
|
---|
| 20 | typedef enum tagGdiPathState
|
---|
| 21 | {
|
---|
| 22 | PATH_Null,
|
---|
| 23 | PATH_Open,
|
---|
| 24 | PATH_Closed
|
---|
| 25 | } GdiPathState;
|
---|
| 26 |
|
---|
| 27 | typedef struct tagGdiPath
|
---|
| 28 | {
|
---|
| 29 | GdiPathState state;
|
---|
| 30 | POINT *pPoints;
|
---|
| 31 | BYTE *pFlags;
|
---|
| 32 | int numEntriesUsed, numEntriesAllocated;
|
---|
| 33 | BOOL newStroke;
|
---|
| 34 | } GdiPath;
|
---|
| 35 |
|
---|
| 36 | #define PATH_IsPathOpen(path) ((path).state==PATH_Open)
|
---|
| 37 | /* Returns TRUE if the specified path is in the open state, i.e. in the
|
---|
| 38 | * state where points will be added to the path, or FALSE otherwise. This
|
---|
| 39 | * function is implemented as a macro for performance reasons.
|
---|
| 40 | */
|
---|
| 41 |
|
---|
| 42 | extern void PATH_InitGdiPath(GdiPath *pPath);
|
---|
| 43 | extern void PATH_DestroyGdiPath(GdiPath *pPath);
|
---|
| 44 | extern BOOL PATH_AssignGdiPath(GdiPath *pPathDest,
|
---|
| 45 | const GdiPath *pPathSrc);
|
---|
| 46 |
|
---|
| 47 | extern BOOL PATH_MoveTo(HDC hdc);
|
---|
| 48 | extern BOOL PATH_LineTo(HDC hdc, INT x, INT y);
|
---|
| 49 | extern BOOL PATH_Rectangle(HDC hdc, INT x1, INT y1,
|
---|
| 50 | INT x2, INT y2);
|
---|
| 51 | extern BOOL PATH_Ellipse(HDC hdc, INT x1, INT y1,
|
---|
| 52 | INT x2, INT y2);
|
---|
| 53 | extern BOOL PATH_Arc(HDC hdc, INT x1, INT y1, INT x2, INT y2,
|
---|
| 54 | INT xStart, INT yStart, INT xEnd, INT yEnd);
|
---|
| 55 |
|
---|
| 56 | #endif /* __WINE_PATH_H */
|
---|