Use override in more classes in core/
authorLei Zhang <thestig@chromium.org>
Fri, 14 Aug 2015 21:07:43 +0000 (14:07 -0700)
committerLei Zhang <thestig@chromium.org>
Fri, 14 Aug 2015 21:07:43 +0000 (14:07 -0700)
R=tsepez@chromium.org

Review URL: https://codereview.chromium.org/1292613003 .

42 files changed:
core/include/fpdfapi/fpdf_pageobj.h
core/include/fpdfapi/fpdf_parser.h
core/include/fpdfapi/fpdf_resource.h
core/include/fpdfdoc/fpdf_ap.h
core/include/fpdfdoc/fpdf_doc.h
core/include/fpdfdoc/fpdf_vt.h
core/include/fxge/fpf.h
core/include/fxge/fx_dib.h
core/include/fxge/fx_font.h
core/include/fxge/fx_ge.h
core/src/fpdfapi/fpdf_font/ttgsubtable.h
core/src/fpdfapi/fpdf_page/fpdf_page_func.cpp
core/src/fpdfapi/fpdf_parser/fpdf_parser_parser.cpp
core/src/fpdfapi/fpdf_render/fpdf_render_image.cpp
core/src/fpdfapi/fpdf_render/render_int.h
core/src/fpdfdoc/doc_ap.cpp
core/src/fpdfdoc/doc_vt.cpp
core/src/fpdfdoc/pdf_vt.h
core/src/fpdfdoc/tagged_int.h
core/src/fpdftext/text_int.h
core/src/fxcodec/codec/codec_int.h
core/src/fxcodec/codec/fx_codec.cpp
core/src/fxcodec/codec/fx_codec_fax.cpp
core/src/fxcodec/codec/fx_codec_flate.cpp
core/src/fxcodec/codec/fx_codec_jpeg.cpp
core/src/fxcrt/extension.h
core/src/fxcrt/fxcrt_platforms.h
core/src/fxcrt/fxcrt_posix.h
core/src/fxcrt/fxcrt_windows.h
core/src/fxcrt/xml_int.h
core/src/fxge/agg/include/fx_agg_driver.h
core/src/fxge/android/fpf_skiafont.h
core/src/fxge/android/fpf_skiafontmgr.h
core/src/fxge/android/fpf_skiamodule.h
core/src/fxge/apple/apple_int.h
core/src/fxge/skia/fx_skia_device.h
core/src/fxge/win32/fx_win32_device.cpp
core/src/fxge/win32/win32_int.h
fpdfsdk/include/pdfwindow/PWL_Edit.h
fpdfsdk/include/pdfwindow/PWL_Wnd.h
fpdfsdk/src/fxedit/fxet_edit.cpp
fpdfsdk/src/pdfwindow/PWL_Edit.cpp

index be81244..7ea51cc 100644 (file)
@@ -70,9 +70,7 @@ class CPDF_Path : public CFX_CountRef<CFX_PathData> {
 class CPDF_ClipPathData {
  public:
   CPDF_ClipPathData();
-
   CPDF_ClipPathData(const CPDF_ClipPathData&);
-
   ~CPDF_ClipPathData();
 
   void SetCount(int path_count, int text_count);
@@ -88,6 +86,7 @@ class CPDF_ClipPathData {
 
   CPDF_TextObject** m_pTextList;
 };
+
 class CPDF_ClipPath : public CFX_CountRef<CPDF_ClipPathData> {
  public:
   FX_DWORD GetPathCount() const { return m_pObject->m_PathCount; }
@@ -492,12 +491,14 @@ class CPDF_TextObject : public CPDF_PageObject {
 class CPDF_PathObject : public CPDF_PageObject {
  public:
   CPDF_PathObject() { m_Type = PDFPAGE_PATH; }
+  ~CPDF_PathObject() override {}
 
-  virtual ~CPDF_PathObject() {}
   void Transform(const CFX_AffineMatrix& maxtrix) override;
 
   void SetGraphState(CPDF_GraphState GraphState);
 
+  void CalcBoundingBox();
+
   CPDF_Path m_Path;
 
   int m_FillType;
@@ -506,8 +507,6 @@ class CPDF_PathObject : public CPDF_PageObject {
 
   CFX_AffineMatrix m_Matrix;
 
-  void CalcBoundingBox();
-
  protected:
   void CopyData(const CPDF_PageObject* pSrcObject) override;
 };
@@ -515,8 +514,8 @@ class CPDF_PathObject : public CPDF_PageObject {
 class CPDF_ImageObject : public CPDF_PageObject {
  public:
   CPDF_ImageObject();
+  ~CPDF_ImageObject() override;
 
-  virtual ~CPDF_ImageObject();
   void Transform(const CFX_AffineMatrix& matrix) override;
 
   CPDF_Image* m_pImage;
@@ -532,8 +531,7 @@ class CPDF_ImageObject : public CPDF_PageObject {
 class CPDF_ShadingObject : public CPDF_PageObject {
  public:
   CPDF_ShadingObject();
-
-  virtual ~CPDF_ShadingObject();
+  ~CPDF_ShadingObject() override;
 
   CPDF_ShadingPattern* m_pShading;
 
@@ -553,8 +551,8 @@ class CPDF_FormObject : public CPDF_PageObject {
     m_Type = PDFPAGE_FORM;
     m_pForm = NULL;
   }
+  ~CPDF_FormObject() override;
 
-  virtual ~CPDF_FormObject();
   void Transform(const CFX_AffineMatrix& matrix) override;
 
   CPDF_Form* m_pForm;
index cb4e15e..a83cec1 100644 (file)
@@ -547,17 +547,18 @@ class CPDF_SecurityHandler {
 class CPDF_StandardSecurityHandler : public CPDF_SecurityHandler {
  public:
   CPDF_StandardSecurityHandler();
-
-  virtual ~CPDF_StandardSecurityHandler();
-  virtual FX_BOOL OnInit(CPDF_Parser* pParser, CPDF_Dictionary* pEncryptDict);
-  virtual FX_DWORD GetPermissions();
-  virtual FX_BOOL IsOwner() { return m_bOwner; }
-  virtual FX_BOOL GetCryptInfo(int& cipher,
-                               const uint8_t*& buffer,
-                               int& keylen);
-  virtual FX_BOOL IsMetadataEncrypted();
-  virtual CPDF_CryptoHandler* CreateCryptoHandler();
-  virtual CPDF_StandardSecurityHandler* GetStandardHandler() { return this; }
+  ~CPDF_StandardSecurityHandler() override;
+
+  // CPDF_SecurityHandler
+  FX_BOOL OnInit(CPDF_Parser* pParser, CPDF_Dictionary* pEncryptDict) override;
+  FX_DWORD GetPermissions() override;
+  FX_BOOL IsOwner() override { return m_bOwner; }
+  FX_BOOL GetCryptInfo(int& cipher,
+                       const uint8_t*& buffer,
+                       int& keylen) override;
+  FX_BOOL IsMetadataEncrypted() override;
+  CPDF_CryptoHandler* CreateCryptoHandler() override;
+  CPDF_StandardSecurityHandler* GetStandardHandler() override { return this; }
 
   void OnCreate(CPDF_Dictionary* pEncryptDict,
                 CPDF_Array* pIdArray,
@@ -683,29 +684,30 @@ class CPDF_CryptoHandler {
 class CPDF_StandardCryptoHandler : public CPDF_CryptoHandler {
  public:
   CPDF_StandardCryptoHandler();
-
-  virtual ~CPDF_StandardCryptoHandler();
+  ~CPDF_StandardCryptoHandler() override;
+
+  // CPDF_CryptoHandler
+  FX_BOOL Init(CPDF_Dictionary* pEncryptDict,
+               CPDF_SecurityHandler* pSecurityHandler) override;
+  FX_DWORD DecryptGetSize(FX_DWORD src_size) override;
+  void* DecryptStart(FX_DWORD objnum, FX_DWORD gennum) override;
+  FX_BOOL DecryptStream(void* context,
+                        const uint8_t* src_buf,
+                        FX_DWORD src_size,
+                        CFX_BinaryBuf& dest_buf) override;
+  FX_BOOL DecryptFinish(void* context, CFX_BinaryBuf& dest_buf) override;
+  FX_DWORD EncryptGetSize(FX_DWORD objnum,
+                          FX_DWORD version,
+                          const uint8_t* src_buf,
+                          FX_DWORD src_size) override;
+  FX_BOOL EncryptContent(FX_DWORD objnum,
+                         FX_DWORD version,
+                         const uint8_t* src_buf,
+                         FX_DWORD src_size,
+                         uint8_t* dest_buf,
+                         FX_DWORD& dest_size) override;
 
   FX_BOOL Init(int cipher, const uint8_t* key, int keylen);
-  virtual FX_BOOL Init(CPDF_Dictionary* pEncryptDict,
-                       CPDF_SecurityHandler* pSecurityHandler);
-  virtual FX_DWORD DecryptGetSize(FX_DWORD src_size);
-  virtual void* DecryptStart(FX_DWORD objnum, FX_DWORD gennum);
-  virtual FX_BOOL DecryptStream(void* context,
-                                const uint8_t* src_buf,
-                                FX_DWORD src_size,
-                                CFX_BinaryBuf& dest_buf);
-  virtual FX_BOOL DecryptFinish(void* context, CFX_BinaryBuf& dest_buf);
-  virtual FX_DWORD EncryptGetSize(FX_DWORD objnum,
-                                  FX_DWORD version,
-                                  const uint8_t* src_buf,
-                                  FX_DWORD src_size);
-  virtual FX_BOOL EncryptContent(FX_DWORD objnum,
-                                 FX_DWORD version,
-                                 const uint8_t* src_buf,
-                                 FX_DWORD src_size,
-                                 uint8_t* dest_buf,
-                                 FX_DWORD& dest_size);
 
  protected:
   virtual void CryptBlock(FX_BOOL bEncrypt,
index c41a306..5b6f349 100644 (file)
@@ -664,7 +664,7 @@ class CPDF_TilingPattern : public CPDF_Pattern {
                      CPDF_Object* pPatternObj,
                      const CFX_AffineMatrix* parentMatrix);
 
-  virtual ~CPDF_TilingPattern();
+  ~CPDF_TilingPattern() override;
 
   FX_BOOL Load();
 
@@ -685,7 +685,7 @@ class CPDF_ShadingPattern : public CPDF_Pattern {
                       FX_BOOL bShading,
                       const CFX_AffineMatrix* parentMatrix);
 
-  virtual ~CPDF_ShadingPattern();
+  ~CPDF_ShadingPattern() override;
 
   CPDF_Object* m_pShadingObj;
 
index 43452fd..305834e 100644 (file)
@@ -51,20 +51,19 @@ struct CPVT_Color {
 class CPVT_Provider : public IPDF_VariableText_Provider {
  public:
   CPVT_Provider(IPVT_FontMap* pFontMap);
-
-  virtual ~CPVT_Provider();
-
-  int32_t GetCharWidth(int32_t nFontIndex, FX_WORD word, int32_t nWordStyle);
-
-  int32_t GetTypeAscent(int32_t nFontIndex);
-
-  int32_t GetTypeDescent(int32_t nFontIndex);
-
-  int32_t GetWordFontIndex(FX_WORD word, int32_t charset, int32_t nFontIndex);
-
-  FX_BOOL IsLatinWord(FX_WORD word);
-
-  int32_t GetDefaultFontIndex();
+  ~CPVT_Provider() override;
+
+  // IPDF_VariableText_Provider
+  int32_t GetCharWidth(int32_t nFontIndex,
+                       FX_WORD word,
+                       int32_t nWordStyle) override;
+  int32_t GetTypeAscent(int32_t nFontIndex) override;
+  int32_t GetTypeDescent(int32_t nFontIndex) override;
+  int32_t GetWordFontIndex(FX_WORD word,
+                           int32_t charset,
+                           int32_t nFontIndex) override;
+  FX_BOOL IsLatinWord(FX_WORD word) override;
+  int32_t GetDefaultFontIndex() override;
 
  private:
   IPVT_FontMap* m_pFontMap;
index 7b43064..e0c6d33 100644 (file)
@@ -132,14 +132,13 @@ class CPDF_OCContext : public IPDF_OCContext {
   enum UsageType { View = 0, Design, Print, Export };
 
   CPDF_OCContext(CPDF_Document* pDoc, UsageType eUsageType = View);
-
-  virtual ~CPDF_OCContext();
+  ~CPDF_OCContext() override;
 
   CPDF_Document* GetDocument() const { return m_pDocument; }
 
   UsageType GetUsageType() const { return m_eUsageType; }
 
-  FX_BOOL CheckOCGVisible(const CPDF_Dictionary* pOCGDict);
+  FX_BOOL CheckOCGVisible(const CPDF_Dictionary* pOCGDict) override;
 
   void ResetOCContext();
 
@@ -589,7 +588,6 @@ class CPDF_DefaultAppearance {
 class CPDF_InterForm : public CFX_PrivateData {
  public:
   CPDF_InterForm(CPDF_Document* pDocument, FX_BOOL bUpdateAP);
-
   ~CPDF_InterForm();
 
   static void EnableUpdateAP(FX_BOOL bUpdateAP);
index 62a6019..141b3c6 100644 (file)
@@ -448,8 +448,8 @@ class IPDF_VariableText {
 
   virtual void UpdateWordPlace(CPVT_WordPlace& place) const = 0;
 
-  virtual CPVT_WordPlace AjustLineHeader(const CPVT_WordPlace& place,
-                                         FX_BOOL bPrevOrNext) const = 0;
+  virtual CPVT_WordPlace AdjustLineHeader(const CPVT_WordPlace& place,
+                                          FX_BOOL bPrevOrNext) const = 0;
 
   virtual int32_t WordPlaceToWordIndex(const CPVT_WordPlace& place) const = 0;
 
index efa001e..e65fae0 100644 (file)
@@ -9,18 +9,21 @@
 
 #include "../fxcrt/fx_coordinates.h"
 
-class IFPF_DeviceModule;
 class IFPF_FontMgr;
-class IFPF_Font;
+
 class IFPF_DeviceModule {
  public:
   virtual ~IFPF_DeviceModule() {}
   virtual void Destroy() = 0;
   virtual IFPF_FontMgr* GetFontMgr() = 0;
 };
+
 IFPF_DeviceModule* FPF_GetDeviceModule();
+
 #define FPF_MATCHFONT_REPLACEANSI 1
+
 typedef struct FPF_HFONT_ { void* pData; } * FPF_HFONT;
+
 class IFPF_Font {
  public:
   virtual void Release() = 0;
@@ -47,8 +50,9 @@ class IFPF_Font {
                                FX_DWORD dwSize) = 0;
 
  protected:
-  ~IFPF_Font() {}
+  virtual ~IFPF_Font() {}
 };
+
 class IFPF_FontMgr {
  public:
   virtual ~IFPF_FontMgr() {}
index ddc47d3..818aaac 100644 (file)
@@ -69,6 +69,8 @@ typedef FX_DWORD FX_CMYK;
 class CFX_ClipRgn;
 class CFX_DIBSource;
 class CFX_DIBitmap;
+class CStretchEngine;
+
 #define FXSYS_RGB(r, g, b) ((r) | ((g) << 8) | ((b) << 16))
 #define FXSYS_GetRValue(rgb) ((rgb)&0xff)
 #define FXSYS_GetGValue(rgb) (((rgb) >> 8) & 0xff)
@@ -281,11 +283,9 @@ class CFX_DIBSource {
 };
 class CFX_DIBitmap : public CFX_DIBSource {
  public:
-  virtual ~CFX_DIBitmap();
-
   CFX_DIBitmap();
-
-  CFX_DIBitmap(const CFX_DIBitmap& src);
+  explicit CFX_DIBitmap(const CFX_DIBitmap& src);
+  ~CFX_DIBitmap() override;
 
   FX_BOOL Create(int width,
                  int height,
@@ -295,19 +295,18 @@ class CFX_DIBitmap : public CFX_DIBSource {
 
   FX_BOOL Copy(const CFX_DIBSource* pSrc);
 
-  virtual uint8_t* GetBuffer() const { return m_pBuffer; }
-
-  virtual const uint8_t* GetScanline(int line) const {
+  // CFX_DIBSource
+  uint8_t* GetBuffer() const override { return m_pBuffer; }
+  const uint8_t* GetScanline(int line) const override {
     return m_pBuffer ? m_pBuffer + line * m_Pitch : NULL;
   }
-
-  virtual void DownSampleScanline(int line,
-                                  uint8_t* dest_scan,
-                                  int dest_bpp,
-                                  int dest_width,
-                                  FX_BOOL bFlipX,
-                                  int clip_left,
-                                  int clip_width) const;
+  void DownSampleScanline(int line,
+                          uint8_t* dest_scan,
+                          int dest_bpp,
+                          int dest_width,
+                          FX_BOOL bFlipX,
+                          int clip_left,
+                          int clip_width) const override;
 
   void TakeOver(CFX_DIBitmap* pSrcBitmap);
 
@@ -407,12 +406,12 @@ class CFX_DIBExtractor {
  private:
   CFX_DIBitmap* m_pBitmap;
 };
+
 typedef CFX_CountRef<CFX_DIBitmap> CFX_DIBitmapRef;
 class CFX_FilteredDIB : public CFX_DIBSource {
  public:
   CFX_FilteredDIB();
-
-  ~CFX_FilteredDIB();
+  ~CFX_FilteredDIB() override;
 
   void LoadSrc(const CFX_DIBSource* pSrc, FX_BOOL bAutoDropSrc = FALSE);
 
@@ -429,14 +428,15 @@ class CFX_FilteredDIB : public CFX_DIBSource {
                                     int Bpp) const = 0;
 
  protected:
-  virtual const uint8_t* GetScanline(int line) const;
-  virtual void DownSampleScanline(int line,
-                                  uint8_t* dest_scan,
-                                  int dest_bpp,
-                                  int dest_width,
-                                  FX_BOOL bFlipX,
-                                  int clip_left,
-                                  int clip_width) const;
+  // CFX_DIBSource
+  const uint8_t* GetScanline(int line) const override;
+  void DownSampleScanline(int line,
+                          uint8_t* dest_scan,
+                          int dest_bpp,
+                          int dest_width,
+                          FX_BOOL bFlipX,
+                          int clip_left,
+                          int clip_width) const override;
 
   const CFX_DIBSource* m_pSrc;
 
@@ -444,6 +444,7 @@ class CFX_FilteredDIB : public CFX_DIBSource {
 
   uint8_t* m_pScanline;
 };
+
 class IFX_ScanlineComposer {
  public:
   virtual ~IFX_ScanlineComposer() {}
@@ -514,11 +515,11 @@ class CFX_ScanlineCompositor {
   int m_CacheSize;
   FX_BOOL m_bRgbByteOrder;
 };
+
 class CFX_BitmapComposer : public IFX_ScanlineComposer {
  public:
   CFX_BitmapComposer();
-
-  ~CFX_BitmapComposer();
+  ~CFX_BitmapComposer() override;
 
   void Compose(CFX_DIBitmap* pDest,
                const CFX_ClipRgn* pClipRgn,
@@ -533,14 +534,15 @@ class CFX_BitmapComposer : public IFX_ScanlineComposer {
                void* pIccTransform = NULL,
                int blend_type = FXDIB_BLEND_NORMAL);
 
-  virtual FX_BOOL SetInfo(int width,
-                          int height,
-                          FXDIB_Format src_format,
-                          FX_DWORD* pSrcPalette);
+  // IFX_ScanlineComposer
+  FX_BOOL SetInfo(int width,
+                  int height,
+                  FXDIB_Format src_format,
+                  FX_DWORD* pSrcPalette) override;
 
-  virtual void ComposeScanline(int line,
-                               const uint8_t* scanline,
-                               const uint8_t* scan_extra_alpha);
+  void ComposeScanline(int line,
+                       const uint8_t* scanline,
+                       const uint8_t* scan_extra_alpha) override;
 
  protected:
   void DoCompose(uint8_t* dest_scan,
@@ -569,20 +571,21 @@ class CFX_BitmapComposer : public IFX_ScanlineComposer {
   uint8_t* m_pAddClipScan;
   uint8_t* m_pScanlineAlphaV;
 };
+
 class CFX_BitmapStorer : public IFX_ScanlineComposer {
  public:
   CFX_BitmapStorer();
+  ~CFX_BitmapStorer() override;
 
-  ~CFX_BitmapStorer();
+  // IFX_ScanlineComposer
+  void ComposeScanline(int line,
+                       const uint8_t* scanline,
+                       const uint8_t* scan_extra_alpha) override;
 
-  virtual void ComposeScanline(int line,
-                               const uint8_t* scanline,
-                               const uint8_t* scan_extra_alpha);
-
-  virtual FX_BOOL SetInfo(int width,
-                          int height,
-                          FXDIB_Format src_format,
-                          FX_DWORD* pSrcPalette);
+  FX_BOOL SetInfo(int width,
+                  int height,
+                  FXDIB_Format src_format,
+                  FX_DWORD* pSrcPalette) override;
 
   CFX_DIBitmap* GetBitmap() { return m_pBitmap; }
 
@@ -593,7 +596,7 @@ class CFX_BitmapStorer : public IFX_ScanlineComposer {
  private:
   CFX_DIBitmap* m_pBitmap;
 };
-class CStretchEngine;
+
 class CFX_ImageStretcher {
  public:
   CFX_ImageStretcher();
index 50cbba8..ce06a8a 100644 (file)
@@ -244,7 +244,7 @@ class IFX_AdditionalFontEnum {
 };
 class CFX_FontMapper {
  public:
-  CFX_FontMapper(CFX_FontMgr* mgr);
+  explicit CFX_FontMapper(CFX_FontMgr* mgr);
   ~CFX_FontMapper();
 
   void SetSystemFontInfo(IFX_SystemFontInfo* pFontInfo);
@@ -283,6 +283,7 @@ class CFX_FontMapper {
   IFX_FontEnumerator* m_pFontEnumerator;
   CFX_FontMgr* const m_pFontMgr;
 };
+
 class IFX_SystemFontInfo {
  public:
   static IFX_SystemFontInfo* CreateDefault(const char** pUserPaths);
@@ -307,12 +308,13 @@ class IFX_SystemFontInfo {
   virtual void* RetainFont(void* hFont) { return NULL; }
 
  protected:
-  ~IFX_SystemFontInfo() {}
+  virtual ~IFX_SystemFontInfo() {}
 };
+
 class CFX_FolderFontInfo : public IFX_SystemFontInfo {
  public:
   CFX_FolderFontInfo();
-  virtual ~CFX_FolderFontInfo();
+  ~CFX_FolderFontInfo() override;
   void AddPath(const CFX_ByteStringC& path);
 
   // IFX_SytemFontInfo:
index ef3c8f6..4cfe622 100644 (file)
 #include "fx_dib.h"
 #include "fx_font.h"
 
-class CFX_ClipRgn;
-class CFX_PathData;
-class CFX_GraphStateData;
 class CFX_Font;
 class CFX_FontMgr;
 class CFX_FontCache;
 class CFX_FaceCache;
-class CFX_RenderDevice;
 class IFX_RenderDeviceDriver;
 class CCodec_ModuleMgr;
-class IFXG_PaintModuleMgr;
 
 class CFX_GEModule {
  public:
@@ -435,8 +430,7 @@ class CFX_RenderDevice {
 class CFX_FxgeDevice : public CFX_RenderDevice {
  public:
   CFX_FxgeDevice();
-
-  ~CFX_FxgeDevice();
+  ~CFX_FxgeDevice() override;
 
   FX_BOOL Attach(CFX_DIBitmap* pBitmap,
                  int dither_bits = 0,
@@ -456,8 +450,7 @@ class CFX_FxgeDevice : public CFX_RenderDevice {
 class CFX_SkiaDevice : public CFX_RenderDevice {
  public:
   CFX_SkiaDevice();
-
-  ~CFX_SkiaDevice();
+  ~CFX_SkiaDevice() override;
 
   FX_BOOL Attach(CFX_DIBitmap* pBitmap,
                  int dither_bits = 0,
@@ -474,6 +467,7 @@ class CFX_SkiaDevice : public CFX_RenderDevice {
  protected:
   FX_BOOL m_bOwnedBitmap;
 };
+
 class IFX_RenderDeviceDriver {
  public:
   static IFX_RenderDeviceDriver* CreateFxgeDriver(
@@ -613,14 +607,16 @@ class IFX_RenderDeviceDriver {
 
   virtual void ClearDriver() {}
 };
+
 class IFX_PSOutput {
  public:
   virtual void Release() = 0;
   virtual void OutputPS(const FX_CHAR* string, int len) = 0;
 
  protected:
-  ~IFX_PSOutput() {}
+  virtual ~IFX_PSOutput() {}
 };
+
 class CPSFont;
 class CFX_PSRenderer {
  public:
index b717c7a..78de3f0 100644 (file)
@@ -166,7 +166,7 @@ class CFX_CTTGSUBTable {
     TT_uint16_t GlyphCount;
     TT_uint16_t* GlyphArray;
     TCoverageFormat1() : GlyphCount(0), GlyphArray(NULL) { CoverageFormat = 1; }
-    ~TCoverageFormat1() {
+    ~TCoverageFormat1() override {
       if (GlyphArray) {
         delete[] GlyphArray;
       }
@@ -194,7 +194,7 @@ class CFX_CTTGSUBTable {
     TCoverageFormat2() : RangeCount(0), RangeRecord(NULL) {
       CoverageFormat = 2;
     }
-    ~TCoverageFormat2() {
+    ~TCoverageFormat2() override {
       if (RangeRecord) {
         delete[] RangeRecord;
       }
@@ -220,7 +220,7 @@ class CFX_CTTGSUBTable {
     TClassDefFormat1() : StartGlyph(0), GlyphCount(0), ClassValueArray(NULL) {
       ClassFormat = 1;
     }
-    ~TClassDefFormat1() {
+    ~TClassDefFormat1() override {
       if (ClassValueArray) {
         delete[] ClassValueArray;
       }
@@ -246,7 +246,7 @@ class CFX_CTTGSUBTable {
     TClassDefFormat2() : ClassRangeCount(0), ClassRangeRecord(NULL) {
       ClassFormat = 2;
     }
-    ~TClassDefFormat2() {
+    ~TClassDefFormat2() override {
       if (ClassRangeRecord) {
         delete[] ClassRangeRecord;
       }
@@ -279,7 +279,7 @@ class CFX_CTTGSUBTable {
     TCoverageFormatBase* Coverage;
     TT_int16_t DeltaGlyphID;
     TSingleSubstFormat1() : Coverage(NULL), DeltaGlyphID(0) { SubstFormat = 1; }
-    ~TSingleSubstFormat1() { delete Coverage; }
+    ~TSingleSubstFormat1() override { delete Coverage; }
 
    private:
     TSingleSubstFormat1(const TSingleSubstFormat1&);
index 87ff0a3..1ee062e 100644 (file)
@@ -463,18 +463,23 @@ typedef struct {
   int sizes;
 } SampleEncodeInfo;
 typedef struct { FX_FLOAT decode_max, decode_min; } SampleDecodeInfo;
+
 class CPDF_SampledFunc : public CPDF_Function {
  public:
   CPDF_SampledFunc();
-  virtual ~CPDF_SampledFunc();
-  virtual FX_BOOL v_Init(CPDF_Object* pObj);
-  virtual FX_BOOL v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const;
+  ~CPDF_SampledFunc() override;
+
+  // CPDF_Function
+  FX_BOOL v_Init(CPDF_Object* pObj) override;
+  FX_BOOL v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const override;
+
   SampleEncodeInfo* m_pEncodeInfo;
   SampleDecodeInfo* m_pDecodeInfo;
   FX_DWORD m_nBitsPerSample;
   FX_DWORD m_SampleMax;
   CPDF_StreamAcc* m_pSampleStream;
 };
+
 CPDF_SampledFunc::CPDF_SampledFunc() {
   m_pSampleStream = NULL;
   m_pEncodeInfo = NULL;
@@ -620,12 +625,16 @@ FX_BOOL CPDF_SampledFunc::v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const {
   }
   return TRUE;
 }
+
 class CPDF_PSFunc : public CPDF_Function {
  public:
-  virtual FX_BOOL v_Init(CPDF_Object* pObj);
-  virtual FX_BOOL v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const;
+  // CPDF_Function
+  FX_BOOL v_Init(CPDF_Object* pObj) override;
+  FX_BOOL v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const override;
+
   CPDF_PSEngine m_PS;
 };
+
 FX_BOOL CPDF_PSFunc::v_Init(CPDF_Object* pObj) {
   CPDF_Stream* pStream = (CPDF_Stream*)pObj;
   CPDF_StreamAcc acc;
@@ -648,17 +657,22 @@ FX_BOOL CPDF_PSFunc::v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const {
   }
   return TRUE;
 }
+
 class CPDF_ExpIntFunc : public CPDF_Function {
  public:
   CPDF_ExpIntFunc();
-  virtual ~CPDF_ExpIntFunc();
-  virtual FX_BOOL v_Init(CPDF_Object* pObj);
-  virtual FX_BOOL v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const;
+  ~CPDF_ExpIntFunc() override;
+
+  // CPDF_Function
+  FX_BOOL v_Init(CPDF_Object* pObj) override;
+  FX_BOOL v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const override;
+
   FX_FLOAT m_Exponent;
   FX_FLOAT* m_pBeginValues;
   FX_FLOAT* m_pEndValues;
   int m_nOrigOutputs;
 };
+
 CPDF_ExpIntFunc::CPDF_ExpIntFunc() {
   m_pBeginValues = NULL;
   m_pEndValues = NULL;
@@ -708,17 +722,22 @@ FX_BOOL CPDF_ExpIntFunc::v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const {
     }
   return TRUE;
 }
+
 class CPDF_StitchFunc : public CPDF_Function {
  public:
   CPDF_StitchFunc();
-  virtual ~CPDF_StitchFunc();
-  virtual FX_BOOL v_Init(CPDF_Object* pObj);
-  virtual FX_BOOL v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const;
+  ~CPDF_StitchFunc() override;
+
+  // CPDF_Function
+  FX_BOOL v_Init(CPDF_Object* pObj) override;
+  FX_BOOL v_Call(FX_FLOAT* inputs, FX_FLOAT* results) const override;
+
   int m_nSubs;
   CPDF_Function** m_pSubFunctions;
   FX_FLOAT* m_pBounds;
   FX_FLOAT* m_pEncode;
 };
+
 CPDF_StitchFunc::CPDF_StitchFunc() {
   m_nSubs = 0;
   m_pSubFunctions = NULL;
index 21b2fba..74eabe1 100644 (file)
@@ -2815,7 +2815,7 @@ void CPDF_SyntaxParser::GetBinary(uint8_t* buffer, FX_DWORD size) {
 class CPDF_DataAvail final : public IPDF_DataAvail {
  public:
   CPDF_DataAvail(IFX_FileAvail* pFileAvail, IFX_FileRead* pFileRead);
-  ~CPDF_DataAvail();
+  ~CPDF_DataAvail() override;
 
   virtual FX_BOOL IsDocAvail(IFX_DownloadHints* pHints) override;
 
index 987ffd8..222f58c 100644 (file)
@@ -139,6 +139,10 @@ CFX_DIBSource* CPDF_TransferFunc::TranslateImage(const CFX_DIBSource* pSrc,
   pDest->LoadSrc(pSrc, bAutoDropSrc);
   return pDest;
 }
+
+CPDF_DIBTransferFunc::~CPDF_DIBTransferFunc() {
+}
+
 FXDIB_Format CPDF_DIBTransferFunc::GetDestFormat() {
   if (m_pSrc->IsAlphaMask()) {
     return FXDIB_8bppMask;
index d6b314d..733e24c 100644 (file)
@@ -87,7 +87,9 @@ struct _PDF_RenderItem {
   CPDF_PageObjects* m_pObjectList;
   CFX_AffineMatrix m_Matrix;
 };
+
 typedef CFX_ArrayTemplate<_PDF_RenderItem> CPDF_RenderLayer;
+
 class IPDF_ObjectRenderer {
  public:
   static IPDF_ObjectRenderer* Create(int type);
@@ -100,6 +102,7 @@ class IPDF_ObjectRenderer {
   virtual FX_BOOL Continue(IFX_Pause* pPause) = 0;
   FX_BOOL m_Result;
 };
+
 class CPDF_RenderStatus {
  public:
   CPDF_RenderStatus();
@@ -319,15 +322,20 @@ class CPDF_ProgressiveImageLoaderHandle {
   int32_t m_nDownsampleHeight;
 };
 class CFX_ImageTransformer;
+
 class CPDF_ImageRenderer : public IPDF_ObjectRenderer {
  public:
   CPDF_ImageRenderer();
-  ~CPDF_ImageRenderer();
+  ~CPDF_ImageRenderer() override;
+
+  // IPDF_ObjectRenderer
   FX_BOOL Start(CPDF_RenderStatus* pStatus,
                 const CPDF_PageObject* pObj,
                 const CFX_AffineMatrix* pObj2Device,
                 FX_BOOL bStdCS,
-                int blendType = FXDIB_BLEND_NORMAL);
+                int blendType = FXDIB_BLEND_NORMAL) override;
+  FX_BOOL Continue(IFX_Pause* pPause) override;
+
   FX_BOOL Start(CPDF_RenderStatus* pStatus,
                 const CFX_DIBSource* pDIBSource,
                 FX_ARGB bitmap_argb,
@@ -336,7 +344,6 @@ class CPDF_ImageRenderer : public IPDF_ObjectRenderer {
                 FX_DWORD flags,
                 FX_BOOL bStdCS,
                 int blendType = FXDIB_BLEND_NORMAL);
-  FX_BOOL Continue(IFX_Pause* pPause);
 
  protected:
   CPDF_RenderStatus* m_pRenderStatus;
@@ -365,6 +372,7 @@ class CPDF_ImageRenderer : public IPDF_ObjectRenderer {
   FX_BOOL DrawMaskedImage();
   FX_BOOL DrawPatternImage(const CFX_Matrix* pObj2Device);
 };
+
 class CPDF_ScaledRenderBuffer {
  public:
   CPDF_ScaledRenderBuffer();
@@ -483,10 +491,12 @@ typedef struct {
   int m_ColorKeyMin;
   int m_ColorKeyMax;
 } DIB_COMP_DATA;
+
 class CPDF_DIBSource : public CFX_DIBSource {
  public:
   CPDF_DIBSource();
-  virtual ~CPDF_DIBSource();
+  ~CPDF_DIBSource() override;
+
   FX_BOOL Load(CPDF_Document* pDoc,
                const CPDF_Stream* pStream,
                CPDF_DIBSource** ppMask,
@@ -496,17 +506,20 @@ class CPDF_DIBSource : public CFX_DIBSource {
                FX_BOOL bStdCS = FALSE,
                FX_DWORD GroupFamily = 0,
                FX_BOOL bLoadMask = FALSE);
-  virtual FX_BOOL SkipToScanline(int line, IFX_Pause* pPause) const;
-  virtual uint8_t* GetBuffer() const;
-  virtual const uint8_t* GetScanline(int line) const;
-  virtual void DownSampleScanline(int line,
-                                  uint8_t* dest_scan,
-                                  int dest_bpp,
-                                  int dest_width,
-                                  FX_BOOL bFlipX,
-                                  int clip_left,
-                                  int clip_width) const;
-  virtual void SetDownSampleSize(int dest_width, int dest_height) const;
+
+  // CFX_DIBSource
+  FX_BOOL SkipToScanline(int line, IFX_Pause* pPause) const override;
+  uint8_t* GetBuffer() const override;
+  const uint8_t* GetScanline(int line) const override;
+  void DownSampleScanline(int line,
+                          uint8_t* dest_scan,
+                          int dest_bpp,
+                          int dest_width,
+                          FX_BOOL bFlipX,
+                          int clip_left,
+                          int clip_width) const override;
+  void SetDownSampleSize(int dest_width, int dest_height) const override;
+
   CFX_DIBitmap* GetBitmap() const;
   void ReleaseBitmap(CFX_DIBitmap*) const;
   void ClearImageData();
@@ -569,22 +582,28 @@ class CPDF_DIBSource : public CFX_DIBSource {
   nonstd::unique_ptr<CFX_DIBitmap> m_pCachedBitmap;
   ICodec_ScanlineDecoder* m_pDecoder;
 };
+
 #define FPDF_HUGE_IMAGE_SIZE 60000000
 class CPDF_DIBTransferFunc : public CFX_FilteredDIB {
  public:
   CPDF_DIBTransferFunc(const CPDF_TransferFunc* pTransferFunc);
-  virtual FXDIB_Format GetDestFormat();
-  virtual FX_ARGB* GetDestPalette() { return NULL; }
-  virtual void TranslateScanline(uint8_t* dest_buf,
-                                 const uint8_t* src_buf) const;
-  virtual void TranslateDownSamples(uint8_t* dest_buf,
-                                    const uint8_t* src_buf,
-                                    int pixels,
-                                    int Bpp) const;
+  ~CPDF_DIBTransferFunc() override;
+
+  // CFX_FilteredDIB
+  FXDIB_Format GetDestFormat() override;
+  FX_ARGB* GetDestPalette() override { return NULL; }
+  void TranslateScanline(uint8_t* dest_buf,
+                         const uint8_t* src_buf) const override;
+  void TranslateDownSamples(uint8_t* dest_buf,
+                            const uint8_t* src_buf,
+                            int pixels,
+                            int Bpp) const override;
+
   const uint8_t* m_RampR;
   const uint8_t* m_RampG;
   const uint8_t* m_RampB;
 };
+
 struct _CPDF_UniqueKeyGen {
   void Generate(int count, ...);
   FX_CHAR m_Key[128];
index feedb32..cffaad9 100644 (file)
@@ -38,15 +38,19 @@ FX_BOOL FPDF_GenerateAP(CPDF_Document* pDoc, CPDF_Dictionary* pAnnotDict) {
   }
   return FALSE;
 }
+
 class CPVT_FontMap : public IPVT_FontMap {
  public:
   CPVT_FontMap(CPDF_Document* pDoc,
                CPDF_Dictionary* pResDict,
                CPDF_Font* pDefFont,
                const CFX_ByteString& sDefFontAlias);
-  virtual ~CPVT_FontMap();
-  CPDF_Font* GetPDFFont(int32_t nFontIndex);
-  CFX_ByteString GetPDFFontAlias(int32_t nFontIndex);
+  ~CPVT_FontMap() override;
+
+  // IPVT_FontMap
+  CPDF_Font* GetPDFFont(int32_t nFontIndex) override;
+  CFX_ByteString GetPDFFontAlias(int32_t nFontIndex) override;
+
   static void GetAnnotSysPDFFont(CPDF_Document* pDoc,
                                  CPDF_Dictionary* pResDict,
                                  CPDF_Font*& pSysFont,
@@ -60,6 +64,7 @@ class CPVT_FontMap : public IPVT_FontMap {
   CPDF_Font* m_pSysFont;
   CFX_ByteString m_sSysFontAlias;
 };
+
 CPVT_FontMap::CPVT_FontMap(CPDF_Document* pDoc,
                            CPDF_Dictionary* pResDict,
                            CPDF_Font* pDefFont,
index b7c8ed8..396a7d6 100644 (file)
@@ -960,10 +960,10 @@ CPVT_WordPlace CPDF_VariableText::DeleteWords(
   return PlaceRange.BeginPos;
 }
 CPVT_WordPlace CPDF_VariableText::DeleteWord(const CPVT_WordPlace& place) {
-  return ClearRightWord(AjustLineHeader(place, TRUE));
+  return ClearRightWord(AdjustLineHeader(place, TRUE));
 }
 CPVT_WordPlace CPDF_VariableText::BackSpaceWord(const CPVT_WordPlace& place) {
-  return ClearLeftWord(AjustLineHeader(place, TRUE));
+  return ClearLeftWord(AdjustLineHeader(place, TRUE));
 }
 void CPDF_VariableText::SetText(const FX_WCHAR* text,
                                 int32_t charset,
@@ -1032,7 +1032,7 @@ void CPDF_VariableText::UpdateWordPlace(CPVT_WordPlace& place) const {
   if (place.nSecIndex >= m_SectionArray.GetSize()) {
     place = GetEndWordPlace();
   }
-  place = AjustLineHeader(place, TRUE);
+  place = AdjustLineHeader(place, TRUE);
   if (CSection* pSection = m_SectionArray.GetAt(place.nSecIndex)) {
     pSection->UpdateWordPlace(place);
   }
@@ -1429,7 +1429,7 @@ int32_t CPDF_VariableText::GetHorzScale(const CPVT_WordInfo& WordInfo) {
                                             : m_nHorzScale;
 }
 void CPDF_VariableText::ClearSectionRightWords(const CPVT_WordPlace& place) {
-  CPVT_WordPlace wordplace = AjustLineHeader(place, TRUE);
+  CPVT_WordPlace wordplace = AdjustLineHeader(place, TRUE);
   if (CSection* pSection = m_SectionArray.GetAt(place.nSecIndex)) {
     for (int32_t w = pSection->m_WordArray.GetSize() - 1;
          w > wordplace.nWordIndex; w--) {
@@ -1438,8 +1438,8 @@ void CPDF_VariableText::ClearSectionRightWords(const CPVT_WordPlace& place) {
     }
   }
 }
-CPVT_WordPlace CPDF_VariableText::AjustLineHeader(const CPVT_WordPlace& place,
-                                                  FX_BOOL bPrevOrNext) const {
+CPVT_WordPlace CPDF_VariableText::AdjustLineHeader(const CPVT_WordPlace& place,
+                                                   FX_BOOL bPrevOrNext) const {
   if (place.nWordIndex < 0 && place.nLineIndex > 0) {
     return bPrevOrNext ? GetPrevWordPlace(place) : GetNextWordPlace(place);
   }
@@ -1467,7 +1467,7 @@ void CPDF_VariableText::ClearEmptySections(const CPVT_WordRange& PlaceRange) {
   }
 }
 void CPDF_VariableText::LinkLatterSection(const CPVT_WordPlace& place) {
-  CPVT_WordPlace oldplace = AjustLineHeader(place, TRUE);
+  CPVT_WordPlace oldplace = AdjustLineHeader(place, TRUE);
   if (CSection* pNextSection = m_SectionArray.GetAt(place.nSecIndex + 1)) {
     if (CSection* pSection = m_SectionArray.GetAt(oldplace.nSecIndex)) {
       for (int32_t w = 0, sz = pNextSection->m_WordArray.GetSize(); w < sz;
@@ -1484,8 +1484,8 @@ void CPDF_VariableText::LinkLatterSection(const CPVT_WordPlace& place) {
 }
 void CPDF_VariableText::ClearWords(const CPVT_WordRange& PlaceRange) {
   CPVT_WordRange NewRange;
-  NewRange.BeginPos = AjustLineHeader(PlaceRange.BeginPos, TRUE);
-  NewRange.EndPos = AjustLineHeader(PlaceRange.EndPos, TRUE);
+  NewRange.BeginPos = AdjustLineHeader(PlaceRange.BeginPos, TRUE);
+  NewRange.EndPos = AdjustLineHeader(PlaceRange.EndPos, TRUE);
   for (int32_t s = NewRange.EndPos.nSecIndex; s >= NewRange.BeginPos.nSecIndex;
        s--) {
     if (CSection* pSection = m_SectionArray.GetAt(s)) {
@@ -1513,7 +1513,8 @@ CPVT_WordPlace CPDF_VariableText::ClearLeftWord(const CPVT_WordPlace& place) {
 }
 CPVT_WordPlace CPDF_VariableText::ClearRightWord(const CPVT_WordPlace& place) {
   if (CSection* pSection = m_SectionArray.GetAt(place.nSecIndex)) {
-    CPVT_WordPlace rightplace = AjustLineHeader(GetNextWordPlace(place), FALSE);
+    CPVT_WordPlace rightplace =
+        AdjustLineHeader(GetNextWordPlace(place), FALSE);
     if (rightplace != place) {
       if (rightplace.nSecIndex != place.nSecIndex) {
         LinkLatterSection(place);
index d3010da..207daab 100644 (file)
@@ -343,6 +343,7 @@ class CPDF_EditContainer {
   CPDF_Rect m_rcPlate;
   CPVT_FloatRect m_rcContent;
 };
+
 class CPDF_VariableText : public IPDF_VariableText, private CPDF_EditContainer {
   friend class CTypeset;
   friend class CSection;
@@ -350,80 +351,102 @@ class CPDF_VariableText : public IPDF_VariableText, private CPDF_EditContainer {
 
  public:
   CPDF_VariableText();
-  virtual ~CPDF_VariableText();
+  ~CPDF_VariableText() override;
+
+  // IPDF_VariableText
   IPDF_VariableText_Provider* SetProvider(
-      IPDF_VariableText_Provider* pProvider);
-  IPDF_VariableText_Iterator* GetIterator();
-  void SetPlateRect(const CPDF_Rect& rect) {
+      IPDF_VariableText_Provider* pProvider) override;
+  IPDF_VariableText_Iterator* GetIterator() override;
+  void SetPlateRect(const CPDF_Rect& rect) override {
     CPDF_EditContainer::SetPlateRect(rect);
   }
-  void SetAlignment(int32_t nFormat = 0) { m_nAlignment = nFormat; }
-  void SetPasswordChar(FX_WORD wSubWord = '*') { m_wSubWord = wSubWord; }
-  void SetLimitChar(int32_t nLimitChar = 0) { m_nLimitChar = nLimitChar; }
-  void SetCharSpace(FX_FLOAT fCharSpace = 0.0f) { m_fCharSpace = fCharSpace; }
-  void SetHorzScale(int32_t nHorzScale = 100) { m_nHorzScale = nHorzScale; }
-  void SetMultiLine(FX_BOOL bMultiLine = TRUE) { m_bMultiLine = bMultiLine; }
-  void SetAutoReturn(FX_BOOL bAuto = TRUE) { m_bLimitWidth = bAuto; }
-  void SetFontSize(FX_FLOAT fFontSize) { m_fFontSize = fFontSize; }
-  void SetCharArray(int32_t nCharArray = 0) { m_nCharArray = nCharArray; }
-  void SetAutoFontSize(FX_BOOL bAuto = TRUE) { m_bAutoFontSize = bAuto; }
-  void SetRichText(FX_BOOL bRichText) { m_bRichText = bRichText; }
-  void SetLineLeading(FX_FLOAT fLineLeading) { m_fLineLeading = fLineLeading; }
-  void Initialize();
-  FX_BOOL IsValid() const { return m_bInitial; }
-  FX_BOOL IsRichText() const { return m_bRichText; }
-  void RearrangeAll();
-  void RearrangePart(const CPVT_WordRange& PlaceRange);
-  void ResetAll();
+  void SetAlignment(int32_t nFormat = 0) override { m_nAlignment = nFormat; }
+  void SetPasswordChar(FX_WORD wSubWord = '*') override {
+    m_wSubWord = wSubWord;
+  }
+  void SetLimitChar(int32_t nLimitChar = 0) override {
+    m_nLimitChar = nLimitChar;
+  }
+  void SetCharSpace(FX_FLOAT fCharSpace = 0.0f) override {
+    m_fCharSpace = fCharSpace;
+  }
+  void SetHorzScale(int32_t nHorzScale = 100) override {
+    m_nHorzScale = nHorzScale;
+  }
+  void SetMultiLine(FX_BOOL bMultiLine = TRUE) override {
+    m_bMultiLine = bMultiLine;
+  }
+  void SetAutoReturn(FX_BOOL bAuto = TRUE) override { m_bLimitWidth = bAuto; }
+  void SetFontSize(FX_FLOAT fFontSize) override { m_fFontSize = fFontSize; }
+  void SetCharArray(int32_t nCharArray = 0) override {
+    m_nCharArray = nCharArray;
+  }
+  void SetAutoFontSize(FX_BOOL bAuto = TRUE) override {
+    m_bAutoFontSize = bAuto;
+  }
+  void SetRichText(FX_BOOL bRichText) override { m_bRichText = bRichText; }
+  void SetLineLeading(FX_FLOAT fLineLeading) override {
+    m_fLineLeading = fLineLeading;
+  }
+  void Initialize() override;
+  FX_BOOL IsValid() const override { return m_bInitial; }
+  FX_BOOL IsRichText() const override { return m_bRichText; }
+  void RearrangeAll() override;
+  void RearrangePart(const CPVT_WordRange& PlaceRange) override;
+  void ResetAll() override;
   void SetText(const FX_WCHAR* text,
                int32_t charset = 1,
                const CPVT_SecProps* pSecProps = NULL,
-               const CPVT_WordProps* pWordProps = NULL);
+               const CPVT_WordProps* pWordProps = NULL) override;
   CPVT_WordPlace InsertWord(const CPVT_WordPlace& place,
                             FX_WORD word,
                             int32_t charset = 1,
-                            const CPVT_WordProps* pWordProps = NULL);
-  CPVT_WordPlace InsertSection(const CPVT_WordPlace& place,
-                               const CPVT_SecProps* pSecProps = NULL,
-                               const CPVT_WordProps* pWordProps = NULL);
+                            const CPVT_WordProps* pWordProps = NULL) override;
+  CPVT_WordPlace InsertSection(
+      const CPVT_WordPlace& place,
+      const CPVT_SecProps* pSecProps = NULL,
+      const CPVT_WordProps* pWordProps = NULL) override;
   CPVT_WordPlace InsertText(const CPVT_WordPlace& place,
                             const FX_WCHAR* text,
                             int32_t charset = 1,
                             const CPVT_SecProps* pSecProps = NULL,
-                            const CPVT_WordProps* pWordProps = NULL);
-  CPVT_WordPlace DeleteWords(const CPVT_WordRange& PlaceRange);
-  CPVT_WordPlace DeleteWord(const CPVT_WordPlace& place);
-  CPVT_WordPlace BackSpaceWord(const CPVT_WordPlace& place);
-  const CPDF_Rect& GetPlateRect() const {
+                            const CPVT_WordProps* pWordProps = NULL) override;
+  CPVT_WordPlace DeleteWords(const CPVT_WordRange& PlaceRange) override;
+  CPVT_WordPlace DeleteWord(const CPVT_WordPlace& place) override;
+  CPVT_WordPlace BackSpaceWord(const CPVT_WordPlace& place) override;
+  const CPDF_Rect& GetPlateRect() const override {
     return CPDF_EditContainer::GetPlateRect();
   }
-  CPDF_Rect GetContentRect() const;
-  int32_t GetTotalWords() const;
-  FX_FLOAT GetFontSize() const { return m_fFontSize; }
-  int32_t GetAlignment() const { return m_nAlignment; }
-  int32_t GetCharArray() const { return m_nCharArray; }
-  int32_t GetLimitChar() const { return m_nLimitChar; }
-  FX_BOOL IsMultiLine() const { return m_bMultiLine; }
-  int32_t GetHorzScale() const { return m_nHorzScale; }
-  FX_FLOAT GetCharSpace() const { return m_fCharSpace; }
-
-  CPVT_WordPlace GetBeginWordPlace() const;
-  CPVT_WordPlace GetEndWordPlace() const;
-  CPVT_WordPlace GetPrevWordPlace(const CPVT_WordPlace& place) const;
-  CPVT_WordPlace GetNextWordPlace(const CPVT_WordPlace& place) const;
-  CPVT_WordPlace SearchWordPlace(const CPDF_Point& point) const;
+  CPDF_Rect GetContentRect() const override;
+  int32_t GetTotalWords() const override;
+  FX_FLOAT GetFontSize() const override { return m_fFontSize; }
+  int32_t GetAlignment() const override { return m_nAlignment; }
+  FX_WORD GetPasswordChar() const override { return GetSubWord(); }
+  int32_t GetCharArray() const override { return m_nCharArray; }
+  int32_t GetLimitChar() const override { return m_nLimitChar; }
+  FX_BOOL IsMultiLine() const override { return m_bMultiLine; }
+  int32_t GetHorzScale() const override { return m_nHorzScale; }
+  FX_FLOAT GetCharSpace() const override { return m_fCharSpace; }
+  CPVT_WordPlace GetBeginWordPlace() const override;
+  CPVT_WordPlace GetEndWordPlace() const override;
+  CPVT_WordPlace GetPrevWordPlace(const CPVT_WordPlace& place) const override;
+  CPVT_WordPlace GetNextWordPlace(const CPVT_WordPlace& place) const override;
+  CPVT_WordPlace SearchWordPlace(const CPDF_Point& point) const override;
   CPVT_WordPlace GetUpWordPlace(const CPVT_WordPlace& place,
-                                const CPDF_Point& point) const;
+                                const CPDF_Point& point) const override;
   CPVT_WordPlace GetDownWordPlace(const CPVT_WordPlace& place,
-                                  const CPDF_Point& point) const;
-  CPVT_WordPlace GetLineBeginPlace(const CPVT_WordPlace& place) const;
-  CPVT_WordPlace GetLineEndPlace(const CPVT_WordPlace& place) const;
-  CPVT_WordPlace GetSectionBeginPlace(const CPVT_WordPlace& place) const;
-  CPVT_WordPlace GetSectionEndPlace(const CPVT_WordPlace& place) const;
-  void UpdateWordPlace(CPVT_WordPlace& place) const;
-  int32_t WordPlaceToWordIndex(const CPVT_WordPlace& place) const;
-  CPVT_WordPlace WordIndexToWordPlace(int32_t index) const;
-  FX_WORD GetPasswordChar() const { return GetSubWord(); }
+                                  const CPDF_Point& point) const override;
+  CPVT_WordPlace GetLineBeginPlace(const CPVT_WordPlace& place) const override;
+  CPVT_WordPlace GetLineEndPlace(const CPVT_WordPlace& place) const override;
+  CPVT_WordPlace GetSectionBeginPlace(
+      const CPVT_WordPlace& place) const override;
+  CPVT_WordPlace GetSectionEndPlace(const CPVT_WordPlace& place) const override;
+  void UpdateWordPlace(CPVT_WordPlace& place) const override;
+  CPVT_WordPlace AdjustLineHeader(const CPVT_WordPlace& place,
+                                  FX_BOOL bPrevOrNext) const override;
+  int32_t WordPlaceToWordIndex(const CPVT_WordPlace& place) const override;
+  CPVT_WordPlace WordIndexToWordPlace(int32_t index) const override;
+
   FX_WORD GetSubWord() const { return m_wSubWord; }
 
  private:
@@ -437,7 +460,6 @@ class CPDF_VariableText : public IPDF_VariableText, private CPDF_EditContainer {
   int32_t GetDefaultFontIndex();
   FX_BOOL IsLatinWord(FX_WORD word);
 
- private:
   CPVT_WordPlace AddSection(const CPVT_WordPlace& place,
                             const CPVT_SectionInfo& secinfo);
   CPVT_WordPlace AddLine(const CPVT_WordPlace& place,
@@ -479,8 +501,7 @@ class CPDF_VariableText : public IPDF_VariableText, private CPDF_EditContainer {
   int32_t GetAlignment(const CPVT_SectionInfo& SecInfo);
 
   void ClearSectionRightWords(const CPVT_WordPlace& place);
-  CPVT_WordPlace AjustLineHeader(const CPVT_WordPlace& place,
-                                 FX_BOOL bPrevOrNext) const;
+
   FX_BOOL ClearEmptySection(const CPVT_WordPlace& place);
   void ClearEmptySections(const CPVT_WordRange& PlaceRange);
   void LinkLatterSection(const CPVT_WordPlace& place);
@@ -494,10 +515,8 @@ class CPDF_VariableText : public IPDF_VariableText, private CPDF_EditContainer {
   FX_BOOL IsBigger(FX_FLOAT fFontSize);
   CPVT_FloatRect RearrangeSections(const CPVT_WordRange& PlaceRange);
 
- private:
   void ResetSectionArray();
 
- private:
   CPVT_ArrayTemplate<CSection*> m_SectionArray;
   int32_t m_nLimitChar;
   int32_t m_nCharArray;
@@ -517,24 +536,27 @@ class CPDF_VariableText : public IPDF_VariableText, private CPDF_EditContainer {
   IPDF_VariableText_Provider* m_pVTProvider;
   CPDF_VariableText_Iterator* m_pVTIterator;
 };
+
 class CPDF_VariableText_Iterator : public IPDF_VariableText_Iterator {
  public:
   CPDF_VariableText_Iterator(CPDF_VariableText* pVT);
-  virtual ~CPDF_VariableText_Iterator();
-  FX_BOOL NextWord();
-  FX_BOOL PrevWord();
-  FX_BOOL NextLine();
-  FX_BOOL PrevLine();
-  FX_BOOL NextSection();
-  FX_BOOL PrevSection();
-  FX_BOOL SetWord(const CPVT_Word& word);
-  FX_BOOL GetWord(CPVT_Word& word) const;
-  FX_BOOL GetLine(CPVT_Line& line) const;
-  FX_BOOL GetSection(CPVT_Section& section) const;
-  FX_BOOL SetSection(const CPVT_Section& section);
-  void SetAt(int32_t nWordIndex);
-  void SetAt(const CPVT_WordPlace& place);
-  const CPVT_WordPlace& GetAt() const { return m_CurPos; };
+  ~CPDF_VariableText_Iterator() override;
+
+  // IPDF_VariableText_Iterator
+  FX_BOOL NextWord() override;
+  FX_BOOL PrevWord() override;
+  FX_BOOL NextLine() override;
+  FX_BOOL PrevLine() override;
+  FX_BOOL NextSection() override;
+  FX_BOOL PrevSection() override;
+  FX_BOOL SetWord(const CPVT_Word& word) override;
+  FX_BOOL GetWord(CPVT_Word& word) const override;
+  FX_BOOL GetLine(CPVT_Line& line) const override;
+  FX_BOOL GetSection(CPVT_Section& section) const override;
+  FX_BOOL SetSection(const CPVT_Section& section) override;
+  void SetAt(int32_t nWordIndex) override;
+  void SetAt(const CPVT_WordPlace& place) override;
+  const CPVT_WordPlace& GetAt() const override { return m_CurPos; };
 
  private:
   CPVT_WordPlace m_CurPos;
index 7cf3680..de6854e 100644 (file)
 #include "../../include/fpdfdoc/fpdf_tagged.h"
 
 class CPDF_StructElementImpl;
+
 class CPDF_StructTreeImpl : public CPDF_StructTree {
  public:
-  CPDF_StructTreeImpl(const CPDF_Document* pDoc);
-  ~CPDF_StructTreeImpl();
-  int CountTopElements() const { return m_Kids.GetSize(); }
-  CPDF_StructElement* GetTopElement(int i) const {
+  explicit CPDF_StructTreeImpl(const CPDF_Document* pDoc);
+  ~CPDF_StructTreeImpl() override;
+
+  // CPDF_StructTree
+  int CountTopElements() const override { return m_Kids.GetSize(); }
+  CPDF_StructElement* GetTopElement(int i) const override {
     return (CPDF_StructElement*)m_Kids.GetAt(i);
   }
+
   void LoadDocTree();
   void LoadPageTree(const CPDF_Dictionary* pPageDict);
   CPDF_StructElementImpl* AddPageNode(CPDF_Dictionary* pElement,
@@ -33,46 +37,48 @@ class CPDF_StructTreeImpl : public CPDF_StructTree {
   CFX_ArrayTemplate<CPDF_StructElementImpl*> m_Kids;
   friend class CPDF_StructElementImpl;
 };
+
 class CPDF_StructElementImpl final : public CPDF_StructElement {
  public:
   CPDF_StructElementImpl(CPDF_StructTreeImpl* pTree,
                          CPDF_StructElementImpl* pParent,
                          CPDF_Dictionary* pDict);
-  CPDF_StructTree* GetTree() const { return m_pTree; }
-  const CFX_ByteString& GetType() const { return m_Type; }
-  CPDF_StructElement* GetParent() const { return m_pParent; }
-  CPDF_Dictionary* GetDict() const { return m_pDict; }
-  int CountKids() const { return m_Kids.GetSize(); }
-  const CPDF_StructKid& GetKid(int index) const {
+
+  // CPDF_StructTreeImpl
+  CPDF_StructTree* GetTree() const override { return m_pTree; }
+  const CFX_ByteString& GetType() const override { return m_Type; }
+  CPDF_StructElement* GetParent() const override { return m_pParent; }
+  CPDF_Dictionary* GetDict() const override { return m_pDict; }
+  int CountKids() const override { return m_Kids.GetSize(); }
+  const CPDF_StructKid& GetKid(int index) const override {
     return m_Kids.GetData()[index];
   }
-  CFX_PtrArray* GetObjectArray() { return &m_ObjectArray; }
-
+  CFX_PtrArray* GetObjectArray() override { return &m_ObjectArray; }
   CPDF_Object* GetAttr(const CFX_ByteStringC& owner,
                        const CFX_ByteStringC& name,
                        FX_BOOL bInheritable = FALSE,
-                       FX_FLOAT fLevel = 0.0F);
-
+                       FX_FLOAT fLevel = 0.0F) override;
   CFX_ByteString GetName(const CFX_ByteStringC& owner,
                          const CFX_ByteStringC& name,
                          const CFX_ByteStringC& default_value,
                          FX_BOOL bInheritable = FALSE,
-                         int subindex = -1);
+                         int subindex = -1) override;
   FX_ARGB GetColor(const CFX_ByteStringC& owner,
                    const CFX_ByteStringC& name,
                    FX_ARGB default_value,
                    FX_BOOL bInheritable = FALSE,
-                   int subindex = -1);
+                   int subindex = -1) override;
   FX_FLOAT GetNumber(const CFX_ByteStringC& owner,
                      const CFX_ByteStringC& name,
                      FX_FLOAT default_value,
                      FX_BOOL bInheritable = FALSE,
-                     int subindex = -1);
+                     int subindex = -1) override;
   int GetInteger(const CFX_ByteStringC& owner,
                  const CFX_ByteStringC& name,
                  int default_value,
                  FX_BOOL bInheritable = FALSE,
-                 int subindex = -1);
+                 int subindex = -1) override;
+
   CFX_PtrArray m_ObjectArray;
   void LoadKids(CPDF_Dictionary* pDict);
   void LoadKid(FX_DWORD PageObjNum, CPDF_Object* pObj, CPDF_StructKid* pKid);
@@ -84,7 +90,7 @@ class CPDF_StructElementImpl final : public CPDF_StructElement {
   void Release();
 
  protected:
-  ~CPDF_StructElementImpl();
+  ~CPDF_StructElementImpl() override;
 
   CPDF_StructTreeImpl* m_pTree;
   CFX_ByteString m_Type;
index 9e7073d..b0c79cd 100644 (file)
@@ -7,7 +7,6 @@
 #ifndef CORE_SRC_FPDFTEXT_TEXT_INT_H_
 #define CORE_SRC_FPDFTEXT_TEXT_INT_H_
 
-class CPDF_TextPage;
 class CPDF_LinkExtract;
 class CPDF_TextPageFind;
 class CPDF_DocProgressiveSearch;
@@ -42,53 +41,52 @@ typedef struct {
   CFX_AffineMatrix m_formMatrix;
 } PDFTEXT_Obj;
 typedef CFX_ArrayTemplate<PDFTEXT_Obj> LINEOBJ;
+
 class CPDF_TextPage : public IPDF_TextPage {
  public:
   CPDF_TextPage(const CPDF_Page* pPage, int flags = 0);
   CPDF_TextPage(const CPDF_PageObjects* pPage, int flags = 0);
   CPDF_TextPage(const CPDF_Page* pPage, CPDFText_ParseOptions ParserOptions);
-  virtual FX_BOOL ParseTextPage();
-  virtual void NormalizeObjects(FX_BOOL bNormalize);
-  virtual FX_BOOL IsParsered() const { return m_IsParsered; }
-  virtual ~CPDF_TextPage(){};
-
- public:
-  virtual int CharIndexFromTextIndex(int TextIndex) const;
-  virtual int TextIndexFromCharIndex(int CharIndex) const;
-  virtual int CountChars() const;
-  virtual void GetCharInfo(int index, FPDF_CHAR_INFO& info) const;
-  virtual void GetRectArray(int start,
-                            int nCount,
-                            CFX_RectArray& rectArray) const;
-  virtual int GetIndexAtPos(CPDF_Point point,
-                            FX_FLOAT xTolerance,
-                            FX_FLOAT yTolerance) const;
-  virtual int GetIndexAtPos(FX_FLOAT x,
-                            FX_FLOAT y,
-                            FX_FLOAT xTolerance,
-                            FX_FLOAT yTolerance) const;
-  virtual CFX_WideString GetTextByRect(const CFX_FloatRect& rect) const;
-  virtual void GetRectsArrayByRect(const CFX_FloatRect& rect,
-                                   CFX_RectArray& resRectArray) const;
-  virtual CFX_WideString GetPageText(int start = 0, int nCount = -1) const;
-
-  virtual int CountRects(int start, int nCount);
-  virtual void GetRect(int rectIndex,
-                       FX_FLOAT& left,
-                       FX_FLOAT& top,
-                       FX_FLOAT& right,
-                       FX_FLOAT& bottom) const;
-  virtual FX_BOOL GetBaselineRotate(int rectIndex, int& Rotate);
-  virtual FX_BOOL GetBaselineRotate(const CFX_FloatRect& rect, int& Rotate);
-  virtual int CountBoundedSegments(FX_FLOAT left,
-                                   FX_FLOAT top,
-                                   FX_FLOAT right,
-                                   FX_FLOAT bottom,
-                                   FX_BOOL bContains = FALSE);
-  virtual void GetBoundedSegment(int index, int& start, int& count) const;
-  virtual int GetWordBreak(int index, int direction) const;
+  ~CPDF_TextPage() override{};
+
+  // IPDF_TextPage
+  FX_BOOL ParseTextPage() override;
+  void NormalizeObjects(FX_BOOL bNormalize) override;
+  FX_BOOL IsParsered() const override { return m_IsParsered; }
+  int CharIndexFromTextIndex(int TextIndex) const override;
+  int TextIndexFromCharIndex(int CharIndex) const override;
+  int CountChars() const override;
+  void GetCharInfo(int index, FPDF_CHAR_INFO& info) const override;
+  void GetRectArray(int start,
+                    int nCount,
+                    CFX_RectArray& rectArray) const override;
+  int GetIndexAtPos(CPDF_Point point,
+                    FX_FLOAT xTolerance,
+                    FX_FLOAT yTolerance) const override;
+  int GetIndexAtPos(FX_FLOAT x,
+                    FX_FLOAT y,
+                    FX_FLOAT xTolerance,
+                    FX_FLOAT yTolerance) const override;
+  CFX_WideString GetTextByRect(const CFX_FloatRect& rect) const override;
+  void GetRectsArrayByRect(const CFX_FloatRect& rect,
+                           CFX_RectArray& resRectArray) const override;
+  CFX_WideString GetPageText(int start = 0, int nCount = -1) const override;
+  int CountRects(int start, int nCount) override;
+  void GetRect(int rectIndex,
+               FX_FLOAT& left,
+               FX_FLOAT& top,
+               FX_FLOAT& right,
+               FX_FLOAT& bottom) const override;
+  FX_BOOL GetBaselineRotate(int rectIndex, int& Rotate) override;
+  FX_BOOL GetBaselineRotate(const CFX_FloatRect& rect, int& Rotate) override;
+  int CountBoundedSegments(FX_FLOAT left,
+                           FX_FLOAT top,
+                           FX_FLOAT right,
+                           FX_FLOAT bottom,
+                           FX_BOOL bContains = FALSE) override;
+  void GetBoundedSegment(int index, int& start, int& count) const override;
+  int GetWordBreak(int index, int direction) const override;
 
- public:
   const PAGECHAR_InfoArray* GetCharList() const { return &m_charList; }
   static FX_BOOL IsRectIntersect(const CFX_FloatRect& rect1,
                                  const CFX_FloatRect& rect2);
@@ -147,21 +145,21 @@ class CPDF_TextPage : public IPDF_TextPage {
   int32_t m_TextlineDir;
   CFX_FloatRect m_CurlineRect;
 };
+
 class CPDF_TextPageFind : public IPDF_TextPageFind {
  public:
   CPDF_TextPageFind(const IPDF_TextPage* pTextPage);
-  virtual ~CPDF_TextPageFind(){};
-
- public:
-  virtual FX_BOOL FindFirst(const CFX_WideString& findwhat,
-                            int flags,
-                            int startPos = 0);
-  virtual FX_BOOL FindNext();
-  virtual FX_BOOL FindPrev();
-
-  virtual void GetRectArray(CFX_RectArray& rects) const;
-  virtual int GetCurOrder() const;
-  virtual int GetMatchedCount() const;
+  ~CPDF_TextPageFind() override{};
+
+  // IPDF_TextPageFind
+  FX_BOOL FindFirst(const CFX_WideString& findwhat,
+                    int flags,
+                    int startPos = 0) override;
+  FX_BOOL FindNext() override;
+  FX_BOOL FindPrev() override;
+  void GetRectArray(CFX_RectArray& rects) const override;
+  int GetCurOrder() const override;
+  int GetMatchedCount() const override;
 
  protected:
   void ExtractFindWhat(const CFX_WideString& findwhat);
@@ -203,19 +201,22 @@ class CPDF_LinkExt {
   CFX_WideString m_strUrl;
   virtual ~CPDF_LinkExt(){};
 };
+
 typedef CFX_ArrayTemplate<CPDF_LinkExt*> LINK_InfoArray;
+
 class CPDF_LinkExtract : public IPDF_LinkExtract {
  public:
   CPDF_LinkExtract();
-  virtual ~CPDF_LinkExtract();
-  virtual FX_BOOL ExtractLinks(const IPDF_TextPage* pTextPage);
-  virtual FX_BOOL IsExtract() const { return m_IsParserd; }
+  ~CPDF_LinkExtract() override;
 
- public:
-  virtual int CountLinks() const;
-  virtual CFX_WideString GetURL(int index) const;
-  virtual void GetBoundedSegment(int index, int& start, int& count) const;
-  virtual void GetRects(int index, CFX_RectArray& rects) const;
+  // IPDF_LinkExtract
+  FX_BOOL ExtractLinks(const IPDF_TextPage* pTextPage) override;
+  int CountLinks() const override;
+  CFX_WideString GetURL(int index) const override;
+  void GetBoundedSegment(int index, int& start, int& count) const override;
+  void GetRects(int index, CFX_RectArray& rects) const override;
+
+  FX_BOOL IsExtract() const { return m_IsParserd; }
 
  protected:
   void parserLink();
@@ -230,6 +231,7 @@ class CPDF_LinkExtract : public IPDF_LinkExtract {
   CFX_WideString m_strPageText;
   FX_BOOL m_IsParserd;
 };
+
 FX_STRSIZE FX_Unicode_GetNormalization(FX_WCHAR wch, FX_WCHAR* pDst);
 void NormalizeString(CFX_WideString& str);
 void NormalizeCompositeChar(FX_WCHAR wChar, CFX_WideString& sDest);
index e944969..9fe77a4 100644 (file)
@@ -31,36 +31,29 @@ class CCodec_BasicModule : public ICodec_BasicModule {
                                                          int nComps,
                                                          int bpc);
 };
+
 struct CCodec_ImageDataCache {
   int m_Width, m_Height;
   int m_nCachedLines;
   uint8_t m_Data;
 };
+
 class CCodec_ScanlineDecoder : public ICodec_ScanlineDecoder {
  public:
   CCodec_ScanlineDecoder();
-
-  virtual ~CCodec_ScanlineDecoder();
-
-  virtual FX_DWORD GetSrcOffset() { return -1; }
-
-  virtual void DownScale(int dest_width, int dest_height);
-
-  uint8_t* GetScanline(int line);
-
-  FX_BOOL SkipToScanline(int line, IFX_Pause* pPause);
-
-  int GetWidth() { return m_OutputWidth; }
-
-  int GetHeight() { return m_OutputHeight; }
-
-  int CountComps() { return m_nComps; }
-
-  int GetBPC() { return m_bpc; }
-
-  FX_BOOL IsColorTransformed() { return m_bColorTransformed; }
-
-  void ClearImageData() {
+  ~CCodec_ScanlineDecoder() override;
+
+  // ICodec_ScanlineDecoder
+  FX_DWORD GetSrcOffset() override { return -1; }
+  void DownScale(int dest_width, int dest_height) override;
+  uint8_t* GetScanline(int line) override;
+  FX_BOOL SkipToScanline(int line, IFX_Pause* pPause) override;
+  int GetWidth() override { return m_OutputWidth; }
+  int GetHeight() override { return m_OutputHeight; }
+  int CountComps() override { return m_nComps; }
+  int GetBPC() override { return m_bpc; }
+  FX_BOOL IsColorTransformed() override { return m_bColorTransformed; }
+  void ClearImageData() override {
     if (m_pDataCache) {
       FX_Free(m_pDataCache);
     }
@@ -100,6 +93,7 @@ class CCodec_ScanlineDecoder : public ICodec_ScanlineDecoder {
 
   CCodec_ImageDataCache* m_pDataCache;
 };
+
 class CCodec_FaxModule : public ICodec_FaxModule {
  public:
   virtual ICodec_ScanlineDecoder* CreateDecoder(const uint8_t* src_buf,
@@ -119,6 +113,7 @@ class CCodec_FaxModule : public ICodec_FaxModule {
                  uint8_t*& dest_buf,
                  FX_DWORD& dest_size);
 };
+
 class CCodec_FlateModule : public ICodec_FlateModule {
  public:
   virtual ICodec_ScanlineDecoder* CreateDecoder(const uint8_t* src_buf,
@@ -155,6 +150,7 @@ class CCodec_FlateModule : public ICodec_FlateModule {
                          uint8_t*& dest_buf,
                          FX_DWORD& dest_size);
 };
+
 class CCodec_JpegModule : public ICodec_JpegModule {
  public:
   CCodec_JpegModule() : m_pExtProvider(NULL) {}
@@ -244,6 +240,7 @@ class CCodec_IccModule : public ICodec_IccModule {
                       Icc_CLASS ic,
                       CFX_BinaryBuf* pTransformKey);
 };
+
 class CCodec_JpxModule : public ICodec_JpxModule {
  public:
   CCodec_JpxModule();
@@ -262,6 +259,7 @@ class CCodec_JpxModule : public ICodec_JpxModule {
                  uint8_t* offsets);
   void DestroyDecoder(void* ctx);
 };
+
 class CPDF_Jbig2Interface : public CJBig2_Module {
  public:
   virtual void* JBig2_Malloc(FX_DWORD dwSize) {
@@ -288,6 +286,7 @@ class CPDF_Jbig2Interface : public CJBig2_Module {
   }
   virtual void JBig2_Free(void* pMem) { FX_Free(pMem); }
 };
+
 class CCodec_Jbig2Context {
  public:
   CCodec_Jbig2Context();
@@ -309,7 +308,9 @@ class CCodec_Jbig2Context {
 class CCodec_Jbig2Module : public ICodec_Jbig2Module {
  public:
   CCodec_Jbig2Module(){};
-  ~CCodec_Jbig2Module();
+  ~CCodec_Jbig2Module() override;
+
+  // ICodec_Jbig2Module
   FX_BOOL Decode(FX_DWORD width,
                  FX_DWORD height,
                  const uint8_t* src_buf,
@@ -317,13 +318,13 @@ class CCodec_Jbig2Module : public ICodec_Jbig2Module {
                  const uint8_t* global_data,
                  FX_DWORD global_size,
                  uint8_t* dest_buf,
-                 FX_DWORD dest_pitch);
+                 FX_DWORD dest_pitch) override;
   FX_BOOL Decode(IFX_FileRead* file_ptr,
                  FX_DWORD& width,
                  FX_DWORD& height,
                  FX_DWORD& pitch,
-                 uint8_t*& dest_buf);
-  void* CreateJbig2Context();
+                 uint8_t*& dest_buf) override;
+  void* CreateJbig2Context() override;
   FXCODEC_STATUS StartDecode(void* pJbig2Context,
                              FX_DWORD width,
                              FX_DWORD height,
@@ -333,21 +334,21 @@ class CCodec_Jbig2Module : public ICodec_Jbig2Module {
                              FX_DWORD global_size,
                              uint8_t* dest_buf,
                              FX_DWORD dest_pitch,
-                             IFX_Pause* pPause);
-
+                             IFX_Pause* pPause) override;
   FXCODEC_STATUS StartDecode(void* pJbig2Context,
                              IFX_FileRead* file_ptr,
                              FX_DWORD& width,
                              FX_DWORD& height,
                              FX_DWORD& pitch,
                              uint8_t*& dest_buf,
-                             IFX_Pause* pPause);
-  FXCODEC_STATUS ContinueDecode(void* pJbig2Context, IFX_Pause* pPause);
-  void DestroyJbig2Context(void* pJbig2Context);
-  CPDF_Jbig2Interface m_Module;
-  std::list<CJBig2_CachePair> m_SymbolDictCache;
+                             IFX_Pause* pPause) override;
+  FXCODEC_STATUS ContinueDecode(void* pJbig2Context,
+                                IFX_Pause* pPause) override;
+  void DestroyJbig2Context(void* pJbig2Context) override;
 
  private:
+  CPDF_Jbig2Interface m_Module;
+  std::list<CJBig2_CachePair> m_SymbolDictCache;
 };
 
 struct DecodeData {
index 806cac1..4ed02dc 100644 (file)
@@ -217,17 +217,20 @@ FX_BOOL CCodec_BasicModule::A85Encode(const uint8_t* src_buf,
 class CCodec_RLScanlineDecoder : public CCodec_ScanlineDecoder {
  public:
   CCodec_RLScanlineDecoder();
-  virtual ~CCodec_RLScanlineDecoder();
+  ~CCodec_RLScanlineDecoder() override;
+
   FX_BOOL Create(const uint8_t* src_buf,
                  FX_DWORD src_size,
                  int width,
                  int height,
                  int nComps,
                  int bpc);
-  virtual void v_DownScale(int dest_width, int dest_height) {}
-  virtual FX_BOOL v_Rewind();
-  virtual uint8_t* v_GetNextLine();
-  virtual FX_DWORD GetSrcOffset() { return m_SrcOffset; }
+
+  // CCodec_ScanlineDecoder
+  void v_DownScale(int dest_width, int dest_height) override {}
+  FX_BOOL v_Rewind() override;
+  uint8_t* v_GetNextLine() override;
+  FX_DWORD GetSrcOffset() override { return m_SrcOffset; }
 
  protected:
   FX_BOOL CheckDestSize();
index 4260309..34c07ac 100644 (file)
@@ -455,10 +455,12 @@ FX_BOOL _FaxGet1DLine(const uint8_t* src_buf,
   }
   return TRUE;
 }
+
 class CCodec_FaxDecoder : public CCodec_ScanlineDecoder {
  public:
   CCodec_FaxDecoder();
-  virtual ~CCodec_FaxDecoder();
+  ~CCodec_FaxDecoder() override;
+
   FX_BOOL Create(const uint8_t* src_buf,
                  FX_DWORD src_size,
                  int width,
@@ -469,10 +471,13 @@ class CCodec_FaxDecoder : public CCodec_ScanlineDecoder {
                  FX_BOOL BlackIs1,
                  int Columns,
                  int Rows);
-  virtual void v_DownScale(int dest_width, int dest_height) {}
-  virtual FX_BOOL v_Rewind();
-  virtual uint8_t* v_GetNextLine();
-  virtual FX_DWORD GetSrcOffset();
+
+  // CCodec_ScanlineDecoder
+  void v_DownScale(int dest_width, int dest_height) override {}
+  FX_BOOL v_Rewind() override;
+  uint8_t* v_GetNextLine() override;
+  FX_DWORD GetSrcOffset() override;
+
   int m_Encoding, m_bEndOfLine, m_bByteAlign, m_bBlack;
   int bitpos;
   const uint8_t* m_pSrcBuf;
@@ -480,6 +485,7 @@ class CCodec_FaxDecoder : public CCodec_ScanlineDecoder {
   uint8_t* m_pScanlineBuf;
   uint8_t* m_pRefBuf;
 };
+
 CCodec_FaxDecoder::CCodec_FaxDecoder() {
   m_pScanlineBuf = NULL;
   m_pRefBuf = NULL;
index 91d28b0..a4b37c1 100644 (file)
@@ -603,10 +603,12 @@ static FX_BOOL TIFF_Predictor(uint8_t*& data_buf,
   }
   return TRUE;
 }
+
 class CCodec_FlateScanlineDecoder : public CCodec_ScanlineDecoder {
  public:
   CCodec_FlateScanlineDecoder();
-  ~CCodec_FlateScanlineDecoder();
+  ~CCodec_FlateScanlineDecoder() override;
+
   void Create(const uint8_t* src_buf,
               FX_DWORD src_size,
               int width,
@@ -617,11 +619,14 @@ class CCodec_FlateScanlineDecoder : public CCodec_ScanlineDecoder {
               int Colors,
               int BitsPerComponent,
               int Columns);
-  virtual void Destroy() { delete this; }
-  virtual void v_DownScale(int dest_width, int dest_height) {}
-  virtual FX_BOOL v_Rewind();
-  virtual uint8_t* v_GetNextLine();
-  virtual FX_DWORD GetSrcOffset();
+  void Destroy() { delete this; }
+
+  // CCodec_ScanlineDecoder
+  void v_DownScale(int dest_width, int dest_height) override {}
+  FX_BOOL v_Rewind() override;
+  uint8_t* v_GetNextLine() override;
+  FX_DWORD GetSrcOffset() override;
+
   void* m_pFlate;
   const uint8_t* m_SrcBuf;
   FX_DWORD m_SrcSize;
@@ -632,6 +637,7 @@ class CCodec_FlateScanlineDecoder : public CCodec_ScanlineDecoder {
   int m_Predictor;
   int m_Colors, m_BitsPerComponent, m_Columns, m_PredictPitch, m_LeftOver;
 };
+
 CCodec_FlateScanlineDecoder::CCodec_FlateScanlineDecoder() {
   m_pFlate = NULL;
   m_pScanline = NULL;
index 681678c..779e7f6 100644 (file)
@@ -287,10 +287,12 @@ static FX_BOOL _JpegLoadInfo(const uint8_t* src_buf,
   jpeg_destroy_decompress(&cinfo);
   return TRUE;
 }
+
 class CCodec_JpegDecoder : public CCodec_ScanlineDecoder {
  public:
   CCodec_JpegDecoder();
-  ~CCodec_JpegDecoder();
+  ~CCodec_JpegDecoder() override;
+
   FX_BOOL Create(const uint8_t* src_buf,
                  FX_DWORD src_size,
                  int width,
@@ -298,11 +300,16 @@ class CCodec_JpegDecoder : public CCodec_ScanlineDecoder {
                  int nComps,
                  FX_BOOL ColorTransform,
                  IFX_JpegProvider* pJP);
-  virtual void Destroy() { delete this; }
-  virtual void v_DownScale(int dest_width, int dest_height);
-  virtual FX_BOOL v_Rewind();
-  virtual uint8_t* v_GetNextLine();
-  virtual FX_DWORD GetSrcOffset();
+  void Destroy() { delete this; }
+
+  // CCodec_ScanlineDecoder
+  void v_DownScale(int dest_width, int dest_height) override;
+  FX_BOOL v_Rewind() override;
+  uint8_t* v_GetNextLine() override;
+  FX_DWORD GetSrcOffset() override;
+
+  FX_BOOL InitDecode();
+
   jmp_buf m_JmpBuf;
   struct jpeg_decompress_struct cinfo;
   struct jpeg_error_mgr jerr;
@@ -310,14 +317,17 @@ class CCodec_JpegDecoder : public CCodec_ScanlineDecoder {
   const uint8_t* m_SrcBuf;
   FX_DWORD m_SrcSize;
   uint8_t* m_pScanlineBuf;
-  FX_BOOL InitDecode();
-  FX_BOOL m_bInited, m_bStarted, m_bJpegTransform;
+
+  FX_BOOL m_bInited;
+  FX_BOOL m_bStarted;
+  FX_BOOL m_bJpegTransform;
 
  protected:
   IFX_JpegProvider* m_pExtProvider;
   void* m_pExtContext;
   FX_DWORD m_nDefaultScaleDenom;
 };
+
 CCodec_JpegDecoder::CCodec_JpegDecoder() {
   m_pScanlineBuf = NULL;
   m_DownScale = 1;
index 7d14cb0..a712fa3 100644 (file)
@@ -30,10 +30,11 @@ class IFXCRT_FileAccess {
   virtual FX_BOOL Truncate(FX_FILESIZE szFile) = 0;
 };
 IFXCRT_FileAccess* FXCRT_FileAccess_Create();
+
 class CFX_CRTFileStream final : public IFX_FileStream {
  public:
   CFX_CRTFileStream(IFXCRT_FileAccess* pFA) : m_pFile(pFA), m_dwCount(1) {}
-  ~CFX_CRTFileStream() {
+  ~CFX_CRTFileStream() override {
     if (m_pFile) {
       m_pFile->Release();
     }
@@ -70,6 +71,7 @@ class CFX_CRTFileStream final : public IFX_FileStream {
   IFXCRT_FileAccess* m_pFile;
   FX_DWORD m_dwCount;
 };
+
 #define FX_MEMSTREAM_BlockSize (64 * 1024)
 #define FX_MEMSTREAM_Consecutive 0x01
 #define FX_MEMSTREAM_TakeOver 0x02
@@ -94,7 +96,7 @@ class CFX_MemoryStream final : public IFX_MemoryStream {
     m_dwFlags =
         FX_MEMSTREAM_Consecutive | (bTakeOver ? FX_MEMSTREAM_TakeOver : 0);
   }
-  ~CFX_MemoryStream() {
+  ~CFX_MemoryStream() override {
     if (m_dwFlags & FX_MEMSTREAM_TakeOver) {
       for (int32_t i = 0; i < m_Blocks.GetSize(); i++) {
         FX_Free((uint8_t*)m_Blocks[i]);
@@ -287,6 +289,7 @@ class CFX_MemoryStream final : public IFX_MemoryStream {
     return TRUE;
   }
 };
+
 #ifdef __cplusplus
 extern "C" {
 #endif
index 5870c76..393df69 100644 (file)
@@ -15,22 +15,24 @@ void FXCRT_GetFileModeString(FX_DWORD dwModes, CFX_WideString& wsMode);
 class CFXCRT_FileAccess_CRT : public IFXCRT_FileAccess {
  public:
   CFXCRT_FileAccess_CRT();
-  virtual ~CFXCRT_FileAccess_CRT();
-  virtual FX_BOOL Open(const CFX_ByteStringC& fileName, FX_DWORD dwMode);
-  virtual FX_BOOL Open(const CFX_WideStringC& fileName, FX_DWORD dwMode);
-  virtual void Close();
-  virtual void Release();
-  virtual FX_FILESIZE GetSize() const;
-  virtual FX_FILESIZE GetPosition() const;
-  virtual FX_FILESIZE SetPosition(FX_FILESIZE pos);
-  virtual size_t Read(void* pBuffer, size_t szBuffer);
-  virtual size_t Write(const void* pBuffer, size_t szBuffer);
-  virtual size_t ReadPos(void* pBuffer, size_t szBuffer, FX_FILESIZE pos);
-  virtual size_t WritePos(const void* pBuffer,
-                          size_t szBuffer,
-                          FX_FILESIZE pos);
-  virtual FX_BOOL Flush();
-  virtual FX_BOOL Truncate(FX_FILESIZE szFile);
+  ~CFXCRT_FileAccess_CRT() override;
+
+  // IFXCRT_FileAccess
+  FX_BOOL Open(const CFX_ByteStringC& fileName, FX_DWORD dwMode) override;
+  FX_BOOL Open(const CFX_WideStringC& fileName, FX_DWORD dwMode) override;
+  void Close() override;
+  void Release() override;
+  FX_FILESIZE GetSize() const override;
+  FX_FILESIZE GetPosition() const override;
+  FX_FILESIZE SetPosition(FX_FILESIZE pos) override;
+  size_t Read(void* pBuffer, size_t szBuffer) override;
+  size_t Write(const void* pBuffer, size_t szBuffer) override;
+  size_t ReadPos(void* pBuffer, size_t szBuffer, FX_FILESIZE pos) override;
+  size_t WritePos(const void* pBuffer,
+                  size_t szBuffer,
+                  FX_FILESIZE pos) override;
+  FX_BOOL Flush() override;
+  FX_BOOL Truncate(FX_FILESIZE szFile) override;
 
  protected:
   FXSYS_FILE* m_hFile;
index 19e11da..b24721d 100644 (file)
 class CFXCRT_FileAccess_Posix : public IFXCRT_FileAccess {
  public:
   CFXCRT_FileAccess_Posix();
-  virtual ~CFXCRT_FileAccess_Posix();
-  virtual FX_BOOL Open(const CFX_ByteStringC& fileName, FX_DWORD dwMode);
-  virtual FX_BOOL Open(const CFX_WideStringC& fileName, FX_DWORD dwMode);
-  virtual void Close();
-  virtual void Release();
-  virtual FX_FILESIZE GetSize() const;
-  virtual FX_FILESIZE GetPosition() const;
-  virtual FX_FILESIZE SetPosition(FX_FILESIZE pos);
-  virtual size_t Read(void* pBuffer, size_t szBuffer);
-  virtual size_t Write(const void* pBuffer, size_t szBuffer);
-  virtual size_t ReadPos(void* pBuffer, size_t szBuffer, FX_FILESIZE pos);
-  virtual size_t WritePos(const void* pBuffer,
-                          size_t szBuffer,
-                          FX_FILESIZE pos);
-  virtual FX_BOOL Flush();
-  virtual FX_BOOL Truncate(FX_FILESIZE szFile);
+  ~CFXCRT_FileAccess_Posix() override;
+
+  // IFXCRT_FileAccess
+  FX_BOOL Open(const CFX_ByteStringC& fileName, FX_DWORD dwMode) override;
+  FX_BOOL Open(const CFX_WideStringC& fileName, FX_DWORD dwMode) override;
+  void Close() override;
+  void Release() override;
+  FX_FILESIZE GetSize() const override;
+  FX_FILESIZE GetPosition() const override;
+  FX_FILESIZE SetPosition(FX_FILESIZE pos) override;
+  size_t Read(void* pBuffer, size_t szBuffer) override;
+  size_t Write(const void* pBuffer, size_t szBuffer) override;
+  size_t ReadPos(void* pBuffer, size_t szBuffer, FX_FILESIZE pos) override;
+  size_t WritePos(const void* pBuffer,
+                  size_t szBuffer,
+                  FX_FILESIZE pos) override;
+  FX_BOOL Flush() override;
+  FX_BOOL Truncate(FX_FILESIZE szFile) override;
 
  protected:
   int32_t m_nFD;
index bb00410..b3a20a9 100644 (file)
 class CFXCRT_FileAccess_Win64 : public IFXCRT_FileAccess {
  public:
   CFXCRT_FileAccess_Win64();
-  virtual ~CFXCRT_FileAccess_Win64();
-  virtual FX_BOOL Open(const CFX_ByteStringC& fileName, FX_DWORD dwMode);
-  virtual FX_BOOL Open(const CFX_WideStringC& fileName, FX_DWORD dwMode);
-  virtual void Close();
-  virtual void Release();
-  virtual FX_FILESIZE GetSize() const;
-  virtual FX_FILESIZE GetPosition() const;
-  virtual FX_FILESIZE SetPosition(FX_FILESIZE pos);
-  virtual size_t Read(void* pBuffer, size_t szBuffer);
-  virtual size_t Write(const void* pBuffer, size_t szBuffer);
-  virtual size_t ReadPos(void* pBuffer, size_t szBuffer, FX_FILESIZE pos);
-  virtual size_t WritePos(const void* pBuffer,
-                          size_t szBuffer,
-                          FX_FILESIZE pos);
-  virtual FX_BOOL Flush();
-  virtual FX_BOOL Truncate(FX_FILESIZE szFile);
+  ~CFXCRT_FileAccess_Win64() override;
+
+  // IFXCRT_FileAccess
+  FX_BOOL Open(const CFX_ByteStringC& fileName, FX_DWORD dwMode) override;
+  FX_BOOL Open(const CFX_WideStringC& fileName, FX_DWORD dwMode) override;
+  void Close() override;
+  void Release() override;
+  FX_FILESIZE GetSize() const override;
+  FX_FILESIZE GetPosition() const override;
+  FX_FILESIZE SetPosition(FX_FILESIZE pos) override;
+  size_t Read(void* pBuffer, size_t szBuffer) override;
+  size_t Write(const void* pBuffer, size_t szBuffer) override;
+  size_t ReadPos(void* pBuffer, size_t szBuffer, FX_FILESIZE pos) override;
+  size_t WritePos(const void* pBuffer,
+                  size_t szBuffer,
+                  FX_FILESIZE pos) override;
+  FX_BOOL Flush() override;
+  FX_BOOL Truncate(FX_FILESIZE szFile) override;
 
  protected:
   void* m_hFile;
index 1008436..6020f45 100644 (file)
@@ -13,12 +13,14 @@ class CXML_DataBufAcc : public IFX_BufferRead {
  public:
   CXML_DataBufAcc(const uint8_t* pBuffer, size_t size)
       : m_pBuffer(pBuffer), m_dwSize(size), m_dwCurPos(0) {}
-  virtual ~CXML_DataBufAcc() {}
-  virtual void Release() { delete this; }
-  virtual FX_BOOL IsEOF() { return m_dwCurPos >= m_dwSize; }
-  virtual FX_FILESIZE GetPosition() { return (FX_FILESIZE)m_dwCurPos; }
-  virtual size_t ReadBlock(void* buffer, size_t size) { return 0; }
-  virtual FX_BOOL ReadNextBlock(FX_BOOL bRestart = FALSE) {
+  ~CXML_DataBufAcc() override {}
+
+  // IFX_BufferRead
+  void Release() override { delete this; }
+  FX_BOOL IsEOF() override { return m_dwCurPos >= m_dwSize; }
+  FX_FILESIZE GetPosition() override { return (FX_FILESIZE)m_dwCurPos; }
+  size_t ReadBlock(void* buffer, size_t size) override { return 0; }
+  FX_BOOL ReadNextBlock(FX_BOOL bRestart = FALSE) override {
     if (bRestart) {
       m_dwCurPos = 0;
     }
@@ -28,15 +30,16 @@ class CXML_DataBufAcc : public IFX_BufferRead {
     }
     return FALSE;
   }
-  virtual const uint8_t* GetBlockBuffer() { return m_pBuffer; }
-  virtual size_t GetBlockSize() { return m_dwSize; }
-  virtual FX_FILESIZE GetBlockOffset() { return 0; }
+  const uint8_t* GetBlockBuffer() override { return m_pBuffer; }
+  size_t GetBlockSize() override { return m_dwSize; }
+  FX_FILESIZE GetBlockOffset() override { return 0; }
 
  protected:
   const uint8_t* m_pBuffer;
   size_t m_dwSize;
   size_t m_dwCurPos;
 };
+
 #define FX_XMLDATASTREAM_BufferSize (32 * 1024)
 class CXML_DataStmAcc : public IFX_BufferRead {
  public:
@@ -44,18 +47,21 @@ class CXML_DataStmAcc : public IFX_BufferRead {
       : m_pFileRead(pFileRead), m_pBuffer(NULL), m_nStart(0), m_dwSize(0) {
     FXSYS_assert(m_pFileRead != NULL);
   }
-  virtual ~CXML_DataStmAcc() {
+  ~CXML_DataStmAcc() override {
     if (m_pBuffer) {
       FX_Free(m_pBuffer);
     }
   }
-  virtual void Release() { delete this; }
-  virtual FX_BOOL IsEOF() {
+
+  void Release() override { delete this; }
+  FX_BOOL IsEOF() override {
     return m_nStart + (FX_FILESIZE)m_dwSize >= m_pFileRead->GetSize();
   }
-  virtual FX_FILESIZE GetPosition() { return m_nStart + (FX_FILESIZE)m_dwSize; }
-  virtual size_t ReadBlock(void* buffer, size_t size) { return 0; }
-  virtual FX_BOOL ReadNextBlock(FX_BOOL bRestart = FALSE) {
+  FX_FILESIZE GetPosition() override {
+    return m_nStart + (FX_FILESIZE)m_dwSize;
+  }
+  size_t ReadBlock(void* buffer, size_t size) override { return 0; }
+  FX_BOOL ReadNextBlock(FX_BOOL bRestart = FALSE) override {
     if (bRestart) {
       m_nStart = 0;
     }
@@ -70,9 +76,9 @@ class CXML_DataStmAcc : public IFX_BufferRead {
     }
     return m_pFileRead->ReadBlock(m_pBuffer, m_nStart, m_dwSize);
   }
-  virtual const uint8_t* GetBlockBuffer() { return (const uint8_t*)m_pBuffer; }
-  virtual size_t GetBlockSize() { return m_dwSize; }
-  virtual FX_FILESIZE GetBlockOffset() { return m_nStart; }
+  const uint8_t* GetBlockBuffer() override { return (const uint8_t*)m_pBuffer; }
+  size_t GetBlockSize() override { return m_dwSize; }
+  FX_FILESIZE GetBlockOffset() override { return m_nStart; }
 
  protected:
   IFX_FileRead* m_pFileRead;
@@ -80,6 +86,7 @@ class CXML_DataStmAcc : public IFX_BufferRead {
   FX_FILESIZE m_nStart;
   size_t m_dwSize;
 };
+
 class CXML_Parser {
  public:
   ~CXML_Parser();
@@ -113,6 +120,7 @@ class CXML_Parser {
                             CXML_Element* pElement);
   void InsertCDATASegment(CFX_UTF8Decoder& decoder, CXML_Element* pElement);
 };
+
 void FX_XML_SplitQualifiedName(const CFX_ByteStringC& bsFullName,
                                CFX_ByteStringC& bsSpace,
                                CFX_ByteStringC& bsName);
index 2954526..c3de76d 100644 (file)
@@ -26,119 +26,110 @@ class CFX_AggDeviceDriver : public IFX_RenderDeviceDriver {
                       FX_BOOL bRgbByteOrder,
                       CFX_DIBitmap* pOriDevice,
                       FX_BOOL bGroupKnockout);
-  virtual ~CFX_AggDeviceDriver();
+  ~CFX_AggDeviceDriver() override;
+
   void InitPlatform();
   void DestroyPlatform();
 
-  virtual int GetDeviceCaps(int caps_id);
-
-  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;
+  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,
-                           void* pIccTransform,
-                           int blend_type);
-
-  virtual FX_BOOL SetPixel(int x,
-                           int y,
+                           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,
+                   void* pIccTransform,
+                   int blend_type) override;
+  FX_BOOL SetPixel(int x,
+                   int y,
+                   FX_DWORD color,
+                   int alpha_flag,
+                   void* pIccTransform) override;
+  FX_BOOL FillRect(const FX_RECT* pRect,
+                   FX_DWORD fill_color,
+                   int alpha_flag,
+                   void* pIccTransform,
+                   int blend_type) override;
+  FX_BOOL DrawCosmeticLine(FX_FLOAT x1,
+                           FX_FLOAT y1,
+                           FX_FLOAT x2,
+                           FX_FLOAT y2,
                            FX_DWORD color,
                            int alpha_flag,
-                           void* pIccTransform);
-
-  virtual FX_BOOL FillRect(const FX_RECT* pRect,
-                           FX_DWORD fill_color,
-                           int alpha_flag,
                            void* pIccTransform,
-                           int blend_type);
-
-  virtual FX_BOOL DrawCosmeticLine(FX_FLOAT x1,
-                                   FX_FLOAT y1,
-                                   FX_FLOAT x2,
-                                   FX_FLOAT y2,
-                                   FX_DWORD color,
-                                   int alpha_flag,
-                                   void* pIccTransform,
-                                   int blend_type) {
+                           int blend_type) override {
     return FALSE;
   }
-
-  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 CFX_DIBitmap* GetBackDrop() { return m_pOriDevice; }
-
-  virtual FX_BOOL SetDIBits(const CFX_DIBSource* pBitmap,
-                            FX_DWORD color,
-                            const FX_RECT* pSrcRect,
-                            int left,
-                            int top,
-                            int blend_type,
-                            int alpha_flag,
-                            void* pIccTransform);
-  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,
-                                void* pIccTransform,
-                                int blend_type);
-
-  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,
-                              void* pIccTransform,
-                              int blend_type);
-  virtual FX_BOOL ContinueDIBits(void* handle, IFX_Pause* pPause);
-  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,
-                                 void* pIccTransform);
-  virtual FX_BOOL RenderRasterizer(
-      FX_NAMESPACE_DECLARE(agg, rasterizer_scanline_aa) & rasterizer,
-      FX_DWORD color,
-      FX_BOOL bFullCover,
-      FX_BOOL bGroupKnockout,
-      int alpha_flag,
-      void* pIccTransform);
+  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 m_pOriDevice; }
+  FX_BOOL SetDIBits(const CFX_DIBSource* pBitmap,
+                    FX_DWORD color,
+                    const FX_RECT* pSrcRect,
+                    int left,
+                    int top,
+                    int blend_type,
+                    int alpha_flag,
+                    void* pIccTransform) 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,
+                        void* pIccTransform,
+                        int blend_type) 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,
+                      void* pIccTransform,
+                      int blend_type) override;
+  FX_BOOL ContinueDIBits(void* handle, IFX_Pause* pPause) override;
+  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,
+                         void* pIccTransform) override;
+  int GetDriverType() override { return 1; }
+
+  FX_BOOL RenderRasterizer(FX_NAMESPACE_DECLARE(agg, rasterizer_scanline_aa) &
+                               rasterizer,
+                           FX_DWORD color,
+                           FX_BOOL bFullCover,
+                           FX_BOOL bGroupKnockout,
+                           int alpha_flag,
+                           void* pIccTransform);
 
   void SetClipMask(FX_NAMESPACE_DECLARE(agg, rasterizer_scanline_aa) &
                    rasterizer);
 
   virtual uint8_t* GetBuffer() const { return m_pBitmap->GetBuffer(); }
-  virtual int GetDriverType() { return 1; }
 
   CFX_DIBitmap* m_pBitmap;
   CFX_ClipRgn* m_pClipRgn;
index 4a84194..6ee2f25 100644 (file)
@@ -8,38 +8,37 @@
 #define CORE_SRC_FXGE_ANDROID_FPF_SKIAFONT_H_
 
 #if _FX_OS_ == _FX_ANDROID_
+
+#include "../../../include/fxge/fpf.h"
+
 class CFPF_SkiaFontDescriptor;
 class CFPF_SkiaFontMgr;
 class SkTypeface;
 class CFPF_SkiaFont : public IFPF_Font {
  public:
   CFPF_SkiaFont();
-  virtual ~CFPF_SkiaFont();
-  virtual void Release();
-  virtual IFPF_Font* Retain();
-
-  virtual FPF_HFONT GetHandle();
-
-  virtual CFX_ByteString GetFamilyName();
-  virtual CFX_WideString GetPsName();
-
-  virtual FX_DWORD GetFontStyle() const { return m_dwStyle; }
-  virtual uint8_t GetCharset() const { return m_uCharset; }
-
-  virtual int32_t GetGlyphIndex(FX_WCHAR wUnicode);
-  virtual int32_t GetGlyphWidth(int32_t iGlyphIndex);
-
-  virtual int32_t GetAscent() const;
-  virtual int32_t GetDescent() const;
-
-  virtual FX_BOOL GetGlyphBBox(int32_t iGlyphIndex, FX_RECT& rtBBox);
-  virtual FX_BOOL GetBBox(FX_RECT& rtBBox);
+  ~CFPF_SkiaFont() override;
+
+  // IFPF_Font
+  void Release() override;
+  IFPF_Font* Retain() override;
+  FPF_HFONT GetHandle() override;
+  CFX_ByteString GetFamilyName() override;
+  CFX_WideString GetPsName() override;
+  FX_DWORD GetFontStyle() const override { return m_dwStyle; }
+  uint8_t GetCharset() const override { return m_uCharset; }
+  int32_t GetGlyphIndex(FX_WCHAR wUnicode) override;
+  int32_t GetGlyphWidth(int32_t iGlyphIndex) override;
+  int32_t GetAscent() const override;
+  int32_t GetDescent() const override;
+  FX_BOOL GetGlyphBBox(int32_t iGlyphIndex, FX_RECT& rtBBox) override;
+  FX_BOOL GetBBox(FX_RECT& rtBBox) override;
+  int32_t GetHeight() const override;
+  int32_t GetItalicAngle() const override;
+  FX_DWORD GetFontData(FX_DWORD dwTable,
+                       uint8_t* pBuffer,
+                       FX_DWORD dwSize) override;
 
-  virtual int32_t GetHeight() const;
-  virtual int32_t GetItalicAngle() const;
-  virtual FX_DWORD GetFontData(FX_DWORD dwTable,
-                               uint8_t* pBuffer,
-                               FX_DWORD dwSize);
   FX_BOOL InitFont(CFPF_SkiaFontMgr* pFontMgr,
                    CFPF_SkiaFontDescriptor* pFontDes,
                    const CFX_ByteStringC& bsFamily,
index c5dd8fd..17bcb48 100644 (file)
@@ -8,10 +8,14 @@
 #define CORE_SRC_FXGE_ANDROID_FPF_SKIAFONTMGR_H_
 
 #if _FX_OS_ == _FX_ANDROID_
+
+#include "../../../include/fxge/fpf.h"
+
 #define FPF_SKIAFONTTYPE_Unknown 0
 #define FPF_SKIAFONTTYPE_Path 1
 #define FPF_SKIAFONTTYPE_File 2
 #define FPF_SKIAFONTTYPE_Buffer 3
+
 class CFPF_SkiaFontDescriptor {
  public:
   CFPF_SkiaFontDescriptor()
@@ -25,7 +29,9 @@ class CFPF_SkiaFontDescriptor {
       FX_Free(m_pFamily);
     }
   }
+
   virtual int32_t GetType() const { return FPF_SKIAFONTTYPE_Unknown; }
+
   void SetFamily(const FX_CHAR* pFamily) {
     if (m_pFamily) {
       FX_Free(m_pFamily);
@@ -41,15 +47,19 @@ class CFPF_SkiaFontDescriptor {
   FX_DWORD m_dwCharsets;
   int32_t m_iGlyphNum;
 };
+
 class CFPF_SkiaPathFont : public CFPF_SkiaFontDescriptor {
  public:
   CFPF_SkiaPathFont() : m_pPath(NULL) {}
-  virtual ~CFPF_SkiaPathFont() {
+  ~CFPF_SkiaPathFont() override {
     if (m_pPath) {
       FX_Free(m_pPath);
     }
   }
-  virtual int32_t GetType() const { return FPF_SKIAFONTTYPE_Path; }
+
+  // CFPF_SkiaFontDescriptor
+  int32_t GetType() const override { return FPF_SKIAFONTTYPE_Path; }
+
   void SetPath(const FX_CHAR* pPath) {
     if (m_pPath) {
       FX_Free(m_pPath);
@@ -61,33 +71,43 @@ class CFPF_SkiaPathFont : public CFPF_SkiaFontDescriptor {
   }
   FX_CHAR* m_pPath;
 };
+
 class CFPF_SkiaFileFont : public CFPF_SkiaFontDescriptor {
  public:
   CFPF_SkiaFileFont() : m_pFile(NULL) {}
-  virtual int32_t GetType() const { return FPF_SKIAFONTTYPE_File; }
+
+  // CFPF_SkiaFontDescriptor
+  int32_t GetType() const override { return FPF_SKIAFONTTYPE_File; }
   IFX_FileRead* m_pFile;
 };
+
 class CFPF_SkiaBufferFont : public CFPF_SkiaFontDescriptor {
  public:
   CFPF_SkiaBufferFont() : m_pBuffer(NULL), m_szBuffer(0) {}
-  virtual int32_t GetType() const { return FPF_SKIAFONTTYPE_Buffer; }
+
+  // CFPF_SkiaFontDescriptor
+  int32_t GetType() const override { return FPF_SKIAFONTTYPE_Buffer; }
+
   void* m_pBuffer;
   size_t m_szBuffer;
 };
+
 class CFPF_SkiaFontMgr : public IFPF_FontMgr {
  public:
   CFPF_SkiaFontMgr();
-  virtual ~CFPF_SkiaFontMgr();
+  ~CFPF_SkiaFontMgr() override;
+
+  // IFPF_FontMgr
+  void LoadSystemFonts() override;
+  void LoadPrivateFont(IFX_FileRead* pFontFile) override;
+  void LoadPrivateFont(const CFX_ByteStringC& bsFileName) override;
+  void LoadPrivateFont(void* pBuffer, size_t szBuffer) override;
+  IFPF_Font* CreateFont(const CFX_ByteStringC& bsFamilyname,
+                        uint8_t uCharset,
+                        FX_DWORD dwStyle,
+                        FX_DWORD dwMatch = 0) override;
+
   FX_BOOL InitFTLibrary();
-  virtual void LoadSystemFonts();
-  virtual void LoadPrivateFont(IFX_FileRead* pFontFile);
-  virtual void LoadPrivateFont(const CFX_ByteStringC& bsFileName);
-  virtual void LoadPrivateFont(void* pBuffer, size_t szBuffer);
-
-  virtual IFPF_Font* CreateFont(const CFX_ByteStringC& bsFamilyname,
-                                uint8_t uCharset,
-                                FX_DWORD dwStyle,
-                                FX_DWORD dwMatch = 0);
   FXFT_Face GetFontFace(IFX_FileRead* pFileRead, int32_t iFaceIndex = 0);
   FXFT_Face GetFontFace(const CFX_ByteStringC& bsFile, int32_t iFaceIndex = 0);
   FXFT_Face GetFontFace(const uint8_t* pBuffer,
@@ -104,6 +124,7 @@ class CFPF_SkiaFontMgr : public IFPF_FontMgr {
   FXFT_Library m_FTLibrary;
   CFX_MapPtrToPtr m_FamilyFonts;
 };
+
 #endif
 
 #endif  // CORE_SRC_FXGE_ANDROID_FPF_SKIAFONTMGR_H_
index 4f1c119..5d1da7b 100644 (file)
@@ -8,13 +8,19 @@
 #define CORE_SRC_FXGE_ANDROID_FPF_SKIAMODULE_H_
 
 #if _FX_OS_ == _FX_ANDROID_
+
+#include "../../../include/fxge/fpf.h"
+
 class CFPF_SkiaFontMgr;
+
 class CFPF_SkiaDeviceModule : public IFPF_DeviceModule {
  public:
-  CFPF_SkiaDeviceModule() : m_pFontMgr(NULL) {}
-  virtual ~CFPF_SkiaDeviceModule();
-  virtual void Destroy();
-  virtual IFPF_FontMgr* GetFontMgr();
+  CFPF_SkiaDeviceModule() : m_pFontMgr(nullptr) {}
+  ~CFPF_SkiaDeviceModule() override;
+
+  // IFPF_DeviceModule
+  void Destroy() override;
+  IFPF_FontMgr* GetFontMgr() override;
 
  protected:
   CFPF_SkiaFontMgr* m_pFontMgr;
index ba3d0a8..9bff4eb 100644 (file)
@@ -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();
index 1de829b..a2cfc35 100644 (file)
@@ -13,7 +13,7 @@ class CFX_SkiaDeviceDriver : public IFX_RenderDeviceDriver {
                        FX_BOOL bRgbByteOrder,
                        CFX_DIBitmap* pOriDevice,
                        FX_BOOL bGroupKnockout);
-  virtual ~CFX_SkiaDeviceDriver();
+  ~CFX_SkiaDeviceDriver() override;
 
   /** Options */
   virtual int GetDeviceCaps(int caps_id);
index c3325ba..9dbad11 100644 (file)
 class CFX_Win32FontInfo final : public IFX_SystemFontInfo {
  public:
   CFX_Win32FontInfo();
-  ~CFX_Win32FontInfo();
-  virtual void Release();
-  virtual FX_BOOL EnumFontList(CFX_FontMapper* pMapper);
-  virtual void* MapFont(int weight,
-                        FX_BOOL bItalic,
-                        int charset,
-                        int pitch_family,
-                        const FX_CHAR* face,
-                        int& iExact);
-  virtual void* GetFont(const FX_CHAR* face) { return NULL; }
-  virtual FX_DWORD GetFontData(void* hFont,
-                               FX_DWORD table,
-                               uint8_t* buffer,
-                               FX_DWORD size);
-  virtual void DeleteFont(void* hFont);
-  virtual FX_BOOL GetFaceName(void* hFont, CFX_ByteString& name);
-  virtual FX_BOOL GetFontCharset(void* hFont, int& charset);
+  ~CFX_Win32FontInfo() override;
+
+  // IFX_SystemFontInfo
+  void Release() override;
+  FX_BOOL EnumFontList(CFX_FontMapper* pMapper) override;
+  void* MapFont(int weight,
+                FX_BOOL bItalic,
+                int charset,
+                int pitch_family,
+                const FX_CHAR* face,
+                int& iExact) override;
+  void* GetFont(const FX_CHAR* face) override { return NULL; }
+  FX_DWORD GetFontData(void* hFont,
+                       FX_DWORD table,
+                       uint8_t* buffer,
+                       FX_DWORD size) override;
+  FX_BOOL GetFaceName(void* hFont, CFX_ByteString& name) override;
+  FX_BOOL GetFontCharset(void* hFont, int& charset) override;
+  void DeleteFont(void* hFont) override;
+
   FX_BOOL IsOpenTypeFromDiv(const LOGFONTA* plf);
   FX_BOOL IsSupportFontFormDiv(const LOGFONTA* plf);
   void AddInstalledFont(const LOGFONTA* plf, FX_DWORD FontType);
@@ -51,6 +54,7 @@ class CFX_Win32FontInfo final : public IFX_SystemFontInfo {
   CFX_ByteString m_LastFamily;
   CFX_ByteString m_KaiTi, m_FangSong;
 };
+
 CFX_Win32FontInfo::CFX_Win32FontInfo() {
   m_hDC = CreateCompatibleDC(NULL);
 }
index cb3b017..7f73fdb 100644 (file)
@@ -6,6 +6,8 @@
 #ifndef CORE_SRC_FXGE_WIN32_WIN32_INT_H_
 #define CORE_SRC_FXGE_WIN32_WIN32_INT_H_
 
+#include "../../../include/fxge/fx_ge.h"
+
 struct WINDIB_Open_Args_;
 class CGdiplusExt {
  public:
@@ -101,50 +103,54 @@ class CWin32Platform {
   CGdiplusExt m_GdiplusExt;
   CDWriteExt m_DWriteExt;
 };
+
 class CGdiDeviceDriver : public IFX_RenderDeviceDriver {
  protected:
-  virtual int GetDeviceCaps(int caps_id);
-  virtual void SaveState() { SaveDC(m_hDC); }
-  virtual void RestoreState(FX_BOOL bKeepSaved = FALSE) {
+  // IFX_RenderDeviceDriver
+  int GetDeviceCaps(int caps_id) override;
+  void SaveState() override { SaveDC(m_hDC); }
+  void RestoreState(FX_BOOL bKeepSaved = FALSE) override {
     RestoreDC(m_hDC, -1);
     if (bKeepSaved) {
       SaveDC(m_hDC);
     }
   }
-  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,
+  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,
-                           void* pIccTransform,
-                           int blend_type);
-  virtual FX_BOOL FillRect(const FX_RECT* pRect,
-                           FX_DWORD fill_color,
+                           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,
+                   void* pIccTransform,
+                   int blend_type) override;
+  FX_BOOL FillRect(const FX_RECT* pRect,
+                   FX_DWORD fill_color,
+                   int alpha_flag,
+                   void* pIccTransform,
+                   int blend_type) override;
+  FX_BOOL DrawCosmeticLine(FX_FLOAT x1,
+                           FX_FLOAT y1,
+                           FX_FLOAT x2,
+                           FX_FLOAT y2,
+                           FX_DWORD color,
                            int alpha_flag,
                            void* pIccTransform,
-                           int blend_type);
-  virtual FX_BOOL DrawCosmeticLine(FX_FLOAT x1,
-                                   FX_FLOAT y1,
-                                   FX_FLOAT x2,
-                                   FX_FLOAT y2,
-                                   FX_DWORD color,
-                                   int alpha_flag,
-                                   void* pIccTransform,
-                                   int blend_type);
+                           int blend_type) override;
+  FX_BOOL GetClipBox(FX_RECT* pRect) override;
+  void* GetPlatformSurface() override { return (void*)m_hDC; }
+
   virtual void* GetClipRgn();
   virtual FX_BOOL SetClipRgn(void* pRgn);
-  virtual FX_BOOL GetClipBox(FX_RECT* pRect);
   virtual FX_BOOL DeleteDeviceRgn(void* pRgn);
   virtual void DrawLine(FX_FLOAT x1, FX_FLOAT y1, FX_FLOAT x2, FX_FLOAT y2);
-  virtual void* GetPlatformSurface() { return (void*)m_hDC; }
+
   FX_BOOL GDI_SetDIBits(const CFX_DIBitmap* pBitmap,
                         const FX_RECT* pSrcRect,
                         int left,
@@ -170,8 +176,9 @@ class CGdiDeviceDriver : public IFX_RenderDeviceDriver {
   int m_Width, m_Height, m_nBitsPerPixel;
   int m_DeviceClass, m_RenderCaps;
   CGdiDeviceDriver(HDC hDC, int device_class);
-  ~CGdiDeviceDriver() {}
+  ~CGdiDeviceDriver() override {}
 };
+
 class CGdiDisplayDriver : public CGdiDeviceDriver {
  public:
   CGdiDisplayDriver(HDC hDC);
@@ -261,83 +268,91 @@ class CGdiPrinterDriver : public CGdiDeviceDriver {
   int m_HorzSize, m_VertSize;
   FX_BOOL m_bSupportROP;
 };
+
 class CPSOutput : public IFX_PSOutput {
  public:
-  CPSOutput(HDC hDC);
-  virtual ~CPSOutput();
-  virtual void Release() { delete this; }
+  explicit CPSOutput(HDC hDC);
+  ~CPSOutput() override;
+
+  // IFX_PSOutput
+  void Release() override { delete this; }
+  void OutputPS(const FX_CHAR* string, int len) override;
+
   void Init();
-  virtual void OutputPS(const FX_CHAR* string, int len);
+
   HDC m_hDC;
   FX_CHAR* m_pBuf;
 };
+
 class CPSPrinterDriver : public IFX_RenderDeviceDriver {
  public:
   CPSPrinterDriver();
   FX_BOOL Init(HDC hDC, int ps_level, FX_BOOL bCmykOutput);
-  ~CPSPrinterDriver();
+  ~CPSPrinterDriver() override;
 
  protected:
-  virtual FX_BOOL IsPSPrintDriver() { return TRUE; }
-  virtual int GetDeviceCaps(int caps_id);
-  virtual FX_BOOL StartRendering();
-  virtual void EndRendering();
-  virtual void SaveState();
-  virtual void RestoreState(FX_BOOL bKeepSaved = FALSE);
-  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);
+  FX_BOOL IsPSPrintDriver() override { return TRUE; }
+  FX_BOOL StartRendering() override;
+  void EndRendering() override;
+  void SaveState() override;
+  void RestoreState(FX_BOOL bKeepSaved = FALSE) 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,
-                           void* pIccTransform,
-                           int blend_type);
-  virtual FX_BOOL GetClipBox(FX_RECT* pRect);
-  virtual FX_BOOL SetDIBits(const CFX_DIBSource* pBitmap,
-                            FX_DWORD color,
-                            const FX_RECT* pSrcRect,
-                            int left,
-                            int top,
-                            int blend_type,
-                            int alpha_flag,
-                            void* pIccTransform);
-  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,
-                                void* pIccTransform,
-                                int blend_type);
-  virtual FX_BOOL StartDIBits(const CFX_DIBSource* pBitmap,
-                              int bitmap_alpha,
-                              FX_DWORD color,
-                              const CFX_AffineMatrix* pMatrix,
-                              FX_DWORD render_flags,
-                              void*& handle,
-                              int alpha_flag,
-                              void* pIccTransform,
-                              int blend_type);
-  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,
-                                 void* pIccTransform);
-  virtual void* GetPlatformSurface() { return (void*)m_hDC; }
+                           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,
+                   void* pIccTransform,
+                   int blend_type) override;
+  FX_BOOL GetClipBox(FX_RECT* pRect) override;
+  FX_BOOL SetDIBits(const CFX_DIBSource* pBitmap,
+                    FX_DWORD color,
+                    const FX_RECT* pSrcRect,
+                    int left,
+                    int top,
+                    int blend_type,
+                    int alpha_flag,
+                    void* pIccTransform) 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,
+                        void* pIccTransform,
+                        int blend_type) override;
+  FX_BOOL StartDIBits(const CFX_DIBSource* pBitmap,
+                      int bitmap_alpha,
+                      FX_DWORD color,
+                      const CFX_AffineMatrix* pMatrix,
+                      FX_DWORD render_flags,
+                      void*& handle,
+                      int alpha_flag,
+                      void* pIccTransform,
+                      int blend_type) 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,
+                         void* pIccTransform) override;
+  void* GetPlatformSurface() override { return (void*)m_hDC; }
+
   HDC m_hDC;
   FX_BOOL m_bCmykOutput;
   int m_Width, m_Height, m_nBitsPerPixel;
index ea1b3ef..281bd26 100644 (file)
@@ -157,8 +157,6 @@ class CPWL_Edit : public CPWL_EditCtrl, public IFX_Edit_OprNotify {
                                    FX_BOOL bLatin,
                                    FX_BOOL bArabic) const;
 
-  void AjustArabicWords(const CPVT_WordRange& wr);
-
  public:
   FX_BOOL IsProceedtoOnChar(FX_WORD nKeyCode, FX_DWORD nFlag);
 
index 0845bb1..e66c15e 100644 (file)
@@ -448,7 +448,7 @@ class CPWL_Wnd : public CPWL_TimerHandler {
   void CreateScrollBar(const PWL_CREATEPARAM& cp);
   void CreateVScrollBar(const PWL_CREATEPARAM& cp);
 
-  void AjustStyle();
+  void AdjustStyle();
   void CreateMsgControl();
   void DestroyMsgControl();
 
index efef2ca..218ed16 100644 (file)
@@ -2801,8 +2801,8 @@ FX_BOOL CFX_Edit::Clear(FX_BOOL bAddUndo, FX_BOOL bPaint) {
                 }
               } else {
                 if (pIterator->GetWord(wordinfo)) {
-                  oldplace = m_pVT->AjustLineHeader(oldplace, TRUE);
-                  place = m_pVT->AjustLineHeader(place, TRUE);
+                  oldplace = m_pVT->AdjustLineHeader(oldplace, TRUE);
+                  place = m_pVT->AdjustLineHeader(place, TRUE);
 
                   AddEditUndoItem(new CFXEU_ClearRich(
                       this, oldplace, place, range, wordinfo.Word,
index edefd7e..3271c80 100644 (file)
@@ -1203,8 +1203,6 @@ CPVT_WordRange CPWL_Edit::GetSameWordsRange(const CPVT_WordPlace& place,
   return range;
 }
 
-void CPWL_Edit::AjustArabicWords(const CPVT_WordRange& wr) {}
-
 void CPWL_Edit::GeneratePageObjects(
     CPDF_PageObjects* pPageObjects,
     const CPDF_Point& ptOffset,