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

Side by Side Diff: fpdfsdk/fpdfxfa/cpdfxfa_app.h

Issue 2421603002: Reland: Make the CPDFXFA_App non-global (Closed)
Patch Set: Review feedback Created 4 years, 1 month 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
« no previous file with comments | « fpdfsdk/fpdfxfa/DEPS ('k') | fpdfsdk/fpdfxfa/cpdfxfa_app.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 #ifndef FPDFSDK_FPDFXFA_CPDFXFA_APP_H_ 7 #ifndef FPDFSDK_FPDFXFA_CPDFXFA_APP_H_
8 #define FPDFSDK_FPDFXFA_CPDFXFA_APP_H_ 8 #define FPDFSDK_FPDFXFA_CPDFXFA_APP_H_
9 9
10 #include "third_party/base/ptr_util.h"
10 #include "xfa/fxfa/fxfa.h" 11 #include "xfa/fxfa/fxfa.h"
11 12
12 class CPDFSDK_FormFillEnvironment; 13 class CPDFSDK_FormFillEnvironment;
13 class IFXJS_Runtime; 14 class CJS_Runtime;
14 15
15 class CPDFXFA_App : public IXFA_AppProvider { 16 class CPDFXFA_App : public IXFA_AppProvider {
16 public: 17 public:
17 static CPDFXFA_App* GetInstance();
18 static void ReleaseInstance();
19
20 CPDFXFA_App(); 18 CPDFXFA_App();
21 ~CPDFXFA_App() override; 19 ~CPDFXFA_App() override;
22 20
23 FX_BOOL Initialize(v8::Isolate* pIsolate);
24 CXFA_FFApp* GetXFAApp() { return m_pXFAApp.get(); } 21 CXFA_FFApp* GetXFAApp() { return m_pXFAApp.get(); }
25 22
26 FX_BOOL AddFormFillEnv(CPDFSDK_FormFillEnvironment* pFormFillEnv); 23 void SetFormFillEnv(CPDFSDK_FormFillEnvironment* pFormFillEnv);
27 FX_BOOL RemoveFormFillEnv(CPDFSDK_FormFillEnvironment* pFormFillEnv);
28 24
29 FX_BOOL IsJavaScriptInitialized() const { return m_bJavaScriptInitialized; } 25 v8::Isolate* GetJSERuntime() const;
30 void SetJavaScriptInitialized(FX_BOOL bInitialized) {
31 m_bJavaScriptInitialized = bInitialized;
32 }
33
34 v8::Isolate* GetJSERuntime() const { return m_pIsolate; }
35 26
36 // IFXA_AppProvider: 27 // IFXA_AppProvider:
37 void GetLanguage(CFX_WideString& wsLanguage) override; 28 void GetLanguage(CFX_WideString& wsLanguage) override;
38 void GetPlatform(CFX_WideString& wsPlatform) override; 29 void GetPlatform(CFX_WideString& wsPlatform) override;
39 void GetAppName(CFX_WideString& wsName) override; 30 void GetAppName(CFX_WideString& wsName) override;
40 31
41 void Beep(uint32_t dwType) override; 32 void Beep(uint32_t dwType) override;
42 int32_t MsgBox(const CFX_WideString& wsMessage, 33 int32_t MsgBox(const CFX_WideString& wsMessage,
43 const CFX_WideString& wsTitle, 34 const CFX_WideString& wsTitle,
44 uint32_t dwIconType, 35 uint32_t dwIconType,
(...skipping 10 matching lines...) Expand all
55 const CFX_WideString& wsEncode, 46 const CFX_WideString& wsEncode,
56 const CFX_WideString& wsHeader, 47 const CFX_WideString& wsHeader,
57 CFX_WideString& wsResponse) override; 48 CFX_WideString& wsResponse) override;
58 FX_BOOL PutRequestURL(const CFX_WideString& wsURL, 49 FX_BOOL PutRequestURL(const CFX_WideString& wsURL,
59 const CFX_WideString& wsData, 50 const CFX_WideString& wsData,
60 const CFX_WideString& wsEncode) override; 51 const CFX_WideString& wsEncode) override;
61 52
62 void LoadString(int32_t iStringID, CFX_WideString& wsString) override; 53 void LoadString(int32_t iStringID, CFX_WideString& wsString) override;
63 IFWL_AdapterTimerMgr* GetTimerMgr() override; 54 IFWL_AdapterTimerMgr* GetTimerMgr() override;
64 55
65 CFX_ArrayTemplate<CPDFSDK_FormFillEnvironment*> m_pFormFillEnvList; 56 private:
66 57 CPDFSDK_FormFillEnvironment* m_pFormFillEnv; // Not owned.
67 protected:
68 FX_BOOL m_bJavaScriptInitialized;
69 std::unique_ptr<CXFA_FFApp> m_pXFAApp; 58 std::unique_ptr<CXFA_FFApp> m_pXFAApp;
70 v8::Isolate* m_pIsolate;
71 }; 59 };
72 60
73 #endif // FPDFSDK_FPDFXFA_CPDFXFA_APP_H_ 61 #endif // FPDFSDK_FPDFXFA_CPDFXFA_APP_H_
OLDNEW
« no previous file with comments | « fpdfsdk/fpdfxfa/DEPS ('k') | fpdfsdk/fpdfxfa/cpdfxfa_app.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698