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

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

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