Index: core/src/fxge/apple/apple_int.h |
diff --git a/core/src/fxge/apple/apple_int.h b/core/src/fxge/apple/apple_int.h |
index ba3d0a83e865098c1385099843d1eba025ab7886..9bff4ebcbcbbddf2035f74388bb915a4cfceb014 100644 |
--- a/core/src/fxge/apple/apple_int.h |
+++ b/core/src/fxge/apple/apple_int.h |
@@ -8,9 +8,13 @@ |
#define CORE_SRC_FXGE_APPLE_APPLE_INT_H_ |
#if _FXM_PLATFORM_ == _FXM_PLATFORM_APPLE_ |
+ |
+#include "../../../include/fxge/fx_ge.h" |
+ |
#if _FX_OS_ == _FX_MACOSX_ |
#include <Carbon/Carbon.h> |
#endif |
+ |
typedef enum eFXIOSFONTCHARSET { |
eFXFontCharsetDEFAULT = 0, |
eFXFontCharsetANSI = 1, |
@@ -68,105 +72,107 @@ class CApplePlatform { |
CQuartz2D _quartz2d; |
}; |
+ |
class CFX_QuartzDeviceDriver : public IFX_RenderDeviceDriver { |
public: |
CFX_QuartzDeviceDriver(CGContextRef context, int32_t deviceClass); |
- virtual ~CFX_QuartzDeviceDriver(); |
+ ~CFX_QuartzDeviceDriver() override; |
- virtual int GetDeviceCaps(int caps_id); |
- virtual CFX_Matrix GetCTM() const; |
- virtual CFX_DIBitmap* GetBackDrop() { return NULL; } |
- virtual void* GetPlatformSurface() { return NULL; } |
- virtual FX_BOOL IsPSPrintDriver() { return FALSE; } |
- virtual FX_BOOL StartRendering() { return TRUE; } |
- virtual void EndRendering() {} |
- virtual void SaveState(); |
- virtual void RestoreState(FX_BOOL bKeepSaved); |
- virtual FX_BOOL SetClip_PathFill(const CFX_PathData* pPathData, |
- const CFX_AffineMatrix* pObject2Device, |
- int fill_mode); |
- virtual FX_BOOL SetClip_PathStroke(const CFX_PathData* pPathData, |
- const CFX_AffineMatrix* pObject2Device, |
- const CFX_GraphStateData* pGraphState); |
- virtual FX_BOOL DrawPath(const CFX_PathData* pPathData, |
+ // IFX_RenderDeviceDriver |
+ int GetDeviceCaps(int caps_id) override; |
+ CFX_Matrix GetCTM() const override; |
+ FX_BOOL IsPSPrintDriver() override { return FALSE; } |
+ FX_BOOL StartRendering() override { return TRUE; } |
+ void EndRendering() override {} |
+ void SaveState() override; |
+ void RestoreState(FX_BOOL bKeepSaved) override; |
+ FX_BOOL SetClip_PathFill(const CFX_PathData* pPathData, |
const CFX_AffineMatrix* pObject2Device, |
- const CFX_GraphStateData* pGraphState, |
- FX_DWORD fill_color, |
- FX_DWORD stroke_color, |
- int fill_mode, |
- int alpha_flag = 0, |
- void* pIccTransform = NULL, |
- int blend_type = FXDIB_BLEND_NORMAL); |
- virtual FX_BOOL SetPixel(int x, |
- int y, |
- FX_DWORD color, |
- int alpha_flag = 0, |
- void* pIccTransform = NULL) { |
+ int fill_mode) override; |
+ FX_BOOL SetClip_PathStroke(const CFX_PathData* pPathData, |
+ const CFX_AffineMatrix* pObject2Device, |
+ const CFX_GraphStateData* pGraphState) override; |
+ FX_BOOL DrawPath(const CFX_PathData* pPathData, |
+ const CFX_AffineMatrix* pObject2Device, |
+ const CFX_GraphStateData* pGraphState, |
+ FX_DWORD fill_color, |
+ FX_DWORD stroke_color, |
+ int fill_mode, |
+ int alpha_flag = 0, |
+ void* pIccTransform = NULL, |
+ int blend_type = FXDIB_BLEND_NORMAL) override; |
+ FX_BOOL SetPixel(int x, |
+ int y, |
+ FX_DWORD color, |
+ int alpha_flag = 0, |
+ void* pIccTransform = NULL) override { |
return FALSE; |
} |
- virtual FX_BOOL FillRect(const FX_RECT* pRect, |
- FX_DWORD fill_color, |
+ FX_BOOL FillRect(const FX_RECT* pRect, |
+ FX_DWORD fill_color, |
+ int alpha_flag = 0, |
+ void* pIccTransform = NULL, |
+ int blend_type = FXDIB_BLEND_NORMAL) override; |
+ FX_BOOL DrawCosmeticLine(FX_FLOAT x1, |
+ FX_FLOAT y1, |
+ FX_FLOAT x2, |
+ FX_FLOAT y2, |
+ FX_DWORD color, |
int alpha_flag = 0, |
void* pIccTransform = NULL, |
- int blend_type = FXDIB_BLEND_NORMAL); |
- virtual FX_BOOL DrawCosmeticLine(FX_FLOAT x1, |
- FX_FLOAT y1, |
- FX_FLOAT x2, |
- FX_FLOAT y2, |
- FX_DWORD color, |
- int alpha_flag = 0, |
- void* pIccTransform = NULL, |
- int blend_type = FXDIB_BLEND_NORMAL); |
- virtual FX_BOOL GetClipBox(FX_RECT* pRect); |
- virtual FX_BOOL GetDIBits(CFX_DIBitmap* pBitmap, |
- int left, |
- int top, |
- void* pIccTransform = NULL, |
- FX_BOOL bDEdge = FALSE); |
- virtual FX_BOOL SetDIBits(const CFX_DIBSource* pBitmap, |
- FX_DWORD color, |
- const FX_RECT* pSrcRect, |
- int dest_left, |
- int dest_top, |
- int blend_type, |
- int alpha_flag = 0, |
- void* pIccTransform = NULL); |
- virtual FX_BOOL StretchDIBits(const CFX_DIBSource* pBitmap, |
- FX_DWORD color, |
- int dest_left, |
- int dest_top, |
- int dest_width, |
- int dest_height, |
- const FX_RECT* pClipRect, |
- FX_DWORD flags, |
- int alpha_flag = 0, |
- void* pIccTransform = NULL, |
- int blend_type = FXDIB_BLEND_NORMAL); |
- virtual FX_BOOL StartDIBits(const CFX_DIBSource* pBitmap, |
- int bitmap_alpha, |
- FX_DWORD color, |
- const CFX_AffineMatrix* pMatrix, |
- FX_DWORD flags, |
- void*& handle, |
- int alpha_flag = 0, |
- void* pIccTransform = NULL, |
- int blend_type = FXDIB_BLEND_NORMAL) { |
+ int blend_type = FXDIB_BLEND_NORMAL) override; |
+ FX_BOOL GetClipBox(FX_RECT* pRect) override; |
+ FX_BOOL GetDIBits(CFX_DIBitmap* pBitmap, |
+ int left, |
+ int top, |
+ void* pIccTransform = NULL, |
+ FX_BOOL bDEdge = FALSE) override; |
+ CFX_DIBitmap* GetBackDrop() override { return NULL; } |
+ FX_BOOL SetDIBits(const CFX_DIBSource* pBitmap, |
+ FX_DWORD color, |
+ const FX_RECT* pSrcRect, |
+ int dest_left, |
+ int dest_top, |
+ int blend_type, |
+ int alpha_flag = 0, |
+ void* pIccTransform = NULL) override; |
+ FX_BOOL StretchDIBits(const CFX_DIBSource* pBitmap, |
+ FX_DWORD color, |
+ int dest_left, |
+ int dest_top, |
+ int dest_width, |
+ int dest_height, |
+ const FX_RECT* pClipRect, |
+ FX_DWORD flags, |
+ int alpha_flag = 0, |
+ void* pIccTransform = NULL, |
+ int blend_type = FXDIB_BLEND_NORMAL) override; |
+ FX_BOOL StartDIBits(const CFX_DIBSource* pBitmap, |
+ int bitmap_alpha, |
+ FX_DWORD color, |
+ const CFX_AffineMatrix* pMatrix, |
+ FX_DWORD flags, |
+ void*& handle, |
+ int alpha_flag = 0, |
+ void* pIccTransform = NULL, |
+ int blend_type = FXDIB_BLEND_NORMAL) override { |
return FALSE; |
} |
- virtual FX_BOOL ContinueDIBits(void* handle, IFX_Pause* pPause) { |
+ FX_BOOL ContinueDIBits(void* handle, IFX_Pause* pPause) override { |
return FALSE; |
} |
- virtual void CancelDIBits(void* handle) {} |
- virtual FX_BOOL DrawDeviceText(int nChars, |
- const FXTEXT_CHARPOS* pCharPos, |
- CFX_Font* pFont, |
- CFX_FontCache* pCache, |
- const CFX_AffineMatrix* pObject2Device, |
- FX_FLOAT font_size, |
- FX_DWORD color, |
- int alpha_flag = 0, |
- void* pIccTransform = NULL); |
- virtual void ClearDriver(); |
+ void CancelDIBits(void* handle) override {} |
+ FX_BOOL DrawDeviceText(int nChars, |
+ const FXTEXT_CHARPOS* pCharPos, |
+ CFX_Font* pFont, |
+ CFX_FontCache* pCache, |
+ const CFX_AffineMatrix* pObject2Device, |
+ FX_FLOAT font_size, |
+ FX_DWORD color, |
+ int alpha_flag = 0, |
+ void* pIccTransform = NULL) override; |
+ void* GetPlatformSurface() override { return NULL; } |
+ void ClearDriver() override; |
protected: |
void setStrokeInfo(const CFX_GraphStateData* graphState, |
@@ -206,21 +212,20 @@ class CFX_QuartzDeviceDriver : public IFX_RenderDeviceDriver { |
int32_t _horzSize; |
int32_t _vertSize; |
}; |
+ |
class CFX_FontProvider final : public IFX_FileRead { |
public: |
- virtual void Release() override { delete this; } |
- virtual FX_FILESIZE GetSize() override { return (FX_FILESIZE)_totalSize; } |
- virtual FX_BOOL ReadBlock(void* buffer, |
- FX_FILESIZE offset, |
- size_t size) override; |
- |
- virtual FX_BOOL IsEOF() override { return _offSet == _totalSize; } |
- virtual FX_FILESIZE GetPosition() override { return (FX_FILESIZE)_offSet; } |
- virtual size_t ReadBlock(void* buffer, size_t size) override; |
+ // IFX_FileRead |
+ void Release() override { delete this; } |
+ FX_FILESIZE GetSize() override { return (FX_FILESIZE)_totalSize; } |
+ FX_BOOL IsEOF() override { return _offSet == _totalSize; } |
+ FX_FILESIZE GetPosition() override { return (FX_FILESIZE)_offSet; } |
+ FX_BOOL ReadBlock(void* buffer, FX_FILESIZE offset, size_t size) override; |
+ size_t ReadBlock(void* buffer, size_t size) override; |
public: |
CFX_FontProvider(CGFontRef cgFont); |
- ~CFX_FontProvider(); |
+ ~CFX_FontProvider() override; |
void InitTableOffset(); |
unsigned long Read(unsigned long offset, |
unsigned char* buffer, |
@@ -254,6 +259,7 @@ class CFX_FontProvider final : public IFX_FileRead { |
int _tableCount; |
int _totalSize; |
}; |
+ |
uint32_t FX_GetHashCode(const FX_CHAR* pStr); |
FX_DWORD FX_IOSGetMatchFamilyNameHashcode(const FX_CHAR* pFontName); |
uint32_t FX_IOSGetFamilyNamesCount(); |