diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2018-01-22 20:03:17 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-01-22 20:03:17 +0000 |
commit | 6221f22c79a532f7dd422cc51afb91cb35bc349d (patch) | |
tree | 919954dcc9db6eb997040c03f0ce98b3417865a9 /xfa | |
parent | ab218bf9f437d666e1ef7974c51f95f456bd036f (diff) | |
download | pdfium-6221f22c79a532f7dd422cc51afb91cb35bc349d.tar.xz |
Move WidgetAcc and IsWidgetReady to CXFA_Node
This CL moves the widget_acc storage and the is_widget_ready flag from
CXFA_Object to CXFA_Node.
Change-Id: I96aeb38a854f227985a5549dc67f1b84d924abb8
Reviewed-on: https://pdfium-review.googlesource.com/23330
Commit-Queue: dsinclair <dsinclair@chromium.org>
Reviewed-by: Henrique Nakashima <hnakashima@chromium.org>
Diffstat (limited to 'xfa')
-rw-r--r-- | xfa/fxfa/parser/cxfa_node.cpp | 5 | ||||
-rw-r--r-- | xfa/fxfa/parser/cxfa_node.h | 10 | ||||
-rw-r--r-- | xfa/fxfa/parser/cxfa_object.cpp | 5 | ||||
-rw-r--r-- | xfa/fxfa/parser/cxfa_object.h | 10 |
4 files changed, 15 insertions, 15 deletions
diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp index 6a510cc0d4..90103673cd 100644 --- a/xfa/fxfa/parser/cxfa_node.cpp +++ b/xfa/fxfa/parser/cxfa_node.cpp @@ -1830,6 +1830,11 @@ CXFA_Node* CXFA_Node::GetExclGroupIfExists() { return pExcl; } +void CXFA_Node::SetWidgetReady() { + acc_ = pdfium::MakeUnique<CXFA_WidgetAcc>(AsNode()); + is_widget_ready_ = true; +} + int32_t CXFA_Node::ProcessEvent(CXFA_FFDocView* docView, XFA_AttributeEnum iActivity, CXFA_EventParam* pEventParam) { diff --git a/xfa/fxfa/parser/cxfa_node.h b/xfa/fxfa/parser/cxfa_node.h index e99180e0dd..fa455ba21b 100644 --- a/xfa/fxfa/parser/cxfa_node.h +++ b/xfa/fxfa/parser/cxfa_node.h @@ -304,6 +304,14 @@ class CXFA_Node : public CXFA_Object { bool IsNull() const { return m_bIsNull; } void SetIsNull(bool val) { m_bIsNull = val; } + void SetWidgetReady(); + bool IsWidgetReady() const { return is_widget_ready_; } + CXFA_WidgetAcc* GetWidgetAcc() { + ASSERT(IsWidgetReady()); + ASSERT(acc_.get() != nullptr); + return acc_.get(); + } + protected: CXFA_Node(CXFA_Document* pDoc, XFA_PacketType ePacket, @@ -371,6 +379,8 @@ class CXFA_Node : public CXFA_Object { XFA_Element m_eUIType = XFA_Element::Unknown; bool m_bIsNull = true; bool m_bPreNull = true; + bool is_widget_ready_ = false; + std::unique_ptr<CXFA_WidgetAcc> acc_; }; #endif // XFA_FXFA_PARSER_CXFA_NODE_H_ diff --git a/xfa/fxfa/parser/cxfa_object.cpp b/xfa/fxfa/parser/cxfa_object.cpp index 0c866d350a..a716c651f5 100644 --- a/xfa/fxfa/parser/cxfa_object.cpp +++ b/xfa/fxfa/parser/cxfa_object.cpp @@ -56,11 +56,6 @@ const CXFA_TreeList* CXFA_Object::AsTreeList() const { return IsTreeList() ? static_cast<const CXFA_TreeList*>(this) : nullptr; } -void CXFA_Object::SetWidgetReady() { - acc_ = pdfium::MakeUnique<CXFA_WidgetAcc>(AsNode()); - is_widget_ready_ = true; -} - CXFA_Node* ToNode(CXFA_Object* pObj) { return pObj ? pObj->AsNode() : nullptr; } diff --git a/xfa/fxfa/parser/cxfa_object.h b/xfa/fxfa/parser/cxfa_object.h index 3843aafb33..20412dcbf7 100644 --- a/xfa/fxfa/parser/cxfa_object.h +++ b/xfa/fxfa/parser/cxfa_object.h @@ -31,7 +31,6 @@ class CJX_Object; class CXFA_Document; class CXFA_Node; class CXFA_TreeList; -class CXFA_WidgetAcc; class CXFA_Object : public CFXJSE_HostObject { public: @@ -78,13 +77,6 @@ class CXFA_Object : public CFXJSE_HostObject { m_elementType == XFA_Element::Subform || m_elementType == XFA_Element::ExclGroup; } - void SetWidgetReady(); - bool IsWidgetReady() const { return is_widget_ready_; } - CXFA_WidgetAcc* GetWidgetAcc() { - ASSERT(IsWidgetReady()); - ASSERT(acc_.get() != nullptr); - return acc_.get(); - } XFA_Element GetElementType() const { return m_elementType; } WideStringView GetClassName() const { return m_elementName; } @@ -102,12 +94,10 @@ class CXFA_Object : public CFXJSE_HostObject { UnownedPtr<CXFA_Document> const m_pDocument; const XFA_ObjectType m_objectType; const XFA_Element m_elementType; - bool is_widget_ready_ = false; const uint32_t m_elementNameHash; const WideStringView m_elementName; std::unique_ptr<CJX_Object> m_pJSObject; - std::unique_ptr<CXFA_WidgetAcc> acc_; }; CXFA_Node* ToNode(CXFA_Object* pObj); |