| OLD | NEW |
| 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/fpdfxfa/fpdfxfa_util.h" | 9 #include "../include/fpdfxfa/fpdfxfa_util.h" |
| 10 #include "../include/fsdk_mgr.h" | 10 #include "../include/fsdk_mgr.h" |
| (...skipping 2292 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2303 case CPDF_AAction::CursorExit: | 2303 case CPDF_AAction::CursorExit: |
| 2304 case CPDF_AAction::ButtonDown: | 2304 case CPDF_AAction::ButtonDown: |
| 2305 case CPDF_AAction::ButtonUp: | 2305 case CPDF_AAction::ButtonUp: |
| 2306 case CPDF_AAction::GetFocus: | 2306 case CPDF_AAction::GetFocus: |
| 2307 case CPDF_AAction::LoseFocus: | 2307 case CPDF_AAction::LoseFocus: |
| 2308 case CPDF_AAction::PageOpen: | 2308 case CPDF_AAction::PageOpen: |
| 2309 case CPDF_AAction::PageClose: | 2309 case CPDF_AAction::PageClose: |
| 2310 case CPDF_AAction::PageVisible: | 2310 case CPDF_AAction::PageVisible: |
| 2311 case CPDF_AAction::PageInvisible: | 2311 case CPDF_AAction::PageInvisible: |
| 2312 return CPDFSDK_BAAnnot::GetAAction(eAAT); | 2312 return CPDFSDK_BAAnnot::GetAAction(eAAT); |
| 2313 |
| 2313 case CPDF_AAction::KeyStroke: | 2314 case CPDF_AAction::KeyStroke: |
| 2314 case CPDF_AAction::Format: | 2315 case CPDF_AAction::Format: |
| 2315 case CPDF_AAction::Validate: | 2316 case CPDF_AAction::Validate: |
| 2316 case CPDF_AAction::Calculate: | 2317 case CPDF_AAction::Calculate: |
| 2317 { | 2318 { |
| 2318 CPDF_FormField* pField = this->GetFormField(); | 2319 CPDF_FormField* pField = this->GetFormField(); |
| 2319 ASSERT(pField != NULL); | |
| 2320 | |
| 2321 if (CPDF_AAction aa = pField->GetAdditionalAction()) | 2320 if (CPDF_AAction aa = pField->GetAdditionalAction()) |
| 2322 return aa.GetAction(eAAT); | 2321 return aa.GetAction(eAAT); |
| 2323 » » » else | 2322 » » » return CPDFSDK_BAAnnot::GetAAction(eAAT); |
| 2324 » » » » return CPDFSDK_BAAnnot::GetAAction(eAAT); | |
| 2325 } | 2323 } |
| 2326 default: | 2324 default: |
| 2327 » » return NULL; | 2325 » » break; |
| 2328 } | 2326 } |
| 2329 | 2327 |
| 2330 » return NULL; | 2328 » return CPDF_Action(); |
| 2331 } | 2329 } |
| 2332 | 2330 |
| 2333 | 2331 |
| 2334 CFX_WideString CPDFSDK_Widget::GetAlternateName() const | 2332 CFX_WideString CPDFSDK_Widget::GetAlternateName() const |
| 2335 { | 2333 { |
| 2336 CPDF_FormField* pFormField = GetFormField(); | 2334 CPDF_FormField* pFormField = GetFormField(); |
| 2337 ASSERT(pFormField != NULL); | 2335 ASSERT(pFormField != NULL); |
| 2338 | 2336 |
| 2339 return pFormField->GetAlternateName(); | 2337 return pFormField->GetAlternateName(); |
| 2340 } | 2338 } |
| (...skipping 582 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2923 bRC = fa.bRC; | 2921 bRC = fa.bRC; |
| 2924 | 2922 |
| 2925 } | 2923 } |
| 2926 } | 2924 } |
| 2927 } | 2925 } |
| 2928 | 2926 |
| 2929 /* ----------------------------- action ----------------------------- */ | 2927 /* ----------------------------- action ----------------------------- */ |
| 2930 | 2928 |
| 2931 FX_BOOL CPDFSDK_InterForm::DoAction_Hide(const CPDF_Action& action) | 2929 FX_BOOL CPDFSDK_InterForm::DoAction_Hide(const CPDF_Action& action) |
| 2932 { | 2930 { |
| 2933 » ASSERT(action != NULL); | 2931 » ASSERT(action); |
| 2934 | 2932 |
| 2935 CPDF_ActionFields af = action.GetWidgets(); | 2933 CPDF_ActionFields af = action.GetWidgets(); |
| 2936 CFX_PtrArray fieldObjects; | 2934 CFX_PtrArray fieldObjects; |
| 2937 af.GetAllFields(fieldObjects); | 2935 af.GetAllFields(fieldObjects); |
| 2938 CFX_PtrArray widgetArray; | 2936 CFX_PtrArray widgetArray; |
| 2939 CFX_PtrArray fields; | 2937 CFX_PtrArray fields; |
| 2940 GetFieldFromObjects(fieldObjects, fields); | 2938 GetFieldFromObjects(fieldObjects, fields); |
| 2941 | 2939 |
| 2942 FX_BOOL bHide = action.GetHideStatus(); | 2940 FX_BOOL bHide = action.GetHideStatus(); |
| 2943 | 2941 |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2979 bChanged = TRUE; | 2977 bChanged = TRUE; |
| 2980 } | 2978 } |
| 2981 } | 2979 } |
| 2982 } | 2980 } |
| 2983 | 2981 |
| 2984 return bChanged; | 2982 return bChanged; |
| 2985 } | 2983 } |
| 2986 | 2984 |
| 2987 FX_BOOL CPDFSDK_InterForm::DoAction_SubmitForm(const CPDF_Action& action) | 2985 FX_BOOL CPDFSDK_InterForm::DoAction_SubmitForm(const CPDF_Action& action) |
| 2988 { | 2986 { |
| 2989 » ASSERT(action != NULL); | 2987 » ASSERT(action); |
| 2990 ASSERT(m_pInterForm != NULL); | 2988 ASSERT(m_pInterForm != NULL); |
| 2991 | 2989 |
| 2992 CFX_WideString sDestination = action.GetFilePath(); | 2990 CFX_WideString sDestination = action.GetFilePath(); |
| 2993 if (sDestination.IsEmpty()) return FALSE; | 2991 if (sDestination.IsEmpty()) return FALSE; |
| 2994 | 2992 |
| 2995 » CPDF_Dictionary* pActionDict = action; | 2993 » CPDF_Dictionary* pActionDict = action.GetDict(); |
| 2996 if (pActionDict->KeyExist("Fields")) | 2994 if (pActionDict->KeyExist("Fields")) |
| 2997 { | 2995 { |
| 2998 CPDF_ActionFields af = action.GetWidgets(); | 2996 CPDF_ActionFields af = action.GetWidgets(); |
| 2999 FX_DWORD dwFlags = action.GetFlags(); | 2997 FX_DWORD dwFlags = action.GetFlags(); |
| 3000 | 2998 |
| 3001 CFX_PtrArray fieldObjects; | 2999 CFX_PtrArray fieldObjects; |
| 3002 af.GetAllFields(fieldObjects); | 3000 af.GetAllFields(fieldObjects); |
| 3003 CFX_PtrArray fields; | 3001 CFX_PtrArray fields; |
| 3004 GetFieldFromObjects(fieldObjects, fields); | 3002 GetFieldFromObjects(fieldObjects, fields); |
| 3005 | 3003 |
| (...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3231 | 3229 |
| 3232 FX_BOOL bRet = pFDF->WriteBuf(textBuf); | 3230 FX_BOOL bRet = pFDF->WriteBuf(textBuf); |
| 3233 delete pFDF; | 3231 delete pFDF; |
| 3234 | 3232 |
| 3235 return bRet; | 3233 return bRet; |
| 3236 } | 3234 } |
| 3237 | 3235 |
| 3238 | 3236 |
| 3239 FX_BOOL CPDFSDK_InterForm::DoAction_ResetForm(const CPDF_Action& action) | 3237 FX_BOOL CPDFSDK_InterForm::DoAction_ResetForm(const CPDF_Action& action) |
| 3240 { | 3238 { |
| 3241 » ASSERT(action != NULL); | 3239 » ASSERT(action); |
| 3242 | 3240 |
| 3243 » CPDF_Dictionary* pActionDict = action; | 3241 » CPDF_Dictionary* pActionDict = action.GetDict(); |
| 3244 | |
| 3245 if (pActionDict->KeyExist("Fields")) | 3242 if (pActionDict->KeyExist("Fields")) |
| 3246 { | 3243 { |
| 3247 CPDF_ActionFields af = action.GetWidgets(); | 3244 CPDF_ActionFields af = action.GetWidgets(); |
| 3248 FX_DWORD dwFlags = action.GetFlags(); | 3245 FX_DWORD dwFlags = action.GetFlags(); |
| 3249 » » | 3246 |
| 3250 CFX_PtrArray fieldObjects; | 3247 CFX_PtrArray fieldObjects; |
| 3251 af.GetAllFields(fieldObjects); | 3248 af.GetAllFields(fieldObjects); |
| 3252 CFX_PtrArray fields; | 3249 CFX_PtrArray fields; |
| 3253 GetFieldFromObjects(fieldObjects, fields); | 3250 GetFieldFromObjects(fieldObjects, fields); |
| 3254 | |
| 3255 ASSERT(m_pInterForm != NULL); | |
| 3256 | |
| 3257 return m_pInterForm->ResetForm(fields, !(dwFlags & 0x01), TRUE); | 3251 return m_pInterForm->ResetForm(fields, !(dwFlags & 0x01), TRUE); |
| 3258 } | 3252 } |
| 3259 » else | 3253 |
| 3260 » { | 3254 » return m_pInterForm->ResetForm(TRUE); |
| 3261 » » ASSERT(m_pInterForm != NULL); | |
| 3262 » » return m_pInterForm->ResetForm(TRUE); | |
| 3263 » } | |
| 3264 } | 3255 } |
| 3265 | 3256 |
| 3266 FX_BOOL CPDFSDK_InterForm::DoAction_ImportData(const CPDF_Action& action) | 3257 FX_BOOL CPDFSDK_InterForm::DoAction_ImportData(const CPDF_Action& action) |
| 3267 { | 3258 { |
| 3268 return FALSE; | 3259 return FALSE; |
| 3269 } | 3260 } |
| 3270 | 3261 |
| 3271 void CPDFSDK_InterForm::GetFieldFromObjects(const CFX_PtrArray& objects, CFX_Ptr
Array& fields) | 3262 void CPDFSDK_InterForm::GetFieldFromObjects(const CFX_PtrArray& objects, CFX_Ptr
Array& fields) |
| 3272 { | 3263 { |
| 3273 ASSERT(m_pInterForm != NULL); | 3264 ASSERT(m_pInterForm != NULL); |
| (...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3805 | 3796 |
| 3806 CPDF_Annot* pPDFAnnot = pAnnot->GetPDFAnnot(); | 3797 CPDF_Annot* pPDFAnnot = pAnnot->GetPDFAnnot(); |
| 3807 ASSERT(pPDFAnnot != NULL); | 3798 ASSERT(pPDFAnnot != NULL); |
| 3808 | 3799 |
| 3809 CPDF_Rect rcAnnot; | 3800 CPDF_Rect rcAnnot; |
| 3810 pPDFAnnot->GetRect(rcAnnot); | 3801 pPDFAnnot->GetRect(rcAnnot); |
| 3811 | 3802 |
| 3812 return rcAnnot; | 3803 return rcAnnot; |
| 3813 } | 3804 } |
| 3814 | 3805 |
| OLD | NEW |