Home | History | Annotate | Download | only in xfa
      1 // Copyright 2017 PDFium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
      6 
      7 #ifndef FXJS_XFA_CJX_TREE_H_
      8 #define FXJS_XFA_CJX_TREE_H_
      9 
     10 #include "fxjs/CJX_Define.h"
     11 #include "fxjs/xfa/cjx_object.h"
     12 
     13 class CXFA_Object;
     14 class CXFA_Node;
     15 
     16 class CJX_Tree : public CJX_Object {
     17  public:
     18   explicit CJX_Tree(CXFA_Object* obj);
     19   ~CJX_Tree() override;
     20 
     21   JS_METHOD(resolveNode, CJX_Tree);
     22   JS_METHOD(resolveNodes, CJX_Tree);
     23 
     24   JS_PROP(all);
     25   JS_PROP(classAll);
     26   JS_PROP(classIndex);
     27   JS_PROP(index);
     28   JS_PROP(name);
     29   JS_PROP(nodes);
     30   JS_PROP(parent);
     31   JS_PROP(somExpression);
     32 
     33  private:
     34   void ResolveNodeList(CFXJSE_Value* pValue,
     35                        WideString wsExpression,
     36                        uint32_t dwFlag,
     37                        CXFA_Node* refNode);
     38 
     39   static const CJX_MethodSpec MethodSpecs[];
     40 };
     41 
     42 #endif  // FXJS_XFA_CJX_TREE_H_
     43