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 XFA_FGAS_LAYOUT_CFX_TEXTUSERDATA_H_
8 #define XFA_FGAS_LAYOUT_CFX_TEXTUSERDATA_H_
9 
10 #include "core/fxcrt/retain_ptr.h"
11 
12 class CFX_CSSComputedStyle;
13 class CFX_LinkUserData;
14 
15 class CFX_TextUserData final : public Retainable {
16  public:
17   template <typename T, typename... Args>
18   friend RetainPtr<T> pdfium::MakeRetain(Args&&... args);
19 
20   RetainPtr<CFX_CSSComputedStyle> m_pStyle;
21   RetainPtr<CFX_LinkUserData> m_pLinkData;
22 
23  private:
24   explicit CFX_TextUserData(const RetainPtr<CFX_CSSComputedStyle>& pStyle);
25   CFX_TextUserData(const RetainPtr<CFX_CSSComputedStyle>& pStyle,
26                    const RetainPtr<CFX_LinkUserData>& pLinkData);
27   ~CFX_TextUserData() override;
28 };
29 
30 #endif  // XFA_FGAS_LAYOUT_CFX_TEXTUSERDATA_H_
31