diff options
Diffstat (limited to 'core/src/fxge/Microsoft SDK/include/GdiPlusHeaders.h')
-rw-r--r-- | core/src/fxge/Microsoft SDK/include/GdiPlusHeaders.h | 793 |
1 files changed, 0 insertions, 793 deletions
diff --git a/core/src/fxge/Microsoft SDK/include/GdiPlusHeaders.h b/core/src/fxge/Microsoft SDK/include/GdiPlusHeaders.h deleted file mode 100644 index 9efcd89da2..0000000000 --- a/core/src/fxge/Microsoft SDK/include/GdiPlusHeaders.h +++ /dev/null @@ -1,793 +0,0 @@ -/**************************************************************************\ -* -* Copyright (c) 1998-2000, Microsoft Corp. All Rights Reserved. -* -* Module Name: -* -* GdiplusHeaders.h -* -* Abstract: -* -* GDI+ Native C++ public header file -* -\**************************************************************************/ - -#ifndef _GDIPLUSHEADERS_H -#define _GDIPLUSHEADERS_H - -//-------------------------------------------------------------------------- -// Abstract base class for regions -//-------------------------------------------------------------------------- - -// Include the class declarations here and have inline class implementation -// in separate file to avoid circular references. - -class Region : public GdiplusBase -{ -public: - friend class Graphics; - - Region(); - Region(IN const RectF& rect); - Region(IN const Rect& rect); - Region(IN const GraphicsPath* path); - Region(IN const BYTE* regionData, IN INT size); - Region(IN HRGN hRgn); - static Region* FromHRGN(IN HRGN hRgn); - - ~Region(); - Region* Clone() const; - - Status MakeInfinite(); - Status MakeEmpty(); - - // Get the size of the buffer needed for the GetData method - UINT GetDataSize() const; - - // buffer - where to put the data - // bufferSize - how big the buffer is (should be at least as big as GetDataSize()) - // sizeFilled - if not NULL, this is an OUT param that says how many bytes - // of data were written to the buffer. - Status GetData(OUT BYTE* buffer, - IN UINT bufferSize, - OUT UINT* sizeFilled = NULL) const; - - Status Intersect(IN const Rect& rect); - Status Intersect(IN const RectF& rect); - Status Intersect(IN const GraphicsPath* path); - Status Intersect(IN const Region* region); - Status Union(IN const Rect& rect); - Status Union(IN const RectF& rect); - Status Union(IN const GraphicsPath* path); - Status Union(IN const Region* region); - Status Xor(IN const Rect& rect); - Status Xor(IN const RectF& rect); - Status Xor(IN const GraphicsPath* path); - Status Xor(IN const Region* region); - Status Exclude(IN const Rect& rect); - Status Exclude(IN const RectF& rect); - Status Exclude(IN const GraphicsPath* path); - Status Exclude(IN const Region* region); - Status Complement(IN const Rect& rect); - Status Complement(IN const RectF& rect); - Status Complement(IN const GraphicsPath* path); - Status Complement(IN const Region* region); - Status Translate(IN REAL dx, - IN REAL dy); - Status Translate(IN INT dx, - IN INT dy); - Status Transform(IN const Matrix* matrix); - - Status GetBounds(OUT Rect* rect, - IN const Graphics* g) const; - - Status GetBounds(OUT RectF* rect, - IN const Graphics* g) const; - - HRGN GetHRGN (IN const Graphics * g) const; - - BOOL IsEmpty(IN const Graphics *g) const; - BOOL IsInfinite(IN const Graphics *g) const; - - BOOL IsVisible(IN INT x, - IN INT y, - IN const Graphics* g = NULL) const - { - return IsVisible(Point(x, y), g); - } - - BOOL IsVisible(IN const Point& point, - IN const Graphics* g = NULL) const; - - BOOL IsVisible(IN REAL x, - IN REAL y, - IN const Graphics* g = NULL) const - { - return IsVisible(PointF(x, y), g); - } - - BOOL IsVisible(IN const PointF& point, - IN const Graphics* g = NULL) const; - - BOOL IsVisible(IN INT x, - IN INT y, - IN INT width, - IN INT height, - IN const Graphics* g) const - { - return IsVisible(Rect(x, y, width, height), g); - } - - BOOL IsVisible(IN const Rect& rect, - IN const Graphics* g = NULL) const; - - BOOL IsVisible(IN REAL x, - IN REAL y, - IN REAL width, - IN REAL height, - IN const Graphics* g = NULL) const - { - return IsVisible(RectF(x, y, width, height), g); - } - - BOOL IsVisible(IN const RectF& rect, - IN const Graphics* g = NULL) const; - - BOOL Equals(IN const Region* region, - IN const Graphics* g) const; - - UINT GetRegionScansCount(IN const Matrix* matrix) const; - Status GetRegionScans(IN const Matrix* matrix, - OUT RectF* rects, - OUT INT* count) const; - Status GetRegionScans(IN const Matrix* matrix, - OUT Rect* rects, - OUT INT* count) const; - Status GetLastStatus() const; - -protected: - -#ifdef DCR_USE_NEW_250932 - -private: - Region(const Region ®ion); - Region& operator=(const Region ®ion); -protected: - -#else - Region(const Region ®ion) - { - region; // reference parameter - SetStatus(NotImplemented); - } - - Region& operator=(const Region ®ion) - { - region; // reference parameter - SetStatus(NotImplemented); - return *this; - } -#endif - - Status SetStatus(Status status) const - { - if (status != Ok) - return (lastResult = status); - else - return status; - } - - Region(GpRegion* nativeRegion); - - VOID SetNativeRegion(GpRegion* nativeRegion); - -protected: - GpRegion* nativeRegion; - mutable Status lastResult; -}; - - -//-------------------------------------------------------------------------- -// Abstract base class for FontFamily -//-------------------------------------------------------------------------- - -class FontFamily : public GdiplusBase -{ -public: - friend class Font; - friend class Graphics; - friend class GraphicsPath; - friend class FontCollection; - - FontFamily(); - - FontFamily( - IN const WCHAR *name, - IN const FontCollection *fontCollection = NULL - ); - - ~FontFamily(); - - static const FontFamily *GenericSansSerif(); - static const FontFamily *GenericSerif(); - static const FontFamily *GenericMonospace(); - - Status GetFamilyName( - OUT WCHAR name[LF_FACESIZE], - IN LANGID language = 0 - ) const; - -// Copy operator - FontFamily * Clone() const; - - BOOL IsAvailable() const - { - return (nativeFamily != NULL); - }; - - BOOL IsStyleAvailable(IN INT style) const; - - UINT16 GetEmHeight (IN INT style) const; - UINT16 GetCellAscent (IN INT style) const; - UINT16 GetCellDescent (IN INT style) const; - UINT16 GetLineSpacing (IN INT style) const; - - /////////////////////////////////////////////////////////// - - Status GetLastStatus() const; - -#ifdef DCR_USE_NEW_250932 - -private: - FontFamily(const FontFamily &); - FontFamily& operator=(const FontFamily &); - -#endif - -protected: - Status SetStatus(Status status) const; - - // private constructor for copy - FontFamily(GpFontFamily * nativeFamily, Status status); - -/////////////////////////////////////// -// Data members -protected: - - GpFontFamily *nativeFamily; - mutable Status lastResult; -}; - -static FontFamily *GenericSansSerifFontFamily = NULL; -static FontFamily *GenericSerifFontFamily = NULL; -static FontFamily *GenericMonospaceFontFamily = NULL; - -static BYTE GenericSansSerifFontFamilyBuffer[sizeof(FontFamily)] = {0}; -static BYTE GenericSerifFontFamilyBuffer [sizeof(FontFamily)] = {0}; -static BYTE GenericMonospaceFontFamilyBuffer[sizeof(FontFamily)] = {0}; - - -//-------------------------------------------------------------------------- -// Abstract base class for fonts -//-------------------------------------------------------------------------- - -class Font : public GdiplusBase -{ -public: - friend class Graphics; - - Font(IN HDC hdc); - Font(IN HDC hdc, - IN const LOGFONTA* logfont); - Font(IN HDC hdc, - IN const LOGFONTW* logfont); -#ifdef DCR_USE_NEW_127084 - Font(IN HDC hdc, - IN const HFONT hfont); -#endif - Font( - IN const FontFamily * family, - IN REAL emSize, - IN INT style = FontStyleRegular, - IN Unit unit = UnitPoint - ); - - Font( - IN const WCHAR * familyName, - IN REAL emSize, - IN INT style = FontStyleRegular, - IN Unit unit = UnitPoint, - IN const FontCollection * fontCollection = NULL - ); - - Status GetLogFontA(IN const Graphics* g, - OUT LOGFONTA * logfontA) const; - Status GetLogFontW(IN const Graphics* g, - OUT LOGFONTW * logfontW) const; - - Font* Clone() const; - ~Font(); - BOOL IsAvailable() const; - INT GetStyle() const; - REAL GetSize() const; - Unit GetUnit() const; - Status GetLastStatus() const; - REAL GetHeight(IN const Graphics *graphics = NULL) const; -#ifdef DCR_USE_NEW_125467 - REAL GetHeight(IN REAL dpi) const; -#endif - - Status GetFamily(OUT FontFamily *family) const; - -#ifdef DCR_USE_NEW_250932 - -private: - Font(const Font &); - Font& operator=(const Font &); - -#endif - -protected: - Font(GpFont* font, Status status); - VOID SetNativeFont(GpFont *Font); - Status SetStatus(Status status) const; - -protected: - /* - * handle to native line texture object - */ - - GpFont* nativeFont; - mutable Status lastResult; -}; - -//-------------------------------------------------------------------------- -// Abstract base classes for font collections -//-------------------------------------------------------------------------- - -class FontCollection : public GdiplusBase -{ -public: - friend class FontFamily; - - FontCollection(); - virtual ~FontCollection(); - - INT GetFamilyCount() const; // number of enumerable families in the collection - - Status GetFamilies( // enumerate the fonts in a collection - IN INT numSought, - OUT FontFamily * gpfamilies, - OUT INT * numFound - ) const; - - Status GetLastStatus() const; - -#ifdef DCR_USE_NEW_250932 - -private: - FontCollection(const FontCollection &); - FontCollection& operator=(const FontCollection &); - -#endif - -protected: - Status SetStatus(Status status) const ; - - GpFontCollection *nativeFontCollection; - mutable Status lastResult; -}; - - -class InstalledFontCollection : public FontCollection -{ -public: - InstalledFontCollection(); - ~InstalledFontCollection(); - -#ifdef DCR_USE_NEW_250932 - -private: - InstalledFontCollection(const InstalledFontCollection &); - InstalledFontCollection& operator=(const InstalledFontCollection &); - -#endif - -protected: -#ifndef DCR_USE_NEW_235072 - Status InstallFontFile(IN const WCHAR* filename); - Status UninstallFontFile(IN const WCHAR* filename); -#endif - Status SetStatus(Status status) const ; -}; - - -class PrivateFontCollection : public FontCollection -{ -public: - PrivateFontCollection(); - ~PrivateFontCollection(); - - Status AddFontFile(IN const WCHAR* filename); - Status AddMemoryFont(IN const VOID* memory, - IN INT length); - -#ifdef DCR_USE_NEW_250932 - -private: - PrivateFontCollection(const PrivateFontCollection &); - PrivateFontCollection& operator=(const PrivateFontCollection &); - -#endif -}; - - -//-------------------------------------------------------------------------- -// Abstract base class for bitmap image and metafile -//-------------------------------------------------------------------------- - -// !!! Note: -// Include the class declarations here and have the inline class -// implementation in a separate file. This is done to resolve a -// circular dependency since one of the Bitmap methods needs to -// access the private member nativeGraphics of the Graphics object. - -class Image : public GdiplusBase -{ -public: - friend class Brush; - friend class TextureBrush; - friend class Graphics; - -#ifndef DCR_USE_NEW_140782 - Image( - IN const WCHAR* filename - ); - - Image( - IN IStream* stream - ); - - static Image* FromFile( - IN const WCHAR* filename - ); - - static Image* FromStream( - IN IStream* stream - ); -#else - Image( - IN const WCHAR* filename, - IN BOOL useEmbeddedColorManagement = FALSE - ); - - Image( - IN IStream* stream, - IN BOOL useEmbeddedColorManagement = FALSE - ); - - static Image* FromFile( - IN const WCHAR* filename, - IN BOOL useEmbeddedColorManagement = FALSE - ); - - static Image* FromStream( - IN IStream* stream, - IN BOOL useEmbeddedColorManagement = FALSE - ); -#endif - - virtual ~Image(); - virtual Image* Clone(); - - Status Save(IN const WCHAR* filename, - IN const CLSID* clsidEncoder, - IN const EncoderParameters *encoderParams = NULL); - Status Save(IN IStream* stream, - IN const CLSID* clsidEncoder, - IN const EncoderParameters *encoderParams = NULL); - Status SaveAdd(IN const EncoderParameters* encoderParams); - Status SaveAdd(IN Image* newImage, - IN const EncoderParameters* encoderParams); - - ImageType GetType() const; - Status GetPhysicalDimension(OUT SizeF* size); - Status GetBounds(OUT RectF* srcRect, - OUT Unit* srcUnit); - - UINT GetWidth(); - UINT GetHeight(); - REAL GetHorizontalResolution(); - REAL GetVerticalResolution(); - UINT GetFlags(); - Status GetRawFormat(OUT GUID *format); - PixelFormat GetPixelFormat(); - - INT GetPaletteSize(); - Status GetPalette(OUT ColorPalette* palette, - IN INT size); - Status SetPalette(IN const ColorPalette* palette); - - Image* GetThumbnailImage(IN UINT thumbWidth, - IN UINT thumbHeight, - IN GetThumbnailImageAbort callback = NULL, - IN VOID* callbackData = NULL); - UINT GetFrameDimensionsCount(); - Status GetFrameDimensionsList(OUT GUID* dimensionIDs, - IN UINT count); - UINT GetFrameCount(IN const GUID* dimensionID); - Status SelectActiveFrame(IN const GUID* dimensionID, - IN UINT frameIndex); - Status RotateFlip(IN RotateFlipType rotateFlipType); - UINT GetPropertyCount(); - Status GetPropertyIdList(IN UINT numOfProperty, - OUT PROPID* list); - UINT GetPropertyItemSize(IN PROPID propId); - Status GetPropertyItem(IN PROPID propId, - IN UINT propSize, - OUT PropertyItem* buffer); - Status GetPropertySize(OUT UINT* totalBufferSize, - OUT UINT* numProperties); - Status GetAllPropertyItems(IN UINT totalBufferSize, - IN UINT numProperties, - OUT PropertyItem* allItems); - Status RemovePropertyItem(IN PROPID propId); - Status SetPropertyItem(IN const PropertyItem* item); - - UINT GetEncoderParameterListSize(IN const CLSID* clsidEncoder); - Status GetEncoderParameterList(IN const CLSID* clsidEncoder, - IN UINT size, - OUT EncoderParameters* buffer); - - // Support for Middle East localization (right-to-left mirroring) - ImageLayout GetLayout() const; - Status SetLayout(IN const ImageLayout layout); - - Status GetLastStatus() const; - -protected: - - Image() {} - - Image(GpImage *nativeImage, Status status); - - VOID SetNativeImage(GpImage* nativeImage); - - Status SetStatus(Status status) const - { - if (status != Ok) - return (lastResult = status); - else - return status; - } - - GpImage* nativeImage; - mutable Status lastResult; - mutable Status loadStatus; - -#ifdef DCR_USE_NEW_250932 - -private: - -#else - -protected: - -#endif - - // Disable copy constructor and assignment operator - - Image(IN const Image& C); - Image& operator=(IN const Image& C); -}; - -class Bitmap : public Image -{ -public: - friend class Image; - friend class CachedBitmap; - - Bitmap( - IN const WCHAR *filename, - IN BOOL useEmbeddedColorManagement = FALSE - ); - - Bitmap( - IN IStream *stream, - IN BOOL useEmbeddedColorManagement = FALSE - ); - - static Bitmap* FromFile( - IN const WCHAR *filename, - IN BOOL useEmbeddedColorManagement = FALSE - ); - - static Bitmap* FromStream( - IN IStream *stream, - IN BOOL useEmbeddedColorManagement = FALSE - ); - - Bitmap(IN INT width, - IN INT height, - IN INT stride, PixelFormat format, - IN BYTE* scan0); - Bitmap(IN INT width, - IN INT height, - IN PixelFormat format = PixelFormat32bppARGB); - Bitmap(IN INT width, - IN INT height, - IN Graphics* target); - - Bitmap* Clone(IN const Rect& rect, - IN PixelFormat format); - Bitmap* Clone(IN INT x, - IN INT y, - IN INT width, - IN INT height, - IN PixelFormat format); - Bitmap* Clone(IN const RectF& rect, - IN PixelFormat format); - Bitmap* Clone(IN REAL x, - IN REAL y, - IN REAL width, - IN REAL height, - IN PixelFormat format); - - Status LockBits(IN const Rect& rect, - IN UINT flags, - IN PixelFormat format, - OUT BitmapData* lockedBitmapData); - Status UnlockBits(IN BitmapData* lockedBitmapData); - Status GetPixel(IN INT x, - IN INT y, - OUT Color *color); - Status SetPixel(IN INT x, - IN INT y, - IN const Color &color); - Status SetResolution(IN REAL xdpi, - IN REAL ydpi); - - // GDI interop: - - Bitmap(IN IDirectDrawSurface7* surface); - Bitmap(IN const BITMAPINFO* gdiBitmapInfo, - IN VOID* gdiBitmapData); - Bitmap(IN HBITMAP hbm, - IN HPALETTE hpal); - Bitmap(IN HICON hicon); - Bitmap(IN HINSTANCE hInstance, - IN const WCHAR * bitmapName); - static Bitmap* FromDirectDrawSurface7(IN IDirectDrawSurface7* surface); - static Bitmap* FromBITMAPINFO(IN const BITMAPINFO* gdiBitmapInfo, - IN VOID* gdiBitmapData); - static Bitmap* FromHBITMAP(IN HBITMAP hbm, - IN HPALETTE hpal); - static Bitmap* FromHICON(IN HICON hicon); - static Bitmap* FromResource(IN HINSTANCE hInstance, - IN const WCHAR * bitmapName); - - Status GetHBITMAP(IN const Color& colorBackground, - OUT HBITMAP *hbmReturn); - Status GetHICON(HICON *hicon); - -#ifdef DCR_USE_NEW_250932 -private: - Bitmap(const Bitmap &); - Bitmap& operator=(const Bitmap &); -#endif - -protected: - Bitmap(GpBitmap *nativeBitmap); -}; - -class CustomLineCap : public GdiplusBase -{ -public: - friend class Pen; - - CustomLineCap( - IN const GraphicsPath* fillPath, - IN const GraphicsPath* strokePath, - IN LineCap baseCap = LineCapFlat, - IN REAL baseInset = 0 - ); - virtual ~CustomLineCap(); - - CustomLineCap* Clone() const; - - Status SetStrokeCap(IN LineCap strokeCap) - { - // This changes both start and and caps. - - return SetStrokeCaps(strokeCap, strokeCap); - } - - Status SetStrokeCaps(IN LineCap startCap, - IN LineCap endCap); - Status GetStrokeCaps(OUT LineCap* startCap, - OUT LineCap* endCap) const; - Status SetStrokeJoin(IN LineJoin lineJoin); - LineJoin GetStrokeJoin() const; - Status SetBaseCap(IN LineCap baseCap); - LineCap GetBaseCap() const; - Status SetBaseInset(IN REAL inset); - REAL GetBaseInset() const; - Status SetWidthScale(IN REAL widthScale); - REAL GetWidthScale() const; - -protected: - CustomLineCap(); - -#ifdef DCR_USE_NEW_250932 - -private: - CustomLineCap(const CustomLineCap &); - CustomLineCap& operator=(const CustomLineCap &); -protected: - -#else - - CustomLineCap(const CustomLineCap& customLineCap) - { - customLineCap; - SetStatus(NotImplemented); - } - - CustomLineCap& operator=(const CustomLineCap& customLineCap) - { - customLineCap; - SetStatus(NotImplemented); - return *this; - } - -#endif - - CustomLineCap(GpCustomLineCap* nativeCap, Status status) - { - lastResult = status; - SetNativeCap(nativeCap); - } - - VOID SetNativeCap(GpCustomLineCap* nativeCap) - { - this->nativeCap = nativeCap; - } - - Status SetStatus(Status status) const - { - if (status != Ok) - return (lastResult = status); - else - return status; - } - -protected: - GpCustomLineCap* nativeCap; - mutable Status lastResult; -}; - -class CachedBitmap : public GdiplusBase -{ - friend Graphics; - -public: - CachedBitmap(IN Bitmap *bitmap, - IN Graphics *graphics); - virtual ~CachedBitmap(); - - Status GetLastStatus() const; - -#ifdef DCR_USE_NEW_250932 - -private: - CachedBitmap(const CachedBitmap &); - CachedBitmap& operator=(const CachedBitmap &); - -#endif - -protected: - GpCachedBitmap *nativeCachedBitmap; - mutable Status lastResult; -}; - -#endif // !_GDIPLUSHEADERS.HPP |