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

Side by Side Diff: fpdfsdk/src/fsdk_actionhandler.cpp

Issue 984773002: Make conversion between CPDF_Action and its dictionary explicit (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Tabs Created 5 years, 9 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
« no previous file with comments | « fpdfsdk/src/fpdfdoc.cpp ('k') | fpdfsdk/src/fsdk_baseannot.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 #include "../include/fsdk_define.h" 7 #include "../include/fsdk_define.h"
8 #include "../include/fsdk_mgr.h" 8 #include "../include/fsdk_mgr.h"
9 #include "../include/fsdk_actionhandler.h" 9 #include "../include/fsdk_actionhandler.h"
10 #include "../include/javascript/IJavaScript.h" 10 #include "../include/javascript/IJavaScript.h"
11 11
12 /* -------------------------- CBA_ActionHandler -------------------------- */ 12 /* -------------------------- CBA_ActionHandler -------------------------- */
13 13
14 CPDFSDK_ActionHandler::CPDFSDK_ActionHandler(CPDFDoc_Environment* pEvi) : 14 CPDFSDK_ActionHandler::CPDFSDK_ActionHandler(CPDFDoc_Environment* pEvi) :
15 m_pFormActionHandler(NULL), 15 m_pFormActionHandler(NULL),
16 m_pMediaActionHandler(NULL) 16 m_pMediaActionHandler(NULL)
17 { 17 {
18 m_pFormActionHandler = new CPDFSDK_FormActionHandler; 18 m_pFormActionHandler = new CPDFSDK_FormActionHandler;
19 } 19 }
20 20
21 CPDFSDK_ActionHandler::~CPDFSDK_ActionHandler() 21 CPDFSDK_ActionHandler::~CPDFSDK_ActionHandler()
22 { 22 {
23 if(m_pFormActionHandler) 23 if(m_pFormActionHandler)
24 { 24 {
(...skipping 15 matching lines...) Expand all
40 ASSERT(m_pMediaActionHandler == NULL); 40 ASSERT(m_pMediaActionHandler == NULL);
41 m_pMediaActionHandler = pHandler; 41 m_pMediaActionHandler = pHandler;
42 } 42 }
43 43
44 void CPDFSDK_ActionHandler::Destroy() 44 void CPDFSDK_ActionHandler::Destroy()
45 { 45 {
46 delete this; 46 delete this;
47 } 47 }
48 48
49 //document open 49 //document open
50 FX_BOOL»CPDFSDK_ActionHandler::DoAction_DocOpen(const CPDF_Action& action, CPDFS DK_Document* pDocument 50 FX_BOOL»CPDFSDK_ActionHandler::DoAction_DocOpen(const CPDF_Action& action, CPDFS DK_Document* pDocument)
51 » » » » » » » » » » » » /*CReader_Document* pDocument, CReader_DocView *pDocView*/)
52 { 51 {
53 CFX_PtrList list; 52 CFX_PtrList list;
54 » return ExecuteDocumentOpenAction(action, pDocument, /*pDocView, */list); 53 » return ExecuteDocumentOpenAction(action, pDocument, list);
55 } 54 }
56 55
57 //document open 56 //document open
58 FX_BOOL CPDFSDK_ActionHandler::DoAction_JavaScript(const CPDF_Action& JsAction,C FX_WideString csJSName, 57 FX_BOOL CPDFSDK_ActionHandler::DoAction_JavaScript(const CPDF_Action& JsAction,C FX_WideString csJSName,
59 » » » » » » » CPDFSDK_Document* pDocum ent/*, CReader_DocView *pDocView*/) 58 » » » » » » » CPDFSDK_Document* pDocum ent)
60 { 59 {
61 if (JsAction.GetType() == CPDF_Action::JavaScript) 60 if (JsAction.GetType() == CPDF_Action::JavaScript)
62 { 61 {
63 CFX_WideString swJS = JsAction.GetJavaScript(); 62 CFX_WideString swJS = JsAction.GetJavaScript();
64 if (!swJS.IsEmpty()) 63 if (!swJS.IsEmpty())
65 { 64 {
66 RunDocumentOpenJavaScript(pDocument, csJSName, swJS); 65 RunDocumentOpenJavaScript(pDocument, csJSName, swJS);
67 return TRUE; 66 return TRUE;
68 } 67 }
69 } 68 }
70 69
71 return FALSE; 70 return FALSE;
72 } 71 }
73 72
74 FX_BOOL»CPDFSDK_ActionHandler::DoAction_FieldJavaScript(const CPDF_Action& JsAct ion, CPDF_AAction::AActionType type, 73 FX_BOOL»CPDFSDK_ActionHandler::DoAction_FieldJavaScript(const CPDF_Action& JsAct ion, CPDF_AAction::AActionType type,
75 » » » » » » » » » CPDFSDK_ Document* pDocument, CPDF_FormField* pFormField, 74 » » » » » » » » » CPDFSDK_ Document* pDocument, CPDF_FormField* pFormField,
76 PDFSDK_F ieldAction& data) 75 PDFSDK_F ieldAction& data)
77 { 76 {
78 CPDFDoc_Environment* pEnv = pDocument->GetEnv(); 77 CPDFDoc_Environment* pEnv = pDocument->GetEnv();
79 ASSERT(pEnv); 78 ASSERT(pEnv);
80 if (pEnv->IsJSInitiated() && JsAction.GetType() == CPDF_Action::JavaScri pt) 79 if (pEnv->IsJSInitiated() && JsAction.GetType() == CPDF_Action::JavaScri pt)
81 { 80 {
82 CFX_WideString swJS = JsAction.GetJavaScript(); 81 CFX_WideString swJS = JsAction.GetJavaScript();
83 if (!swJS.IsEmpty()) 82 if (!swJS.IsEmpty())
84 { 83 {
85 RunFieldJavaScript(pDocument, pFormField, type, data, sw JS); 84 RunFieldJavaScript(pDocument, pFormField, type, data, sw JS);
86 return TRUE; 85 return TRUE;
87 } 86 }
88 } 87 }
89 return FALSE; 88 return FALSE;
90 } 89 }
91 90
92 FX_BOOL CPDFSDK_ActionHandler::DoAction_Page(const CPDF_Action& action, enum CPD F_AAction::AActionType eType, 91 FX_BOOL CPDFSDK_ActionHandler::DoAction_Page(const CPDF_Action& action, enum CPD F_AAction::AActionType eType,
93 » » » » » » » » » » CPDFSDK_Document* pDocument/*, CReader_DocView *pDocView*/) 92 » » » » » » » » » » CPDFSDK_Document* pDocument)
94 { 93 {
95 CFX_PtrList list; 94 CFX_PtrList list;
96 » return ExecuteDocumentPageAction(action, eType, pDocument,/* pDocView,*/ list); 95 » return ExecuteDocumentPageAction(action, eType, pDocument, list);
97 } 96 }
98 97
99 FX_BOOL CPDFSDK_ActionHandler::DoAction_Document(const CPDF_Action& action, enum CPDF_AAction::AActionType eType, 98 FX_BOOL CPDFSDK_ActionHandler::DoAction_Document(const CPDF_Action& action, enum CPDF_AAction::AActionType eType,
100 » » » » » » » » » » » CPDFSDK_Document* pDocument/*, CReader_DocView *pDocView*/) 99 » » » » » » » » » » » CPDFSDK_Document* pDocument)
101 { 100 {
102 CFX_PtrList list; 101 CFX_PtrList list;
103 » return ExecuteDocumentPageAction(action, eType, pDocument,/* pDocView,*/ list); 102 » return ExecuteDocumentPageAction(action, eType, pDocument, list);
104 } 103 }
105 104
106 FX_BOOL»CPDFSDK_ActionHandler::DoAction_BookMark(CPDF_Bookmark *pBookMark, const CPDF_Action& action, CPDF_AAction::AActionType type, 105 FX_BOOL»CPDFSDK_ActionHandler::DoAction_BookMark(CPDF_Bookmark *pBookMark, const CPDF_Action& action, CPDF_AAction::AActionType type,
107 » » » » » » » CPDFSDK_Document* pDocum ent/*, CReader_DocView *pDocView*/) 106 » » » » » » » CPDFSDK_Document* pDocum ent)
108 { 107 {
109 CFX_PtrList list; 108 CFX_PtrList list;
110 » return this->ExecuteBookMark(action, pDocument,/* pDocView,*/ pBookMark, list); 109 » return this->ExecuteBookMark(action, pDocument, pBookMark, list);
111 } 110 }
112 111
113 FX_BOOL»CPDFSDK_ActionHandler::DoAction_Screen(const CPDF_Action& action, CPDF_A Action::AActionType type, 112 FX_BOOL»CPDFSDK_ActionHandler::DoAction_Screen(const CPDF_Action& action, CPDF_A Action::AActionType type,
114 » » » » » » » » » » CPDFSDK_Document* pDocument,/* CReader_DocView *pDocView,*/ CPDFSDK_Annot* pScre en) 113 » » » » » » » » » » CPDFSDK_Document* pDocument, CPDFSDK_Annot* pScreen)
115 { 114 {
116 CFX_PtrList list; 115 CFX_PtrList list;
117 » return this->ExecuteScreenAction(action, type, pDocument,/* pDocView,*/ pScreen, list); 116 » return this->ExecuteScreenAction(action, type, pDocument, pScreen, list) ;
118 } 117 }
119 118
120 FX_BOOL»CPDFSDK_ActionHandler::DoAction_Link(const CPDF_Action& action, 119 FX_BOOL»CPDFSDK_ActionHandler::DoAction_Link(const CPDF_Action& action,
121 » » » » » » » » » » CPDFSDK_Document* pDocument/*, CReader_DocView *pDocView*/) 120 » » » » » » » » » » CPDFSDK_Document* pDocument)
122 { 121 {
123 CFX_PtrList list; 122 CFX_PtrList list;
124 » return ExecuteLinkAction(action, pDocument,/* pDocView,*/ list); 123 » return ExecuteLinkAction(action, pDocument, list);
125 } 124 }
126 125
127 FX_BOOL»CPDFSDK_ActionHandler::DoAction_Field(const CPDF_Action& action, CPDF_AA ction::AActionType type, 126 FX_BOOL»CPDFSDK_ActionHandler::DoAction_Field(const CPDF_Action& action, CPDF_AA ction::AActionType type,
128 » » » » » » » » » » CPDFSDK_Document* pDocument,/* CReader_DocView *pDocView,*/ 127 » » » » » » » » » » CPDFSDK_Document* pDocument,
129 CPDF_FormField* pFormField, PDFSDK_FieldAction& data) 128 CPDF_FormField* pFormField, PDFSDK_FieldAction& data)
130 { 129 {
131 CFX_PtrList list; 130 CFX_PtrList list;
132 » return ExecuteFieldAction(action, type, pDocument,/* pDocView,*/ pFormFi eld, data, list); 131 » return ExecuteFieldAction(action, type, pDocument, pFormField, data, lis t);
133 } 132 }
134 133
135 FX_BOOL CPDFSDK_ActionHandler::ExecuteDocumentOpenAction(const CPDF_Action& acti on, CPDFSDK_Document* pDocument, 134 FX_BOOL CPDFSDK_ActionHandler::ExecuteDocumentOpenAction(const CPDF_Action& acti on, CPDFSDK_Document* pDocument,
136 » » » » » » » » » » » » » /*CReader_DocView *pDocView,*/ CFX_PtrList& list) 135 CFX_PtrList& list)
137 { 136 {
138 » ASSERT(pDocument != NULL); 137 » CPDF_Dictionary* pDict = action.GetDict();
138 » if (list.Find(pDict))
139 » » return FALSE;
139 140
140 » if (list.Find((CPDF_Dictionary*)action)) 141 » list.AddTail(pDict);
141 » » return FALSE;
142 » list.AddTail((CPDF_Dictionary*)action);
143 142
144 CPDFDoc_Environment* pEnv = pDocument->GetEnv(); 143 CPDFDoc_Environment* pEnv = pDocument->GetEnv();
145 ASSERT(pEnv); 144 ASSERT(pEnv);
146 if (action.GetType() == CPDF_Action::JavaScript) 145 if (action.GetType() == CPDF_Action::JavaScript)
147 { 146 {
148 if(pEnv->IsJSInitiated()) 147 if(pEnv->IsJSInitiated())
149 { 148 {
150 CFX_WideString swJS = action.GetJavaScript(); 149 CFX_WideString swJS = action.GetJavaScript();
151 if (!swJS.IsEmpty()) 150 if (!swJS.IsEmpty())
152 { 151 {
153 RunDocumentOpenJavaScript(pDocument, L"", swJS); 152 RunDocumentOpenJavaScript(pDocument, L"", swJS);
154 } 153 }
155 } 154 }
156 } 155 }
157 else 156 else
158 { 157 {
159 » » DoAction_NoJs(action, pDocument/*, pDocView*/); 158 » » DoAction_NoJs(action, pDocument);
160 } 159 }
161 160
162 // if (!IsValidDocView(pDocument, pDocView))
163 // return FALSE;
164
165 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++) 161 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++)
166 { 162 {
167 CPDF_Action subaction = action.GetSubAction(i); 163 CPDF_Action subaction = action.GetSubAction(i);
168 » » if (!ExecuteDocumentOpenAction(subaction, pDocument,/* pDocView, */ list)) return FALSE; 164 » » if (!ExecuteDocumentOpenAction(subaction, pDocument, list)) retu rn FALSE;
169 } 165 }
170 166
171 return TRUE; 167 return TRUE;
172 } 168 }
173 169
174 FX_BOOL CPDFSDK_ActionHandler::ExecuteLinkAction(const CPDF_Action& action, CPDFSDK_Document* pDocument, 170 FX_BOOL CPDFSDK_ActionHandler::ExecuteLinkAction(const CPDF_Action& action, CPDFSDK_Document* pDocument,
175 » » » » » » » » » » » » /*CReader_DocView* pDocView,*/ CFX_PtrList& list) 171 » » » » » » » » » » » » CFX_PtrList& list)
176 { 172 {
177 ASSERT(pDocument != NULL); 173 ASSERT(pDocument != NULL);
178 174
179 » if (list.Find((CPDF_Dictionary*)action)) 175 » CPDF_Dictionary* pDict = action.GetDict();
176 » if (list.Find(pDict))
180 return FALSE; 177 return FALSE;
181 » list.AddTail((CPDF_Dictionary*)action); 178
179 » list.AddTail(pDict);
182 180
183 CPDFDoc_Environment* pEnv = pDocument->GetEnv(); 181 CPDFDoc_Environment* pEnv = pDocument->GetEnv();
184 ASSERT(pEnv); 182 ASSERT(pEnv);
185 if (action.GetType() == CPDF_Action::JavaScript) 183 if (action.GetType() == CPDF_Action::JavaScript)
186 { 184 {
187 if(pEnv->IsJSInitiated()) 185 if(pEnv->IsJSInitiated())
188 { 186 {
189 CFX_WideString swJS = action.GetJavaScript(); 187 CFX_WideString swJS = action.GetJavaScript();
190 if (!swJS.IsEmpty()) 188 if (!swJS.IsEmpty())
191 { 189 {
192 IFXJS_Runtime* pRuntime = pDocument->GetJsRuntim e(); //???? 190 IFXJS_Runtime* pRuntime = pDocument->GetJsRuntim e(); //????
193 ASSERT(pRuntime != NULL); 191 ASSERT(pRuntime != NULL);
194 192
195 pRuntime->SetReaderDocument(pDocument); 193 pRuntime->SetReaderDocument(pDocument);
196 194
197 IFXJS_Context* pContext = pRuntime->NewContext() ; 195 IFXJS_Context* pContext = pRuntime->NewContext() ;
198 ASSERT(pContext != NULL); 196 ASSERT(pContext != NULL);
199 197
200 pContext->OnLink_MouseUp(pDocument); 198 pContext->OnLink_MouseUp(pDocument);
201 199
202 CFX_WideString csInfo; 200 CFX_WideString csInfo;
203 FX_BOOL bRet = pContext->RunScript(swJS, csInfo) ; 201 FX_BOOL bRet = pContext->RunScript(swJS, csInfo) ;
204 if (!bRet) 202 if (!bRet)
205 { 203 {
206 » » » » » //CBCL_FormNotify::MsgBoxJSError(pPageVi ew->GetPageViewWnd(), csInfo); 204 » » » » » // FIXME: return error.
207 } 205 }
208 206
209 pRuntime->ReleaseContext(pContext); 207 pRuntime->ReleaseContext(pContext);
210 } 208 }
211 } 209 }
212 } 210 }
213 else 211 else
214 { 212 {
215 » » DoAction_NoJs(action, pDocument/*, pDocView*/); 213 » » DoAction_NoJs(action, pDocument);
216 } 214 }
217 215
218 // if (!IsValidDocView(pDocument, pDocView))
219 // return FALSE;
220
221 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++) 216 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++)
222 { 217 {
223 CPDF_Action subaction = action.GetSubAction(i); 218 CPDF_Action subaction = action.GetSubAction(i);
224 » » if (!ExecuteLinkAction(subaction, pDocument,/* pDocView,*/ list) ) return FALSE; 219 » » if (!ExecuteLinkAction(subaction, pDocument, list)) return FALSE ;
225 } 220 }
226 221
227 return TRUE; 222 return TRUE;
228 } 223 }
229 224
230 FX_BOOL CPDFSDK_ActionHandler::ExecuteDocumentPageAction(const CPDF_Action& acti on, CPDF_AAction::AActionType type, 225 FX_BOOL CPDFSDK_ActionHandler::ExecuteDocumentPageAction(const CPDF_Action& acti on, CPDF_AAction::AActionType type,
231 » » » » » » » » » » » » CPDFSDK_Document* pDocument,/* CReader_DocView* pDocView,*/ CFX _PtrList& list) 226 » » » » » » » » » » » » CPDFSDK_Document* pDocument, CFX_PtrList& list)
232 { 227 {
233 ASSERT(pDocument != NULL); 228 ASSERT(pDocument != NULL);
234 229
235 » if (list.Find((CPDF_Dictionary*)action)) 230 » CPDF_Dictionary* pDict = action.GetDict();
231 » if (list.Find(pDict))
236 return FALSE; 232 return FALSE;
237 » list.AddTail((CPDF_Dictionary*)action); 233
234 » list.AddTail(pDict);
238 235
239 CPDFDoc_Environment* pEnv = pDocument->GetEnv(); 236 CPDFDoc_Environment* pEnv = pDocument->GetEnv();
240 ASSERT(pEnv); 237 ASSERT(pEnv);
241 if (action.GetType() == CPDF_Action::JavaScript) 238 if (action.GetType() == CPDF_Action::JavaScript)
242 { 239 {
243 if(pEnv->IsJSInitiated()) 240 if(pEnv->IsJSInitiated())
244 { 241 {
245 CFX_WideString swJS = action.GetJavaScript(); 242 CFX_WideString swJS = action.GetJavaScript();
246 if (!swJS.IsEmpty()) 243 if (!swJS.IsEmpty())
247 { 244 {
248 RunDocumentPageJavaScript(pDocument, type, swJS) ; 245 RunDocumentPageJavaScript(pDocument, type, swJS) ;
249 } 246 }
250 } 247 }
251 } 248 }
252 else 249 else
253 { 250 {
254 » » DoAction_NoJs(action, pDocument/*, pDocView*/); 251 » » DoAction_NoJs(action, pDocument);
255 } 252 }
256 253
257 » if (!IsValidDocView(pDocument/*, pDocView*/)) 254 » if (!IsValidDocView(pDocument))
258 return FALSE; 255 return FALSE;
259 256
260 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++) 257 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++)
261 { 258 {
262 CPDF_Action subaction = action.GetSubAction(i); 259 CPDF_Action subaction = action.GetSubAction(i);
263 » » if (!ExecuteDocumentPageAction(subaction, type, pDocument,/* pDo cView,*/ list)) return FALSE; 260 » » if (!ExecuteDocumentPageAction(subaction, type, pDocument, list) ) return FALSE;
264 } 261 }
265 262
266 return TRUE; 263 return TRUE;
267 } 264 }
268 265
269 FX_BOOL CPDFSDK_ActionHandler::IsValidField(CPDFSDK_Document* pDocument, CPDF_Di ctionary* pFieldDict) 266 FX_BOOL CPDFSDK_ActionHandler::IsValidField(CPDFSDK_Document* pDocument, CPDF_Di ctionary* pFieldDict)
270 { 267 {
271 ASSERT(pDocument != NULL); 268 ASSERT(pDocument != NULL);
272 ASSERT(pFieldDict != NULL); 269 ASSERT(pFieldDict != NULL);
273 270
274 CPDFSDK_InterForm* pInterForm = pDocument->GetInterForm(); 271 CPDFSDK_InterForm* pInterForm = pDocument->GetInterForm();
275 ASSERT(pInterForm != NULL); 272 ASSERT(pInterForm != NULL);
276 273
277 CPDF_InterForm* pPDFInterForm = pInterForm->GetInterForm(); 274 CPDF_InterForm* pPDFInterForm = pInterForm->GetInterForm();
278 ASSERT(pPDFInterForm != NULL); 275 ASSERT(pPDFInterForm != NULL);
279 276
280 return pPDFInterForm->GetFieldByDict(pFieldDict) != NULL; 277 return pPDFInterForm->GetFieldByDict(pFieldDict) != NULL;
281 } 278 }
282 279
283 FX_BOOL»CPDFSDK_ActionHandler::ExecuteFieldAction(const CPDF_Action& action, CPD F_AAction::AActionType type, 280 FX_BOOL»CPDFSDK_ActionHandler::ExecuteFieldAction(const CPDF_Action& action, CPD F_AAction::AActionType type,
284 » » » » » » » » » » CPDFSDK_Document* pDocument,/* CReader_DocView* pDocView,*/ CPDF_FormField* pF ormField, 281 » » » » » » » » » » CPDFSDK_Document* pDocument, CPDF_FormField* pFormField,
285 PDFSDK_FieldAction& data, CFX_PtrList& list) 282 PDFSDK_FieldAction& data, CFX_PtrList& list)
286 { 283 {
287 ASSERT(pDocument != NULL); 284 ASSERT(pDocument != NULL);
288 285
289 » if (list.Find((CPDF_Dictionary*)action)) 286 » CPDF_Dictionary* pDict = action.GetDict();
287 » if (list.Find(pDict))
290 return FALSE; 288 return FALSE;
291 » list.AddTail((CPDF_Dictionary*)action); 289
290 » list.AddTail(pDict);
292 291
293 CPDFDoc_Environment* pEnv = pDocument->GetEnv(); 292 CPDFDoc_Environment* pEnv = pDocument->GetEnv();
294 ASSERT(pEnv); 293 ASSERT(pEnv);
295 if (action.GetType() == CPDF_Action::JavaScript) 294 if (action.GetType() == CPDF_Action::JavaScript)
296 { 295 {
297 if(pEnv->IsJSInitiated()) 296 if(pEnv->IsJSInitiated())
298 { 297 {
299 CFX_WideString swJS = action.GetJavaScript(); 298 CFX_WideString swJS = action.GetJavaScript();
300 if (!swJS.IsEmpty()) 299 if (!swJS.IsEmpty())
301 { 300 {
302 RunFieldJavaScript(pDocument, pFormField, type, data, swJS); 301 RunFieldJavaScript(pDocument, pFormField, type, data, swJS);
303 if (!IsValidField(pDocument, pFormField->GetFiel dDict())) 302 if (!IsValidField(pDocument, pFormField->GetFiel dDict()))
304 return FALSE; 303 return FALSE;
305 } 304 }
306 } 305 }
307 } 306 }
308 else 307 else
309 { 308 {
310 » » DoAction_NoJs(action, pDocument/*, pDocView*/); 309 » » DoAction_NoJs(action, pDocument);
311 // » » if (!IsValidDocView(pDocument, pDocView))
312 // » » » return FALSE;
313 } 310 }
314 311
315 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++) 312 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++)
316 { 313 {
317 CPDF_Action subaction = action.GetSubAction(i); 314 CPDF_Action subaction = action.GetSubAction(i);
318 » » if (!ExecuteFieldAction(subaction, type, pDocument,/* pDocView,* / pFormField, data, list)) return FALSE; 315 » » if (!ExecuteFieldAction(subaction, type, pDocument, pFormField, data, list)) return FALSE;
319 } 316 }
320 317
321 return TRUE; 318 return TRUE;
322 } 319 }
323 320
324 FX_BOOL CPDFSDK_ActionHandler::ExecuteScreenAction(const CPDF_Action& action, CP DF_AAction::AActionType type, 321 FX_BOOL CPDFSDK_ActionHandler::ExecuteScreenAction(const CPDF_Action& action, CP DF_AAction::AActionType type,
325 » » » » » » » » » » CPDFSDK_Document* pDocument,/* CReader_DocView* pDocView,*/ CPDFSDK_Annot* pScre en, CFX_PtrList& list) 322 » » » » » » » » » » CPDFSDK_Document* pDocument, CPDFSDK_Annot* pScreen, CFX_PtrList& list)
326 { 323 {
327 ASSERT(pDocument != NULL); 324 ASSERT(pDocument != NULL);
328 325
329 » if (list.Find((CPDF_Dictionary*)action)) 326 » CPDF_Dictionary* pDict = action.GetDict();
327 » if (list.Find(pDict))
330 return FALSE; 328 return FALSE;
331 » list.AddTail((CPDF_Dictionary*)action); 329
330 » list.AddTail(pDict);
332 331
333 CPDFDoc_Environment* pEnv = pDocument->GetEnv(); 332 CPDFDoc_Environment* pEnv = pDocument->GetEnv();
334 ASSERT(pEnv); 333 ASSERT(pEnv);
335 if (action.GetType() == CPDF_Action::JavaScript) 334 if (action.GetType() == CPDF_Action::JavaScript)
336 { 335 {
337 if(pEnv->IsJSInitiated()) 336 if(pEnv->IsJSInitiated())
338 { 337 {
339 CFX_WideString swJS = action.GetJavaScript(); 338 CFX_WideString swJS = action.GetJavaScript();
340 if (!swJS.IsEmpty()) 339 if (!swJS.IsEmpty())
341 { 340 {
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
390 { 389 {
391 //CBCL_FormNotify::MsgBoxJSError(pPageVi ew->GetPageViewWnd(), csInfo); 390 //CBCL_FormNotify::MsgBoxJSError(pPageVi ew->GetPageViewWnd(), csInfo);
392 } 391 }
393 392
394 pRuntime->ReleaseContext(pContext); 393 pRuntime->ReleaseContext(pContext);
395 } 394 }
396 } 395 }
397 } 396 }
398 else 397 else
399 { 398 {
400 » » DoAction_NoJs(action, pDocument/*, pDocView*/); 399 » » DoAction_NoJs(action, pDocument);
401 } 400 }
402 401
403 // if (!IsValidDocView(pDocument, pDocView))
404 // return FALSE;
405
406 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++) 402 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++)
407 { 403 {
408 CPDF_Action subaction = action.GetSubAction(i); 404 CPDF_Action subaction = action.GetSubAction(i);
409 » » if (!ExecuteScreenAction(subaction, type, pDocument,/* pDocView, */ pScreen, list)) return FALSE; 405 » » if (!ExecuteScreenAction(subaction, type, pDocument, pScreen, li st)) return FALSE;
410 } 406 }
411 407
412 return TRUE; 408 return TRUE;
413 } 409 }
414 410
415 FX_BOOL»CPDFSDK_ActionHandler::ExecuteBookMark(const CPDF_Action& action, CPDFSD K_Document* pDocument, 411 FX_BOOL»CPDFSDK_ActionHandler::ExecuteBookMark(const CPDF_Action& action, CPDFSD K_Document* pDocument,
416 » » » » » » » » » » /*CReader_DocView* pDocView,*/ CPDF_Bookmark* pBookmark, CFX_PtrList& list) 412 » » » » » » » » » » CPDF_Bookmark* pBookmark, CFX_PtrList& list)
417 { 413 {
418 ASSERT(pDocument != NULL); 414 ASSERT(pDocument != NULL);
419 415
420 » if (list.Find((CPDF_Dictionary*)action)) 416 » CPDF_Dictionary* pDict = action.GetDict();
417 » if (list.Find(pDict))
421 return FALSE; 418 return FALSE;
422 » list.AddTail((CPDF_Dictionary*)action); 419
420 » list.AddTail(pDict);
423 421
424 CPDFDoc_Environment* pEnv = pDocument->GetEnv(); 422 CPDFDoc_Environment* pEnv = pDocument->GetEnv();
425 ASSERT(pEnv); 423 ASSERT(pEnv);
426 if (action.GetType() == CPDF_Action::JavaScript) 424 if (action.GetType() == CPDF_Action::JavaScript)
427 { 425 {
428 if(pEnv->IsJSInitiated()) 426 if(pEnv->IsJSInitiated())
429 { 427 {
430 CFX_WideString swJS = action.GetJavaScript(); 428 CFX_WideString swJS = action.GetJavaScript();
431 if (!swJS.IsEmpty()) 429 if (!swJS.IsEmpty())
432 { 430 {
(...skipping 13 matching lines...) Expand all
446 { 444 {
447 //CBCL_FormNotify::MsgBoxJSError(pPageVi ew->GetPageViewWnd(), csInfo); 445 //CBCL_FormNotify::MsgBoxJSError(pPageVi ew->GetPageViewWnd(), csInfo);
448 } 446 }
449 447
450 pRuntime->ReleaseContext(pContext); 448 pRuntime->ReleaseContext(pContext);
451 } 449 }
452 } 450 }
453 } 451 }
454 else 452 else
455 { 453 {
456 » » DoAction_NoJs(action, pDocument/*, pDocView*/); 454 » » DoAction_NoJs(action, pDocument);
457 } 455 }
458 456
459 // if (!IsValidDocView(pDocument, pDocView))
460 // return FALSE;
461
462 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++) 457 for (FX_INT32 i=0,sz=action.GetSubActionsCount(); i<sz; i++)
463 { 458 {
464 CPDF_Action subaction = action.GetSubAction(i); 459 CPDF_Action subaction = action.GetSubAction(i);
465 » » if (!ExecuteBookMark(subaction, pDocument,/* pDocView,*/ pBookma rk, list)) return FALSE; 460 » » if (!ExecuteBookMark(subaction, pDocument, pBookmark, list)) ret urn FALSE;
466 } 461 }
467 462
468 return TRUE; 463 return TRUE;
469 } 464 }
470 465
471 void CPDFSDK_ActionHandler::DoAction_NoJs(const CPDF_Action& action, CPDFSDK_Doc ument* pDocument/*, CReader_DocView* pDocView*/) 466 void CPDFSDK_ActionHandler::DoAction_NoJs(const CPDF_Action& action, CPDFSDK_Doc ument* pDocument)
472 { 467 {
473 ASSERT(pDocument != NULL); 468 ASSERT(pDocument != NULL);
474 469
475 switch (action.GetType()) 470 switch (action.GetType())
476 { 471 {
477 case CPDF_Action::GoTo: 472 case CPDF_Action::GoTo:
478 » » DoAction_GoTo(pDocument,/* pDocView,*/ action); 473 » » DoAction_GoTo(pDocument, action);
479 break; 474 break;
480 case CPDF_Action::GoToR: 475 case CPDF_Action::GoToR:
481 DoAction_GoToR(pDocument, action); 476 DoAction_GoToR(pDocument, action);
482 break; 477 break;
483 case CPDF_Action::GoToE: 478 case CPDF_Action::GoToE:
484 break; 479 break;
485 case CPDF_Action::Launch: 480 case CPDF_Action::Launch:
486 DoAction_Launch(pDocument, action); 481 DoAction_Launch(pDocument, action);
487 break; 482 break;
488 case CPDF_Action::Thread: 483 case CPDF_Action::Thread:
489 break; 484 break;
490 case CPDF_Action::URI: 485 case CPDF_Action::URI:
491 DoAction_URI(pDocument, action); 486 DoAction_URI(pDocument, action);
492 break; 487 break;
493 case CPDF_Action::Sound: 488 case CPDF_Action::Sound:
494 if (m_pMediaActionHandler) 489 if (m_pMediaActionHandler)
495 { 490 {
496 » » » m_pMediaActionHandler->DoAction_Sound(action, pDocument/ *, pDocView*/); 491 » » » m_pMediaActionHandler->DoAction_Sound(action, pDocument) ;
497 } 492 }
498 break; 493 break;
499 case CPDF_Action::Movie: 494 case CPDF_Action::Movie:
500 if (m_pMediaActionHandler) 495 if (m_pMediaActionHandler)
501 { 496 {
502 » » » m_pMediaActionHandler->DoAction_Movie(action, pDocument/ *, pDocView*/); 497 » » » m_pMediaActionHandler->DoAction_Movie(action, pDocument) ;
503 } 498 }
504 break; 499 break;
505 case CPDF_Action::Hide: 500 case CPDF_Action::Hide:
506 if (m_pFormActionHandler) 501 if (m_pFormActionHandler)
507 { 502 {
508 m_pFormActionHandler->DoAction_Hide(action, pDocument); 503 m_pFormActionHandler->DoAction_Hide(action, pDocument);
509 } 504 }
510 break; 505 break;
511 case CPDF_Action::Named: 506 case CPDF_Action::Named:
512 DoAction_Named(pDocument, action); 507 DoAction_Named(pDocument, action);
513 break; 508 break;
514 case CPDF_Action::SubmitForm: 509 case CPDF_Action::SubmitForm:
515 if (m_pFormActionHandler) 510 if (m_pFormActionHandler)
516 { 511 {
517 » » » m_pFormActionHandler->DoAction_SubmitForm(action, pDocum ent/*, pDocView*/); 512 » » » m_pFormActionHandler->DoAction_SubmitForm(action, pDocum ent);
518 } 513 }
519 break; 514 break;
520 case CPDF_Action::ResetForm: 515 case CPDF_Action::ResetForm:
521 if (m_pFormActionHandler) 516 if (m_pFormActionHandler)
522 { 517 {
523 m_pFormActionHandler->DoAction_ResetForm(action, pDocume nt); 518 m_pFormActionHandler->DoAction_ResetForm(action, pDocume nt);
524 } 519 }
525 break; 520 break;
526 case CPDF_Action::ImportData: 521 case CPDF_Action::ImportData:
527 if (m_pFormActionHandler) 522 if (m_pFormActionHandler)
528 { 523 {
529 » » » m_pFormActionHandler->DoAction_ImportData(action, pDocum ent/*, pDocView*/); 524 » » » m_pFormActionHandler->DoAction_ImportData(action, pDocum ent);
530 } 525 }
531 break; 526 break;
532 case CPDF_Action::JavaScript: 527 case CPDF_Action::JavaScript:
533 ASSERT(FALSE); 528 ASSERT(FALSE);
534 break; 529 break;
535 case CPDF_Action::SetOCGState: 530 case CPDF_Action::SetOCGState:
536 » » DoAction_SetOCGState(pDocument, /*pDocView,*/ action); 531 » » DoAction_SetOCGState(pDocument, action);
537 break; 532 break;
538 case CPDF_Action::Rendition: 533 case CPDF_Action::Rendition:
539 if (m_pMediaActionHandler) 534 if (m_pMediaActionHandler)
540 { 535 {
541 » » » m_pMediaActionHandler->DoAction_Rendition(action, pDocum ent/*, pDocView*/); 536 » » » m_pMediaActionHandler->DoAction_Rendition(action, pDocum ent);
542 } 537 }
543 break; 538 break;
544 case CPDF_Action::Trans: 539 case CPDF_Action::Trans:
545 break; 540 break;
546 case CPDF_Action::GoTo3DView: 541 case CPDF_Action::GoTo3DView:
547 break; 542 break;
548 default: 543 default:
549 break; 544 break;
550 } 545 }
551 } 546 }
552 547
553 FX_BOOL»CPDFSDK_ActionHandler::IsValidDocView(CPDFSDK_Document* pDocument/*, CRe ader_DocView* pDocView*/) 548 FX_BOOL»CPDFSDK_ActionHandler::IsValidDocView(CPDFSDK_Document* pDocument)
554 { 549 {
555 ASSERT(pDocument != NULL); 550 ASSERT(pDocument != NULL);
556 //ASSERT(pDocView != NULL);
557
558 //return pDocument->IsValidDocView(pDocView);
559 return TRUE; 551 return TRUE;
560 } 552 }
561 553
562 void CPDFSDK_ActionHandler::DoAction_GoTo(CPDFSDK_Document* pDocument, /*CReader _DocView* pDocView,*/ 554 void CPDFSDK_ActionHandler::DoAction_GoTo(CPDFSDK_Document* pDocument,
563 const CPDF_Act ion& action) 555 const CPDF_Act ion& action)
564 { 556 {
565 » ASSERT(pDocument != NULL); 557 » ASSERT(action);
566 //» ASSERT(pDocView != NULL);
567 » ASSERT(action != NULL);
568 558
569 CPDF_Document* pPDFDocument = pDocument->GetDocument(); 559 CPDF_Document* pPDFDocument = pDocument->GetDocument();
570 ASSERT(pPDFDocument != NULL); 560 ASSERT(pPDFDocument != NULL);
571 CPDFDoc_Environment* pApp = pDocument->GetEnv(); 561 CPDFDoc_Environment* pApp = pDocument->GetEnv();
572 ASSERT(pApp != NULL); 562 ASSERT(pApp != NULL);
573 563
574 CPDF_Dest MyDest = action.GetDest(pPDFDocument); 564 CPDF_Dest MyDest = action.GetDest(pPDFDocument);
575 int nPageIndex = MyDest.GetPageIndex(pPDFDocument); 565 int nPageIndex = MyDest.GetPageIndex(pPDFDocument);
576 int nFitType = MyDest.GetZoomMode(); 566 int nFitType = MyDest.GetZoomMode();
577 const CPDF_Array * pMyArray = (CPDF_Array*)MyDest.m_pObj; 567 const CPDF_Array * pMyArray = (CPDF_Array*)MyDest.m_pObj;
(...skipping 19 matching lines...) Expand all
597 587
598 } 588 }
599 589
600 void CPDFSDK_ActionHandler::DoAction_Launch(CPDFSDK_Document* pDocument, const C PDF_Action& action) 590 void CPDFSDK_ActionHandler::DoAction_Launch(CPDFSDK_Document* pDocument, const C PDF_Action& action)
601 { 591 {
602 592
603 } 593 }
604 594
605 void CPDFSDK_ActionHandler::DoAction_URI(CPDFSDK_Document* pDocument, const CPDF _Action& action) 595 void CPDFSDK_ActionHandler::DoAction_URI(CPDFSDK_Document* pDocument, const CPDF _Action& action)
606 { 596 {
607 » ASSERT(pDocument != NULL); 597 » ASSERT(action);
608 » ASSERT(action != NULL);
609 598
610 CPDFDoc_Environment* pApp = pDocument->GetEnv(); 599 CPDFDoc_Environment* pApp = pDocument->GetEnv();
611 ASSERT(pApp != NULL); 600 ASSERT(pApp != NULL);
612 601
613 CFX_ByteString sURI = action.GetURI(pDocument->GetDocument()); 602 CFX_ByteString sURI = action.GetURI(pDocument->GetDocument());
614 pApp->FFI_DoURIAction(FX_LPCSTR(sURI)); 603 pApp->FFI_DoURIAction(FX_LPCSTR(sURI));
615 } 604 }
616 605
617 void CPDFSDK_ActionHandler::DoAction_Named(CPDFSDK_Document* pDocument, const CP DF_Action& action) 606 void CPDFSDK_ActionHandler::DoAction_Named(CPDFSDK_Document* pDocument, const CP DF_Action& action)
618 { 607 {
619 » ASSERT(pDocument != NULL); 608 » ASSERT(action);
620 » ASSERT(action != NULL); 609
621
622 CFX_ByteString csName = action.GetNamedAction(); 610 CFX_ByteString csName = action.GetNamedAction();
623 pDocument->GetEnv()->FFI_ExecuteNamedAction(csName); 611 pDocument->GetEnv()->FFI_ExecuteNamedAction(csName);
624 } 612 }
625 613
626 614
627 void CPDFSDK_ActionHandler::DoAction_SetOCGState(CPDFSDK_Document* pDocument,/* CReader_DocView* pDocView,*/ const CPDF_Action& action) 615 void CPDFSDK_ActionHandler::DoAction_SetOCGState(CPDFSDK_Document* pDocument, co nst CPDF_Action& action)
628 { 616 {
629 } 617 }
630 618
631 void CPDFSDK_ActionHandler::RunFieldJavaScript(CPDFSDK_Document* pDocument, CPDF _FormField* pFormField, CPDF_AAction::AActionType type, 619 void CPDFSDK_ActionHandler::RunFieldJavaScript(CPDFSDK_Document* pDocument, CPDF _FormField* pFormField, CPDF_AAction::AActionType type,
632 PDFSDK_FieldAction& data, const CFX_WideString& script) 620 PDFSDK_FieldAction& data, const CFX_WideString& script)
633 { 621 {
634 ASSERT(type != CPDF_AAction::Calculate); 622 ASSERT(type != CPDF_AAction::Calculate);
635 ASSERT(type != CPDF_AAction::Format); 623 ASSERT(type != CPDF_AAction::Format);
636 624
637 ASSERT(pDocument != NULL); 625 ASSERT(pDocument != NULL);
(...skipping 20 matching lines...) Expand all
658 case CPDF_AAction::ButtonUp: 646 case CPDF_AAction::ButtonUp:
659 pContext->OnField_MouseUp(data.bModifier, data.bShift, pFormFiel d); 647 pContext->OnField_MouseUp(data.bModifier, data.bShift, pFormFiel d);
660 break; 648 break;
661 case CPDF_AAction::GetFocus: 649 case CPDF_AAction::GetFocus:
662 pContext->OnField_Focus(data.bModifier, data.bShift, pFormField, data.sValue); 650 pContext->OnField_Focus(data.bModifier, data.bShift, pFormField, data.sValue);
663 break; 651 break;
664 case CPDF_AAction::LoseFocus: 652 case CPDF_AAction::LoseFocus:
665 pContext->OnField_Blur(data.bModifier, data.bShift, pFormField, data.sValue); 653 pContext->OnField_Blur(data.bModifier, data.bShift, pFormField, data.sValue);
666 break; 654 break;
667 case CPDF_AAction::KeyStroke: 655 case CPDF_AAction::KeyStroke:
668 » » pContext->OnField_Keystroke(data.nCommitKey, data.sChange, data. sChangeEx, data.bKeyDown, 656 » » pContext->OnField_Keystroke(data.nCommitKey, data.sChange, data. sChangeEx, data.bKeyDown,
669 data.bModifier, data.nSelEnd, data.nSelStart, data.bShif t, pFormField, data.sValue, 657 data.bModifier, data.nSelEnd, data.nSelStart, data.bShif t, pFormField, data.sValue,
670 data.bWillCommit, data.bFieldFull, data.bRC); 658 data.bWillCommit, data.bFieldFull, data.bRC);
671 break; 659 break;
672 case CPDF_AAction::Validate: 660 case CPDF_AAction::Validate:
673 pContext->OnField_Validate(data.sChange, data.sChangeEx, data.bK eyDown, data.bModifier, 661 pContext->OnField_Validate(data.sChange, data.sChangeEx, data.bK eyDown, data.bModifier,
674 data.bShift, pFormField, data.sValue, data.bRC); 662 data.bShift, pFormField, data.sValue, data.bRC);
675 break; 663 break;
676 default: 664 default:
677 ASSERT(FALSE); 665 ASSERT(FALSE);
678 break; 666 break;
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
718 706
719 IFXJS_Runtime* pRuntime = pDocument->GetJsRuntime(); 707 IFXJS_Runtime* pRuntime = pDocument->GetJsRuntime();
720 ASSERT(pRuntime != NULL); 708 ASSERT(pRuntime != NULL);
721 709
722 pRuntime->SetReaderDocument(pDocument); 710 pRuntime->SetReaderDocument(pDocument);
723 711
724 IFXJS_Context* pContext = pRuntime->NewContext(); 712 IFXJS_Context* pContext = pRuntime->NewContext();
725 ASSERT(pContext != NULL); 713 ASSERT(pContext != NULL);
726 714
727 switch (type) 715 switch (type)
728 » {» 716 » {
729 case CPDF_AAction::OpenPage: 717 case CPDF_AAction::OpenPage:
730 pContext->OnPage_Open(pDocument); 718 pContext->OnPage_Open(pDocument);
731 break; 719 break;
732 case CPDF_AAction::ClosePage: 720 case CPDF_AAction::ClosePage:
733 pContext->OnPage_Close(pDocument); 721 pContext->OnPage_Close(pDocument);
734 break; 722 break;
735 case CPDF_AAction::CloseDocument: 723 case CPDF_AAction::CloseDocument:
736 pContext->OnDoc_WillClose(pDocument); 724 pContext->OnDoc_WillClose(pDocument);
737 break; 725 break;
738 case CPDF_AAction::SaveDocument: 726 case CPDF_AAction::SaveDocument:
(...skipping 26 matching lines...) Expand all
765 //CBCL_FormNotify::MsgBoxJSError(pPageView->GetPageViewWnd(), cs Info); 753 //CBCL_FormNotify::MsgBoxJSError(pPageView->GetPageViewWnd(), cs Info);
766 } 754 }
767 755
768 pRuntime->ReleaseContext(pContext); 756 pRuntime->ReleaseContext(pContext);
769 } 757 }
770 758
771 759
772 FX_BOOL CPDFSDK_FormActionHandler::DoAction_Hide(const CPDF_Action& action, CPDF SDK_Document* pDocument) 760 FX_BOOL CPDFSDK_FormActionHandler::DoAction_Hide(const CPDF_Action& action, CPDF SDK_Document* pDocument)
773 { 761 {
774 ASSERT(pDocument != NULL); 762 ASSERT(pDocument != NULL);
775 » 763
776 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF orm(); 764 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF orm();
777 ASSERT(pInterForm != NULL); 765 ASSERT(pInterForm != NULL);
778 » 766
779 if (pInterForm->DoAction_Hide(action)) 767 if (pInterForm->DoAction_Hide(action))
780 { 768 {
781 pDocument->SetChangeMark(); 769 pDocument->SetChangeMark();
782 return TRUE; 770 return TRUE;
783 } 771 }
784 » 772
785 return FALSE; 773 return FALSE;
786 } 774 }
787 775
788 FX_BOOL CPDFSDK_FormActionHandler::DoAction_SubmitForm(const CPDF_Action& action , CPDFSDK_Document* pDocument) 776 FX_BOOL CPDFSDK_FormActionHandler::DoAction_SubmitForm(const CPDF_Action& action , CPDFSDK_Document* pDocument)
789 { 777 {
790 ASSERT(pDocument != NULL); 778 ASSERT(pDocument != NULL);
791 » 779
792 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF orm(); 780 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF orm();
793 ASSERT(pInterForm != NULL); 781 ASSERT(pInterForm != NULL);
794 » 782
795 return pInterForm->DoAction_SubmitForm(action); 783 return pInterForm->DoAction_SubmitForm(action);
796 } 784 }
797 785
798 FX_BOOL CPDFSDK_FormActionHandler::DoAction_ResetForm(const CPDF_Action& action, CPDFSDK_Document* pDocument) 786 FX_BOOL CPDFSDK_FormActionHandler::DoAction_ResetForm(const CPDF_Action& action, CPDFSDK_Document* pDocument)
799 { 787 {
800 ASSERT(pDocument != NULL); 788 ASSERT(pDocument != NULL);
801 » 789
802 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF orm(); 790 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF orm();
803 ASSERT(pInterForm != NULL); 791 ASSERT(pInterForm != NULL);
804 » 792
805 if (pInterForm->DoAction_ResetForm(action)) 793 if (pInterForm->DoAction_ResetForm(action))
806 » {» 794 » {
807 return TRUE; 795 return TRUE;
808 } 796 }
809 » 797
810 return FALSE; 798 return FALSE;
811 } 799 }
812 800
813 FX_BOOL CPDFSDK_FormActionHandler::DoAction_ImportData(const CPDF_Action& action , CPDFSDK_Document* pDocument) 801 FX_BOOL CPDFSDK_FormActionHandler::DoAction_ImportData(const CPDF_Action& action , CPDFSDK_Document* pDocument)
814 { 802 {
815 ASSERT(pDocument != NULL); 803 ASSERT(pDocument != NULL);
816 » 804
817 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF orm(); 805 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF orm();
818 ASSERT(pInterForm != NULL); 806 ASSERT(pInterForm != NULL);
819 » 807
820 if (pInterForm->DoAction_ImportData(action)) 808 if (pInterForm->DoAction_ImportData(action))
821 { 809 {
822 » » pDocument->SetChangeMark();» 810 » » pDocument->SetChangeMark();
823 return TRUE; 811 return TRUE;
824 } 812 }
825 » 813
826 return FALSE; 814 return FALSE;
827 } 815 }
828 816
829 FX_BOOL CPDFSDK_MediaActionHandler::DoAction_Rendition(const CPDF_Action& action , CPDFSDK_Document* pDocument) 817 FX_BOOL CPDFSDK_MediaActionHandler::DoAction_Rendition(const CPDF_Action& action , CPDFSDK_Document* pDocument)
830 { 818 {
831 return FALSE; 819 return FALSE;
832 } 820 }
833 821
834 FX_BOOL CPDFSDK_MediaActionHandler::DoAction_Sound(const CPDF_Action& action, CP DFSDK_Document* pDocument) 822 FX_BOOL CPDFSDK_MediaActionHandler::DoAction_Sound(const CPDF_Action& action, CP DFSDK_Document* pDocument)
835 { 823 {
836 return FALSE; 824 return FALSE;
837 } 825 }
838 826
839 FX_BOOL CPDFSDK_MediaActionHandler::DoAction_Movie(const CPDF_Action& action, CP DFSDK_Document* pDocument) 827 FX_BOOL CPDFSDK_MediaActionHandler::DoAction_Movie(const CPDF_Action& action, CP DFSDK_Document* pDocument)
840 { 828 {
841 return FALSE; 829 return FALSE;
842 } 830 }
843
OLDNEW
« no previous file with comments | « fpdfsdk/src/fpdfdoc.cpp ('k') | fpdfsdk/src/fsdk_baseannot.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698