summaryrefslogtreecommitdiff
path: root/fpdfsdk/fpdfxfa/include
diff options
context:
space:
mode:
authorweili <weili@chromium.org>2016-06-15 11:21:33 -0700
committerCommit bot <commit-bot@chromium.org>2016-06-15 11:21:33 -0700
commit625ad667d0c0c17d5bc11d505f04861d90b45078 (patch)
treeefd014e752072adf726a0e34383555399342dcb2 /fpdfsdk/fpdfxfa/include
parent29b8ad0b130ec6ed4f72ebd0c0a4f9e6a5b03467 (diff)
downloadpdfium-625ad667d0c0c17d5bc11d505f04861d90b45078.tar.xz
Make code compile with clang_use_chrome_plugin (part IV)
This change mainly contains files in fpdfsdk/ directory. This is part of the efforts to make PDFium code compilable by Clang chromium style plugins. The changes are mainly the following: -- move inline constructor/destructor of complex class/struct out-of-line; -- add constructor/destructor of complex class/struct if not explicitly defined; -- add explicit out-of-line copy constructor when needed; -- move inline virtual functions out-of-line; -- Properly mark virtual functions with 'override'; -- some minor cleanups plus removing an unused file and splitting cxfa_eventparam out from fxfa.h BUG=pdfium:469 Review-Url: https://codereview.chromium.org/2062313002
Diffstat (limited to 'fpdfsdk/fpdfxfa/include')
-rw-r--r--fpdfsdk/fpdfxfa/include/fpdfxfa_app.h10
-rw-r--r--fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h203
-rw-r--r--fpdfsdk/fpdfxfa/include/fpdfxfa_page.h5
3 files changed, 98 insertions, 120 deletions
diff --git a/fpdfsdk/fpdfxfa/include/fpdfxfa_app.h b/fpdfsdk/fpdfxfa/include/fpdfxfa_app.h
index f24c700434..993d4b4254 100644
--- a/fpdfsdk/fpdfxfa/include/fpdfxfa_app.h
+++ b/fpdfsdk/fpdfxfa/include/fpdfxfa_app.h
@@ -36,19 +36,17 @@ class CPDFXFA_App : public IXFA_AppProvider {
// IFXA_AppProvider:
void GetAppType(CFX_WideString& wsAppType) override;
void SetAppType(const CFX_WideStringC& wsAppType) override;
+ void SetFoxitAppType(const CFX_WideStringC& wsFoxitAppType) override;
+ void GetFoxitAppType(CFX_WideString& wsFoxitAppType) override;
void GetLanguage(CFX_WideString& wsLanguage) override;
void GetPlatform(CFX_WideString& wsPlatform) override;
void GetVariation(CFX_WideString& wsVariation) override;
void GetVersion(CFX_WideString& wsVersion) override;
- void GetFoxitVersion(CFX_WideString& wsFoxitVersion) override {
- wsFoxitVersion = L"7.0";
- }
+ void GetFoxitVersion(CFX_WideString& wsFoxitVersion) override;
void GetAppName(CFX_WideString& wsName) override;
- void GetFoxitAppName(CFX_WideString& wsFoxitName) override {
- wsFoxitName = L"Foxit";
- }
+ void GetFoxitAppName(CFX_WideString& wsFoxitName) override;
void Beep(uint32_t dwType) override;
int32_t MsgBox(const CFX_WideString& wsMessage,
diff --git a/fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h b/fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h
index 90ef6f36b3..21a5b13cfa 100644
--- a/fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h
+++ b/fpdfsdk/fpdfxfa/include/fpdfxfa_doc.h
@@ -7,11 +7,12 @@
#ifndef FPDFSDK_FPDFXFA_INCLUDE_FPDFXFA_DOC_H_
#define FPDFSDK_FPDFXFA_INCLUDE_FPDFXFA_DOC_H_
+#include "xfa/fxfa/include/xfa_ffdoc.h"
+
#include <vector>
#include "public/fpdfview.h"
#include "xfa/fxfa/include/fxfa.h"
-#include "xfa/fxfa/include/xfa_ffdoc.h"
#include "xfa/fxfa/include/xfa_ffdochandler.h"
class CPDFXFA_App;
@@ -26,7 +27,7 @@ class CXFA_FFDocHandler;
class CPDFXFA_Document : public IXFA_DocProvider {
public:
CPDFXFA_Document(CPDF_Document* pPDFDoc, CPDFXFA_App* pProvider);
- ~CPDFXFA_Document();
+ ~CPDFXFA_Document() override;
FX_BOOL LoadXFADoc();
CPDFXFA_App* GetApp() { return m_pApp; }
@@ -46,99 +47,85 @@ class CPDFXFA_Document : public IXFA_DocProvider {
void FXRect2PDFRect(const CFX_RectF& fxRectF, CFX_FloatRect& pdfRect);
- virtual void SetChangeMark(CXFA_FFDoc* hDoc);
- virtual FX_BOOL GetChangeMark(CXFA_FFDoc* hDoc);
+ // IXFA_DocProvider
+ void SetChangeMark(CXFA_FFDoc* hDoc) override;
// used in dynamic xfa, dwFlags refer to XFA_INVALIDATE_XXX macros.
- virtual void InvalidateRect(CXFA_FFPageView* pPageView,
- const CFX_RectF& rt,
- uint32_t dwFlags = 0);
- // used in static xfa, dwFlags refer to XFA_INVALIDATE_XXX macros.
- virtual void InvalidateRect(CXFA_FFWidget* hWidget, uint32_t dwFlags = 0);
+ void InvalidateRect(CXFA_FFPageView* pPageView,
+ const CFX_RectF& rt,
+ uint32_t dwFlags = 0) override;
// show or hide caret
- virtual void DisplayCaret(CXFA_FFWidget* hWidget,
- FX_BOOL bVisible,
- const CFX_RectF* pRtAnchor);
+ void DisplayCaret(CXFA_FFWidget* hWidget,
+ FX_BOOL bVisible,
+ const CFX_RectF* pRtAnchor) override;
// dwPos: (0:bottom 1:top)
- virtual FX_BOOL GetPopupPos(CXFA_FFWidget* hWidget,
- FX_FLOAT fMinPopup,
- FX_FLOAT fMaxPopup,
- const CFX_RectF& rtAnchor,
- CFX_RectF& rtPopup);
- virtual FX_BOOL PopupMenu(CXFA_FFWidget* hWidget,
- CFX_PointF ptPopup,
- const CFX_RectF* pRectExclude = nullptr);
+ FX_BOOL GetPopupPos(CXFA_FFWidget* hWidget,
+ FX_FLOAT fMinPopup,
+ FX_FLOAT fMaxPopup,
+ const CFX_RectF& rtAnchor,
+ CFX_RectF& rtPopup) override;
+ FX_BOOL PopupMenu(CXFA_FFWidget* hWidget,
+ CFX_PointF ptPopup,
+ const CFX_RectF* pRectExclude = nullptr) override;
// dwFlags XFA_PAGEVIEWEVENT_Added, XFA_PAGEVIEWEVENT_Removing
- virtual void PageViewEvent(CXFA_FFPageView* pPageView, uint32_t dwFlags);
- virtual void WidgetPostAdd(CXFA_FFWidget* hWidget,
- CXFA_WidgetAcc* pWidgetData);
- virtual void WidgetPreRemove(CXFA_FFWidget* hWidget,
- CXFA_WidgetAcc* pWidgetData);
+ void PageViewEvent(CXFA_FFPageView* pPageView, uint32_t dwFlags) override;
+ void WidgetPostAdd(CXFA_FFWidget* hWidget,
+ CXFA_WidgetAcc* pWidgetData) override;
+ void WidgetPreRemove(CXFA_FFWidget* hWidget,
+ CXFA_WidgetAcc* pWidgetData) override;
// return true if render it.
- virtual FX_BOOL RenderCustomWidget(CXFA_FFWidget* hWidget,
- CFX_Graphics* pGS,
- CFX_Matrix* pMatrix,
- const CFX_RectF& rtUI) {
- return FALSE;
- }
-
- // host method
- virtual int32_t CountPages(CXFA_FFDoc* hDoc);
- virtual int32_t GetCurrentPage(CXFA_FFDoc* hDoc);
- virtual void SetCurrentPage(CXFA_FFDoc* hDoc, int32_t iCurPage);
- virtual FX_BOOL IsCalculationsEnabled(CXFA_FFDoc* hDoc);
- virtual void SetCalculationsEnabled(CXFA_FFDoc* hDoc, FX_BOOL bEnabled);
- virtual void GetTitle(CXFA_FFDoc* hDoc, CFX_WideString& wsTitle);
- virtual void SetTitle(CXFA_FFDoc* hDoc, const CFX_WideString& wsTitle);
- virtual void ExportData(CXFA_FFDoc* hDoc,
- const CFX_WideString& wsFilePath,
- FX_BOOL bXDP = TRUE);
- virtual void ImportData(CXFA_FFDoc* hDoc, const CFX_WideString& wsFilePath);
- virtual void GotoURL(CXFA_FFDoc* hDoc,
- const CFX_WideString& bsURL,
- FX_BOOL bAppend = TRUE);
- virtual FX_BOOL IsValidationsEnabled(CXFA_FFDoc* hDoc);
- virtual void SetValidationsEnabled(CXFA_FFDoc* hDoc, FX_BOOL bEnabled);
- virtual void SetFocusWidget(CXFA_FFDoc* hDoc, CXFA_FFWidget* hWidget);
- virtual void Print(CXFA_FFDoc* hDoc,
- int32_t nStartPage,
- int32_t nEndPage,
- uint32_t dwOptions);
+ FX_BOOL RenderCustomWidget(CXFA_FFWidget* hWidget,
+ CFX_Graphics* pGS,
+ CFX_Matrix* pMatrix,
+ const CFX_RectF& rtUI) override;
+
+ // Host method
+ int32_t CountPages(CXFA_FFDoc* hDoc) override;
+ int32_t GetCurrentPage(CXFA_FFDoc* hDoc) override;
+ void SetCurrentPage(CXFA_FFDoc* hDoc, int32_t iCurPage) override;
+ FX_BOOL IsCalculationsEnabled(CXFA_FFDoc* hDoc) override;
+ void SetCalculationsEnabled(CXFA_FFDoc* hDoc, FX_BOOL bEnabled) override;
+ void GetTitle(CXFA_FFDoc* hDoc, CFX_WideString& wsTitle) override;
+ void SetTitle(CXFA_FFDoc* hDoc, const CFX_WideString& wsTitle) override;
+ void ExportData(CXFA_FFDoc* hDoc,
+ const CFX_WideString& wsFilePath,
+ FX_BOOL bXDP = TRUE) override;
+ void ImportData(CXFA_FFDoc* hDoc, const CFX_WideString& wsFilePath) override;
+ void GotoURL(CXFA_FFDoc* hDoc,
+ const CFX_WideString& bsURL,
+ FX_BOOL bAppend = TRUE) override;
+ FX_BOOL IsValidationsEnabled(CXFA_FFDoc* hDoc) override;
+ void SetValidationsEnabled(CXFA_FFDoc* hDoc, FX_BOOL bEnabled) override;
+ void SetFocusWidget(CXFA_FFDoc* hDoc, CXFA_FFWidget* hWidget) override;
+ void Print(CXFA_FFDoc* hDoc,
+ int32_t nStartPage,
+ int32_t nEndPage,
+ uint32_t dwOptions) override;
// LayoutPseudo method
- virtual int32_t AbsPageCountInBatch(CXFA_FFDoc* hDoc) { return 0; }
- virtual int32_t AbsPageInBatch(CXFA_FFDoc* hDoc, CXFA_FFWidget* hWidget) {
- return 0;
- }
- virtual int32_t SheetCountInBatch(CXFA_FFDoc* hDoc) { return 0; }
- virtual int32_t SheetInBatch(CXFA_FFDoc* hDoc, CXFA_FFWidget* hWidget) {
- return 0;
- }
-
- virtual int32_t Verify(CXFA_FFDoc* hDoc,
- CXFA_Node* pSigNode,
- FX_BOOL bUsed = TRUE) {
- return 0;
- }
- virtual FX_BOOL Sign(CXFA_FFDoc* hDoc,
- CXFA_NodeList* pNodeList,
- const CFX_WideStringC& wsExpression,
- const CFX_WideStringC& wsXMLIdent,
- const CFX_WideStringC& wsValue = FX_WSTRC(L"open"),
- FX_BOOL bUsed = TRUE) {
- return 0;
- }
- virtual CXFA_NodeList* Enumerate(CXFA_FFDoc* hDoc) { return 0; }
- virtual FX_BOOL Clear(CXFA_FFDoc* hDoc,
- CXFA_Node* pSigNode,
- FX_BOOL bCleared = TRUE) {
- return 0;
- }
+ int32_t AbsPageCountInBatch(CXFA_FFDoc* hDoc) override;
+ int32_t AbsPageInBatch(CXFA_FFDoc* hDoc, CXFA_FFWidget* hWidget) override;
+ int32_t SheetCountInBatch(CXFA_FFDoc* hDoc) override;
+ int32_t SheetInBatch(CXFA_FFDoc* hDoc, CXFA_FFWidget* hWidget) override;
+
+ int32_t Verify(CXFA_FFDoc* hDoc,
+ CXFA_Node* pSigNode,
+ FX_BOOL bUsed = TRUE) override;
+ FX_BOOL Sign(CXFA_FFDoc* hDoc,
+ CXFA_NodeList* pNodeList,
+ const CFX_WideStringC& wsExpression,
+ const CFX_WideStringC& wsXMLIdent,
+ const CFX_WideStringC& wsValue = FX_WSTRC(L"open"),
+ FX_BOOL bUsed = TRUE) override;
+ CXFA_NodeList* Enumerate(CXFA_FFDoc* hDoc) override;
+ FX_BOOL Clear(CXFA_FFDoc* hDoc,
+ CXFA_Node* pSigNode,
+ FX_BOOL bCleared = TRUE) override;
// Get document path
- virtual void GetURL(CXFA_FFDoc* hDoc, CFX_WideString& wsDocURL);
- virtual FX_ARGB GetHighlightColor(CXFA_FFDoc* hDoc);
+ void GetURL(CXFA_FFDoc* hDoc, CFX_WideString& wsDocURL) override;
+ FX_ARGB GetHighlightColor(CXFA_FFDoc* hDoc) override;
/**
*Submit data to email, http, ftp.
@@ -152,36 +139,30 @@ class CPDFXFA_Document : public IXFA_DocProvider {
* @param[in] bEmbedPDF, specifies whether PDF is embedded in the submitted
*content or not.
*/
- virtual FX_BOOL SubmitData(CXFA_FFDoc* hDoc, CXFA_Submit submit);
+ FX_BOOL SubmitData(CXFA_FFDoc* hDoc, CXFA_Submit submit) override;
- virtual FX_BOOL CheckWord(CXFA_FFDoc* hDoc, const CFX_ByteStringC& sWord) {
- return FALSE;
- }
- virtual FX_BOOL GetSuggestWords(CXFA_FFDoc* hDoc,
- const CFX_ByteStringC& sWord,
- std::vector<CFX_ByteString>& sSuggest) {
- return FALSE;
- }
+ FX_BOOL CheckWord(CXFA_FFDoc* hDoc, const CFX_ByteStringC& sWord) override;
+ FX_BOOL GetSuggestWords(CXFA_FFDoc* hDoc,
+ const CFX_ByteStringC& sWord,
+ std::vector<CFX_ByteString>& sSuggest) override;
// Get PDF javascript object, set the object to pValue.
- virtual FX_BOOL GetPDFScriptObject(CXFA_FFDoc* hDoc,
- const CFX_ByteStringC& utf8Name,
- CFXJSE_Value* pValue);
-
- virtual FX_BOOL GetGlobalProperty(CXFA_FFDoc* hDoc,
- const CFX_ByteStringC& szPropName,
- CFXJSE_Value* pValue);
- virtual FX_BOOL SetGlobalProperty(CXFA_FFDoc* hDoc,
- const CFX_ByteStringC& szPropName,
- CFXJSE_Value* pValue);
- virtual CPDF_Document* OpenPDF(CXFA_FFDoc* hDoc,
- IFX_FileRead* pFile,
- FX_BOOL bTakeOverFile) {
- return nullptr;
- }
-
- virtual IFX_FileRead* OpenLinkedFile(CXFA_FFDoc* hDoc,
- const CFX_WideString& wsLink);
+ FX_BOOL GetPDFScriptObject(CXFA_FFDoc* hDoc,
+ const CFX_ByteStringC& utf8Name,
+ CFXJSE_Value* pValue) override;
+
+ FX_BOOL GetGlobalProperty(CXFA_FFDoc* hDoc,
+ const CFX_ByteStringC& szPropName,
+ CFXJSE_Value* pValue) override;
+ FX_BOOL SetGlobalProperty(CXFA_FFDoc* hDoc,
+ const CFX_ByteStringC& szPropName,
+ CFXJSE_Value* pValue) override;
+ CPDF_Document* OpenPDF(CXFA_FFDoc* hDoc,
+ IFX_FileRead* pFile,
+ FX_BOOL bTakeOverFile) override;
+
+ IFX_FileRead* OpenLinkedFile(CXFA_FFDoc* hDoc,
+ const CFX_WideString& wsLink) override;
FX_BOOL _OnBeforeNotifySumbit();
void _OnAfterNotifySumbit();
diff --git a/fpdfsdk/fpdfxfa/include/fpdfxfa_page.h b/fpdfsdk/fpdfxfa/include/fpdfxfa_page.h
index 2e08f580ed..7b60c669cc 100644
--- a/fpdfsdk/fpdfxfa/include/fpdfxfa_page.h
+++ b/fpdfsdk/fpdfxfa/include/fpdfxfa_page.h
@@ -9,12 +9,11 @@
#include <memory>
-#include "core/fpdfapi/fpdf_parser/include/cpdf_dictionary.h"
-#include "core/fpdfapi/include/cpdf_modulemgr.h"
-#include "core/fxcrt/include/fx_coordinates.h"
#include "core/fxcrt/include/fx_system.h"
+class CFX_Matrix;
class CPDFXFA_Document;
+class CPDF_Dictionary;
class CPDF_Page;
class CXFA_FFPageView;