6 * This file is part of the w32api package.
8 * THIS SOFTWARE IS NOT COPYRIGHTED
10 * This source code is offered for use in the public domain. You may
11 * use, modify or distribute it freely.
13 * This code is distributed in the hope that it will be useful but
14 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
15 * DISCLAIMED. This includes but is not limited to warranties of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19 #ifndef _GDIPLUSLINECAPS_H
20 #define _GDIPLUSLINECAPS_H
23 #pragma GCC system_header
27 CustomLineCap::CustomLineCap(const GraphicsPath
*fillPath
,
28 const GraphicsPath
*strokePath
, LineCap baseCap
, REAL baseInset
)
32 inline CustomLineCap
*
33 CustomLineCap::Clone(VOID
)
39 CustomLineCap::GetBaseCap(VOID
)
45 CustomLineCap::GetBaseInset(VOID
)
51 CustomLineCap::GetLastStatus(VOID
)
57 CustomLineCap::GetStrokeCaps(LineCap
*startCap
, LineCap
*endCap
)
63 CustomLineCap::GetStrokeJoin(VOID
)
69 CustomLineCap::GetWidthScale(VOID
)
75 CustomLineCap::SetBaseCap(LineCap baseCap
)
81 CustomLineCap::SetBaseInset(REAL inset
)
87 CustomLineCap::SetStrokeCap(LineCap strokeCap
)
93 CustomLineCap::SetStrokeCaps(LineCap startCap
, LineCap endCap
)
99 CustomLineCap::SetStrokeJoin(LineJoin lineJoin
)
105 CustomLineCap::SetWidthScale(IN REAL widthScale
)
111 class AdjustableArrowCap
: public CustomLineCap
114 AdjustableArrowCap(REAL height
, REAL width
, BOOL isFilled
)
123 REAL
GetMiddleInset(VOID
)
138 Status
SetFillState(BOOL isFilled
)
143 Status
SetHeight(REAL height
)
148 Status
SetMiddleInset(REAL middleInset
)
153 Status
SetWidth(REAL width
)
159 #endif /* _GDIPLUSLINECAPS_H */