1*3ac0a46fSAndroid Build Coastguard Worker // Copyright 2019 The PDFium Authors 2*3ac0a46fSAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*3ac0a46fSAndroid Build Coastguard Worker // found in the LICENSE file. 4*3ac0a46fSAndroid Build Coastguard Worker 5*3ac0a46fSAndroid Build Coastguard Worker #ifndef PUBLIC_FPDF_JAVASCRIPT_H_ 6*3ac0a46fSAndroid Build Coastguard Worker #define PUBLIC_FPDF_JAVASCRIPT_H_ 7*3ac0a46fSAndroid Build Coastguard Worker 8*3ac0a46fSAndroid Build Coastguard Worker // NOLINTNEXTLINE(build/include) 9*3ac0a46fSAndroid Build Coastguard Worker #include "fpdfview.h" 10*3ac0a46fSAndroid Build Coastguard Worker 11*3ac0a46fSAndroid Build Coastguard Worker #ifdef __cplusplus 12*3ac0a46fSAndroid Build Coastguard Worker extern "C" { 13*3ac0a46fSAndroid Build Coastguard Worker #endif // __cplusplus 14*3ac0a46fSAndroid Build Coastguard Worker 15*3ac0a46fSAndroid Build Coastguard Worker // Experimental API. 16*3ac0a46fSAndroid Build Coastguard Worker // Get the number of JavaScript actions in |document|. 17*3ac0a46fSAndroid Build Coastguard Worker // 18*3ac0a46fSAndroid Build Coastguard Worker // document - handle to a document. 19*3ac0a46fSAndroid Build Coastguard Worker // 20*3ac0a46fSAndroid Build Coastguard Worker // Returns the number of JavaScript actions in |document| or -1 on error. 21*3ac0a46fSAndroid Build Coastguard Worker FPDF_EXPORT int FPDF_CALLCONV 22*3ac0a46fSAndroid Build Coastguard Worker FPDFDoc_GetJavaScriptActionCount(FPDF_DOCUMENT document); 23*3ac0a46fSAndroid Build Coastguard Worker 24*3ac0a46fSAndroid Build Coastguard Worker // Experimental API. 25*3ac0a46fSAndroid Build Coastguard Worker // Get the JavaScript action at |index| in |document|. 26*3ac0a46fSAndroid Build Coastguard Worker // 27*3ac0a46fSAndroid Build Coastguard Worker // document - handle to a document. 28*3ac0a46fSAndroid Build Coastguard Worker // index - the index of the requested JavaScript action. 29*3ac0a46fSAndroid Build Coastguard Worker // 30*3ac0a46fSAndroid Build Coastguard Worker // Returns the handle to the JavaScript action, or NULL on failure. 31*3ac0a46fSAndroid Build Coastguard Worker // Caller owns the returned handle and must close it with 32*3ac0a46fSAndroid Build Coastguard Worker // FPDFDoc_CloseJavaScriptAction(). 33*3ac0a46fSAndroid Build Coastguard Worker FPDF_EXPORT FPDF_JAVASCRIPT_ACTION FPDF_CALLCONV 34*3ac0a46fSAndroid Build Coastguard Worker FPDFDoc_GetJavaScriptAction(FPDF_DOCUMENT document, int index); 35*3ac0a46fSAndroid Build Coastguard Worker 36*3ac0a46fSAndroid Build Coastguard Worker // Experimental API. 37*3ac0a46fSAndroid Build Coastguard Worker // Close a loaded FPDF_JAVASCRIPT_ACTION object. 38*3ac0a46fSAndroid Build Coastguard Worker 39*3ac0a46fSAndroid Build Coastguard Worker // javascript - Handle to a JavaScript action. 40*3ac0a46fSAndroid Build Coastguard Worker FPDF_EXPORT void FPDF_CALLCONV 41*3ac0a46fSAndroid Build Coastguard Worker FPDFDoc_CloseJavaScriptAction(FPDF_JAVASCRIPT_ACTION javascript); 42*3ac0a46fSAndroid Build Coastguard Worker 43*3ac0a46fSAndroid Build Coastguard Worker // Experimental API. 44*3ac0a46fSAndroid Build Coastguard Worker // Get the name from the |javascript| handle. |buffer| is only modified if 45*3ac0a46fSAndroid Build Coastguard Worker // |buflen| is longer than the length of the name. On errors, |buffer| is 46*3ac0a46fSAndroid Build Coastguard Worker // unmodified and the returned length is 0. 47*3ac0a46fSAndroid Build Coastguard Worker // 48*3ac0a46fSAndroid Build Coastguard Worker // javascript - handle to an JavaScript action. 49*3ac0a46fSAndroid Build Coastguard Worker // buffer - buffer for holding the name, encoded in UTF-16LE. 50*3ac0a46fSAndroid Build Coastguard Worker // buflen - length of the buffer in bytes. 51*3ac0a46fSAndroid Build Coastguard Worker // 52*3ac0a46fSAndroid Build Coastguard Worker // Returns the length of the JavaScript action name in bytes. 53*3ac0a46fSAndroid Build Coastguard Worker FPDF_EXPORT unsigned long FPDF_CALLCONV 54*3ac0a46fSAndroid Build Coastguard Worker FPDFJavaScriptAction_GetName(FPDF_JAVASCRIPT_ACTION javascript, 55*3ac0a46fSAndroid Build Coastguard Worker FPDF_WCHAR* buffer, 56*3ac0a46fSAndroid Build Coastguard Worker unsigned long buflen); 57*3ac0a46fSAndroid Build Coastguard Worker 58*3ac0a46fSAndroid Build Coastguard Worker // Experimental API. 59*3ac0a46fSAndroid Build Coastguard Worker // Get the script from the |javascript| handle. |buffer| is only modified if 60*3ac0a46fSAndroid Build Coastguard Worker // |buflen| is longer than the length of the script. On errors, |buffer| is 61*3ac0a46fSAndroid Build Coastguard Worker // unmodified and the returned length is 0. 62*3ac0a46fSAndroid Build Coastguard Worker // 63*3ac0a46fSAndroid Build Coastguard Worker // javascript - handle to an JavaScript action. 64*3ac0a46fSAndroid Build Coastguard Worker // buffer - buffer for holding the name, encoded in UTF-16LE. 65*3ac0a46fSAndroid Build Coastguard Worker // buflen - length of the buffer in bytes. 66*3ac0a46fSAndroid Build Coastguard Worker // 67*3ac0a46fSAndroid Build Coastguard Worker // Returns the length of the JavaScript action name in bytes. 68*3ac0a46fSAndroid Build Coastguard Worker FPDF_EXPORT unsigned long FPDF_CALLCONV 69*3ac0a46fSAndroid Build Coastguard Worker FPDFJavaScriptAction_GetScript(FPDF_JAVASCRIPT_ACTION javascript, 70*3ac0a46fSAndroid Build Coastguard Worker FPDF_WCHAR* buffer, 71*3ac0a46fSAndroid Build Coastguard Worker unsigned long buflen); 72*3ac0a46fSAndroid Build Coastguard Worker 73*3ac0a46fSAndroid Build Coastguard Worker #ifdef __cplusplus 74*3ac0a46fSAndroid Build Coastguard Worker } // extern "C" 75*3ac0a46fSAndroid Build Coastguard Worker #endif // __cplusplus 76*3ac0a46fSAndroid Build Coastguard Worker 77*3ac0a46fSAndroid Build Coastguard Worker #endif // PUBLIC_FPDF_JAVASCRIPT_H_ 78