diff options
author | dsinclair <dsinclair@chromium.org> | 2016-08-03 10:20:32 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-08-03 10:20:32 -0700 |
commit | 6ea5ba035a396bf0956b4b4ab3a5b3ee33b6c546 (patch) | |
tree | 04083808d748c93226f6c3752fb05f47fc0851cb /xfa/fxfa/parser/cxfa_traversestrategy_contentareacontainerlayoutitem.h | |
parent | e85f971fe9ba628e46bcb0709d5da4368c15d0b0 (diff) | |
download | pdfium-6ea5ba035a396bf0956b4b4ab3a5b3ee33b6c546.tar.xz |
Split xfa_layout_appadapter
This moves the needed traverse strategies into their own files, removes the
unused one and cleans up the includes.
Review-Url: https://codereview.chromium.org/2207033002
Diffstat (limited to 'xfa/fxfa/parser/cxfa_traversestrategy_contentareacontainerlayoutitem.h')
-rw-r--r-- | xfa/fxfa/parser/cxfa_traversestrategy_contentareacontainerlayoutitem.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/xfa/fxfa/parser/cxfa_traversestrategy_contentareacontainerlayoutitem.h b/xfa/fxfa/parser/cxfa_traversestrategy_contentareacontainerlayoutitem.h new file mode 100644 index 0000000000..e0a584edf0 --- /dev/null +++ b/xfa/fxfa/parser/cxfa_traversestrategy_contentareacontainerlayoutitem.h @@ -0,0 +1,44 @@ +// Copyright 2016 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef XFA_FXFA_PARSER_CXFA_TRAVERSESTRATEGY_CONTENTAREACONTAINERLAYOUTITEM_H_ +#define XFA_FXFA_PARSER_CXFA_TRAVERSESTRATEGY_CONTENTAREACONTAINERLAYOUTITEM_H_ + +#include "xfa/fxfa/parser/cxfa_containerlayoutitem.h" + +class CXFA_TraverseStrategy_ContentAreaContainerLayoutItem { + public: + static CXFA_ContainerLayoutItem* GetFirstChild( + CXFA_ContainerLayoutItem* pLayoutItem) { + for (CXFA_LayoutItem* pChildItem = pLayoutItem->m_pFirstChild; pChildItem; + pChildItem = pChildItem->m_pNextSibling) { + if (CXFA_ContainerLayoutItem* pContainer = + pChildItem->AsContainerLayoutItem()) { + return pContainer; + } + } + return nullptr; + } + + static CXFA_ContainerLayoutItem* GetNextSibling( + CXFA_ContainerLayoutItem* pLayoutItem) { + for (CXFA_LayoutItem* pChildItem = pLayoutItem->m_pNextSibling; pChildItem; + pChildItem = pChildItem->m_pNextSibling) { + if (CXFA_ContainerLayoutItem* pContainer = + pChildItem->AsContainerLayoutItem()) { + return pContainer; + } + } + return nullptr; + } + + static CXFA_ContainerLayoutItem* GetParent( + CXFA_ContainerLayoutItem* pLayoutItem) { + return static_cast<CXFA_ContainerLayoutItem*>(pLayoutItem->m_pParent); + } +}; + +#endif // XFA_FXFA_PARSER_CXFA_TRAVERSESTRATEGY_CONTENTAREACONTAINERLAYOUTITEM_H_ |