diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2016-03-14 15:56:00 -0400 |
---|---|---|
committer | Dan Sinclair <dsinclair@chromium.org> | 2016-03-14 15:56:00 -0400 |
commit | 13ee55a8267963c9b39486a6a22646fbdd770742 (patch) | |
tree | e50fd9cb4dbde547de6a913c54128114db64df4e /core | |
parent | 544bbc6d81ee9d94a09809830b3f622f2dbad28a (diff) | |
download | pdfium-13ee55a8267963c9b39486a6a22646fbdd770742.tar.xz |
Move fx_crypto.h and fpdf_text.h out of core/include.
This CL moves the two files and breaks fpdf_text.h apart into individual pieces.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1801973002 .
Diffstat (limited to 'core')
-rw-r--r-- | core/fdrm/crypto/fx_crypt.cpp | 2 | ||||
-rw-r--r-- | core/fdrm/crypto/fx_crypt_aes.cpp | 2 | ||||
-rw-r--r-- | core/fdrm/crypto/fx_crypt_sha.cpp | 2 | ||||
-rw-r--r-- | core/fdrm/crypto/include/fx_crypt.h (renamed from core/include/fdrm/fx_crypt.h) | 6 | ||||
-rw-r--r-- | core/fpdfapi/fpdf_page/fpdf_page_doc.cpp | 2 | ||||
-rw-r--r-- | core/fpdfapi/fpdf_parser/cpdf_standard_crypto_handler.cpp | 2 | ||||
-rw-r--r-- | core/fpdfapi/fpdf_parser/cpdf_standard_security_handler.cpp | 2 | ||||
-rw-r--r-- | core/fpdftext/fpdf_text_int.cpp | 19 | ||||
-rw-r--r-- | core/fpdftext/include/ipdf_linkextract.h | 26 | ||||
-rw-r--r-- | core/fpdftext/include/ipdf_textpage.h (renamed from core/include/fpdftext/fpdf_text.h) | 64 | ||||
-rw-r--r-- | core/fpdftext/include/ipdf_textpagefind.h | 29 | ||||
-rw-r--r-- | core/fpdftext/text_int.h | 4 | ||||
-rw-r--r-- | core/include/fxcrt/fx_coordinates.h | 1 |
13 files changed, 89 insertions, 72 deletions
diff --git a/core/fdrm/crypto/fx_crypt.cpp b/core/fdrm/crypto/fx_crypt.cpp index c1016cdcd9..d5cbdb5a82 100644 --- a/core/fdrm/crypto/fx_crypt.cpp +++ b/core/fdrm/crypto/fx_crypt.cpp @@ -4,7 +4,7 @@ // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com -#include "core/include/fdrm/fx_crypt.h" +#include "core/fdrm/crypto/include/fx_crypt.h" #ifdef __cplusplus extern "C" { diff --git a/core/fdrm/crypto/fx_crypt_aes.cpp b/core/fdrm/crypto/fx_crypt_aes.cpp index d27783f820..b56d8fe33c 100644 --- a/core/fdrm/crypto/fx_crypt_aes.cpp +++ b/core/fdrm/crypto/fx_crypt_aes.cpp @@ -4,7 +4,7 @@ // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com -#include "core/include/fdrm/fx_crypt.h" +#include "core/fdrm/crypto/include/fx_crypt.h" #ifdef __cplusplus extern "C" { diff --git a/core/fdrm/crypto/fx_crypt_sha.cpp b/core/fdrm/crypto/fx_crypt_sha.cpp index c7d171098b..5f1558943d 100644 --- a/core/fdrm/crypto/fx_crypt_sha.cpp +++ b/core/fdrm/crypto/fx_crypt_sha.cpp @@ -4,7 +4,7 @@ // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com -#include "core/include/fdrm/fx_crypt.h" +#include "core/fdrm/crypto/include/fx_crypt.h" #ifdef __cplusplus extern "C" { diff --git a/core/include/fdrm/fx_crypt.h b/core/fdrm/crypto/include/fx_crypt.h index 259dc85477..fdba0e7164 100644 --- a/core/include/fdrm/fx_crypt.h +++ b/core/fdrm/crypto/include/fx_crypt.h @@ -4,8 +4,8 @@ // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com -#ifndef CORE_INCLUDE_FDRM_FX_CRYPT_H_ -#define CORE_INCLUDE_FDRM_FX_CRYPT_H_ +#ifndef CORE_FDRM_CRYPTO_INCLUDE_FX_CRYPT_H_ +#define CORE_FDRM_CRYPTO_INCLUDE_FX_CRYPT_H_ #include "core/include/fxcrt/fx_system.h" @@ -68,4 +68,4 @@ void CRYPT_SetPubKeyDecryptor(FX_BOOL (*func)(const uint8_t* pData, }; #endif -#endif // CORE_INCLUDE_FDRM_FX_CRYPT_H_ +#endif // CORE_FDRM_CRYPTO_INCLUDE_FX_CRYPT_H_ diff --git a/core/fpdfapi/fpdf_page/fpdf_page_doc.cpp b/core/fpdfapi/fpdf_page/fpdf_page_doc.cpp index 1a31364b1c..76ecdccae3 100644 --- a/core/fpdfapi/fpdf_page/fpdf_page_doc.cpp +++ b/core/fpdfapi/fpdf_page/fpdf_page_doc.cpp @@ -6,8 +6,8 @@ #include "core/fpdfapi/fpdf_page/pageint.h" +#include "core/fdrm/crypto/include/fx_crypt.h" #include "core/fpdfapi/fpdf_font/font_int.h" -#include "core/include/fdrm/fx_crypt.h" #include "core/include/fpdfapi/cpdf_array.h" #include "core/include/fpdfapi/cpdf_dictionary.h" #include "core/include/fpdfapi/cpdf_document.h" diff --git a/core/fpdfapi/fpdf_parser/cpdf_standard_crypto_handler.cpp b/core/fpdfapi/fpdf_parser/cpdf_standard_crypto_handler.cpp index b73238997c..0be414a135 100644 --- a/core/fpdfapi/fpdf_parser/cpdf_standard_crypto_handler.cpp +++ b/core/fpdfapi/fpdf_parser/cpdf_standard_crypto_handler.cpp @@ -8,7 +8,7 @@ #include <time.h> -#include "core/include/fdrm/fx_crypt.h" +#include "core/fdrm/crypto/include/fx_crypt.h" #include "core/include/fpdfapi/cpdf_parser.h" #include "core/include/fpdfapi/cpdf_simple_parser.h" #include "core/include/fpdfapi/ipdf_security_handler.h" diff --git a/core/fpdfapi/fpdf_parser/cpdf_standard_security_handler.cpp b/core/fpdfapi/fpdf_parser/cpdf_standard_security_handler.cpp index e5eb4c8469..6da4cb1ff6 100644 --- a/core/fpdfapi/fpdf_parser/cpdf_standard_security_handler.cpp +++ b/core/fpdfapi/fpdf_parser/cpdf_standard_security_handler.cpp @@ -8,8 +8,8 @@ #include <time.h> +#include "core/fdrm/crypto/include/fx_crypt.h" #include "core/fpdfapi/fpdf_parser/cpdf_standard_crypto_handler.h" -#include "core/include/fdrm/fx_crypt.h" #include "core/include/fpdfapi/cpdf_array.h" #include "core/include/fpdfapi/cpdf_dictionary.h" #include "core/include/fpdfapi/cpdf_object.h" diff --git a/core/fpdftext/fpdf_text_int.cpp b/core/fpdftext/fpdf_text_int.cpp index d16ccb8dde..1bd544c444 100644 --- a/core/fpdftext/fpdf_text_int.cpp +++ b/core/fpdftext/fpdf_text_int.cpp @@ -13,18 +13,28 @@ #include <utility> #include <vector> +#include "core/fpdftext/include/ipdf_linkextract.h" +#include "core/fpdftext/include/ipdf_textpage.h" +#include "core/fpdftext/include/ipdf_textpagefind.h" #include "core/include/fpdfapi/cpdf_dictionary.h" #include "core/include/fpdfapi/cpdf_string.h" #include "core/include/fpdfapi/fpdf_module.h" #include "core/include/fpdfapi/fpdf_page.h" #include "core/include/fpdfapi/fpdf_pageobj.h" #include "core/include/fpdfapi/fpdf_resource.h" -#include "core/include/fpdftext/fpdf_text.h" #include "core/include/fxcrt/fx_bidi.h" #include "core/include/fxcrt/fx_ext.h" #include "core/include/fxcrt/fx_ucd.h" #include "third_party/base/stl_util.h" +#define FPDFTEXT_RLTB 1 +#define FPDFTEXT_LEFT -1 +#define FPDFTEXT_RIGHT 1 + +#define FPDFTEXT_MATCHCASE 0x00000001 +#define FPDFTEXT_MATCHWHOLEWORD 0x00000002 +#define FPDFTEXT_CONSECUTIVE 0x00000004 + namespace { FX_BOOL _IsIgnoreSpaceCharacter(FX_WCHAR curChar) { @@ -1899,7 +1909,8 @@ CPDF_TextPageFind::CPDF_TextPageFind(const IPDF_TextPage* pTextPage) FPDF_CHAR_INFO info; pTextPage->GetCharInfo(i, &info); int indexSize = pdfium::CollectionSize<int>(m_CharIndex); - if (info.m_Flag == CHAR_NORMAL || info.m_Flag == CHAR_GENERATED) { + if (info.m_Flag == FPDFTEXT_CHAR_NORMAL || + info.m_Flag == FPDFTEXT_CHAR_GENERATED) { if (indexSize % 2) { m_CharIndex.push_back(1); } else { @@ -2325,8 +2336,8 @@ void CPDF_LinkExtract::ParseLink() { while (pos < TotalChar) { FPDF_CHAR_INFO pageChar; m_pTextPage->GetCharInfo(pos, &pageChar); - if (pageChar.m_Flag == CHAR_GENERATED || pageChar.m_Unicode == 0x20 || - pos == TotalChar - 1) { + if (pageChar.m_Flag == FPDFTEXT_CHAR_GENERATED || + pageChar.m_Unicode == 0x20 || pos == TotalChar - 1) { int nCount = pos - start; if (pos == TotalChar - 1) { nCount++; diff --git a/core/fpdftext/include/ipdf_linkextract.h b/core/fpdftext/include/ipdf_linkextract.h new file mode 100644 index 0000000000..2d7fe02127 --- /dev/null +++ b/core/fpdftext/include/ipdf_linkextract.h @@ -0,0 +1,26 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef CORE_FPDFTEXT_INCLUDE_IPDF_LINKEXTRACT_H_ +#define CORE_FPDFTEXT_INCLUDE_IPDF_LINKEXTRACT_H_ + +#include "core/include/fxcrt/fx_coordinates.h" +#include "core/include/fxcrt/fx_system.h" +#include "core/fpdftext/include/ipdf_textpage.h" + +class IPDF_LinkExtract { + public: + static IPDF_LinkExtract* CreateLinkExtract(); + virtual ~IPDF_LinkExtract() {} + + virtual FX_BOOL ExtractLinks(const IPDF_TextPage* pTextPage) = 0; + virtual int CountLinks() const = 0; + virtual CFX_WideString GetURL(int index) const = 0; + virtual void GetBoundedSegment(int index, int& start, int& count) const = 0; + virtual void GetRects(int index, CFX_RectArray& rects) const = 0; +}; + +#endif // CORE_FPDFTEXT_INCLUDE_IPDF_LINKEXTRACT_H_ diff --git a/core/include/fpdftext/fpdf_text.h b/core/fpdftext/include/ipdf_textpage.h index a3457fcf06..1698e9ab28 100644 --- a/core/include/fpdftext/fpdf_text.h +++ b/core/fpdftext/include/ipdf_textpage.h @@ -1,27 +1,17 @@ -// Copyright 2014 PDFium Authors. All rights reserved. +// Copyright 2016 PDFium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com -#ifndef CORE_INCLUDE_FPDFTEXT_FPDF_TEXT_H_ -#define CORE_INCLUDE_FPDFTEXT_FPDF_TEXT_H_ +#ifndef CORE_FPDFTEXT_INCLUDE_IPDF_TEXTPAGE_H_ +#define CORE_FPDFTEXT_INCLUDE_IPDF_TEXTPAGE_H_ +#include "core/include/fpdfapi/fpdf_page.h" +#include "core/include/fpdfapi/fpdf_pageobj.h" #include "core/include/fxcrt/fx_coordinates.h" #include "core/include/fxcrt/fx_system.h" -class CPDF_Page; -class CPDF_TextObject; -class IPDF_LinkExtract; -class IPDF_ReflowedPage; -class IPDF_TextPage; -class IPDF_TextPageFind; - -#define CHAR_ERROR -1 -#define CHAR_NORMAL 0 -#define CHAR_GENERATED 1 -#define CHAR_UNUNICODE 2 - struct FPDF_CHAR_INFO { FX_WCHAR m_Unicode; FX_WCHAR m_Charcode; @@ -34,20 +24,9 @@ struct FPDF_CHAR_INFO { CFX_Matrix m_Matrix; }; -using CFX_RectArray = CFX_ArrayTemplate<CFX_FloatRect>; - -#define FPDFTEXT_LRTB 0 -#define FPDFTEXT_RLTB 1 -#define FPDFTEXT_TBRL 2 -#define FPDFTEXT_LEFT -1 -#define FPDFTEXT_RIGHT 1 -#define FPDFTEXT_UP -2 -#define FPDFTEXT_DOWN 2 - class IPDF_TextPage { public: static IPDF_TextPage* CreateTextPage(const CPDF_Page* pPage, int flags = 0); - static IPDF_TextPage* CreateReflowTextPage(IPDF_ReflowedPage* pRefPage); virtual ~IPDF_TextPage() {} virtual void ParseTextPage() = 0; @@ -87,35 +66,4 @@ class IPDF_TextPage { virtual CFX_WideString GetPageText(int start = 0, int nCount = -1) const = 0; }; -#define FPDFTEXT_MATCHCASE 0x00000001 -#define FPDFTEXT_MATCHWHOLEWORD 0x00000002 -#define FPDFTEXT_CONSECUTIVE 0x00000004 - -class IPDF_TextPageFind { - public: - static IPDF_TextPageFind* CreatePageFind(const IPDF_TextPage* pTextPage); - virtual ~IPDF_TextPageFind() {} - - virtual FX_BOOL FindFirst(const CFX_WideString& findwhat, - int flags, - int startPos = 0) = 0; - virtual FX_BOOL FindNext() = 0; - virtual FX_BOOL FindPrev() = 0; - virtual void GetRectArray(CFX_RectArray& rects) const = 0; - virtual int GetCurOrder() const = 0; - virtual int GetMatchedCount() const = 0; -}; - -class IPDF_LinkExtract { - public: - static IPDF_LinkExtract* CreateLinkExtract(); - virtual ~IPDF_LinkExtract() {} - - virtual FX_BOOL ExtractLinks(const IPDF_TextPage* pTextPage) = 0; - virtual int CountLinks() const = 0; - virtual CFX_WideString GetURL(int index) const = 0; - virtual void GetBoundedSegment(int index, int& start, int& count) const = 0; - virtual void GetRects(int index, CFX_RectArray& rects) const = 0; -}; - -#endif // CORE_INCLUDE_FPDFTEXT_FPDF_TEXT_H_ +#endif // CORE_FPDFTEXT_INCLUDE_IPDF_TEXTPAGE_H_ diff --git a/core/fpdftext/include/ipdf_textpagefind.h b/core/fpdftext/include/ipdf_textpagefind.h new file mode 100644 index 0000000000..88774b6061 --- /dev/null +++ b/core/fpdftext/include/ipdf_textpagefind.h @@ -0,0 +1,29 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef CORE_FPDFTEXT_INCLUDE_IPDF_TEXTPAGEFIND_H_ +#define CORE_FPDFTEXT_INCLUDE_IPDF_TEXTPAGEFIND_H_ + +#include "core/fpdftext/include/ipdf_textpage.h" +#include "core/include/fxcrt/fx_coordinates.h" +#include "core/include/fxcrt/fx_string.h" + +class IPDF_TextPageFind { + public: + static IPDF_TextPageFind* CreatePageFind(const IPDF_TextPage* pTextPage); + virtual ~IPDF_TextPageFind() {} + + virtual FX_BOOL FindFirst(const CFX_WideString& findwhat, + int flags, + int startPos = 0) = 0; + virtual FX_BOOL FindNext() = 0; + virtual FX_BOOL FindPrev() = 0; + virtual void GetRectArray(CFX_RectArray& rects) const = 0; + virtual int GetCurOrder() const = 0; + virtual int GetMatchedCount() const = 0; +}; + +#endif // CORE_FPDFTEXT_INCLUDE_IPDF_TEXTPAGEFIND_H_ diff --git a/core/fpdftext/text_int.h b/core/fpdftext/text_int.h index bc110c719b..42e254ee63 100644 --- a/core/fpdftext/text_int.h +++ b/core/fpdftext/text_int.h @@ -10,8 +10,10 @@ #include <deque> #include <vector> +#include "core/fpdftext/include/ipdf_linkextract.h" +#include "core/fpdftext/include/ipdf_textpage.h" +#include "core/fpdftext/include/ipdf_textpagefind.h" #include "core/include/fpdfapi/fpdf_page.h" -#include "core/include/fpdftext/fpdf_text.h" #include "core/include/fxcrt/fx_basic.h" class CFX_BidiChar; diff --git a/core/include/fxcrt/fx_coordinates.h b/core/include/fxcrt/fx_coordinates.h index 53b4c1a12e..0422da1eaa 100644 --- a/core/include/fxcrt/fx_coordinates.h +++ b/core/include/fxcrt/fx_coordinates.h @@ -310,6 +310,7 @@ class CFX_FloatRect { FX_FLOAT right; FX_FLOAT top; }; +using CFX_RectArray = CFX_ArrayTemplate<CFX_FloatRect>; // LTWH rectangles (y-axis runs downwards). template <class baseType> |