|  | // 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 FXJS_CJS_ANNOT_H_ | 
|  | #define FXJS_CJS_ANNOT_H_ | 
|  |  | 
|  | #include "fxjs/cjs_object.h" | 
|  | #include "fxjs/js_define.h" | 
|  |  | 
|  | class CPDFSDK_BAAnnot; | 
|  |  | 
|  | class CJS_Annot final : public CJS_Object { | 
|  | public: | 
|  | static uint32_t GetObjDefnID(); | 
|  | static void DefineJSObjects(CFXJS_Engine* pEngine); | 
|  |  | 
|  | CJS_Annot(v8::Local<v8::Object> pObject, CJS_Runtime* pRuntime); | 
|  | ~CJS_Annot() override; | 
|  |  | 
|  | void SetSDKAnnot(CPDFSDK_BAAnnot* annot); | 
|  |  | 
|  | JS_STATIC_PROP(hidden, hidden, CJS_Annot) | 
|  | JS_STATIC_PROP(name, name, CJS_Annot) | 
|  | JS_STATIC_PROP(type, type, CJS_Annot) | 
|  |  | 
|  | private: | 
|  | static uint32_t ObjDefnID; | 
|  | static const char kName[]; | 
|  | static const JSPropertySpec PropertySpecs[]; | 
|  |  | 
|  | CJS_Result get_hidden(CJS_Runtime* pRuntime); | 
|  | CJS_Result set_hidden(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp); | 
|  |  | 
|  | CJS_Result get_name(CJS_Runtime* pRuntime); | 
|  | CJS_Result set_name(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp); | 
|  |  | 
|  | CJS_Result get_type(CJS_Runtime* pRuntime); | 
|  | CJS_Result set_type(CJS_Runtime* pRuntime, v8::Local<v8::Value> vp); | 
|  |  | 
|  | ObservedPtr<CPDFSDK_Annot> m_pAnnot; | 
|  | }; | 
|  |  | 
|  | #endif  // FXJS_CJS_ANNOT_H_ |