Index: /trunk/ab5.0/ablib/src/Classes/System/Drawing/Drawing2D/misc.ab
===================================================================
--- /trunk/ab5.0/ablib/src/Classes/System/Drawing/Drawing2D/misc.ab	(revision 699)
+++ /trunk/ab5.0/ablib/src/Classes/System/Drawing/Drawing2D/misc.ab	(revision 700)
@@ -1,3 +1,4 @@
 ' Classes/System/Drawing/Drawing2D/misc.ab
+
 Namespace System
 Namespace Drawing
@@ -138,4 +139,96 @@
 End Enum
 
+Enum WrapMode
+	Tile         ' 0
+	TileFlipX    ' 1
+	TileFlipY    ' 2
+	TileFlipXY   ' 3
+	Clamp        ' 4
+End Enum
+
+Enum HatchStyle
+	Horizontal                    ' 0
+	Vertical                      ' 1
+	ForwardDiagonal               ' 2
+	BackwardDiagonal              ' 3
+	Cross                         ' 4
+	DiagonalCross                 ' 5
+	05Percent                     ' 6
+	10Percent                     ' 7
+	20Percent                     ' 8
+	25Percent                     ' 9
+	30Percent                     ' 10
+	40Percent                     ' 11
+	50Percent                     ' 12
+	60Percent                     ' 13
+	70Percent                     ' 14
+	75Percent                     ' 15
+	80Percent                     ' 16
+	90Percent                     ' 17
+	LightDownwardDiagonal         ' 18
+	LightUpwardDiagonal           ' 19
+	DarkDownwardDiagonal          ' 20
+	DarkUpwardDiagonal            ' 21
+	WideDownwardDiagonal          ' 22
+	WideUpwardDiagonal            ' 23
+	LightVertical                 ' 24
+	LightHorizontal               ' 25
+	NarrowVertical                ' 26
+	NarrowHorizontal              ' 27
+	DarkVertical                  ' 28
+	DarkHorizontal                ' 29
+	DashedDownwardDiagonal        ' 30
+	DashedUpwardDiagonal          ' 31
+	DashedHorizontal              ' 32
+	DashedVertical                ' 33
+	SmallConfetti                 ' 34
+	LargeConfetti                 ' 35
+	ZigZag                        ' 36
+	Wave                          ' 37
+	DiagonalBrick                 ' 38
+	HorizontalBrick               ' 39
+	Weave                         ' 40
+	Plaid                         ' 41
+	Divot                         ' 42
+	DottedGrid                    ' 43
+	DottedDiamond                 ' 44
+	Shingle                       ' 45
+	Trellis                       ' 46
+	Sphere                        ' 47
+	SmallGrid                     ' 48
+	SmallCheckerBoard             ' 49
+	LargeCheckerBoard             ' 50
+	OutlinedDiamond               ' 51
+	SolidDiamond                  ' 52
+
+'	LargeGrid = HatchStyleCross   ' 4
+
+'	Min       = HatchStyleHorizontal
+'	Max       = HatchStyleTotal - 1
+End Enum
+
+Enum PathPointType
+	Start           = 0
+	Line            = 1
+	Bezier          = 3
+	PathTypeMask    = &h07
+	DashMode        = &h10
+	PathMarker      = &h20
+	CloseSubpath    = &h80
+	Bezier3    = 3
+End Enum
+
+Enum WarpMode
+	Perspective     ' 0
+	Bilinear        ' 1
+End Enum
+
+Enum LinearGradientMode
+	Horizontal          ' 0
+	Vertical            ' 1
+	ForwardDiagonal     ' 2
+	BackwardDiagonal    ' 3
+End Enum
+
 End Namespace
 End Namespace
Index: /trunk/ab5.0/ablib/src/Classes/System/Drawing/Graphics.ab
===================================================================
--- /trunk/ab5.0/ablib/src/Classes/System/Drawing/Graphics.ab	(revision 699)
+++ /trunk/ab5.0/ablib/src/Classes/System/Drawing/Graphics.ab	(revision 700)
@@ -36,9 +36,9 @@
 End Class
 
-Delegate Function EnumerateMetafileProc(recordType As EmfPlusRecordType, flags As DWord, dataSize As DWord, data As *Byte, callbackData As VoidPtr) As Boolean
+Delegate Function EnumerateMetafileProc(recordType As Imaging.EmfPlusRecordType, flags As DWord, dataSize As DWord, data As *Byte, callbackData As VoidPtr) As Boolean
 
 Namespace Detail
 
-TypeDef NativeEnumerateMetafileProc = *Function(recordType As EmfPlusRecordType, flags As DWord, dataSize As DWord, data As *Byte, callbackData As VoidPtr) As Boolean
+TypeDef NativeEnumerateMetafileProc = *Function(recordType As Imaging.EmfPlusRecordType, flags As DWord, dataSize As DWord, data As *Byte, callbackData As VoidPtr) As Boolean
 
 Type EnumerateMetafileProcData
@@ -47,5 +47,5 @@
 End Type
 
-Function NativeEnumerateMetafileProcEntry(recordType As EmfPlusRecordType, flags As DWord, dataSize As DWord, data As *Byte, callbackData As VoidPtr) As Boolean
+Function NativeEnumerateMetafileProcEntry(recordType As Imaging.EmfPlusRecordType, flags As DWord, dataSize As DWord, data As *Byte, callbackData As VoidPtr) As Boolean
 	Dim procData = callbackData As *EnumerateMetafileProcData
 	Dim proc = procData->Proc
Index: /trunk/ab5.0/ablib/src/Classes/System/Drawing/Imaging/misc.ab
===================================================================
--- /trunk/ab5.0/ablib/src/Classes/System/Drawing/Imaging/misc.ab	(revision 699)
+++ /trunk/ab5.0/ablib/src/Classes/System/Drawing/Imaging/misc.ab	(revision 700)
@@ -436,4 +436,332 @@
 End Enum
 
+Enum MetafileType
+	Invalid
+	Wmf
+	WmfPlaceable
+	Emf
+	EmfPlusOnly
+	EmfPlusDual
+End Enum
+
+Enum EmfType
+	Only     = 4 'MetafileType.Emf As Long
+	PlusOnly = 5 'MetafileType.EmfPlusOnly As Long
+	PlusDual = 6 'MetafileType.EmfPlusDual As Long
+End Enum
+
+Enum EncoderParameterValueType
+	Byte           = 1
+	ASCII          = 2
+	Short          = 3
+	Long           = 4
+	Rational       = 5
+	LongRange      = 6
+	Undefined      = 7
+	RationalRange  = 8
+End Enum
+
+Enum EncoderValue
+	ColorTypeCMYK
+	ColorTypeYCCK
+	CompressionLZW
+	CompressionCCITT3
+	CompressionCCITT4
+	CompressionRle
+	CompressionNone
+	ScanMethodInterlaced
+	ScanMethodNonInterlaced
+	VersionGif87
+	VersionGif89
+	RenderProgressive
+	RenderNonProgressive
+	TransformRotate90
+	TransformRotate180
+	TransformRotate270
+	TransformFlipHorizontal
+	TransformFlipVertical
+	MultiFrame
+	LastFrame
+	Flush
+	FrameDimensionTime
+	FrameDimensionResolution
+	FrameDimensionPage
+End Enum
+
+Enum EmfPlusRecordType
+	WmfSetBkColor              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKCOLOR)
+	WmfSetBkMode               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETBKMODE)
+	WmfSetMapMode              = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPMODE)
+	WmfSetROP2                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETROP2)
+	WmfSetRelAbs               = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETRELABS)
+	WmfSetPolyFillMode         = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPOLYFILLMODE)
+	WmfSetStretchBltMode       = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETSTRETCHBLTMODE)
+	WmfSetTextCharExtra        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCHAREXTRA)
+	WmfSetTextColor            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTCOLOR)
+	WmfSetTextJustification    = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTJUSTIFICATION)
+	WmfSetWindowOrg            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWORG)
+	WmfSetWindowExt            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETWINDOWEXT)
+	WmfSetViewportOrg          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTORG)
+	WmfSetViewportExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETVIEWPORTEXT)
+	WmfOffsetWindowOrg         = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETWINDOWORG)
+	WmfScaleWindowExt          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEWINDOWEXT)
+	WmfOffsetViewportOrg       = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETVIEWPORTORG)
+	WmfScaleViewportExt        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SCALEVIEWPORTEXT)
+	WmfLineTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_LINETO)
+	WmfMoveTo                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_MOVETO)
+	WmfExcludeClipRect         = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXCLUDECLIPRECT)
+	WmfIntersectClipRect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_INTERSECTCLIPRECT)
+	WmfArc                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_ARC)
+	WmfEllipse                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_ELLIPSE)
+	WmfFloodFill               = GDIP_WMF_RECORD_TO_EMFPLUS(META_FLOODFILL)
+	WmfPie                     = GDIP_WMF_RECORD_TO_EMFPLUS(META_PIE)
+	WmfRectangle               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RECTANGLE)
+	WmfRoundRect               = GDIP_WMF_RECORD_TO_EMFPLUS(META_ROUNDRECT)
+	WmfPatBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_PATBLT)
+	WmfSaveDC                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_SAVEDC)
+	WmfSetPixel                = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPIXEL)
+	WmfOffsetClipRgn           = GDIP_WMF_RECORD_TO_EMFPLUS(META_OFFSETCLIPRGN)
+	WmfTextOut                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_TEXTOUT)
+	WmfBitBlt                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_BITBLT)
+	WmfStretchBlt              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHBLT)
+	WmfPolygon                 = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYGON)
+	WmfPolyline                = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYLINE)
+	WmfEscape                  = GDIP_WMF_RECORD_TO_EMFPLUS(META_ESCAPE)
+	WmfRestoreDC               = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESTOREDC)
+	WmfFillRegion              = GDIP_WMF_RECORD_TO_EMFPLUS(META_FILLREGION)
+	WmfFrameRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_FRAMEREGION)
+	WmfInvertRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_INVERTREGION)
+	WmfPaintRegion             = GDIP_WMF_RECORD_TO_EMFPLUS(META_PAINTREGION)
+	WmfSelectClipRegion        = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTCLIPREGION)
+	WmfSelectObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTOBJECT)
+	WmfSetTextAlign            = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETTEXTALIGN)
+	WmfDrawText                = GDIP_WMF_RECORD_TO_EMFPLUS(&h062F)   ' META_DRAWTEXT
+	WmfChord                   = GDIP_WMF_RECORD_TO_EMFPLUS(META_CHORD)
+	WmfSetMapperFlags          = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETMAPPERFLAGS)
+	WmfExtTextOut              = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTTEXTOUT)
+	WmfSetDIBToDev             = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETDIBTODEV)
+	WmfSelectPalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SELECTPALETTE)
+	WmfRealizePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_REALIZEPALETTE)
+	WmfAnimatePalette          = GDIP_WMF_RECORD_TO_EMFPLUS(META_ANIMATEPALETTE)
+	WmfSetPalEntries           = GDIP_WMF_RECORD_TO_EMFPLUS(META_SETPALENTRIES)
+	WmfPolyPolygon             = GDIP_WMF_RECORD_TO_EMFPLUS(META_POLYPOLYGON)
+	WmfResizePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_RESIZEPALETTE)
+	WmfDIBBitBlt               = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBBITBLT)
+	WmfDIBStretchBlt           = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBSTRETCHBLT)
+	WmfDIBCreatePatternBrush   = GDIP_WMF_RECORD_TO_EMFPLUS(META_DIBCREATEPATTERNBRUSH)
+	WmfStretchDIB              = GDIP_WMF_RECORD_TO_EMFPLUS(META_STRETCHDIB)
+	WmfExtFloodFill            = GDIP_WMF_RECORD_TO_EMFPLUS(META_EXTFLOODFILL)
+	WmfSetLayout               = GDIP_WMF_RECORD_TO_EMFPLUS(&h0149)   ' META_SETLAYOUT
+	WmfResetDC                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h014C)   ' META_RESETDC
+	WmfStartDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h014D)   ' META_STARTDOC
+	WmfStartPage               = GDIP_WMF_RECORD_TO_EMFPLUS(&h004F)   ' META_STARTPAGE
+	WmfEndPage                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h0050)   ' META_ENDPAGE
+	WmfAbortDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h0052)   ' META_ABORTDOC
+	WmfEndDoc                  = GDIP_WMF_RECORD_TO_EMFPLUS(&h005E)   ' META_ENDDOC
+	WmfDeleteObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_DELETEOBJECT)
+	WmfCreatePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPALETTE)
+	WmfCreateBrush             = GDIP_WMF_RECORD_TO_EMFPLUS(&h00F8)   ' META_CREATEBRUSH
+	WmfCreatePatternBrush      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPATTERNBRUSH)
+	WmfCreatePenIndirect       = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPENINDIRECT)
+	WmfCreateFontIndirect      = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEFONTINDIRECT)
+	WmfCreateBrushIndirect     = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEBRUSHINDIRECT)
+	WmfCreateBitmapIndirect    = GDIP_WMF_RECORD_TO_EMFPLUS(&h02FD)   ' META_CREATEBITMAPINDIRECT
+	WmfCreateBitmap            = GDIP_WMF_RECORD_TO_EMFPLUS(&h06FE)   ' META_CREATEBITMAP
+	WmfCreateRegion            = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEREGION)
+
+	EmfHeader                  = EMR_HEADER
+	EmfPolyBezier              = EMR_POLYBEZIER
+	EmfPolygon                 = EMR_POLYGON
+	EmfPolyline                = EMR_POLYLINE
+	EmfPolyBezierTo            = EMR_POLYBEZIERTO
+	EmfPolyLineTo              = EMR_POLYLINETO
+	EmfPolyPolyline            = EMR_POLYPOLYLINE
+	EmfPolyPolygon             = EMR_POLYPOLYGON
+	EmfSetWindowExtEx          = EMR_SETWINDOWEXTEX
+	EmfSetWindowOrgEx          = EMR_SETWINDOWORGEX
+	EmfSetViewportExtEx        = EMR_SETVIEWPORTEXTEX
+	EmfSetViewportOrgEx        = EMR_SETVIEWPORTORGEX
+	EmfSetBrushOrgEx           = EMR_SETBRUSHORGEX
+	EmfEOF                     = EMR_EOF
+	EmfSetPixelV               = EMR_SETPIXELV
+	EmfSetMapperFlags          = EMR_SETMAPPERFLAGS
+	EmfSetMapMode              = EMR_SETMAPMODE
+	EmfSetBkMode               = EMR_SETBKMODE
+	EmfSetPolyFillMode         = EMR_SETPOLYFILLMODE
+	EmfSetROP2                 = EMR_SETROP2
+	EmfSetStretchBltMode       = EMR_SETSTRETCHBLTMODE
+	EmfSetTextAlign            = EMR_SETTEXTALIGN
+	EmfSetColorAdjustment      = EMR_SETCOLORADJUSTMENT
+	EmfSetTextColor            = EMR_SETTEXTCOLOR
+	EmfSetBkColor              = EMR_SETBKCOLOR
+	EmfOffsetClipRgn           = EMR_OFFSETCLIPRGN
+	EmfMoveToEx                = EMR_MOVETOEX
+	EmfSetMetaRgn              = EMR_SETMETARGN
+	EmfExcludeClipRect         = EMR_EXCLUDECLIPRECT
+	EmfIntersectClipRect       = EMR_INTERSECTCLIPRECT
+	EmfScaleViewportExtEx      = EMR_SCALEVIEWPORTEXTEX
+	EmfScaleWindowExtEx        = EMR_SCALEWINDOWEXTEX
+	EmfSaveDC                  = EMR_SAVEDC
+	EmfRestoreDC               = EMR_RESTOREDC
+	EmfSetWorldTransform       = EMR_SETWORLDTRANSFORM
+	EmfModifyWorldTransform    = EMR_MODIFYWORLDTRANSFORM
+	EmfSelectObject            = EMR_SELECTOBJECT
+	EmfCreatePen               = EMR_CREATEPEN
+	EmfCreateBrushIndirect     = EMR_CREATEBRUSHINDIRECT
+	EmfDeleteObject            = EMR_DELETEOBJECT
+	EmfAngleArc                = EMR_ANGLEARC
+	EmfEllipse                 = EMR_ELLIPSE
+	EmfRectangle               = EMR_RECTANGLE
+	EmfRoundRect               = EMR_ROUNDRECT
+	EmfArc                     = EMR_ARC
+	EmfChord                   = EMR_CHORD
+	EmfPie                     = EMR_PIE
+	EmfSelectPalette           = EMR_SELECTPALETTE
+	EmfCreatePalette           = EMR_CREATEPALETTE
+	EmfSetPaletteEntries       = EMR_SETPALETTEENTRIES
+	EmfResizePalette           = EMR_RESIZEPALETTE
+	EmfRealizePalette          = EMR_REALIZEPALETTE
+	EmfExtFloodFill            = EMR_EXTFLOODFILL
+	EmfLineTo                  = EMR_LINETO
+	EmfArcTo                   = EMR_ARCTO
+	EmfPolyDraw                = EMR_POLYDRAW
+	EmfSetArcDirection         = EMR_SETARCDIRECTION
+	EmfSetMiterLimit           = EMR_SETMITERLIMIT
+	EmfBeginPath               = EMR_BEGINPATH
+	EmfEndPath                 = EMR_ENDPATH
+	EmfCloseFigure             = EMR_CLOSEFIGURE
+	EmfFillPath                = EMR_FILLPATH
+	EmfStrokeAndFillPath       = EMR_STROKEANDFILLPATH
+	EmfStrokePath              = EMR_STROKEPATH
+	EmfFlattenPath             = EMR_FLATTENPATH
+	EmfWidenPath               = EMR_WIDENPATH
+	EmfSelectClipPath          = EMR_SELECTCLIPPATH
+	EmfAbortPath               = EMR_ABORTPATH
+	EmfReserved_069            = 69   ' Not Used
+	EmfGdiComment              = EMR_GDICOMMENT
+	EmfFillRgn                 = EMR_FILLRGN
+	EmfFrameRgn                = EMR_FRAMERGN
+	EmfInvertRgn               = EMR_INVERTRGN
+	EmfPaintRgn                = EMR_PAINTRGN
+	EmfExtSelectClipRgn        = EMR_EXTSELECTCLIPRGN
+	EmfBitBlt                  = EMR_BITBLT
+	EmfStretchBlt              = EMR_STRETCHBLT
+	EmfMaskBlt                 = EMR_MASKBLT
+	EmfPlgBlt                  = EMR_PLGBLT
+	EmfSetDIBitsToDevice       = EMR_SETDIBITSTODEVICE
+	EmfStretchDIBits           = EMR_STRETCHDIBITS
+	EmfExtCreateFontIndirect   = EMR_EXTCREATEFONTINDIRECTW
+	EmfExtTextOutA             = EMR_EXTTEXTOUTA
+	EmfExtTextOutW             = EMR_EXTTEXTOUTW
+	EmfPolyBezier16            = EMR_POLYBEZIER16
+	EmfPolygon16               = EMR_POLYGON16
+	EmfPolyline16              = EMR_POLYLINE16
+	EmfPolyBezierTo16          = EMR_POLYBEZIERTO16
+	EmfPolylineTo16            = EMR_POLYLINETO16
+	EmfPolyPolyline16          = EMR_POLYPOLYLINE16
+	EmfPolyPolygon16           = EMR_POLYPOLYGON16
+	EmfPolyDraw16              = EMR_POLYDRAW16
+	EmfCreateMonoBrush         = EMR_CREATEMONOBRUSH
+	EmfCreateDIBPatternBrushPt = EMR_CREATEDIBPATTERNBRUSHPT
+	EmfExtCreatePen            = EMR_EXTCREATEPEN
+	EmfPolyTextOutA            = EMR_POLYTEXTOUTA
+	EmfPolyTextOutW            = EMR_POLYTEXTOUTW
+	EmfSetICMMode              = 98   ' EMR_SETICMMODE
+	EmfCreateColorSpace        = 99   ' EMR_CREATECOLORSPACE
+	EmfSetColorSpace           = 100  ' EMR_SETCOLORSPACE
+	EmfDeleteColorSpace        = 101  ' EMR_DELETECOLORSPACE
+	EmfGLSRecord               = 102  ' EMR_GLSRECORD
+	EmfGLSBoundedRecord        = 103  ' EMR_GLSBOUNDEDRECORD
+	EmfPixelFormat             = 104  ' EMR_PIXELFORMAT
+	EmfDrawEscape              = 105  ' EMR_RESERVED_105
+	EmfExtEscape               = 106  ' EMR_RESERVED_106
+	EmfStartDoc                = 107  ' EMR_RESERVED_107
+	EmfSmallTextOut            = 108  ' EMR_RESERVED_108
+	EmfForceUFIMapping         = 109  ' EMR_RESERVED_109
+	EmfNamedEscape             = 110  ' EMR_RESERVED_110
+	EmfColorCorrectPalette     = 111  ' EMR_COLORCORRECTPALETTE
+	EmfSetICMProfileA          = 112  ' EMR_SETICMPROFILEA
+	EmfSetICMProfileW          = 113  ' EMR_SETICMPROFILEW
+	EmfAlphaBlend              = 114  ' EMR_ALPHABLEND
+	EmfSetLayout               = 115  ' EMR_SETLAYOUT
+	EmfTransparentBlt          = 116  ' EMR_TRANSPARENTBLT
+	EmfReserved_117            = 117  ' Not Used
+	EmfGradientFill            = 118  ' EMR_GRADIENTFILL
+	EmfSetLinkedUFIs           = 119  ' EMR_RESERVED_119
+	EmfSetTextJustification    = 120  ' EMR_RESERVED_120
+	EmfColorMatchToTargetW     = 121  ' EMR_COLORMATCHTOTARGETW
+	EmfCreateColorSpaceW       = 122  ' EMR_CREATECOLORSPACEW
+	EmfMax                     = 122
+	EmfMin                     = 1
+
+	EmfPlusInvalid = GDIP_EMFPLUS_RECORD_BASE
+	EmfPlusHeader
+	EmfPlusEndOfFile
+
+	EmfPlusComment
+
+	EmfPlusGetDC
+
+	EmfPlusMultiFormatStart
+	EmfPlusMultiFormatSection
+	EmfPlusMultiFormatEnd
+
+	EmfPlusObject
+
+	EmfPlusClear
+	EmfPlusFillRects
+	EmfPlusDrawRects
+	EmfPlusFillPolygon
+	EmfPlusDrawLines
+	EmfPlusFillEllipse
+	EmfPlusDrawEllipse
+	EmfPlusFillPie
+	EmfPlusDrawPie
+	EmfPlusDrawArc
+	EmfPlusFillRegion
+	EmfPlusFillPath
+	EmfPlusDrawPath
+	EmfPlusFillClosedCurve
+	EmfPlusDrawClosedCurve
+	EmfPlusDrawCurve
+	EmfPlusDrawBeziers
+	EmfPlusDrawImage
+	EmfPlusDrawImagePoints
+	EmfPlusDrawString
+
+	EmfPlusSetRenderingOrigin
+	EmfPlusSetAntiAliasMode
+	EmfPlusSetTextRenderingHint
+	EmfPlusSetTextContrast
+	EmfPlusSetInterpolationMode
+	EmfPlusSetPixelOffsetMode
+	EmfPlusSetCompositingMode
+	EmfPlusSetCompositingQuality
+	EmfPlusSave
+	EmfPlusRestore
+	EmfPlusBeginContainer
+	EmfPlusBeginContainerNoParams
+	EmfPlusEndContainer
+	EmfPlusSetWorldTransform
+	EmfPlusResetWorldTransform
+	EmfPlusMultiplyWorldTransform
+	EmfPlusTranslateWorldTransform
+	EmfPlusScaleWorldTransform
+	EmfPlusRotateWorldTransform
+	EmfPlusSetPageTransform
+	EmfPlusResetClip
+	EmfPlusSetClipRect
+	EmfPlusSetClipPath
+	EmfPlusSetClipRegion
+	EmfPlusOffsetClip
+
+	EmfPlusDrawDriverString
+
+	EmfPlusRecordTotal
+
+	EmfPlusRecordTypeMax = EmfPlusRecordTotal - 1
+'	EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader
+End Enum
+
 End Namespace
 End Namespace
Index: /trunk/ab5.0/ablib/src/Classes/System/Drawing/Text/misc.ab
===================================================================
--- /trunk/ab5.0/ablib/src/Classes/System/Drawing/Text/misc.ab	(revision 699)
+++ /trunk/ab5.0/ablib/src/Classes/System/Drawing/Text/misc.ab	(revision 700)
@@ -13,4 +13,16 @@
 End Enum
 
+Enum GenericFontFamily
+	Serif
+	SansSerif
+	Monospace
+End Enum
+
+Enum HotkeyPrefix
+	None        = 0
+	Show        = 1
+	Hide        = 2
+End Enum
+
 End Namespace
 End Namespace
Index: /trunk/ab5.0/ablib/src/Classes/System/Drawing/misc.ab
===================================================================
--- /trunk/ab5.0/ablib/src/Classes/System/Drawing/misc.ab	(revision 699)
+++ /trunk/ab5.0/ablib/src/Classes/System/Drawing/misc.ab	(revision 700)
@@ -62,4 +62,38 @@
 End Enum
 
+Enum StringFormatFlags
+	DirectionRightToLeft        = &h00000001
+	DirectionVertical           = &h00000002
+	NoFitBlackBox               = &h00000004
+	DisplayFormatControl        = &h00000020
+	NoFontFallback              = &h00000400
+	MeasureTrailingSpaces       = &h00000800
+	NoWrap                      = &h00001000
+	LineLimit                   = &h00002000
+	NoClip                      = &h00004000
+End Enum
+
+Enum StringTrimming
+	None              = 0
+	Character         = 1
+	Word_             = 2
+	EllipsisCharacter = 3
+	EllipsisWord      = 4
+	EllipsisPath      = 5
+End Enum
+
+Enum StringDigitSubstitute
+	User        = 0
+	None        = 1
+	National    = 2
+	Traditional = 3
+End Enum
+
+Enum StringAlignment
+	Near   = 0
+	Center = 1
+	Far    = 2
+End Enum
+
 Namespace Detail
 	Sub ThrowGdiplusException(status As Status)
Index: /trunk/ab5.0/ablib/src/GdiPlusEnums.ab
===================================================================
--- /trunk/ab5.0/ablib/src/GdiPlusEnums.ab	(revision 699)
+++ /trunk/ab5.0/ablib/src/GdiPlusEnums.ab	(revision 700)
@@ -5,100 +5,7 @@
 TypeDef GraphicsState = DWord
 
-Const Enum WrapMode
-	WrapModeTile         ' 0
-	WrapModeTileFlipX    ' 1
-	WrapModeTileFlipY    ' 2
-	WrapModeTileFlipXY   ' 3
-	WrapModeClamp        ' 4
-End Enum
-
-Const Enum HatchStyle
-	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          ' 31
-	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
-'	HatchStyleLargeGrid = HatchStyleCross   ' 4
-
-'	HatchStyleMin       = HatchStyleHorizontal
-'	HatchStyleMax       = HatchStyleTotal - 1
-End Enum
-
 Const Enum CustomLineCapType
 	CustomLineCapTypeDefault         = 0
 	CustomLineCapTypeAdjustableArrow = 1
-End Enum
-
-Const Enum PathPointType
-	PathPointTypeStart           = 0
-	PathPointTypeLine            = 1
-	PathPointTypeBezier          = 3
-	PathPointTypePathTypeMask    = &h07
-	PathPointTypeDashMode        = &h10
-	PathPointTypePathMarker      = &h20
-	PathPointTypeCloseSubpath    = &h80
-	PathPointTypeBezier3    = 3
-End Enum
-
-Const Enum WarpMode
-	WarpModePerspective     ' 0
-	WarpModeBilinear        ' 1
-End Enum
-
-Const Enum LinearGradientMode
-	LinearGradientModeHorizontal          ' 0
-	LinearGradientModeVertical            ' 1
-	LinearGradientModeForwardDiagonal     ' 2
-	LinearGradientModeBackwardDiagonal    ' 3
 End Enum
 
@@ -115,25 +22,4 @@
 	BrushTypePathGradient     = 3
 	BrushTypeLinearGradient   = 4
-End Enum
-
-Const Enum GenericFontFamily
-	GenericFontFamilySerif
-	GenericFontFamilySansSerif
-	GenericFontFamilyMonospace
-End Enum
-
-Const Enum MetafileType
-	MetafileTypeInvalid
-	MetafileTypeWmf
-	MetafileTypeWmfPlaceable
-	MetafileTypeEmf
-	MetafileTypeEmfPlusOnly
-	MetafileTypeEmfPlusDual
-End Enum
-
-Const Enum EmfType
-	EmfTypeEmfOnly     = MetafileTypeEmf
-	EmfTypeEmfPlusOnly = MetafileTypeEmfPlusOnly
-	EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual
 End Enum
 
@@ -169,321 +55,4 @@
 End Function
 
-Const Enum EmfPlusRecordType
-/*
-	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(&h062F)   ' META_DRAWTEXT
-	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(&h0149)   ' META_SETLAYOUT
-	WmfRecordTypeResetDC                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h014C)   ' META_RESETDC
-	WmfRecordTypeStartDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h014D)   ' META_STARTDOC
-	WmfRecordTypeStartPage               = GDIP_WMF_RECORD_TO_EMFPLUS(&h004F)   ' META_STARTPAGE
-	WmfRecordTypeEndPage                 = GDIP_WMF_RECORD_TO_EMFPLUS(&h0050)   ' META_ENDPAGE
-	WmfRecordTypeAbortDoc                = GDIP_WMF_RECORD_TO_EMFPLUS(&h0052)   ' META_ABORTDOC
-	WmfRecordTypeEndDoc                  = GDIP_WMF_RECORD_TO_EMFPLUS(&h005E)   ' META_ENDDOC
-	WmfRecordTypeDeleteObject            = GDIP_WMF_RECORD_TO_EMFPLUS(META_DELETEOBJECT)
-	WmfRecordTypeCreatePalette           = GDIP_WMF_RECORD_TO_EMFPLUS(META_CREATEPALETTE)
-	WmfRecordTypeCreateBrush             = GDIP_WMF_RECORD_TO_EMFPLUS(&h00F8)   ' META_CREATEBRUSH
-	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(&h02FD)   ' META_CREATEBITMAPINDIRECT
-	WmfRecordTypeCreateBitmap            = GDIP_WMF_RECORD_TO_EMFPLUS(&h06FE)   ' META_CREATEBITMAP
-	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   ' Not Used
-	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   ' EMR_SETICMMODE
-	EmfRecordTypeCreateColorSpace        = 99   ' EMR_CREATECOLORSPACE
-	EmfRecordTypeSetColorSpace           = 100  ' EMR_SETCOLORSPACE
-	EmfRecordTypeDeleteColorSpace        = 101  ' EMR_DELETECOLORSPACE
-	EmfRecordTypeGLSRecord               = 102  ' EMR_GLSRECORD
-	EmfRecordTypeGLSBoundedRecord        = 103  ' EMR_GLSBOUNDEDRECORD
-	EmfRecordTypePixelFormat             = 104  ' EMR_PIXELFORMAT
-	EmfRecordTypeDrawEscape              = 105  ' EMR_RESERVED_105
-	EmfRecordTypeExtEscape               = 106  ' EMR_RESERVED_106
-	EmfRecordTypeStartDoc                = 107  ' EMR_RESERVED_107
-	EmfRecordTypeSmallTextOut            = 108  ' EMR_RESERVED_108
-	EmfRecordTypeForceUFIMapping         = 109  ' EMR_RESERVED_109
-	EmfRecordTypeNamedEscape             = 110  ' EMR_RESERVED_110
-	EmfRecordTypeColorCorrectPalette     = 111  ' EMR_COLORCORRECTPALETTE
-	EmfRecordTypeSetICMProfileA          = 112  ' EMR_SETICMPROFILEA
-	EmfRecordTypeSetICMProfileW          = 113  ' EMR_SETICMPROFILEW
-	EmfRecordTypeAlphaBlend              = 114  ' EMR_ALPHABLEND
-	EmfRecordTypeSetLayout               = 115  ' EMR_SETLAYOUT
-	EmfRecordTypeTransparentBlt          = 116  ' EMR_TRANSPARENTBLT
-	EmfRecordTypeReserved_117            = 117  ' Not Used
-	EmfRecordTypeGradientFill            = 118  ' EMR_GRADIENTFILL
-	EmfRecordTypeSetLinkedUFIs           = 119  ' EMR_RESERVED_119
-	EmfRecordTypeSetTextJustification    = 120  ' EMR_RESERVED_120
-	EmfRecordTypeColorMatchToTargetW     = 121  ' EMR_COLORMATCHTOTARGETW
-	EmfRecordTypeCreateColorSpaceW       = 122  ' EMR_CREATECOLORSPACEW
-	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
-	EmfPlusRecordTypeSetInterpolationMode
-	EmfPlusRecordTypeSetPixelOffsetMode
-	EmfPlusRecordTypeSetCompositingMode
-	EmfPlusRecordTypeSetCompositingQuality
-	EmfPlusRecordTypeSave
-	EmfPlusRecordTypeRestore
-	EmfPlusRecordTypeBeginContainer
-	EmfPlusRecordTypeBeginContainerNoParams
-	EmfPlusRecordTypeEndContainer
-	EmfPlusRecordTypeSetWorldTransform
-	EmfPlusRecordTypeResetWorldTransform
-	EmfPlusRecordTypeMultiplyWorldTransform
-	EmfPlusRecordTypeTranslateWorldTransform
-	EmfPlusRecordTypeScaleWorldTransform
-	EmfPlusRecordTypeRotateWorldTransform
-	EmfPlusRecordTypeSetPageTransform
-	EmfPlusRecordTypeResetClip
-	EmfPlusRecordTypeSetClipRect
-	EmfPlusRecordTypeSetClipPath
-	EmfPlusRecordTypeSetClipRegion
-	EmfPlusRecordTypeOffsetClip
-
-	EmfPlusRecordTypeDrawDriverString
-
-	EmfPlusRecordTotal
-
-	EmfPlusRecordTypeMax = EmfPlusRecordTotal-1
-	EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader */
-End Enum
-
-Const Enum StringFormatFlags
-	StringFormatFlagsDirectionRightToLeft        = &h00000001
-	StringFormatFlagsDirectionVertical           = &h00000002
-	StringFormatFlagsNoFitBlackBox               = &h00000004
-	StringFormatFlagsDisplayFormatControl        = &h00000020
-	StringFormatFlagsNoFontFallback              = &h00000400
-	StringFormatFlagsMeasureTrailingSpaces       = &h00000800
-	StringFormatFlagsNoWrap                      = &h00001000
-	StringFormatFlagsLineLimit                   = &h00002000
-
-	StringFormatFlagsNoClip                      = &h00004000
-End Enum
-
-Const Enum StringTrimming
-	StringTrimmingNone              = 0
-	StringTrimmingCharacter         = 1
-	StringTrimmingWord              = 2
-	StringTrimmingEllipsisCharacter = 3
-	StringTrimmingEllipsisWord      = 4
-	StringTrimmingEllipsisPath      = 5
-End Enum
-
-Const Enum StringDigitSubstitute
-	StringDigitSubstituteUser        = 0   ' As NLS setting
-	StringDigitSubstituteNone        = 1
-	StringDigitSubstituteNational    = 2
-	StringDigitSubstituteTraditional = 3
-End Enum
-
-Const Enum HotkeyPrefix
-	HotkeyPrefixNone        = 0
-	HotkeyPrefixShow        = 1
-	HotkeyPrefixHide        = 2
-End Enum
-
-Const Enum StringAlignment
-	StringAlignmentNear   = 0
-	StringAlignmentCenter = 1
-	StringAlignmentFar    = 2
-End Enum
-
 Const Enum DriverStringOptions
 	DriverStringOptionsCmapLookup             = 1
@@ -491,42 +60,4 @@
 	DriverStringOptionsRealizedAdvance        = 4
 	DriverStringOptionsLimitSubpixel          = 8
-End Enum
-
-Const Enum EncoderParameterValueType
-	EncoderParameterValueTypeByte           = 1
-	EncoderParameterValueTypeASCII          = 2
-	EncoderParameterValueTypeShort          = 3
-	EncoderParameterValueTypeLong           = 4
-	EncoderParameterValueTypeRational       = 5
-	EncoderParameterValueTypeLongRange      = 6
-	EncoderParameterValueTypeUndefined      = 7
-	EncoderParameterValueTypeRationalRange  = 8
-End Enum
-
-Const Enum EncoderValue
-	EncoderValueColorTypeCMYK
-	EncoderValueColorTypeYCCK
-	EncoderValueCompressionLZW
-	EncoderValueCompressionCCITT3
-	EncoderValueCompressionCCITT4
-	EncoderValueCompressionRle
-	EncoderValueCompressionNone
-	EncoderValueScanMethodInterlaced
-	EncoderValueScanMethodNonInterlaced
-	EncoderValueVersionGif87
-	EncoderValueVersionGif89
-	EncoderValueRenderProgressive
-	EncoderValueRenderNonProgressive
-	EncoderValueTransformRotate90
-	EncoderValueTransformRotate180
-	EncoderValueTransformRotate270
-	EncoderValueTransformFlipHorizontal
-	EncoderValueTransformFlipVertical
-	EncoderValueMultiFrame
-	EncoderValueLastFrame
-	EncoderValueFlush
-	EncoderValueFrameDimensionTime
-	EncoderValueFrameDimensionResolution
-	EncoderValueFrameDimensionPage
 End Enum
 
Index: /trunk/ab5.0/ablib/src/GdiPlusFlat.ab
===================================================================
--- /trunk/ab5.0/ablib/src/GdiPlusFlat.ab	(revision 699)
+++ /trunk/ab5.0/ablib/src/GdiPlusFlat.ab	(revision 700)
@@ -67,5 +67,5 @@
 Declare Function GdipWindingModeOutline Lib "gdiplus.dll" (ByVal path As *GpPath, ByVal matrix As *GpMatrix, ByVal flatness As Single) As GpStatus
 Declare Function GdipWidenPath Lib "gdiplus.dll" (ByVal nativePath As *GpPath, ByVal pen As *GpPen, ByVal matrix As *GpMatrix, ByVal flatness As Single) As GpStatus
-Declare Function GdipWarpPath Lib "gdiplus.dll" (ByVal path As *GpPath, ByVal matrix As *GpMatrix, ByVal points As *GpPointF, ByVal count As Long, ByVal srcx As Single, ByVal srcy As Single, ByVal srcwidth As Single, ByVal srcheight As Single, ByVal warpMode As WarpMode, ByVal flatness As Single) As GpStatus
+Declare Function GdipWarpPath Lib "gdiplus.dll" (ByVal path As *GpPath, ByVal matrix As *GpMatrix, ByVal points As *GpPointF, ByVal count As Long, ByVal srcx As Single, ByVal srcy As Single, ByVal srcwidth As Single, ByVal srcheight As Single, ByVal warpMode As Long /*WarpMode*/, ByVal flatness As Single) As GpStatus
 Declare Function GdipTransformPath Lib "gdiplus.dll" (ByVal path As *GpPath, ByVal matrix As *GpMatrix) As GpStatus
 Declare Function GdipGetPathWorldBounds Lib "gdiplus.dll" (ByVal path As *GpPath, ByVal bounds As *GpRectF, ByVal matrix As *GpMatrix, ByVal pen As *GpPen) As GpStatus
@@ -185,6 +185,6 @@
 Declare Function GdipCreateLineBrush Lib "gdiplus.dll" (ByRef point1 As GpPointF, ByRef point2 As GpPointF, ByVal color1 As ARGB, ByVal color2 As ARGB, ByVal wrapMode As GpWrapMode, ByRef lineGradient As *GpLineGradient) As GpStatus
 Declare Function GdipCreateLineBrushI Lib "gdiplus.dll" (ByRef point1 As GpPoint, ByRef point2 As GpPoint, ByVal color1 As ARGB, ByVal color2 As ARGB, ByVal wrapMode As GpWrapMode, ByRef lineGradient As *GpLineGradient) As GpStatus
-Declare Function GdipCreateLineBrushFromRect Lib "gdiplus.dll" (ByRef rect As GpRectF, ByVal color1 As ARGB, ByVal color2 As ARGB, ByVal mode As LinearGradientMode, ByVal wrapMode As GpWrapMode, ByRef lineGradient As *GpLineGradient) As GpStatus
-Declare Function GdipCreateLineBrushFromRectI Lib "gdiplus.dll" (ByRef rect As GpRect, ByVal color1 As ARGB, ByVal color2 As ARGB, ByVal mode As LinearGradientMode, ByVal wrapMode As GpWrapMode, ByRef lineGradient As *GpLineGradient) As GpStatus
+Declare Function GdipCreateLineBrushFromRect Lib "gdiplus.dll" (ByRef rect As GpRectF, ByVal color1 As ARGB, ByVal color2 As ARGB, ByVal mode As Long /*LinearGradientMode*/, ByVal wrapMode As GpWrapMode, ByRef lineGradient As *GpLineGradient) As GpStatus
+Declare Function GdipCreateLineBrushFromRectI Lib "gdiplus.dll" (ByRef rect As GpRect, ByVal color1 As ARGB, ByVal color2 As ARGB, ByVal mode As Long /*LinearGradientMode*/, ByVal wrapMode As GpWrapMode, ByRef lineGradient As *GpLineGradient) As GpStatus
 Declare Function GdipCreateLineBrushFromRectWithAngle Lib "gdiplus.dll" (ByRef rect As GpRectF, ByVal color1 As ARGB, ByVal color2 As ARGB, ByVal angle As Single, ByVal isAngleScalable As BOOL, ByVal wrapMode As GpWrapMode, ByRef lineGradient As *GpLineGradient) As GpStatus
 Declare Function GdipCreateLineBrushFromRectWithAngleI Lib "gdiplus.dll" (ByRef rect As GpRect, ByVal color1 As ARGB, ByVal color2 As ARGB, ByVal angle As Single, ByVal isAngleScalable As BOOL, ByRef lineGradient As *GpLineGradient) As GpStatus
@@ -408,5 +408,5 @@
 Declare Function GdipSetImageAttributesOutputChannelColorProfile Lib "gdiplus.dll" (ByVal imageattr As *GpImageAttributes, ByVal colorAdjustType As Long /*ColorAdjustType*/, ByVal enableFlag As BOOL, ByVal colorProfileFilename As PCWSTR) As GpStatus
 Declare Function GdipSetImageAttributesRemapTable Lib "gdiplus.dll" (ByVal imageattr As *GpImageAttributes, ByVal colorAdjustType As Long /*ColorAdjustType*/, ByVal enableFlag As BOOL, ByVal mapSize As DWord, ByRef map As System.Drawing.Imaging.ColorMap) As GpStatus
-Declare Function GdipSetImageAttributesWrapMode Lib "gdiplus.dll" (ByVal imageAttr As *GpImageAttributes, ByVal wrap As WrapMode, ByVal argb As ARGB, ByVal clamp As BOOL) As GpStatus
+Declare Function GdipSetImageAttributesWrapMode Lib "gdiplus.dll" (ByVal imageAttr As *GpImageAttributes, ByVal wrap As Long /*WarpMode*/, ByVal argb As ARGB, ByVal clamp As BOOL) As GpStatus
 Declare Function GdipSetImageAttributesICMMode Lib "gdiplus.dll" (ByVal imageAttr As *GpImageAttributes, ByRef on As BOOL) As GpStatus
 Declare Function GdipGetImageAttributesAdjustedPalette Lib "gdiplus.dll" (ByVal imageAttr As *GpImageAttributes, ByRef colorPalette As System.Drawing.Imaging.ColorPalette, ByVal colorAdjustType As Long /*ColorAdjustType*/) As GpStatus
@@ -529,5 +529,5 @@
 Declare Function GdipEnumerateMetafileSrcRectDestPoints Lib "gdiplus.dll" (ByVal graphics As *GpGraphics, ByVal metafile As *GpMetafile, ByVal destPoints As *GpPointF, ByVal count As Long, ByRef srcRect As GpRectF, ByVal srcUnit As Long /*GraphicsUnit*/, ByVal callback As System.Drawing.Detail.NativeEnumerateMetafileProc, ByVal callbackData As VoidPtr, ByVal callbackData As VoidPtr) As GpStatus
 Declare Function GdipEnumerateMetafileSrcRectDestPointsI Lib "gdiplus.dll" (ByVal graphics As *GpGraphics, ByVal metafile As *GpMetafile, ByVal destPoints As *GpPoint, ByVal count As Long, ByRef srcRect As GpRect, ByVal srcUnit As Long /*GraphicsUnit*/, ByVal callback As System.Drawing.Detail.NativeEnumerateMetafileProc, ByVal callbackData As VoidPtr, ByVal callbackData As VoidPtr) As GpStatus
-Declare Function GdipPlayMetafileRecord Lib "gdiplus.dll" (ByVal metafile As *GpMetafile, ByVal recordType As EmfPlusRecordType, ByVal flags As DWord, dataSize As DWord, ByVal data As *Byte) As GpStatus
+Declare Function GdipPlayMetafileRecord Lib "gdiplus.dll" (ByVal metafile As *GpMetafile, ByVal recordType As Long /*EmfPlusRecordType*/, ByVal flags As DWord, dataSize As DWord, ByVal data As *Byte) As GpStatus
 Declare Function GdipSetClipGraphics Lib "gdiplus.dll" (ByVal graphics As *GpGraphics, ByVal srcgraphics As *GpGraphics, ByVal combineMode As Long /*CombineMode*/) As GpStatus
 Declare Function GdipSetClipRect Lib "gdiplus.dll" (ByVal graphics As *GpGraphics, ByVal x As Single, ByVal y As Single, ByVal width As Single, ByVal height As Single, ByVal combineMode As Long /*CombineMode*/) As GpStatus
@@ -568,10 +568,10 @@
 Declare Function GdipCreateMetafileFromWmfFile Lib "gdiplus.dll" (ByVal filename As PCWSTR, ByRef wmfPlaceableFileHeader As System.Drawing.Imaging.WmfPlaceableFileHeader, ByRef metafile As *GpMetafile) As GpStatus
 Declare Function GdipCreateMetafileFromStream Lib "gdiplus.dll" (ByVal stream As *IStream, ByRef metafile As *GpMetafile) As GpStatus
-Declare Function GdipRecordMetafile Lib "gdiplus.dll" (ByVal referenceHdc As HDC, ByVal emfType As EmfType, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
-Declare Function GdipRecordMetafileI Lib "gdiplus.dll" (ByVal referenceHdc As HDC, ByVal emfType As EmfType, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
-Declare Function GdipRecordMetafileFileName Lib "gdiplus.dll" (ByVal filename As PCWSTR, ByVal referenceHdc As HDC, ByVal emfType As EmfType, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
-Declare Function GdipRecordMetafileFileNameI Lib "gdiplus.dll" (ByVal filename As PCWSTR, ByVal referenceHdc As HDC, ByVal emfType As EmfType,ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
-Declare Function GdipRecordMetafileStream Lib "gdiplus.dll" (ByVal stream As *IStream, ByVal referenceHdc As HDC, ByVal emfType As EmfType, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
-Declare Function GdipRecordMetafileStreamI Lib "gdiplus.dll" (ByVal stream As *IStream, ByVal referenceHdc As HDC, ByVal emfType As EmfType, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
+Declare Function GdipRecordMetafile Lib "gdiplus.dll" (ByVal referenceHdc As HDC, ByVal emfType As Long /*EmfType*/, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
+Declare Function GdipRecordMetafileI Lib "gdiplus.dll" (ByVal referenceHdc As HDC, ByVal emfType As Long /*EmfType*/, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
+Declare Function GdipRecordMetafileFileName Lib "gdiplus.dll" (ByVal filename As PCWSTR, ByVal referenceHdc As HDC, ByVal emfType As Long /*EmfType*/, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
+Declare Function GdipRecordMetafileFileNameI Lib "gdiplus.dll" (ByVal filename As PCWSTR, ByVal referenceHdc As HDC, ByVal emfType As Long /*EmfType*/, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
+Declare Function GdipRecordMetafileStream Lib "gdiplus.dll" (ByVal stream As *IStream, ByVal referenceHdc As HDC, ByVal emfType As Long /*EmfType*/, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
+Declare Function GdipRecordMetafileStreamI Lib "gdiplus.dll" (ByVal stream As *IStream, ByVal referenceHdc As HDC, ByVal emfType As Long /*EmfType*/, ByRef frameRect As GpRectF, ByVal frameUnit As Long /*MetafileFrameUnit*/, ByVal description As PCWSTR, ByRef metafile As *GpMetafile) As GpStatus
 Declare Function GdipSetMetafileDownLevelRasterizationLimit Lib "gdiplus.dll" (ByVal metafile As *GpMetafile, ByVal metafileRasterizationLimitDpi As DWord) As GpStatus
 Declare Function GdipGetMetafileDownLevelRasterizationLimit Lib "gdiplus.dll" (ByVal metafile As *GpMetafile, ByRef metafileRasterizationLimitDpi As DWord) As GpStatus
@@ -636,10 +636,10 @@
 Declare Function GdipSetStringFormatFlags Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal flags As Long) As GpStatus
 Declare Function GdipGetStringFormatFlags Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef flags As Long) As GpStatus
-Declare Function GdipSetStringFormatAlign Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal align As StringAlignment) As GpStatus
-Declare Function GdipGetStringFormatAlign Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef align As StringAlignment) As GpStatus
-Declare Function GdipSetStringFormatLineAlign Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal align As StringAlignment) As GpStatus
-Declare Function GdipGetStringFormatLineAlign Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef align As StringAlignment) As GpStatus
-Declare Function GdipSetStringFormatTrimming Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal trimming As StringTrimming) As GpStatus
-Declare Function GdipGetStringFormatTrimming Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef trimming As StringTrimming) As GpStatus
+Declare Function GdipSetStringFormatAlign Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal align As Long /*StringAlignment*/) As GpStatus
+Declare Function GdipGetStringFormatAlign Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef align As Long /*StringAlignment*/) As GpStatus
+Declare Function GdipSetStringFormatLineAlign Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal align As Long /*StringAlignment*/) As GpStatus
+Declare Function GdipGetStringFormatLineAlign Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef align As Long /*StringAlignment*/) As GpStatus
+Declare Function GdipSetStringFormatTrimming Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal trimming As Long /*StringTrimming*/) As GpStatus
+Declare Function GdipGetStringFormatTrimming Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef trimming As Long /*StringTrimming*/) As GpStatus
 Declare Function GdipSetStringFormatHotkeyPrefix Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal hotkeyPrefix As Long) As GpStatus
 Declare Function GdipGetStringFormatHotkeyPrefix Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef hotkeyPrefix As Long) As GpStatus
@@ -647,6 +647,6 @@
 Declare Function GdipGetStringFormatTabStops Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal count As Long, ByRef firstTabOffset As Single, ByVal tabStops As *Single) As GpStatus
 Declare Function GdipGetStringFormatTabStopCount Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef count As Long) As GpStatus
-Declare Function GdipSetStringFormatDigitSubstitution Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal language As LANGID, ByVal substitute As StringDigitSubstitute) As GpStatus
-Declare Function GdipGetStringFormatDigitSubstitution Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef language As LANGID, ByRef substitute As StringDigitSubstitute) As GpStatus
+Declare Function GdipSetStringFormatDigitSubstitution Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal language As LANGID, ByVal substitute As Long /*StringDigitSubstitute*/) As GpStatus
+Declare Function GdipGetStringFormatDigitSubstitution Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef language As LANGID, ByRef substitute As Long /*StringDigitSubstitute*/) As GpStatus
 Declare Function GdipGetStringFormatMeasurableCharacterRangeCount Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByRef count As Long) As GpStatus
 Declare Function GdipSetStringFormatMeasurableCharacterRanges Lib "gdiplus.dll" (ByVal format As *GpStringFormat, ByVal rangeCount As Long, ByVal ranges As *System.Drawing.CharacterRange) As GpStatus
Index: /trunk/ab5.0/ablib/src/GdiPlusGpStubs.ab
===================================================================
--- /trunk/ab5.0/ablib/src/GdiPlusGpStubs.ab	(revision 699)
+++ /trunk/ab5.0/ablib/src/GdiPlusGpStubs.ab	(revision 700)
@@ -72,5 +72,5 @@
 TypeDef GpStatus = Status
 TypeDef GpFillMode = Long 'System.Drawing.Drawing2D.FillMode
-TypeDef GpWrapMode = WrapMode
+TypeDef GpWrapMode = Long 'System.Drawing.Drawing2D.WrapMode
 TypeDef GpUnit = Long 'System.Drawing.GraphicsUnit
 TypeDef GpCoordinateSpace = Long 'System.Drawing.Drawing2D.CoordinateSpace
Index: /trunk/ab5.0/ablib/src/api_gdi.sbp
===================================================================
--- /trunk/ab5.0/ablib/src/api_gdi.sbp	(revision 699)
+++ /trunk/ab5.0/ablib/src/api_gdi.sbp	(revision 700)
@@ -84,4 +84,6 @@
 TypeDef PENHMETAHEADER = *ENHMETAHEADER
 
+
+
 Type HANDLETABLE
 	objectHandle[ELM(1)] As HGDIOBJ
@@ -110,4 +112,204 @@
 TypeDef MFENUMPROC = *Function(hdc As HDC, ByRef HTable As HANDLETABLE, ByRef MFR As METARECORD, nObj As Long, lpClientData As LPARAM) As Long
 
+Const META_SETBKCOLOR = &h0201
+Const META_SETBKMODE = &h0102
+Const META_SETMAPMODE = &h0103
+Const META_SETROP2 = &h0104
+Const META_SETRELABS = &h0105
+Const META_SETPOLYFILLMODE = &h0106
+Const META_SETSTRETCHBLTMODE = &h0107
+Const META_SETTEXTCHAREXTRA = &h0108
+Const META_SETTEXTCOLOR = &h0209
+Const META_SETTEXTJUSTIFICATION = &h020A
+Const META_SETWINDOWORG = &h020B
+Const META_SETWINDOWEXT = &h020C
+Const META_SETVIEWPORTORG = &h020D
+Const META_SETVIEWPORTEXT = &h020E
+Const META_OFFSETWINDOWORG = &h020F
+Const META_SCALEWINDOWEXT = &h0410
+Const META_OFFSETVIEWPORTORG = &h0211
+Const META_SCALEVIEWPORTEXT = &h0412
+Const META_LINETO = &h0213
+Const META_MOVETO = &h0214
+Const META_EXCLUDECLIPRECT = &h0415
+Const META_INTERSECTCLIPRECT = &h0416
+Const META_ARC = &h0817
+Const META_ELLIPSE = &h0418
+Const META_FLOODFILL = &h0419
+Const META_PIE = &h081A
+Const META_RECTANGLE = &h041B
+Const META_ROUNDRECT = &h061C
+Const META_PATBLT = &h061D
+Const META_SAVEDC = &h001E
+Const META_SETPIXEL = &h041F
+Const META_OFFSETCLIPRGN = &h0220
+Const META_TEXTOUT = &h0521
+Const META_BITBLT = &h0922
+Const META_STRETCHBLT = &h0B23
+Const META_POLYGON = &h0324
+Const META_POLYLINE = &h0325
+Const META_ESCAPE = &h0626
+Const META_RESTOREDC = &h0127
+Const META_FILLREGION = &h0228
+Const META_FRAMEREGION = &h0429
+Const META_INVERTREGION = &h012A
+Const META_PAINTREGION = &h012B
+Const META_SELECTCLIPREGION = &h012C
+Const META_SELECTOBJECT = &h012D
+Const META_SETTEXTALIGN = &h012E
+Const META_CHORD = &h0830
+Const META_SETMAPPERFLAGS = &h0231
+Const META_EXTTEXTOUT = &h0a32
+Const META_SETDIBTODEV = &h0d33
+Const META_SELECTPALETTE = &h0234
+Const META_REALIZEPALETTE = &h0035
+Const META_ANIMATEPALETTE = &h0436
+Const META_SETPALENTRIES = &h0037
+Const META_POLYPOLYGON = &h0538
+Const META_RESIZEPALETTE = &h0139
+Const META_DIBBITBLT = &h0940
+Const META_DIBSTRETCHBLT = &h0b41
+Const META_DIBCREATEPATTERNBRUSH = &h0142
+Const META_STRETCHDIB = &h0f43
+Const META_EXTFLOODFILL = &h0548
+'#if WINVER >= &h0500
+Const META_SETLAYOUT = &h0149
+'#endif
+Const META_DELETEOBJECT = &h01f0
+Const META_CREATEPALETTE = &h00f7
+Const META_CREATEPATTERNBRUSH = &h01F9
+Const META_CREATEPENINDIRECT = &h02FA
+Const META_CREATEFONTINDIRECT = &h02FB
+Const META_CREATEBRUSHINDIRECT = &h02FC
+Const META_CREATEREGION = &h06FF
+
+Const EMR_HEADER = 1
+Const EMR_POLYBEZIER = 2
+Const EMR_POLYGON = 3
+Const EMR_POLYLINE = 4
+Const EMR_POLYBEZIERTO = 5
+Const EMR_POLYLINETO = 6
+Const EMR_POLYPOLYLINE = 7
+Const EMR_POLYPOLYGON = 8
+Const EMR_SETWINDOWEXTEX = 9
+Const EMR_SETWINDOWORGEX = 10
+Const EMR_SETVIEWPORTEXTEX = 11
+Const EMR_SETVIEWPORTORGEX = 12
+Const EMR_SETBRUSHORGEX = 13
+Const EMR_EOF = 14
+Const EMR_SETPIXELV = 15
+Const EMR_SETMAPPERFLAGS = 16
+Const EMR_SETMAPMODE = 17
+Const EMR_SETBKMODE = 18
+Const EMR_SETPOLYFILLMODE = 19
+Const EMR_SETROP2 = 20
+Const EMR_SETSTRETCHBLTMODE = 21
+Const EMR_SETTEXTALIGN = 22
+Const EMR_SETCOLORADJUSTMENT = 23
+Const EMR_SETTEXTCOLOR = 24
+Const EMR_SETBKCOLOR = 25
+Const EMR_OFFSETCLIPRGN = 26
+Const EMR_MOVETOEX = 27
+Const EMR_SETMETARGN = 28
+Const EMR_EXCLUDECLIPRECT = 29
+Const EMR_INTERSECTCLIPRECT = 30
+Const EMR_SCALEVIEWPORTEXTEX = 31
+Const EMR_SCALEWINDOWEXTEX = 32
+Const EMR_SAVEDC = 33
+Const EMR_RESTOREDC = 34
+Const EMR_SETWORLDTRANSFORM = 35
+Const EMR_MODIFYWORLDTRANSFORM = 36
+Const EMR_SELECTOBJECT = 37
+Const EMR_CREATEPEN = 38
+Const EMR_CREATEBRUSHINDIRECT = 39
+Const EMR_DELETEOBJECT = 40
+Const EMR_ANGLEARC = 41
+Const EMR_ELLIPSE = 42
+Const EMR_RECTANGLE = 43
+Const EMR_ROUNDRECT = 44
+Const EMR_ARC = 45
+Const EMR_CHORD = 46
+Const EMR_PIE = 47
+Const EMR_SELECTPALETTE = 48
+Const EMR_CREATEPALETTE = 49
+Const EMR_SETPALETTEENTRIES = 50
+Const EMR_RESIZEPALETTE = 51
+Const EMR_REALIZEPALETTE = 52
+Const EMR_EXTFLOODFILL = 53
+Const EMR_LINETO = 54
+Const EMR_ARCTO = 55
+Const EMR_POLYDRAW = 56
+Const EMR_SETARCDIRECTION = 57
+Const EMR_SETMITERLIMIT = 58
+Const EMR_BEGINPATH = 59
+Const EMR_ENDPATH = 60
+Const EMR_CLOSEFIGURE = 61
+Const EMR_FILLPATH = 62
+Const EMR_STROKEANDFILLPATH = 63
+Const EMR_STROKEPATH = 64
+Const EMR_FLATTENPATH = 65
+Const EMR_WIDENPATH = 66
+Const EMR_SELECTCLIPPATH = 67
+Const EMR_ABORTPATH = 68
+
+Const EMR_GDICOMMENT = 70
+Const EMR_FILLRGN = 71
+Const EMR_FRAMERGN = 72
+Const EMR_INVERTRGN = 73
+Const EMR_PAINTRGN = 74
+Const EMR_EXTSELECTCLIPRGN = 75
+Const EMR_BITBLT = 76
+Const EMR_STRETCHBLT = 77
+Const EMR_MASKBLT = 78
+Const EMR_PLGBLT = 79
+Const EMR_SETDIBITSTODEVICE = 80
+Const EMR_STRETCHDIBITS = 81
+Const EMR_EXTCREATEFONTINDIRECTW = 82
+Const EMR_EXTTEXTOUTA = 83
+Const EMR_EXTTEXTOUTW = 84
+Const EMR_POLYBEZIER16 = 85
+Const EMR_POLYGON16 = 86
+Const EMR_POLYLINE16 = 87
+Const EMR_POLYBEZIERTO16 = 88
+Const EMR_POLYLINETO16 = 89
+Const EMR_POLYPOLYLINE16 = 90
+Const EMR_POLYPOLYGON16 = 91
+Const EMR_POLYDRAW16 = 92
+Const EMR_CREATEMONOBRUSH = 93
+Const EMR_CREATEDIBPATTERNBRUSHPT = 94
+Const EMR_EXTCREATEPEN = 95
+Const EMR_POLYTEXTOUTA = 96
+Const EMR_POLYTEXTOUTW = 97
+'#if WINVER >= &h0400
+Const EMR_SETICMMODE = 98
+Const EMR_CREATECOLORSPACE = 99
+Const EMR_SETCOLORSPACE = 100
+Const EMR_DELETECOLORSPACE = 101
+Const EMR_GLSRECORD = 102
+Const EMR_GLSBOUNDEDRECORD = 103
+Const EMR_PIXELFORMAT = 104
+'#endif
+'#if WINVER >= &h0500
+Const EMR_RESERVED_105 = 105
+Const EMR_RESERVED_106 = 106
+Const EMR_RESERVED_107 = 107
+Const EMR_RESERVED_108 = 108
+Const EMR_RESERVED_109 = 109
+Const EMR_RESERVED_110 = 110
+Const EMR_COLORCORRECTPALETTE = 111
+Const EMR_SETICMPROFILEA = 112
+Const EMR_SETICMPROFILEW = 113
+Const EMR_ALPHABLEND = 114
+Const EMR_SETLAYOUT = 115
+Const EMR_TRANSPARENTBLT = 116
+'#if _WIN32_WINNT >= _WIN32_WINNT_WIN2K
+Const EMR_RESERVED_117 = 117
+'#endif
+Const EMR_GRADIENTFILL = 118
+Const EMR_RESERVED_119 = 119
+Const EMR_RESERVED_120 = 120
+Const EMR_COLORMATCHTOTARGETW = 121
+Const EMR_CREATECOLORSPACEW = 122
+'#endif
 
 ' RGB Color
