summaryrefslogtreecommitdiff
path: root/xfa/fxfa
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2017-07-27 11:23:48 -0400
committerChromium commit bot <commit-bot@chromium.org>2017-07-27 16:00:12 +0000
commit0f25f014b3bff4229cb93a1ca850babc5dd382da (patch)
tree3dcc98af117703e4af87401582ba948eb0bdd840 /xfa/fxfa
parentf63e8133d7a767c6f162e700056ae8ba8512820d (diff)
downloadpdfium-0f25f014b3bff4229cb93a1ca850babc5dd382da.tar.xz
Move CXFA_CSSTagProvider to inner class of CXFA_TextParser
The TagProvider is only used in CXFA_TextParser. This CL moves the code to a private inner class and renames to TagProvider. Change-Id: Idd1926250fc59592cc923fde9ec6f8750cb10abf Reviewed-on: https://pdfium-review.googlesource.com/9231 Reviewed-by: Ryan Harrison <rharrison@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'xfa/fxfa')
-rw-r--r--xfa/fxfa/cxfa_csstagprovider.cpp12
-rw-r--r--xfa/fxfa/cxfa_csstagprovider.h39
-rw-r--r--xfa/fxfa/cxfa_textparser.cpp10
-rw-r--r--xfa/fxfa/cxfa_textparser.h28
4 files changed, 33 insertions, 56 deletions
diff --git a/xfa/fxfa/cxfa_csstagprovider.cpp b/xfa/fxfa/cxfa_csstagprovider.cpp
deleted file mode 100644
index 98d00d4807..0000000000
--- a/xfa/fxfa/cxfa_csstagprovider.cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2017 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
-
-#include "xfa/fxfa/cxfa_csstagprovider.h"
-
-CXFA_CSSTagProvider::CXFA_CSSTagProvider()
- : m_bTagAvailable(false), m_bContent(false) {}
-
-CXFA_CSSTagProvider::~CXFA_CSSTagProvider() {}
diff --git a/xfa/fxfa/cxfa_csstagprovider.h b/xfa/fxfa/cxfa_csstagprovider.h
deleted file mode 100644
index 058740b732..0000000000
--- a/xfa/fxfa/cxfa_csstagprovider.h
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright 2017 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 XFA_FXFA_CXFA_CSSTAGPROVIDER_H_
-#define XFA_FXFA_CXFA_CSSTAGPROVIDER_H_
-
-#include <map>
-
-#include "core/fxcrt/fx_string.h"
-
-class CXFA_CSSTagProvider {
- public:
- CXFA_CSSTagProvider();
- ~CXFA_CSSTagProvider();
-
- CFX_WideString GetTagName() { return m_wsTagName; }
-
- void SetTagName(const CFX_WideString& wsName) { m_wsTagName = wsName; }
- void SetAttribute(const CFX_WideString& wsAttr,
- const CFX_WideString& wsValue) {
- m_Attributes.insert({wsAttr, wsValue});
- }
-
- CFX_WideString GetAttribute(const CFX_WideString& wsAttr) {
- return m_Attributes[wsAttr];
- }
-
- bool m_bTagAvailable;
- bool m_bContent;
-
- private:
- CFX_WideString m_wsTagName;
- std::map<CFX_WideString, CFX_WideString> m_Attributes;
-};
-
-#endif // XFA_FXFA_CXFA_CSSTAGPROVIDER_H_
diff --git a/xfa/fxfa/cxfa_textparser.cpp b/xfa/fxfa/cxfa_textparser.cpp
index 2bc0096962..c74cf50900 100644
--- a/xfa/fxfa/cxfa_textparser.cpp
+++ b/xfa/fxfa/cxfa_textparser.cpp
@@ -19,7 +19,6 @@
#include "xfa/fde/css/cfde_cssstylesheet.h"
#include "xfa/fde/css/fde_css.h"
#include "xfa/fgas/font/cfgas_fontmgr.h"
-#include "xfa/fxfa/cxfa_csstagprovider.h"
#include "xfa/fxfa/cxfa_ffapp.h"
#include "xfa/fxfa/cxfa_ffdoc.h"
#include "xfa/fxfa/cxfa_fontmgr.h"
@@ -269,9 +268,9 @@ bool CXFA_TextParser::TagValidate(const CFX_WideString& wsName) const {
FX_HashCode_GetW(wsName.AsStringC(), true));
}
-std::unique_ptr<CXFA_CSSTagProvider> CXFA_TextParser::ParseTagInfo(
+std::unique_ptr<CXFA_TextParser::TagProvider> CXFA_TextParser::ParseTagInfo(
CFX_XMLNode* pXMLNode) {
- auto tagProvider = pdfium::MakeUnique<CXFA_CSSTagProvider>();
+ auto tagProvider = pdfium::MakeUnique<TagProvider>();
CFX_WideString wsName;
if (pXMLNode->GetType() == FX_XMLNODE_Element) {
@@ -623,3 +622,8 @@ bool CXFA_TextParser::GetTabstops(CFDE_CSSComputedStyle* pStyle,
}
return true;
}
+
+CXFA_TextParser::TagProvider::TagProvider()
+ : m_bTagAvailable(false), m_bContent(false) {}
+
+CXFA_TextParser::TagProvider::~TagProvider() {}
diff --git a/xfa/fxfa/cxfa_textparser.h b/xfa/fxfa/cxfa_textparser.h
index 3c1b6039d0..303b10ce07 100644
--- a/xfa/fxfa/cxfa_textparser.h
+++ b/xfa/fxfa/cxfa_textparser.h
@@ -20,7 +20,6 @@ class CFDE_CSSComputedStyle;
class CFDE_CSSStyleSelector;
class CFDE_CSSStyleSheet;
class CFX_XMLNode;
-class CXFA_CSSTagProvider;
class CXFA_TextParseContext;
class CXFA_TextProvider;
class CXFA_TextTabstopsContext;
@@ -86,10 +85,35 @@ class CXFA_TextParser {
bool TagValidate(const CFX_WideString& str) const;
private:
+ class TagProvider {
+ public:
+ TagProvider();
+ ~TagProvider();
+
+ CFX_WideString GetTagName() { return m_wsTagName; }
+
+ void SetTagName(const CFX_WideString& wsName) { m_wsTagName = wsName; }
+ void SetAttribute(const CFX_WideString& wsAttr,
+ const CFX_WideString& wsValue) {
+ m_Attributes.insert({wsAttr, wsValue});
+ }
+
+ CFX_WideString GetAttribute(const CFX_WideString& wsAttr) {
+ return m_Attributes[wsAttr];
+ }
+
+ bool m_bTagAvailable;
+ bool m_bContent;
+
+ private:
+ CFX_WideString m_wsTagName;
+ std::map<CFX_WideString, CFX_WideString> m_Attributes;
+ };
+
void InitCSSData(CXFA_TextProvider* pTextProvider);
void ParseRichText(CFX_XMLNode* pXMLNode,
CFDE_CSSComputedStyle* pParentStyle);
- std::unique_ptr<CXFA_CSSTagProvider> ParseTagInfo(CFX_XMLNode* pXMLNode);
+ std::unique_ptr<TagProvider> ParseTagInfo(CFX_XMLNode* pXMLNode);
std::unique_ptr<CFDE_CSSStyleSheet> LoadDefaultSheetStyle();
CFX_RetainPtr<CFDE_CSSComputedStyle> CreateStyle(
CFDE_CSSComputedStyle* pParentStyle);