[SDK][INCLUDE] Improve Gdiplus::Graphics (#2211)

CORE-16585
This commit is contained in:
Katayama Hirofumi MZ 2019-12-31 20:40:16 +09:00 committed by GitHub
parent 8ecbb44463
commit 8968b14235
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 340 additions and 175 deletions

View file

@ -93,6 +93,13 @@ class Brush : public GdiplusBase
Brush(const Brush &); Brush(const Brush &);
Brush & Brush &
operator=(const Brush &); operator=(const Brush &);
// get native
friend inline GpBrush *&
getNat(const Brush *brush)
{
return const_cast<Brush *>(brush)->nativeBrush;
}
}; };
class HatchBrush : public Brush class HatchBrush : public Brush

File diff suppressed because it is too large Load diff

View file

@ -655,6 +655,13 @@ class CachedBitmap : public GdiplusBase
CachedBitmap(const CachedBitmap &); CachedBitmap(const CachedBitmap &);
CachedBitmap & CachedBitmap &
operator=(const CachedBitmap &); operator=(const CachedBitmap &);
// get native
friend inline GpCachedBitmap *&
getNat(const CachedBitmap *cb)
{
return const_cast<CachedBitmap *>(cb)->nativeCachedBitmap;
}
}; };
class FontCollection : public GdiplusBase class FontCollection : public GdiplusBase
@ -1367,6 +1374,13 @@ class Region : public GdiplusBase
this->status = status; this->status = status;
return status; return status;
} }
// get native
friend inline GpRegion *&
getNat(const Region *region)
{
return const_cast<Region *>(region)->region;
}
}; };
class CustomLineCap : public GdiplusBase class CustomLineCap : public GdiplusBase

View file

@ -243,6 +243,13 @@ class ImageAttributes : public GdiplusBase
ImageAttributes(const ImageAttributes &); ImageAttributes(const ImageAttributes &);
ImageAttributes & ImageAttributes &
operator=(const ImageAttributes &); operator=(const ImageAttributes &);
// get native
friend inline GpImageAttributes *&
getNat(const ImageAttributes *ia)
{
return const_cast<ImageAttributes *>(ia)->nativeImageAttr;
}
}; };
#endif /* _GDIPLUSIMAGEATTRIBUTES_H */ #endif /* _GDIPLUSIMAGEATTRIBUTES_H */

View file

@ -204,6 +204,13 @@ class Matrix : public GdiplusBase
lastStatus = status; lastStatus = status;
return status; return status;
} }
// get native
friend inline GpMatrix *&
getNat(const Matrix *matrix)
{
return const_cast<Matrix *>(matrix)->nativeMatrix;
}
}; };
#endif /* _GDIPLUSMATRIX_H */ #endif /* _GDIPLUSMATRIX_H */

View file

@ -26,6 +26,7 @@ class GraphicsPath : public GdiplusBase
{ {
friend class Region; friend class Region;
friend class CustomLineCap; friend class CustomLineCap;
friend class Graphics;
public: public:
GraphicsPath(const Point *points, const BYTE *types, INT count, FillMode fillMode) : nativePath(NULL) GraphicsPath(const Point *points, const BYTE *types, INT count, FillMode fillMode) : nativePath(NULL)
@ -598,6 +599,13 @@ class GraphicsPath : public GdiplusBase
GraphicsPath(const GraphicsPath &); GraphicsPath(const GraphicsPath &);
GraphicsPath & GraphicsPath &
operator=(const GraphicsPath &); operator=(const GraphicsPath &);
// get native
friend inline GpPath *&
getNat(const GraphicsPath *path)
{
return const_cast<GraphicsPath *>(path)->nativePath;
}
}; };
class GraphicsPathIterator : public GdiplusBase class GraphicsPathIterator : public GdiplusBase

View file

@ -396,6 +396,13 @@ class Pen : public GdiplusBase
Pen(const Pen &); Pen(const Pen &);
Pen & Pen &
operator=(const Pen &); operator=(const Pen &);
// get native
friend inline GpPen *&
getNat(const Pen *pen)
{
return const_cast<Pen *>(pen)->nativePen;
}
}; };
#endif /* _GDIPLUSPEN_H */ #endif /* _GDIPLUSPEN_H */