Merge to XFA: Use stdint.h types throughout PDFium.
[pdfium.git] / core / src / reflow / reflowedpage.h
index b768341..79b4937 100644 (file)
@@ -4,9 +4,11 @@
  
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
-#ifndef _REFLOWED_PAGE_H
-#define _REFLOWED_PAGE_H
+#ifndef CORE_SRC_REFLOW_REFLOWEDPAGE_H_
+#define CORE_SRC_REFLOW_REFLOWEDPAGE_H_
+
 #include "../../include/reflow/reflowengine.h"
+
 #define GET_SIGNED(a) ( (a)>0 ? a/a : (a==0 ? 0 : -a/a) )
 class CRF_Data;
 class CRF_LineData;
@@ -18,7 +20,6 @@ class CRF_AttrOperation;
 class CRF_OperationDate;
 class CPDF_ReflowedPage;
 class CPDF_Rect;
-class CFX_Object;
 typedef CFX_SegmentedArray<CRF_Data*> CRF_DataPtrArray;
 class CRF_CharState;
 typedef CFX_SegmentedArray<CRF_CharState> CRF_CharStateArray;
@@ -26,7 +27,7 @@ typedef CFX_SegmentedArray<CRF_CharState> CRF_CharStateArray;
 #define SST_BLSE       2
 #define SST_ILSE       3
 #define SST_IE         4
-class CPDF_LayoutProcessor_Reflow : public IPDF_LayoutProcessor, public CFX_Object
+class CPDF_LayoutProcessor_Reflow : public IPDF_LayoutProcessor
 {
 public:
     CPDF_LayoutProcessor_Reflow();
@@ -47,14 +48,14 @@ protected:
     void       ProcessTextObject(CPDF_TextObject *pObj, FX_FLOAT reflowWidth, CFX_AffineMatrix objMatrix);
     void       ProcessPathObject(CPDF_PathObject *pObj, FX_FLOAT reflowWidth);
     void       ProcessUnitaryObjs(CPDF_PageObjects *pObjs, FX_FLOAT reflowWidth, CFX_AffineMatrix objMatrix);
-    FX_INT32 LogicPreObj(CPDF_TextObject* pObj);
+    int32_t LogicPreObj(CPDF_TextObject* pObj);
     int ProcessInsertObject(CPDF_TextObject* pObj, CFX_AffineMatrix formMatrix);
     FX_WCHAR GetPreChar();
     FX_BOOL IsSameTextObject(CPDF_TextObject* pTextObj1, CPDF_TextObject* pTextObj2);
     int GetCharWidth(FX_DWORD charCode, CPDF_Font* pFont) const;
     FX_BOOL    IsCanBreakAfter(FX_DWORD unicode);
     FX_BOOL    IsCanBreakBefore(FX_DWORD unicode);
-    FX_INT32 GetElementTypes(LayoutType layoutType);
+    int32_t GetElementTypes(LayoutType layoutType);
     void                               CreateRFData(CPDF_PageObject* pObj, CFX_AffineMatrix* pMatrix = NULL);
     CRF_CharState*             GetCharState(CPDF_TextObject* pObj, CPDF_Font* pFont, FX_FLOAT fHeight, FX_ARGB color);
     FX_FLOAT           ConverWidth(FX_FLOAT width);
@@ -106,7 +107,7 @@ struct RF_TableCell {
     LayoutEnum m_InlineAlign;
 };
 typedef CFX_ArrayTemplate<RF_TableCell*> CRF_TableCellArray;
-class CRF_Table : public CFX_Object
+class CRF_Table 
 {
 public:
     CRF_Table()
@@ -120,7 +121,7 @@ public:
     FX_FLOAT                   m_TableWidth;
     FX_FLOAT                   m_ReflowPageHeight;
 };
-class CRF_CharState : public CFX_Object
+class CRF_CharState 
 {
 public:
     CPDF_Font* m_pFont;
@@ -132,7 +133,7 @@ public:
 
     CPDF_TextObject*   m_pTextObj;
 };
-class CRF_PageInfo : public CFX_Object
+class CRF_PageInfo 
 {
 public:
     CRF_PageInfo(CPDF_PageObject* pPageObj, CRF_PageInfo* pParent = NULL)
@@ -158,7 +159,7 @@ protected:
     CPDF_PageObject*           m_pPageObj;
     CRF_PageInfo*                      m_pParent;
 };
-class CPDF_ReflowedPage : public IPDF_ReflowedPage, public CFX_PrivateData, public CFX_Object
+class CPDF_ReflowedPage : public IPDF_ReflowedPage, public CFX_PrivateData
 {
 public:
 
@@ -168,15 +169,15 @@ public:
     {
         return this;
     };
-    void               GetDisplayMatrix(CFX_AffineMatrix& matrix, FX_INT32 xPos, FX_INT32 yPos, FX_INT32 xSize, FX_INT32 ySize, FX_INT32 iRotate, const CFX_AffineMatrix* pPageMatrix);
+    void               GetDisplayMatrix(CFX_AffineMatrix& matrix, int32_t xPos, int32_t yPos, int32_t xSize, int32_t ySize, int32_t iRotate, const CFX_AffineMatrix* pPageMatrix);
 
     FX_FLOAT   GetPageHeight() ;
     FX_FLOAT   GetPageWidth()
     {
         return m_PageWidth;
     };
-    void               FocusGetData(const CFX_AffineMatrix matrix, FX_INT32 x, FX_INT32 y, CFX_ByteString& str);
-    FX_BOOL            FocusGetPosition(const CFX_AffineMatrix matrix, CFX_ByteString str, FX_INT32& x, FX_INT32& y);
+    void               FocusGetData(const CFX_AffineMatrix matrix, int32_t x, int32_t y, CFX_ByteString& str);
+    FX_BOOL            FocusGetPosition(const CFX_AffineMatrix matrix, CFX_ByteString str, int32_t& x, int32_t& y);
     CRF_DataPtrArray*  m_pReflowed;
     FX_FLOAT                   m_PageWidth;
     FX_FLOAT                   m_PageHeight;
@@ -192,7 +193,7 @@ public:
 
     CFX_MapPtrToPtr*           m_pPageInfos;
 };
-class CPDF_ProgressiveReflowPageParser : public IPDF_ProgressiveReflowPageParser, public CFX_Object
+class CPDF_ProgressiveReflowPageParser : public IPDF_ProgressiveReflowPageParser
 {
 public:
     CPDF_ProgressiveReflowPageParser();
@@ -227,7 +228,7 @@ protected:
     int                                        m_nObjProcessed;
     int m_flags;
 };
-class CPDF_ProgressiveReflowPageRender : public IPDF_ProgressiveReflowPageRender, public CFX_Object
+class CPDF_ProgressiveReflowPageRender : public IPDF_ProgressiveReflowPageRender
 {
 public:
     CPDF_ProgressiveReflowPageRender();
@@ -292,7 +293,7 @@ protected:
 #define TYPE_PATH              2
 #define TYPE_IMAGE             3
 #define TYPE_LINE              4
-class CRF_Data : public CFX_Object
+class CRF_Data 
 {
 public:
     typedef enum {Unknow, Text, Image, Path, Line, paragraph} RF_DataType;
@@ -369,4 +370,5 @@ public:
     FX_ARGB            m_stroke_argb;
     int                        m_fill_mode;
 };
-#endif
+
+#endif  // CORE_SRC_REFLOW_REFLOWEDPAGE_H_