71 lines
2.0 KiB
C++
71 lines
2.0 KiB
C++
/**************************************************************************\
|
|
*
|
|
* Copyright (c) 1998-2000 Microsoft Corporation
|
|
*
|
|
* Abstract:
|
|
*
|
|
* Contains the definiton of the DpBrush structure which stores all of the
|
|
* state needed by drivers to render with a brush.
|
|
*
|
|
* Notes:
|
|
*
|
|
* History:
|
|
*
|
|
* 12/01/1998 andrewgo
|
|
* Created it.
|
|
* 03/24/1999 agodfrey
|
|
* Moved into separate file.
|
|
* 12/08/1999 bhouse
|
|
* Major overhaul of DpBrush. No longer used as base class of GpBrush.
|
|
* Moved all driver required state into DpBrush. Changed to struct.
|
|
*
|
|
\**************************************************************************/
|
|
|
|
#ifndef _DPBRUSH_HPP
|
|
#define _DPBRUSH_HPP
|
|
|
|
//--------------------------------------------------------------------------
|
|
// Represent brush information
|
|
//--------------------------------------------------------------------------
|
|
|
|
struct DpBrush
|
|
{
|
|
|
|
GpBrushType Type;
|
|
|
|
GpColor SolidColor; // Set if GpBrushType::SolidBrush
|
|
|
|
GpMatrix Xform; // brush transform
|
|
GpWrapMode Wrap; // wrap mode
|
|
GpRectF Rect;
|
|
|
|
DpBitmap * texture;
|
|
|
|
ARGB* PresetColors; // NON-Premultiplied colors.
|
|
BOOL UsesPresetColors;
|
|
BOOL IsGammaCorrected; // use gamma correction of 2.2
|
|
BOOL IsAngleScalable;
|
|
|
|
DpPath * Path;
|
|
|
|
mutable GpPointF * PointsPtr;
|
|
GpColor * ColorsPtr;
|
|
mutable INT Count;
|
|
mutable BOOL OneSurroundColor;
|
|
REAL FocusScaleX;
|
|
REAL FocusScaleY;
|
|
|
|
GpHatchStyle Style;
|
|
|
|
GpColor Colors[4];
|
|
REAL Falloffs[3];
|
|
INT BlendCounts[3];
|
|
REAL* BlendFactors[3];
|
|
REAL* BlendPositions[3];
|
|
GpPointF Points[3];
|
|
BYTE Data[8][8];
|
|
};
|
|
|
|
#endif
|
|
|