From 0f25f014b3bff4229cb93a1ca850babc5dd382da Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Thu, 27 Jul 2017 11:23:48 -0400 Subject: 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 Commit-Queue: dsinclair --- BUILD.gn | 2 -- xfa/fde/css/cfde_cssstyleselector.cpp | 1 - xfa/fxfa/cxfa_csstagprovider.cpp | 12 ----------- xfa/fxfa/cxfa_csstagprovider.h | 39 ----------------------------------- xfa/fxfa/cxfa_textparser.cpp | 10 ++++++--- xfa/fxfa/cxfa_textparser.h | 28 +++++++++++++++++++++++-- 6 files changed, 33 insertions(+), 59 deletions(-) delete mode 100644 xfa/fxfa/cxfa_csstagprovider.cpp delete mode 100644 xfa/fxfa/cxfa_csstagprovider.h diff --git a/BUILD.gn b/BUILD.gn index 9f8c52ae4b..057e84ff00 100644 --- a/BUILD.gn +++ b/BUILD.gn @@ -1614,8 +1614,6 @@ if (pdf_enable_xfa) { "xfa/fwl/theme/cfwl_utils.h", "xfa/fwl/theme/cfwl_widgettp.cpp", "xfa/fwl/theme/cfwl_widgettp.h", - "xfa/fxfa/cxfa_csstagprovider.cpp", - "xfa/fxfa/cxfa_csstagprovider.h", "xfa/fxfa/cxfa_deffontmgr.cpp", "xfa/fxfa/cxfa_deffontmgr.h", "xfa/fxfa/cxfa_eventparam.cpp", diff --git a/xfa/fde/css/cfde_cssstyleselector.cpp b/xfa/fde/css/cfde_cssstyleselector.cpp index 2213feb2be..51e60bce4f 100644 --- a/xfa/fde/css/cfde_cssstyleselector.cpp +++ b/xfa/fde/css/cfde_cssstyleselector.cpp @@ -21,7 +21,6 @@ #include "xfa/fde/css/cfde_cssstylesheet.h" #include "xfa/fde/css/cfde_csssyntaxparser.h" #include "xfa/fde/css/cfde_cssvaluelist.h" -#include "xfa/fxfa/cxfa_csstagprovider.h" CFDE_CSSStyleSelector::CFDE_CSSStyleSelector(CFGAS_FontMgr* pFontMgr) : m_pFontMgr(pFontMgr), m_fDefFontSize(12.0f) {} 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 - -#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 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_TextParser::ParseTagInfo( +std::unique_ptr CXFA_TextParser::ParseTagInfo( CFX_XMLNode* pXMLNode) { - auto tagProvider = pdfium::MakeUnique(); + auto tagProvider = pdfium::MakeUnique(); 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 m_Attributes; + }; + void InitCSSData(CXFA_TextProvider* pTextProvider); void ParseRichText(CFX_XMLNode* pXMLNode, CFDE_CSSComputedStyle* pParentStyle); - std::unique_ptr ParseTagInfo(CFX_XMLNode* pXMLNode); + std::unique_ptr ParseTagInfo(CFX_XMLNode* pXMLNode); std::unique_ptr LoadDefaultSheetStyle(); CFX_RetainPtr CreateStyle( CFDE_CSSComputedStyle* pParentStyle); -- cgit v1.2.3