Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(73)

Side by Side Diff: fpdfsdk/javascript/app.cpp

Issue 2217253002: Remove backpointer to runtime from CJS_Array. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #include "fpdfsdk/javascript/app.h" 7 #include "fpdfsdk/javascript/app.h"
8 8
9 #include <memory> 9 #include <memory>
10 #include <vector> 10 #include <vector>
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after
106 FX_BOOL app::activeDocs(IJS_Context* cc, 106 FX_BOOL app::activeDocs(IJS_Context* cc,
107 CJS_PropValue& vp, 107 CJS_PropValue& vp,
108 CFX_WideString& sError) { 108 CFX_WideString& sError) {
109 if (!vp.IsGetting()) 109 if (!vp.IsGetting())
110 return FALSE; 110 return FALSE;
111 111
112 CJS_Context* pContext = (CJS_Context*)cc; 112 CJS_Context* pContext = (CJS_Context*)cc;
113 CPDFDoc_Environment* pApp = pContext->GetReaderApp(); 113 CPDFDoc_Environment* pApp = pContext->GetReaderApp();
114 CJS_Runtime* pRuntime = pContext->GetJSRuntime(); 114 CJS_Runtime* pRuntime = pContext->GetJSRuntime();
115 CPDFSDK_Document* pCurDoc = pContext->GetReaderDocument(); 115 CPDFSDK_Document* pCurDoc = pContext->GetReaderDocument();
116 CJS_Array aDocs(pRuntime); 116 CJS_Array aDocs;
117 if (CPDFSDK_Document* pDoc = pApp->GetSDKDocument()) { 117 if (CPDFSDK_Document* pDoc = pApp->GetSDKDocument()) {
118 CJS_Document* pJSDocument = nullptr; 118 CJS_Document* pJSDocument = nullptr;
119 if (pDoc == pCurDoc) { 119 if (pDoc == pCurDoc) {
120 v8::Local<v8::Object> pObj = FXJS_GetThisObj(pRuntime->GetIsolate()); 120 v8::Local<v8::Object> pObj = FXJS_GetThisObj(pRuntime->GetIsolate());
121 if (FXJS_GetObjDefnID(pObj) == CJS_Document::g_nObjDefnID) 121 if (FXJS_GetObjDefnID(pObj) == CJS_Document::g_nObjDefnID)
122 pJSDocument = 122 pJSDocument =
123 (CJS_Document*)FXJS_GetPrivate(pRuntime->GetIsolate(), pObj); 123 (CJS_Document*)FXJS_GetPrivate(pRuntime->GetIsolate(), pObj);
124 } else { 124 } else {
125 v8::Local<v8::Object> pObj = FXJS_NewFxDynamicObj( 125 v8::Local<v8::Object> pObj = FXJS_NewFxDynamicObj(
126 pRuntime->GetIsolate(), pRuntime, CJS_Document::g_nObjDefnID); 126 pRuntime->GetIsolate(), pRuntime, CJS_Document::g_nObjDefnID);
127 pJSDocument = 127 pJSDocument =
128 (CJS_Document*)FXJS_GetPrivate(pRuntime->GetIsolate(), pObj); 128 (CJS_Document*)FXJS_GetPrivate(pRuntime->GetIsolate(), pObj);
129 ASSERT(pJSDocument); 129 ASSERT(pJSDocument);
130 } 130 }
131 aDocs.SetElement(0, CJS_Value(pRuntime, pJSDocument)); 131 aDocs.SetElement(pRuntime->GetIsolate(), 0,
132 CJS_Value(pRuntime, pJSDocument));
132 } 133 }
133 if (aDocs.GetLength() > 0) 134 if (aDocs.GetLength() > 0)
134 vp << aDocs; 135 vp << aDocs;
135 else 136 else
136 vp.SetNull(); 137 vp.SetNull();
137 138
138 return TRUE; 139 return TRUE;
139 } 140 }
140 141
141 FX_BOOL app::calculate(IJS_Context* cc, 142 FX_BOOL app::calculate(IJS_Context* cc,
142 CJS_PropValue& vp, 143 CJS_PropValue& vp,
143 CFX_WideString& sError) { 144 CFX_WideString& sError) {
144 if (vp.IsSetting()) { 145 if (vp.IsSetting()) {
145 bool bVP; 146 bool bVP;
146 vp >> bVP; 147 vp >> bVP;
147 m_bCalculate = (FX_BOOL)bVP; 148 m_bCalculate = (FX_BOOL)bVP;
148 149
149 CJS_Context* pContext = (CJS_Context*)cc; 150 CJS_Context* pContext = (CJS_Context*)cc;
150 CPDFDoc_Environment* pApp = pContext->GetReaderApp(); 151 CPDFDoc_Environment* pApp = pContext->GetReaderApp();
151 CJS_Runtime* pRuntime = pContext->GetJSRuntime(); 152 // CJS_Runtime* pRuntime = pContext->GetJSRuntime();
Lei Zhang 2016/08/05 17:41:58 Delete?
Tom Sepez 2016/08/08 16:25:50 Done.
152 CJS_Array aDocs(pRuntime); 153 CJS_Array aDocs;
153 if (CPDFSDK_Document* pDoc = pApp->GetSDKDocument()) 154 if (CPDFSDK_Document* pDoc = pApp->GetSDKDocument())
154 pDoc->GetInterForm()->EnableCalculate((FX_BOOL)m_bCalculate); 155 pDoc->GetInterForm()->EnableCalculate((FX_BOOL)m_bCalculate);
155 } else { 156 } else {
156 vp << (bool)m_bCalculate; 157 vp << (bool)m_bCalculate;
157 } 158 }
158 return TRUE; 159 return TRUE;
159 } 160 }
160 161
161 FX_BOOL app::formsVersion(IJS_Context* cc, 162 FX_BOOL app::formsVersion(IJS_Context* cc,
162 CJS_PropValue& vp, 163 CJS_PropValue& vp,
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
281 std::vector<CJS_Value> newParams = JS_ExpandKeywordParams( 282 std::vector<CJS_Value> newParams = JS_ExpandKeywordParams(
282 pRuntime, params, 4, L"cMsg", L"nIcon", L"nType", L"cTitle"); 283 pRuntime, params, 4, L"cMsg", L"nIcon", L"nType", L"cTitle");
283 284
284 if (newParams[0].GetType() == CJS_Value::VT_unknown) { 285 if (newParams[0].GetType() == CJS_Value::VT_unknown) {
285 sError = JSGetStringFromID(pContext, IDS_STRING_JSPARAMERROR); 286 sError = JSGetStringFromID(pContext, IDS_STRING_JSPARAMERROR);
286 return FALSE; 287 return FALSE;
287 } 288 }
288 289
289 CFX_WideString swMsg; 290 CFX_WideString swMsg;
290 if (newParams[0].GetType() == CJS_Value::VT_object) { 291 if (newParams[0].GetType() == CJS_Value::VT_object) {
291 CJS_Array carray(pRuntime); 292 CJS_Array carray;
292 if (newParams[0].ConvertToArray(carray)) { 293 if (newParams[0].ConvertToArray(carray)) {
293 swMsg = L"["; 294 swMsg = L"[";
294 CJS_Value element(pRuntime); 295 CJS_Value element(pRuntime);
295 for (int i = 0; i < carray.GetLength(); ++i) { 296 for (int i = 0; i < carray.GetLength(); ++i) {
296 if (i) 297 if (i)
297 swMsg += L", "; 298 swMsg += L", ";
298 carray.GetElement(i, element); 299 carray.GetElement(pRuntime->GetIsolate(), i, element);
299 swMsg += element.ToCFXWideString(); 300 swMsg += element.ToCFXWideString();
300 } 301 }
301 swMsg += L"]"; 302 swMsg += L"]";
302 } else { 303 } else {
303 swMsg = newParams[0].ToCFXWideString(); 304 swMsg = newParams[0].ToCFXWideString();
304 } 305 }
305 } else { 306 } else {
306 swMsg = newParams[0].ToCFXWideString(); 307 swMsg = newParams[0].ToCFXWideString();
307 } 308 }
308 309
(...skipping 408 matching lines...) Expand 10 before | Expand all | Expand 10 after
717 FX_BOOL app::media(IJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) { 718 FX_BOOL app::media(IJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) {
718 return FALSE; 719 return FALSE;
719 } 720 }
720 721
721 FX_BOOL app::execDialog(IJS_Context* cc, 722 FX_BOOL app::execDialog(IJS_Context* cc,
722 const std::vector<CJS_Value>& params, 723 const std::vector<CJS_Value>& params,
723 CJS_Value& vRet, 724 CJS_Value& vRet,
724 CFX_WideString& sError) { 725 CFX_WideString& sError) {
725 return TRUE; 726 return TRUE;
726 } 727 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698