Home | History | Annotate | Download | only in parser
      1 // Copyright 2014 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 _SCRIPT_LAYOUTPSEUDOMODEL_H_
      8 #define _SCRIPT_LAYOUTPSEUDOMODEL_H_
      9 enum XFA_LAYOUTMODEL_HWXY {
     10   XFA_LAYOUTMODEL_H,
     11   XFA_LAYOUTMODEL_W,
     12   XFA_LAYOUTMODEL_X,
     13   XFA_LAYOUTMODEL_Y
     14 };
     15 class CScript_LayoutPseudoModel : public CXFA_OrdinaryObject {
     16  public:
     17   CScript_LayoutPseudoModel(CXFA_Document* pDocument);
     18   ~CScript_LayoutPseudoModel();
     19 
     20   void Script_LayoutPseudoModel_Ready(FXJSE_HVALUE hValue,
     21                                       FX_BOOL bSetting,
     22                                       XFA_ATTRIBUTE eAttribute);
     23 
     24   void Script_LayoutPseudoModel_HWXY(CFXJSE_Arguments* pArguments,
     25                                      XFA_LAYOUTMODEL_HWXY layoutModel);
     26   void Script_LayoutPseudoModel_H(CFXJSE_Arguments* pArguments);
     27   void Script_LayoutPseudoModel_W(CFXJSE_Arguments* pArguments);
     28   void Script_LayoutPseudoModel_X(CFXJSE_Arguments* pArguments);
     29   void Script_LayoutPseudoModel_Y(CFXJSE_Arguments* pArguments);
     30   void Script_LayoutPseudoModel_NumberedPageCount(CFXJSE_Arguments* pArguments,
     31                                                   FX_BOOL bNumbered);
     32   void Script_LayoutPseudoModel_PageCount(CFXJSE_Arguments* pArguments);
     33   void Script_LayoutPseudoModel_PageSpan(CFXJSE_Arguments* pArguments);
     34   void Script_LayoutPseudoModel_Page(CFXJSE_Arguments* pArguments);
     35   void Script_LayoutPseudoModel_PageContent(CFXJSE_Arguments* pArguments);
     36   void Script_LayoutPseudoModel_AbsPageCount(CFXJSE_Arguments* pArguments);
     37   void Script_LayoutPseudoModel_AbsPageCountInBatch(
     38       CFXJSE_Arguments* pArguments);
     39   void Script_LayoutPseudoModel_SheetCountInBatch(CFXJSE_Arguments* pArguments);
     40   void Script_LayoutPseudoModel_Relayout(CFXJSE_Arguments* pArguments);
     41   void Script_LayoutPseudoModel_AbsPageSpan(CFXJSE_Arguments* pArguments);
     42   void Script_LayoutPseudoModel_AbsPageInBatch(CFXJSE_Arguments* pArguments);
     43   void Script_LayoutPseudoModel_SheetInBatch(CFXJSE_Arguments* pArguments);
     44   void Script_LayoutPseudoModel_Sheet(CFXJSE_Arguments* pArguments);
     45   void Script_LayoutPseudoModel_RelayoutPageArea(CFXJSE_Arguments* pArguments);
     46   void Script_LayoutPseudoModel_SheetCount(CFXJSE_Arguments* pArguments);
     47   void Script_LayoutPseudoModel_AbsPage(CFXJSE_Arguments* pArguments);
     48 
     49  protected:
     50   void Script_LayoutPseudoModel_GetObjArray(IXFA_DocLayout* pDocLayout,
     51                                             int32_t iPageNo,
     52                                             const CFX_WideString& wsType,
     53                                             FX_BOOL bOnPageArea,
     54                                             CXFA_NodeArray& retArray);
     55   void Script_LayoutPseudoModel_PageImp(CFXJSE_Arguments* pArguments,
     56                                         FX_BOOL bAbsPage);
     57 };
     58 #endif
     59