Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(106)

Side by Side Diff: xfa/src/fxfa/parser/xfa_layout_appadapter.cpp

Issue 1803723002: Move xfa/src up to xfa/. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Rebase to master Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
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 #include "xfa/src/fxfa/parser/xfa_layout_appadapter.h"
8
9 #include "xfa/src/fxfa/fm2js/xfa_fm2jsapi.h"
10 #include "xfa/src/fxfa/parser/xfa_docdata.h"
11 #include "xfa/src/fxfa/parser/xfa_doclayout.h"
12 #include "xfa/src/fxfa/parser/xfa_document.h"
13 #include "xfa/src/fxfa/parser/xfa_document_layout_imp.h"
14 #include "xfa/src/fxfa/parser/xfa_layout_itemlayout.h"
15 #include "xfa/src/fxfa/parser/xfa_layout_pagemgr_new.h"
16 #include "xfa/src/fxfa/parser/xfa_localemgr.h"
17 #include "xfa/src/fxfa/parser/xfa_object.h"
18 #include "xfa/src/fxfa/parser/xfa_parser.h"
19 #include "xfa/src/fxfa/parser/xfa_script.h"
20 #include "xfa/src/fxfa/parser/xfa_utils.h"
21
22 FX_DWORD XFA_GetRelevant(CXFA_Node* pFormItem, FX_DWORD dwParentRelvant) {
23 FX_DWORD dwRelevant = XFA_LAYOUTSTATUS_Viewable | XFA_LAYOUTSTATUS_Printable;
24 CFX_WideStringC wsRelevant;
25 if (pFormItem->TryCData(XFA_ATTRIBUTE_Relevant, wsRelevant)) {
26 if (wsRelevant == FX_WSTRC(L"+print") || wsRelevant == FX_WSTRC(L"print")) {
27 dwRelevant &= ~XFA_LAYOUTSTATUS_Viewable;
28 } else if (wsRelevant == FX_WSTRC(L"-print")) {
29 dwRelevant &= ~XFA_LAYOUTSTATUS_Printable;
30 }
31 }
32 if (!(dwParentRelvant & XFA_LAYOUTSTATUS_Viewable) &&
33 (dwRelevant != XFA_LAYOUTSTATUS_Viewable)) {
34 dwRelevant &= ~XFA_LAYOUTSTATUS_Viewable;
35 }
36 if (!(dwParentRelvant & XFA_LAYOUTSTATUS_Printable) &&
37 (dwRelevant != XFA_LAYOUTSTATUS_Printable)) {
38 dwRelevant &= ~XFA_LAYOUTSTATUS_Printable;
39 }
40 return dwRelevant;
41 }
42 void XFA_ReleaseLayoutItem(CXFA_LayoutItem* pLayoutItem) {
43 CXFA_LayoutItem* pNode = pLayoutItem->m_pFirstChild;
44 IXFA_Notify* pNotify =
45 pLayoutItem->m_pFormNode->GetDocument()->GetParser()->GetNotify();
46 IXFA_DocLayout* pDocLayout =
47 pLayoutItem->m_pFormNode->GetDocument()->GetDocLayout();
48 while (pNode) {
49 CXFA_LayoutItem* pNext = pNode->m_pNextSibling;
50 pNode->m_pParent = nullptr;
51 pNotify->OnLayoutEvent(pDocLayout, static_cast<CXFA_LayoutItem*>(pNode),
52 XFA_LAYOUTEVENT_ItemRemoving);
53 XFA_ReleaseLayoutItem(pNode);
54 pNode = pNext;
55 }
56 pNotify->OnLayoutEvent(pDocLayout, pLayoutItem, XFA_LAYOUTEVENT_ItemRemoving);
57 if (pLayoutItem->m_pFormNode->GetClassID() == XFA_ELEMENT_PageArea) {
58 pNotify->OnPageEvent(static_cast<CXFA_ContainerLayoutItem*>(pLayoutItem),
59 XFA_PAGEEVENT_PageRemoved);
60 }
61 delete pLayoutItem;
62 }
OLDNEW
« no previous file with comments | « xfa/src/fxfa/parser/xfa_layout_appadapter.h ('k') | xfa/src/fxfa/parser/xfa_layout_itemlayout.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698