diff options
Diffstat (limited to 'xfa/fxfa')
-rw-r--r-- | xfa/fxfa/parser/cxfa_thisproxy.cpp | 8 | ||||
-rw-r--r-- | xfa/fxfa/parser/cxfa_thisproxy.h | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/xfa/fxfa/parser/cxfa_thisproxy.cpp b/xfa/fxfa/parser/cxfa_thisproxy.cpp index 314c98c9f0..a3593e99b5 100644 --- a/xfa/fxfa/parser/cxfa_thisproxy.cpp +++ b/xfa/fxfa/parser/cxfa_thisproxy.cpp @@ -10,6 +10,12 @@ #include "third_party/base/ptr_util.h" #include "xfa/fxfa/parser/cxfa_node.h" +// static +CXFA_ThisProxy* CXFA_ThisProxy::FromCXFAObject(CXFA_Object* that) { + return that && that->IsVariablesThis() ? static_cast<CXFA_ThisProxy*>(that) + : nullptr; +} + CXFA_ThisProxy::CXFA_ThisProxy(CXFA_Node* pThisNode, CXFA_Node* pScriptNode) : CXFA_Object(pThisNode->GetDocument(), XFA_ObjectType::VariablesThis, @@ -19,4 +25,4 @@ CXFA_ThisProxy::CXFA_ThisProxy(CXFA_Node* pThisNode, CXFA_Node* pScriptNode) m_pThisNode(pThisNode), m_pScriptNode(pScriptNode) {} -CXFA_ThisProxy::~CXFA_ThisProxy() {} +CXFA_ThisProxy::~CXFA_ThisProxy() = default; diff --git a/xfa/fxfa/parser/cxfa_thisproxy.h b/xfa/fxfa/parser/cxfa_thisproxy.h index 197a97da67..e86a6b5534 100644 --- a/xfa/fxfa/parser/cxfa_thisproxy.h +++ b/xfa/fxfa/parser/cxfa_thisproxy.h @@ -13,6 +13,8 @@ class CXFA_ThisProxy : public CXFA_Object { public: + static CXFA_ThisProxy* FromCXFAObject(CXFA_Object* that); + CXFA_ThisProxy(CXFA_Node* pThisNode, CXFA_Node* pScriptNode); ~CXFA_ThisProxy() override; |