summaryrefslogtreecommitdiff
path: root/fpdfsdk/cpdf_annotcontext.h
diff options
context:
space:
mode:
Diffstat (limited to 'fpdfsdk/cpdf_annotcontext.h')
-rw-r--r--fpdfsdk/cpdf_annotcontext.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/fpdfsdk/cpdf_annotcontext.h b/fpdfsdk/cpdf_annotcontext.h
new file mode 100644
index 0000000000..38cc91e031
--- /dev/null
+++ b/fpdfsdk/cpdf_annotcontext.h
@@ -0,0 +1,38 @@
+// Copyright 2018 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 FPDFSDK_CPDF_ANNOTCONTEXT_H_
+#define FPDFSDK_CPDF_ANNOTCONTEXT_H_
+
+#include <memory>
+
+#include "core/fxcrt/unowned_ptr.h"
+
+class CPDF_Dictionary;
+class CPDF_Form;
+class CPDF_Page;
+class CPDF_Stream;
+
+class CPDF_AnnotContext {
+ public:
+ CPDF_AnnotContext(CPDF_Dictionary* pAnnotDict,
+ CPDF_Page* pPage,
+ CPDF_Stream* pStream);
+ ~CPDF_AnnotContext();
+
+ void SetForm(CPDF_Stream* pStream);
+ bool HasForm() const { return !!m_pAnnotForm; }
+ CPDF_Form* GetForm() const { return m_pAnnotForm.get(); }
+ CPDF_Dictionary* GetAnnotDict() const { return m_pAnnotDict.Get(); }
+ CPDF_Page* GetPage() const { return m_pPage.Get(); }
+
+ private:
+ std::unique_ptr<CPDF_Form> m_pAnnotForm;
+ UnownedPtr<CPDF_Dictionary> m_pAnnotDict;
+ UnownedPtr<CPDF_Page> m_pPage;
+};
+
+#endif // FPDFSDK_CPDF_ANNOTCONTEXT_H_