diff --git a/reactos/include/psdk/gdiplus.h b/reactos/include/psdk/gdiplus.h index 3aaf9f7dd86..9e72f52355a 100644 --- a/reactos/include/psdk/gdiplus.h +++ b/reactos/include/psdk/gdiplus.h @@ -1,78 +1,63 @@ /* - * GdiPlus.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUS_H #define _GDIPLUS_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif - -#ifndef __cplusplus -#error In order to use GDI+ headers use must use a C++ compiler -#else - -struct IDirectDrawSurface7; - -typedef signed short INT16; -typedef unsigned short UINT16; - -#include +#ifdef __cplusplus namespace Gdiplus { - namespace DllExports - { - #include "gdiplusmem.h" - }; + namespace DllExports + { +#include "gdiplusmem.h" + }; - #include "gdiplusbase.h" +#include "gdiplustypes.h" +#include "gdiplusenums.h" +#include "gdiplusinit.h" +#include "gdipluspixelformats.h" +#include "gdiplusmetaheader.h" +#include "gdiplusimaging.h" +#include "gdipluscolormatrix.h" +#include "gdiplusgpstubs.h" - #include "gdiplusenums.h" - #include "gdiplustypes.h" - #include "gdiplusinit.h" - #include "gdipluspixelformats.h" - #include "gdipluscolor.h" - #include "gdiplusmetaheader.h" - #include "gdiplusimaging.h" - #include "gdipluscolormatrix.h" - #include "gdiplusgpstubs.h" - #include "gdiplusheaders.h" + namespace DllExports + { +#include "gdiplusflat.h" + }; +}; - namespace DllExports - { - #include "gdiplusflat.h" - }; +#else /* end c++ includes */ - #include "gdiplusimageattributes.h" - #include "gdiplusmatrix.h" - #include "gdiplusbrush.h" - #include "gdipluspen.h" - #include "gdiplusstringformat.h" - #include "gdipluspath.h" - #include "gdipluslinecaps.h" - #include "gdiplusmetafile.h" - #include "gdiplusgraphics.h" - #include "gdipluseffects.h" -} +#include "gdiplusmem.h" -#include +#include "gdiplustypes.h" +#include "gdiplusenums.h" +#include "gdiplusinit.h" +#include "gdipluspixelformats.h" +#include "gdiplusmetaheader.h" +#include "gdiplusimaging.h" +#include "gdipluscolormatrix.h" +#include "gdiplusgpstubs.h" -#endif +#include "gdiplusflat.h" -#endif /* _GDIPLUS_H */ +#endif /* end c includes */ + +#endif /* _GDIPLUS_H_ */ diff --git a/reactos/include/psdk/gdipluscolormatrix.h b/reactos/include/psdk/gdipluscolormatrix.h index 30b20dd4d98..afc04c0076a 100644 --- a/reactos/include/psdk/gdipluscolormatrix.h +++ b/reactos/include/psdk/gdipluscolormatrix.h @@ -1,51 +1,53 @@ /* - * GdiPlusColorMatrix.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUSCOLORMATRIX_H #define _GDIPLUSCOLORMATRIX_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif - -typedef struct { - Color oldColor; - Color newColor; -} ColorMap; - -struct ColorMatrix { - REAL m[5][5]; +struct ColorMatrix +{ + REAL m[5][5]; }; -typedef enum { - ColorAdjustTypeDefault = 0, - ColorAdjustTypeBitmap = 1, - ColorAdjustTypeBrush = 2, - ColorAdjustTypePen = 3, - ColorAdjustTypeText = 4, - ColorAdjustTypeCount = 5, - ColorAdjustTypeAny = 6 -} ColorAdjustType; +enum ColorMatrixFlags +{ + ColorMatrixFlagsDefault = 0, + ColorMatrixFlagsSkipGrays = 1, + ColorMatrixFlagsAltGray = 2 +}; -typedef enum { - ColorMatrixFlagsDefault = 0, - ColorMatrixFlagsSkipGrays = 1, - ColorMatrixFlagsAltGray = 2 -} ColorMatrixFlags; +enum ColorAdjustType +{ + ColorAdjustTypeDefault, + ColorAdjustTypeBitmap, + ColorAdjustTypeBrush, + ColorAdjustTypePen, + ColorAdjustTypeText, + ColorAdjustTypeCount, + ColorAdjustTypeAny +}; -#endif /* _GDIPLUSCOLORMATRIX_H */ +#ifndef __cplusplus + +typedef enum ColorAdjustType ColorAdjustType; +typedef enum ColorMatrixFlags ColorMatrixFlags; +typedef struct ColorMatrix ColorMatrix; + +#endif /* end of c typedefs */ + +#endif /* _GDIPLUSCOLORMATRIX_H */ diff --git a/reactos/include/psdk/gdiplusenums.h b/reactos/include/psdk/gdiplusenums.h index 575064200df..c579ebe16fd 100644 --- a/reactos/include/psdk/gdiplusenums.h +++ b/reactos/include/psdk/gdiplusenums.h @@ -1,834 +1,305 @@ /* - * GdiPlusEnums.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUSENUMS_H #define _GDIPLUSENUMS_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif - typedef UINT GraphicsState; -typedef UINT GraphicsContainer; -typedef enum { - BrushTypeSolidColor = 0, - BrushTypeHatchFill = 1, - BrushTypeTextureFill = 2, - BrushTypePathGradient = 3, - BrushTypeLinearGradient = 4 -} BrushType; +enum Unit +{ + UnitWorld = 0, + UnitDisplay = 1, + UnitPixel = 2, + UnitPoint = 3, + UnitInch = 4, + UnitDocument = 5, + UnitMillimeter = 6 +}; -typedef enum { - CombineModeReplace, - CombineModeIntersect, - CombineModeUnion, - CombineModeXor, - CombineModeExclude, - CombineModeComplement -} CombineMode; +enum BrushType +{ + BrushTypeSolidColor = 0, + BrushTypeHatchFill = 1, + BrushTypeTextureFill = 2, + BrushTypePathGradient = 3, + BrushTypeLinearGradient = 4 +}; -typedef enum { - CompositingModeSourceOver, - CompositingModeSourceCopy -} CompositingMode; +enum FillMode +{ + FillModeAlternate = 0, + FillModeWinding = 1 +}; + +enum LineCap +{ + LineCapFlat = 0x00, + LineCapSquare = 0x01, + LineCapRound = 0x02, + LineCapTriangle = 0x03, + + LineCapNoAnchor = 0x10, + LineCapSquareAnchor = 0x11, + LineCapRoundAnchor = 0x12, + LineCapDiamondAnchor = 0x13, + LineCapArrowAnchor = 0x14, + + LineCapCustom = 0xff, + LineCapAnchorMask = 0xf0 +}; + +enum PathPointType{ + PathPointTypeStart = 0, /* start of a figure */ + PathPointTypeLine = 1, + PathPointTypeBezier = 3, + PathPointTypePathTypeMask = 7, + PathPointTypePathDashMode = 16, /* not used */ + PathPointTypePathMarker = 32, + PathPointTypeCloseSubpath = 128, /* end of a closed figure */ + PathPointTypeBezier3 = 3 +}; + +enum LineJoin +{ + LineJoinMiter = 0, + LineJoinBevel = 1, + LineJoinRound = 2, + LineJoinMiterClipped = 3 +}; enum QualityMode { - QualityModeInvalid = -1, - QualityModeDefault = 0, - QualityModeLow = 1, - QualityModeHigh = 2 + QualityModeInvalid = -1, + QualityModeDefault = 0, + QualityModeLow = 1, + QualityModeHigh = 2 }; -typedef enum { - CompositingQualityDefault = QualityModeDefault, - CompositingQualityHighSpeed = QualityModeLow, - CompositingQualityHighQuality = QualityModeHigh, - CompositingQualityGammaCorrected, - CompositingQualityAssumeLinear -} CompositingQuality; - -typedef enum { - CoordinateSpaceWorld, - CoordinateSpacePage, - CoordinateSpaceDevice -} CoordinateSpace; - -typedef enum { - AdjustExposure = 0, - AdjustDensity = 1, - AdjustContrast = 2, - AdjustHighlight = 3, - AdjustShadow = 4, - AdjustMidtone = 5, - AdjustWhiteSaturation = 6, - AdjustBlackSaturation = 7 -} CurveAdjustments; - -typedef enum { - CurveChannelAll = 0, - CurveChannelRed = 1, - CurveChannelGreen = 2, - CurveChannelBlue = 3 -} CurveChannel; - -typedef enum { - DashCapFlat = 0, - DashCapRound = 2, - DashCapTriangle = 3 -} DashCap; - -typedef enum { - DashStyleSolid = 0, - DashStyleDash = 1, - DashStyleDot = 2, - DashStyleDashDot = 3, - DashStyleDashDotDot = 4, - DashStyleCustom = 5 -} DashStyle; - -typedef enum { - DitherTypeNone = 0, - DitherTypeSolid = 1, - DitherTypeOrdered4x4 = 2, - DitherTypeOrdered8x8 = 3, - DitherTypeOrdered16x16 = 4, - DitherTypeOrdered91x91 = 5, - DitherTypeSpiral4x4 = 6, - DitherTypeSpiral8x8 = 7, - DitherTypeDualSpiral4x4 = 8, - DitherTypeDualSpiral8x8 = 9, - DitherTypeErrorDiffusion = 10 -} DitherType; - -typedef enum { - DriverStringOptionsCmapLookup = 1, - DriverStringOptionsVertical = 2, - DriverStringOptionsRealizedAdvance = 4, - DriverStringOptionsLimitSubpixel = 8 -} DriverStringOptions; - -#define GDIP_EMFPLUS_RECORD_BASE 0x00004000 -#define GDIP_WMF_RECORD_BASE 0x00010000 -#define GDIP_WMF_RECORD_TO_EMFPLUS(n) ((n) | GDIP_WMF_RECORD_BASE) -#define GDIP_EMFPLUS_RECORD_TO_WMF(n) ((n) & (~GDIP_WMF_RECORD_BASE)) -#define GDIP_IS_WMF_RECORDTYPE(n) (((n) & GDIP_WMF_RECORD_BASE) != 0) - -typedef enum { - WmfRecordTypeSetBkColor = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKCOLOR), - WmfRecordTypeSetBkMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKMODE), - WmfRecordTypeSetMapMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPMODE), - WmfRecordTypeSetROP2 = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETROP2), - WmfRecordTypeSetRelAbs = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETRELABS), - WmfRecordTypeSetPolyFillMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPOLYFILLMODE), - WmfRecordTypeSetStretchBltMode = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETSTRETCHBLTMODE), - WmfRecordTypeSetTextCharExtra = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCHAREXTRA), - WmfRecordTypeSetTextColor = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCOLOR), - WmfRecordTypeSetTextJustification = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTJUSTIFICATION), - WmfRecordTypeSetWindowOrg = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWORG), - WmfRecordTypeSetWindowExt = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWEXT), - WmfRecordTypeSetViewportOrg = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTORG), - WmfRecordTypeSetViewportExt = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTEXT), - WmfRecordTypeOffsetWindowOrg = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETWINDOWORG), - WmfRecordTypeScaleWindowExt = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEWINDOWEXT), - WmfRecordTypeOffsetViewportOrg = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETVIEWPORTORG), - WmfRecordTypeScaleViewportExt = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEVIEWPORTEXT), - WmfRecordTypeLineTo = GDIP_WMF_RECORD_TO_EMFPLUS(META_LINETO), - WmfRecordTypeMoveTo = GDIP_WMF_RECORD_TO_EMFPLUS(META_MOVETO), - WmfRecordTypeExcludeClipRect = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXCLUDECLIPRECT), - WmfRecordTypeIntersectClipRect = GDIP_WMF_RECORD_TO_EMFPLUS(META_INTERSECTCLIPRECT), - WmfRecordTypeArc = GDIP_WMF_RECORD_TO_EMFPLUS(META_ARC), - WmfRecordTypeEllipse = GDIP_WMF_RECORD_TO_EMFPLUS(META_ELLIPSE), - WmfRecordTypeFloodFill = GDIP_WMF_RECORD_TO_EMFPLUS(META_FLOODFILL), - WmfRecordTypePie = GDIP_WMF_RECORD_TO_EMFPLUS(META_PIE), - WmfRecordTypeRectangle = GDIP_WMF_RECORD_TO_EMFPLUS(META_RECTANGLE), - WmfRecordTypeRoundRect = GDIP_WMF_RECORD_TO_EMFPLUS(META_ROUNDRECT), - WmfRecordTypePatBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_PATBLT), - WmfRecordTypeSaveDC = GDIP_WMF_RECORD_TO_EMFPLUS(META_SAVEDC), - WmfRecordTypeSetPixel = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPIXEL), - WmfRecordTypeOffsetClipRgn = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETCLIPRGN), - WmfRecordTypeTextOut = GDIP_WMF_RECORD_TO_EMFPLUS(META_TEXTOUT), - WmfRecordTypeBitBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_BITBLT), - WmfRecordTypeStretchBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHBLT), - WmfRecordTypePolygon = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYGON), - WmfRecordTypePolyline = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYLINE), - WmfRecordTypeEscape = GDIP_WMF_RECORD_TO_EMFPLUS(META_ESCAPE), - WmfRecordTypeRestoreDC = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESTOREDC), - WmfRecordTypeFillRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_FILLREGION), - WmfRecordTypeFrameRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_FRAMEREGION), - WmfRecordTypeInvertRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_INVERTREGION), - WmfRecordTypePaintRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_PAINTREGION), - WmfRecordTypeSelectClipRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTCLIPREGION), - WmfRecordTypeSelectObject = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTOBJECT), - WmfRecordTypeSetTextAlign = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTALIGN), - WmfRecordTypeDrawText = GDIP_WMF_RECORD_TO_EMFPLUS(0x062F), - WmfRecordTypeChord = GDIP_WMF_RECORD_TO_EMFPLUS(META_CHORD), - WmfRecordTypeSetMapperFlags = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPPERFLAGS), - WmfRecordTypeExtTextOut = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTTEXTOUT), - WmfRecordTypeSetDIBToDev = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETDIBTODEV), - WmfRecordTypeSelectPalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTPALETTE), - WmfRecordTypeRealizePalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_REALIZEPALETTE), - WmfRecordTypeAnimatePalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_ANIMATEPALETTE), - WmfRecordTypeSetPalEntries = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPALENTRIES), - WmfRecordTypePolyPolygon = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYPOLYGON), - WmfRecordTypeResizePalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESIZEPALETTE), - WmfRecordTypeDIBBitBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBBITBLT), - WmfRecordTypeDIBStretchBlt = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBSTRETCHBLT), - WmfRecordTypeDIBCreatePatternBrush = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBCREATEPATTERNBRUSH), - WmfRecordTypeStretchDIB = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHDIB), - WmfRecordTypeExtFloodFill = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTFLOODFILL), - WmfRecordTypeSetLayout = GDIP_WMF_RECORD_TO_EMFPLUS(0x0149), - WmfRecordTypeResetDC = GDIP_WMF_RECORD_TO_EMFPLUS(0x014C), - WmfRecordTypeStartDoc = GDIP_WMF_RECORD_TO_EMFPLUS(0x014D), - WmfRecordTypeStartPage = GDIP_WMF_RECORD_TO_EMFPLUS(0x004F), - WmfRecordTypeEndPage = GDIP_WMF_RECORD_TO_EMFPLUS(0x0050), - WmfRecordTypeAbortDoc = GDIP_WMF_RECORD_TO_EMFPLUS(0x0052), - WmfRecordTypeEndDoc = GDIP_WMF_RECORD_TO_EMFPLUS(0x005E), - WmfRecordTypeDeleteObject = GDIP_WMF_RECORD_TO_EMFPLUS(META_DELETEOBJECT), - WmfRecordTypeCreatePalette = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPALETTE), - WmfRecordTypeCreateBrush = GDIP_WMF_RECORD_TO_EMFPLUS(0x00F8), - WmfRecordTypeCreatePatternBrush = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPATTERNBRUSH), - WmfRecordTypeCreatePenIndirect = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPENINDIRECT), - WmfRecordTypeCreateFontIndirect = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEFONTINDIRECT), - WmfRecordTypeCreateBrushIndirect = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEBRUSHINDIRECT), - WmfRecordTypeCreateBitmapIndirect = GDIP_WMF_RECORD_TO_EMFPLUS(0x02FD), - WmfRecordTypeCreateBitmap = GDIP_WMF_RECORD_TO_EMFPLUS(0x06FE), - WmfRecordTypeCreateRegion = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEREGION), - EmfRecordTypeHeader = EMR_HEADER, - EmfRecordTypePolyBezier = EMR_POLYBEZIER, - EmfRecordTypePolygon = EMR_POLYGON, - EmfRecordTypePolyline = EMR_POLYLINE, - EmfRecordTypePolyBezierTo = EMR_POLYBEZIERTO, - EmfRecordTypePolyLineTo = EMR_POLYLINETO, - EmfRecordTypePolyPolyline = EMR_POLYPOLYLINE, - EmfRecordTypePolyPolygon = EMR_POLYPOLYGON, - EmfRecordTypeSetWindowExtEx = EMR_SETWINDOWEXTEX, - EmfRecordTypeSetWindowOrgEx = EMR_SETWINDOWORGEX, - EmfRecordTypeSetViewportExtEx = EMR_SETVIEWPORTEXTEX, - EmfRecordTypeSetViewportOrgEx = EMR_SETVIEWPORTORGEX, - EmfRecordTypeSetBrushOrgEx = EMR_SETBRUSHORGEX, - EmfRecordTypeEOF = EMR_EOF, - EmfRecordTypeSetPixelV = EMR_SETPIXELV, - EmfRecordTypeSetMapperFlags = EMR_SETMAPPERFLAGS, - EmfRecordTypeSetMapMode = EMR_SETMAPMODE, - EmfRecordTypeSetBkMode = EMR_SETBKMODE, - EmfRecordTypeSetPolyFillMode = EMR_SETPOLYFILLMODE, - EmfRecordTypeSetROP2 = EMR_SETROP2, - EmfRecordTypeSetStretchBltMode = EMR_SETSTRETCHBLTMODE, - EmfRecordTypeSetTextAlign = EMR_SETTEXTALIGN, - EmfRecordTypeSetColorAdjustment = EMR_SETCOLORADJUSTMENT, - EmfRecordTypeSetTextColor = EMR_SETTEXTCOLOR, - EmfRecordTypeSetBkColor = EMR_SETBKCOLOR, - EmfRecordTypeOffsetClipRgn = EMR_OFFSETCLIPRGN, - EmfRecordTypeMoveToEx = EMR_MOVETOEX, - EmfRecordTypeSetMetaRgn = EMR_SETMETARGN, - EmfRecordTypeExcludeClipRect = EMR_EXCLUDECLIPRECT, - EmfRecordTypeIntersectClipRect = EMR_INTERSECTCLIPRECT, - EmfRecordTypeScaleViewportExtEx = EMR_SCALEVIEWPORTEXTEX, - EmfRecordTypeScaleWindowExtEx = EMR_SCALEWINDOWEXTEX, - EmfRecordTypeSaveDC = EMR_SAVEDC, - EmfRecordTypeRestoreDC = EMR_RESTOREDC, - EmfRecordTypeSetWorldTransform = EMR_SETWORLDTRANSFORM, - EmfRecordTypeModifyWorldTransform = EMR_MODIFYWORLDTRANSFORM, - EmfRecordTypeSelectObject = EMR_SELECTOBJECT, - EmfRecordTypeCreatePen = EMR_CREATEPEN, - EmfRecordTypeCreateBrushIndirect = EMR_CREATEBRUSHINDIRECT, - EmfRecordTypeDeleteObject = EMR_DELETEOBJECT, - EmfRecordTypeAngleArc = EMR_ANGLEARC, - EmfRecordTypeEllipse = EMR_ELLIPSE, - EmfRecordTypeRectangle = EMR_RECTANGLE, - EmfRecordTypeRoundRect = EMR_ROUNDRECT, - EmfRecordTypeArc = EMR_ARC, - EmfRecordTypeChord = EMR_CHORD, - EmfRecordTypePie = EMR_PIE, - EmfRecordTypeSelectPalette = EMR_SELECTPALETTE, - EmfRecordTypeCreatePalette = EMR_CREATEPALETTE, - EmfRecordTypeSetPaletteEntries = EMR_SETPALETTEENTRIES, - EmfRecordTypeResizePalette = EMR_RESIZEPALETTE, - EmfRecordTypeRealizePalette = EMR_REALIZEPALETTE, - EmfRecordTypeExtFloodFill = EMR_EXTFLOODFILL, - EmfRecordTypeLineTo = EMR_LINETO, - EmfRecordTypeArcTo = EMR_ARCTO, - EmfRecordTypePolyDraw = EMR_POLYDRAW, - EmfRecordTypeSetArcDirection = EMR_SETARCDIRECTION, - EmfRecordTypeSetMiterLimit = EMR_SETMITERLIMIT, - EmfRecordTypeBeginPath = EMR_BEGINPATH, - EmfRecordTypeEndPath = EMR_ENDPATH, - EmfRecordTypeCloseFigure = EMR_CLOSEFIGURE, - EmfRecordTypeFillPath = EMR_FILLPATH, - EmfRecordTypeStrokeAndFillPath = EMR_STROKEANDFILLPATH, - EmfRecordTypeStrokePath = EMR_STROKEPATH, - EmfRecordTypeFlattenPath = EMR_FLATTENPATH, - EmfRecordTypeWidenPath = EMR_WIDENPATH, - EmfRecordTypeSelectClipPath = EMR_SELECTCLIPPATH, - EmfRecordTypeAbortPath = EMR_ABORTPATH, - EmfRecordTypeReserved_069 = 69, - EmfRecordTypeGdiComment = EMR_GDICOMMENT, - EmfRecordTypeFillRgn = EMR_FILLRGN, - EmfRecordTypeFrameRgn = EMR_FRAMERGN, - EmfRecordTypeInvertRgn = EMR_INVERTRGN, - EmfRecordTypePaintRgn = EMR_PAINTRGN, - EmfRecordTypeExtSelectClipRgn = EMR_EXTSELECTCLIPRGN, - EmfRecordTypeBitBlt = EMR_BITBLT, - EmfRecordTypeStretchBlt = EMR_STRETCHBLT, - EmfRecordTypeMaskBlt = EMR_MASKBLT, - EmfRecordTypePlgBlt = EMR_PLGBLT, - EmfRecordTypeSetDIBitsToDevice = EMR_SETDIBITSTODEVICE, - EmfRecordTypeStretchDIBits = EMR_STRETCHDIBITS, - EmfRecordTypeExtCreateFontIndirect = EMR_EXTCREATEFONTINDIRECTW, - EmfRecordTypeExtTextOutA = EMR_EXTTEXTOUTA, - EmfRecordTypeExtTextOutW = EMR_EXTTEXTOUTW, - EmfRecordTypePolyBezier16 = EMR_POLYBEZIER16, - EmfRecordTypePolygon16 = EMR_POLYGON16, - EmfRecordTypePolyline16 = EMR_POLYLINE16, - EmfRecordTypePolyBezierTo16 = EMR_POLYBEZIERTO16, - EmfRecordTypePolylineTo16 = EMR_POLYLINETO16, - EmfRecordTypePolyPolyline16 = EMR_POLYPOLYLINE16, - EmfRecordTypePolyPolygon16 = EMR_POLYPOLYGON16, - EmfRecordTypePolyDraw16 = EMR_POLYDRAW16, - EmfRecordTypeCreateMonoBrush = EMR_CREATEMONOBRUSH, - EmfRecordTypeCreateDIBPatternBrushPt = EMR_CREATEDIBPATTERNBRUSHPT, - EmfRecordTypeExtCreatePen = EMR_EXTCREATEPEN, - EmfRecordTypePolyTextOutA = EMR_POLYTEXTOUTA, - EmfRecordTypePolyTextOutW = EMR_POLYTEXTOUTW, - EmfRecordTypeSetICMMode = 98, - EmfRecordTypeCreateColorSpace = 99, - EmfRecordTypeSetColorSpace = 100, - EmfRecordTypeDeleteColorSpace = 101, - EmfRecordTypeGLSRecord = 102, - EmfRecordTypeGLSBoundedRecord = 103, - EmfRecordTypePixelFormat = 104, - EmfRecordTypeDrawEscape = 105, - EmfRecordTypeExtEscape = 106, - EmfRecordTypeStartDoc = 107, - EmfRecordTypeSmallTextOut = 108, - EmfRecordTypeForceUFIMapping = 109, - EmfRecordTypeNamedEscape = 110, - EmfRecordTypeColorCorrectPalette = 111, - EmfRecordTypeSetICMProfileA = 112, - EmfRecordTypeSetICMProfileW = 113, - EmfRecordTypeAlphaBlend = 114, - EmfRecordTypeSetLayout = 115, - EmfRecordTypeTransparentBlt = 116, - EmfRecordTypeReserved_117 = 117, - EmfRecordTypeGradientFill = 118, - EmfRecordTypeSetLinkedUFIs = 119, - EmfRecordTypeSetTextJustification = 120, - EmfRecordTypeColorMatchToTargetW = 121, - EmfRecordTypeCreateColorSpaceW = 122, - EmfRecordTypeMax = 122, - EmfRecordTypeMin = 1, - EmfPlusRecordTypeInvalid = GDIP_EMFPLUS_RECORD_BASE, - EmfPlusRecordTypeHeader, - EmfPlusRecordTypeEndOfFile, - EmfPlusRecordTypeComment, - EmfPlusRecordTypeGetDC, - EmfPlusRecordTypeMultiFormatStart, - EmfPlusRecordTypeMultiFormatSection, - EmfPlusRecordTypeMultiFormatEnd, - EmfPlusRecordTypeObject, - EmfPlusRecordTypeClear, - EmfPlusRecordTypeFillRects, - EmfPlusRecordTypeDrawRects, - EmfPlusRecordTypeFillPolygon, - EmfPlusRecordTypeDrawLines, - EmfPlusRecordTypeFillEllipse, - EmfPlusRecordTypeDrawEllipse, - EmfPlusRecordTypeFillPie, - EmfPlusRecordTypeDrawPie, - EmfPlusRecordTypeDrawArc, - EmfPlusRecordTypeFillRegion, - EmfPlusRecordTypeFillPath, - EmfPlusRecordTypeDrawPath, - EmfPlusRecordTypeFillClosedCurve, - EmfPlusRecordTypeDrawClosedCurve, - EmfPlusRecordTypeDrawCurve, - EmfPlusRecordTypeDrawBeziers, - EmfPlusRecordTypeDrawImage, - EmfPlusRecordTypeDrawImagePoints, - EmfPlusRecordTypeDrawString, - EmfPlusRecordTypeSetRenderingOrigin, - EmfPlusRecordTypeSetAntiAliasMode, - EmfPlusRecordTypeSetTextRenderingHint, - EmfPlusRecordTypeSetTextContrast, - EmfPlusRecordTypeSetGammaValue, - EmfPlusRecordTypeSetInterpolationMode, - EmfPlusRecordTypeSetPixelOffsetMode, - EmfPlusRecordTypeSetCompositingMode, - EmfPlusRecordTypeSetCompositingQuality, - EmfPlusRecordTypeSave, - EmfPlusRecordTypeRestore, - EmfPlusRecordTypeBeginContainer, - EmfPlusRecordTypeBeginContainerNoParams, - EmfPlusRecordTypeEndContainer, - EmfPlusRecordTypeSetWorldTransform, - EmfPlusRecordTypeResetWorldTransform, - EmfPlusRecordTypeMultiplyWorldTransform, - EmfPlusRecordTypeTranslateWorldTransform, - EmfPlusRecordTypeScaleWorldTransform, - EmfPlusRecordTypeRotateWorldTransform, - EmfPlusRecordTypeSetPageTransform, - EmfPlusRecordTypeResetClip, - EmfPlusRecordTypeSetClipRect, - EmfPlusRecordTypeSetClipPath, - EmfPlusRecordTypeSetClipRegion, - EmfPlusRecordTypeOffsetClip, - EmfPlusRecordTypeDrawDriverString, - EmfPlusRecordTypeStrokeFillPath, - EmfPlusRecordTypeSerializableObject, - EmfPlusRecordTypeSetTSGraphics, - EmfPlusRecordTypeSetTSClip, - EmfPlusRecordTotal, - EmfPlusRecordTypeMax = EmfPlusRecordTotal - 1, - EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader -} EmfPlusRecordType; - -typedef enum { - EmfToWmfBitsFlagsDefault = 0x00000000, - EmfToWmfBitsFlagsEmbedEmf = 0x00000001, - EmfToWmfBitsFlagsIncludePlaceable = 0x00000002, - EmfToWmfBitsFlagsNoXORClip = 0x00000004 -} EmfToWmfBitsFlags; - -typedef enum { - MetafileTypeInvalid = 0, - MetafileTypeWmf = 1, - MetafileTypeWmfPlaceable = 2, - MetafileTypeEmf = 3, - MetafileTypeEmfPlusOnly = 4, - MetafileTypeEmfPlusDual = 5 -} MetafileType; - -typedef enum { - EmfTypeEmfOnly = MetafileTypeEmf, - EmfTypeEmfPlusOnly = MetafileTypeEmfPlusOnly, - EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual -} EmfType; - -typedef enum { - EncoderParameterValueTypeByte = 1, - EncoderParameterValueTypeASCII = 2, - EncoderParameterValueTypeShort = 3, - EncoderParameterValueTypeLong = 4, - EncoderParameterValueTypeRational = 5, - EncoderParameterValueTypeLongRange = 6, - EncoderParameterValueTypeUndefined = 7, - EncoderParameterValueTypeRationalRange = 8, - EncoderParameterValueTypePointer = 9 -} EncoderParameterValueType; - -typedef enum { - EncoderValueColorTypeCMYK, - EncoderValueColorTypeYCCK, - EncoderValueCompressionLZW, - EncoderValueCompressionCCITT3, - EncoderValueCompressionCCITT4, - EncoderValueCompressionRle, - EncoderValueCompressionNone, - EncoderValueScanMethodInterlaced, - EncoderValueScanMethodNonInterlaced, - EncoderValueVersionGif87, - EncoderValueVersionGif89, - EncoderValueRenderProgressive, - EncoderValueRenderNonProgressive, - EncoderValueTransformRotate90, - EncoderValueTransformRotate180, - EncoderValueTransformRotate270, - EncoderValueTransformFlipHorizontal, - EncoderValueTransformFlipVertical, - EncoderValueMultiFrame, - EncoderValueLastFrame, - EncoderValueFlush, - EncoderValueFrameDimensionTime, - EncoderValueFrameDimensionResolution, - EncoderValueFrameDimensionPage -} EncoderValue; - -typedef enum { - FillModeAlternate, - FillModeWinding -} FillMode; - -typedef enum { - FlushIntentionFlush = 0, - FlushIntentionSync = 1 -} FlushIntention; - -typedef enum { - FontStyleRegular = 0, - FontStyleBold = 1, - FontStyleItalic = 2, - FontStyleBoldItalic = 3, - FontStyleUnderline = 4, - FontStyleStrikeout = 8 -} FontStyle; - -typedef enum { - HatchStyleHorizontal = 0, - HatchStyleVertical = 1, - HatchStyleForwardDiagonal = 2, - HatchStyleBackwardDiagonal = 3, - HatchStyleCross = 4, - HatchStyleDiagonalCross = 5, - HatchStyle05Percent = 6, - HatchStyle10Percent = 7, - HatchStyle20Percent = 8, - HatchStyle25Percent = 9, - HatchStyle30Percent = 10, - HatchStyle40Percent = 11, - HatchStyle50Percent = 12, - HatchStyle60Percent = 13, - HatchStyle70Percent = 14, - HatchStyle75Percent = 15, - HatchStyle80Percent = 16, - HatchStyle90Percent = 17, - HatchStyleLightDownwardDiagonal = 18, - HatchStyleLightUpwardDiagonal = 19, - HatchStyleDarkDownwardDiagonal = 20, - HatchStyleDarkUpwardDiagonal = 21, - HatchStyleWideDownwardDiagonal = 22, - HatchStyleWideUpwardDiagonal = 23, - HatchStyleLightVertical = 24, - HatchStyleLightHorizontal = 25, - HatchStyleNarrowVertical = 26, - HatchStyleNarrowHorizontal = 27, - HatchStyleDarkVertical = 28, - HatchStyleDarkHorizontal = 29, - HatchStyleDashedDownwardDiagonal = 30, - HatchStyleDashedUpwardDiagonal = 311, - HatchStyleDashedHorizontal = 32, - HatchStyleDashedVertical = 33, - HatchStyleSmallConfetti = 34, - HatchStyleLargeConfetti = 35, - HatchStyleZigZag = 36, - HatchStyleWave = 37, - HatchStyleDiagonalBrick = 38, - HatchStyleHorizontalBrick = 39, - HatchStyleWeave = 40, - HatchStylePlaid = 41, - HatchStyleDivot = 42, - HatchStyleDottedGrid = 43, - HatchStyleDottedDiamond = 44, - HatchStyleShingle = 45, - HatchStyleTrellis = 46, - HatchStyleSphere = 47, - HatchStyleSmallGrid = 48, - HatchStyleSmallCheckerBoard = 49, - HatchStyleLargeCheckerBoard = 50, - HatchStyleOutlinedDiamond = 51, - HatchStyleSolidDiamond = 52, - HatchStyleTotal = 53, - HatchStyleLargeGrid = HatchStyleCross, - HatchStyleMin = HatchStyleHorizontal, - HatchStyleMax = HatchStyleTotal - 1 -} HatchStyle; - -typedef enum { - HistogramFormatARGB, - HistogramFormatPARGB, - HistogramFormatRGB, - HistogramFormatGray, - HistogramFormatB, - HistogramFormatG, - HistogramFormatR, - HistogramFormatA -} HistogramFormat; - -typedef enum { - HotkeyPrefixNone = 0, - HotkeyPrefixShow = 1, - HotkeyPrefixHide = 2 -} HotkeyPrefix; - -typedef enum { - ImageCodecFlagsEncoder = 0x00000001, - ImageCodecFlagsDecoder = 0x00000002, - ImageCodecFlagsSupportBitmap = 0x00000004, - ImageCodecFlagsSupportVector = 0x00000008, - ImageCodecFlagsSeekableEncode = 0x00000010, - ImageCodecFlagsBlockingDecode = 0x00000020, - ImageCodecFlagsBuiltin = 0x00010000, - ImageCodecFlagsSystem = 0x00020000, - ImageCodecFlagsUser = 0x00040000 -} ImageCodecFlags; - -typedef enum { - ImageFlagsNone = 0, - ImageFlagsScalable = 0x0001, - ImageFlagsHasAlpha = 0x0002, - ImageFlagsHasTranslucent = 0x0004, - ImageFlagsPartiallyScalable = 0x0008, - ImageFlagsColorSpaceRGB = 0x0010, - ImageFlagsColorSpaceCMYK = 0x0020, - ImageFlagsColorSpaceGRAY = 0x0040, - ImageFlagsColorSpaceYCBCR = 0x0080, - ImageFlagsColorSpaceYCCK = 0x0100, - ImageFlagsHasRealDPI = 0x1000, - ImageFlagsHasRealPixelSize = 0x2000, - ImageFlagsReadOnly = 0x00010000, - ImageFlagsCaching = 0x00020000 -} ImageFlags; - -typedef enum { - ImageLockModeRead = 0x0001, - ImageLockModeWrite = 0x0002, - ImageLockModeUserInputBuf = 0x0004 -} ImageLockMode; - -typedef enum { - ImageTypeUnknown = 0, - ImageTypeBitmap = 1, - ImageTypeMetafile = 2 -} ImageType; - -typedef enum { - InterpolationModeInvalid = QualityModeInvalid, - InterpolationModeDefault = QualityModeDefault, - InterpolationModeLowQuality = QualityModeLow, - InterpolationModeHighQuality = QualityModeHigh, - InterpolationModeBilinear = QualityModeHigh + 1, - InterpolationModeBicubic = QualityModeHigh + 2, - InterpolationModeNearestNeighbor = QualityModeHigh + 3, - InterpolationModeHighQualityBilinear = QualityModeHigh + 4, - InterpolationModeHighQualityBicubic = QualityModeHigh + 5 -} InterpolationMode; - -typedef enum { - ItemDataPositionAfterHeader = 0x0, - ItemDataPositionAfterPalette = 0x1, - ItemDataPositionAfterBits = 0x2 -} ItemDataPosition; - -typedef enum { - LinearGradientModeHorizontal = 0, - LinearGradientModeVertical = 1, - LinearGradientModeForwardDiagonal = 2, - LinearGradientModeBackwardDiagonal = 3 -} LinearGradientMode; - -typedef enum { - LineCapFlat = 0, - LineCapSquare = 1, - LineCapRound = 2, - LineCapTriangle = 3, - LineCapNoAnchor = 0x10, - LineCapSquareAnchor = 0x11, - LineCapRoundAnchor = 0x12, - LineCapDiamondAnchor = 0x13, - LineCapArrowAnchor = 0x14, - LineCapCustom = 0xff -} LineCap; - -typedef enum { - LineJoinMiter = 0, - LineJoinBevel = 1, - LineJoinRound = 2, - LineJoinMiterClipped = 3 -} LineJoin; - -typedef enum { - MatrixOrderPrepend = 0, - MatrixOrderAppend = 1 -} MatrixOrder; - -typedef enum { - UnitWorld = 0, - UnitDisplay = 1, - UnitPixel = 2, - UnitPoint = 3, - UnitInch = 4, - UnitDocument = 5, - UnitMillimeter = 6 -} Unit; - -typedef enum { - MetafileFrameUnitPixel = UnitPixel, - MetafileFrameUnitPoint = UnitPoint, - MetafileFrameUnitInch = UnitInch, - MetafileFrameUnitDocument = UnitDocument, - MetafileFrameUnitMillimeter = UnitDocument + 1, - MetafileFrameUnitGdi = UnitDocument + 2 -} MetafileFrameUnit; - -typedef enum { - ObjectTypeInvalid, - ObjectTypeBrush, - ObjectTypePen, - ObjectTypePath, - ObjectTypeRegion, - ObjectTypeFont, - ObjectTypeStringFormat, - ObjectTypeImageAttributes, - ObjectTypeCustomLineCap, - ObjectTypeGraphics, - ObjectTypeMax = ObjectTypeGraphics, - ObjectTypeMin = ObjectTypeBrush -} ObjectType; - -typedef enum { - PaletteFlagsHasAlpha = 0x0001, - PaletteFlagsGrayScale = 0x0002, - PaletteFlagsHalftone = 0x0004 -} PaletteFlags; - -typedef enum { - PaletteTypeCustom = 0, - PaletteTypeOptimal = 1, - PaletteTypeFixedBW = 2, - PaletteTypeFixedHalftone8 = 3, - PaletteTypeFixedHalftone27 = 4, - PaletteTypeFixedHalftone64 = 5, - PaletteTypeFixedHalftone125 = 6, - PaletteTypeFixedHalftone216 = 7, - PaletteTypeFixedHalftone252 = 8, - PaletteTypeFixedHalftone256 = 9 -} PaletteType; - -typedef enum { - PathPointTypeStart = 0, - PathPointTypeLine = 1, - PathPointTypeBezier = 3, - PathPointTypePathTypeMask = 0x7, - PathPointTypePathDashMode = 0x10, - PathPointTypePathMarker = 0x20, - PathPointTypeCloseSubpath = 0x80, - PathPointTypeBezier3 = 3 -} PathPointType; - -typedef enum { - PenAlignmentCenter = 0, - PenAlignmentInset = 1 -} PenAlignment; - -typedef enum { - PenTypeSolidColor = BrushTypeSolidColor, - PenTypeHatchFill = BrushTypeHatchFill, - PenTypeTextureFill = BrushTypeTextureFill, - PenTypePathGradient = BrushTypePathGradient, - PenTypeLinearGradient = BrushTypeLinearGradient, - PenTypeUnknown = -1 -} PenType; - -typedef enum { - PixelOffsetModeInvalid = QualityModeInvalid, - PixelOffsetModeDefault = QualityModeDefault, - PixelOffsetModeHighSpeed = QualityModeLow, - PixelOffsetModeHighQuality = QualityModeHigh, - PixelOffsetModeNone = QualityModeHigh + 1, - PixelOffsetModeHalf = QualityModeHigh + 2 -} PixelOffsetMode; - -typedef enum { - RotateNoneFlipNone = 0, - Rotate90FlipNone = 1, - Rotate180FlipNone = 2, - Rotate270FlipNone = 3, - RotateNoneFlipX = 4, - Rotate90FlipX = 5, - Rotate180FlipX = 6, - Rotate270FlipX = 7, - RotateNoneFlipY = Rotate180FlipX, - Rotate90FlipY = Rotate270FlipX, - Rotate180FlipY = RotateNoneFlipX, - Rotate270FlipY = Rotate90FlipX, - RotateNoneFlipXY = Rotate180FlipNone, - Rotate90FlipXY = Rotate270FlipNone, - Rotate180FlipXY = RotateNoneFlipNone, - Rotate270FlipXY = Rotate90FlipNone -} RotateFlipType; - -typedef enum { - SmoothingModeInvalid = QualityModeInvalid, - SmoothingModeDefault = QualityModeDefault, - SmoothingModeHighSpeed = QualityModeLow, - SmoothingModeHighQuality = QualityModeHigh, - SmoothingModeNone, - SmoothingModeAntiAlias8x4, - SmoothingModeAntiAlias = SmoothingModeAntiAlias8x4, - SmoothingModeAntiAlias8x8 -} SmoothingMode; - -typedef enum { - StringAlignmentNear = 0, - StringAlignmentCenter = 1, - StringAlignmentFar = 2 -} StringAlignment; - -typedef enum { - StringDigitSubstituteUser = 0, - StringDigitSubstituteNone = 1, - StringDigitSubstituteNational = 2, - StringDigitSubstituteTraditional = 3 -} StringDigitSubstitute; - -typedef enum { - StringFormatFlagsDirectionRightToLeft = 0x00000001, - StringFormatFlagsDirectionVertical = 0x00000002, - StringFormatFlagsNoFitBlackBox = 0x00000004, - StringFormatFlagsDisplayFormatControl = 0x00000020, - StringFormatFlagsNoFontFallback = 0x00000400, - StringFormatFlagsMeasureTrailingSpaces = 0x00000800, - StringFormatFlagsNoWrap = 0x00001000, - StringFormatFlagsLineLimit = 0x00002000, - StringFormatFlagsNoClip = 0x00004000 -} StringFormatFlags; - -typedef enum { - StringTrimmingNone = 0, - StringTrimmingCharacter = 1, - StringTrimmingWord = 2, - StringTrimmingEllipsisCharacter = 3, - StringTrimmingEllipsisWord = 4, - StringTrimmingEllipsisPath = 5 -} StringTrimming; - -typedef enum { - TextRenderingHintSystemDefault = 0, - TextRenderingHintSingleBitPerPixelGridFit = 1, - TextRenderingHintSingleBitPerPixel = 2, - TextRenderingHintAntiAliasGridFit = 3, - TextRenderingHintAntiAlias = 4, - TextRenderingHintClearTypeGridFit = 5 -} TextRenderingHint; - -typedef enum { - WarpModePerspective = 0, - WarpModeBilinear = 1 -} WarpMode; - -typedef enum { - WrapModeTile = 0, - WrapModeTileFlipX = 1, - WrapModeTileFlipY = 2, - WrapModeTileFlipXY = 3, - WrapModeClamp = 4 -} WrapMode; - -enum GpTestControlEnum { - TestControlForceBilinear = 0, - TestControlNoICM = 1, - TestControlGetBuildNumber = 2 +enum SmoothingMode +{ + SmoothingModeInvalid = QualityModeInvalid, + SmoothingModeDefault = QualityModeDefault, + SmoothingModeHighSpeed = QualityModeLow, + SmoothingModeHighQuality = QualityModeHigh, + SmoothingModeNone, + SmoothingModeAntiAlias }; -enum CustomLineCapType { - CustomLineCapTypeDefault = 0, - CustomLineCapTypeAdjustableArrow = 1 +enum CompositingQuality +{ + CompositingQualityInvalid = QualityModeInvalid, + CompositingQualityDefault = QualityModeDefault, + CompositingQualityHighSpeed = QualityModeLow, + CompositingQualityHighQuality = QualityModeHigh, + CompositingQualityGammaCorrected, + CompositingQualityAssumeLinear }; -#endif /* _GDIPLUSENUMS_H */ +enum InterpolationMode +{ + InterpolationModeInvalid = QualityModeInvalid, + InterpolationModeDefault = QualityModeDefault, + InterpolationModeLowQuality = QualityModeLow, + InterpolationModeHighQuality = QualityModeHigh, + InterpolationModeBilinear, + InterpolationModeBicubic, + InterpolationModeNearestNeighbor, + InterpolationModeHighQualityBilinear, + InterpolationModeHighQualityBicubic +}; + +enum PenAlignment +{ + PenAlignmentCenter = 0, + PenAlignmentInset = 1 +}; + +enum PixelOffsetMode +{ + PixelOffsetModeInvalid = QualityModeInvalid, + PixelOffsetModeDefault = QualityModeDefault, + PixelOffsetModeHighSpeed = QualityModeLow, + PixelOffsetModeHighQuality = QualityModeHigh, + PixelOffsetModeNone, + PixelOffsetModeHalf +}; + +enum DashCap +{ + DashCapFlat = 0, + DashCapRound = 2, + DashCapTriangle = 3 +}; + +enum DashStyle +{ + DashStyleSolid, + DashStyleDash, + DashStyleDot, + DashStyleDashDot, + DashStyleDashDotDot, + DashStyleCustom +}; + +enum MatrixOrder +{ + MatrixOrderPrepend = 0, + MatrixOrderAppend = 1 +}; + +enum ImageType +{ + ImageTypeUnknown, + ImageTypeBitmap, + ImageTypeMetafile +}; + +enum WrapMode +{ + WrapModeTile, + WrapModeTileFlipX, + WrapModeTileFlipY, + WrapModeTileFlipXY, + WrapModeClamp +}; + +enum MetafileType +{ + MetafileTypeInvalid, + MetafileTypeWmf, + MetafileTypeWmfPlaceable, + MetafileTypeEmf, + MetafileTypeEmfPlusOnly, + MetafileTypeEmfPlusDual +}; + +enum LinearGradientMode +{ + LinearGradientModeHorizontal, + LinearGradientModeVertical, + LinearGradientModeForwardDiagonal, + LinearGradientModeBackwardDiagonal +}; + +enum EmfType +{ + EmfTypeEmfOnly = MetafileTypeEmf, + EmfTypeEmfPlusOnly = MetafileTypeEmfPlusOnly, + EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual +}; + +enum CompositingMode +{ + CompositingModeSourceOver, + CompositingModeSourceCopy +}; + +enum TextRenderingHint +{ + TextRenderingHintSystemDefault = 0, + TextRenderingHintSingleBitPerPixelGridFit, + TextRenderingHintSingleBitPerPixel, + TextRenderingHintAntiAliasGridFit, + TextRenderingHintAntiAlias, + TextRenderingHintClearTypeGridFit +}; + +enum StringAlignment +{ + StringAlignmentNear = 0, + StringAlignmentCenter = 1, + StringAlignmentFar = 2 +}; + +enum StringFormatFlags +{ + StringFormatFlagsDirectionRightToLeft = 0x00000001, + StringFormatFlagsDirectionVertical = 0x00000002, + StringFormatFlagsNoFitBlackBox = 0x00000004, + StringFormatFlagsDisplayFormatControl = 0x00000020, + StringFormatFlagsNoFontFallback = 0x00000400, + StringFormatFlagsMeasureTrailingSpaces = 0x00000800, + StringFormatFlagsNoWrap = 0x00001000, + StringFormatFlagsLineLimit = 0x00002000, + StringFormatFlagsNoClip = 0x00004000 +}; + +enum StringTrimming +{ + StringTrimmingNone = 0, + StringTrimmingCharacter = 1, + StringTrimmingWord = 2, + StringTrimmingEllipsisCharacter = 3, + StringTrimmingEllipsisWord = 4, + StringTrimmingEllipsisPath = 5 +}; + +enum HotkeyPrefix +{ + HotkeyPrefixNone = 0, + HotkeyPrefixShow = 1, + HotkeyPrefixHide = 2 +}; + +enum ImageCodecFlags +{ + ImageCodecFlagsEncoder = 1, + ImageCodecFlagsDecoder = 2, + ImageCodecFlagsSupportBitmap = 4, + ImageCodecFlagsSupportVector = 8, + ImageCodecFlagsSeekableEncode = 16, + ImageCodecFlagsBlockingDecode = 32, + ImageCodecFlagsBuiltin = 65536, + ImageCodecFlagsSystem = 131072, + ImageCodecFlagsUser = 262144 +}; + +#ifndef __cplusplus + +typedef enum Unit Unit; +typedef enum BrushType BrushType; +typedef enum FillMode FillMode; +typedef enum LineCap LineCap; +typedef enum PathPointType PathPointType; +typedef enum LineJoin LineJoin; +typedef enum QualityMode QualityMode; +typedef enum SmoothingMode SmoothingMode; +typedef enum CompositingQuality CompositingQuality; +typedef enum InterpolationMode InterpolationMode; +typedef enum PixelOffsetMode PixelOffsetMode; +typedef enum DashCap DashCap; +typedef enum DashStyle DashStyle; +typedef enum MatrixOrder MatrixOrder; +typedef enum ImageType ImageType; +typedef enum WrapMode WrapMode; +typedef enum MetafileType MetafileType; +typedef enum LinearGradientMode LinearGradientMode; +typedef enum EmfType EmfType; +typedef enum CompositingMode CompositingMode; +typedef enum TextRenderingHint TextRenderingHint; +typedef enum StringAlignment StringAlignment; +typedef enum StringTrimming StringTrimming; +typedef enum StringFormatFlags StringFormatFlags; +typedef enum HotkeyPrefix HotkeyPrefix; +typedef enum PenAlignment GpPenAlignment; +typedef enum ImageCodecFlags ImageCodecFlags; + +#endif /* end of c typedefs */ + +#endif diff --git a/reactos/include/psdk/gdiplusflat.h b/reactos/include/psdk/gdiplusflat.h index be9b99596b3..fe7bdbb9dd4 100644 --- a/reactos/include/psdk/gdiplusflat.h +++ b/reactos/include/psdk/gdiplusflat.h @@ -1,683 +1,323 @@ /* - * GdiPlusFlat.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ -#ifndef _GDIPLUSFLAT_H -#define _GDIPLUSFLAT_H +#ifndef _FLATAPI_H +#define _FLATAPI_H -#if __GNUC__ >=3 -#pragma GCC system_header -#endif +#define WINGDIPAPI __stdcall + +#define GDIPCONST const #ifdef __cplusplus extern "C" { #endif -#define WINGDIPAPI __stdcall -#define GDIPCONST const +GpStatus WINGDIPAPI GdipClonePen(GpPen*,GpPen**); +GpStatus WINGDIPAPI GdipCreatePen1(ARGB,REAL,GpUnit,GpPen**); +GpStatus WINGDIPAPI GdipCreatePen2(GpBrush*,REAL,GpUnit,GpPen**); +GpStatus WINGDIPAPI GdipDeletePen(GpPen*); +GpStatus WINGDIPAPI GdipGetPenBrushFill(GpPen*,GpBrush**); +GpStatus WINGDIPAPI GdipGetPenColor(GpPen*,ARGB*); +GpStatus WINGDIPAPI GdipGetPenDashArray(GpPen*,REAL*,INT); +GpStatus WINGDIPAPI GdipGetPenDashOffset(GpPen*,REAL*); +GpStatus WINGDIPAPI GdipGetPenDashStyle(GpPen*,GpDashStyle*); +GpStatus WINGDIPAPI GdipSetPenBrushFill(GpPen*,GpBrush*); +GpStatus WINGDIPAPI GdipSetPenColor(GpPen*,ARGB); +GpStatus WINGDIPAPI GdipSetPenCustomEndCap(GpPen*,GpCustomLineCap*); +GpStatus WINGDIPAPI GdipSetPenCustomStartCap(GpPen*,GpCustomLineCap*); +GpStatus WINGDIPAPI GdipSetPenDashArray(GpPen*,GDIPCONST REAL*,INT); +GpStatus WINGDIPAPI GdipSetPenDashOffset(GpPen*,REAL); +GpStatus WINGDIPAPI GdipSetPenDashStyle(GpPen*,GpDashStyle); +GpStatus WINGDIPAPI GdipSetPenEndCap(GpPen*,GpLineCap); +GpStatus WINGDIPAPI GdipSetPenLineCap197819(GpPen*,GpLineCap,GpLineCap,GpDashCap); +GpStatus WINGDIPAPI GdipSetPenLineJoin(GpPen*,GpLineJoin); +GpStatus WINGDIPAPI GdipSetPenMiterLimit(GpPen*,REAL); +GpStatus WINGDIPAPI GdipSetPenStartCap(GpPen*,GpLineCap); +GpStatus WINGDIPAPI GdipSetPenWidth(GpPen*,REAL); -GpStatus WINGDIPAPI GdipCreateAdjustableArrowCap(REAL height, REAL width, BOOL isFilled, GpAdjustableArrowCap **cap); -GpStatus WINGDIPAPI GdipSetAdjustableArrowCapHeight(GpAdjustableArrowCap* cap, REAL height); -GpStatus WINGDIPAPI GdipGetAdjustableArrowCapHeight(GpAdjustableArrowCap* cap, REAL* height); -GpStatus WINGDIPAPI GdipSetAdjustableArrowCapWidth(GpAdjustableArrowCap* cap, REAL width); -GpStatus WINGDIPAPI GdipGetAdjustableArrowCapWidth(GpAdjustableArrowCap* cap, REAL* width); -GpStatus WINGDIPAPI GdipSetAdjustableArrowCapMiddleInset(GpAdjustableArrowCap* cap, REAL middleInset); -GpStatus WINGDIPAPI GdipGetAdjustableArrowCapMiddleInset(GpAdjustableArrowCap* cap, REAL* middleInset); -GpStatus WINGDIPAPI GdipSetAdjustableArrowCapFillState(GpAdjustableArrowCap* cap, BOOL fillState); -GpStatus WINGDIPAPI GdipGetAdjustableArrowCapFillState(GpAdjustableArrowCap* cap, BOOL* fillState); +GpStatus WINGDIPAPI GdipCreateFromHDC(HDC,GpGraphics**); +GpStatus WINGDIPAPI GdipCreateFromHDC2(HDC,HANDLE,GpGraphics**); +GpStatus WINGDIPAPI GdipCreateFromHWND(HWND,GpGraphics**); +GpStatus WINGDIPAPI GdipCreateLineBrush(GDIPCONST GpPointF*,GDIPCONST GpPointF*, + ARGB,ARGB,GpWrapMode,GpLineGradient**); +GpStatus WINGDIPAPI GdipCreateLineBrushI(GDIPCONST GpPoint*,GDIPCONST GpPoint*, + ARGB,ARGB,GpWrapMode,GpLineGradient**); +GpStatus WINGDIPAPI GdipCreateLineBrushFromRect(GDIPCONST GpRectF*,ARGB,ARGB, + LinearGradientMode,GpWrapMode,GpLineGradient**); +GpStatus WINGDIPAPI GdipCreateLineBrushFromRectI(GDIPCONST GpRect*,ARGB,ARGB, + LinearGradientMode,GpWrapMode,GpLineGradient**); +GpStatus WINGDIPAPI GdipCreateMetafileFromEmf(HENHMETAFILE,BOOL,GpMetafile**); +GpStatus WINGDIPAPI GdipCreateMetafileFromWmf(HMETAFILE,BOOL, + GDIPCONST WmfPlaceableFileHeader*,GpMetafile**); +GpStatus WINGDIPAPI GdipCreateStreamOnFile(GDIPCONST WCHAR*,UINT,IStream**); +GpStatus WINGDIPAPI GdipDeleteGraphics(GpGraphics *); +GpStatus WINGDIPAPI GdipDrawArc(GpGraphics*,GpPen*,REAL,REAL,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipDrawArcI(GpGraphics*,GpPen*,INT,INT,INT,INT,REAL,REAL); +GpStatus WINGDIPAPI GdipDrawBezier(GpGraphics*,GpPen*,REAL,REAL,REAL,REAL,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipDrawBezierI(GpGraphics*,GpPen*,INT,INT,INT,INT,INT,INT,INT,INT); +GpStatus WINGDIPAPI GdipDrawCurve(GpGraphics*,GpPen*,GDIPCONST GpPointF*,INT); +GpStatus WINGDIPAPI GdipDrawCurveI(GpGraphics*,GpPen*,GDIPCONST GpPoint*,INT); +GpStatus WINGDIPAPI GdipDrawCurve2(GpGraphics*,GpPen*,GDIPCONST GpPointF*,INT,REAL); +GpStatus WINGDIPAPI GdipDrawCurve2I(GpGraphics*,GpPen*,GDIPCONST GpPoint*,INT,REAL); +GpStatus WINGDIPAPI GdipDrawImageI(GpGraphics*,GpImage*,INT,INT); +GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics*,GpImage*, + GDIPCONST GpPointF*,INT,REAL,REAL,REAL,REAL,GpUnit, + GDIPCONST GpImageAttributes*,DrawImageAbort,VOID*); +GpStatus WINGDIPAPI GdipDrawImagePointsRectI(GpGraphics*,GpImage*, + GDIPCONST GpPointF*,INT,INT,INT,INT,INT,GpUnit, + GDIPCONST GpImageAttributes*,DrawImageAbort,VOID*); +GpStatus WINGDIPAPI GdipDrawImageRectRect(GpGraphics*,GpImage*,REAL,REAL,REAL, + REAL,REAL,REAL,REAL,REAL,GpUnit,GDIPCONST GpImageAttributes*,DrawImageAbort, + VOID*); +GpStatus WINGDIPAPI GdipDrawImageRectRectI(GpGraphics*,GpImage*,INT,INT,INT, + INT,INT,INT,INT,INT,GpUnit,GDIPCONST GpImageAttributes*,DrawImageAbort, + VOID*); +GpStatus WINGDIPAPI GdipDrawLine(GpGraphics*,GpPen*,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipDrawLineI(GpGraphics*,GpPen*,INT,INT,INT,INT); +GpStatus WINGDIPAPI GdipDrawLines(GpGraphics*,GpPen*,GDIPCONST GpPointF*,INT); +GpStatus WINGDIPAPI GdipDrawLinesI(GpGraphics*,GpPen*,GDIPCONST GpPoint*,INT); +GpStatus WINGDIPAPI GdipDrawPath(GpGraphics*,GpPen*,GpPath*); +GpStatus WINGDIPAPI GdipDrawPie(GpGraphics*,GpPen*,REAL,REAL,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipDrawPieI(GpGraphics*,GpPen*,INT,INT,INT,INT,REAL,REAL); +GpStatus WINGDIPAPI GdipDrawRectangle(GpGraphics*,GpPen*,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipDrawRectangleI(GpGraphics*,GpPen*,INT,INT,INT,INT); +GpStatus WINGDIPAPI GdipDrawRectangles(GpGraphics*,GpPen*,GDIPCONST GpRectF*,INT); +GpStatus WINGDIPAPI GdipDrawRectanglesI(GpGraphics*,GpPen*,GDIPCONST GpRect*,INT); +GpStatus WINGDIPAPI GdipDrawString(GpGraphics*,GDIPCONST WCHAR*,INT, + GDIPCONST GpFont*,GDIPCONST RectF*, GDIPCONST GpStringFormat*, + GDIPCONST GpBrush*); +GpStatus WINGDIPAPI GdipFillPath(GpGraphics*,GpBrush*,GpPath*); +GpStatus WINGDIPAPI GdipFillPie(GpGraphics*,GpBrush*,REAL,REAL,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipFillPieI(GpGraphics*,GpBrush*,INT,INT,INT,INT,REAL,REAL); +GpStatus WINGDIPAPI GdipFillPolygon(GpGraphics*,GpBrush*,GDIPCONST GpPointF*, + INT,GpFillMode); +GpStatus WINGDIPAPI GdipFillPolygonI(GpGraphics*,GpBrush*,GDIPCONST GpPoint*, + INT,GpFillMode); +GpStatus WINGDIPAPI GdipFillPolygon2(GpGraphics*,GpBrush*,GDIPCONST GpPointF*,INT); +GpStatus WINGDIPAPI GdipFillPolygon2I(GpGraphics*,GpBrush*,GDIPCONST GpPoint*,INT); +GpStatus WINGDIPAPI GdipFillRectangle(GpGraphics*,GpBrush*,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipFillRectangleI(GpGraphics*,GpBrush*,INT,INT,INT,INT); +GpStatus WINGDIPAPI GdipGetCompositingMode(GpGraphics*,CompositingMode*); +GpStatus WINGDIPAPI GdipGetCompositingQuality(GpGraphics*,CompositingQuality*); +GpStatus WINGDIPAPI GdipGetImageDimension(GpImage*,REAL*,REAL*); +GpStatus WINGDIPAPI GdipGetInterpolationMode(GpGraphics*,InterpolationMode*); +GpStatus WINGDIPAPI GdipGetPageScale(GpGraphics*,REAL*); +GpStatus WINGDIPAPI GdipGetPageUnit(GpGraphics*,GpUnit*); +GpStatus WINGDIPAPI GdipGetPixelOffsetMode(GpGraphics*,PixelOffsetMode*); +GpStatus WINGDIPAPI GdipGetSmoothingMode(GpGraphics*,SmoothingMode*); +GpStatus WINGDIPAPI GdipGetTextRenderingHint(GpGraphics*,TextRenderingHint*); +GpStatus WINGDIPAPI GdipGetWorldTransform(GpGraphics*,GpMatrix*); +GpStatus WINGDIPAPI GdipMeasureString(GpGraphics*,GDIPCONST WCHAR*,INT, + GDIPCONST GpFont*,GDIPCONST RectF*,GDIPCONST GpStringFormat*,RectF*,INT*,INT*); +GpStatus WINGDIPAPI GdipRestoreGraphics(GpGraphics*,GraphicsState); +GpStatus WINGDIPAPI GdipRotateWorldTransform(GpGraphics*,REAL,GpMatrixOrder); +GpStatus WINGDIPAPI GdipSaveGraphics(GpGraphics*,GraphicsState*); +GpStatus WINGDIPAPI GdipScaleWorldTransform(GpGraphics*,REAL,REAL,GpMatrixOrder); +GpStatus WINGDIPAPI GdipSetCompositingMode(GpGraphics*,CompositingMode); +GpStatus WINGDIPAPI GdipSetCompositingQuality(GpGraphics*,CompositingQuality); +GpStatus WINGDIPAPI GdipSetInterpolationMode(GpGraphics*,InterpolationMode); +GpStatus WINGDIPAPI GdipSetPageScale(GpGraphics*,REAL); +GpStatus WINGDIPAPI GdipSetPageUnit(GpGraphics*,GpUnit); +GpStatus WINGDIPAPI GdipSetPixelOffsetMode(GpGraphics*,PixelOffsetMode); +GpStatus WINGDIPAPI GdipSetSmoothingMode(GpGraphics*,SmoothingMode); +GpStatus WINGDIPAPI GdipSetTextRenderingHint(GpGraphics*,TextRenderingHint); +GpStatus WINGDIPAPI GdipSetWorldTransform(GpGraphics*,GpMatrix*); +GpStatus WINGDIPAPI GdipTranslateWorldTransform(GpGraphics*,REAL,REAL,GpMatrixOrder); -GpStatus WINGDIPAPI GdipCreateBitmapFromStream(IStream* stream, GpBitmap **bitmap); -GpStatus WINGDIPAPI GdipCreateBitmapFromFile(GDIPCONST WCHAR* filename, GpBitmap **bitmap); -GpStatus WINGDIPAPI GdipCreateBitmapFromStreamICM(IStream* stream, GpBitmap **bitmap); -GpStatus WINGDIPAPI GdipCreateBitmapFromFileICM(GDIPCONST WCHAR* filename, GpBitmap **bitmap); -GpStatus WINGDIPAPI GdipCreateBitmapFromScan0(INT width, INT height, INT stride, PixelFormat format, BYTE* scan0, GpBitmap** bitmap); -GpStatus WINGDIPAPI GdipCreateBitmapFromGraphics(INT width, INT height, GpGraphics* target, GpBitmap** bitmap); -GpStatus WINGDIPAPI GdipCreateBitmapFromDirectDrawSurface(IDirectDrawSurface7* surface, GpBitmap** bitmap); -GpStatus WINGDIPAPI GdipCreateBitmapFromGdiDib(GDIPCONST BITMAPINFO* gdiBitmapInfo, VOID* gdiBitmapData, GpBitmap** bitmap); -GpStatus WINGDIPAPI GdipCreateBitmapFromHBITMAP(HBITMAP hbm, HPALETTE hpal, GpBitmap** bitmap); -GpStatus WINGDIPAPI GdipCreateHBITMAPFromBitmap(GpBitmap* bitmap, HBITMAP* hbmReturn, ARGB background); -GpStatus WINGDIPAPI GdipCreateBitmapFromHICON(HICON hicon, GpBitmap** bitmap); -GpStatus WINGDIPAPI GdipCreateHICONFromBitmap(GpBitmap* bitmap, HICON* hbmReturn); -GpStatus WINGDIPAPI GdipCreateBitmapFromResource(HINSTANCE hInstance, GDIPCONST WCHAR* lpBitmapName, GpBitmap** bitmap); -GpStatus WINGDIPAPI GdipCloneBitmapArea(REAL x, REAL y, REAL width, REAL height, PixelFormat format, GpBitmap *srcBitmap, GpBitmap **dstBitmap); -GpStatus WINGDIPAPI GdipCloneBitmapAreaI(INT x, INT y, INT width, INT height, PixelFormat format, GpBitmap *srcBitmap, GpBitmap **dstBitmap); -GpStatus WINGDIPAPI GdipBitmapLockBits(GpBitmap* bitmap, GDIPCONST GpRect* rect, UINT flags, PixelFormat format, BitmapData* lockedBitmapData); -GpStatus WINGDIPAPI GdipBitmapUnlockBits(GpBitmap* bitmap, BitmapData* lockedBitmapData); -GpStatus WINGDIPAPI GdipBitmapGetPixel(GpBitmap* bitmap, INT x, INT y, ARGB *color); -GpStatus WINGDIPAPI GdipBitmapSetPixel(GpBitmap* bitmap, INT x, INT y, ARGB color); -GpStatus WINGDIPAPI GdipBitmapSetResolution(GpBitmap* bitmap, REAL xdpi, REAL ydpi); -GpStatus WINGDIPAPI GdipBitmapConvertFormat(IN GpBitmap *pInputBitmap, PixelFormat format, DitherType dithertype, PaletteType palettetype, ColorPalette *palette, REAL alphaThresholdPercent); -GpStatus WINGDIPAPI GdipInitializePalette(OUT ColorPalette *palette, PaletteType palettetype, INT optimalColors, BOOL useTransparentColor, GpBitmap *bitmap); -GpStatus WINGDIPAPI GdipBitmapApplyEffect(GpBitmap* bitmap, CGpEffect *effect, RECT *roi, BOOL useAuxData, VOID **auxData, INT *auxDataSize); -GpStatus WINGDIPAPI GdipBitmapCreateApplyEffect(GpBitmap **inputBitmaps, INT numInputs, CGpEffect *effect, RECT *roi, RECT *outputRect, GpBitmap **outputBitmap, BOOL useAuxData, VOID **auxData, INT *auxDataSize); -GpStatus WINGDIPAPI GdipBitmapGetHistogram(GpBitmap* bitmap, IN HistogramFormat format, IN UINT NumberOfEntries, OUT UINT *channel0, OUT UINT *channel1, OUT UINT *channel2, OUT UINT *channel3); -GpStatus WINGDIPAPI GdipBitmapGetHistogramSize(IN HistogramFormat format, OUT UINT *NumberOfEntries); -Status __stdcall GdipCreateEffect(const GUID guid, CGpEffect **effect); -Status __stdcall GdipDeleteEffect(CGpEffect *effect); -Status __stdcall GdipGetEffectParameterSize(CGpEffect *effect, UINT *size); -Status __stdcall GdipSetEffectParameters(CGpEffect *effect, const VOID *params, const UINT size); -Status __stdcall GdipGetEffectParameters(CGpEffect *effect, UINT *size, VOID *params); -GpStatus WINGDIPAPI GdipTestControl(GpTestControlEnum control, void * param); +GpStatus WINGDIPAPI GdipCloneBrush(GpBrush*,GpBrush**); +GpStatus WINGDIPAPI GdipCreatePathGradient(GDIPCONST GpPointF*,INT,GpWrapMode,GpPathGradient**); +GpStatus WINGDIPAPI GdipCreatePathGradientI(GDIPCONST GpPoint*,INT,GpWrapMode,GpPathGradient**); +GpStatus WINGDIPAPI GdipCreatePathGradientFromPath(GDIPCONST GpPath*, + GpPathGradient**); +GpStatus WINGDIPAPI GdipCreateSolidFill(ARGB,GpSolidFill**); +GpStatus WINGDIPAPI GdipCreateTexture(GpImage*,GpWrapMode,GpTexture**); +GpStatus WINGDIPAPI GdipCreateTexture2(GpImage*,GpWrapMode,REAL,REAL,REAL,REAL,GpTexture**); +GpStatus WINGDIPAPI GdipCreateTexture2I(GpImage*,GpWrapMode,INT,INT,INT,INT,GpTexture**); +GpStatus WINGDIPAPI GdipCreateTextureIA(GpImage*,GDIPCONST GpImageAttributes*, + REAL,REAL,REAL,REAL,GpTexture**); +GpStatus WINGDIPAPI GdipCreateTextureIAI(GpImage*,GDIPCONST GpImageAttributes*, + INT,INT,INT,INT,GpTexture**); +GpStatus WINGDIPAPI GdipDeleteBrush(GpBrush*); +GpStatus WINGDIPAPI GdipGetBrushType(GpBrush*,GpBrushType*); +GpStatus WINGDIPAPI GdipGetLineGammaCorrection(GpLineGradient*,BOOL*); +GpStatus WINGDIPAPI GdipGetPathGradientCenterColor(GpPathGradient*,ARGB*); +GpStatus WINGDIPAPI GdipGetPathGradientCenterPoint(GpPathGradient*,GpPointF*); +GpStatus WINGDIPAPI GdipGetPathGradientFocusScales(GpPathGradient*,REAL*,REAL*); +GpStatus WINGDIPAPI GdipGetPathGradientGammaCorrection(GpPathGradient*,BOOL*); +GpStatus WINGDIPAPI GdipGetPathGradientPointCount(GpPathGradient*,INT*); +GpStatus WINGDIPAPI GdipGetPathGradientSurroundColorsWithCount(GpPathGradient*, + ARGB*,INT*); +GpStatus WINGDIPAPI GdipGetPathGradientWrapMode(GpPathGradient*,GpWrapMode*); +GpStatus WINGDIPAPI GdipGetSolidFillColor(GpSolidFill*,ARGB*); +GpStatus WINGDIPAPI GdipGetTextureTransform(GpTexture*,GpMatrix*); +GpStatus WINGDIPAPI GdipSetLineBlend(GpLineGradient*,GDIPCONST REAL*, + GDIPCONST REAL*,INT); +GpStatus WINGDIPAPI GdipSetLineGammaCorrection(GpLineGradient*,BOOL); +GpStatus WINGDIPAPI GdipSetLineSigmaBlend(GpLineGradient*,REAL,REAL); +GpStatus WINGDIPAPI GdipSetLineWrapMode(GpLineGradient*,GpWrapMode); +GpStatus WINGDIPAPI GdipSetPathGradientCenterColor(GpPathGradient*,ARGB); +GpStatus WINGDIPAPI GdipSetPathGradientCenterPoint(GpPathGradient*,GpPointF*); +GpStatus WINGDIPAPI GdipSetPathGradientFocusScales(GpPathGradient*,REAL,REAL); +GpStatus WINGDIPAPI GdipSetPathGradientGammaCorrection(GpPathGradient*,BOOL); +GpStatus WINGDIPAPI GdipSetPathGradientSigmaBlend(GpPathGradient*,REAL,REAL); +GpStatus WINGDIPAPI GdipSetPathGradientSurroundColorsWithCount(GpPathGradient*, + ARGB*,INT*); +GpStatus WINGDIPAPI GdipSetPathGradientWrapMode(GpPathGradient*,GpWrapMode); +GpStatus WINGDIPAPI GdipSetSolidFillColor(GpSolidFill*,ARGB); +GpStatus WINGDIPAPI GdipSetTextureTransform(GpTexture *,GDIPCONST GpMatrix*); -GpStatus WINGDIPAPI GdipCloneBrush(GpBrush *brush, GpBrush **cloneBrush); -GpStatus WINGDIPAPI GdipDeleteBrush(GpBrush *brush); -GpStatus WINGDIPAPI GdipGetBrushType(GpBrush *brush, GpBrushType *type); +GpStatus WINGDIPAPI GdipAddPathArc(GpPath*,REAL,REAL,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipAddPathBezierI(GpPath*,INT,INT,INT,INT,INT,INT,INT,INT); +GpStatus WINGDIPAPI GdipAddPathBeziers(GpPath*,GDIPCONST GpPointF*,INT); +GpStatus WINGDIPAPI GdipAddPathEllipse(GpPath*,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipAddPathEllipseI(GpPath*,INT,INT,INT,INT); +GpStatus WINGDIPAPI GdipAddPathLine(GpPath*,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipAddPathLine2(GpPath*,GDIPCONST GpPointF*,INT); +GpStatus WINGDIPAPI GdipAddPathLineI(GpPath*,INT,INT,INT,INT); +GpStatus WINGDIPAPI GdipAddPathPath(GpPath*,GDIPCONST GpPath*,BOOL); +GpStatus WINGDIPAPI GdipClonePath(GpPath*,GpPath**); +GpStatus WINGDIPAPI GdipClosePathFigure(GpPath*); +GpStatus WINGDIPAPI GdipClosePathFigures(GpPath*); +GpStatus WINGDIPAPI GdipCreatePath(GpFillMode,GpPath**); +GpStatus WINGDIPAPI GdipCreatePath2(GDIPCONST GpPointF*,GDIPCONST BYTE*,INT, + GpFillMode,GpPath**); +GpStatus WINGDIPAPI GdipDeletePath(GpPath*); +GpStatus WINGDIPAPI GdipGetPathFillMode(GpPath*,GpFillMode*); +GpStatus WINGDIPAPI GdipGetPathPoints(GpPath*,GpPointF*,INT); +GpStatus WINGDIPAPI GdipGetPathTypes(GpPath*,BYTE*,INT); +GpStatus WINGDIPAPI GdipGetPathWorldBounds(GpPath*,GpRectF*,GDIPCONST GpMatrix*,GDIPCONST GpPen*); +GpStatus WINGDIPAPI GdipGetPathWorldBoundsI(GpPath*,GpRect*,GDIPCONST GpMatrix*,GDIPCONST GpPen*); +GpStatus WINGDIPAPI GdipGetPointCount(GpPath*,INT*); + GpStatus WINGDIPAPI GdipIsOutlineVisiblePathPoint(GpPath*,REAL,REAL,GpPen*, + GpGraphics*,BOOL*); +GpStatus WINGDIPAPI GdipIsOutlineVisiblePathPointI(GpPath*,INT,INT,GpPen*, + GpGraphics*,BOOL*); +GpStatus WINGDIPAPI GdipResetPath(GpPath*); +GpStatus WINGDIPAPI GdipSetPathFillMode(GpPath*,GpFillMode); +GpStatus WINGDIPAPI GdipStartPathFigure(GpPath*); +GpStatus WINGDIPAPI GdipTransformPath(GpPath*,GpMatrix*); -GpStatus WINGDIPAPI GdipCreateCachedBitmap(GpBitmap *bitmap, GpGraphics *graphics, GpCachedBitmap **cachedBitmap); -GpStatus WINGDIPAPI GdipDeleteCachedBitmap(GpCachedBitmap *cachedBitmap); -GpStatus WINGDIPAPI GdipDrawCachedBitmap(GpGraphics *graphics, GpCachedBitmap *cachedBitmap, INT x, INT y); -UINT WINGDIPAPI GdipEmfToWmfBits(HENHMETAFILE hemf, UINT cbData16, LPBYTE pData16, INT iMapMode, INT eFlags); +GpStatus WINGDIPAPI GdipCloneMatrix(GpMatrix*,GpMatrix**); +GpStatus WINGDIPAPI GdipCreateMatrix(GpMatrix**); +GpStatus WINGDIPAPI GdipCreateMatrix2(REAL,REAL,REAL,REAL,REAL,REAL,GpMatrix**); +GpStatus WINGDIPAPI GdipCreateMatrix3(GDIPCONST GpRectF *,GDIPCONST GpPointF*, + GpMatrix**); +GpStatus WINGDIPAPI GdipDeleteMatrix(GpMatrix*); +GpStatus WINGDIPAPI GdipGetMatrixElements(GDIPCONST GpMatrix*,REAL*); +GpStatus WINGDIPAPI GdipMultiplyMatrix(GpMatrix*,GpMatrix*,GpMatrixOrder); +GpStatus WINGDIPAPI GdipRotateMatrix(GpMatrix*,REAL,GpMatrixOrder); +GpStatus WINGDIPAPI GdipScaleMatrix(GpMatrix*,REAL,REAL,GpMatrixOrder); +GpStatus WINGDIPAPI GdipSetMatrixElements(GpMatrix*,REAL,REAL,REAL,REAL,REAL,REAL); +GpStatus WINGDIPAPI GdipTransformMatrixPoints(GpMatrix*,GpPointF*,INT); +GpStatus WINGDIPAPI GdipTranslateMatrix(GpMatrix*,REAL,REAL,GpMatrixOrder); -GpStatus WINGDIPAPI GdipCreateCustomLineCap(GpPath* fillPath, GpPath* strokePath, GpLineCap baseCap, REAL baseInset, GpCustomLineCap **customCap); -GpStatus WINGDIPAPI GdipDeleteCustomLineCap(GpCustomLineCap* customCap); -GpStatus WINGDIPAPI GdipCloneCustomLineCap(GpCustomLineCap* customCap, GpCustomLineCap** clonedCap); -GpStatus WINGDIPAPI GdipGetCustomLineCapType(GpCustomLineCap* customCap, CustomLineCapType* capType); -GpStatus WINGDIPAPI GdipSetCustomLineCapStrokeCaps(GpCustomLineCap* customCap, GpLineCap startCap, GpLineCap endCap); -GpStatus WINGDIPAPI GdipGetCustomLineCapStrokeCaps(GpCustomLineCap* customCap, GpLineCap* startCap, GpLineCap* endCap); -GpStatus WINGDIPAPI GdipSetCustomLineCapStrokeJoin(GpCustomLineCap* customCap, GpLineJoin lineJoin); -GpStatus WINGDIPAPI GdipGetCustomLineCapStrokeJoin(GpCustomLineCap* customCap, GpLineJoin* lineJoin); -GpStatus WINGDIPAPI GdipSetCustomLineCapBaseCap(GpCustomLineCap* customCap, GpLineCap baseCap); -GpStatus WINGDIPAPI GdipGetCustomLineCapBaseCap(GpCustomLineCap* customCap, GpLineCap* baseCap); -GpStatus WINGDIPAPI GdipSetCustomLineCapBaseInset(GpCustomLineCap* customCap, REAL inset); -GpStatus WINGDIPAPI GdipGetCustomLineCapBaseInset(GpCustomLineCap* customCap, REAL* inset); -GpStatus WINGDIPAPI GdipSetCustomLineCapWidthScale(GpCustomLineCap* customCap, REAL widthScale); -GpStatus WINGDIPAPI GdipGetCustomLineCapWidthScale(GpCustomLineCap* customCap, REAL* widthScale); +GpStatus WINGDIPAPI GdipCreatePathIter(GpPathIterator**,GpPath*); +GpStatus WINGDIPAPI GdipDeletePathIter(GpPathIterator*); +GpStatus WINGDIPAPI GdipPathIterCopyData(GpPathIterator*,INT*,GpPointF*,BYTE*, + INT,INT); +GpStatus WINGDIPAPI GdipPathIterNextSubpath(GpPathIterator*,INT*,INT*,INT*,BOOL*); +GpStatus WINGDIPAPI GdipPathIterRewind(GpPathIterator*); -GpStatus WINGDIPAPI GdipCreateFontFromDC(HDC hdc, GpFont **font); -GpStatus WINGDIPAPI GdipCreateFontFromLogfontA(HDC hdc, GDIPCONST LOGFONTA *logfont, GpFont **font); -GpStatus WINGDIPAPI GdipCreateFontFromLogfontW(HDC hdc, GDIPCONST LOGFONTW *logfont, GpFont **font); -GpStatus WINGDIPAPI GdipCreateFont(GDIPCONST GpFontFamily *fontFamily, REAL emSize, INT style, Unit unit, GpFont **font); -GpStatus WINGDIPAPI GdipCloneFont(GpFont* font, GpFont** cloneFont); -GpStatus WINGDIPAPI GdipDeleteFont(GpFont* font); -GpStatus WINGDIPAPI GdipGetFamily(GpFont *font, GpFontFamily **family); -GpStatus WINGDIPAPI GdipGetFontStyle(GpFont *font, INT *style); -GpStatus WINGDIPAPI GdipGetFontSize(GpFont *font, REAL *size); -GpStatus WINGDIPAPI GdipGetFontUnit(GpFont *font, Unit *unit); -GpStatus WINGDIPAPI GdipGetFontHeight(GDIPCONST GpFont *font, GDIPCONST GpGraphics *graphics, REAL *height); -GpStatus WINGDIPAPI GdipGetFontHeightGivenDPI(GDIPCONST GpFont *font, REAL dpi, REAL *height); -GpStatus WINGDIPAPI GdipGetLogFontA(GpFont * font, GpGraphics *graphics, LOGFONTA * logfontA); -GpStatus WINGDIPAPI GdipGetLogFontW(GpFont * font, GpGraphics *graphics, LOGFONTW * logfontW); -GpStatus WINGDIPAPI GdipNewInstalledFontCollection(GpFontCollection** fontCollection); -GpStatus WINGDIPAPI GdipNewPrivateFontCollection(GpFontCollection** fontCollection); -GpStatus WINGDIPAPI GdipDeletePrivateFontCollection(GpFontCollection** fontCollection); -GpStatus WINGDIPAPI GdipGetFontCollectionFamilyCount(GpFontCollection* fontCollection, INT * numFound); -GpStatus WINGDIPAPI GdipGetFontCollectionFamilyList(GpFontCollection* fontCollection, INT numSought, GpFontFamily* gpfamilies[], INT* numFound); -GpStatus WINGDIPAPI GdipPrivateAddFontFile(GpFontCollection* fontCollection, GDIPCONST WCHAR* filename); -GpStatus WINGDIPAPI GdipPrivateAddMemoryFont(GpFontCollection* fontCollection, GDIPCONST void* memory, INT length); +GpStatus WINGDIPAPI GdipCloneCustomLineCap(GpCustomLineCap*,GpCustomLineCap**); +GpStatus WINGDIPAPI GdipCreateCustomLineCap(GpPath*,GpPath*,GpLineCap,REAL, + GpCustomLineCap**); +GpStatus WINGDIPAPI GdipDeleteCustomLineCap(GpCustomLineCap*); +GpStatus WINGDIPAPI GdipSetCustomLineCapStrokeCaps(GpCustomLineCap*,GpLineCap, + GpLineCap); -GpStatus WINGDIPAPI GdipCreateFontFamilyFromName(GDIPCONST WCHAR *name, GpFontCollection *fontCollection, GpFontFamily **FontFamily); -GpStatus WINGDIPAPI GdipDeleteFontFamily(GpFontFamily *FontFamily); -GpStatus WINGDIPAPI GdipCloneFontFamily(GpFontFamily *FontFamily, GpFontFamily **clonedFontFamily); -GpStatus WINGDIPAPI GdipGetGenericFontFamilySansSerif(GpFontFamily **nativeFamily); -GpStatus WINGDIPAPI GdipGetGenericFontFamilySerif(GpFontFamily **nativeFamily); -GpStatus WINGDIPAPI GdipGetGenericFontFamilyMonospace(GpFontFamily **nativeFamily); -GpStatus WINGDIPAPI GdipGetFamilyName(GDIPCONST GpFontFamily *family, WCHAR name[LF_FACESIZE], LANGID language); -GpStatus WINGDIPAPI GdipIsStyleAvailable(GDIPCONST GpFontFamily *family, INT style, BOOL * IsStyleAvailable); -GpStatus WINGDIPAPI GdipFontCollectionEnumerable(GpFontCollection* fontCollection, GpGraphics* graphics, INT * numFound); -GpStatus WINGDIPAPI GdipFontCollectionEnumerate(GpFontCollection* fontCollection, INT numSought, GpFontFamily* gpfamilies[], INT* numFound, GpGraphics* graphics); -GpStatus WINGDIPAPI GdipGetEmHeight(GDIPCONST GpFontFamily *family, INT style, UINT16 * EmHeight); -GpStatus WINGDIPAPI GdipGetCellAscent(GDIPCONST GpFontFamily *family, INT style, UINT16 * CellAscent); -GpStatus WINGDIPAPI GdipGetCellDescent(GDIPCONST GpFontFamily *family, INT style, UINT16 * CellDescent); -GpStatus WINGDIPAPI GdipGetLineSpacing(GDIPCONST GpFontFamily *family, INT style, UINT16 * LineSpacing); - -GpStatus WINGDIPAPI GdipFlush(GpGraphics *graphics, GpFlushIntention intention); -GpStatus WINGDIPAPI GdipCreateFromHDC(HDC hdc, GpGraphics **graphics); -GpStatus WINGDIPAPI GdipCreateFromHDC2(HDC hdc, HANDLE hDevice, GpGraphics **graphics); -GpStatus WINGDIPAPI GdipCreateFromHWND(HWND hwnd, GpGraphics **graphics); -GpStatus WINGDIPAPI GdipCreateFromHWNDICM(HWND hwnd, GpGraphics **graphics); -GpStatus WINGDIPAPI GdipDeleteGraphics(GpGraphics *graphics); -GpStatus WINGDIPAPI GdipGetDC(GpGraphics* graphics, HDC * hdc); -GpStatus WINGDIPAPI GdipReleaseDC(GpGraphics* graphics, HDC hdc); -GpStatus WINGDIPAPI GdipSetCompositingMode(GpGraphics *graphics, CompositingMode compositingMode); -GpStatus WINGDIPAPI GdipGetCompositingMode(GpGraphics *graphics, CompositingMode *compositingMode); -GpStatus WINGDIPAPI GdipSetRenderingOrigin(GpGraphics *graphics, INT x, INT y); -GpStatus WINGDIPAPI GdipGetRenderingOrigin(GpGraphics *graphics, INT *x, INT *y); -GpStatus WINGDIPAPI GdipSetCompositingQuality(GpGraphics *graphics, CompositingQuality compositingQuality); -GpStatus WINGDIPAPI GdipGetCompositingQuality(GpGraphics *graphics, CompositingQuality *compositingQuality); -GpStatus WINGDIPAPI GdipSetSmoothingMode(GpGraphics *graphics, SmoothingMode smoothingMode); -GpStatus WINGDIPAPI GdipGetSmoothingMode(GpGraphics *graphics, SmoothingMode *smoothingMode); -GpStatus WINGDIPAPI GdipSetPixelOffsetMode(GpGraphics* graphics, PixelOffsetMode pixelOffsetMode); -GpStatus WINGDIPAPI GdipGetPixelOffsetMode(GpGraphics *graphics, PixelOffsetMode *pixelOffsetMode); -GpStatus WINGDIPAPI GdipSetTextRenderingHint(GpGraphics *graphics, TextRenderingHint mode); -GpStatus WINGDIPAPI GdipGetTextRenderingHint(GpGraphics *graphics, TextRenderingHint *mode); -GpStatus WINGDIPAPI GdipSetTextContrast(GpGraphics *graphics, UINT contrast); -GpStatus WINGDIPAPI GdipGetTextContrast(GpGraphics *graphics, UINT * contrast); -GpStatus WINGDIPAPI GdipSetInterpolationMode(GpGraphics *graphics, InterpolationMode interpolationMode); -GpStatus WINGDIPAPI GdipGetInterpolationMode(GpGraphics *graphics, InterpolationMode *interpolationMode); -GpStatus WINGDIPAPI GdipSetWorldTransform(GpGraphics *graphics, GpMatrix *matrix); -GpStatus WINGDIPAPI GdipResetWorldTransform(GpGraphics *graphics); -GpStatus WINGDIPAPI GdipMultiplyWorldTransform(GpGraphics *graphics, GDIPCONST GpMatrix *matrix, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipTranslateWorldTransform(GpGraphics *graphics, REAL dx, REAL dy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipScaleWorldTransform(GpGraphics *graphics, REAL sx, REAL sy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipRotateWorldTransform(GpGraphics *graphics, REAL angle, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipGetWorldTransform(GpGraphics *graphics, GpMatrix *matrix); -GpStatus WINGDIPAPI GdipResetPageTransform(GpGraphics *graphics); -GpStatus WINGDIPAPI GdipGetPageUnit(GpGraphics *graphics, GpUnit *unit); -GpStatus WINGDIPAPI GdipGetPageScale(GpGraphics *graphics, REAL *scale); -GpStatus WINGDIPAPI GdipSetPageUnit(GpGraphics *graphics, GpUnit unit); -GpStatus WINGDIPAPI GdipSetPageScale(GpGraphics *graphics, REAL scale); -GpStatus WINGDIPAPI GdipGetDpiX(GpGraphics *graphics, REAL* dpi); -GpStatus WINGDIPAPI GdipGetDpiY(GpGraphics *graphics, REAL* dpi); -GpStatus WINGDIPAPI GdipTransformPoints(GpGraphics *graphics, GpCoordinateSpace destSpace, GpCoordinateSpace srcSpace, GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipTransformPointsI(GpGraphics *graphics, GpCoordinateSpace destSpace, GpCoordinateSpace srcSpace, GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipGetNearestColor(GpGraphics *graphics, ARGB* argb); -HPALETTE WINGDIPAPI GdipCreateHalftonePalette(); -GpStatus WINGDIPAPI GdipDrawLine(GpGraphics *graphics, GpPen *pen, REAL x1, REAL y1, REAL x2, REAL y2); -GpStatus WINGDIPAPI GdipDrawLineI(GpGraphics *graphics, GpPen *pen, INT x1, INT y1, INT x2, INT y2); -GpStatus WINGDIPAPI GdipDrawLines(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipDrawLinesI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipDrawArc(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipDrawArcI(GpGraphics *graphics, GpPen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipDrawBezier(GpGraphics *graphics, GpPen *pen, REAL x1, REAL y1, REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4); -GpStatus WINGDIPAPI GdipDrawBezierI(GpGraphics *graphics, GpPen *pen, INT x1, INT y1, INT x2, INT y2, INT x3, INT y3, INT x4, INT y4); -GpStatus WINGDIPAPI GdipDrawBeziers(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipDrawBeziersI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipDrawRectangle(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, REAL width, REAL height); -GpStatus WINGDIPAPI GdipDrawRectangleI(GpGraphics *graphics, GpPen *pen, INT x, INT y, INT width, INT height); -GpStatus WINGDIPAPI GdipDrawRectangles(GpGraphics *graphics, GpPen *pen, GDIPCONST GpRectF *rects, INT count); -GpStatus WINGDIPAPI GdipDrawRectanglesI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpRect *rects, INT count); -GpStatus WINGDIPAPI GdipDrawEllipse(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, REAL width, REAL height); -GpStatus WINGDIPAPI GdipDrawEllipseI(GpGraphics *graphics, GpPen *pen, INT x, INT y, INT width, INT height); -GpStatus WINGDIPAPI GdipDrawPie(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipDrawPieI(GpGraphics *graphics, GpPen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipDrawPolygon(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipDrawPolygonI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipDrawPath(GpGraphics *graphics, GpPen *pen, GpPath *path); -GpStatus WINGDIPAPI GdipDrawCurve(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipDrawCurveI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipDrawCurve2(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count, REAL tension); -GpStatus WINGDIPAPI GdipDrawCurve2I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count, REAL tension); -GpStatus WINGDIPAPI GdipDrawCurve3(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count, INT offset, INT numberOfSegments, REAL tension); -GpStatus WINGDIPAPI GdipDrawCurve3I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count, INT offset, INT numberOfSegments, REAL tension); -GpStatus WINGDIPAPI GdipDrawClosedCurve(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipDrawClosedCurveI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipDrawClosedCurve2(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count, REAL tension); -GpStatus WINGDIPAPI GdipDrawClosedCurve2I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count, REAL tension); -GpStatus WINGDIPAPI GdipGraphicsClear(GpGraphics *graphics, ARGB color); -GpStatus WINGDIPAPI GdipFillRectangle(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y, REAL width, REAL height); -GpStatus WINGDIPAPI GdipFillRectangleI(GpGraphics *graphics, GpBrush *brush, INT x, INT y, INT width, INT height); -GpStatus WINGDIPAPI GdipFillRectangles(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpRectF *rects, INT count); -GpStatus WINGDIPAPI GdipFillRectanglesI(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpRect *rects, INT count); -GpStatus WINGDIPAPI GdipFillPolygon(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPointF *points, INT count, GpFillMode fillMode); -GpStatus WINGDIPAPI GdipFillPolygonI(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPoint *points, INT count, GpFillMode fillMode); -GpStatus WINGDIPAPI GdipFillPolygon2(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipFillPolygon2I(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipFillEllipse(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y, REAL width, REAL height); -GpStatus WINGDIPAPI GdipFillEllipseI(GpGraphics *graphics, GpBrush *brush, INT x, INT y, INT width, INT height); -GpStatus WINGDIPAPI GdipFillPie(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipFillPieI(GpGraphics *graphics, GpBrush *brush, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipFillPath(GpGraphics *graphics, GpBrush *brush, GpPath *path); -GpStatus WINGDIPAPI GdipFillClosedCurve(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipFillClosedCurveI(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipFillClosedCurve2I(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPoint *points, INT count, REAL tension, GpFillMode fillMode); -GpStatus WINGDIPAPI GdipFillRegion(GpGraphics *graphics, GpBrush *brush, GpRegion *region); -GpStatus WINGDIPAPI GdipDrawImage(GpGraphics *graphics, GpImage *image, REAL x, REAL y); -GpStatus WINGDIPAPI GdipDrawImageI(GpGraphics *graphics, GpImage *image, INT x, INT y); -GpStatus WINGDIPAPI GdipDrawImageRect(GpGraphics *graphics, GpImage *image, REAL x, REAL y, REAL width, REAL height); -GpStatus WINGDIPAPI GdipDrawImageRectI(GpGraphics *graphics, GpImage *image, INT x, INT y, INT width, INT height); -GpStatus WINGDIPAPI GdipDrawImagePoints(GpGraphics *graphics, GpImage *image, GDIPCONST GpPointF *dstpoints, INT count); -GpStatus WINGDIPAPI GdipDrawImagePointsI(GpGraphics *graphics, GpImage *image, GDIPCONST GpPoint *dstpoints, INT count); -GpStatus WINGDIPAPI GdipDrawImagePointRect(GpGraphics *graphics, GpImage *image, REAL x, REAL y, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, GpUnit srcUnit); -GpStatus WINGDIPAPI GdipDrawImagePointRectI(GpGraphics *graphics, GpImage *image, INT x, INT y, INT srcx, INT srcy, INT srcwidth, INT srcheight, GpUnit srcUnit); -GpStatus WINGDIPAPI GdipDrawImageRectRect(GpGraphics *graphics, GpImage *image, REAL dstx, REAL dsty, REAL dstwidth, REAL dstheight, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, GpUnit srcUnit, GDIPCONST GpImageAttributes* imageAttributes, DrawImageAbort callback, VOID * callbackData); -GpStatus WINGDIPAPI GdipDrawImageRectRectI(GpGraphics *graphics, GpImage *image, INT dstx, INT dsty, INT dstwidth, INT dstheight, INT srcx, INT srcy, INT srcwidth, INT srcheight, GpUnit srcUnit, GDIPCONST GpImageAttributes* imageAttributes, DrawImageAbort callback, VOID * callbackData); -GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image, GDIPCONST GpPointF *points, INT count, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, GpUnit srcUnit, GDIPCONST GpImageAttributes* imageAttributes, DrawImageAbort callback, VOID * callbackData); -GpStatus WINGDIPAPI GdipDrawImagePointsRectI(GpGraphics *graphics, GpImage *image, GDIPCONST GpPoint *points, INT count, INT srcx, INT srcy, INT srcwidth, INT srcheight, GpUnit srcUnit, GDIPCONST GpImageAttributes* imageAttributes, DrawImageAbort callback, VOID * callbackData); -GpStatus WINGDIPAPI GdipDrawImageFX(GpGraphics *graphics, GpImage *image, GpRectF *source, GpMatrix *xForm, CGpEffect *effect, GpImageAttributes *imageAttributes, GpUnit srcUnit); -GpStatus WINGDIPAPI GdipEnumerateMetafileDestPoint(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST PointF & destPoint, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileDestPointI(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST Point & destPoint, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileDestRect(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST RectF & destRect, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileDestRectI(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST Rect & destRect, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileDestPoints(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST PointF * destPoints, INT count, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileDestPointsI(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST Point * destPoints, INT count, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileSrcRectDestPoint(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST PointF & destPoint, GDIPCONST RectF & srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileSrcRectDestPointI(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST Point & destPoint, GDIPCONST Rect & srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileSrcRectDestRect(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST RectF & destRect, GDIPCONST RectF & srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileSrcRectDestRectI(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST Rect & destRect, GDIPCONST Rect & srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileSrcRectDestPoints(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST PointF * destPoints, INT count, GDIPCONST RectF & srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipEnumerateMetafileSrcRectDestPointsI(GpGraphics * graphics, GDIPCONST GpMetafile * metafile, GDIPCONST Point * destPoints, INT count, GDIPCONST Rect & srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID * callbackData, GDIPCONST GpImageAttributes * imageAttributes); -GpStatus WINGDIPAPI GdipPlayMetafileRecord(GDIPCONST GpMetafile * metafile, EmfPlusRecordType recordType, UINT flags, UINT dataSize, GDIPCONST BYTE * data); -GpStatus WINGDIPAPI GdipSetClipGraphics(GpGraphics *graphics, GpGraphics *srcgraphics, CombineMode combineMode); -GpStatus WINGDIPAPI GdipSetClipRect(GpGraphics *graphics, REAL x, REAL y, REAL width, REAL height, CombineMode combineMode); -GpStatus WINGDIPAPI GdipSetClipRectI(GpGraphics *graphics, INT x, INT y, INT width, INT height, CombineMode combineMode); -GpStatus WINGDIPAPI GdipSetClipPath(GpGraphics *graphics, GpPath *path, CombineMode combineMode); -GpStatus WINGDIPAPI GdipSetClipRegion(GpGraphics *graphics, GpRegion *region, CombineMode combineMode); -GpStatus WINGDIPAPI GdipSetClipHrgn(GpGraphics *graphics, HRGN hRgn, CombineMode combineMode); -GpStatus WINGDIPAPI GdipResetClip(GpGraphics *graphics); -GpStatus WINGDIPAPI GdipTranslateClip(GpGraphics *graphics, REAL dx, REAL dy); -GpStatus WINGDIPAPI GdipTranslateClipI(GpGraphics *graphics, INT dx, INT dy); -GpStatus WINGDIPAPI GdipGetClip(GpGraphics *graphics, GpRegion *region); -GpStatus WINGDIPAPI GdipGetClipBounds(GpGraphics *graphics, GpRectF *rect); -GpStatus WINGDIPAPI GdipGetClipBoundsI(GpGraphics *graphics, GpRect *rect); -GpStatus WINGDIPAPI GdipIsClipEmpty(GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipGetVisibleClipBounds(GpGraphics *graphics, GpRectF *rect); -GpStatus WINGDIPAPI GdipGetVisibleClipBoundsI(GpGraphics *graphics, GpRect *rect); -GpStatus WINGDIPAPI GdipIsVisibleClipEmpty(GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipIsVisiblePoint(GpGraphics *graphics, REAL x, REAL y, BOOL *result); -GpStatus WINGDIPAPI GdipIsVisiblePointI(GpGraphics *graphics, INT x, INT y, BOOL *result); -GpStatus WINGDIPAPI GdipIsVisibleRect(GpGraphics *graphics, REAL x, REAL y, REAL width, REAL height, BOOL *result); -GpStatus WINGDIPAPI GdipIsVisibleRectI(GpGraphics *graphics, INT x, INT y, INT width, INT height, BOOL *result); -GpStatus WINGDIPAPI GdipSaveGraphics(GpGraphics *graphics, GraphicsState *state); -GpStatus WINGDIPAPI GdipRestoreGraphics(GpGraphics *graphics, GraphicsState state); -GpStatus WINGDIPAPI GdipBeginContainer(GpGraphics *graphics, GDIPCONST GpRectF* dstrect, GDIPCONST GpRectF *srcrect, GpUnit unit, GraphicsContainer *state); -GpStatus WINGDIPAPI GdipBeginContainerI(GpGraphics *graphics, GDIPCONST GpRect* dstrect, GDIPCONST GpRect *srcrect, GpUnit unit, GraphicsContainer *state); -GpStatus WINGDIPAPI GdipBeginContainer2(GpGraphics *graphics, GraphicsContainer* state); -GpStatus WINGDIPAPI GdipEndContainer(GpGraphics *graphics, GraphicsContainer state); -GpStatus WINGDIPAPI GdipGetMetafileHeaderFromEmf(HENHMETAFILE hEmf, MetafileHeader * header); -GpStatus WINGDIPAPI GdipGetMetafileHeaderFromFile(GDIPCONST WCHAR* filename, MetafileHeader * header); -GpStatus WINGDIPAPI GdipGetMetafileHeaderFromStream(IStream * stream, MetafileHeader * header); -GpStatus WINGDIPAPI GdipGetMetafileHeaderFromMetafile(GpMetafile * metafile, MetafileHeader * header); -GpStatus WINGDIPAPI GdipGetHemfFromMetafile(GpMetafile * metafile, HENHMETAFILE * hEmf); -GpStatus WINGDIPAPI GdipCreateStreamOnFile(GDIPCONST WCHAR * filename, UINT access, IStream **stream); -GpStatus WINGDIPAPI GdipCreateMetafileFromWmf(HMETAFILE hWmf, BOOL deleteWmf, GDIPCONST WmfPlaceableFileHeader * wmfPlaceableFileHeader, GpMetafile **metafile); -GpStatus WINGDIPAPI GdipCreateMetafileFromEmf(HENHMETAFILE hEmf, BOOL deleteEmf, GpMetafile **metafile); -GpStatus WINGDIPAPI GdipCreateMetafileFromFile(GDIPCONST WCHAR* file, GpMetafile **metafile); -GpStatus WINGDIPAPI GdipCreateMetafileFromWmfFile(GDIPCONST WCHAR* file, GDIPCONST WmfPlaceableFileHeader * wmfPlaceableFileHeader, GpMetafile **metafile); -GpStatus WINGDIPAPI GdipCreateMetafileFromStream(IStream * stream, GpMetafile **metafile); -GpStatus WINGDIPAPI GdipRecordMetafile(HDC referenceHdc, EmfType type, GDIPCONST GpRectF * frameRect, MetafileFrameUnit frameUnit, GDIPCONST WCHAR * description, GpMetafile ** metafile); -GpStatus WINGDIPAPI GdipRecordMetafileI(HDC referenceHdc, EmfType type, GDIPCONST GpRect * frameRect, MetafileFrameUnit frameUnit, GDIPCONST WCHAR * description, GpMetafile ** metafile); -GpStatus WINGDIPAPI GdipRecordMetafileFileName(GDIPCONST WCHAR* fileName, HDC referenceHdc, EmfType type, GDIPCONST GpRectF * frameRect, MetafileFrameUnit frameUnit, GDIPCONST WCHAR * description, GpMetafile ** metafile); -GpStatus WINGDIPAPI GdipRecordMetafileFileNameI(GDIPCONST WCHAR* fileName, HDC referenceHdc, EmfType type, GDIPCONST GpRect * frameRect, MetafileFrameUnit frameUnit, GDIPCONST WCHAR * description, GpMetafile ** metafile); -GpStatus WINGDIPAPI GdipRecordMetafileStream(IStream * stream, HDC referenceHdc, EmfType type, GDIPCONST GpRectF * frameRect, MetafileFrameUnit frameUnit, GDIPCONST WCHAR * description, GpMetafile ** metafile); -GpStatus WINGDIPAPI GdipRecordMetafileStreamI(IStream * stream, HDC referenceHdc, EmfType type, GDIPCONST GpRect * frameRect, MetafileFrameUnit frameUnit, GDIPCONST WCHAR * description, GpMetafile ** metafile); -GpStatus WINGDIPAPI GdipSetMetafileDownLevelRasterizationLimit(GpMetafile * metafile, UINT metafileRasterizationLimitDpi); -GpStatus WINGDIPAPI GdipGetMetafileDownLevelRasterizationLimit(GDIPCONST GpMetafile * metafile, UINT * metafileRasterizationLimitDpi); -GpStatus WINGDIPAPI GdipGetImageDecodersSize(UINT *numDecoders, UINT *size); -GpStatus WINGDIPAPI GdipGetImageDecoders(UINT numDecoders, UINT size, ImageCodecInfo *decoders); +GpStatus WINGDIPAPI GdipBitmapGetPixel(GpBitmap*,INT,INT,ARGB*); +GpStatus WINGDIPAPI GdipBitmapSetPixel(GpBitmap*,INT,INT,ARGB); +GpStatus WINGDIPAPI GdipBitmapLockBits(GpBitmap*,GDIPCONST GpRect*,UINT, + PixelFormat,BitmapData*); +GpStatus WINGDIPAPI GdipBitmapUnlockBits(GpBitmap*,BitmapData*); +GpStatus WINGDIPAPI GdipConvertToEmfPlus(const GpGraphics*,GpMetafile*,INT*, + EmfType,const WCHAR*,GpMetafile**); +GpStatus WINGDIPAPI GdipConvertToEmfPlusToFile(const GpGraphics*,GpMetafile*,INT*,const WCHAR*,EmfType,const WCHAR*,GpMetafile**); +GpStatus WINGDIPAPI GdipConvertToEmfPlusToStream(const GpGraphics*,GpMetafile*,INT*,IStream*,EmfType,const WCHAR*,GpMetafile**); +GpStatus WINGDIPAPI GdipCreateBitmapFromFile(GDIPCONST WCHAR*,GpBitmap**); +GpStatus WINGDIPAPI GdipCreateBitmapFromFileICM(GDIPCONST WCHAR*,GpBitmap**); +GpStatus WINGDIPAPI GdipCreateBitmapFromGraphics(INT,INT,GpGraphics*,GpBitmap**); +GpStatus WINGDIPAPI GdipCreateBitmapFromScan0(INT,INT,INT,PixelFormat,BYTE*, + GpBitmap**); +GpStatus WINGDIPAPI GdipCreateBitmapFromStream(IStream*,GpBitmap**); +GpStatus WINGDIPAPI GdipCreateBitmapFromStreamICM(IStream*,GpBitmap**); +GpStatus WINGDIPAPI GdipDisposeImage(GpImage*); +GpStatus WINGDIPAPI GdipFindFirstImageItem(GpImage*,ImageItemData*); +GpStatus WINGDIPAPI GdipFindNextImageItem(GpImage*,ImageItemData*); GpStatus WINGDIPAPI GdipGetImageEncodersSize(UINT *numEncoders, UINT *size); GpStatus WINGDIPAPI GdipGetImageEncoders(UINT numEncoders, UINT size, ImageCodecInfo *encoders); -GpStatus WINGDIPAPI GdipComment(GpGraphics* graphics, UINT sizeData, GDIPCONST BYTE * data); +GpStatus WINGDIPAPI GdipGetImageItemData(GpImage*,ImageItemData*); +GpStatus WINGDIPAPI GdipGetImageBounds(GpImage*,GpRectF*,GpUnit*); +GpStatus WINGDIPAPI GdipGetImageGraphicsContext(GpImage*,GpGraphics**); +GpStatus WINGDIPAPI GdipGetImageHeight(GpImage*,UINT*); +GpStatus WINGDIPAPI GdipGetImageHorizontalResolution(GpImage*,REAL*); +GpStatus WINGDIPAPI GdipGetImagePixelFormat(GpImage*,PixelFormat*); +GpStatus WINGDIPAPI GdipGetImageRawFormat(GpImage*,GUID*); +GpStatus WINGDIPAPI GdipGetImageType(GpImage*,ImageType*); +GpStatus WINGDIPAPI GdipGetImageVerticalResolution(GpImage*,REAL*); +GpStatus WINGDIPAPI GdipGetImageWidth(GpImage*,UINT*); +GpStatus WINGDIPAPI GdipGetMetafileHeaderFromEmf(HENHMETAFILE,MetafileHeader*); +GpStatus WINGDIPAPI GdipGetMetafileHeaderFromFile(GDIPCONST WCHAR*,MetafileHeader*); +GpStatus WINGDIPAPI GdipGetMetafileHeaderFromMetafile(GpMetafile*,MetafileHeader*); +GpStatus WINGDIPAPI GdipGetMetafileHeaderFromStream(IStream*,MetafileHeader*); +GpStatus WINGDIPAPI GdipGetMetafileHeaderFromWmf(HMETAFILE,GDIPCONST WmfPlaceableFileHeader*,MetafileHeader*); +GpStatus WINGDIPAPI GdipGetPropertyItemSize(GpImage*,PROPID,UINT*); +GpStatus WINGDIPAPI GdipImageGetFrameCount(GpImage*,GDIPCONST GUID*,UINT*); +GpStatus WINGDIPAPI GdipImageGetFrameDimensionsList(GpImage*,GUID*,UINT); +GpStatus WINGDIPAPI GdipImageSelectActiveFrame(GpImage*,GDIPCONST GUID*,UINT); +GpStatus WINGDIPAPI GdipLoadImageFromFile(GDIPCONST WCHAR*,GpImage**); +GpStatus WINGDIPAPI GdipLoadImageFromFileICM(GDIPCONST WCHAR*,GpImage**); +GpStatus WINGDIPAPI GdipLoadImageFromStream(IStream*,GpImage**); +GpStatus WINGDIPAPI GdipLoadImageFromStreamICM(IStream*,GpImage**); +GpStatus WINGDIPAPI GdipRemovePropertyItem(GpImage*,PROPID); +GpStatus WINGDIPAPI GdipSaveImageToFile(GpImage*,GDIPCONST WCHAR*,GDIPCONST CLSID*,GDIPCONST EncoderParameters*); +GpStatus WINGDIPAPI GdipSaveImageToStream(GpImage*,IStream*, + GDIPCONST CLSID*,GDIPCONST EncoderParameters*); +GpStatus WINGDIPAPI GdipSetImagePalette(GpImage*,GDIPCONST ColorPalette*); -GpStatus WINGDIPAPI GdipComment(GpGraphics* graphics, UINT sizeData, GDIPCONST BYTE * data); -GpStatus WINGDIPAPI GdipCreatePath2(GDIPCONST GpPointF* points, GDIPCONST BYTE* types, INT count, GpFillMode fillMode, GpPath **path); -GpStatus WINGDIPAPI GdipCreatePath2I(GDIPCONST GpPoint* points, GDIPCONST BYTE* types, INT count, GpFillMode fillMode, GpPath **path); -GpStatus WINGDIPAPI GdipClonePath(GpPath* path, GpPath **clonePath); -GpStatus WINGDIPAPI GdipDeletePath(GpPath* path); -GpStatus WINGDIPAPI GdipResetPath(GpPath* path); -GpStatus WINGDIPAPI GdipGetPointCount(GpPath* path, INT* count); -GpStatus WINGDIPAPI GdipGetPathTypes(GpPath* path, BYTE* types, INT count); -GpStatus WINGDIPAPI GdipGetPathPoints(GpPath* path, GpPointF* points, INT count); -GpStatus WINGDIPAPI GdipGetPathPointsI(GpPath* path, GpPoint* points, INT count); -GpStatus WINGDIPAPI GdipGetPathFillMode(GpPath *path, GpFillMode *fillmode); -GpStatus WINGDIPAPI GdipSetPathFillMode(GpPath *path, GpFillMode fillmode); -GpStatus WINGDIPAPI GdipGetPathData(GpPath *path, GpPathData* pathData); -GpStatus WINGDIPAPI GdipStartPathFigure(GpPath *path); -GpStatus WINGDIPAPI GdipClosePathFigure(GpPath *path); -GpStatus WINGDIPAPI GdipClosePathFigures(GpPath *path); -GpStatus WINGDIPAPI GdipSetPathMarker(GpPath* path); -GpStatus WINGDIPAPI GdipClearPathMarkers(GpPath* path); -GpStatus WINGDIPAPI GdipReversePath(GpPath* path); -GpStatus WINGDIPAPI GdipGetPathLastPoint(GpPath* path, GpPointF* lastPoint); -GpStatus WINGDIPAPI GdipAddPathLine(GpPath *path, REAL x1, REAL y1, REAL x2, REAL y2); -GpStatus WINGDIPAPI GdipAddPathLine2(GpPath *path, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipAddPathArc(GpPath *path, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipAddPathBezier(GpPath *path, REAL x1, REAL y1, REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4); -GpStatus WINGDIPAPI GdipAddPathBeziers(GpPath *path, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipAddPathCurve(GpPath *path, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipAddPathCurve2(GpPath *path, GDIPCONST GpPointF *points, INT count, REAL tension); -GpStatus WINGDIPAPI GdipAddPathCurve3(GpPath *path, GDIPCONST GpPointF *points, INT count, INT offset, INT numberOfSegments, REAL tension); -GpStatus WINGDIPAPI GdipAddPathClosedCurve(GpPath *path, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipAddPathClosedCurve2(GpPath *path, GDIPCONST GpPointF *points, INT count, REAL tension); -GpStatus WINGDIPAPI GdipAddPathRectangle(GpPath *path, REAL x, REAL y, REAL width, REAL height); -GpStatus WINGDIPAPI GdipAddPathRectangles(GpPath *path, GDIPCONST GpRectF *rects, INT count); -GpStatus WINGDIPAPI GdipAddPathEllipse(GpPath *path, REAL x, REAL y, REAL width, REAL height); -GpStatus WINGDIPAPI GdipAddPathPie(GpPath *path, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipAddPathPolygon(GpPath *path, GDIPCONST GpPointF *points, INT count); -GpStatus WINGDIPAPI GdipAddPathPath(GpPath *path, GDIPCONST GpPath* addingPath, BOOL connect); -GpStatus WINGDIPAPI GdipAddPathString(GpPath *path, GDIPCONST WCHAR *string, INT length, GDIPCONST GpFontFamily *family, INT style, REAL emSize, GDIPCONST RectF *layoutRect, GDIPCONST GpStringFormat *format); -GpStatus WINGDIPAPI GdipAddPathStringI(GpPath *path, GDIPCONST WCHAR *string, INT length, GDIPCONST GpFontFamily *family, INT style, REAL emSize, GDIPCONST Rect *layoutRect, GDIPCONST GpStringFormat *format); -GpStatus WINGDIPAPI GdipAddPathLineI(GpPath *path, INT x1, INT y1, INT x2, INT y2); -GpStatus WINGDIPAPI GdipAddPathLine2I(GpPath *path, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipAddPathArcI(GpPath *path, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipAddPathBezierI(GpPath *path, INT x1, INT y1, INT x2, INT y2, INT x3, INT y3, INT x4, INT y4); -GpStatus WINGDIPAPI GdipAddPathBeziersI(GpPath *path, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipAddPathCurveI(GpPath *path, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipAddPathCurve2I(GpPath *path, GDIPCONST GpPoint *points, INT count, REAL tension); -GpStatus WINGDIPAPI GdipAddPathCurve3I(GpPath *path, GDIPCONST GpPoint *points, INT count, INT offset, INT numberOfSegments, REAL tension); -GpStatus WINGDIPAPI GdipAddPathClosedCurveI(GpPath *path, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipAddPathClosedCurve2I(GpPath *path, GDIPCONST GpPoint *points, INT count, REAL tension); -GpStatus WINGDIPAPI GdipAddPathRectangleI(GpPath *path, INT x, INT y, INT width, INT height); -GpStatus WINGDIPAPI GdipAddPathRectanglesI(GpPath *path, GDIPCONST GpRect *rects, INT count); -GpStatus WINGDIPAPI GdipAddPathEllipseI(GpPath *path, INT x, INT y, INT width, INT height); -GpStatus WINGDIPAPI GdipAddPathPieI(GpPath *path, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle); -GpStatus WINGDIPAPI GdipAddPathPolygonI(GpPath *path, GDIPCONST GpPoint *points, INT count); -GpStatus WINGDIPAPI GdipFlattenPath(GpPath *path, GpMatrix* matrix, REAL flatness); -GpStatus WINGDIPAPI GdipWindingModeOutline(GpPath *path, GpMatrix *matrix, REAL flatness); -GpStatus WINGDIPAPI GdipWidenPath(GpPath *nativePath, GpPen *pen, GpMatrix *matrix, REAL flatness); -GpStatus WINGDIPAPI GdipWarpPath(GpPath *path, GpMatrix* matrix, GDIPCONST GpPointF *points, INT count, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, WarpMode warpMode, REAL flatness); -GpStatus WINGDIPAPI GdipTransformPath(GpPath* path, GpMatrix* matrix); -GpStatus WINGDIPAPI GdipGetPathWorldBounds(GpPath* path, GpRectF* bounds, GDIPCONST GpMatrix *matrix, GDIPCONST GpPen *pen); -GpStatus WINGDIPAPI GdipGetPathWorldBoundsI(GpPath* path, GpRect* bounds, GDIPCONST GpMatrix *matrix, GDIPCONST GpPen *pen); -GpStatus WINGDIPAPI GdipIsVisiblePathPoint(GpPath* path, REAL x, REAL y, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipIsVisiblePathPointI(GpPath* path, INT x, INT y, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipIsOutlineVisiblePathPoint(GpPath* path, REAL x, REAL y, GpPen *pen, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipIsOutlineVisiblePathPointI(GpPath* path, INT x, INT y, GpPen *pen, GpGraphics *graphics, BOOL *result); +GpStatus WINGDIPAPI GdipCreateImageAttributes(GpImageAttributes**); +GpStatus WINGDIPAPI GdipDisposeImageAttributes(GpImageAttributes*); +GpStatus WINGDIPAPI GdipSetImageAttributesColorKeys(GpImageAttributes*, + ColorAdjustType,BOOL,ARGB,ARGB); +GpStatus WINGDIPAPI GdipSetImageAttributesColorMatrix(GpImageAttributes*, + ColorAdjustType,BOOL,GDIPCONST ColorMatrix*,GDIPCONST ColorMatrix*, + ColorMatrixFlags); +GpStatus WINGDIPAPI GdipSetImageAttributesWrapMode(GpImageAttributes*,WrapMode, + ARGB,BOOL); -GpStatus WINGDIPAPI GdipCreateHatchBrush(GpHatchStyle hatchstyle, ARGB forecol, ARGB backcol, GpHatch **brush); -GpStatus WINGDIPAPI GdipGetHatchStyle(GpHatch *brush, GpHatchStyle *hatchstyle); -GpStatus WINGDIPAPI GdipGetHatchForegroundColor(GpHatch *brush, ARGB* forecol); -GpStatus WINGDIPAPI GdipGetHatchBackgroundColor(GpHatch *brush, ARGB* backcol); +GpStatus WINGDIPAPI GdipCreateFontFromLogfontA(HDC,GDIPCONST LOGFONTA*,GpFont**); +GpStatus WINGDIPAPI GdipCreateFontFromLogfontW(HDC,GDIPCONST LOGFONTW*,GpFont**); +GpStatus WINGDIPAPI GdipDeleteFont(GpFont*); +GpStatus WINGDIPAPI GdipGetLogFontW(GpFont*,GpGraphics*,LOGFONTW*); -GpStatus WINGDIPAPI GdipLoadImageFromStream(IStream* stream, GpImage **image); -GpStatus WINGDIPAPI GdipLoadImageFromFile(GDIPCONST WCHAR* filename, GpImage **image); -GpStatus WINGDIPAPI GdipLoadImageFromStreamICM(IStream* stream, GpImage **image); -GpStatus WINGDIPAPI GdipLoadImageFromFileICM(GDIPCONST WCHAR* filename, GpImage **image); -GpStatus WINGDIPAPI GdipCloneImage(GpImage *image, GpImage **cloneImage); -GpStatus WINGDIPAPI GdipDisposeImage(GpImage *image); -GpStatus WINGDIPAPI GdipSaveImageToFile(GpImage *image, GDIPCONST WCHAR* filename, GDIPCONST CLSID* clsidEncoder, GDIPCONST EncoderParameters* encoderParams); -GpStatus WINGDIPAPI GdipSaveImageToStream(GpImage *image, IStream* stream, GDIPCONST CLSID* clsidEncoder, GDIPCONST EncoderParameters* encoderParams); -GpStatus WINGDIPAPI GdipSaveAdd(GpImage *image, GDIPCONST EncoderParameters* encoderParams); -GpStatus WINGDIPAPI GdipSaveAddImage(GpImage *image, GpImage* newImage, GDIPCONST EncoderParameters* encoderParams); -GpStatus WINGDIPAPI GdipGetImageGraphicsContext(GpImage *image, GpGraphics **graphics); -GpStatus WINGDIPAPI GdipGetImageBounds(GpImage *image, GpRectF *srcRect, GpUnit *srcUnit); -GpStatus WINGDIPAPI GdipGetImageDimension(GpImage *image, REAL *width, REAL *height); -GpStatus WINGDIPAPI GdipGetImageType(GpImage *image, ImageType *type); -GpStatus WINGDIPAPI GdipGetImageWidth(GpImage *image, UINT *width); -GpStatus WINGDIPAPI GdipGetImageHeight(GpImage *image, UINT *height); -GpStatus WINGDIPAPI GdipGetImageHorizontalResolution(GpImage *image, REAL *resolution); -GpStatus WINGDIPAPI GdipGetImageVerticalResolution(GpImage *image, REAL *resolution); -GpStatus WINGDIPAPI GdipGetImageFlags(GpImage *image, UINT *flags); -GpStatus WINGDIPAPI GdipGetImageRawFormat(GpImage *image, GUID *format); -GpStatus WINGDIPAPI GdipGetImagePixelFormat(GpImage *image, PixelFormat *format); -GpStatus WINGDIPAPI GdipGetImageThumbnail(GpImage *image, UINT thumbWidth, UINT thumbHeight, GpImage **thumbImage, GetThumbnailImageAbort callback, VOID * callbackData); -GpStatus WINGDIPAPI GdipGetEncoderParameterListSize(GpImage *image, GDIPCONST CLSID* clsidEncoder, UINT* size); -GpStatus WINGDIPAPI GdipGetEncoderParameterList(GpImage *image, GDIPCONST CLSID* clsidEncoder, UINT size, EncoderParameters* buffer); -GpStatus WINGDIPAPI GdipImageGetFrameDimensionsCount(GpImage* image, UINT* count); -GpStatus WINGDIPAPI GdipImageGetFrameDimensionsList(GpImage* image, GUID* dimensionIDs, UINT count); -GpStatus WINGDIPAPI GdipImageGetFrameCount(GpImage *image, GDIPCONST GUID* dimensionID, UINT* count); -GpStatus WINGDIPAPI GdipImageSelectActiveFrame(GpImage *image, GDIPCONST GUID* dimensionID, UINT frameIndex); -GpStatus WINGDIPAPI GdipImageRotateFlip(GpImage *image, RotateFlipType rfType); -GpStatus WINGDIPAPI GdipGetImagePalette(GpImage *image, ColorPalette *palette, INT size); -GpStatus WINGDIPAPI GdipSetImagePalette(GpImage *image, GDIPCONST ColorPalette *palette); -GpStatus WINGDIPAPI GdipGetImagePaletteSize(GpImage *image, INT *size); -GpStatus WINGDIPAPI GdipGetPropertyCount(GpImage *image, UINT* numOfProperty); -GpStatus WINGDIPAPI GdipGetPropertyIdList(GpImage *image, UINT numOfProperty, PROPID* list); -GpStatus WINGDIPAPI GdipGetPropertyItemSize(GpImage *image, PROPID propId, UINT* size); -GpStatus WINGDIPAPI GdipGetPropertyItem(GpImage *image, PROPID propId,UINT propSize, PropertyItem* buffer); -GpStatus WINGDIPAPI GdipGetPropertySize(GpImage *image, UINT* totalBufferSize, UINT* numProperties); -GpStatus WINGDIPAPI GdipGetAllPropertyItems(GpImage *image, UINT totalBufferSize, UINT numProperties, PropertyItem* allItems); -GpStatus WINGDIPAPI GdipRemovePropertyItem(GpImage *image, PROPID propId); -GpStatus WINGDIPAPI GdipSetPropertyItem(GpImage *image, GDIPCONST PropertyItem* item); -GpStatus WINGDIPAPI GdipFindFirstImageItem(GpImage *image, ImageItemData* item); -GpStatus WINGDIPAPI GdipFindNextImageItem(GpImage *image, ImageItemData* item); -GpStatus WINGDIPAPI GdipGetImageItemData(GpImage *image, ImageItemData* item); -GpStatus WINGDIPAPI GdipConvertToEmfPlus(const GpGraphics* refGraphics, GpMetafile* metafile, BOOL* conversionSuccess, EmfType emfType, const WCHAR* description, GpMetafile** out_metafile); -GpStatus WINGDIPAPI GdipConvertToEmfPlusToFile(const GpGraphics* refGraphics, GpMetafile* metafile, BOOL* conversionSuccess, const WCHAR* filename, EmfType emfType, const WCHAR* description, GpMetafile** out_metafile); -GpStatus WINGDIPAPI GdipConvertToEmfPlusToStream(const GpGraphics* refGraphics, GpMetafile* metafile, BOOL* conversionSuccess, IStream* stream, EmfType emfType, const WCHAR* description, GpMetafile** out_metafile); -GpStatus WINGDIPAPI GdipImageForceValidation(GpImage *image); - -GpStatus WINGDIPAPI GdipCreateImageAttributes(GpImageAttributes **imageattr); -GpStatus WINGDIPAPI GdipCloneImageAttributes(GDIPCONST GpImageAttributes *imageattr, GpImageAttributes **cloneImageattr); -GpStatus WINGDIPAPI GdipDisposeImageAttributes(GpImageAttributes *imageattr); -GpStatus WINGDIPAPI GdipSetImageAttributesToIdentity(GpImageAttributes *imageattr, ColorAdjustType type); -GpStatus WINGDIPAPI GdipResetImageAttributes(GpImageAttributes *imageattr, ColorAdjustType type); -GpStatus WINGDIPAPI GdipSetImageAttributesColorMatrix(GpImageAttributes *imageattr, ColorAdjustType type, BOOL enableFlag, GDIPCONST ColorMatrix* colorMatrix, GDIPCONST ColorMatrix* grayMatrix, ColorMatrixFlags flags); -GpStatus WINGDIPAPI GdipSetImageAttributesThreshold(GpImageAttributes *imageattr, ColorAdjustType type, BOOL enableFlag, REAL threshold); -GpStatus WINGDIPAPI GdipSetImageAttributesGamma(GpImageAttributes *imageattr, ColorAdjustType type, BOOL enableFlag, REAL gamma); -GpStatus WINGDIPAPI GdipSetImageAttributesNoOp(GpImageAttributes *imageattr, ColorAdjustType type, BOOL enableFlag); -GpStatus WINGDIPAPI GdipSetImageAttributesColorKeys(GpImageAttributes *imageattr, ColorAdjustType type, BOOL enableFlag, ARGB colorLow, ARGB colorHigh); -GpStatus WINGDIPAPI GdipSetImageAttributesOutputChannel(GpImageAttributes *imageattr, ColorAdjustType type, BOOL enableFlag, ColorChannelFlags channelFlags); -GpStatus WINGDIPAPI GdipSetImageAttributesOutputChannelColorProfile(GpImageAttributes *imageattr, ColorAdjustType type, BOOL enableFlag, GDIPCONST WCHAR *colorProfileFilename); -GpStatus WINGDIPAPI GdipSetImageAttributesRemapTable(GpImageAttributes *imageattr, ColorAdjustType type, BOOL enableFlag, UINT mapSize, GDIPCONST ColorMap *map); -GpStatus WINGDIPAPI GdipSetImageAttributesWrapMode(GpImageAttributes *imageAttr, WrapMode wrap, ARGB argb, BOOL clamp); -GpStatus WINGDIPAPI GdipSetImageAttributesICMMode(GpImageAttributes *imageAttr, BOOL on); -GpStatus WINGDIPAPI GdipGetImageAttributesAdjustedPalette(GpImageAttributes *imageAttr, ColorPalette * colorPalette, ColorAdjustType colorAdjustType); -GpStatus WINGDIPAPI GdipSetImageAttributesCachedBackground(GpImageAttributes *imageattr, BOOL enableFlag); - -GpStatus WINGDIPAPI GdipCreateLineBrush(GDIPCONST GpPointF* point1, GDIPCONST GpPointF* point2, ARGB color1, ARGB color2, GpWrapMode wrapMode, GpLineGradient **lineGradient); -GpStatus WINGDIPAPI GdipCreateLineBrushI(GDIPCONST GpPoint* point1, GDIPCONST GpPoint* point2, ARGB color1, ARGB color2, GpWrapMode wrapMode, GpLineGradient **lineGradient); -GpStatus WINGDIPAPI GdipCreateLineBrushFromRect(GDIPCONST GpRectF* rect, ARGB color1, ARGB color2, LinearGradientMode mode, GpWrapMode wrapMode, GpLineGradient **lineGradient); -GpStatus WINGDIPAPI GdipCreateLineBrushFromRectI(GDIPCONST GpRect* rect, ARGB color1, ARGB color2, LinearGradientMode mode, GpWrapMode wrapMode, GpLineGradient **lineGradient); -GpStatus WINGDIPAPI GdipCreateLineBrushFromRectWithAngle(GDIPCONST GpRectF* rect, ARGB color1, ARGB color2, REAL angle, BOOL isAngleScalable, GpWrapMode wrapMode, GpLineGradient **lineGradient); -GpStatus WINGDIPAPI GdipCreateLineBrushFromRectWithAngleI(GDIPCONST GpRect* rect, ARGB color1, ARGB color2, REAL angle, BOOL isAngleScalable, GpWrapMode wrapMode, GpLineGradient **lineGradient); -GpStatus WINGDIPAPI GdipSetLineColors(GpLineGradient *brush, ARGB color1, ARGB color2); -GpStatus WINGDIPAPI GdipGetLineColors(GpLineGradient *brush, ARGB* colors); -GpStatus WINGDIPAPI GdipGetLineRect(GpLineGradient *brush, GpRectF *rect); -GpStatus WINGDIPAPI GdipGetLineRectI(GpLineGradient *brush, GpRect *rect); -GpStatus WINGDIPAPI GdipSetLineGammaCorrection(GpLineGradient *brush, BOOL useGammaCorrection); -GpStatus WINGDIPAPI GdipGetLineGammaCorrection(GpLineGradient *brush, BOOL *useGammaCorrection); -GpStatus WINGDIPAPI GdipGetLineBlendCount(GpLineGradient *brush, INT *count); -GpStatus WINGDIPAPI GdipGetLineBlend(GpLineGradient *brush, REAL *blend, REAL* positions, INT count); -GpStatus WINGDIPAPI GdipSetLineBlend(GpLineGradient *brush, GDIPCONST REAL *blend, GDIPCONST REAL* positions, INT count); -GpStatus WINGDIPAPI GdipGetLinePresetBlendCount(GpLineGradient *brush, INT *count); -GpStatus WINGDIPAPI GdipGetLinePresetBlend(GpLineGradient *brush, ARGB *blend, REAL* positions, INT count); -GpStatus WINGDIPAPI GdipSetLinePresetBlend(GpLineGradient *brush, GDIPCONST ARGB *blend, GDIPCONST REAL* positions, INT count); -GpStatus WINGDIPAPI GdipSetLineSigmaBlend(GpLineGradient *brush, REAL focus, REAL scale); -GpStatus WINGDIPAPI GdipSetLineLinearBlend(GpLineGradient *brush, REAL focus, REAL scale); -GpStatus WINGDIPAPI GdipSetLineWrapMode(GpLineGradient *brush, GpWrapMode wrapmode); -GpStatus WINGDIPAPI GdipGetLineWrapMode(GpLineGradient *brush, GpWrapMode *wrapmode); -GpStatus WINGDIPAPI GdipGetLineTransform(GpLineGradient *brush, GpMatrix *matrix); -GpStatus WINGDIPAPI GdipSetLineTransform(GpLineGradient *brush, GDIPCONST GpMatrix *matrix); -GpStatus WINGDIPAPI GdipResetLineTransform(GpLineGradient* brush); -GpStatus WINGDIPAPI GdipMultiplyLineTransform(GpLineGradient* brush, GDIPCONST GpMatrix *matrix, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipTranslateLineTransform(GpLineGradient* brush, REAL dx, REAL dy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipScaleLineTransform(GpLineGradient* brush, REAL sx, REAL sy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipRotateLineTransform(GpLineGradient* brush, REAL angle, GpMatrixOrder order); - -GpStatus WINGDIPAPI GdipCreateMatrix(GpMatrix **matrix); -GpStatus WINGDIPAPI GdipCreateMatrix2(REAL m11, REAL m12, REAL m21, REAL m22, REAL dx, REAL dy, GpMatrix **matrix); -GpStatus WINGDIPAPI GdipCreateMatrix3(GDIPCONST GpRectF *rect, GDIPCONST GpPointF *dstplg, GpMatrix **matrix); -GpStatus WINGDIPAPI GdipCreateMatrix3I(GDIPCONST GpRect *rect, GDIPCONST GpPoint *dstplg, GpMatrix **matrix); -GpStatus WINGDIPAPI GdipCloneMatrix(GpMatrix *matrix, GpMatrix **cloneMatrix); -GpStatus WINGDIPAPI GdipDeleteMatrix(GpMatrix *matrix); -GpStatus WINGDIPAPI GdipSetMatrixElements(GpMatrix *matrix, REAL m11, REAL m12, REAL m21, REAL m22, REAL dx, REAL dy); -GpStatus WINGDIPAPI GdipMultiplyMatrix(GpMatrix *matrix, GpMatrix* matrix2, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipTranslateMatrix(GpMatrix *matrix, REAL offsetX, REAL offsetY, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipScaleMatrix(GpMatrix *matrix, REAL scaleX, REAL scaleY, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipRotateMatrix(GpMatrix *matrix, REAL angle, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipShearMatrix(GpMatrix *matrix, REAL shearX, REAL shearY, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipInvertMatrix(GpMatrix *matrix); -GpStatus WINGDIPAPI GdipTransformMatrixPoints(GpMatrix *matrix, GpPointF *pts, INT count); -GpStatus WINGDIPAPI GdipTransformMatrixPointsI(GpMatrix *matrix, GpPoint *pts, INT count); -GpStatus WINGDIPAPI GdipVectorTransformMatrixPoints(GpMatrix *matrix, GpPointF *pts, INT count); -GpStatus WINGDIPAPI GdipVectorTransformMatrixPointsI(GpMatrix *matrix, GpPoint *pts, INT count); -GpStatus WINGDIPAPI GdipGetMatrixElements(GDIPCONST GpMatrix *matrix, REAL *matrixOut); -GpStatus WINGDIPAPI GdipIsMatrixInvertible(GDIPCONST GpMatrix *matrix, BOOL *result); -GpStatus WINGDIPAPI GdipIsMatrixIdentity(GDIPCONST GpMatrix *matrix, BOOL *result); -GpStatus WINGDIPAPI GdipIsMatrixEqual(GDIPCONST GpMatrix *matrix, GDIPCONST GpMatrix *matrix2, BOOL *result); - -GpStatus WINGDIPAPI GdiplusNotificationHook(OUT ULONG_PTR *token); -VOID WINGDIPAPI GdiplusNotificationUnhook(ULONG_PTR token); - -GpStatus WINGDIPAPI GdipCreatePathGradient(GDIPCONST GpPointF* points, INT count, GpWrapMode wrapMode, GpPathGradient **polyGradient); -GpStatus WINGDIPAPI GdipCreatePathGradientI(GDIPCONST GpPoint* points, INT count, GpWrapMode wrapMode, GpPathGradient **polyGradient); -GpStatus WINGDIPAPI GdipCreatePathGradientFromPath(GDIPCONST GpPath* path, GpPathGradient **polyGradient); -GpStatus WINGDIPAPI GdipGetPathGradientCenterColor(GpPathGradient *brush, ARGB* colors); -GpStatus WINGDIPAPI GdipSetPathGradientCenterColor(GpPathGradient *brush, ARGB colors); -GpStatus WINGDIPAPI GdipGetPathGradientSurroundColorsWithCount(GpPathGradient *brush, ARGB* color, INT* count); -GpStatus WINGDIPAPI GdipSetPathGradientSurroundColorsWithCount(GpPathGradient *brush, GDIPCONST ARGB* color, INT* count); -GpStatus WINGDIPAPI GdipGetPathGradientPath(GpPathGradient *brush, GpPath *path); -GpStatus WINGDIPAPI GdipSetPathGradientPath(GpPathGradient *brush, GDIPCONST GpPath *path); -GpStatus WINGDIPAPI GdipGetPathGradientCenterPoint(GpPathGradient *brush, GpPointF* points); -GpStatus WINGDIPAPI GdipGetPathGradientCenterPointI(GpPathGradient *brush, GpPoint* points); -GpStatus WINGDIPAPI GdipSetPathGradientCenterPoint(GpPathGradient *brush, GDIPCONST GpPointF* points); -GpStatus WINGDIPAPI GdipSetPathGradientCenterPointI(GpPathGradient *brush, GDIPCONST GpPoint* points); -GpStatus WINGDIPAPI GdipGetPathGradientRect(GpPathGradient *brush, GpRectF *rect); -GpStatus WINGDIPAPI GdipGetPathGradientRectI(GpPathGradient *brush, GpRect *rect); -GpStatus WINGDIPAPI GdipGetPathGradientPointCount(GpPathGradient *brush, INT* count); -GpStatus WINGDIPAPI GdipGetPathGradientSurroundColorCount(GpPathGradient *brush, INT* count); -GpStatus WINGDIPAPI GdipSetPathGradientGammaCorrection(GpPathGradient *brush, BOOL useGammaCorrection); -GpStatus WINGDIPAPI GdipGetPathGradientGammaCorrection(GpPathGradient *brush, BOOL *useGammaCorrection); -GpStatus WINGDIPAPI GdipGetPathGradientBlendCount(GpPathGradient *brush, INT *count); -GpStatus WINGDIPAPI GdipGetPathGradientBlend(GpPathGradient *brush, REAL *blend, REAL *positions, INT count); -GpStatus WINGDIPAPI GdipSetPathGradientBlend(GpPathGradient *brush, GDIPCONST REAL *blend, GDIPCONST REAL *positions, INT count); -GpStatus WINGDIPAPI GdipGetPathGradientPresetBlendCount(GpPathGradient *brush, INT *count); -GpStatus WINGDIPAPI GdipGetPathGradientPresetBlend(GpPathGradient *brush, ARGB *blend, REAL* positions, INT count); -GpStatus WINGDIPAPI GdipSetPathGradientPresetBlend(GpPathGradient *brush, GDIPCONST ARGB *blend, GDIPCONST REAL* positions, INT count); -GpStatus WINGDIPAPI GdipSetPathGradientSigmaBlend(GpPathGradient *brush, REAL focus, REAL scale); -GpStatus WINGDIPAPI GdipGetPathGradientWrapMode(GpPathGradient *brush, GpWrapMode *wrapmode); -GpStatus WINGDIPAPI GdipSetPathGradientWrapMode(GpPathGradient *brush, GpWrapMode wrapmode); -GpStatus WINGDIPAPI GdipGetPathGradientTransform(GpPathGradient *brush, GpMatrix *matrix); -GpStatus WINGDIPAPI GdipSetPathGradientTransform(GpPathGradient *brush, GpMatrix *matrix); -GpStatus WINGDIPAPI GdipResetPathGradientTransform(GpPathGradient* brush); -GpStatus WINGDIPAPI GdipMultiplyPathGradientTransform(GpPathGradient* brush, GDIPCONST GpMatrix *matrix, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipTranslatePathGradientTransform(GpPathGradient* brush, REAL dx, REAL dy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipScalePathGradientTransform(GpPathGradient* brush, REAL sx, REAL sy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipRotatePathGradientTransform(GpPathGradient* brush, REAL angle, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipGetPathGradientFocusScales(GpPathGradient *brush, REAL* xScale, REAL* yScale); -GpStatus WINGDIPAPI GdipSetPathGradientFocusScales(GpPathGradient *brush, REAL xScale, REAL yScale); - -GpStatus WINGDIPAPI GdipCreatePathIter(GpPathIterator **iterator, GpPath* path); -GpStatus WINGDIPAPI GdipDeletePathIter(GpPathIterator *iterator); -GpStatus WINGDIPAPI GdipPathIterNextSubpath(GpPathIterator* iterator, INT *resultCount, INT* startIndex, INT* endIndex, BOOL* isClosed); -GpStatus WINGDIPAPI GdipPathIterNextSubpathPath(GpPathIterator* iterator, INT* resultCount, GpPath* path, BOOL* isClosed); -GpStatus WINGDIPAPI GdipPathIterNextPathType(GpPathIterator* iterator, INT* resultCount, BYTE* pathType, INT* startIndex, INT* endIndex); -GpStatus WINGDIPAPI GdipPathIterNextMarker(GpPathIterator* iterator, INT *resultCount, INT* startIndex, INT* endIndex); -GpStatus WINGDIPAPI GdipPathIterNextMarkerPath(GpPathIterator* iterator, INT* resultCount, GpPath* path); -GpStatus WINGDIPAPI GdipPathIterGetCount(GpPathIterator* iterator, INT* count); -GpStatus WINGDIPAPI GdipPathIterGetSubpathCount(GpPathIterator* iterator, INT* count); -GpStatus WINGDIPAPI GdipPathIterIsValid(GpPathIterator* iterator, BOOL* valid); -GpStatus WINGDIPAPI GdipPathIterHasCurve(GpPathIterator* iterator, BOOL* hasCurve); -GpStatus WINGDIPAPI GdipPathIterRewind(GpPathIterator* iterator); -GpStatus WINGDIPAPI GdipPathIterEnumerate(GpPathIterator* iterator, INT* resultCount, GpPointF *points, BYTE *types, INT count); -GpStatus WINGDIPAPI GdipPathIterCopyData(GpPathIterator* iterator, INT* resultCount, GpPointF* points, BYTE* types, INT startIndex, INT endIndex); - -GpStatus WINGDIPAPI GdipCreatePen1(ARGB color, REAL width, GpUnit unit, GpPen **pen); -GpStatus WINGDIPAPI GdipCreatePen2(GpBrush *brush, REAL width, GpUnit unit, GpPen **pen); -GpStatus WINGDIPAPI GdipClonePen(GpPen *pen, GpPen **clonepen); -GpStatus WINGDIPAPI GdipDeletePen(GpPen *pen); -GpStatus WINGDIPAPI GdipSetPenWidth(GpPen *pen, REAL width); -GpStatus WINGDIPAPI GdipGetPenWidth(GpPen *pen, REAL *width); -GpStatus WINGDIPAPI GdipSetPenUnit(GpPen *pen, GpUnit unit); -GpStatus WINGDIPAPI GdipGetPenUnit(GpPen *pen, GpUnit *unit); -GpStatus WINGDIPAPI GdipSetPenLineCap197819(GpPen *pen, GpLineCap startCap, GpLineCap endCap, GpDashCap dashCap); -GpStatus WINGDIPAPI GdipSetPenStartCap(GpPen *pen, GpLineCap startCap); -GpStatus WINGDIPAPI GdipSetPenEndCap(GpPen *pen, GpLineCap endCap); -GpStatus WINGDIPAPI GdipSetPenDashCap197819(GpPen *pen, GpDashCap dashCap); -GpStatus WINGDIPAPI GdipGetPenStartCap(GpPen *pen, GpLineCap *startCap); -GpStatus WINGDIPAPI GdipGetPenEndCap(GpPen *pen, GpLineCap *endCap); -GpStatus WINGDIPAPI GdipGetPenDashCap197819(GpPen *pen, GpDashCap *dashCap); -GpStatus WINGDIPAPI GdipSetPenLineJoin(GpPen *pen, GpLineJoin lineJoin); -GpStatus WINGDIPAPI GdipGetPenLineJoin(GpPen *pen, GpLineJoin *lineJoin); -GpStatus WINGDIPAPI GdipSetPenCustomStartCap(GpPen *pen, GpCustomLineCap* customCap); -GpStatus WINGDIPAPI GdipGetPenCustomStartCap(GpPen *pen, GpCustomLineCap** customCap); -GpStatus WINGDIPAPI GdipSetPenCustomEndCap(GpPen *pen, GpCustomLineCap* customCap); -GpStatus WINGDIPAPI GdipGetPenCustomEndCap(GpPen *pen, GpCustomLineCap** customCap); -GpStatus WINGDIPAPI GdipSetPenMiterLimit(GpPen *pen, REAL miterLimit); -GpStatus WINGDIPAPI GdipGetPenMiterLimit(GpPen *pen, REAL *miterLimit); -GpStatus WINGDIPAPI GdipSetPenMode(GpPen *pen, GpPenAlignment penMode); -GpStatus WINGDIPAPI GdipGetPenMode(GpPen *pen, GpPenAlignment *penMode); -GpStatus WINGDIPAPI GdipSetPenTransform(GpPen *pen, GpMatrix *matrix); -GpStatus WINGDIPAPI GdipGetPenTransform(GpPen *pen, GpMatrix *matrix); -GpStatus WINGDIPAPI GdipResetPenTransform(GpPen *pen); -GpStatus WINGDIPAPI GdipMultiplyPenTransform(GpPen *pen, GDIPCONST GpMatrix *matrix, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipTranslatePenTransform(GpPen *pen, REAL dx, REAL dy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipScalePenTransform(GpPen *pen, REAL sx, REAL sy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipRotatePenTransform(GpPen *pen, REAL angle, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipSetPenColor(GpPen *pen, ARGB argb); -GpStatus WINGDIPAPI GdipGetPenColor(GpPen *pen, ARGB *argb); -GpStatus WINGDIPAPI GdipSetPenBrushFill(GpPen *pen, GpBrush *brush); -GpStatus WINGDIPAPI GdipGetPenBrushFill(GpPen *pen, GpBrush **brush); -GpStatus WINGDIPAPI GdipGetPenFillType(GpPen *pen, GpPenType* type); -GpStatus WINGDIPAPI GdipGetPenDashStyle(GpPen *pen, GpDashStyle *dashstyle); -GpStatus WINGDIPAPI GdipSetPenDashStyle(GpPen *pen, GpDashStyle dashstyle); -GpStatus WINGDIPAPI GdipGetPenDashOffset(GpPen *pen, REAL *offset); -GpStatus WINGDIPAPI GdipSetPenDashOffset(GpPen *pen, REAL offset); -GpStatus WINGDIPAPI GdipGetPenDashCount(GpPen *pen, INT *count); -GpStatus WINGDIPAPI GdipSetPenDashArray(GpPen *pen, GDIPCONST REAL *dash, INT count); -GpStatus WINGDIPAPI GdipGetPenDashArray(GpPen *pen, REAL *dash, INT count); -GpStatus WINGDIPAPI GdipGetPenCompoundCount(GpPen *pen, INT *count); -GpStatus WINGDIPAPI GdipSetPenCompoundArray(GpPen *pen, GDIPCONST REAL *dash, INT count); -GpStatus WINGDIPAPI GdipGetPenCompoundArray(GpPen *pen, REAL *dash, INT count); - -GpStatus WINGDIPAPI GdipCreateRegion(GpRegion **region); -GpStatus WINGDIPAPI GdipCreateRegionRect(GDIPCONST GpRectF *rect, GpRegion **region); -GpStatus WINGDIPAPI GdipCreateRegionRectI(GDIPCONST GpRect *rect, GpRegion **region); -GpStatus WINGDIPAPI GdipCreateRegionPath(GpPath *path, GpRegion **region); -GpStatus WINGDIPAPI GdipCreateRegionRgnData(GDIPCONST BYTE *regionData, INT size, GpRegion **region); -GpStatus WINGDIPAPI GdipCreateRegionHrgn(HRGN hRgn, GpRegion **region); -GpStatus WINGDIPAPI GdipCloneRegion(GpRegion *region, GpRegion **cloneRegion); -GpStatus WINGDIPAPI GdipDeleteRegion(GpRegion *region); -GpStatus WINGDIPAPI GdipSetInfinite(GpRegion *region); -GpStatus WINGDIPAPI GdipSetEmpty(GpRegion *region); -GpStatus WINGDIPAPI GdipCombineRegionRect(GpRegion *region, GDIPCONST GpRectF *rect, CombineMode combineMode); -GpStatus WINGDIPAPI GdipCombineRegionRectI(GpRegion *region, GDIPCONST GpRect *rect, CombineMode combineMode); -GpStatus WINGDIPAPI GdipCombineRegionPath(GpRegion *region, GpPath *path, CombineMode combineMode); -GpStatus WINGDIPAPI GdipCombineRegionRegion(GpRegion *region, GpRegion *region2, CombineMode combineMode); -GpStatus WINGDIPAPI GdipTranslateRegion(GpRegion *region, REAL dx, REAL dy); -GpStatus WINGDIPAPI GdipTranslateRegionI(GpRegion *region, INT dx, INT dy); -GpStatus WINGDIPAPI GdipTransformRegion(GpRegion *region, GpMatrix *matrix); -GpStatus WINGDIPAPI GdipGetRegionBounds(GpRegion *region, GpGraphics *graphics, GpRectF *rect); -GpStatus WINGDIPAPI GdipGetRegionBoundsI(GpRegion *region, GpGraphics *graphics, GpRect *rect); -GpStatus WINGDIPAPI GdipGetRegionHRgn(GpRegion *region, GpGraphics *graphics, HRGN *hRgn); -GpStatus WINGDIPAPI GdipIsEmptyRegion(GpRegion *region, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipIsInfiniteRegion(GpRegion *region, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipIsEqualRegion(GpRegion *region, GpRegion *region2, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipGetRegionDataSize(GpRegion *region, UINT * bufferSize); -GpStatus WINGDIPAPI GdipGetRegionData(GpRegion *region, BYTE * buffer, UINT bufferSize, UINT * sizeFilled); -GpStatus WINGDIPAPI GdipIsVisibleRegionPoint(GpRegion *region, REAL x, REAL y, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipIsVisibleRegionPointI(GpRegion *region, INT x, INT y, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipIsVisibleRegionRect(GpRegion *region, REAL x, REAL y, REAL width, REAL height, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipIsVisibleRegionRectI(GpRegion *region, INT x, INT y, INT width, INT height, GpGraphics *graphics, BOOL *result); -GpStatus WINGDIPAPI GdipGetRegionScansCount(GpRegion *region, UINT* count, GpMatrix* matrix); -GpStatus WINGDIPAPI GdipGetRegionScans(GpRegion *region, GpRectF* rects, INT* count, GpMatrix* matrix); -GpStatus WINGDIPAPI GdipGetRegionScansI(GpRegion *region, GpRect* rects, INT* count, GpMatrix* matrix); - -GpStatus WINGDIPAPI GdipCreateSolidFill(ARGB color, GpSolidFill **brush); -GpStatus WINGDIPAPI GdipSetSolidFillColor(GpSolidFill *brush, ARGB color); -GpStatus WINGDIPAPI GdipGetSolidFillColor(GpSolidFill *brush, ARGB *color); - -GpStatus WINGDIPAPI GdipCreateStringFormat(INT formatAttributes, LANGID language, GpStringFormat **format); -GpStatus WINGDIPAPI GdipStringFormatGetGenericDefault(GpStringFormat **format); -GpStatus WINGDIPAPI GdipStringFormatGetGenericTypographic(GpStringFormat **format); -GpStatus WINGDIPAPI GdipDeleteStringFormat(GpStringFormat *format); -GpStatus WINGDIPAPI GdipCloneStringFormat(GDIPCONST GpStringFormat *format, GpStringFormat **newFormat); -GpStatus WINGDIPAPI GdipSetStringFormatFlags(GpStringFormat *format, INT flags); -GpStatus WINGDIPAPI GdipGetStringFormatFlags(GDIPCONST GpStringFormat *format, INT *flags); -GpStatus WINGDIPAPI GdipSetStringFormatAlign(GpStringFormat *format, StringAlignment align); -GpStatus WINGDIPAPI GdipGetStringFormatAlign(GDIPCONST GpStringFormat *format, StringAlignment *align); -GpStatus WINGDIPAPI GdipSetStringFormatLineAlign(GpStringFormat *format, StringAlignment align); -GpStatus WINGDIPAPI GdipGetStringFormatLineAlign(GDIPCONST GpStringFormat *format, StringAlignment *align); -GpStatus WINGDIPAPI GdipSetStringFormatTrimming(GpStringFormat *format, StringTrimming trimming); -GpStatus WINGDIPAPI GdipGetStringFormatTrimming(GDIPCONST GpStringFormat *format, StringTrimming *trimming); -GpStatus WINGDIPAPI GdipSetStringFormatHotkeyPrefix(GpStringFormat *format, INT hotkeyPrefix); -GpStatus WINGDIPAPI GdipGetStringFormatHotkeyPrefix(GDIPCONST GpStringFormat *format, INT *hotkeyPrefix); -GpStatus WINGDIPAPI GdipSetStringFormatTabStops(GpStringFormat *format, REAL firstTabOffset, INT count, GDIPCONST REAL *tabStops); -GpStatus WINGDIPAPI GdipGetStringFormatTabStops(GDIPCONST GpStringFormat *format, INT count, REAL *firstTabOffset, REAL *tabStops); -GpStatus WINGDIPAPI GdipGetStringFormatTabStopCount(GDIPCONST GpStringFormat *format, INT * count); -GpStatus WINGDIPAPI GdipSetStringFormatDigitSubstitution(GpStringFormat *format, LANGID language, StringDigitSubstitute substitute); -GpStatus WINGDIPAPI GdipGetStringFormatDigitSubstitution(GDIPCONST GpStringFormat *format, LANGID *language, StringDigitSubstitute *substitute); -GpStatus WINGDIPAPI GdipGetStringFormatMeasurableCharacterRangeCount(GDIPCONST GpStringFormat *format, INT *count); -GpStatus WINGDIPAPI GdipSetStringFormatMeasurableCharacterRanges(GpStringFormat *format, INT rangeCount, GDIPCONST CharacterRange *ranges); - -GpStatus WINGDIPAPI GdipDrawString(GpGraphics *graphics, GDIPCONST WCHAR *string, INT length, GDIPCONST GpFont *font, GDIPCONST RectF *layoutRect, GDIPCONST GpStringFormat *stringFormat, GDIPCONST GpBrush *brush); -GpStatus WINGDIPAPI GdipMeasureString(GpGraphics *graphics, GDIPCONST WCHAR *string, INT length, GDIPCONST GpFont *font, GDIPCONST RectF *layoutRect, GDIPCONST GpStringFormat *stringFormat, RectF *boundingBox, INT *codepointsFitted, INT *linesFilled); -GpStatus WINGDIPAPI GdipMeasureCharacterRanges(GpGraphics *graphics, GDIPCONST WCHAR *string, INT length, GDIPCONST GpFont *font, GDIPCONST RectF &layoutRect, GDIPCONST GpStringFormat *stringFormat, INT regionCount, GpRegion **regions); -GpStatus WINGDIPAPI GdipDrawDriverString(GpGraphics *graphics, GDIPCONST UINT16 *text, INT length, GDIPCONST GpFont *font, GDIPCONST GpBrush *brush, GDIPCONST PointF *positions, INT flags, GDIPCONST GpMatrix *matrix); -GpStatus WINGDIPAPI GdipMeasureDriverString(GpGraphics *graphics, GDIPCONST UINT16 *text, INT length, GDIPCONST GpFont *font, GDIPCONST PointF *positions, INT flags, GDIPCONST GpMatrix *matrix, RectF *boundingBox); - -GpStatus WINGDIPAPI GdipCreateTexture(GpImage *image, GpWrapMode wrapmode, GpTexture **texture); -GpStatus WINGDIPAPI GdipCreateTexture2(GpImage *image, GpWrapMode wrapmode, REAL x, REAL y, REAL width, REAL height, GpTexture **texture); -GpStatus WINGDIPAPI GdipCreateTextureIA(GpImage *image, GDIPCONST GpImageAttributes *imageAttributes, REAL x, REAL y, REAL width, REAL height, GpTexture **texture); -GpStatus WINGDIPAPI GdipCreateTexture2I(GpImage *image, GpWrapMode wrapmode, INT x, INT y, INT width, INT height, GpTexture **texture); -GpStatus WINGDIPAPI GdipCreateTextureIAI(GpImage *image, GDIPCONST GpImageAttributes *imageAttributes, INT x, INT y, INT width, INT height, GpTexture **texture); -GpStatus WINGDIPAPI GdipGetTextureTransform(GpTexture *brush, GpMatrix *matrix); -GpStatus WINGDIPAPI GdipSetTextureTransform(GpTexture *brush, GDIPCONST GpMatrix *matrix); -GpStatus WINGDIPAPI GdipResetTextureTransform(GpTexture* brush); -GpStatus WINGDIPAPI GdipMultiplyTextureTransform(GpTexture* brush, GDIPCONST GpMatrix *matrix, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipTranslateTextureTransform(GpTexture* brush, REAL dx, REAL dy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipScaleTextureTransform(GpTexture* brush, REAL sx, REAL sy, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipRotateTextureTransform(GpTexture* brush, REAL angle, GpMatrixOrder order); -GpStatus WINGDIPAPI GdipSetTextureWrapMode(GpTexture *brush, GpWrapMode wrapmode); -GpStatus WINGDIPAPI GdipGetTextureWrapMode(GpTexture *brush, GpWrapMode *wrapmode); -GpStatus WINGDIPAPI GdipGetTextureImage(GpTexture *brush, GpImage **image); +GpStatus WINGDIPAPI GdipCreateStringFormat(INT,LANGID,GpStringFormat**); +GpStatus WINGDIPAPI GdipDeleteStringFormat(GpStringFormat*); +GpStatus WINGDIPAPI GdipGetStringFormatAlign(GpStringFormat*,StringAlignment*); +GpStatus WINGDIPAPI GdipGetStringFormatHotkeyPrefix(GDIPCONST GpStringFormat*,INT*); +GpStatus WINGDIPAPI GdipGetStringFormatLineAlign(GpStringFormat*,StringAlignment*); +GpStatus WINGDIPAPI GdipGetStringFormatTrimming(GpStringFormat*,StringTrimming*); +GpStatus WINGDIPAPI GdipSetStringFormatAlign(GpStringFormat*,StringAlignment); +GpStatus WINGDIPAPI GdipSetStringFormatHotkeyPrefix(GpStringFormat*,INT); +GpStatus WINGDIPAPI GdipSetStringFormatLineAlign(GpStringFormat*,StringAlignment); +GpStatus WINGDIPAPI GdipSetStringFormatTrimming(GpStringFormat*,StringTrimming); #ifdef __cplusplus } #endif -#endif /* _GDIPLUSFLAT_H */ +#endif diff --git a/reactos/include/psdk/gdiplusgpstubs.h b/reactos/include/psdk/gdiplusgpstubs.h index 9536795150b..364f21c4364 100644 --- a/reactos/include/psdk/gdiplusgpstubs.h +++ b/reactos/include/psdk/gdiplusgpstubs.h @@ -1,74 +1,80 @@ /* - * GdiPlusGpStubs.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUSGPSTUBS_H #define _GDIPLUSGPSTUBS_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif +#ifdef __cplusplus -class Matrix; - -class GpCustomLineCap {}; -class GpAdjustableArrowCap : public GpCustomLineCap {}; -class GpImage {}; -class GpBitmap : public GpImage {}; class GpGraphics {}; -class CGpEffect {}; +class GpGraphics {}; class GpBrush {}; -class GpPath {}; -class GpCachedBitmap; -class GpFont {}; -class GpFontFamily {}; -class GpFontCollection {}; -class GpPen {}; -class GpRegion {}; -class GpImageAttributes {}; -class GpMetafile : public GpImage {}; -class GpStringFormat {}; -class GpHatch : public GpBrush {}; -class GpLineGradient : public GpBrush {}; -class GpPathGradient : public GpBrush {}; -class GpPathIterator {}; class GpSolidFill : public GpBrush {}; +class GpPath {}; +class GpMatrix {}; +class GpPathIterator {}; +class GpCustomLineCap {}; +class GpImage {}; +class GpMetafile : public GpImage {}; +class GpImageAttributes {}; +class GpBitmap : public GpImage {}; +class GpPathGradient : public GpBrush {}; +class GpLineGradient : public GpBrush {}; class GpTexture : public GpBrush {}; +class GpFont {}; +class GpStringFormat {}; + +#else /* end of c++ declarations */ + +typedef struct GpGraphics GpGraphics; +typedef struct GpPen GpPen; +typedef struct GpBrush GpBrush; +typedef struct GpSolidFill GpSolidFill; +typedef struct GpPath GpPath; +typedef struct GpMatrix GpMatrix; +typedef struct GpPathIterator GpPathIterator; +typedef struct GpCustomLineCap GpCustomLineCap; +typedef struct GpImage GpImage; +typedef struct GpMetafile GpMetafile; +typedef struct GpImageAttributes GpImageAttributes; +typedef struct GpBitmap GpBitmap; +typedef struct GpPathGradient GpPathGradient; +typedef struct GpLineGradient GpLineGradient; +typedef struct GpTexture GpTexture; +typedef struct GpFont GpFont; +typedef struct GpStringFormat GpStringFormat; + +#endif /* end of c declarations */ typedef Status GpStatus; -typedef Rect GpRect; -typedef PathData GpPathData; -typedef BrushType GpBrushType; -typedef LineCap GpLineCap; -typedef LineJoin GpLineJoin; -typedef FlushIntention GpFlushIntention; -typedef Matrix GpMatrix; -typedef MatrixOrder GpMatrixOrder; typedef Unit GpUnit; -typedef CoordinateSpace GpCoordinateSpace; +typedef BrushType GpBrushType; typedef PointF GpPointF; -typedef Point GpPoint; -typedef RectF GpRectF; typedef FillMode GpFillMode; -typedef HatchStyle GpHatchStyle; -typedef WrapMode GpWrapMode; +typedef PathData GpPathData; +typedef LineCap GpLineCap; +typedef RectF GpRectF; +typedef Rect GpRect; +typedef LineJoin GpLineJoin; typedef DashCap GpDashCap; -typedef PenAlignment GpPenAlignment; -typedef PenType GpPenType; typedef DashStyle GpDashStyle; +typedef MatrixOrder GpMatrixOrder; +typedef Point GpPoint; +typedef WrapMode GpWrapMode; -#endif /* _GDIPLUSGPSTUBS_H */ +#endif diff --git a/reactos/include/psdk/gdiplusimaging.h b/reactos/include/psdk/gdiplusimaging.h index 150b6c5da8d..00ed3d12024 100644 --- a/reactos/include/psdk/gdiplusimaging.h +++ b/reactos/include/psdk/gdiplusimaging.h @@ -1,347 +1,145 @@ /* - * GdiPlusImaging.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUSIMAGING_H #define _GDIPLUSIMAGING_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif - -DEFINE_GUID(ImageFormatBMP, 0xb96b3cab,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatEMF, 0xb96b3cac,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatEXIF, 0xb96b3cb2,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatGIF, 0xb96b3cb0,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatIcon, 0xb96b3cb5,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatJPEG, 0xb96b3cae,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatMemoryBMP, 0xb96b3caa,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatPNG, 0xb96b3caf,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatTIFF, 0xb96b3cb1,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatUndefined, 0xb96b3ca9,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); -DEFINE_GUID(ImageFormatWMF, 0xb96b3cad,0x0728,0x11d3,0x9d,0x7b,0x00,0x00,0xf8,0x1e,0xf3,0x2e); - -DEFINE_GUID(FrameDimensionPage, 0x7462dc86,0x6180,0x4c7e,0x8e,0x3f,0xee,0x73,0x33,0xa7,0xa4,0x83); -DEFINE_GUID(FrameDimensionTime, 0x6aedbd6d,0x3fb5,0x418a,0x83,0xa6,0x7f,0x45,0x22,0x9d,0xc8,0x72); - -DEFINE_GUID(EncoderChrominanceTable,0xf2e455dc,0x09b3,0x4316,0x82,0x60,0x67,0x6a,0xda,0x32,0x48,0x1c); -DEFINE_GUID(EncoderColorDepth, 0x66087055,0xad66,0x4c7c,0x9a,0x18,0x38,0xa2,0x31,0x0b,0x83,0x37); -DEFINE_GUID(EncoderCompression, 0xe09d739d,0xccd4,0x44ee,0x8e,0xba,0x3f,0xbf,0x8b,0xe4,0xfc,0x58); -DEFINE_GUID(EncoderLuminanceTable,0xedb33bce,0x0266,0x4a77,0xb9,0x04,0x27,0x21,0x60,0x99,0xe7,0x17); -DEFINE_GUID(EncoderQuality, 0x1d5be4b5,0xfa4a,0x452d,0x9c,0xdd,0x5d,0xb3,0x51,0x05,0xe7,0xeb); -DEFINE_GUID(EncoderRenderMethod, 0x6d42c53a,0x229a,0x4825,0x8b,0xb7,0x5c,0x99,0xe2,0xb9,0xa8,0xb8); -DEFINE_GUID(EncoderSaveFlag,0x292266fc,0xac40,0x47bf,0x8c, 0xfc, 0xa8, 0x5b, 0x89, 0xa6, 0x55, 0xde); -DEFINE_GUID(EncoderScanMethod, 0x3a4e2661,0x3109,0x4e56,0x85,0x36,0x42,0xc1,0x56,0xe7,0xdc,0xfa); -DEFINE_GUID(EncoderTransformation,0x8d0eb2d1,0xa58e,0x4ea8,0xaa,0x14,0x10,0x80,0x74,0xb7,0xb6,0xf9); -DEFINE_GUID(EncoderVersion, 0x24d18c76,0x814a,0x41a4,0xbf,0x53,0x1c,0x21,0x9c,0xcc,0xf7,0x97); - -#define PropertyTagTypeASCII 2 -#define PropertyTagTypeByte 1 -#define PropertyTagTypeLong 4 -#define PropertyTagTypeRational 5 -#define PropertyTagTypeShort 3 -#define PropertyTagTypeSLONG 9 -#define PropertyTagTypeSRational 10 -#define PropertyTagTypeUndefined 7 - -#define PropertyTagGpsVer 0x0000 -#define PropertyTagGpsLatitudeRef 0x0001 -#define PropertyTagGpsLatitude 0x0002 -#define PropertyTagGpsLongitudeRef 0x0003 -#define PropertyTagGpsLongitude 0x0004 -#define PropertyTagGpsAltitudeRef 0x0005 -#define PropertyTagGpsAltitude 0x0006 -#define PropertyTagGpsGpsTime 0x0007 -#define PropertyTagGpsGpsSatellites 0x0008 -#define PropertyTagGpsGpsStatus 0x0009 -#define PropertyTagGpsGpsMeasureMode 0x000A -#define PropertyTagGpsGpsDop 0x000B -#define PropertyTagGpsSpeedRef 0x000C -#define PropertyTagGpsSpeed 0x000D -#define PropertyTagGpsTrackRef 0x000E -#define PropertyTagGpsTrack 0x000F -#define PropertyTagGpsImgDirRef 0x0010 -#define PropertyTagGpsImgDir 0x0011 -#define PropertyTagGpsMapDatum 0x0012 -#define PropertyTagGpsDestLatRef 0x0013 -#define PropertyTagGpsDestLat 0x0014 -#define PropertyTagGpsDestLongRef 0x0015 -#define PropertyTagGpsDestLong 0x0016 -#define PropertyTagGpsDestBearRef 0x0017 -#define PropertyTagGpsDestBear 0x0018 -#define PropertyTagGpsDestDistRef 0x0019 -#define PropertyTagGpsDestDist 0x001A -#define PropertyTagNewSubfileType 0x00FE -#define PropertyTagSubfileType 0x00FF -#define PropertyTagImageWidth 0x0100 -#define PropertyTagImageHeight 0x0101 -#define PropertyTagBitsPerSample 0x0102 -#define PropertyTagCompression 0x0103 -#define PropertyTagPhotometricInterp 0x0106 -#define PropertyTagThreshHolding 0x0107 -#define PropertyTagCellWidth 0x0108 -#define PropertyTagCellHeight 0x0109 -#define PropertyTagFillOrder 0x010A -#define PropertyTagDocumentName 0x010D -#define PropertyTagImageDescription 0x010E -#define PropertyTagEquipMake 0x010F -#define PropertyTagEquipModel 0x0110 -#define PropertyTagStripOffsets 0x0111 -#define PropertyTagOrientation 0x0112 -#define PropertyTagSamplesPerPixel 0x0115 -#define PropertyTagRowsPerStrip 0x0116 -#define PropertyTagStripBytesCount 0x0117 -#define PropertyTagMinSampleValue 0x0118 -#define PropertyTagMaxSampleValue 0x0119 -#define PropertyTagXResolution 0x011A -#define PropertyTagYResolution 0x011B -#define PropertyTagPlanarConfig 0x011C -#define PropertyTagPageName 0x011D -#define PropertyTagXPosition 0x011E -#define PropertyTagYPosition 0x011F -#define PropertyTagFreeOffset 0x0120 -#define PropertyTagFreeByteCounts 0x0121 -#define PropertyTagGrayResponseUnit 0x0122 -#define PropertyTagGrayResponseCurve 0x0123 -#define PropertyTagT4Option 0x0124 -#define PropertyTagT6Option 0x0125 -#define PropertyTagResolutionUnit 0x0128 -#define PropertyTagPageNumber 0x0129 -#define PropertyTagTransferFuncition 0x012D -#define PropertyTagSoftwareUsed 0x0131 -#define PropertyTagDateTime 0x0132 -#define PropertyTagArtist 0x013B -#define PropertyTagHostComputer 0x013C -#define PropertyTagPredictor 0x013D -#define PropertyTagWhitePoint 0x013E -#define PropertyTagPrimaryChromaticities 0x013F -#define PropertyTagColorMap 0x0140 -#define PropertyTagHalftoneHints 0x0141 -#define PropertyTagTileWidth 0x0142 -#define PropertyTagTileLength 0x0143 -#define PropertyTagTileOffset 0x0144 -#define PropertyTagTileByteCounts 0x0145 -#define PropertyTagInkSet 0x014C -#define PropertyTagInkNames 0x014D -#define PropertyTagNumberOfInks 0x014E -#define PropertyTagDotRange 0x0150 -#define PropertyTagTargetPrinter 0x0151 -#define PropertyTagExtraSamples 0x0152 -#define PropertyTagSampleFormat 0x0153 -#define PropertyTagSMinSampleValue 0x0154 -#define PropertyTagSMaxSampleValue 0x0155 -#define PropertyTagTransferRange 0x0156 -#define PropertyTagJPEGProc 0x0200 -#define PropertyTagJPEGInterFormat 0x0201 -#define PropertyTagJPEGInterLength 0x0202 -#define PropertyTagJPEGRestartInterval 0x0203 -#define PropertyTagJPEGLosslessPredictors 0x0205 -#define PropertyTagJPEGPointTransforms 0x0206 -#define PropertyTagJPEGQTables 0x0207 -#define PropertyTagJPEGDCTables 0x0208 -#define PropertyTagJPEGACTables 0x0209 -#define PropertyTagYCbCrCoefficients 0x0211 -#define PropertyTagYCbCrSubsampling 0x0212 -#define PropertyTagYCbCrPositioning 0x0213 -#define PropertyTagREFBlackWhite 0x0214 -#define PropertyTagGamma 0x0301 -#define PropertyTagICCProfileDescriptor 0x0302 -#define PropertyTagSRGBRenderingIntent 0x0303 -#define PropertyTagImageTitle 0x0320 -#define PropertyTagResolutionXUnit 0x5001 -#define PropertyTagResolutionYUnit 0x5002 -#define PropertyTagResolutionXLengthUnit 0x5003 -#define PropertyTagResolutionYLengthUnit 0x5004 -#define PropertyTagPrintFlags 0x5005 -#define PropertyTagPrintFlagsVersion 0x5006 -#define PropertyTagPrintFlagsCrop 0x5007 -#define PropertyTagPrintFlagsBleedWidth 0x5008 -#define PropertyTagPrintFlagsBleedWidthScale 0x5009 -#define PropertyTagHalftoneLPI 0x500A -#define PropertyTagHalftoneLPIUnit 0x500B -#define PropertyTagHalftoneDegree 0x500C -#define PropertyTagHalftoneShape 0x500D -#define PropertyTagHalftoneMisc 0x500E -#define PropertyTagHalftoneScreen 0x500F -#define PropertyTagJPEGQuality 0x5010 -#define PropertyTagGridSize 0x5011 -#define PropertyTagThumbnailFormat 0x5012 -#define PropertyTagThumbnailWidth 0x5013 -#define PropertyTagThumbnailHeight 0x5014 -#define PropertyTagThumbnailColorDepth 0x5015 -#define PropertyTagThumbnailPlanes 0x5016 -#define PropertyTagThumbnailRawBytes 0x5017 -#define PropertyTagThumbnailSize 0x5018 -#define PropertyTagThumbnailCompressedSize 0x5019 -#define PropertyTagColorTransferFunction 0x501A -#define PropertyTagThumbnailData 0x501B -#define PropertyTagThumbnailImageWidth 0x5020 -#define PropertyTagThumbnailImageHeight 0x5021 -#define PropertyTagThumbnailBitsPerSample 0x5022 -#define PropertyTagThumbnailCompression 0x5023 -#define PropertyTagThumbnailPhotometricInterp 0x5024 -#define PropertyTagThumbnailImageDescription 0x5025 -#define PropertyTagThumbnailEquipMake 0x5026 -#define PropertyTagThumbnailEquipModel 0x5027 -#define PropertyTagThumbnailStripOffsets 0x5028 -#define PropertyTagThumbnailOrientation 0x5029 -#define PropertyTagThumbnailSamplesPerPixel 0x502A -#define PropertyTagThumbnailRowsPerStrip 0x502B -#define PropertyTagThumbnailStripBytesCount 0x502C -#define PropertyTagThumbnailResolutionX 0x502D -#define PropertyTagThumbnailResolutionY 0x502E -#define PropertyTagThumbnailPlanarConfig 0x502F -#define PropertyTagThumbnailResolutionUnit 0x5030 -#define PropertyTagThumbnailTransferFunction 0x5031 -#define PropertyTagThumbnailSoftwareUsed 0x5032 -#define PropertyTagThumbnailDateTime 0x5033 -#define PropertyTagThumbnailArtist 0x5034 -#define PropertyTagThumbnailWhitePoint 0x5035 -#define PropertyTagThumbnailPrimaryChromaticities 0x5036 -#define PropertyTagThumbnailYCbCrCoefficients 0x5037 -#define PropertyTagThumbnailYCbCrSubsampling 0x5038 -#define PropertyTagThumbnailYCbCrPositioning 0x5039 -#define PropertyTagThumbnailRefBlackWhite 0x503A -#define PropertyTagThumbnailCopyRight 0x503B -#define PropertyTagLuminanceTable 0x5090 -#define PropertyTagChrominanceTable 0x5091 -#define PropertyTagFrameDelay 0x5100 -#define PropertyTagLoopCount 0x5101 -#define PropertyTagPixelUnit 0x5110 -#define PropertyTagPixelPerUnitX 0x5111 -#define PropertyTagPixelPerUnitY 0x5112 -#define PropertyTagPaletteHistogram 0x5113 -#define PropertyTagCopyright 0x8298 -#define PropertyTagExifExposureTime 0x829A -#define PropertyTagExifFNumber 0x829D -#define PropertyTagExifIFD 0x8769 -#define PropertyTagICCProfile 0x8773 -#define PropertyTagExifExposureProg 0x8822 -#define PropertyTagExifSpectralSense 0x8824 -#define PropertyTagGpsIFD 0x8825 -#define PropertyTagExifISOSpeed 0x8827 -#define PropertyTagExifOECF 0x8828 -#define PropertyTagExifVer 0x9000 -#define PropertyTagExifDTOrig 0x9003 -#define PropertyTagExifDTDigitized 0x9004 -#define PropertyTagExifCompConfig 0x9101 -#define PropertyTagExifCompBPP 0x9102 -#define PropertyTagExifShutterSpeed 0x9201 -#define PropertyTagExifAperture 0x9202 -#define PropertyTagExifBrightness 0x9203 -#define PropertyTagExifExposureBias 0x9204 -#define PropertyTagExifMaxAperture 0x9205 -#define PropertyTagExifSubjectDist 0x9206 -#define PropertyTagExifMeteringMode 0x9207 -#define PropertyTagExifLightSource 0x9208 -#define PropertyTagExifFlash 0x9209 -#define PropertyTagExifFocalLength 0x920A -#define PropertyTagExifMakerNote 0x927C -#define PropertyTagExifUserComment 0x9286 -#define PropertyTagExifDTSubsec 0x9290 -#define PropertyTagExifDTOrigSS 0x9291 -#define PropertyTagExifDTDigSS 0x9292 -#define PropertyTagExifFPXVer 0xA000 -#define PropertyTagExifColorSpace 0xA001 -#define PropertyTagExifPixXDim 0xA002 -#define PropertyTagExifPixYDim 0xA003 -#define PropertyTagExifRelatedWav 0xA004 -#define PropertyTagExifInterop 0xA005 -#define PropertyTagExifFlashEnergy 0xA20B -#define PropertyTagExifSpatialFR 0xA20C -#define PropertyTagExifFocalXRes 0xA20E -#define PropertyTagExifFocalYRes 0xA20F -#define PropertyTagExifFocalResUnit 0xA210 -#define PropertyTagExifSubjectLoc 0xA214 -#define PropertyTagExifExposureIndex 0xA215 -#define PropertyTagExifSensingMethod 0xA217 -#define PropertyTagExifFileSource 0xA300 -#define PropertyTagExifSceneType 0xA301 -#define PropertyTagExifCfaPattern 0xA302 - - -class BitmapData +enum ImageLockMode { -public: - UINT Width; - UINT Height; - INT Stride; - PixelFormat PixelFormat1; - VOID *Scan0; - UINT_PTR Reserved; + ImageLockModeRead = 1, + ImageLockModeWrite = 2, + ImageLockModeUserInputBuf = 4 }; - +#ifdef __cplusplus class EncoderParameter { public: - GUID Guid; - ULONG NumberOfValues; - ULONG Type; - VOID *Value; + GUID Guid; + ULONG NumberOfValues; + ULONG Type; + VOID* Value; }; - class EncoderParameters { public: - UINT Count; - EncoderParameter Parameter[1]; + UINT Count; + EncoderParameter Parameter[1]; }; - class ImageCodecInfo { public: - CLSID Clsid; - GUID FormatID; - WCHAR *CodecName; - WCHAR *DllName; - WCHAR *FormatDescription; - WCHAR *FilenameExtension; - WCHAR *MimeType; - DWORD Flags; - DWORD Version; - DWORD SigCount; - DWORD SigSize; - BYTE *SigPattern; - BYTE *SigMask; + CLSID Clsid; + GUID FormatID; + const WCHAR* CodecName; + const WCHAR* DllName; + const WCHAR* FormatDescription; + const WCHAR* FilenameExtension; + const WCHAR* MimeType; + DWORD Flags; + DWORD Version; + DWORD SigCount; + DWORD SigSize; + const BYTE* SigPattern; + const BYTE* SigMask; +}; + +class BitmapData +{ +public: + UINT Width; + UINT Height; + INT Stride; + PixelFormat PixelFormat; + VOID* Scan0; + UINT_PTR Reserved; }; class ImageItemData { public: - UINT Size; - UINT Position; - VOID *Desc; - UINT DescSize; - UINT *Data; - UINT DataSize; - UINT Cookie; + UINT Size; + UINT Position; + VOID* Desc; + UINT DescSize; + VOID* Data; + UINT DataSize; + UINT Cookie; }; +#else /* end of c++ typedefs */ -class PropertyItem +typedef enum ImageLockMode ImageLockMode; + +typedef struct EncoderParameter { -public: - PROPID id; - ULONG length; - WORD type; - VOID *value; -}; + GUID Guid; + ULONG NumberOfValues; + ULONG Type; + VOID* Value; +} EncoderParameter; + +typedef struct EncoderParameters +{ + UINT Count; + EncoderParameter Parameter[1]; +} EncoderParameters; + +typedef struct ImageCodecInfo +{ + CLSID Clsid; + GUID FormatID; + const WCHAR* CodecName; + const WCHAR* DllName; + const WCHAR* FormatDescription; + const WCHAR* FilenameExtension; + const WCHAR* MimeType; + DWORD Flags; + DWORD Version; + DWORD SigCount; + DWORD SigSize; + const BYTE* SigPattern; + const BYTE* SigMask; +} ImageCodecInfo; + +typedef struct BitmapData +{ + UINT Width; + UINT Height; + INT Stride; + PixelFormat PixelFormat; + VOID* Scan0; + UINT_PTR Reserved; /* undocumented: stores the lock mode */ +} BitmapData; + +typedef struct ImageItemData +{ + UINT Size; + UINT Position; + VOID* Desc; + UINT DescSize; + VOID* Data; + UINT DataSize; + UINT Cookie; +} ImageItemData; + +#endif /* end of c typedefs */ #endif /* _GDIPLUSIMAGING_H */ diff --git a/reactos/include/psdk/gdiplusinit.h b/reactos/include/psdk/gdiplusinit.h index 726840fc7a9..22155b7fe30 100644 --- a/reactos/include/psdk/gdiplusinit.h +++ b/reactos/include/psdk/gdiplusinit.h @@ -1,63 +1,69 @@ /* - * GdiPlusInit.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUSINIT_H #define _GDIPLUSINIT_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif - -enum DebugEventLevel { - DebugEventLevelFatal, - DebugEventLevelWarning +enum DebugEventLevel +{ + DebugEventLevelFatal, + DebugEventLevelWarning }; -typedef VOID (WINAPI *DebugEventProc)(DebugEventLevel level, CHAR *message); +typedef VOID (WINAPI *DebugEventProc)(enum DebugEventLevel, CHAR *); +typedef Status (WINAPI *NotificationHookProc)(ULONG_PTR *); +typedef void (WINAPI *NotificationUnhookProc)(ULONG_PTR); struct GdiplusStartupInput { - UINT32 GdiplusVersion; - DebugEventProc DebugEventCallback; - BOOL SuppressBackgroundThread; - BOOL SuppressExternalCodecs; + UINT32 GdiplusVersion; + DebugEventProc DebugEventCallback; + BOOL SuppressBackgroundThread; + BOOL SuppressExternalCodecs; - GdiplusStartupInput( - DebugEventProc debugEventCallback = NULL, - BOOL suppressBackgroundThread = FALSE, - BOOL suppressExternalCodecs = FALSE) - { - GdiplusVersion = 1; - DebugEventCallback = debugEventCallback; - SuppressBackgroundThread = suppressBackgroundThread; - SuppressExternalCodecs = suppressExternalCodecs; - } +#ifdef __cplusplus + GdiplusStartupInput(DebugEventProc debugEventCallback = NULL, + BOOL suppressBackgroundThread = FALSE, + BOOL suppressExternalCodecs = FALSE) + { + GdiplusVersion = 1; + DebugEventCallback = debugEventCallback; + SuppressBackgroundThread = suppressBackgroundThread; + SuppressExternalCodecs = suppressExternalCodecs; + } +#endif }; -typedef Status (WINAPI *NotificationHookProc)(OUT ULONG_PTR *token); -typedef VOID (WINAPI *NotificationUnhookProc)(ULONG_PTR token); - -struct GdiplusStartupOutput { - NotificationHookProc NotificationHook; - NotificationUnhookProc NotificationUnhook; +struct GdiplusStartupOutput +{ + NotificationHookProc NotificationHook; + NotificationUnhookProc NotificationUnhook; }; -extern "C" WINAPI Status GdiplusStartup(ULONG_PTR *token, const GdiplusStartupInput *input, GdiplusStartupOutput *output); -extern "C" WINAPI VOID GdiplusShutdown(ULONG_PTR token); +#ifdef __cplusplus +extern "C" { +#endif -#endif /* _GDIPLUSINIT_H */ +Status WINAPI GdiplusStartup(ULONG_PTR *, const struct GdiplusStartupInput *, struct GdiplusStartupOutput *); +void WINAPI GdiplusShutdown(ULONG_PTR); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/reactos/include/psdk/gdiplusmem.h b/reactos/include/psdk/gdiplusmem.h index 67c06e8a2f4..a0496baabce 100644 --- a/reactos/include/psdk/gdiplusmem.h +++ b/reactos/include/psdk/gdiplusmem.h @@ -1,39 +1,35 @@ /* - * GdiPlusMem.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUSMEM_H #define _GDIPLUSMEM_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif +#define WINGDIPAPI __stdcall #ifdef __cplusplus extern "C" { #endif -#define WINGDIPAPI __stdcall - -void* WINGDIPAPI GdipAlloc(size_t size); -void WINGDIPAPI GdipFree(void* ptr); +void* WINGDIPAPI GdipAlloc(SIZE_T); +void WINGDIPAPI GdipFree(void*); #ifdef __cplusplus } #endif -#endif /* _GDIPLUSMEM_H */ +#endif diff --git a/reactos/include/psdk/gdiplusmetaheader.h b/reactos/include/psdk/gdiplusmetaheader.h index 0a5941756ef..e59ab09c8e4 100644 --- a/reactos/include/psdk/gdiplusmetaheader.h +++ b/reactos/include/psdk/gdiplusmetaheader.h @@ -1,168 +1,167 @@ /* - * GdiPlusMetaHeader.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUSMETAHEADER_H #define _GDIPLUSMETAHEADER_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif - -typedef struct { - DWORD iType; - DWORD nSize; - RECTL rclBounds; - RECTL rclFrame; - DWORD dSignature; - DWORD nVersion; - DWORD nBytes; - DWORD nRecords; - WORD nHandles; - WORD sReserved; - DWORD nDescription; - DWORD offDescription; - DWORD nPalEntries; - SIZEL szlDevice; - SIZEL szlMillimeters; +typedef struct +{ + DWORD iType; + DWORD nSize; + RECTL rclBounds; + RECTL rclFrame; + DWORD dSignature; + DWORD nVersion; + DWORD nBytes; + DWORD nRecords; + WORD nHandles; + WORD sReserved; + DWORD nDescription; + DWORD offDescription; + DWORD nPalEntries; + SIZEL szlDevice; + SIZEL szlMillimeters; } ENHMETAHEADER3; -typedef struct { - INT16 Left; - INT16 Top; - INT16 Right; - INT16 Bottom; +#include + +typedef struct +{ + INT16 Left; + INT16 Top; + INT16 Right; + INT16 Bottom; } PWMFRect16; -typedef struct { - UINT32 Key; - INT16 Hmf; - PWMFRect16 BoundingBox; - INT16 Inch; - UINT32 Reserved; - INT16 Checksum; +typedef struct +{ + UINT32 Key; + INT16 Hmf; + PWMFRect16 BoundingBox; + INT16 Inch; + UINT32 Reserved; + INT16 Checksum; } WmfPlaceableFileHeader; +#include +#define GDIP_EMFPLUSFLAGS_DISPLAY 0x00000001 + +#ifdef __cplusplus class MetafileHeader { public: - VOID GetBounds(Rect *rect) - { - } + MetafileType Type; + UINT Size; + UINT Version; + UINT EmfPlusFlags; + REAL DpiX; + REAL DpiY; + INT X; + INT Y; + INT Width; + INT Height; + union + { + METAHEADER WmfHeader; + ENHMETAHEADER3 EmfHeader; + }; + INT EmfPlusHeaderSize; + INT LogicalDpiX; + INT LogicalDpiY; - REAL GetDpiX(VOID) - { - return 0; - } +public: + MetafileType GetType() const { return Type; } - REAL GetDpiY(VOID) - { - return 0; - } + UINT GetMetafileSize() const { return Size; } - const ENHMETAHEADER3 *GetEmfHeader(VOID) const - { - return NULL; - } + UINT GetVersion() const { return Version; } - UINT GetEmPlusFlags(VOID) - { - return 0; - } + UINT GetEmfPlusFlags() const { return EmfPlusFlags; } - UINT GetMetafileSize(VOID) - { - return 0; - } + REAL GetDpiX() const { return DpiX; } - MetafileType GetType(VOID) - { - return MetafileTypeInvalid; - } + REAL GetDpiY() const { return DpiY; } - UINT GetVersion(VOID) - { - return 0; - } + VOID GetBounds (OUT Rect *r) const + { + r->X = X; + r->Y = Y; + r->Width = Width; + r->Height = Height; + } - const METAHEADER *GetWmfHeader(VOID) const - { - return NULL; - } + BOOL IsWmf() const + { + return ((Type == MetafileTypeWmf) || (Type == MetafileTypeWmfPlaceable)); + } - BOOL IsDisplay(VOID) const - { - return FALSE; - } + BOOL IsWmfPlaceable() const { return (Type == MetafileTypeWmfPlaceable); } - BOOL IsEmf(VOID) const - { - return FALSE; - } + BOOL IsEmf() const { return (Type == MetafileTypeEmf); } - BOOL IsEmfOrEmfPlus(VOID) const - { - return FALSE; - } + BOOL IsEmfOrEmfPlus() const { return (Type >= MetafileTypeEmf); } - BOOL IsEmfPlus(VOID) const - { - return FALSE; - } + BOOL IsEmfPlus() const { return (Type >= MetafileTypeEmfPlusOnly); } - BOOL IsEmfPlusDual(VOID) const - { - return FALSE; - } + BOOL IsEmfPlusDual() const { return (Type == MetafileTypeEmfPlusDual); } - BOOL IsEmfPlusOnly(VOID) const - { - return FALSE; - } + BOOL IsEmfPlusOnly() const { return (Type == MetafileTypeEmfPlusOnly); } - BOOL IsWmf(VOID) - { - return FALSE; - } + BOOL IsDisplay() const + { + return IsEmfPlus() && ((EmfPlusFlags & GDIP_EMFPLUSFLAGS_DISPLAY) != 0); + } - BOOL IsWmfPlaceable(VOID) const - { - return FALSE; - } + const METAHEADER * GetWmfHeader() const + { + return IsWmf() ? &WmfHeader : NULL; + } - REAL DpiX; - REAL DpiY; - UINT EmfPlusFlags; - INT EmfPlusHeaderSize; - INT Height; - INT LogicalDpiX; - INT LogicalDpiY; - MetafileType Type; - UINT Version; - INT Width; - INT X; - INT Y; - - union - { - METAHEADER WmfHeader; - ENHMETAHEADER3 EmfHeader; - }; + const ENHMETAHEADER3 * GetEmfHeader() const + { + return IsEmfOrEmfPlus() ? &EmfHeader : NULL; + } }; +#else /* end of c++ typedefs */ + +typedef struct MetafileHeader +{ + MetafileType Type; + UINT Size; + UINT Version; + UINT EmfPlusFlags; + REAL DpiX; + REAL DpiY; + INT X; + INT Y; + INT Width; + INT Height; + union + { + METAHEADER WmfHeader; + ENHMETAHEADER3 EmfHeader; + } DUMMYUNIONNAME; + INT EmfPlusHeaderSize; + INT LogicalDpiX; + INT LogicalDpiY; +} MetafileHeader; + +#endif /* end of c typedefs */ #endif /* _GDIPLUSMETAHEADER_H */ diff --git a/reactos/include/psdk/gdipluspixelformats.h b/reactos/include/psdk/gdipluspixelformats.h index 0051a422765..d7382f141ff 100644 --- a/reactos/include/psdk/gdipluspixelformats.h +++ b/reactos/include/psdk/gdipluspixelformats.h @@ -1,62 +1,72 @@ /* - * GdiPlusPixelFormats.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUSPIXELFORMATS_H #define _GDIPLUSPIXELFORMATS_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif - -#define PixelFormatIndexed 0x00010000 -#define PixelFormatGDI 0x00020000 -#define PixelFormatAlpha 0x00040000 -#define PixelFormatPAlpha 0x00080000 -#define PixelFormatExtended 0x00100000 -#define PixelFormatCanonical 0x00200000 - -#define PixelFormatUndefined 0 -#define PixelFormatDontCare 0 - -#define PixelFormat1bppIndexed (1 | ( 1 << 8) | PixelFormatIndexed | PixelFormatGDI) -#define PixelFormat4bppIndexed (2 | ( 4 << 8) | PixelFormatIndexed | PixelFormatGDI) -#define PixelFormat8bppIndexed (3 | ( 8 << 8) | PixelFormatIndexed | PixelFormatGDI) -#define PixelFormat16bppARGB1555 (7 | (16 << 8) | PixelFormatAlpha | PixelFormatGDI) -#define PixelFormat16bppGrayScale (4 | (16 << 8) | PixelFormatExtended) -#define PixelFormat16bppRGB555 (5 | (16 << 8) | PixelFormatGDI) -#define PixelFormat16bppRGB565 (6 | (16 << 8) | PixelFormatGDI) -#define PixelFormat24bppRGB (8 | (24 << 8) | PixelFormatGDI) -#define PixelFormat32bppARGB (10 | (32 << 8) | PixelFormatAlpha | PixelFormatGDI | PixelFormatCanonical) -#define PixelFormat32bppPARGB (11 | (32 << 8) | PixelFormatAlpha | PixelFormatPAlpha | PixelFormatGDI) -#define PixelFormat32bppRGB (9 | (32 << 8) | PixelFormatGDI) -#define PixelFormat48bppRGB (12 | (48 << 8) | PixelFormatExtended) -#define PixelFormat64bppARGB (13 | (64 << 8) | PixelFormatAlpha | PixelFormatCanonical | PixelFormatExtended) -#define PixelFormat64bppPARGB (14 | (64 << 8) | PixelFormatAlpha | PixelFormatPAlpha | PixelFormatExtended) - - +typedef DWORD ARGB; typedef INT PixelFormat; -typedef DWORD ARGB; +#define PixelFormatIndexed 0x00010000 +#define PixelFormatGDI 0x00020000 +#define PixelFormatAlpha 0x00040000 +#define PixelFormatPAlpha 0x00080000 +#define PixelFormatExtended 0x00100000 +#define PixelFormatCanonical 0x00200000 -typedef struct { - UINT Flags; - UINT Count; - ARGB Entries[1]; +#define PixelFormatUndefined 0 +#define PixelFormatDontCare 0 + +#define PixelFormat1bppIndexed (1 | ( 1 << 8) | PixelFormatIndexed | PixelFormatGDI) +#define PixelFormat4bppIndexed (2 | ( 4 << 8) | PixelFormatIndexed | PixelFormatGDI) +#define PixelFormat8bppIndexed (3 | ( 8 << 8) | PixelFormatIndexed | PixelFormatGDI) +#define PixelFormat16bppGrayScale (4 | (16 << 8) | PixelFormatExtended) +#define PixelFormat16bppRGB555 (5 | (16 << 8) | PixelFormatGDI) +#define PixelFormat16bppRGB565 (6 | (16 << 8) | PixelFormatGDI) +#define PixelFormat16bppARGB1555 (7 | (16 << 8) | PixelFormatAlpha | PixelFormatGDI) +#define PixelFormat24bppRGB (8 | (24 << 8) | PixelFormatGDI) +#define PixelFormat32bppRGB (9 | (32 << 8) | PixelFormatGDI) +#define PixelFormat32bppARGB (10 | (32 << 8) | PixelFormatAlpha | PixelFormatGDI | PixelFormatCanonical) +#define PixelFormat32bppPARGB (11 | (32 << 8) | PixelFormatAlpha | PixelFormatPAlpha | PixelFormatGDI) +#define PixelFormat48bppRGB (12 | (48 << 8) | PixelFormatExtended) +#define PixelFormat64bppARGB (13 | (64 << 8) | PixelFormatAlpha | PixelFormatCanonical | PixelFormatExtended) +#define PixelFormat64bppPARGB (14 | (64 << 8) | PixelFormatAlpha | PixelFormatPAlpha | PixelFormatExtended) +#define PixelFormatMax 15 + +#ifdef __cplusplus + +struct ColorPalette +{ +public: + UINT Flags; + UINT Count; + ARGB Entries[1]; +}; + +#else /* end of c++ typedefs */ + +typedef struct ColorPalette +{ + UINT Flags; + UINT Count; + ARGB Entries[1]; } ColorPalette; -#endif /* _GDIPLUSPIXELFORMATS_H */ +#endif /* end of c typedefs */ + +#endif diff --git a/reactos/include/psdk/gdiplustypes.h b/reactos/include/psdk/gdiplustypes.h index 78868c9cef3..29616e9d34f 100644 --- a/reactos/include/psdk/gdiplustypes.h +++ b/reactos/include/psdk/gdiplustypes.h @@ -1,509 +1,243 @@ /* - * GdiPlusTypes.h + * Copyright (C) 2007 Google (Evan Stade) * - * Windows GDI+ + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. * - * This file is part of the w32api package. + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. * - * THIS SOFTWARE IS NOT COPYRIGHTED - * - * This source code is offered for use in the public domain. You may - * use, modify or distribute it freely. - * - * This code is distributed in the hope that it will be useful but - * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY - * DISCLAIMED. This includes but is not limited to warranties of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */ #ifndef _GDIPLUSTYPES_H #define _GDIPLUSTYPES_H -#if __GNUC__ >= 3 -#pragma GCC system_header -#endif - typedef float REAL; +enum Status{ + Ok = 0, + GenericError = 1, + InvalidParameter = 2, + OutOfMemory = 3, + ObjectBusy = 4, + InsufficientBuffer = 5, + NotImplemented = 6, + Win32Error = 7, + WrongState = 8, + Aborted = 9, + FileNotFound = 10, + ValueOverflow = 11, + AccessDenied = 12, + UnknownImageFormat = 13, + FontFamilyNotFound = 14, + FontStyleNotFound = 15, + NotTrueTypeFont = 16, + UnsupportedGdiplusVersion = 17, + GdiplusNotInitialized = 18, + PropertyNotFound = 19, + PropertyNotSupported = 20, + ProfileNotFound = 21 +}; + + +#ifdef __cplusplus extern "C" { - typedef BOOL (CALLBACK * ImageAbort)(VOID *); - typedef ImageAbort DrawImageAbort; - typedef ImageAbort GetThumbnailImageAbort; - typedef BOOL (CALLBACK * EnumerateMetafileProc)(EmfPlusRecordType, UINT, UINT, const BYTE*, VOID*); +#endif + +typedef BOOL (CALLBACK * ImageAbort)(VOID *); +typedef ImageAbort DrawImageAbort; +typedef ImageAbort GetThumbnailImageAbort; + +#ifdef __cplusplus } - -typedef enum { - Ok = 0, - GenericError = 1, - InvalidParameter = 2, - OutOfMemory = 3, - ObjectBusy = 4, - InsufficientBuffer = 5, - NotImplemented = 6, - Win32Error = 7, - WrongState = 8, - Aborted = 9, - FileNotFound = 10, - ValueOverflow = 11, - AccessDenied = 12, - UnknownImageFormat = 13, - FontFamilyNotFound = 14, - FontStyleNotFound = 15, - NotTrueTypeFont = 16, - UnsupportedGdiplusVersion = 17, - GdiplusNotInitialized = 18, - PropertyNotFound = 19, - PropertyNotSupported = 20, - ProfileNotFound = 21 -} Status; +#endif -class CharacterRange -{ -public: - CharacterRange(VOID) - { - } - - CharacterRange(INT first, INT length) - { - } - - CharacterRange &operator=(const CharacterRange &rhs) - { - First = rhs.First; - Length = rhs.Length; - return *this; - } - -public: - INT First; - INT Length; -}; - - -class SizeF -{ -public: - SizeF(VOID) - { - } - - SizeF(FLOAT width, FLOAT height) - { - } - - SizeF(const SizeF &size) - { - } - - BOOL Empty(VOID) - { - return FALSE; - } - - BOOL Equals(const SizeF &sz) - { - return FALSE; - } - - SizeF operator+(const SizeF &sz) - { - return SizeF(Width + sz.Width, - Height + sz.Height); - } - - SizeF operator-(const SizeF &sz) - { - return SizeF(Width - sz.Width, - Height - sz.Height); - } - -public: - FLOAT Height; - FLOAT Width; -}; - - -class PointF -{ -public: - PointF(REAL x, REAL y) - { - } - - PointF(const SizeF &size) - { - } - - PointF(VOID) - { - } - - PointF(const PointF &point) - { - } - - BOOL Equals(const PointF& point) - { - return FALSE; - } - - PointF operator+(const PointF &point) - { - return PointF(X + point.X, - Y + point.Y); - } - - PointF operator-(const PointF &point) - { - return PointF(X - point.X, - Y - point.Y); - } - -public: - REAL X; - REAL Y; -}; - - -class PathData -{ -public: - PathData(VOID) - { - } - -public: - INT Count; - PointF *Points; - BYTE *Types; -}; - - -class Size -{ -public: - Size(VOID) - { - } - - Size(INT width, INT height) - { - } - - Size(const Size &size) - { - } - - BOOL Empty(VOID) - { - return FALSE; - } - - BOOL Equals(const Size &sz) - { - return FALSE; - } - - Size operator+(const Size &sz) - { - return Size(Width + sz.Width, - Height + sz.Height); - } - - Size operator-(const Size &sz) - { - return Size(Width - sz.Width, - Height - sz.Height); - } - -public: - INT Height; - INT Width; -}; - +#ifdef __cplusplus class Point { public: - Point(VOID) - { - } + Point() + { + X = Y = 0; + } - Point(INT x, INT y) - { - } + Point(IN const Point &pt) + { + X = pt.X; + Y = pt.Y; + } - Point(const Point &point) - { - } + /* FIXME: missing constructor that takes a Size */ - Point(const Size &size) - { - } + Point(IN INT x, IN INT y) + { + X = x; + Y = y; + } - BOOL Equals(const Point& point) - { - return FALSE; - } + Point operator+(IN const Point& pt) const + { + return Point(X + pt.X, Y + pt.Y); + } - Point operator+(const Point &point) - { - return Point(X + point.X, - Y + point.Y); - } + Point operator-(IN const Point& pt) const + { + return Point(X - pt.X, Y - pt.Y); + } - Point operator-(const Point &point) - { - return Point(X - point.X, - Y - point.Y); - } + BOOL Equals(IN const Point& pt) + { + return (X == pt.X) && (Y == pt.Y); + } public: - INT X; - INT Y; + INT X; + INT Y; }; - -class Rect +class PointF { public: - Rect(VOID) - { - } + PointF() + { + X = Y = 0.0f; + } - Rect(const Point &location, const Size &size) - { - } + PointF(IN const PointF &pt) + { + X = pt.X; + Y = pt.Y; + } - Rect(INT x, INT y, INT width, INT height) - { - } + /* FIXME: missing constructor that takes a SizeF */ - Rect *Clone(VOID) const - { - return NULL; - } + PointF(IN REAL x, IN REAL y) + { + X = x; + Y = y; + } - BOOL Contains(const Point& pt) - { - return FALSE; - } + PointF operator+(IN const PointF& pt) const + { + return PointF(X + pt.X, Y + pt.Y); + } - BOOL Contains(Rect& rect) - { - return FALSE; - } + PointF operator-(IN const PointF& pt) const + { + return PointF(X - pt.X, Y - pt.Y); + } - BOOL Contains(INT x, INT y) - { - return FALSE; - } + BOOL Equals(IN const PointF& pt) + { + return (X == pt.X) && (Y == pt.Y); + } - BOOL Equals(const Rect& rect) const - { - return FALSE; - } - - INT GetBottom(VOID) const - { - return 0; - } - - VOID GetBounds(Rect* rect) const - { - } - - INT GetLeft(VOID) const - { - return 0; - } - - VOID GetLocation(Point* point) const - { - } - - INT GetRight(VOID) const - { - return 0; - } - - VOID GetSize(Size* size) const - { - } - - INT GetTop(VOID) const - { - return 0; - } - - VOID Inflate(INT dx, INT dy) - { - } - - VOID Inflate(const Point& point) - { - } - - BOOL Intersect(Rect& c, const Rect& a, const Rect& b) - { - return FALSE; - } - - BOOL Intersect(const Rect& rect) - { - return FALSE; - } - - BOOL IntersectsWith(const Rect& rect) const - { - return FALSE; - } - - BOOL IsEmptyArea(VOID) const - { - return FALSE; - } - - VOID Offset(INT dx, INT dy) - { - } - - VOID Offset(const Point& point) - { - } - - BOOL Union(Rect& c, const Rect& a, const Rect& b) - { - return FALSE; - } public: - INT X; - INT Y; - INT Width; - INT Height; + REAL X; + REAL Y; }; +class PathData +{ +public: + PathData() + { + Count = 0; + Points = NULL; + Types = NULL; + } + ~PathData() + { + if (Points != NULL) + { + delete Points; + } + + if (Types != NULL) + { + delete Types; + } + } + +private: + PathData(const PathData &); + PathData& operator=(const PathData &); + +public: + INT Count; + PointF* Points; + BYTE* Types; +}; + +/* FIXME: missing the methods. */ class RectF { public: - RectF(const PointF &location, const SizeF &size) - { - } - - RectF(VOID) - { - } - - RectF(REAL x, REAL y, REAL width, REAL height) - { - } - - RectF *Clone(VOID) const - { - return NULL; - } - - BOOL Contains(const RectF& rect) - { - return FALSE; - } - - BOOL Contains(const PointF& pt) const - { - return FALSE; - } - - BOOL Contains(REAL x, REAL y) - { - return FALSE; - } - - BOOL Equals(const RectF& rect) const - { - return FALSE; - } - - REAL GetBottom(VOID) const - { - return 0; - } - - VOID GetBounds(RectF* rect) const - { - } - - REAL GetLeft(VOID) const - { - return 0; - } - - VOID GetLocation(PointF* point) const - { - } - - REAL GetRight(VOID) const - { - return 0; - } - - VOID GetSize(SizeF* size) const - { - } - - REAL GetTop(VOID) const - { - return 0; - } - - VOID Inflate(const PointF& point) - { - } - - VOID Inflate(REAL dx, REAL dy) - { - } - - BOOL Intersect(Rect& c, const Rect& a, const Rect& b) - { - return FALSE; - } - - BOOL Intersect(const Rect& rect) - { - return FALSE; - } - - BOOL IntersectsWith(const RectF& rect) const - { - return FALSE; - } - - BOOL IsEmptyArea(VOID) const - { - return FALSE; - } - - VOID Offset(INT dx, INT dy) - { - } - - VOID Offset(const Point& point) - { - } - - BOOL Union(RectF& c, const RectF& a, const RectF& b) - { - return FALSE; - } - -public: - REAL X; - REAL Y; - REAL Width; - REAL Height; + REAL X; + REAL Y; + REAL Width; + REAL Height; }; -#endif /* _GDIPLUSTYPES_H */ +/* FIXME: missing the methods. */ +class Rect +{ +public: + INT X; + INT Y; + INT Width; + INT Height; +}; + +#else /* end of c++ typedefs */ + +typedef struct Point +{ + INT X; + INT Y; +} Point; + +typedef struct PointF +{ + REAL X; + REAL Y; +} PointF; + +typedef struct PathData +{ + INT Count; + PointF* Points; + BYTE* Types; +} PathData; + +typedef struct RectF +{ + REAL X; + REAL Y; + REAL Width; + REAL Height; +} RectF; + +typedef struct Rect +{ + INT X; + INT Y; + INT Width; + INT Height; +} Rect; + +typedef enum Status Status; + +#endif /* end of c typedefs */ + +#endif