blob: 5b9365ab1628ddff73ca892c3634393cb2a7ec1f [file] [log] [blame]
dsinclair44d054c2016-04-06 10:23:46 -07001// Copyright 2016 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/fxfa/parser/cxfa_caption.h"
8
dsinclair9eb0db12016-07-21 12:01:39 -07009#include "xfa/fxfa/parser/cxfa_measurement.h"
dsinclair44d054c2016-04-06 10:23:46 -070010#include "xfa/fxfa/parser/xfa_object.h"
11
12CXFA_Caption::CXFA_Caption(CXFA_Node* pNode) : CXFA_Data(pNode) {}
13
14int32_t CXFA_Caption::GetPresence() {
15 XFA_ATTRIBUTEENUM eAttr = XFA_ATTRIBUTEENUM_Visible;
16 m_pNode->TryEnum(XFA_ATTRIBUTE_Presence, eAttr);
17 return eAttr;
18}
19
20int32_t CXFA_Caption::GetPlacementType() {
21 XFA_ATTRIBUTEENUM eAttr = XFA_ATTRIBUTEENUM_Left;
22 m_pNode->TryEnum(XFA_ATTRIBUTE_Placement, eAttr);
23 return eAttr;
24}
25
Dan Sinclair05df0752017-03-14 14:43:42 -040026float CXFA_Caption::GetReserve() {
dsinclair44d054c2016-04-06 10:23:46 -070027 CXFA_Measurement ms;
28 m_pNode->TryMeasure(XFA_ATTRIBUTE_Reserve, ms);
29 return ms.ToUnit(XFA_UNIT_Pt);
30}
31
32CXFA_Margin CXFA_Caption::GetMargin() {
dsinclair56a8b192016-06-21 14:15:25 -070033 return CXFA_Margin(m_pNode ? m_pNode->GetChild(0, XFA_Element::Margin)
34 : nullptr);
dsinclair44d054c2016-04-06 10:23:46 -070035}
36
37CXFA_Font CXFA_Caption::GetFont() {
dsinclair56a8b192016-06-21 14:15:25 -070038 return CXFA_Font(m_pNode ? m_pNode->GetChild(0, XFA_Element::Font) : nullptr);
dsinclair44d054c2016-04-06 10:23:46 -070039}
40
41CXFA_Value CXFA_Caption::GetValue() {
dsinclair56a8b192016-06-21 14:15:25 -070042 return CXFA_Value(m_pNode ? m_pNode->GetChild(0, XFA_Element::Value)
43 : nullptr);
dsinclair44d054c2016-04-06 10:23:46 -070044}