| 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/javascript/JavaScript.h" | 7 #include "../../include/javascript/JavaScript.h" |
| 8 #include "../../include/javascript/IJavaScript.h" | 8 #include "../../include/javascript/IJavaScript.h" |
| 9 #include "../../include/javascript/JS_Define.h" | 9 #include "../../include/javascript/JS_Define.h" |
| 10 #include "../../include/javascript/JS_Object.h" | 10 #include "../../include/javascript/JS_Object.h" |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 103 JS_STATIC_METHOD_ENTRY(signatureGetModifications) | 103 JS_STATIC_METHOD_ENTRY(signatureGetModifications) |
| 104 JS_STATIC_METHOD_ENTRY(signatureGetSeedValue) | 104 JS_STATIC_METHOD_ENTRY(signatureGetSeedValue) |
| 105 JS_STATIC_METHOD_ENTRY(signatureInfo) | 105 JS_STATIC_METHOD_ENTRY(signatureInfo) |
| 106 JS_STATIC_METHOD_ENTRY(signatureSetSeedValue) | 106 JS_STATIC_METHOD_ENTRY(signatureSetSeedValue) |
| 107 JS_STATIC_METHOD_ENTRY(signatureSign) | 107 JS_STATIC_METHOD_ENTRY(signatureSign) |
| 108 JS_STATIC_METHOD_ENTRY(signatureValidate) | 108 JS_STATIC_METHOD_ENTRY(signatureValidate) |
| 109 END_JS_STATIC_METHOD() | 109 END_JS_STATIC_METHOD() |
| 110 | 110 |
| 111 IMPLEMENT_JS_CLASS(CJS_Field, Field) | 111 IMPLEMENT_JS_CLASS(CJS_Field, Field) |
| 112 | 112 |
| 113 FX_BOOL CJS_Field::InitInstance(IFXJS_Context* cc) | 113 bool CJS_Field::InitInstance(IFXJS_Context* cc) |
| 114 { | 114 { |
| 115 CJS_Context* pContext = (CJS_Context*)cc; | 115 CJS_Context* pContext = (CJS_Context*)cc; |
| 116 ASSERT(pContext != NULL); | 116 ASSERT(pContext != NULL); |
| 117 | 117 |
| 118 Field* pField = (Field*)GetEmbedObject(); | 118 Field* pField = (Field*)GetEmbedObject(); |
| 119 ASSERT(pField != NULL); | 119 ASSERT(pField != NULL); |
| 120 | 120 |
| 121 pField->SetIsolate(pContext->GetJSRuntime()->GetIsolate()); | 121 pField->SetIsolate(pContext->GetJSRuntime()->GetIsolate()); |
| 122 | 122 |
| 123 return TRUE; | 123 return true; |
| 124 }; | 124 }; |
| 125 | 125 |
| 126 Field::Field(CJS_Object* pJSObject): CJS_EmbedObj(pJSObject), | 126 Field::Field(CJS_Object* pJSObject): CJS_EmbedObj(pJSObject), |
| 127 m_pJSDoc(NULL), | 127 m_pJSDoc(NULL), |
| 128 m_pDocument(NULL), | 128 m_pDocument(NULL), |
| 129 m_nFormControlIndex(-1), | 129 m_nFormControlIndex(-1), |
| 130 m_bCanSet(FALSE), | 130 m_bCanSet(false), |
| 131 m_bDelay(FALSE), | 131 m_bDelay(false), |
| 132 m_isolate(NULL) | 132 m_isolate(NULL) |
| 133 { | 133 { |
| 134 } | 134 } |
| 135 | 135 |
| 136 Field::~Field() | 136 Field::~Field() |
| 137 { | 137 { |
| 138 } | 138 } |
| 139 | 139 |
| 140 //note: iControlNo = -1, means not a widget. | 140 //note: iControlNo = -1, means not a widget. |
| 141 void Field::ParseFieldName(const std::wstring &strFieldNameParsed,std::wstring &
strFieldName,int & iControlNo) | 141 void Field::ParseFieldName(const std::wstring &strFieldNameParsed,std::wstring &
strFieldName,int & iControlNo) |
| (...skipping 19 matching lines...) Expand all Loading... |
| 161 { | 161 { |
| 162 strFieldName = strFieldNameParsed; | 162 strFieldName = strFieldNameParsed; |
| 163 iControlNo = -1; | 163 iControlNo = -1; |
| 164 return; | 164 return; |
| 165 } | 165 } |
| 166 | 166 |
| 167 } | 167 } |
| 168 strFieldName = strFieldNameParsed.substr(0,iStart); | 168 strFieldName = strFieldNameParsed.substr(0,iStart); |
| 169 } | 169 } |
| 170 | 170 |
| 171 FX_BOOL Field::AttachField(Document* pDocument, const CFX_WideString& csFieldNam
e) | 171 bool Field::AttachField(Document* pDocument, const CFX_WideString& csFieldName) |
| 172 { | 172 { |
| 173 ASSERT(pDocument != NULL); | 173 ASSERT(pDocument != NULL); |
| 174 m_pJSDoc = pDocument; | 174 m_pJSDoc = pDocument; |
| 175 | 175 |
| 176 m_pDocument = pDocument->GetReaderDoc(); | 176 m_pDocument = pDocument->GetReaderDoc(); |
| 177 ASSERT(m_pDocument != NULL); | 177 ASSERT(m_pDocument != NULL); |
| 178 | 178 |
| 179 m_bCanSet = m_pDocument->GetPermissions(FPDFPERM_FILL_FORM) || | 179 m_bCanSet = m_pDocument->GetPermissions(FPDFPERM_FILL_FORM) || |
| 180 m_pDocument->GetPermissions(FPDFPERM_ANNOT_FORM) || | 180 m_pDocument->GetPermissions(FPDFPERM_ANNOT_FORM) || |
| 181 m_pDocument->GetPermissions(FPDFPERM_MODIFY); | 181 m_pDocument->GetPermissions(FPDFPERM_MODIFY); |
| 182 | 182 |
| 183 CPDFSDK_InterForm* pRDInterForm = m_pDocument->GetInterForm(); | 183 CPDFSDK_InterForm* pRDInterForm = m_pDocument->GetInterForm(); |
| 184 ASSERT(pRDInterForm != NULL); | 184 ASSERT(pRDInterForm != NULL); |
| 185 | 185 |
| 186 CPDF_InterForm* pInterForm = pRDInterForm->GetInterForm(); | 186 CPDF_InterForm* pInterForm = pRDInterForm->GetInterForm(); |
| 187 ASSERT(pInterForm != NULL); | 187 ASSERT(pInterForm != NULL); |
| 188 | 188 |
| 189 CFX_WideString swFieldNameTemp = csFieldName; | 189 CFX_WideString swFieldNameTemp = csFieldName; |
| 190 swFieldNameTemp.Replace(L"..", L"."); | 190 swFieldNameTemp.Replace(L"..", L"."); |
| 191 | 191 |
| 192 if (pInterForm->CountFields(swFieldNameTemp) <= 0) | 192 if (pInterForm->CountFields(swFieldNameTemp) <= 0) |
| 193 { | 193 { |
| 194 std::wstring strFieldName; | 194 std::wstring strFieldName; |
| 195 int iControlNo = -1; | 195 int iControlNo = -1; |
| 196 ParseFieldName(swFieldNameTemp.c_str(), strFieldName, iControlNo); | 196 ParseFieldName(swFieldNameTemp.c_str(), strFieldName, iControlNo); |
| 197 if (iControlNo == -1) return FALSE; | 197 if (iControlNo == -1) return false; |
| 198 | 198 |
| 199 m_FieldName = strFieldName.c_str(); | 199 m_FieldName = strFieldName.c_str(); |
| 200 m_nFormControlIndex = iControlNo; | 200 m_nFormControlIndex = iControlNo; |
| 201 return TRUE; | 201 return true; |
| 202 } | 202 } |
| 203 | 203 |
| 204 m_FieldName = swFieldNameTemp; | 204 m_FieldName = swFieldNameTemp; |
| 205 m_nFormControlIndex = -1; | 205 m_nFormControlIndex = -1; |
| 206 | 206 |
| 207 return TRUE; | 207 return true; |
| 208 } | 208 } |
| 209 | 209 |
| 210 void Field::GetFormFields(CPDFSDK_Document* pDocument, const CFX_WideString& csF
ieldName, CFX_PtrArray& FieldArray) | 210 void Field::GetFormFields(CPDFSDK_Document* pDocument, const CFX_WideString& csF
ieldName, CFX_PtrArray& FieldArray) |
| 211 { | 211 { |
| 212 ASSERT(pDocument != NULL); | 212 ASSERT(pDocument != NULL); |
| 213 | 213 |
| 214 CPDFSDK_InterForm* pReaderInterForm = pDocument->GetInterForm(); | 214 CPDFSDK_InterForm* pReaderInterForm = pDocument->GetInterForm(); |
| 215 ASSERT(pReaderInterForm != NULL); | 215 ASSERT(pReaderInterForm != NULL); |
| 216 | 216 |
| 217 CPDF_InterForm* pInterForm = pReaderInterForm->GetInterForm(); | 217 CPDF_InterForm* pInterForm = pReaderInterForm->GetInterForm(); |
| 218 ASSERT(pInterForm != NULL); | 218 ASSERT(pInterForm != NULL); |
| 219 | 219 |
| 220 ASSERT(FieldArray.GetSize() == 0); | 220 ASSERT(FieldArray.GetSize() == 0); |
| 221 | 221 |
| 222 for (int i=0,sz=pInterForm->CountFields(csFieldName); i<sz; i++) | 222 for (int i=0,sz=pInterForm->CountFields(csFieldName); i<sz; i++) |
| 223 { | 223 { |
| 224 if (CPDF_FormField* pFormField = pInterForm->GetField(i, csFieldName)) | 224 if (CPDF_FormField* pFormField = pInterForm->GetField(i, csFieldName)) |
| 225 FieldArray.Add((void*)pFormField); | 225 FieldArray.Add((void*)pFormField); |
| 226 } | 226 } |
| 227 } | 227 } |
| 228 | 228 |
| 229 void Field::GetFormFields(const CFX_WideString& csFieldName, CFX_PtrArray& Field
Array) | 229 void Field::GetFormFields(const CFX_WideString& csFieldName, CFX_PtrArray& Field
Array) |
| 230 { | 230 { |
| 231 ASSERT(m_pDocument != NULL); | 231 ASSERT(m_pDocument != NULL); |
| 232 | 232 |
| 233 Field::GetFormFields(m_pDocument, csFieldName, FieldArray); | 233 Field::GetFormFields(m_pDocument, csFieldName, FieldArray); |
| 234 } | 234 } |
| 235 | 235 |
| 236 void Field::UpdateFormField(CPDFSDK_Document* pDocument, CPDF_FormField* pFormFi
eld, | 236 void Field::UpdateFormField(CPDFSDK_Document* pDocument, CPDF_FormField* pFormFi
eld, |
| 237 FX_BOOL bChangeMark, FX_BOOL bResetAP, FX_BOOL bRefr
esh) | 237 bool bChangeMark, bool bResetAP, bool bRefresh) |
| 238 { | 238 { |
| 239 ASSERT(pDocument != NULL); | 239 ASSERT(pDocument != NULL); |
| 240 ASSERT(pFormField != NULL); | 240 ASSERT(pFormField != NULL); |
| 241 | 241 |
| 242 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); | 242 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 243 ASSERT(pInterForm != NULL); | 243 ASSERT(pInterForm != NULL); |
| 244 | 244 |
| 245 CFX_PtrArray widgets; | 245 CFX_PtrArray widgets; |
| 246 pInterForm->GetWidgets(pFormField, widgets); | 246 pInterForm->GetWidgets(pFormField, widgets); |
| 247 | 247 |
| 248 if (bResetAP) | 248 if (bResetAP) |
| 249 { | 249 { |
| 250 int nFieldType = pFormField->GetFieldType(); | 250 int nFieldType = pFormField->GetFieldType(); |
| 251 if (nFieldType == FIELDTYPE_COMBOBOX || nFieldType == FIELDTYPE_TEXTFIEL
D) | 251 if (nFieldType == FIELDTYPE_COMBOBOX || nFieldType == FIELDTYPE_TEXTFIEL
D) |
| 252 { | 252 { |
| 253 for (int i=0,sz=widgets.GetSize(); i<sz; i++) | 253 for (int i=0,sz=widgets.GetSize(); i<sz; i++) |
| 254 { | 254 { |
| 255 CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgets.GetAt(i); | 255 CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgets.GetAt(i); |
| 256 ASSERT(pWidget != NULL); | 256 ASSERT(pWidget != NULL); |
| 257 | 257 |
| 258 FX_BOOL bFormated = FALSE; | 258 bool bFormated = false; |
| 259 CFX_WideString sValue = pWidget->OnFormat(bFormated); | 259 CFX_WideString sValue = pWidget->OnFormat(bFormated); |
| 260 if (bFormated) | 260 if (bFormated) |
| 261 pWidget->ResetAppearance(sValue.c_str(), FALSE); | 261 pWidget->ResetAppearance(sValue.c_str(), false); |
| 262 else | 262 else |
| 263 pWidget->ResetAppearance(NULL, FALSE); | 263 pWidget->ResetAppearance(NULL, false); |
| 264 } | 264 } |
| 265 } | 265 } |
| 266 else | 266 else |
| 267 { | 267 { |
| 268 for (int i=0,sz=widgets.GetSize(); i<sz; i++) | 268 for (int i=0,sz=widgets.GetSize(); i<sz; i++) |
| 269 { | 269 { |
| 270 CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgets.GetAt(i); | 270 CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgets.GetAt(i); |
| 271 ASSERT(pWidget != NULL); | 271 ASSERT(pWidget != NULL); |
| 272 | 272 |
| 273 pWidget->ResetAppearance(NULL, FALSE); | 273 pWidget->ResetAppearance(NULL, false); |
| 274 } | 274 } |
| 275 } | 275 } |
| 276 } | 276 } |
| 277 | 277 |
| 278 if (bRefresh) | 278 if (bRefresh) |
| 279 { | 279 { |
| 280 for (int i=0,sz=widgets.GetSize(); i<sz; i++) | 280 for (int i=0,sz=widgets.GetSize(); i<sz; i++) |
| 281 { | 281 { |
| 282 CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgets.GetAt(i); | 282 CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgets.GetAt(i); |
| 283 ASSERT(pWidget != NULL); | 283 ASSERT(pWidget != NULL); |
| 284 | 284 |
| 285 CPDFSDK_InterForm * pInterForm = pWidget->GetInterForm(); | 285 CPDFSDK_InterForm * pInterForm = pWidget->GetInterForm(); |
| 286 CPDFSDK_Document* pDoc = pInterForm->GetDocument(); | 286 CPDFSDK_Document* pDoc = pInterForm->GetDocument(); |
| 287 // CReader_Page* pPage = pWidget->GetPage(); | 287 // CReader_Page* pPage = pWidget->GetPage(); |
| 288 ASSERT(pDoc != NULL); | 288 ASSERT(pDoc != NULL); |
| 289 pDoc->UpdateAllViews(NULL, pWidget); | 289 pDoc->UpdateAllViews(NULL, pWidget); |
| 290 } | 290 } |
| 291 } | 291 } |
| 292 | 292 |
| 293 if (bChangeMark) | 293 if (bChangeMark) |
| 294 pDocument->SetChangeMark(); | 294 pDocument->SetChangeMark(); |
| 295 } | 295 } |
| 296 | 296 |
| 297 void Field::UpdateFormControl(CPDFSDK_Document* pDocument, CPDF_FormControl* pFo
rmControl, | 297 void Field::UpdateFormControl(CPDFSDK_Document* pDocument, CPDF_FormControl* pFo
rmControl, |
| 298 FX_BOOL bChangeMark, FX_BOOL bResetAP, FX_BOOL bRefr
esh) | 298 bool bChangeMark, bool bResetAP, bool bRefresh) |
| 299 { | 299 { |
| 300 ASSERT(pDocument != NULL); | 300 ASSERT(pDocument != NULL); |
| 301 ASSERT(pFormControl != NULL); | 301 ASSERT(pFormControl != NULL); |
| 302 | 302 |
| 303 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); | 303 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 304 ASSERT(pInterForm != NULL); | 304 ASSERT(pInterForm != NULL); |
| 305 | 305 |
| 306 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl); | 306 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl); |
| 307 | 307 |
| 308 if (pWidget) | 308 if (pWidget) |
| 309 { | 309 { |
| 310 if (bResetAP) | 310 if (bResetAP) |
| 311 { | 311 { |
| 312 int nFieldType = pWidget->GetFieldType(); | 312 int nFieldType = pWidget->GetFieldType(); |
| 313 if (nFieldType == FIELDTYPE_COMBOBOX || nFieldType == FIELDTYPE_TEXT
FIELD) | 313 if (nFieldType == FIELDTYPE_COMBOBOX || nFieldType == FIELDTYPE_TEXT
FIELD) |
| 314 { | 314 { |
| 315 FX_BOOL bFormated = FALSE; | 315 bool bFormated = false; |
| 316 CFX_WideString sValue = pWidget->OnFormat(bFormated); | 316 CFX_WideString sValue = pWidget->OnFormat(bFormated); |
| 317 if (bFormated) | 317 if (bFormated) |
| 318 pWidget->ResetAppearance(sValue.c_str(), FALSE); | 318 pWidget->ResetAppearance(sValue.c_str(), false); |
| 319 else | 319 else |
| 320 pWidget->ResetAppearance(NULL, FALSE); | 320 pWidget->ResetAppearance(NULL, false); |
| 321 } | 321 } |
| 322 else | 322 else |
| 323 { | 323 { |
| 324 pWidget->ResetAppearance(NULL, FALSE); | 324 pWidget->ResetAppearance(NULL, false); |
| 325 } | 325 } |
| 326 } | 326 } |
| 327 | 327 |
| 328 if (bRefresh) | 328 if (bRefresh) |
| 329 { | 329 { |
| 330 CPDFSDK_InterForm * pInterForm = pWidget->GetInterForm(); | 330 CPDFSDK_InterForm * pInterForm = pWidget->GetInterForm(); |
| 331 CPDFSDK_Document* pDoc = pInterForm->GetDocument(); | 331 CPDFSDK_Document* pDoc = pInterForm->GetDocument(); |
| 332 ASSERT(pDoc != NULL); | 332 ASSERT(pDoc != NULL); |
| 333 pDoc->UpdateAllViews(NULL, pWidget); | 333 pDoc->UpdateAllViews(NULL, pWidget); |
| 334 } | 334 } |
| 335 | 335 |
| 336 } | 336 } |
| 337 | 337 |
| 338 if (bChangeMark) | 338 if (bChangeMark) |
| 339 pDocument->SetChangeMark(); | 339 pDocument->SetChangeMark(); |
| 340 } | 340 } |
| 341 | 341 |
| 342 CPDFSDK_Widget* Field::GetWidget(CPDFSDK_Document* pDocument, CPDF_FormControl*
pFormControl) | 342 CPDFSDK_Widget* Field::GetWidget(CPDFSDK_Document* pDocument, CPDF_FormControl*
pFormControl) |
| 343 { | 343 { |
| 344 ASSERT(pDocument != NULL); | 344 ASSERT(pDocument != NULL); |
| 345 ASSERT(pFormControl != NULL); | 345 ASSERT(pFormControl != NULL); |
| 346 | 346 |
| 347 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); | 347 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 348 ASSERT(pInterForm != NULL); | 348 ASSERT(pInterForm != NULL); |
| 349 | 349 |
| 350 return pInterForm->GetWidget(pFormControl); | 350 return pInterForm->GetWidget(pFormControl); |
| 351 } | 351 } |
| 352 | 352 |
| 353 FX_BOOL Field::ValueIsOccur(CPDF_FormField* pFormField, CFX_WideString csOptLabe
l) | 353 bool Field::ValueIsOccur(CPDF_FormField* pFormField, CFX_WideString csOptLabel) |
| 354 { | 354 { |
| 355 ASSERT(pFormField != NULL); | 355 ASSERT(pFormField != NULL); |
| 356 | 356 |
| 357 for (int i=0,sz = pFormField->CountOptions(); i < sz; i++) | 357 for (int i=0,sz = pFormField->CountOptions(); i < sz; i++) |
| 358 { | 358 { |
| 359 if (csOptLabel.Compare(pFormField->GetOptionLabel(i)) == 0) | 359 if (csOptLabel.Compare(pFormField->GetOptionLabel(i)) == 0) |
| 360 return TRUE; | 360 return true; |
| 361 } | 361 } |
| 362 | 362 |
| 363 return FALSE; | 363 return false; |
| 364 } | 364 } |
| 365 | 365 |
| 366 CPDF_FormControl* Field::GetSmartFieldControl(CPDF_FormField* pFormField) | 366 CPDF_FormControl* Field::GetSmartFieldControl(CPDF_FormField* pFormField) |
| 367 { | 367 { |
| 368 if (!pFormField->CountControls() || m_nFormControlIndex >= pFormField->Count
Controls()) | 368 if (!pFormField->CountControls() || m_nFormControlIndex >= pFormField->Count
Controls()) |
| 369 return NULL; | 369 return NULL; |
| 370 | 370 |
| 371 if (m_nFormControlIndex < 0) | 371 if (m_nFormControlIndex < 0) |
| 372 return pFormField->GetControl(0); | 372 return pFormField->GetControl(0); |
| 373 | 373 |
| 374 return pFormField->GetControl(m_nFormControlIndex); | 374 return pFormField->GetControl(m_nFormControlIndex); |
| 375 } | 375 } |
| 376 | 376 |
| 377 /* ---------------------------------------- property ---------------------------
------------- */ | 377 /* ---------------------------------------- property ---------------------------
------------- */ |
| 378 | 378 |
| 379 FX_BOOL Field::alignment(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 379 bool Field::alignment(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 380 { | 380 { |
| 381 ASSERT(m_pDocument != NULL); | 381 ASSERT(m_pDocument != NULL); |
| 382 | 382 |
| 383 if (vp.IsSetting()) | 383 if (vp.IsSetting()) |
| 384 { | 384 { |
| 385 if (!m_bCanSet) return FALSE; | 385 if (!m_bCanSet) return false; |
| 386 | 386 |
| 387 CFX_ByteString alignStr; | 387 CFX_ByteString alignStr; |
| 388 vp >> alignStr; | 388 vp >> alignStr; |
| 389 | 389 |
| 390 if (m_bDelay) | 390 if (m_bDelay) |
| 391 { | 391 { |
| 392 AddDelay_String(FP_ALIGNMENT, alignStr); | 392 AddDelay_String(FP_ALIGNMENT, alignStr); |
| 393 } | 393 } |
| 394 else | 394 else |
| 395 { | 395 { |
| 396 Field::SetAlignment(m_pDocument, m_FieldName, m_nFormControlIndex, a
lignStr); | 396 Field::SetAlignment(m_pDocument, m_FieldName, m_nFormControlIndex, a
lignStr); |
| 397 } | 397 } |
| 398 } | 398 } |
| 399 else | 399 else |
| 400 { | 400 { |
| 401 CFX_PtrArray FieldArray; | 401 CFX_PtrArray FieldArray; |
| 402 GetFormFields(m_FieldName, FieldArray); | 402 GetFormFields(m_FieldName, FieldArray); |
| 403 if (FieldArray.GetSize() <= 0) return FALSE; | 403 if (FieldArray.GetSize() <= 0) return false; |
| 404 | 404 |
| 405 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 405 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 406 ASSERT(pFormField != NULL); | 406 ASSERT(pFormField != NULL); |
| 407 | 407 |
| 408 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 408 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 409 return FALSE; | 409 return false; |
| 410 | 410 |
| 411 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 411 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 412 if (!pFormControl)return FALSE; | 412 if (!pFormControl)return false; |
| 413 | 413 |
| 414 switch (pFormControl->GetControlAlignment()) | 414 switch (pFormControl->GetControlAlignment()) |
| 415 { | 415 { |
| 416 case 1: | 416 case 1: |
| 417 vp << L"center"; | 417 vp << L"center"; |
| 418 break; | 418 break; |
| 419 case 0: | 419 case 0: |
| 420 vp << L"left"; | 420 vp << L"left"; |
| 421 break; | 421 break; |
| 422 case 2: | 422 case 2: |
| 423 vp << L"right"; | 423 vp << L"right"; |
| 424 break; | 424 break; |
| 425 default: | 425 default: |
| 426 vp << L""; | 426 vp << L""; |
| 427 } | 427 } |
| 428 } | 428 } |
| 429 | 429 |
| 430 return TRUE; | 430 return true; |
| 431 } | 431 } |
| 432 | 432 |
| 433 void Field::SetAlignment(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, | 433 void Field::SetAlignment(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, |
| 434 const CFX_ByteString& string) | 434 const CFX_ByteString& string) |
| 435 { | 435 { |
| 436 //Not supported. | 436 //Not supported. |
| 437 } | 437 } |
| 438 | 438 |
| 439 FX_BOOL Field::borderStyle(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) | 439 bool Field::borderStyle(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 440 { | 440 { |
| 441 ASSERT(m_pDocument != NULL); | 441 ASSERT(m_pDocument != NULL); |
| 442 | 442 |
| 443 if (vp.IsSetting()) | 443 if (vp.IsSetting()) |
| 444 { | 444 { |
| 445 if (!m_bCanSet) return FALSE; | 445 if (!m_bCanSet) return false; |
| 446 | 446 |
| 447 CFX_ByteString strType = ""; | 447 CFX_ByteString strType = ""; |
| 448 vp >> strType; | 448 vp >> strType; |
| 449 | 449 |
| 450 if (m_bDelay) | 450 if (m_bDelay) |
| 451 { | 451 { |
| 452 AddDelay_String(FP_BORDERSTYLE, strType); | 452 AddDelay_String(FP_BORDERSTYLE, strType); |
| 453 } | 453 } |
| 454 else | 454 else |
| 455 { | 455 { |
| 456 Field::SetBorderStyle(m_pDocument, m_FieldName, m_nFormControlIndex,
strType); | 456 Field::SetBorderStyle(m_pDocument, m_FieldName, m_nFormControlIndex,
strType); |
| 457 } | 457 } |
| 458 } | 458 } |
| 459 else | 459 else |
| 460 { | 460 { |
| 461 CFX_PtrArray FieldArray; | 461 CFX_PtrArray FieldArray; |
| 462 GetFormFields(m_FieldName, FieldArray); | 462 GetFormFields(m_FieldName, FieldArray); |
| 463 if (FieldArray.GetSize() <= 0) return FALSE; | 463 if (FieldArray.GetSize() <= 0) return false; |
| 464 | 464 |
| 465 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 465 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 466 if (!pFormField) return FALSE; | 466 if (!pFormField) return false; |
| 467 | 467 |
| 468 CPDFSDK_Widget* pWidget = GetWidget(m_pDocument, GetSmartFieldControl(pF
ormField)); | 468 CPDFSDK_Widget* pWidget = GetWidget(m_pDocument, GetSmartFieldControl(pF
ormField)); |
| 469 if (!pWidget) return FALSE; | 469 if (!pWidget) return false; |
| 470 | 470 |
| 471 int nBorderstyle = pWidget->GetBorderStyle(); | 471 int nBorderstyle = pWidget->GetBorderStyle(); |
| 472 | 472 |
| 473 switch (nBorderstyle) | 473 switch (nBorderstyle) |
| 474 { | 474 { |
| 475 case BBS_SOLID: | 475 case BBS_SOLID: |
| 476 vp << L"solid"; | 476 vp << L"solid"; |
| 477 break; | 477 break; |
| 478 case BBS_DASH: | 478 case BBS_DASH: |
| 479 vp << L"dashed"; | 479 vp << L"dashed"; |
| 480 break; | 480 break; |
| 481 case BBS_BEVELED: | 481 case BBS_BEVELED: |
| 482 vp << L"beveled"; | 482 vp << L"beveled"; |
| 483 break; | 483 break; |
| 484 case BBS_INSET: | 484 case BBS_INSET: |
| 485 vp << L"inset"; | 485 vp << L"inset"; |
| 486 break; | 486 break; |
| 487 case BBS_UNDERLINE: | 487 case BBS_UNDERLINE: |
| 488 vp << L"underline"; | 488 vp << L"underline"; |
| 489 break; | 489 break; |
| 490 default: | 490 default: |
| 491 vp << L""; | 491 vp << L""; |
| 492 break; | 492 break; |
| 493 } | 493 } |
| 494 } | 494 } |
| 495 | 495 |
| 496 return TRUE; | 496 return true; |
| 497 } | 497 } |
| 498 | 498 |
| 499 void Field::SetBorderStyle(CPDFSDK_Document* pDocument, const CFX_WideString& sw
FieldName, int nControlIndex, | 499 void Field::SetBorderStyle(CPDFSDK_Document* pDocument, const CFX_WideString& sw
FieldName, int nControlIndex, |
| 500 const CFX_ByteString& string) | 500 const CFX_ByteString& string) |
| 501 { | 501 { |
| 502 ASSERT(pDocument != NULL); | 502 ASSERT(pDocument != NULL); |
| 503 | 503 |
| 504 int nBorderStyle = 0; | 504 int nBorderStyle = 0; |
| 505 | 505 |
| 506 if (string == "solid") | 506 if (string == "solid") |
| (...skipping 11 matching lines...) Expand all Loading... |
| 518 CFX_PtrArray FieldArray; | 518 CFX_PtrArray FieldArray; |
| 519 GetFormFields(pDocument, swFieldName, FieldArray); | 519 GetFormFields(pDocument, swFieldName, FieldArray); |
| 520 | 520 |
| 521 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 521 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 522 { | 522 { |
| 523 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); | 523 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 524 ASSERT(pFormField != NULL); | 524 ASSERT(pFormField != NULL); |
| 525 | 525 |
| 526 if (nControlIndex < 0) | 526 if (nControlIndex < 0) |
| 527 { | 527 { |
| 528 FX_BOOL bSet = FALSE; | 528 bool bSet = false; |
| 529 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) | 529 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) |
| 530 { | 530 { |
| 531 if (CPDFSDK_Widget* pWidget = GetWidget(pDocument, pFormField->G
etControl(j))) | 531 if (CPDFSDK_Widget* pWidget = GetWidget(pDocument, pFormField->G
etControl(j))) |
| 532 { | 532 { |
| 533 if (pWidget->GetBorderStyle() != nBorderStyle) | 533 if (pWidget->GetBorderStyle() != nBorderStyle) |
| 534 { | 534 { |
| 535 pWidget->SetBorderStyle(nBorderStyle); | 535 pWidget->SetBorderStyle(nBorderStyle); |
| 536 bSet = TRUE; | 536 bSet = true; |
| 537 } | 537 } |
| 538 } | 538 } |
| 539 } | 539 } |
| 540 if (bSet) UpdateFormField(pDocument, pFormField, TRUE, TRUE, TRUE); | 540 if (bSet) UpdateFormField(pDocument, pFormField, true, true, true); |
| 541 } | 541 } |
| 542 else | 542 else |
| 543 { | 543 { |
| 544 if(nControlIndex >= pFormField->CountControls()) return; | 544 if(nControlIndex >= pFormField->CountControls()) return; |
| 545 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) | 545 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 546 { | 546 { |
| 547 if (CPDFSDK_Widget* pWidget = GetWidget(pDocument, pFormControl)
) | 547 if (CPDFSDK_Widget* pWidget = GetWidget(pDocument, pFormControl)
) |
| 548 { | 548 { |
| 549 if (pWidget->GetBorderStyle() != nBorderStyle) | 549 if (pWidget->GetBorderStyle() != nBorderStyle) |
| 550 { | 550 { |
| 551 pWidget->SetBorderStyle(nBorderStyle); | 551 pWidget->SetBorderStyle(nBorderStyle); |
| 552 UpdateFormControl(pDocument, pFormControl, TRUE, TRUE, T
RUE); | 552 UpdateFormControl(pDocument, pFormControl, true, true, t
rue); |
| 553 } | 553 } |
| 554 } | 554 } |
| 555 } | 555 } |
| 556 } | 556 } |
| 557 } | 557 } |
| 558 } | 558 } |
| 559 | 559 |
| 560 FX_BOOL Field::buttonAlignX(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) | 560 bool Field::buttonAlignX(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 561 { | 561 { |
| 562 ASSERT(m_pDocument != NULL); | 562 ASSERT(m_pDocument != NULL); |
| 563 | 563 |
| 564 if (vp.IsSetting()) | 564 if (vp.IsSetting()) |
| 565 { | 565 { |
| 566 if (!m_bCanSet) return FALSE; | 566 if (!m_bCanSet) return false; |
| 567 | 567 |
| 568 int nVP; | 568 int nVP; |
| 569 vp >> nVP; | 569 vp >> nVP; |
| 570 | 570 |
| 571 if (m_bDelay) | 571 if (m_bDelay) |
| 572 { | 572 { |
| 573 AddDelay_Int(FP_BUTTONALIGNX, nVP); | 573 AddDelay_Int(FP_BUTTONALIGNX, nVP); |
| 574 } | 574 } |
| 575 else | 575 else |
| 576 { | 576 { |
| 577 Field::SetButtonAlignX(m_pDocument, m_FieldName, m_nFormControlIndex
, nVP); | 577 Field::SetButtonAlignX(m_pDocument, m_FieldName, m_nFormControlIndex
, nVP); |
| 578 } | 578 } |
| 579 } | 579 } |
| 580 else | 580 else |
| 581 { | 581 { |
| 582 CFX_PtrArray FieldArray; | 582 CFX_PtrArray FieldArray; |
| 583 GetFormFields(m_FieldName,FieldArray); | 583 GetFormFields(m_FieldName,FieldArray); |
| 584 if (FieldArray.GetSize() <= 0) return FALSE; | 584 if (FieldArray.GetSize() <= 0) return false; |
| 585 | 585 |
| 586 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 586 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 587 ASSERT(pFormField != NULL); | 587 ASSERT(pFormField != NULL); |
| 588 | 588 |
| 589 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 589 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 590 return FALSE; | 590 return false; |
| 591 | 591 |
| 592 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 592 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 593 if (!pFormControl)return FALSE; | 593 if (!pFormControl)return false; |
| 594 | 594 |
| 595 CPDF_IconFit IconFit = pFormControl->GetIconFit(); | 595 CPDF_IconFit IconFit = pFormControl->GetIconFit(); |
| 596 | 596 |
| 597 FX_FLOAT fLeft,fBottom; | 597 FX_FLOAT fLeft,fBottom; |
| 598 IconFit.GetIconPosition(fLeft,fBottom); | 598 IconFit.GetIconPosition(fLeft,fBottom); |
| 599 | 599 |
| 600 vp << (int32_t)fLeft; | 600 vp << (int32_t)fLeft; |
| 601 } | 601 } |
| 602 | 602 |
| 603 return TRUE; | 603 return true; |
| 604 } | 604 } |
| 605 | 605 |
| 606 void Field::SetButtonAlignX(CPDFSDK_Document* pDocument, const CFX_WideString& s
wFieldName, int nControlIndex, int number) | 606 void Field::SetButtonAlignX(CPDFSDK_Document* pDocument, const CFX_WideString& s
wFieldName, int nControlIndex, int number) |
| 607 { | 607 { |
| 608 //Not supported. | 608 //Not supported. |
| 609 } | 609 } |
| 610 | 610 |
| 611 FX_BOOL Field::buttonAlignY(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) | 611 bool Field::buttonAlignY(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 612 { | 612 { |
| 613 ASSERT(m_pDocument != NULL); | 613 ASSERT(m_pDocument != NULL); |
| 614 | 614 |
| 615 if (vp.IsSetting()) | 615 if (vp.IsSetting()) |
| 616 { | 616 { |
| 617 if (!m_bCanSet) return FALSE; | 617 if (!m_bCanSet) return false; |
| 618 | 618 |
| 619 int nVP; | 619 int nVP; |
| 620 vp >> nVP; | 620 vp >> nVP; |
| 621 | 621 |
| 622 if (m_bDelay) | 622 if (m_bDelay) |
| 623 { | 623 { |
| 624 AddDelay_Int(FP_BUTTONALIGNY, nVP); | 624 AddDelay_Int(FP_BUTTONALIGNY, nVP); |
| 625 } | 625 } |
| 626 else | 626 else |
| 627 { | 627 { |
| 628 Field::SetButtonAlignY(m_pDocument, m_FieldName, m_nFormControlIndex
, nVP); | 628 Field::SetButtonAlignY(m_pDocument, m_FieldName, m_nFormControlIndex
, nVP); |
| 629 } | 629 } |
| 630 } | 630 } |
| 631 else | 631 else |
| 632 { | 632 { |
| 633 CFX_PtrArray FieldArray; | 633 CFX_PtrArray FieldArray; |
| 634 GetFormFields(m_FieldName,FieldArray); | 634 GetFormFields(m_FieldName,FieldArray); |
| 635 if (FieldArray.GetSize() <= 0) return FALSE; | 635 if (FieldArray.GetSize() <= 0) return false; |
| 636 | 636 |
| 637 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 637 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 638 ASSERT(pFormField != NULL); | 638 ASSERT(pFormField != NULL); |
| 639 | 639 |
| 640 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 640 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 641 return FALSE; | 641 return false; |
| 642 | 642 |
| 643 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 643 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 644 if (!pFormControl)return FALSE; | 644 if (!pFormControl)return false; |
| 645 | 645 |
| 646 CPDF_IconFit IconFit = pFormControl->GetIconFit(); | 646 CPDF_IconFit IconFit = pFormControl->GetIconFit(); |
| 647 | 647 |
| 648 FX_FLOAT fLeft,fBottom; | 648 FX_FLOAT fLeft,fBottom; |
| 649 IconFit.GetIconPosition(fLeft,fBottom); | 649 IconFit.GetIconPosition(fLeft,fBottom); |
| 650 | 650 |
| 651 vp << (int32_t)fBottom; | 651 vp << (int32_t)fBottom; |
| 652 } | 652 } |
| 653 | 653 |
| 654 return TRUE; | 654 return true; |
| 655 } | 655 } |
| 656 | 656 |
| 657 void Field::SetButtonAlignY(CPDFSDK_Document* pDocument, const CFX_WideString& s
wFieldName, int nControlIndex, int number) | 657 void Field::SetButtonAlignY(CPDFSDK_Document* pDocument, const CFX_WideString& s
wFieldName, int nControlIndex, int number) |
| 658 { | 658 { |
| 659 //Not supported. | 659 //Not supported. |
| 660 } | 660 } |
| 661 | 661 |
| 662 FX_BOOL Field::buttonFitBounds(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStr
ing& sError) | 662 bool Field::buttonFitBounds(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) |
| 663 { | 663 { |
| 664 ASSERT(m_pDocument != NULL); | 664 ASSERT(m_pDocument != NULL); |
| 665 | 665 |
| 666 if (vp.IsSetting()) | 666 if (vp.IsSetting()) |
| 667 { | 667 { |
| 668 if (!m_bCanSet) return FALSE; | 668 if (!m_bCanSet) return false; |
| 669 | 669 |
| 670 bool bVP; | 670 bool bVP; |
| 671 vp >> bVP; | 671 vp >> bVP; |
| 672 | 672 |
| 673 if (m_bDelay) | 673 if (m_bDelay) |
| 674 { | 674 { |
| 675 AddDelay_Bool(FP_BUTTONFITBOUNDS, bVP); | 675 AddDelay_Bool(FP_BUTTONFITBOUNDS, bVP); |
| 676 } | 676 } |
| 677 else | 677 else |
| 678 { | 678 { |
| 679 Field::SetButtonFitBounds(m_pDocument, m_FieldName, m_nFormControlIn
dex, bVP); | 679 Field::SetButtonFitBounds(m_pDocument, m_FieldName, m_nFormControlIn
dex, bVP); |
| 680 } | 680 } |
| 681 } | 681 } |
| 682 else | 682 else |
| 683 { | 683 { |
| 684 CFX_PtrArray FieldArray; | 684 CFX_PtrArray FieldArray; |
| 685 GetFormFields(m_FieldName,FieldArray); | 685 GetFormFields(m_FieldName,FieldArray); |
| 686 if (FieldArray.GetSize() <= 0) return FALSE; | 686 if (FieldArray.GetSize() <= 0) return false; |
| 687 | 687 |
| 688 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 688 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 689 ASSERT(pFormField != NULL); | 689 ASSERT(pFormField != NULL); |
| 690 | 690 |
| 691 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 691 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 692 return FALSE; | 692 return false; |
| 693 | 693 |
| 694 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 694 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 695 if (!pFormControl)return FALSE; | 695 if (!pFormControl)return false; |
| 696 | 696 |
| 697 CPDF_IconFit IconFit = pFormControl->GetIconFit(); | 697 CPDF_IconFit IconFit = pFormControl->GetIconFit(); |
| 698 vp << IconFit.GetFittingBounds(); | 698 vp << IconFit.GetFittingBounds(); |
| 699 } | 699 } |
| 700 | 700 |
| 701 return TRUE; | 701 return true; |
| 702 } | 702 } |
| 703 | 703 |
| 704 void Field::SetButtonFitBounds(CPDFSDK_Document* pDocument, const CFX_WideString
& swFieldName, int nControlIndex, bool b) | 704 void Field::SetButtonFitBounds(CPDFSDK_Document* pDocument, const CFX_WideString
& swFieldName, int nControlIndex, bool b) |
| 705 { | 705 { |
| 706 //Not supported. | 706 //Not supported. |
| 707 } | 707 } |
| 708 | 708 |
| 709 FX_BOOL Field::buttonPosition(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& sError) | 709 bool Field::buttonPosition(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 710 { | 710 { |
| 711 ASSERT(m_pDocument != NULL); | 711 ASSERT(m_pDocument != NULL); |
| 712 | 712 |
| 713 if (vp.IsSetting()) | 713 if (vp.IsSetting()) |
| 714 { | 714 { |
| 715 if (!m_bCanSet) return FALSE; | 715 if (!m_bCanSet) return false; |
| 716 | 716 |
| 717 int nVP; | 717 int nVP; |
| 718 vp >> nVP; | 718 vp >> nVP; |
| 719 | 719 |
| 720 if (m_bDelay) | 720 if (m_bDelay) |
| 721 { | 721 { |
| 722 AddDelay_Int(FP_BUTTONPOSITION, nVP); | 722 AddDelay_Int(FP_BUTTONPOSITION, nVP); |
| 723 } | 723 } |
| 724 else | 724 else |
| 725 { | 725 { |
| 726 Field::SetButtonPosition(m_pDocument, m_FieldName, m_nFormControlInd
ex, nVP); | 726 Field::SetButtonPosition(m_pDocument, m_FieldName, m_nFormControlInd
ex, nVP); |
| 727 } | 727 } |
| 728 } | 728 } |
| 729 else | 729 else |
| 730 { | 730 { |
| 731 CFX_PtrArray FieldArray; | 731 CFX_PtrArray FieldArray; |
| 732 GetFormFields(m_FieldName,FieldArray); | 732 GetFormFields(m_FieldName,FieldArray); |
| 733 if (FieldArray.GetSize() <= 0) return FALSE; | 733 if (FieldArray.GetSize() <= 0) return false; |
| 734 | 734 |
| 735 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 735 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 736 ASSERT(pFormField != NULL); | 736 ASSERT(pFormField != NULL); |
| 737 | 737 |
| 738 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 738 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 739 return FALSE; | 739 return false; |
| 740 | 740 |
| 741 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 741 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 742 if (!pFormControl)return FALSE; | 742 if (!pFormControl)return false; |
| 743 | 743 |
| 744 vp << pFormControl->GetTextPosition(); | 744 vp << pFormControl->GetTextPosition(); |
| 745 } | 745 } |
| 746 return TRUE; | 746 return true; |
| 747 } | 747 } |
| 748 | 748 |
| 749 void Field::SetButtonPosition(CPDFSDK_Document* pDocument, const CFX_WideString&
swFieldName, int nControlIndex, int number) | 749 void Field::SetButtonPosition(CPDFSDK_Document* pDocument, const CFX_WideString&
swFieldName, int nControlIndex, int number) |
| 750 { | 750 { |
| 751 //Not supported. | 751 //Not supported. |
| 752 } | 752 } |
| 753 | 753 |
| 754 FX_BOOL Field::buttonScaleHow(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& sError) | 754 bool Field::buttonScaleHow(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 755 { | 755 { |
| 756 ASSERT(m_pDocument != NULL); | 756 ASSERT(m_pDocument != NULL); |
| 757 | 757 |
| 758 if (vp.IsSetting()) | 758 if (vp.IsSetting()) |
| 759 { | 759 { |
| 760 if (!m_bCanSet) return FALSE; | 760 if (!m_bCanSet) return false; |
| 761 | 761 |
| 762 int nVP; | 762 int nVP; |
| 763 vp >> nVP; | 763 vp >> nVP; |
| 764 | 764 |
| 765 if (m_bDelay) | 765 if (m_bDelay) |
| 766 { | 766 { |
| 767 AddDelay_Int(FP_BUTTONSCALEHOW, nVP); | 767 AddDelay_Int(FP_BUTTONSCALEHOW, nVP); |
| 768 } | 768 } |
| 769 else | 769 else |
| 770 { | 770 { |
| 771 Field::SetButtonScaleHow(m_pDocument, m_FieldName, m_nFormControlInd
ex, nVP); | 771 Field::SetButtonScaleHow(m_pDocument, m_FieldName, m_nFormControlInd
ex, nVP); |
| 772 } | 772 } |
| 773 } | 773 } |
| 774 else | 774 else |
| 775 { | 775 { |
| 776 CFX_PtrArray FieldArray; | 776 CFX_PtrArray FieldArray; |
| 777 GetFormFields(m_FieldName, FieldArray); | 777 GetFormFields(m_FieldName, FieldArray); |
| 778 if (FieldArray.GetSize() <= 0) return FALSE; | 778 if (FieldArray.GetSize() <= 0) return false; |
| 779 | 779 |
| 780 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 780 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 781 ASSERT(pFormField != NULL); | 781 ASSERT(pFormField != NULL); |
| 782 | 782 |
| 783 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 783 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 784 return FALSE; | 784 return false; |
| 785 | 785 |
| 786 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 786 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 787 if (!pFormControl)return FALSE; | 787 if (!pFormControl)return false; |
| 788 | 788 |
| 789 CPDF_IconFit IconFit = pFormControl->GetIconFit(); | 789 CPDF_IconFit IconFit = pFormControl->GetIconFit(); |
| 790 if (IconFit.IsProportionalScale()) | 790 if (IconFit.IsProportionalScale()) |
| 791 vp << (int32_t)0; | 791 vp << (int32_t)0; |
| 792 else | 792 else |
| 793 vp << (int32_t)1; | 793 vp << (int32_t)1; |
| 794 } | 794 } |
| 795 | 795 |
| 796 return TRUE; | 796 return true; |
| 797 } | 797 } |
| 798 | 798 |
| 799 void Field::SetButtonScaleHow(CPDFSDK_Document* pDocument, const CFX_WideString&
swFieldName, int nControlIndex, int number) | 799 void Field::SetButtonScaleHow(CPDFSDK_Document* pDocument, const CFX_WideString&
swFieldName, int nControlIndex, int number) |
| 800 { | 800 { |
| 801 //Not supported. | 801 //Not supported. |
| 802 } | 802 } |
| 803 | 803 |
| 804 FX_BOOL Field::buttonScaleWhen(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStr
ing& sError) | 804 bool Field::buttonScaleWhen(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) |
| 805 { | 805 { |
| 806 ASSERT(m_pDocument != NULL); | 806 ASSERT(m_pDocument != NULL); |
| 807 | 807 |
| 808 if (vp.IsSetting()) | 808 if (vp.IsSetting()) |
| 809 { | 809 { |
| 810 if (!m_bCanSet) return FALSE; | 810 if (!m_bCanSet) return false; |
| 811 | 811 |
| 812 int nVP; | 812 int nVP; |
| 813 vp >> nVP; | 813 vp >> nVP; |
| 814 | 814 |
| 815 if (m_bDelay) | 815 if (m_bDelay) |
| 816 { | 816 { |
| 817 AddDelay_Int(FP_BUTTONSCALEWHEN, nVP); | 817 AddDelay_Int(FP_BUTTONSCALEWHEN, nVP); |
| 818 } | 818 } |
| 819 else | 819 else |
| 820 { | 820 { |
| 821 Field::SetButtonScaleWhen(m_pDocument, m_FieldName, m_nFormControlIn
dex, nVP); | 821 Field::SetButtonScaleWhen(m_pDocument, m_FieldName, m_nFormControlIn
dex, nVP); |
| 822 } | 822 } |
| 823 } | 823 } |
| 824 else | 824 else |
| 825 { | 825 { |
| 826 CFX_PtrArray FieldArray; | 826 CFX_PtrArray FieldArray; |
| 827 GetFormFields(m_FieldName,FieldArray); | 827 GetFormFields(m_FieldName,FieldArray); |
| 828 if (FieldArray.GetSize() <= 0) return FALSE; | 828 if (FieldArray.GetSize() <= 0) return false; |
| 829 | 829 |
| 830 CPDF_FormField* pFormField = (CPDF_FormField*) FieldArray.ElementAt(0); | 830 CPDF_FormField* pFormField = (CPDF_FormField*) FieldArray.ElementAt(0); |
| 831 ASSERT(pFormField != NULL); | 831 ASSERT(pFormField != NULL); |
| 832 | 832 |
| 833 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 833 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 834 return FALSE; | 834 return false; |
| 835 | 835 |
| 836 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 836 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 837 if (!pFormControl) return FALSE; | 837 if (!pFormControl) return false; |
| 838 | 838 |
| 839 CPDF_IconFit IconFit = pFormControl->GetIconFit(); | 839 CPDF_IconFit IconFit = pFormControl->GetIconFit(); |
| 840 int ScaleM = IconFit.GetScaleMethod(); | 840 int ScaleM = IconFit.GetScaleMethod(); |
| 841 switch (ScaleM) | 841 switch (ScaleM) |
| 842 { | 842 { |
| 843 case CPDF_IconFit::Always : | 843 case CPDF_IconFit::Always : |
| 844 vp << (int32_t) CPDF_IconFit::Always; | 844 vp << (int32_t) CPDF_IconFit::Always; |
| 845 break; | 845 break; |
| 846 case CPDF_IconFit::Bigger : | 846 case CPDF_IconFit::Bigger : |
| 847 vp << (int32_t) CPDF_IconFit::Bigger; | 847 vp << (int32_t) CPDF_IconFit::Bigger; |
| 848 break; | 848 break; |
| 849 case CPDF_IconFit::Never : | 849 case CPDF_IconFit::Never : |
| 850 vp << (int32_t) CPDF_IconFit::Never; | 850 vp << (int32_t) CPDF_IconFit::Never; |
| 851 break; | 851 break; |
| 852 case CPDF_IconFit::Smaller : | 852 case CPDF_IconFit::Smaller : |
| 853 vp << (int32_t) CPDF_IconFit::Smaller; | 853 vp << (int32_t) CPDF_IconFit::Smaller; |
| 854 break; | 854 break; |
| 855 } | 855 } |
| 856 } | 856 } |
| 857 | 857 |
| 858 return TRUE; | 858 return true; |
| 859 } | 859 } |
| 860 | 860 |
| 861 void Field::SetButtonScaleWhen(CPDFSDK_Document* pDocument, const CFX_WideString
& swFieldName, int nControlIndex, int number) | 861 void Field::SetButtonScaleWhen(CPDFSDK_Document* pDocument, const CFX_WideString
& swFieldName, int nControlIndex, int number) |
| 862 { | 862 { |
| 863 //Not supported. | 863 //Not supported. |
| 864 } | 864 } |
| 865 | 865 |
| 866 FX_BOOL Field::calcOrderIndex(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& sError) | 866 bool Field::calcOrderIndex(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 867 { | 867 { |
| 868 ASSERT(m_pDocument != NULL); | 868 ASSERT(m_pDocument != NULL); |
| 869 | 869 |
| 870 if (vp.IsSetting()) | 870 if (vp.IsSetting()) |
| 871 { | 871 { |
| 872 if (!m_bCanSet) return FALSE; | 872 if (!m_bCanSet) return false; |
| 873 | 873 |
| 874 int nVP; | 874 int nVP; |
| 875 vp >> nVP; | 875 vp >> nVP; |
| 876 | 876 |
| 877 if (m_bDelay) | 877 if (m_bDelay) |
| 878 { | 878 { |
| 879 AddDelay_Int(FP_CALCORDERINDEX, nVP); | 879 AddDelay_Int(FP_CALCORDERINDEX, nVP); |
| 880 } | 880 } |
| 881 else | 881 else |
| 882 { | 882 { |
| 883 Field::SetCalcOrderIndex(m_pDocument, m_FieldName, m_nFormControlInd
ex, nVP); | 883 Field::SetCalcOrderIndex(m_pDocument, m_FieldName, m_nFormControlInd
ex, nVP); |
| 884 } | 884 } |
| 885 } | 885 } |
| 886 else | 886 else |
| 887 { | 887 { |
| 888 CFX_PtrArray FieldArray; | 888 CFX_PtrArray FieldArray; |
| 889 GetFormFields(m_FieldName, FieldArray); | 889 GetFormFields(m_FieldName, FieldArray); |
| 890 if (FieldArray.GetSize() <= 0) return FALSE; | 890 if (FieldArray.GetSize() <= 0) return false; |
| 891 | 891 |
| 892 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 892 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 893 ASSERT(pFormField != NULL); | 893 ASSERT(pFormField != NULL); |
| 894 | 894 |
| 895 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && pFormField->GetF
ieldType() != FIELDTYPE_TEXTFIELD) | 895 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && pFormField->GetF
ieldType() != FIELDTYPE_TEXTFIELD) |
| 896 return FALSE; | 896 return false; |
| 897 | 897 |
| 898 CPDFSDK_InterForm* pRDInterForm = m_pDocument->GetInterForm(); | 898 CPDFSDK_InterForm* pRDInterForm = m_pDocument->GetInterForm(); |
| 899 ASSERT(pRDInterForm != NULL); | 899 ASSERT(pRDInterForm != NULL); |
| 900 | 900 |
| 901 CPDF_InterForm* pInterForm = pRDInterForm->GetInterForm(); | 901 CPDF_InterForm* pInterForm = pRDInterForm->GetInterForm(); |
| 902 ASSERT(pInterForm != NULL); | 902 ASSERT(pInterForm != NULL); |
| 903 | 903 |
| 904 vp << (int32_t)pInterForm->FindFieldInCalculationOrder(pFormField); | 904 vp << (int32_t)pInterForm->FindFieldInCalculationOrder(pFormField); |
| 905 } | 905 } |
| 906 | 906 |
| 907 return TRUE; | 907 return true; |
| 908 } | 908 } |
| 909 | 909 |
| 910 void Field::SetCalcOrderIndex(CPDFSDK_Document* pDocument, const CFX_WideString&
swFieldName, int nControlIndex, int number) | 910 void Field::SetCalcOrderIndex(CPDFSDK_Document* pDocument, const CFX_WideString&
swFieldName, int nControlIndex, int number) |
| 911 { | 911 { |
| 912 //Not supported. | 912 //Not supported. |
| 913 } | 913 } |
| 914 | 914 |
| 915 FX_BOOL Field::charLimit(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 915 bool Field::charLimit(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 916 { | 916 { |
| 917 ASSERT(m_pDocument != NULL); | 917 ASSERT(m_pDocument != NULL); |
| 918 | 918 |
| 919 if (vp.IsSetting()) | 919 if (vp.IsSetting()) |
| 920 { | 920 { |
| 921 if (!m_bCanSet) return FALSE; | 921 if (!m_bCanSet) return false; |
| 922 | 922 |
| 923 int nVP; | 923 int nVP; |
| 924 vp >> nVP; | 924 vp >> nVP; |
| 925 | 925 |
| 926 if (m_bDelay) | 926 if (m_bDelay) |
| 927 { | 927 { |
| 928 AddDelay_Int(FP_CHARLIMIT, nVP); | 928 AddDelay_Int(FP_CHARLIMIT, nVP); |
| 929 } | 929 } |
| 930 else | 930 else |
| 931 { | 931 { |
| 932 Field::SetCharLimit(m_pDocument, m_FieldName, m_nFormControlIndex, n
VP); | 932 Field::SetCharLimit(m_pDocument, m_FieldName, m_nFormControlIndex, n
VP); |
| 933 } | 933 } |
| 934 } | 934 } |
| 935 else | 935 else |
| 936 { | 936 { |
| 937 CFX_PtrArray FieldArray; | 937 CFX_PtrArray FieldArray; |
| 938 GetFormFields(m_FieldName, FieldArray); | 938 GetFormFields(m_FieldName, FieldArray); |
| 939 if (FieldArray.GetSize() <= 0) return FALSE; | 939 if (FieldArray.GetSize() <= 0) return false; |
| 940 | 940 |
| 941 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 941 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 942 ASSERT(pFormField != NULL); | 942 ASSERT(pFormField != NULL); |
| 943 | 943 |
| 944 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 944 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 945 return FALSE; | 945 return false; |
| 946 | 946 |
| 947 vp << (int32_t)pFormField->GetMaxLen(); | 947 vp << (int32_t)pFormField->GetMaxLen(); |
| 948 } | 948 } |
| 949 return TRUE; | 949 return true; |
| 950 } | 950 } |
| 951 | 951 |
| 952 void Field::SetCharLimit(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, int number) | 952 void Field::SetCharLimit(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, int number) |
| 953 { | 953 { |
| 954 //Not supported. | 954 //Not supported. |
| 955 } | 955 } |
| 956 | 956 |
| 957 FX_BOOL Field::comb(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) | 957 bool Field::comb(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 958 { | 958 { |
| 959 ASSERT(m_pDocument != NULL); | 959 ASSERT(m_pDocument != NULL); |
| 960 | 960 |
| 961 if (vp.IsSetting()) | 961 if (vp.IsSetting()) |
| 962 { | 962 { |
| 963 if (!m_bCanSet) return FALSE; | 963 if (!m_bCanSet) return false; |
| 964 | 964 |
| 965 bool bVP; | 965 bool bVP; |
| 966 vp >> bVP; | 966 vp >> bVP; |
| 967 | 967 |
| 968 if (m_bDelay) | 968 if (m_bDelay) |
| 969 { | 969 { |
| 970 AddDelay_Bool(FP_COMB, bVP); | 970 AddDelay_Bool(FP_COMB, bVP); |
| 971 } | 971 } |
| 972 else | 972 else |
| 973 { | 973 { |
| 974 Field::SetComb(m_pDocument, m_FieldName, m_nFormControlIndex, bVP); | 974 Field::SetComb(m_pDocument, m_FieldName, m_nFormControlIndex, bVP); |
| 975 } | 975 } |
| 976 } | 976 } |
| 977 else | 977 else |
| 978 { | 978 { |
| 979 CFX_PtrArray FieldArray; | 979 CFX_PtrArray FieldArray; |
| 980 GetFormFields(m_FieldName,FieldArray); | 980 GetFormFields(m_FieldName,FieldArray); |
| 981 if (FieldArray.GetSize() <= 0) return FALSE; | 981 if (FieldArray.GetSize() <= 0) return false; |
| 982 | 982 |
| 983 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 983 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 984 ASSERT(pFormField != NULL); | 984 ASSERT(pFormField != NULL); |
| 985 | 985 |
| 986 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 986 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 987 return FALSE; | 987 return false; |
| 988 | 988 |
| 989 if (pFormField->GetFieldFlags() & FIELDFLAG_COMB) | 989 if (pFormField->GetFieldFlags() & FIELDFLAG_COMB) |
| 990 vp << true; | 990 vp << true; |
| 991 else | 991 else |
| 992 vp << false; | 992 vp << false; |
| 993 } | 993 } |
| 994 | 994 |
| 995 return TRUE; | 995 return true; |
| 996 } | 996 } |
| 997 | 997 |
| 998 void Field::SetComb(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldNa
me, int nControlIndex, bool b) | 998 void Field::SetComb(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldNa
me, int nControlIndex, bool b) |
| 999 { | 999 { |
| 1000 //Not supported. | 1000 //Not supported. |
| 1001 } | 1001 } |
| 1002 | 1002 |
| 1003 FX_BOOL Field::commitOnSelChange(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideS
tring& sError) | 1003 bool Field::commitOnSelChange(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& sError) |
| 1004 { | 1004 { |
| 1005 ASSERT(m_pDocument != NULL); | 1005 ASSERT(m_pDocument != NULL); |
| 1006 | 1006 |
| 1007 if (vp.IsSetting()) | 1007 if (vp.IsSetting()) |
| 1008 { | 1008 { |
| 1009 if (!m_bCanSet) return FALSE; | 1009 if (!m_bCanSet) return false; |
| 1010 | 1010 |
| 1011 bool bVP; | 1011 bool bVP; |
| 1012 vp >> bVP; | 1012 vp >> bVP; |
| 1013 | 1013 |
| 1014 if (m_bDelay) | 1014 if (m_bDelay) |
| 1015 { | 1015 { |
| 1016 AddDelay_Bool(FP_COMMITONSELCHANGE, bVP); | 1016 AddDelay_Bool(FP_COMMITONSELCHANGE, bVP); |
| 1017 } | 1017 } |
| 1018 else | 1018 else |
| 1019 { | 1019 { |
| 1020 Field::SetCommitOnSelChange(m_pDocument, m_FieldName, m_nFormControl
Index, bVP); | 1020 Field::SetCommitOnSelChange(m_pDocument, m_FieldName, m_nFormControl
Index, bVP); |
| 1021 } | 1021 } |
| 1022 } | 1022 } |
| 1023 else | 1023 else |
| 1024 { | 1024 { |
| 1025 CFX_PtrArray FieldArray; | 1025 CFX_PtrArray FieldArray; |
| 1026 GetFormFields(m_FieldName,FieldArray); | 1026 GetFormFields(m_FieldName,FieldArray); |
| 1027 if (FieldArray.GetSize() <= 0) return FALSE; | 1027 if (FieldArray.GetSize() <= 0) return false; |
| 1028 | 1028 |
| 1029 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1029 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1030 ASSERT(pFormField != NULL); | 1030 ASSERT(pFormField != NULL); |
| 1031 | 1031 |
| 1032 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && pFormField->GetF
ieldType() != FIELDTYPE_LISTBOX) | 1032 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && pFormField->GetF
ieldType() != FIELDTYPE_LISTBOX) |
| 1033 return FALSE; | 1033 return false; |
| 1034 | 1034 |
| 1035 if (pFormField->GetFieldFlags() & FIELDFLAG_COMMITONSELCHANGE) | 1035 if (pFormField->GetFieldFlags() & FIELDFLAG_COMMITONSELCHANGE) |
| 1036 vp << true; | 1036 vp << true; |
| 1037 else | 1037 else |
| 1038 vp << false; | 1038 vp << false; |
| 1039 } | 1039 } |
| 1040 | 1040 |
| 1041 return TRUE; | 1041 return true; |
| 1042 } | 1042 } |
| 1043 | 1043 |
| 1044 void Field::SetCommitOnSelChange(CPDFSDK_Document* pDocument, const CFX_WideStri
ng& swFieldName, int nControlIndex, bool b) | 1044 void Field::SetCommitOnSelChange(CPDFSDK_Document* pDocument, const CFX_WideStri
ng& swFieldName, int nControlIndex, bool b) |
| 1045 { | 1045 { |
| 1046 //Not supported. | 1046 //Not supported. |
| 1047 } | 1047 } |
| 1048 | 1048 |
| 1049 FX_BOOL Field::currentValueIndices(IFXJS_Context* cc, CJS_PropValue& vp, CFX_Wid
eString& sError) | 1049 bool Field::currentValueIndices(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideSt
ring& sError) |
| 1050 { | 1050 { |
| 1051 ASSERT(m_pDocument != NULL); | 1051 ASSERT(m_pDocument != NULL); |
| 1052 | 1052 |
| 1053 if (vp.IsSetting()) | 1053 if (vp.IsSetting()) |
| 1054 { | 1054 { |
| 1055 if (!m_bCanSet) return FALSE; | 1055 if (!m_bCanSet) return false; |
| 1056 | 1056 |
| 1057 CFX_DWordArray array; | 1057 CFX_DWordArray array; |
| 1058 | 1058 |
| 1059 if (vp.GetType() == VT_number) | 1059 if (vp.GetType() == VT_number) |
| 1060 { | 1060 { |
| 1061 int iSelecting = 0; | 1061 int iSelecting = 0; |
| 1062 vp >> iSelecting; | 1062 vp >> iSelecting; |
| 1063 array.Add(iSelecting); | 1063 array.Add(iSelecting); |
| 1064 } | 1064 } |
| 1065 else if (vp.IsArrayObject()) | 1065 else if (vp.IsArrayObject()) |
| (...skipping 16 matching lines...) Expand all Loading... |
| 1082 } | 1082 } |
| 1083 else | 1083 else |
| 1084 { | 1084 { |
| 1085 Field::SetCurrentValueIndices(m_pDocument, m_FieldName, m_nFormContr
olIndex, array); | 1085 Field::SetCurrentValueIndices(m_pDocument, m_FieldName, m_nFormContr
olIndex, array); |
| 1086 } | 1086 } |
| 1087 } | 1087 } |
| 1088 else | 1088 else |
| 1089 { | 1089 { |
| 1090 CFX_PtrArray FieldArray; | 1090 CFX_PtrArray FieldArray; |
| 1091 GetFormFields(m_FieldName,FieldArray); | 1091 GetFormFields(m_FieldName,FieldArray); |
| 1092 if (FieldArray.GetSize() <= 0) return FALSE; | 1092 if (FieldArray.GetSize() <= 0) return false; |
| 1093 | 1093 |
| 1094 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1094 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1095 ASSERT(pFormField != NULL); | 1095 ASSERT(pFormField != NULL); |
| 1096 | 1096 |
| 1097 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && pFormField->GetF
ieldType() != FIELDTYPE_LISTBOX) | 1097 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && pFormField->GetF
ieldType() != FIELDTYPE_LISTBOX) |
| 1098 return FALSE; | 1098 return false; |
| 1099 | 1099 |
| 1100 if (pFormField->CountSelectedItems() == 1) | 1100 if (pFormField->CountSelectedItems() == 1) |
| 1101 vp << pFormField->GetSelectedIndex(0); | 1101 vp << pFormField->GetSelectedIndex(0); |
| 1102 else if (pFormField->CountSelectedItems() > 1) | 1102 else if (pFormField->CountSelectedItems() > 1) |
| 1103 { | 1103 { |
| 1104 CJS_Array SelArray(m_isolate); | 1104 CJS_Array SelArray(m_isolate); |
| 1105 for (int i=0,sz=pFormField->CountSelectedItems(); i<sz; i++) | 1105 for (int i=0,sz=pFormField->CountSelectedItems(); i<sz; i++) |
| 1106 { | 1106 { |
| 1107 SelArray.SetElement(i, CJS_Value(m_isolate,pFormField->GetSelect
edIndex(i))); | 1107 SelArray.SetElement(i, CJS_Value(m_isolate,pFormField->GetSelect
edIndex(i))); |
| 1108 } | 1108 } |
| 1109 vp << SelArray; | 1109 vp << SelArray; |
| 1110 } | 1110 } |
| 1111 else | 1111 else |
| 1112 vp << -1; | 1112 vp << -1; |
| 1113 } | 1113 } |
| 1114 | 1114 |
| 1115 return TRUE; | 1115 return true; |
| 1116 } | 1116 } |
| 1117 | 1117 |
| 1118 void Field::SetCurrentValueIndices(CPDFSDK_Document* pDocument, const CFX_WideSt
ring& swFieldName, int nControlIndex, | 1118 void Field::SetCurrentValueIndices(CPDFSDK_Document* pDocument, const CFX_WideSt
ring& swFieldName, int nControlIndex, |
| 1119 const CFX_DWordArray& array) | 1119 const CFX_DWordArray& array) |
| 1120 { | 1120 { |
| 1121 ASSERT(pDocument != NULL); | 1121 ASSERT(pDocument != NULL); |
| 1122 | 1122 |
| 1123 CFX_PtrArray FieldArray; | 1123 CFX_PtrArray FieldArray; |
| 1124 GetFormFields(pDocument, swFieldName, FieldArray); | 1124 GetFormFields(pDocument, swFieldName, FieldArray); |
| 1125 | 1125 |
| 1126 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 1126 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 1127 { | 1127 { |
| 1128 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); | 1128 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 1129 ASSERT(pFormField != NULL); | 1129 ASSERT(pFormField != NULL); |
| 1130 | 1130 |
| 1131 int nFieldType = pFormField->GetFieldType(); | 1131 int nFieldType = pFormField->GetFieldType(); |
| 1132 if (nFieldType == FIELDTYPE_COMBOBOX || nFieldType == FIELDTYPE_LISTBOX) | 1132 if (nFieldType == FIELDTYPE_COMBOBOX || nFieldType == FIELDTYPE_LISTBOX) |
| 1133 { | 1133 { |
| 1134 FX_DWORD dwFieldFlags = pFormField->GetFieldFlags(); | 1134 FX_DWORD dwFieldFlags = pFormField->GetFieldFlags(); |
| 1135 pFormField->ClearSelection(TRUE); | 1135 pFormField->ClearSelection(true); |
| 1136 | 1136 |
| 1137 for (int i=0,sz=array.GetSize(); i<sz; i++) | 1137 for (int i=0,sz=array.GetSize(); i<sz; i++) |
| 1138 { | 1138 { |
| 1139 if (i>0 && !(dwFieldFlags & (1<<21))) | 1139 if (i>0 && !(dwFieldFlags & (1<<21))) |
| 1140 { | 1140 { |
| 1141 break; | 1141 break; |
| 1142 } | 1142 } |
| 1143 | 1143 |
| 1144 int iSelecting = (int32_t)array.GetAt(i); | 1144 int iSelecting = (int32_t)array.GetAt(i); |
| 1145 if (iSelecting < pFormField->CountOptions() && !pFormField->IsIt
emSelected(iSelecting)) | 1145 if (iSelecting < pFormField->CountOptions() && !pFormField->IsIt
emSelected(iSelecting)) |
| 1146 pFormField->SetItemSelection(iSelecting, TRUE); | 1146 pFormField->SetItemSelection(iSelecting, true); |
| 1147 | 1147 |
| 1148 } | 1148 } |
| 1149 UpdateFormField(pDocument, pFormField, TRUE, TRUE, TRUE); | 1149 UpdateFormField(pDocument, pFormField, true, true, true); |
| 1150 } | 1150 } |
| 1151 } | 1151 } |
| 1152 } | 1152 } |
| 1153 | 1153 |
| 1154 FX_BOOL Field::defaultStyle(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) | 1154 bool Field::defaultStyle(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 1155 { | 1155 { |
| 1156 // MQG sError = JSGetStringFromID(IDS_STRING_NOTSUPPORT); | 1156 // MQG sError = JSGetStringFromID(IDS_STRING_NOTSUPPORT); |
| 1157 return FALSE; | 1157 return false; |
| 1158 | 1158 |
| 1159 if (vp.IsSetting()) | 1159 if (vp.IsSetting()) |
| 1160 { | 1160 { |
| 1161 if (!m_bCanSet) return FALSE; | 1161 if (!m_bCanSet) return false; |
| 1162 | 1162 |
| 1163 ; | 1163 ; |
| 1164 } | 1164 } |
| 1165 else | 1165 else |
| 1166 { | 1166 { |
| 1167 ; | 1167 ; |
| 1168 } | 1168 } |
| 1169 return TRUE; | 1169 return true; |
| 1170 } | 1170 } |
| 1171 | 1171 |
| 1172 void Field::SetDefaultStyle(CPDFSDK_Document* pDocument, const CFX_WideString& s
wFieldName, int nControlIndex) | 1172 void Field::SetDefaultStyle(CPDFSDK_Document* pDocument, const CFX_WideString& s
wFieldName, int nControlIndex) |
| 1173 { | 1173 { |
| 1174 //Not supported. | 1174 //Not supported. |
| 1175 } | 1175 } |
| 1176 | 1176 |
| 1177 FX_BOOL Field::defaultValue(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) | 1177 bool Field::defaultValue(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 1178 { | 1178 { |
| 1179 ASSERT(m_pDocument != NULL); | 1179 ASSERT(m_pDocument != NULL); |
| 1180 | 1180 |
| 1181 if (vp.IsSetting()) | 1181 if (vp.IsSetting()) |
| 1182 { | 1182 { |
| 1183 if (!m_bCanSet) return FALSE; | 1183 if (!m_bCanSet) return false; |
| 1184 | 1184 |
| 1185 CFX_WideString WideStr; | 1185 CFX_WideString WideStr; |
| 1186 vp >> WideStr; | 1186 vp >> WideStr; |
| 1187 | 1187 |
| 1188 if (m_bDelay) | 1188 if (m_bDelay) |
| 1189 { | 1189 { |
| 1190 AddDelay_WideString(FP_DEFAULTVALUE, WideStr); | 1190 AddDelay_WideString(FP_DEFAULTVALUE, WideStr); |
| 1191 } | 1191 } |
| 1192 else | 1192 else |
| 1193 { | 1193 { |
| 1194 Field::SetDefaultValue(m_pDocument, m_FieldName, m_nFormControlIndex
, WideStr); | 1194 Field::SetDefaultValue(m_pDocument, m_FieldName, m_nFormControlIndex
, WideStr); |
| 1195 } | 1195 } |
| 1196 } | 1196 } |
| 1197 else | 1197 else |
| 1198 { | 1198 { |
| 1199 CFX_PtrArray FieldArray; | 1199 CFX_PtrArray FieldArray; |
| 1200 GetFormFields(m_FieldName,FieldArray); | 1200 GetFormFields(m_FieldName,FieldArray); |
| 1201 if (FieldArray.GetSize() <= 0) return FALSE; | 1201 if (FieldArray.GetSize() <= 0) return false; |
| 1202 | 1202 |
| 1203 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1203 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1204 ASSERT(pFormField != NULL); | 1204 ASSERT(pFormField != NULL); |
| 1205 | 1205 |
| 1206 if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON || | 1206 if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON || |
| 1207 pFormField->GetFieldType() == FIELDTYPE_SIGNATURE) | 1207 pFormField->GetFieldType() == FIELDTYPE_SIGNATURE) |
| 1208 return FALSE; | 1208 return false; |
| 1209 | 1209 |
| 1210 vp << pFormField->GetDefaultValue(); | 1210 vp << pFormField->GetDefaultValue(); |
| 1211 } | 1211 } |
| 1212 return TRUE; | 1212 return true; |
| 1213 } | 1213 } |
| 1214 | 1214 |
| 1215 void Field::SetDefaultValue(CPDFSDK_Document* pDocument, const CFX_WideString& s
wFieldName, int nControlIndex, | 1215 void Field::SetDefaultValue(CPDFSDK_Document* pDocument, const CFX_WideString& s
wFieldName, int nControlIndex, |
| 1216 const CFX_WideString& string) | 1216 const CFX_WideString& string) |
| 1217 { | 1217 { |
| 1218 //Not supported. | 1218 //Not supported. |
| 1219 } | 1219 } |
| 1220 | 1220 |
| 1221 FX_BOOL Field::doNotScroll(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) | 1221 bool Field::doNotScroll(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 1222 { | 1222 { |
| 1223 ASSERT(m_pDocument != NULL); | 1223 ASSERT(m_pDocument != NULL); |
| 1224 | 1224 |
| 1225 if (vp.IsSetting()) | 1225 if (vp.IsSetting()) |
| 1226 { | 1226 { |
| 1227 if (!m_bCanSet) return FALSE; | 1227 if (!m_bCanSet) return false; |
| 1228 | 1228 |
| 1229 bool bVP; | 1229 bool bVP; |
| 1230 vp >> bVP; | 1230 vp >> bVP; |
| 1231 | 1231 |
| 1232 if (m_bDelay) | 1232 if (m_bDelay) |
| 1233 { | 1233 { |
| 1234 AddDelay_Bool(FP_DONOTSCROLL, bVP); | 1234 AddDelay_Bool(FP_DONOTSCROLL, bVP); |
| 1235 } | 1235 } |
| 1236 else | 1236 else |
| 1237 { | 1237 { |
| 1238 Field::SetDoNotScroll(m_pDocument, m_FieldName, m_nFormControlIndex,
bVP); | 1238 Field::SetDoNotScroll(m_pDocument, m_FieldName, m_nFormControlIndex,
bVP); |
| 1239 } | 1239 } |
| 1240 } | 1240 } |
| 1241 else | 1241 else |
| 1242 { | 1242 { |
| 1243 CFX_PtrArray FieldArray; | 1243 CFX_PtrArray FieldArray; |
| 1244 GetFormFields(m_FieldName,FieldArray); | 1244 GetFormFields(m_FieldName,FieldArray); |
| 1245 if (FieldArray.GetSize() <= 0) return FALSE; | 1245 if (FieldArray.GetSize() <= 0) return false; |
| 1246 | 1246 |
| 1247 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1247 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1248 ASSERT(pFormField != NULL); | 1248 ASSERT(pFormField != NULL); |
| 1249 | 1249 |
| 1250 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 1250 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 1251 return FALSE; | 1251 return false; |
| 1252 | 1252 |
| 1253 if (pFormField->GetFieldFlags() & FIELDFLAG_DONOTSCROLL) | 1253 if (pFormField->GetFieldFlags() & FIELDFLAG_DONOTSCROLL) |
| 1254 vp << true; | 1254 vp << true; |
| 1255 else | 1255 else |
| 1256 vp << false; | 1256 vp << false; |
| 1257 } | 1257 } |
| 1258 | 1258 |
| 1259 return TRUE; | 1259 return true; |
| 1260 } | 1260 } |
| 1261 | 1261 |
| 1262 void Field::SetDoNotScroll(CPDFSDK_Document* pDocument, const CFX_WideString& sw
FieldName, int nControlIndex, bool b) | 1262 void Field::SetDoNotScroll(CPDFSDK_Document* pDocument, const CFX_WideString& sw
FieldName, int nControlIndex, bool b) |
| 1263 { | 1263 { |
| 1264 //Not supported. | 1264 //Not supported. |
| 1265 } | 1265 } |
| 1266 | 1266 |
| 1267 FX_BOOL Field::doNotSpellCheck(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStr
ing& sError) | 1267 bool Field::doNotSpellCheck(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) |
| 1268 { | 1268 { |
| 1269 ASSERT(m_pDocument != NULL); | 1269 ASSERT(m_pDocument != NULL); |
| 1270 | 1270 |
| 1271 if (vp.IsSetting()) | 1271 if (vp.IsSetting()) |
| 1272 { | 1272 { |
| 1273 if (!m_bCanSet) return FALSE; | 1273 if (!m_bCanSet) return false; |
| 1274 | 1274 |
| 1275 bool bVP; | 1275 bool bVP; |
| 1276 vp >> bVP; | 1276 vp >> bVP; |
| 1277 } | 1277 } |
| 1278 else | 1278 else |
| 1279 { | 1279 { |
| 1280 CFX_PtrArray FieldArray; | 1280 CFX_PtrArray FieldArray; |
| 1281 GetFormFields(m_FieldName,FieldArray); | 1281 GetFormFields(m_FieldName,FieldArray); |
| 1282 if (FieldArray.GetSize() <= 0) return FALSE; | 1282 if (FieldArray.GetSize() <= 0) return false; |
| 1283 | 1283 |
| 1284 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1284 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1285 ASSERT(pFormField != NULL); | 1285 ASSERT(pFormField != NULL); |
| 1286 | 1286 |
| 1287 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD && | 1287 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD && |
| 1288 pFormField->GetFieldType() != FIELDTYPE_COMBOBOX) | 1288 pFormField->GetFieldType() != FIELDTYPE_COMBOBOX) |
| 1289 return FALSE; | 1289 return false; |
| 1290 | 1290 |
| 1291 if (pFormField->GetFieldFlags() & FIELDFLAG_DONOTSPELLCHECK) | 1291 if (pFormField->GetFieldFlags() & FIELDFLAG_DONOTSPELLCHECK) |
| 1292 vp << true; | 1292 vp << true; |
| 1293 else | 1293 else |
| 1294 vp << false; | 1294 vp << false; |
| 1295 } | 1295 } |
| 1296 | 1296 |
| 1297 return TRUE; | 1297 return true; |
| 1298 } | 1298 } |
| 1299 | 1299 |
| 1300 void Field::SetDelay(FX_BOOL bDelay) | 1300 void Field::SetDelay(bool bDelay) |
| 1301 { | 1301 { |
| 1302 m_bDelay = bDelay; | 1302 m_bDelay = bDelay; |
| 1303 | 1303 |
| 1304 if (!m_bDelay) | 1304 if (!m_bDelay) |
| 1305 { | 1305 { |
| 1306 if (m_pJSDoc) | 1306 if (m_pJSDoc) |
| 1307 m_pJSDoc->DoFieldDelay(m_FieldName, m_nFormControlIndex); | 1307 m_pJSDoc->DoFieldDelay(m_FieldName, m_nFormControlIndex); |
| 1308 } | 1308 } |
| 1309 } | 1309 } |
| 1310 | 1310 |
| 1311 FX_BOOL Field::delay(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) | 1311 bool Field::delay(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 1312 { | 1312 { |
| 1313 if (vp.IsSetting()) | 1313 if (vp.IsSetting()) |
| 1314 { | 1314 { |
| 1315 if (!m_bCanSet) return FALSE; | 1315 if (!m_bCanSet) return false; |
| 1316 | 1316 |
| 1317 bool bVP; | 1317 bool bVP; |
| 1318 vp >> bVP; | 1318 vp >> bVP; |
| 1319 | 1319 |
| 1320 SetDelay(bVP); | 1320 SetDelay(bVP); |
| 1321 } | 1321 } |
| 1322 else | 1322 else |
| 1323 { | 1323 { |
| 1324 vp << m_bDelay; | 1324 vp << m_bDelay; |
| 1325 } | 1325 } |
| 1326 return TRUE; | 1326 return true; |
| 1327 } | 1327 } |
| 1328 | 1328 |
| 1329 FX_BOOL Field::display(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sEr
ror) | 1329 bool Field::display(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) |
| 1330 { | 1330 { |
| 1331 ASSERT(m_pDocument != NULL); | 1331 ASSERT(m_pDocument != NULL); |
| 1332 | 1332 |
| 1333 if (vp.IsSetting()) | 1333 if (vp.IsSetting()) |
| 1334 { | 1334 { |
| 1335 if (!m_bCanSet) return FALSE; | 1335 if (!m_bCanSet) return false; |
| 1336 | 1336 |
| 1337 int nVP; | 1337 int nVP; |
| 1338 vp >> nVP; | 1338 vp >> nVP; |
| 1339 | 1339 |
| 1340 if (m_bDelay) | 1340 if (m_bDelay) |
| 1341 { | 1341 { |
| 1342 AddDelay_Int(FP_DISPLAY, nVP); | 1342 AddDelay_Int(FP_DISPLAY, nVP); |
| 1343 } | 1343 } |
| 1344 else | 1344 else |
| 1345 { | 1345 { |
| 1346 Field::SetDisplay(m_pDocument, m_FieldName, m_nFormControlIndex, nVP
); | 1346 Field::SetDisplay(m_pDocument, m_FieldName, m_nFormControlIndex, nVP
); |
| 1347 } | 1347 } |
| 1348 } | 1348 } |
| 1349 else | 1349 else |
| 1350 { | 1350 { |
| 1351 CFX_PtrArray FieldArray; | 1351 CFX_PtrArray FieldArray; |
| 1352 GetFormFields(m_FieldName,FieldArray); | 1352 GetFormFields(m_FieldName,FieldArray); |
| 1353 if (FieldArray.GetSize() <= 0) return FALSE; | 1353 if (FieldArray.GetSize() <= 0) return false; |
| 1354 | 1354 |
| 1355 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1355 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1356 ASSERT(pFormField != NULL); | 1356 ASSERT(pFormField != NULL); |
| 1357 | 1357 |
| 1358 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); | 1358 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); |
| 1359 ASSERT(pInterForm != NULL); | 1359 ASSERT(pInterForm != NULL); |
| 1360 | 1360 |
| 1361 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); | 1361 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); |
| 1362 if (!pWidget)return FALSE; | 1362 if (!pWidget)return false; |
| 1363 | 1363 |
| 1364 FX_DWORD dwFlag = pWidget->GetFlags(); | 1364 FX_DWORD dwFlag = pWidget->GetFlags(); |
| 1365 | 1365 |
| 1366 if (ANNOTFLAG_INVISIBLE & dwFlag || ANNOTFLAG_HIDDEN & dwFlag) | 1366 if (ANNOTFLAG_INVISIBLE & dwFlag || ANNOTFLAG_HIDDEN & dwFlag) |
| 1367 { | 1367 { |
| 1368 vp << (int32_t)1; | 1368 vp << (int32_t)1; |
| 1369 } | 1369 } |
| 1370 else | 1370 else |
| 1371 { | 1371 { |
| 1372 if (ANNOTFLAG_PRINT & dwFlag) | 1372 if (ANNOTFLAG_PRINT & dwFlag) |
| 1373 { | 1373 { |
| 1374 if (ANNOTFLAG_NOVIEW & dwFlag) | 1374 if (ANNOTFLAG_NOVIEW & dwFlag) |
| 1375 { | 1375 { |
| 1376 vp << (int32_t)3; | 1376 vp << (int32_t)3; |
| 1377 } | 1377 } |
| 1378 else | 1378 else |
| 1379 { | 1379 { |
| 1380 vp << (int32_t)0; | 1380 vp << (int32_t)0; |
| 1381 } | 1381 } |
| 1382 } | 1382 } |
| 1383 else | 1383 else |
| 1384 { | 1384 { |
| 1385 vp << (int32_t)2; | 1385 vp << (int32_t)2; |
| 1386 } | 1386 } |
| 1387 } | 1387 } |
| 1388 } | 1388 } |
| 1389 | 1389 |
| 1390 return TRUE; | 1390 return true; |
| 1391 } | 1391 } |
| 1392 | 1392 |
| 1393 void Field::SetDisplay(CPDFSDK_Document* pDocument, const CFX_WideString& swFiel
dName, int nControlIndex, int number) | 1393 void Field::SetDisplay(CPDFSDK_Document* pDocument, const CFX_WideString& swFiel
dName, int nControlIndex, int number) |
| 1394 { | 1394 { |
| 1395 ASSERT(pDocument != NULL); | 1395 ASSERT(pDocument != NULL); |
| 1396 | 1396 |
| 1397 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); | 1397 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 1398 ASSERT(pInterForm != NULL); | 1398 ASSERT(pInterForm != NULL); |
| 1399 | 1399 |
| 1400 CFX_PtrArray FieldArray; | 1400 CFX_PtrArray FieldArray; |
| 1401 GetFormFields(pDocument, swFieldName, FieldArray); | 1401 GetFormFields(pDocument, swFieldName, FieldArray); |
| 1402 | 1402 |
| 1403 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 1403 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 1404 { | 1404 { |
| 1405 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); | 1405 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 1406 ASSERT(pFormField != NULL); | 1406 ASSERT(pFormField != NULL); |
| 1407 | 1407 |
| 1408 if (nControlIndex < 0) | 1408 if (nControlIndex < 0) |
| 1409 { | 1409 { |
| 1410 FX_BOOL bSet = FALSE; | 1410 bool bSet = false; |
| 1411 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) | 1411 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) |
| 1412 { | 1412 { |
| 1413 CPDF_FormControl* pFormControl = pFormField->GetControl(j); | 1413 CPDF_FormControl* pFormControl = pFormField->GetControl(j); |
| 1414 ASSERT(pFormControl != NULL); | 1414 ASSERT(pFormControl != NULL); |
| 1415 | 1415 |
| 1416 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) | 1416 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 1417 { | 1417 { |
| 1418 FX_DWORD dwFlag = pWidget->GetFlags(); | 1418 FX_DWORD dwFlag = pWidget->GetFlags(); |
| 1419 switch (number) | 1419 switch (number) |
| 1420 { | 1420 { |
| (...skipping 17 matching lines...) Expand all Loading... |
| 1438 case 3: | 1438 case 3: |
| 1439 dwFlag |= ANNOTFLAG_NOVIEW; | 1439 dwFlag |= ANNOTFLAG_NOVIEW; |
| 1440 dwFlag |= ANNOTFLAG_PRINT; | 1440 dwFlag |= ANNOTFLAG_PRINT; |
| 1441 dwFlag &= (~ANNOTFLAG_HIDDEN); | 1441 dwFlag &= (~ANNOTFLAG_HIDDEN); |
| 1442 break; | 1442 break; |
| 1443 } | 1443 } |
| 1444 | 1444 |
| 1445 if (dwFlag != pWidget->GetFlags()) | 1445 if (dwFlag != pWidget->GetFlags()) |
| 1446 { | 1446 { |
| 1447 pWidget->SetFlags(dwFlag); | 1447 pWidget->SetFlags(dwFlag); |
| 1448 bSet = TRUE; | 1448 bSet = true; |
| 1449 } | 1449 } |
| 1450 } | 1450 } |
| 1451 } | 1451 } |
| 1452 | 1452 |
| 1453 if (bSet) UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE); | 1453 if (bSet) UpdateFormField(pDocument, pFormField, true, false, true); |
| 1454 } | 1454 } |
| 1455 else | 1455 else |
| 1456 { | 1456 { |
| 1457 if(nControlIndex >= pFormField->CountControls()) return; | 1457 if(nControlIndex >= pFormField->CountControls()) return; |
| 1458 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) | 1458 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 1459 { | 1459 { |
| 1460 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) | 1460 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 1461 { | 1461 { |
| 1462 | 1462 |
| 1463 FX_DWORD dwFlag = pWidget->GetFlags(); | 1463 FX_DWORD dwFlag = pWidget->GetFlags(); |
| (...skipping 18 matching lines...) Expand all Loading... |
| 1482 break; | 1482 break; |
| 1483 case 3: | 1483 case 3: |
| 1484 dwFlag |= ANNOTFLAG_NOVIEW; | 1484 dwFlag |= ANNOTFLAG_NOVIEW; |
| 1485 dwFlag |= ANNOTFLAG_PRINT; | 1485 dwFlag |= ANNOTFLAG_PRINT; |
| 1486 dwFlag &= (~ANNOTFLAG_HIDDEN); | 1486 dwFlag &= (~ANNOTFLAG_HIDDEN); |
| 1487 break; | 1487 break; |
| 1488 } | 1488 } |
| 1489 if (dwFlag != pWidget->GetFlags()) | 1489 if (dwFlag != pWidget->GetFlags()) |
| 1490 { | 1490 { |
| 1491 pWidget->SetFlags(dwFlag); | 1491 pWidget->SetFlags(dwFlag); |
| 1492 UpdateFormControl(pDocument, pFormControl, TRUE, FALSE,
TRUE); | 1492 UpdateFormControl(pDocument, pFormControl, true, false,
true); |
| 1493 } | 1493 } |
| 1494 } | 1494 } |
| 1495 } | 1495 } |
| 1496 } | 1496 } |
| 1497 } | 1497 } |
| 1498 } | 1498 } |
| 1499 | 1499 |
| 1500 FX_BOOL Field::doc(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) | 1500 bool Field::doc(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 1501 { | 1501 { |
| 1502 if (!vp.IsGetting()) { | 1502 if (!vp.IsGetting()) { |
| 1503 return FALSE; | 1503 return false; |
| 1504 } | 1504 } |
| 1505 vp << m_pJSDoc->GetCJSDoc(); | 1505 vp << m_pJSDoc->GetCJSDoc(); |
| 1506 return TRUE; | 1506 return true; |
| 1507 } | 1507 } |
| 1508 | 1508 |
| 1509 FX_BOOL Field::editable(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 1509 bool Field::editable(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 1510 { | 1510 { |
| 1511 ASSERT(m_pDocument != NULL); | 1511 ASSERT(m_pDocument != NULL); |
| 1512 if (vp.IsSetting()) | 1512 if (vp.IsSetting()) |
| 1513 { | 1513 { |
| 1514 if (!m_bCanSet) return FALSE; | 1514 if (!m_bCanSet) return false; |
| 1515 | 1515 |
| 1516 bool bVP; | 1516 bool bVP; |
| 1517 vp >> bVP; | 1517 vp >> bVP; |
| 1518 } | 1518 } |
| 1519 else | 1519 else |
| 1520 { | 1520 { |
| 1521 CFX_PtrArray FieldArray; | 1521 CFX_PtrArray FieldArray; |
| 1522 GetFormFields(m_FieldName, FieldArray); | 1522 GetFormFields(m_FieldName, FieldArray); |
| 1523 if (FieldArray.GetSize() <= 0) return FALSE; | 1523 if (FieldArray.GetSize() <= 0) return false; |
| 1524 | 1524 |
| 1525 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1525 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1526 ASSERT(pFormField != NULL); | 1526 ASSERT(pFormField != NULL); |
| 1527 | 1527 |
| 1528 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX) | 1528 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX) |
| 1529 return FALSE; | 1529 return false; |
| 1530 | 1530 |
| 1531 if (pFormField->GetFieldFlags() & FIELDFLAG_EDIT) | 1531 if (pFormField->GetFieldFlags() & FIELDFLAG_EDIT) |
| 1532 vp << true; | 1532 vp << true; |
| 1533 else | 1533 else |
| 1534 vp << false; | 1534 vp << false; |
| 1535 } | 1535 } |
| 1536 | 1536 |
| 1537 return TRUE; | 1537 return true; |
| 1538 } | 1538 } |
| 1539 | 1539 |
| 1540 FX_BOOL Field::exportValues(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) | 1540 bool Field::exportValues(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 1541 { | 1541 { |
| 1542 ASSERT(m_pDocument != NULL); | 1542 ASSERT(m_pDocument != NULL); |
| 1543 | 1543 |
| 1544 CFX_PtrArray FieldArray; | 1544 CFX_PtrArray FieldArray; |
| 1545 GetFormFields(m_FieldName,FieldArray); | 1545 GetFormFields(m_FieldName,FieldArray); |
| 1546 if (FieldArray.GetSize() <= 0) | 1546 if (FieldArray.GetSize() <= 0) |
| 1547 return FALSE; | 1547 return false; |
| 1548 | 1548 |
| 1549 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1549 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1550 if (pFormField->GetFieldType() != FIELDTYPE_CHECKBOX && | 1550 if (pFormField->GetFieldType() != FIELDTYPE_CHECKBOX && |
| 1551 pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON) | 1551 pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON) |
| 1552 return FALSE; | 1552 return false; |
| 1553 | 1553 |
| 1554 if (vp.IsSetting()) | 1554 if (vp.IsSetting()) |
| 1555 { | 1555 { |
| 1556 if (!m_bCanSet) | 1556 if (!m_bCanSet) |
| 1557 return FALSE; | 1557 return false; |
| 1558 | 1558 |
| 1559 if (!vp.IsArrayObject()) | 1559 if (!vp.IsArrayObject()) |
| 1560 return FALSE; | 1560 return false; |
| 1561 } | 1561 } |
| 1562 else | 1562 else |
| 1563 { | 1563 { |
| 1564 CJS_Array ExportValusArray(m_isolate); | 1564 CJS_Array ExportValusArray(m_isolate); |
| 1565 if (m_nFormControlIndex < 0) | 1565 if (m_nFormControlIndex < 0) |
| 1566 { | 1566 { |
| 1567 for (int i=0,sz=pFormField->CountControls(); i<sz; i++) | 1567 for (int i=0,sz=pFormField->CountControls(); i<sz; i++) |
| 1568 { | 1568 { |
| 1569 CPDF_FormControl* pFormControl = pFormField->GetControl(i); | 1569 CPDF_FormControl* pFormControl = pFormField->GetControl(i); |
| 1570 ExportValusArray.SetElement(i, CJS_Value(m_isolate,pFormControl-
>GetExportValue().c_str())); | 1570 ExportValusArray.SetElement(i, CJS_Value(m_isolate,pFormControl-
>GetExportValue().c_str())); |
| 1571 } | 1571 } |
| 1572 } | 1572 } |
| 1573 else | 1573 else |
| 1574 { | 1574 { |
| 1575 if (m_nFormControlIndex >= pFormField->CountControls()) | 1575 if (m_nFormControlIndex >= pFormField->CountControls()) |
| 1576 return FALSE; | 1576 return false; |
| 1577 | 1577 |
| 1578 CPDF_FormControl* pFormControl = pFormField->GetControl(m_nFormContr
olIndex); | 1578 CPDF_FormControl* pFormControl = pFormField->GetControl(m_nFormContr
olIndex); |
| 1579 if (!pFormControl) | 1579 if (!pFormControl) |
| 1580 return FALSE; | 1580 return false; |
| 1581 | 1581 |
| 1582 ExportValusArray.SetElement(0, CJS_Value(m_isolate,pFormControl->Get
ExportValue().c_str())); | 1582 ExportValusArray.SetElement(0, CJS_Value(m_isolate,pFormControl->Get
ExportValue().c_str())); |
| 1583 } | 1583 } |
| 1584 vp << ExportValusArray; | 1584 vp << ExportValusArray; |
| 1585 } | 1585 } |
| 1586 return TRUE; | 1586 return true; |
| 1587 } | 1587 } |
| 1588 | 1588 |
| 1589 FX_BOOL Field::fileSelect(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) | 1589 bool Field::fileSelect(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sEr
ror) |
| 1590 { | 1590 { |
| 1591 ASSERT(m_pDocument != NULL); | 1591 ASSERT(m_pDocument != NULL); |
| 1592 | 1592 |
| 1593 CFX_PtrArray FieldArray; | 1593 CFX_PtrArray FieldArray; |
| 1594 GetFormFields(m_FieldName, FieldArray); | 1594 GetFormFields(m_FieldName, FieldArray); |
| 1595 if (FieldArray.GetSize() <= 0) | 1595 if (FieldArray.GetSize() <= 0) |
| 1596 return FALSE; | 1596 return false; |
| 1597 | 1597 |
| 1598 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1598 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1599 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 1599 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 1600 return FALSE; | 1600 return false; |
| 1601 | 1601 |
| 1602 if (vp.IsSetting()) | 1602 if (vp.IsSetting()) |
| 1603 { | 1603 { |
| 1604 if (!m_bCanSet) | 1604 if (!m_bCanSet) |
| 1605 return FALSE; | 1605 return false; |
| 1606 | 1606 |
| 1607 bool bVP; | 1607 bool bVP; |
| 1608 vp >> bVP; | 1608 vp >> bVP; |
| 1609 } | 1609 } |
| 1610 else | 1610 else |
| 1611 { | 1611 { |
| 1612 if (pFormField->GetFieldFlags() & FIELDFLAG_FILESELECT) | 1612 if (pFormField->GetFieldFlags() & FIELDFLAG_FILESELECT) |
| 1613 vp << true; | 1613 vp << true; |
| 1614 else | 1614 else |
| 1615 vp << false; | 1615 vp << false; |
| 1616 } | 1616 } |
| 1617 return TRUE; | 1617 return true; |
| 1618 } | 1618 } |
| 1619 | 1619 |
| 1620 FX_BOOL Field::fillColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 1620 bool Field::fillColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 1621 { | 1621 { |
| 1622 ASSERT(m_pDocument != NULL); | 1622 ASSERT(m_pDocument != NULL); |
| 1623 | 1623 |
| 1624 CJS_Array crArray(m_isolate); | 1624 CJS_Array crArray(m_isolate); |
| 1625 | 1625 |
| 1626 CFX_PtrArray FieldArray; | 1626 CFX_PtrArray FieldArray; |
| 1627 GetFormFields(m_FieldName, FieldArray); | 1627 GetFormFields(m_FieldName, FieldArray); |
| 1628 if (FieldArray.GetSize() <= 0) | 1628 if (FieldArray.GetSize() <= 0) |
| 1629 return FALSE; | 1629 return false; |
| 1630 | 1630 |
| 1631 if (vp.IsSetting()) | 1631 if (vp.IsSetting()) |
| 1632 { | 1632 { |
| 1633 if (!m_bCanSet) | 1633 if (!m_bCanSet) |
| 1634 return FALSE; | 1634 return false; |
| 1635 | 1635 |
| 1636 if (!vp.IsArrayObject()) | 1636 if (!vp.IsArrayObject()) |
| 1637 return FALSE; | 1637 return false; |
| 1638 | 1638 |
| 1639 vp >> crArray; | 1639 vp >> crArray; |
| 1640 | 1640 |
| 1641 CPWL_Color color; | 1641 CPWL_Color color; |
| 1642 color::ConvertArrayToPWLColor(crArray, color); | 1642 color::ConvertArrayToPWLColor(crArray, color); |
| 1643 if (m_bDelay) | 1643 if (m_bDelay) |
| 1644 { | 1644 { |
| 1645 AddDelay_Color(FP_FILLCOLOR, color); | 1645 AddDelay_Color(FP_FILLCOLOR, color); |
| 1646 } | 1646 } |
| 1647 else | 1647 else |
| 1648 { | 1648 { |
| 1649 Field::SetFillColor(m_pDocument, m_FieldName, m_nFormControlIndex, c
olor); | 1649 Field::SetFillColor(m_pDocument, m_FieldName, m_nFormControlIndex, c
olor); |
| 1650 } | 1650 } |
| 1651 } | 1651 } |
| 1652 else | 1652 else |
| 1653 { | 1653 { |
| 1654 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1654 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1655 ASSERT(pFormField != NULL); | 1655 ASSERT(pFormField != NULL); |
| 1656 | 1656 |
| 1657 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 1657 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 1658 if (!pFormControl) | 1658 if (!pFormControl) |
| 1659 return FALSE; | 1659 return false; |
| 1660 | 1660 |
| 1661 int iColorType; | 1661 int iColorType; |
| 1662 pFormControl->GetBackgroundColor(iColorType); | 1662 pFormControl->GetBackgroundColor(iColorType); |
| 1663 | 1663 |
| 1664 CPWL_Color color; | 1664 CPWL_Color color; |
| 1665 if (iColorType == COLORTYPE_TRANSPARENT) | 1665 if (iColorType == COLORTYPE_TRANSPARENT) |
| 1666 { | 1666 { |
| 1667 color = CPWL_Color(COLORTYPE_TRANSPARENT); | 1667 color = CPWL_Color(COLORTYPE_TRANSPARENT); |
| 1668 } | 1668 } |
| 1669 else if (iColorType == COLORTYPE_GRAY) | 1669 else if (iColorType == COLORTYPE_GRAY) |
| 1670 { | 1670 { |
| 1671 color = CPWL_Color(COLORTYPE_GRAY, pFormControl->GetOriginalBackgrou
ndColor(0)); | 1671 color = CPWL_Color(COLORTYPE_GRAY, pFormControl->GetOriginalBackgrou
ndColor(0)); |
| 1672 } | 1672 } |
| 1673 else if (iColorType == COLORTYPE_RGB) | 1673 else if (iColorType == COLORTYPE_RGB) |
| 1674 { | 1674 { |
| 1675 color = CPWL_Color(COLORTYPE_RGB, pFormControl->GetOriginalBackgroun
dColor(0), | 1675 color = CPWL_Color(COLORTYPE_RGB, pFormControl->GetOriginalBackgroun
dColor(0), |
| 1676 pFormControl->GetOriginalBackgroundColor(1), | 1676 pFormControl->GetOriginalBackgroundColor(1), |
| 1677 pFormControl->GetOriginalBackgroundColor(2)); | 1677 pFormControl->GetOriginalBackgroundColor(2)); |
| 1678 } | 1678 } |
| 1679 else if (iColorType == COLORTYPE_CMYK) | 1679 else if (iColorType == COLORTYPE_CMYK) |
| 1680 { | 1680 { |
| 1681 color = CPWL_Color(COLORTYPE_CMYK, pFormControl->GetOriginalBackgrou
ndColor(0), | 1681 color = CPWL_Color(COLORTYPE_CMYK, pFormControl->GetOriginalBackgrou
ndColor(0), |
| 1682 pFormControl->GetOriginalBackgroundColor(1), | 1682 pFormControl->GetOriginalBackgroundColor(1), |
| 1683 pFormControl->GetOriginalBackgroundColor(2), | 1683 pFormControl->GetOriginalBackgroundColor(2), |
| 1684 pFormControl->GetOriginalBackgroundColor(3)); | 1684 pFormControl->GetOriginalBackgroundColor(3)); |
| 1685 } | 1685 } |
| 1686 else | 1686 else |
| 1687 return FALSE; | 1687 return false; |
| 1688 | 1688 |
| 1689 color::ConvertPWLColorToArray(color, crArray); | 1689 color::ConvertPWLColorToArray(color, crArray); |
| 1690 vp << crArray; | 1690 vp << crArray; |
| 1691 } | 1691 } |
| 1692 | 1692 |
| 1693 return TRUE; | 1693 return true; |
| 1694 } | 1694 } |
| 1695 | 1695 |
| 1696 void Field::SetFillColor(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, const CPWL_Color& color) | 1696 void Field::SetFillColor(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, const CPWL_Color& color) |
| 1697 { | 1697 { |
| 1698 //Not supported. | 1698 //Not supported. |
| 1699 } | 1699 } |
| 1700 | 1700 |
| 1701 FX_BOOL Field::hidden(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) | 1701 bool Field::hidden(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 1702 { | 1702 { |
| 1703 ASSERT(m_pDocument != NULL); | 1703 ASSERT(m_pDocument != NULL); |
| 1704 | 1704 |
| 1705 if (vp.IsSetting()) | 1705 if (vp.IsSetting()) |
| 1706 { | 1706 { |
| 1707 if (!m_bCanSet) return FALSE; | 1707 if (!m_bCanSet) return false; |
| 1708 | 1708 |
| 1709 bool bVP; | 1709 bool bVP; |
| 1710 vp >> bVP; | 1710 vp >> bVP; |
| 1711 | 1711 |
| 1712 if (m_bDelay) | 1712 if (m_bDelay) |
| 1713 { | 1713 { |
| 1714 AddDelay_Bool(FP_HIDDEN, bVP); | 1714 AddDelay_Bool(FP_HIDDEN, bVP); |
| 1715 } | 1715 } |
| 1716 else | 1716 else |
| 1717 { | 1717 { |
| 1718 Field::SetHidden(m_pDocument, m_FieldName, m_nFormControlIndex, bVP)
; | 1718 Field::SetHidden(m_pDocument, m_FieldName, m_nFormControlIndex, bVP)
; |
| 1719 } | 1719 } |
| 1720 } | 1720 } |
| 1721 else | 1721 else |
| 1722 { | 1722 { |
| 1723 CFX_PtrArray FieldArray; | 1723 CFX_PtrArray FieldArray; |
| 1724 GetFormFields(m_FieldName,FieldArray); | 1724 GetFormFields(m_FieldName,FieldArray); |
| 1725 if (FieldArray.GetSize() <= 0) return FALSE; | 1725 if (FieldArray.GetSize() <= 0) return false; |
| 1726 | 1726 |
| 1727 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1727 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1728 ASSERT(pFormField != NULL); | 1728 ASSERT(pFormField != NULL); |
| 1729 | 1729 |
| 1730 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); | 1730 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); |
| 1731 ASSERT(pInterForm != NULL); | 1731 ASSERT(pInterForm != NULL); |
| 1732 | 1732 |
| 1733 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); | 1733 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); |
| 1734 if (!pWidget) return FALSE; | 1734 if (!pWidget) return false; |
| 1735 | 1735 |
| 1736 FX_DWORD dwFlags = pWidget->GetFlags(); | 1736 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 1737 | 1737 |
| 1738 if (ANNOTFLAG_INVISIBLE & dwFlags || ANNOTFLAG_HIDDEN & dwFlags) | 1738 if (ANNOTFLAG_INVISIBLE & dwFlags || ANNOTFLAG_HIDDEN & dwFlags) |
| 1739 { | 1739 { |
| 1740 vp << true; | 1740 vp << true; |
| 1741 } | 1741 } |
| 1742 else | 1742 else |
| 1743 vp << false; | 1743 vp << false; |
| 1744 } | 1744 } |
| 1745 | 1745 |
| 1746 return TRUE; | 1746 return true; |
| 1747 } | 1747 } |
| 1748 | 1748 |
| 1749 void Field::SetHidden(CPDFSDK_Document* pDocument, const CFX_WideString& swField
Name, int nControlIndex, bool b) | 1749 void Field::SetHidden(CPDFSDK_Document* pDocument, const CFX_WideString& swField
Name, int nControlIndex, bool b) |
| 1750 { | 1750 { |
| 1751 ASSERT(pDocument != NULL); | 1751 ASSERT(pDocument != NULL); |
| 1752 | 1752 |
| 1753 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); | 1753 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 1754 ASSERT(pInterForm != NULL); | 1754 ASSERT(pInterForm != NULL); |
| 1755 | 1755 |
| 1756 CFX_PtrArray FieldArray; | 1756 CFX_PtrArray FieldArray; |
| 1757 GetFormFields(pDocument, swFieldName, FieldArray); | 1757 GetFormFields(pDocument, swFieldName, FieldArray); |
| 1758 | 1758 |
| 1759 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 1759 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 1760 { | 1760 { |
| 1761 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); | 1761 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 1762 ASSERT(pFormField != NULL); | 1762 ASSERT(pFormField != NULL); |
| 1763 | 1763 |
| 1764 if (nControlIndex < 0) | 1764 if (nControlIndex < 0) |
| 1765 { | 1765 { |
| 1766 FX_BOOL bSet = FALSE; | 1766 bool bSet = false; |
| 1767 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) | 1767 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) |
| 1768 { | 1768 { |
| 1769 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormField->
GetControl(j))) | 1769 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormField->
GetControl(j))) |
| 1770 { | 1770 { |
| 1771 FX_DWORD dwFlags = pWidget->GetFlags(); | 1771 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 1772 | 1772 |
| 1773 if (b) | 1773 if (b) |
| 1774 { | 1774 { |
| 1775 dwFlags &= (~ANNOTFLAG_INVISIBLE); | 1775 dwFlags &= (~ANNOTFLAG_INVISIBLE); |
| 1776 dwFlags &= (~ANNOTFLAG_NOVIEW); | 1776 dwFlags &= (~ANNOTFLAG_NOVIEW); |
| 1777 dwFlags |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT); | 1777 dwFlags |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT); |
| 1778 } | 1778 } |
| 1779 else | 1779 else |
| 1780 { | 1780 { |
| 1781 dwFlags &= (~ANNOTFLAG_INVISIBLE); | 1781 dwFlags &= (~ANNOTFLAG_INVISIBLE); |
| 1782 dwFlags &= (~ANNOTFLAG_HIDDEN); | 1782 dwFlags &= (~ANNOTFLAG_HIDDEN); |
| 1783 dwFlags &= (~ANNOTFLAG_NOVIEW); | 1783 dwFlags &= (~ANNOTFLAG_NOVIEW); |
| 1784 dwFlags |= ANNOTFLAG_PRINT; | 1784 dwFlags |= ANNOTFLAG_PRINT; |
| 1785 } | 1785 } |
| 1786 | 1786 |
| 1787 if (dwFlags != pWidget->GetFlags()) | 1787 if (dwFlags != pWidget->GetFlags()) |
| 1788 { | 1788 { |
| 1789 pWidget->SetFlags(dwFlags); | 1789 pWidget->SetFlags(dwFlags); |
| 1790 bSet = TRUE; | 1790 bSet = true; |
| 1791 } | 1791 } |
| 1792 } | 1792 } |
| 1793 } | 1793 } |
| 1794 | 1794 |
| 1795 if (bSet) | 1795 if (bSet) |
| 1796 UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE); | 1796 UpdateFormField(pDocument, pFormField, true, false, true); |
| 1797 } | 1797 } |
| 1798 else | 1798 else |
| 1799 { | 1799 { |
| 1800 if(nControlIndex >= pFormField->CountControls()) return; | 1800 if(nControlIndex >= pFormField->CountControls()) return; |
| 1801 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) | 1801 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 1802 { | 1802 { |
| 1803 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) | 1803 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 1804 { | 1804 { |
| 1805 FX_DWORD dwFlags = pWidget->GetFlags(); | 1805 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 1806 | 1806 |
| 1807 if (b) | 1807 if (b) |
| 1808 { | 1808 { |
| 1809 dwFlags &= (~ANNOTFLAG_INVISIBLE); | 1809 dwFlags &= (~ANNOTFLAG_INVISIBLE); |
| 1810 dwFlags &= (~ANNOTFLAG_NOVIEW); | 1810 dwFlags &= (~ANNOTFLAG_NOVIEW); |
| 1811 dwFlags |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT); | 1811 dwFlags |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT); |
| 1812 } | 1812 } |
| 1813 else | 1813 else |
| 1814 { | 1814 { |
| 1815 dwFlags &= (~ANNOTFLAG_INVISIBLE); | 1815 dwFlags &= (~ANNOTFLAG_INVISIBLE); |
| 1816 dwFlags &= (~ANNOTFLAG_HIDDEN); | 1816 dwFlags &= (~ANNOTFLAG_HIDDEN); |
| 1817 dwFlags &= (~ANNOTFLAG_NOVIEW); | 1817 dwFlags &= (~ANNOTFLAG_NOVIEW); |
| 1818 dwFlags |= ANNOTFLAG_PRINT; | 1818 dwFlags |= ANNOTFLAG_PRINT; |
| 1819 } | 1819 } |
| 1820 | 1820 |
| 1821 if (dwFlags != pWidget->GetFlags()) | 1821 if (dwFlags != pWidget->GetFlags()) |
| 1822 { | 1822 { |
| 1823 pWidget->SetFlags(dwFlags); | 1823 pWidget->SetFlags(dwFlags); |
| 1824 UpdateFormControl(pDocument, pFormControl, TRUE, FALSE,
TRUE); | 1824 UpdateFormControl(pDocument, pFormControl, true, false,
true); |
| 1825 } | 1825 } |
| 1826 } | 1826 } |
| 1827 } | 1827 } |
| 1828 } | 1828 } |
| 1829 } | 1829 } |
| 1830 } | 1830 } |
| 1831 | 1831 |
| 1832 FX_BOOL Field::highlight(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 1832 bool Field::highlight(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 1833 { | 1833 { |
| 1834 ASSERT(m_pDocument != NULL); | 1834 ASSERT(m_pDocument != NULL); |
| 1835 | 1835 |
| 1836 if (vp.IsSetting()) | 1836 if (vp.IsSetting()) |
| 1837 { | 1837 { |
| 1838 if (!m_bCanSet) return FALSE; | 1838 if (!m_bCanSet) return false; |
| 1839 | 1839 |
| 1840 CFX_ByteString strMode; | 1840 CFX_ByteString strMode; |
| 1841 vp >> strMode; | 1841 vp >> strMode; |
| 1842 | 1842 |
| 1843 if (m_bDelay) | 1843 if (m_bDelay) |
| 1844 { | 1844 { |
| 1845 AddDelay_String(FP_HIGHLIGHT, strMode); | 1845 AddDelay_String(FP_HIGHLIGHT, strMode); |
| 1846 } | 1846 } |
| 1847 else | 1847 else |
| 1848 { | 1848 { |
| 1849 Field::SetHighlight(m_pDocument, m_FieldName, m_nFormControlIndex, s
trMode); | 1849 Field::SetHighlight(m_pDocument, m_FieldName, m_nFormControlIndex, s
trMode); |
| 1850 } | 1850 } |
| 1851 } | 1851 } |
| 1852 else | 1852 else |
| 1853 { | 1853 { |
| 1854 CFX_PtrArray FieldArray; | 1854 CFX_PtrArray FieldArray; |
| 1855 GetFormFields(m_FieldName,FieldArray); | 1855 GetFormFields(m_FieldName,FieldArray); |
| 1856 if (FieldArray.GetSize() <= 0) return FALSE; | 1856 if (FieldArray.GetSize() <= 0) return false; |
| 1857 | 1857 |
| 1858 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1858 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1859 ASSERT(pFormField != NULL); | 1859 ASSERT(pFormField != NULL); |
| 1860 | 1860 |
| 1861 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 1861 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 1862 return FALSE; | 1862 return false; |
| 1863 | 1863 |
| 1864 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 1864 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 1865 if (!pFormControl) return FALSE; | 1865 if (!pFormControl) return false; |
| 1866 | 1866 |
| 1867 int eHM = pFormControl->GetHighlightingMode(); | 1867 int eHM = pFormControl->GetHighlightingMode(); |
| 1868 switch (eHM) | 1868 switch (eHM) |
| 1869 { | 1869 { |
| 1870 case CPDF_FormControl::None: | 1870 case CPDF_FormControl::None: |
| 1871 vp << L"none"; | 1871 vp << L"none"; |
| 1872 break; | 1872 break; |
| 1873 case CPDF_FormControl::Push: | 1873 case CPDF_FormControl::Push: |
| 1874 vp << L"push"; | 1874 vp << L"push"; |
| 1875 break; | 1875 break; |
| 1876 case CPDF_FormControl::Invert: | 1876 case CPDF_FormControl::Invert: |
| 1877 vp << L"invert"; | 1877 vp << L"invert"; |
| 1878 break; | 1878 break; |
| 1879 case CPDF_FormControl::Outline: | 1879 case CPDF_FormControl::Outline: |
| 1880 vp << L"outline"; | 1880 vp << L"outline"; |
| 1881 break; | 1881 break; |
| 1882 case CPDF_FormControl::Toggle: | 1882 case CPDF_FormControl::Toggle: |
| 1883 vp << L"toggle"; | 1883 vp << L"toggle"; |
| 1884 break; | 1884 break; |
| 1885 } | 1885 } |
| 1886 } | 1886 } |
| 1887 | 1887 |
| 1888 return TRUE; | 1888 return true; |
| 1889 } | 1889 } |
| 1890 | 1890 |
| 1891 void Field::SetHighlight(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, const CFX_ByteString& string) | 1891 void Field::SetHighlight(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, const CFX_ByteString& string) |
| 1892 { | 1892 { |
| 1893 //Not supported. | 1893 //Not supported. |
| 1894 } | 1894 } |
| 1895 | 1895 |
| 1896 FX_BOOL Field::lineWidth(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 1896 bool Field::lineWidth(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 1897 { | 1897 { |
| 1898 ASSERT(m_pDocument != NULL); | 1898 ASSERT(m_pDocument != NULL); |
| 1899 | 1899 |
| 1900 if (vp.IsSetting()) | 1900 if (vp.IsSetting()) |
| 1901 { | 1901 { |
| 1902 if (!m_bCanSet) return FALSE; | 1902 if (!m_bCanSet) return false; |
| 1903 | 1903 |
| 1904 int iWidth; | 1904 int iWidth; |
| 1905 vp >> iWidth; | 1905 vp >> iWidth; |
| 1906 | 1906 |
| 1907 if (m_bDelay) | 1907 if (m_bDelay) |
| 1908 { | 1908 { |
| 1909 AddDelay_Int(FP_LINEWIDTH, iWidth); | 1909 AddDelay_Int(FP_LINEWIDTH, iWidth); |
| 1910 } | 1910 } |
| 1911 else | 1911 else |
| 1912 { | 1912 { |
| 1913 Field::SetLineWidth(m_pDocument, m_FieldName, m_nFormControlIndex, i
Width); | 1913 Field::SetLineWidth(m_pDocument, m_FieldName, m_nFormControlIndex, i
Width); |
| 1914 } | 1914 } |
| 1915 } | 1915 } |
| 1916 else | 1916 else |
| 1917 { | 1917 { |
| 1918 CFX_PtrArray FieldArray; | 1918 CFX_PtrArray FieldArray; |
| 1919 GetFormFields(m_FieldName,FieldArray); | 1919 GetFormFields(m_FieldName,FieldArray); |
| 1920 if (FieldArray.GetSize() <= 0) return FALSE; | 1920 if (FieldArray.GetSize() <= 0) return false; |
| 1921 | 1921 |
| 1922 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1922 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1923 ASSERT(pFormField != NULL); | 1923 ASSERT(pFormField != NULL); |
| 1924 | 1924 |
| 1925 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 1925 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 1926 if (!pFormControl) return FALSE; | 1926 if (!pFormControl) return false; |
| 1927 | 1927 |
| 1928 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); | 1928 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); |
| 1929 ASSERT(pInterForm != NULL); | 1929 ASSERT(pInterForm != NULL); |
| 1930 | 1930 |
| 1931 if(!pFormField->CountControls()) return FALSE; | 1931 if(!pFormField->CountControls()) return false; |
| 1932 | 1932 |
| 1933 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormField->GetControl(0
)); | 1933 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormField->GetControl(0
)); |
| 1934 if (!pWidget) return FALSE; | 1934 if (!pWidget) return false; |
| 1935 | 1935 |
| 1936 vp << (int32_t)pWidget->GetBorderWidth(); | 1936 vp << (int32_t)pWidget->GetBorderWidth(); |
| 1937 } | 1937 } |
| 1938 | 1938 |
| 1939 return TRUE; | 1939 return true; |
| 1940 } | 1940 } |
| 1941 | 1941 |
| 1942 void Field::SetLineWidth(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, int number) | 1942 void Field::SetLineWidth(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, int number) |
| 1943 { | 1943 { |
| 1944 ASSERT(pDocument != NULL); | 1944 ASSERT(pDocument != NULL); |
| 1945 | 1945 |
| 1946 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); | 1946 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 1947 ASSERT(pInterForm != NULL); | 1947 ASSERT(pInterForm != NULL); |
| 1948 | 1948 |
| 1949 CFX_PtrArray FieldArray; | 1949 CFX_PtrArray FieldArray; |
| 1950 GetFormFields(pDocument, swFieldName, FieldArray); | 1950 GetFormFields(pDocument, swFieldName, FieldArray); |
| 1951 | 1951 |
| 1952 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 1952 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 1953 { | 1953 { |
| 1954 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); | 1954 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 1955 ASSERT(pFormField != NULL); | 1955 ASSERT(pFormField != NULL); |
| 1956 | 1956 |
| 1957 if (nControlIndex < 0) | 1957 if (nControlIndex < 0) |
| 1958 { | 1958 { |
| 1959 FX_BOOL bSet = FALSE; | 1959 bool bSet = false; |
| 1960 for (int j=0,jsz=pFormField->CountControls(); j<jsz; j++) | 1960 for (int j=0,jsz=pFormField->CountControls(); j<jsz; j++) |
| 1961 { | 1961 { |
| 1962 CPDF_FormControl* pFormControl = pFormField->GetControl(j); | 1962 CPDF_FormControl* pFormControl = pFormField->GetControl(j); |
| 1963 ASSERT(pFormControl != NULL); | 1963 ASSERT(pFormControl != NULL); |
| 1964 | 1964 |
| 1965 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) | 1965 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 1966 { | 1966 { |
| 1967 if (number != pWidget->GetBorderWidth()) | 1967 if (number != pWidget->GetBorderWidth()) |
| 1968 { | 1968 { |
| 1969 pWidget->SetBorderWidth(number); | 1969 pWidget->SetBorderWidth(number); |
| 1970 bSet = TRUE; | 1970 bSet = true; |
| 1971 } | 1971 } |
| 1972 } | 1972 } |
| 1973 } | 1973 } |
| 1974 if (bSet) UpdateFormField(pDocument, pFormField, TRUE, TRUE, TRUE); | 1974 if (bSet) UpdateFormField(pDocument, pFormField, true, true, true); |
| 1975 } | 1975 } |
| 1976 else | 1976 else |
| 1977 { | 1977 { |
| 1978 if(nControlIndex >= pFormField->CountControls()) return; | 1978 if(nControlIndex >= pFormField->CountControls()) return; |
| 1979 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) | 1979 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 1980 { | 1980 { |
| 1981 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) | 1981 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 1982 { | 1982 { |
| 1983 if (number != pWidget->GetBorderWidth()) | 1983 if (number != pWidget->GetBorderWidth()) |
| 1984 { | 1984 { |
| 1985 pWidget->SetBorderWidth(number); | 1985 pWidget->SetBorderWidth(number); |
| 1986 UpdateFormControl(pDocument, pFormControl, TRUE, TRUE, T
RUE); | 1986 UpdateFormControl(pDocument, pFormControl, true, true, t
rue); |
| 1987 } | 1987 } |
| 1988 } | 1988 } |
| 1989 } | 1989 } |
| 1990 } | 1990 } |
| 1991 } | 1991 } |
| 1992 } | 1992 } |
| 1993 | 1993 |
| 1994 FX_BOOL Field::multiline(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 1994 bool Field::multiline(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 1995 { | 1995 { |
| 1996 ASSERT(m_pDocument != NULL); | 1996 ASSERT(m_pDocument != NULL); |
| 1997 | 1997 |
| 1998 if (vp.IsSetting()) | 1998 if (vp.IsSetting()) |
| 1999 { | 1999 { |
| 2000 if (!m_bCanSet) return FALSE; | 2000 if (!m_bCanSet) return false; |
| 2001 | 2001 |
| 2002 bool bVP; | 2002 bool bVP; |
| 2003 vp >> bVP; | 2003 vp >> bVP; |
| 2004 | 2004 |
| 2005 if (m_bDelay) | 2005 if (m_bDelay) |
| 2006 { | 2006 { |
| 2007 AddDelay_Bool(FP_MULTILINE, bVP); | 2007 AddDelay_Bool(FP_MULTILINE, bVP); |
| 2008 } | 2008 } |
| 2009 else | 2009 else |
| 2010 { | 2010 { |
| 2011 Field::SetMultiline(m_pDocument, m_FieldName, m_nFormControlIndex, b
VP); | 2011 Field::SetMultiline(m_pDocument, m_FieldName, m_nFormControlIndex, b
VP); |
| 2012 } | 2012 } |
| 2013 } | 2013 } |
| 2014 else | 2014 else |
| 2015 { | 2015 { |
| 2016 CFX_PtrArray FieldArray; | 2016 CFX_PtrArray FieldArray; |
| 2017 GetFormFields(m_FieldName, FieldArray); | 2017 GetFormFields(m_FieldName, FieldArray); |
| 2018 if (FieldArray.GetSize() <= 0) return FALSE; | 2018 if (FieldArray.GetSize() <= 0) return false; |
| 2019 | 2019 |
| 2020 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2020 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2021 ASSERT(pFormField != NULL); | 2021 ASSERT(pFormField != NULL); |
| 2022 | 2022 |
| 2023 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 2023 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 2024 return FALSE; | 2024 return false; |
| 2025 | 2025 |
| 2026 if (pFormField->GetFieldFlags() & FIELDFLAG_MULTILINE) | 2026 if (pFormField->GetFieldFlags() & FIELDFLAG_MULTILINE) |
| 2027 vp << true; | 2027 vp << true; |
| 2028 else | 2028 else |
| 2029 vp << false; | 2029 vp << false; |
| 2030 } | 2030 } |
| 2031 | 2031 |
| 2032 return TRUE; | 2032 return true; |
| 2033 } | 2033 } |
| 2034 | 2034 |
| 2035 void Field::SetMultiline(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, bool b) | 2035 void Field::SetMultiline(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, bool b) |
| 2036 { | 2036 { |
| 2037 //Not supported. | 2037 //Not supported. |
| 2038 } | 2038 } |
| 2039 | 2039 |
| 2040 FX_BOOL Field::multipleSelection(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideS
tring& sError) | 2040 bool Field::multipleSelection(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& sError) |
| 2041 { | 2041 { |
| 2042 ASSERT(m_pDocument != NULL); | 2042 ASSERT(m_pDocument != NULL); |
| 2043 | 2043 |
| 2044 if (vp.IsSetting()) | 2044 if (vp.IsSetting()) |
| 2045 { | 2045 { |
| 2046 if (!m_bCanSet) return FALSE; | 2046 if (!m_bCanSet) return false; |
| 2047 | 2047 |
| 2048 bool bVP; | 2048 bool bVP; |
| 2049 vp >> bVP; | 2049 vp >> bVP; |
| 2050 | 2050 |
| 2051 if (m_bDelay) | 2051 if (m_bDelay) |
| 2052 { | 2052 { |
| 2053 AddDelay_Bool(FP_MULTIPLESELECTION, bVP); | 2053 AddDelay_Bool(FP_MULTIPLESELECTION, bVP); |
| 2054 } | 2054 } |
| 2055 else | 2055 else |
| 2056 { | 2056 { |
| 2057 Field::SetMultipleSelection(m_pDocument, m_FieldName, m_nFormControl
Index, bVP); | 2057 Field::SetMultipleSelection(m_pDocument, m_FieldName, m_nFormControl
Index, bVP); |
| 2058 } | 2058 } |
| 2059 } | 2059 } |
| 2060 else | 2060 else |
| 2061 { | 2061 { |
| 2062 CFX_PtrArray FieldArray; | 2062 CFX_PtrArray FieldArray; |
| 2063 GetFormFields(m_FieldName,FieldArray); | 2063 GetFormFields(m_FieldName,FieldArray); |
| 2064 if (FieldArray.GetSize() <= 0) return FALSE; | 2064 if (FieldArray.GetSize() <= 0) return false; |
| 2065 | 2065 |
| 2066 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2066 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2067 ASSERT(pFormField != NULL); | 2067 ASSERT(pFormField != NULL); |
| 2068 | 2068 |
| 2069 if (pFormField->GetFieldType() != FIELDTYPE_LISTBOX) | 2069 if (pFormField->GetFieldType() != FIELDTYPE_LISTBOX) |
| 2070 return FALSE; | 2070 return false; |
| 2071 | 2071 |
| 2072 if (pFormField->GetFieldFlags() & FIELDFLAG_MULTISELECT) | 2072 if (pFormField->GetFieldFlags() & FIELDFLAG_MULTISELECT) |
| 2073 vp << true; | 2073 vp << true; |
| 2074 else | 2074 else |
| 2075 vp << false; | 2075 vp << false; |
| 2076 } | 2076 } |
| 2077 | 2077 |
| 2078 return TRUE; | 2078 return true; |
| 2079 } | 2079 } |
| 2080 | 2080 |
| 2081 void Field::SetMultipleSelection(CPDFSDK_Document* pDocument, const CFX_WideStri
ng& swFieldName, int nControlIndex, bool b) | 2081 void Field::SetMultipleSelection(CPDFSDK_Document* pDocument, const CFX_WideStri
ng& swFieldName, int nControlIndex, bool b) |
| 2082 { | 2082 { |
| 2083 //Not supported. | 2083 //Not supported. |
| 2084 } | 2084 } |
| 2085 | 2085 |
| 2086 FX_BOOL Field::name(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) | 2086 bool Field::name(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 2087 { | 2087 { |
| 2088 if (!vp.IsGetting()) return FALSE; | 2088 if (!vp.IsGetting()) return false; |
| 2089 | 2089 |
| 2090 CFX_PtrArray FieldArray; | 2090 CFX_PtrArray FieldArray; |
| 2091 GetFormFields(m_FieldName, FieldArray); | 2091 GetFormFields(m_FieldName, FieldArray); |
| 2092 if (FieldArray.GetSize() <= 0) return FALSE; | 2092 if (FieldArray.GetSize() <= 0) return false; |
| 2093 | 2093 |
| 2094 vp << m_FieldName; | 2094 vp << m_FieldName; |
| 2095 | 2095 |
| 2096 return TRUE; | 2096 return true; |
| 2097 } | 2097 } |
| 2098 | 2098 |
| 2099 FX_BOOL Field::numItems(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2099 bool Field::numItems(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2100 { | 2100 { |
| 2101 CFX_PtrArray FieldArray; | 2101 CFX_PtrArray FieldArray; |
| 2102 GetFormFields(m_FieldName, FieldArray); | 2102 GetFormFields(m_FieldName, FieldArray); |
| 2103 if (FieldArray.GetSize() <= 0) return FALSE; | 2103 if (FieldArray.GetSize() <= 0) return false; |
| 2104 | 2104 |
| 2105 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2105 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2106 ASSERT(pFormField != NULL); | 2106 ASSERT(pFormField != NULL); |
| 2107 | 2107 |
| 2108 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && | 2108 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && |
| 2109 pFormField->GetFieldType() != FIELDTYPE_LISTBOX) | 2109 pFormField->GetFieldType() != FIELDTYPE_LISTBOX) |
| 2110 return FALSE; | 2110 return false; |
| 2111 | 2111 |
| 2112 if (!vp.IsGetting()) return FALSE; | 2112 if (!vp.IsGetting()) return false; |
| 2113 | 2113 |
| 2114 vp << (int32_t)pFormField->CountOptions(); | 2114 vp << (int32_t)pFormField->CountOptions(); |
| 2115 | 2115 |
| 2116 return TRUE; | 2116 return true; |
| 2117 } | 2117 } |
| 2118 | 2118 |
| 2119 FX_BOOL Field::page(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) | 2119 bool Field::page(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 2120 { | 2120 { |
| 2121 if (!vp.IsGetting()) return FALSE; | 2121 if (!vp.IsGetting()) return false; |
| 2122 | 2122 |
| 2123 CFX_PtrArray FieldArray; | 2123 CFX_PtrArray FieldArray; |
| 2124 GetFormFields(m_FieldName, FieldArray); | 2124 GetFormFields(m_FieldName, FieldArray); |
| 2125 if (FieldArray.GetSize() <= 0) return FALSE; | 2125 if (FieldArray.GetSize() <= 0) return false; |
| 2126 | 2126 |
| 2127 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2127 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2128 if (!pFormField) return FALSE; | 2128 if (!pFormField) return false; |
| 2129 | 2129 |
| 2130 ASSERT(m_pDocument != NULL); | 2130 ASSERT(m_pDocument != NULL); |
| 2131 | 2131 |
| 2132 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); | 2132 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); |
| 2133 ASSERT(pInterForm != NULL); | 2133 ASSERT(pInterForm != NULL); |
| 2134 | 2134 |
| 2135 CFX_PtrArray widgetArray; | 2135 CFX_PtrArray widgetArray; |
| 2136 pInterForm->GetWidgets(pFormField, widgetArray); | 2136 pInterForm->GetWidgets(pFormField, widgetArray); |
| 2137 | 2137 |
| 2138 if (widgetArray.GetSize() > 0) | 2138 if (widgetArray.GetSize() > 0) |
| 2139 { | 2139 { |
| 2140 CJS_Array PageArray(m_isolate); | 2140 CJS_Array PageArray(m_isolate); |
| 2141 | 2141 |
| 2142 for (int i=0,sz=widgetArray.GetSize(); i<sz; i++) | 2142 for (int i=0,sz=widgetArray.GetSize(); i<sz; i++) |
| 2143 { | 2143 { |
| 2144 CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgetArray.GetAt(i); | 2144 CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgetArray.GetAt(i); |
| 2145 ASSERT(pWidget != NULL); | 2145 ASSERT(pWidget != NULL); |
| 2146 | 2146 |
| 2147 CPDFSDK_PageView* pPageView = pWidget->GetPageView(); | 2147 CPDFSDK_PageView* pPageView = pWidget->GetPageView(); |
| 2148 if(!pPageView) | 2148 if(!pPageView) |
| 2149 return FALSE; | 2149 return false; |
| 2150 | 2150 |
| 2151 PageArray.SetElement(i, CJS_Value(m_isolate,(int32_t)pPageView->GetP
ageIndex())); | 2151 PageArray.SetElement(i, CJS_Value(m_isolate,(int32_t)pPageView->GetP
ageIndex())); |
| 2152 } | 2152 } |
| 2153 | 2153 |
| 2154 vp << PageArray; | 2154 vp << PageArray; |
| 2155 } | 2155 } |
| 2156 else | 2156 else |
| 2157 { | 2157 { |
| 2158 vp << (int32_t) -1; | 2158 vp << (int32_t) -1; |
| 2159 } | 2159 } |
| 2160 | 2160 |
| 2161 return TRUE; | 2161 return true; |
| 2162 } | 2162 } |
| 2163 | 2163 |
| 2164 FX_BOOL Field::password(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2164 bool Field::password(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2165 { | 2165 { |
| 2166 ASSERT(m_pDocument != NULL); | 2166 ASSERT(m_pDocument != NULL); |
| 2167 | 2167 |
| 2168 if (vp.IsSetting()) | 2168 if (vp.IsSetting()) |
| 2169 { | 2169 { |
| 2170 if (!m_bCanSet) return FALSE; | 2170 if (!m_bCanSet) return false; |
| 2171 | 2171 |
| 2172 bool bVP; | 2172 bool bVP; |
| 2173 vp >> bVP; | 2173 vp >> bVP; |
| 2174 | 2174 |
| 2175 if (m_bDelay) | 2175 if (m_bDelay) |
| 2176 { | 2176 { |
| 2177 AddDelay_Bool(FP_PASSWORD, bVP); | 2177 AddDelay_Bool(FP_PASSWORD, bVP); |
| 2178 } | 2178 } |
| 2179 else | 2179 else |
| 2180 { | 2180 { |
| 2181 Field::SetPassword(m_pDocument, m_FieldName, m_nFormControlIndex, bV
P); | 2181 Field::SetPassword(m_pDocument, m_FieldName, m_nFormControlIndex, bV
P); |
| 2182 } | 2182 } |
| 2183 } | 2183 } |
| 2184 else | 2184 else |
| 2185 { | 2185 { |
| 2186 CFX_PtrArray FieldArray; | 2186 CFX_PtrArray FieldArray; |
| 2187 GetFormFields(m_FieldName,FieldArray); | 2187 GetFormFields(m_FieldName,FieldArray); |
| 2188 if (FieldArray.GetSize() <= 0) return FALSE; | 2188 if (FieldArray.GetSize() <= 0) return false; |
| 2189 | 2189 |
| 2190 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2190 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2191 ASSERT(pFormField != NULL); | 2191 ASSERT(pFormField != NULL); |
| 2192 | 2192 |
| 2193 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 2193 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 2194 return FALSE; | 2194 return false; |
| 2195 | 2195 |
| 2196 if (pFormField->GetFieldFlags() & FIELDFLAG_PASSWORD) | 2196 if (pFormField->GetFieldFlags() & FIELDFLAG_PASSWORD) |
| 2197 vp << true; | 2197 vp << true; |
| 2198 else | 2198 else |
| 2199 vp << false; | 2199 vp << false; |
| 2200 } | 2200 } |
| 2201 | 2201 |
| 2202 return TRUE; | 2202 return true; |
| 2203 } | 2203 } |
| 2204 | 2204 |
| 2205 void Field::SetPassword(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, bool b) | 2205 void Field::SetPassword(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, bool b) |
| 2206 { | 2206 { |
| 2207 //Not supported. | 2207 //Not supported. |
| 2208 } | 2208 } |
| 2209 | 2209 |
| 2210 FX_BOOL Field::print(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) | 2210 bool Field::print(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 2211 { | 2211 { |
| 2212 ASSERT(m_pDocument != NULL); | 2212 ASSERT(m_pDocument != NULL); |
| 2213 | 2213 |
| 2214 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); | 2214 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); |
| 2215 ASSERT(pInterForm != NULL); | 2215 ASSERT(pInterForm != NULL); |
| 2216 | 2216 |
| 2217 CFX_PtrArray FieldArray; | 2217 CFX_PtrArray FieldArray; |
| 2218 GetFormFields(m_FieldName, FieldArray); | 2218 GetFormFields(m_FieldName, FieldArray); |
| 2219 if (FieldArray.GetSize() <= 0) return FALSE; | 2219 if (FieldArray.GetSize() <= 0) return false; |
| 2220 | 2220 |
| 2221 if (vp.IsSetting()) | 2221 if (vp.IsSetting()) |
| 2222 { | 2222 { |
| 2223 if (!m_bCanSet) return FALSE; | 2223 if (!m_bCanSet) return false; |
| 2224 | 2224 |
| 2225 bool bVP; | 2225 bool bVP; |
| 2226 vp >> bVP; | 2226 vp >> bVP; |
| 2227 | 2227 |
| 2228 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 2228 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 2229 { | 2229 { |
| 2230 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i
); | 2230 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i
); |
| 2231 ASSERT(pFormField != NULL); | 2231 ASSERT(pFormField != NULL); |
| 2232 | 2232 |
| 2233 if (m_nFormControlIndex < 0) | 2233 if (m_nFormControlIndex < 0) |
| 2234 { | 2234 { |
| 2235 FX_BOOL bSet = FALSE; | 2235 bool bSet = false; |
| 2236 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) | 2236 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) |
| 2237 { | 2237 { |
| 2238 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormFie
ld->GetControl(j))) | 2238 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormFie
ld->GetControl(j))) |
| 2239 { | 2239 { |
| 2240 FX_DWORD dwFlags = pWidget->GetFlags(); | 2240 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 2241 if (bVP) | 2241 if (bVP) |
| 2242 dwFlags |= ANNOTFLAG_PRINT; | 2242 dwFlags |= ANNOTFLAG_PRINT; |
| 2243 else | 2243 else |
| 2244 dwFlags &= ~ANNOTFLAG_PRINT; | 2244 dwFlags &= ~ANNOTFLAG_PRINT; |
| 2245 | 2245 |
| 2246 if (dwFlags != pWidget->GetFlags()) | 2246 if (dwFlags != pWidget->GetFlags()) |
| 2247 { | 2247 { |
| 2248 pWidget->SetFlags(dwFlags); | 2248 pWidget->SetFlags(dwFlags); |
| 2249 bSet = TRUE; | 2249 bSet = true; |
| 2250 } | 2250 } |
| 2251 } | 2251 } |
| 2252 } | 2252 } |
| 2253 | 2253 |
| 2254 if (bSet) | 2254 if (bSet) |
| 2255 UpdateFormField(m_pDocument, pFormField, TRUE, FALSE, TRUE); | 2255 UpdateFormField(m_pDocument, pFormField, true, false, true); |
| 2256 } | 2256 } |
| 2257 else | 2257 else |
| 2258 { | 2258 { |
| 2259 if(m_nFormControlIndex >= pFormField->CountControls()) return FA
LSE; | 2259 if(m_nFormControlIndex >= pFormField->CountControls()) return fa
lse; |
| 2260 if (CPDF_FormControl* pFormControl = pFormField->GetControl(m_nF
ormControlIndex)) | 2260 if (CPDF_FormControl* pFormControl = pFormField->GetControl(m_nF
ormControlIndex)) |
| 2261 { | 2261 { |
| 2262 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormCon
trol)) | 2262 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormCon
trol)) |
| 2263 { | 2263 { |
| 2264 FX_DWORD dwFlags = pWidget->GetFlags(); | 2264 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 2265 if (bVP) | 2265 if (bVP) |
| 2266 dwFlags |= ANNOTFLAG_PRINT; | 2266 dwFlags |= ANNOTFLAG_PRINT; |
| 2267 else | 2267 else |
| 2268 dwFlags &= ~ANNOTFLAG_PRINT; | 2268 dwFlags &= ~ANNOTFLAG_PRINT; |
| 2269 | 2269 |
| 2270 if (dwFlags != pWidget->GetFlags()) | 2270 if (dwFlags != pWidget->GetFlags()) |
| 2271 { | 2271 { |
| 2272 pWidget->SetFlags(dwFlags); | 2272 pWidget->SetFlags(dwFlags); |
| 2273 UpdateFormControl(m_pDocument, pFormField->GetContro
l(m_nFormControlIndex), TRUE, FALSE, TRUE); | 2273 UpdateFormControl(m_pDocument, pFormField->GetContro
l(m_nFormControlIndex), true, false, true); |
| 2274 } | 2274 } |
| 2275 } | 2275 } |
| 2276 } | 2276 } |
| 2277 } | 2277 } |
| 2278 } | 2278 } |
| 2279 } | 2279 } |
| 2280 else | 2280 else |
| 2281 { | 2281 { |
| 2282 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2282 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2283 ASSERT(pFormField != NULL); | 2283 ASSERT(pFormField != NULL); |
| 2284 | 2284 |
| 2285 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); | 2285 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); |
| 2286 if (!pWidget) return FALSE; | 2286 if (!pWidget) return false; |
| 2287 | 2287 |
| 2288 if (pWidget->GetFlags() & ANNOTFLAG_PRINT) | 2288 if (pWidget->GetFlags() & ANNOTFLAG_PRINT) |
| 2289 vp << true; | 2289 vp << true; |
| 2290 else | 2290 else |
| 2291 vp << false; | 2291 vp << false; |
| 2292 } | 2292 } |
| 2293 | 2293 |
| 2294 return TRUE; | 2294 return true; |
| 2295 } | 2295 } |
| 2296 | 2296 |
| 2297 FX_BOOL Field::radiosInUnison(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& sError) | 2297 bool Field::radiosInUnison(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 2298 { | 2298 { |
| 2299 ASSERT(m_pDocument != NULL); | 2299 ASSERT(m_pDocument != NULL); |
| 2300 | 2300 |
| 2301 CFX_PtrArray FieldArray; | 2301 CFX_PtrArray FieldArray; |
| 2302 GetFormFields(m_FieldName,FieldArray); | 2302 GetFormFields(m_FieldName,FieldArray); |
| 2303 if (FieldArray.GetSize() <= 0) return FALSE; | 2303 if (FieldArray.GetSize() <= 0) return false; |
| 2304 | 2304 |
| 2305 if (vp.IsSetting()) | 2305 if (vp.IsSetting()) |
| 2306 { | 2306 { |
| 2307 if (!m_bCanSet) return FALSE; | 2307 if (!m_bCanSet) return false; |
| 2308 | 2308 |
| 2309 bool bVP; | 2309 bool bVP; |
| 2310 vp >> bVP; | 2310 vp >> bVP; |
| 2311 | 2311 |
| 2312 } | 2312 } |
| 2313 else | 2313 else |
| 2314 { | 2314 { |
| 2315 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2315 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2316 ASSERT(pFormField != NULL); | 2316 ASSERT(pFormField != NULL); |
| 2317 | 2317 |
| 2318 if (pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON) | 2318 if (pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON) |
| 2319 return FALSE; | 2319 return false; |
| 2320 | 2320 |
| 2321 if (pFormField->GetFieldFlags() & FIELDFLAG_RADIOSINUNISON) | 2321 if (pFormField->GetFieldFlags() & FIELDFLAG_RADIOSINUNISON) |
| 2322 vp << true; | 2322 vp << true; |
| 2323 else | 2323 else |
| 2324 vp << false; | 2324 vp << false; |
| 2325 } | 2325 } |
| 2326 | 2326 |
| 2327 return TRUE; | 2327 return true; |
| 2328 } | 2328 } |
| 2329 | 2329 |
| 2330 FX_BOOL Field::readonly(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2330 bool Field::readonly(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2331 { | 2331 { |
| 2332 ASSERT(m_pDocument != NULL); | 2332 ASSERT(m_pDocument != NULL); |
| 2333 | 2333 |
| 2334 CFX_PtrArray FieldArray; | 2334 CFX_PtrArray FieldArray; |
| 2335 GetFormFields(m_FieldName,FieldArray); | 2335 GetFormFields(m_FieldName,FieldArray); |
| 2336 if (FieldArray.GetSize() <= 0) return FALSE; | 2336 if (FieldArray.GetSize() <= 0) return false; |
| 2337 | 2337 |
| 2338 if (vp.IsSetting()) | 2338 if (vp.IsSetting()) |
| 2339 { | 2339 { |
| 2340 if (!m_bCanSet) return FALSE; | 2340 if (!m_bCanSet) return false; |
| 2341 | 2341 |
| 2342 bool bVP; | 2342 bool bVP; |
| 2343 vp >> bVP; | 2343 vp >> bVP; |
| 2344 | 2344 |
| 2345 } | 2345 } |
| 2346 else | 2346 else |
| 2347 { | 2347 { |
| 2348 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2348 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2349 ASSERT(pFormField != NULL); | 2349 ASSERT(pFormField != NULL); |
| 2350 | 2350 |
| 2351 if (pFormField->GetFieldFlags() & FIELDFLAG_READONLY) | 2351 if (pFormField->GetFieldFlags() & FIELDFLAG_READONLY) |
| 2352 vp << true; | 2352 vp << true; |
| 2353 else | 2353 else |
| 2354 vp << false; | 2354 vp << false; |
| 2355 } | 2355 } |
| 2356 | 2356 |
| 2357 return TRUE; | 2357 return true; |
| 2358 } | 2358 } |
| 2359 | 2359 |
| 2360 FX_BOOL Field::rect(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) | 2360 bool Field::rect(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 2361 { | 2361 { |
| 2362 ASSERT(m_pDocument != NULL); | 2362 ASSERT(m_pDocument != NULL); |
| 2363 | 2363 |
| 2364 if (vp.IsSetting()) | 2364 if (vp.IsSetting()) |
| 2365 { | 2365 { |
| 2366 if (!m_bCanSet) return FALSE; | 2366 if (!m_bCanSet) return false; |
| 2367 if (!vp.IsArrayObject())return FALSE; | 2367 if (!vp.IsArrayObject())return false; |
| 2368 | 2368 |
| 2369 CJS_Array rcArray(m_isolate); | 2369 CJS_Array rcArray(m_isolate); |
| 2370 vp >> rcArray; | 2370 vp >> rcArray; |
| 2371 CJS_Value Upper_Leftx(m_isolate), Upper_Lefty(m_isolate), Lower_Rightx(m
_isolate), Lower_Righty(m_isolate); | 2371 CJS_Value Upper_Leftx(m_isolate), Upper_Lefty(m_isolate), Lower_Rightx(m
_isolate), Lower_Righty(m_isolate); |
| 2372 rcArray.GetElement(0, Upper_Leftx); | 2372 rcArray.GetElement(0, Upper_Leftx); |
| 2373 rcArray.GetElement(1, Upper_Lefty); | 2373 rcArray.GetElement(1, Upper_Lefty); |
| 2374 rcArray.GetElement(2, Lower_Rightx); | 2374 rcArray.GetElement(2, Lower_Rightx); |
| 2375 rcArray.GetElement(3, Lower_Righty); | 2375 rcArray.GetElement(3, Lower_Righty); |
| 2376 | 2376 |
| 2377 FX_FLOAT pArray[4] = {0.0f,0.0f,0.0f,0.0f}; | 2377 FX_FLOAT pArray[4] = {0.0f,0.0f,0.0f,0.0f}; |
| (...skipping 10 matching lines...) Expand all Loading... |
| 2388 } | 2388 } |
| 2389 else | 2389 else |
| 2390 { | 2390 { |
| 2391 Field::SetRect(m_pDocument, m_FieldName, m_nFormControlIndex, crRect
); | 2391 Field::SetRect(m_pDocument, m_FieldName, m_nFormControlIndex, crRect
); |
| 2392 } | 2392 } |
| 2393 } | 2393 } |
| 2394 else | 2394 else |
| 2395 { | 2395 { |
| 2396 CFX_PtrArray FieldArray; | 2396 CFX_PtrArray FieldArray; |
| 2397 GetFormFields(m_FieldName,FieldArray); | 2397 GetFormFields(m_FieldName,FieldArray); |
| 2398 if (FieldArray.GetSize() <= 0) return FALSE; | 2398 if (FieldArray.GetSize() <= 0) return false; |
| 2399 | 2399 |
| 2400 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2400 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2401 ASSERT(pFormField != NULL); | 2401 ASSERT(pFormField != NULL); |
| 2402 | 2402 |
| 2403 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); | 2403 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); |
| 2404 ASSERT(pInterForm != NULL); | 2404 ASSERT(pInterForm != NULL); |
| 2405 | 2405 |
| 2406 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); | 2406 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); |
| 2407 if (!pWidget) return FALSE; | 2407 if (!pWidget) return false; |
| 2408 | 2408 |
| 2409 CFX_FloatRect crRect = pWidget->GetRect(); | 2409 CFX_FloatRect crRect = pWidget->GetRect(); |
| 2410 CJS_Value Upper_Leftx(m_isolate),Upper_Lefty(m_isolate),Lower_Rightx(m_i
solate),Lower_Righty(m_isolate); | 2410 CJS_Value Upper_Leftx(m_isolate),Upper_Lefty(m_isolate),Lower_Rightx(m_i
solate),Lower_Righty(m_isolate); |
| 2411 Upper_Leftx = (int32_t)crRect.left; | 2411 Upper_Leftx = (int32_t)crRect.left; |
| 2412 Upper_Lefty = (int32_t)crRect.top; | 2412 Upper_Lefty = (int32_t)crRect.top; |
| 2413 Lower_Rightx = (int32_t)crRect.right; | 2413 Lower_Rightx = (int32_t)crRect.right; |
| 2414 Lower_Righty = (int32_t)crRect.bottom; | 2414 Lower_Righty = (int32_t)crRect.bottom; |
| 2415 | 2415 |
| 2416 CJS_Array rcArray(m_isolate); | 2416 CJS_Array rcArray(m_isolate); |
| 2417 rcArray.SetElement(0,Upper_Leftx); | 2417 rcArray.SetElement(0,Upper_Leftx); |
| 2418 rcArray.SetElement(1,Upper_Lefty); | 2418 rcArray.SetElement(1,Upper_Lefty); |
| 2419 rcArray.SetElement(2,Lower_Rightx); | 2419 rcArray.SetElement(2,Lower_Rightx); |
| 2420 rcArray.SetElement(3,Lower_Righty); | 2420 rcArray.SetElement(3,Lower_Righty); |
| 2421 | 2421 |
| 2422 vp << rcArray; | 2422 vp << rcArray; |
| 2423 } | 2423 } |
| 2424 | 2424 |
| 2425 return TRUE; | 2425 return true; |
| 2426 } | 2426 } |
| 2427 | 2427 |
| 2428 void Field::SetRect(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldNa
me, int nControlIndex, const CPDF_Rect& rect) | 2428 void Field::SetRect(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldNa
me, int nControlIndex, const CPDF_Rect& rect) |
| 2429 { | 2429 { |
| 2430 ASSERT(pDocument != NULL); | 2430 ASSERT(pDocument != NULL); |
| 2431 | 2431 |
| 2432 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); | 2432 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 2433 ASSERT(pInterForm != NULL); | 2433 ASSERT(pInterForm != NULL); |
| 2434 | 2434 |
| 2435 CFX_PtrArray FieldArray; | 2435 CFX_PtrArray FieldArray; |
| 2436 GetFormFields(pDocument, swFieldName, FieldArray); | 2436 GetFormFields(pDocument, swFieldName, FieldArray); |
| 2437 | 2437 |
| 2438 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 2438 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 2439 { | 2439 { |
| 2440 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); | 2440 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 2441 ASSERT(pFormField != NULL); | 2441 ASSERT(pFormField != NULL); |
| 2442 | 2442 |
| 2443 if (nControlIndex < 0) | 2443 if (nControlIndex < 0) |
| 2444 { | 2444 { |
| 2445 FX_BOOL bSet = FALSE; | 2445 bool bSet = false; |
| 2446 for (int i=0, sz=pFormField->CountControls(); i<sz; i++) | 2446 for (int i=0, sz=pFormField->CountControls(); i<sz; i++) |
| 2447 { | 2447 { |
| 2448 CPDF_FormControl* pFormControl = pFormField->GetControl(i); | 2448 CPDF_FormControl* pFormControl = pFormField->GetControl(i); |
| 2449 ASSERT(pFormControl != NULL); | 2449 ASSERT(pFormControl != NULL); |
| 2450 | 2450 |
| 2451 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) | 2451 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 2452 { | 2452 { |
| 2453 CPDF_Rect crRect = rect; | 2453 CPDF_Rect crRect = rect; |
| 2454 | 2454 |
| 2455 CPDF_Page* pPDFPage = pWidget->GetPDFPage(); | 2455 CPDF_Page* pPDFPage = pWidget->GetPDFPage(); |
| 2456 ASSERT(pPDFPage != NULL); | 2456 ASSERT(pPDFPage != NULL); |
| 2457 | 2457 |
| 2458 // CPDF_Page* pPDFPage = pPage->GetPage(); | 2458 // CPDF_Page* pPDFPage = pPage->GetPage(); |
| 2459 // ASSERT(pPDFPage != NULL); | 2459 // ASSERT(pPDFPage != NULL); |
| 2460 | 2460 |
| 2461 crRect.Intersect(pPDFPage->GetPageBBox()); | 2461 crRect.Intersect(pPDFPage->GetPageBBox()); |
| 2462 | 2462 |
| 2463 if (!crRect.IsEmpty()) | 2463 if (!crRect.IsEmpty()) |
| 2464 { | 2464 { |
| 2465 CPDF_Rect rcOld = pWidget->GetRect(); | 2465 CPDF_Rect rcOld = pWidget->GetRect(); |
| 2466 if (crRect.left != rcOld.left || | 2466 if (crRect.left != rcOld.left || |
| 2467 crRect.right != rcOld.right || | 2467 crRect.right != rcOld.right || |
| 2468 crRect.top != rcOld.top || | 2468 crRect.top != rcOld.top || |
| 2469 crRect.bottom != rcOld.bottom) | 2469 crRect.bottom != rcOld.bottom) |
| 2470 { | 2470 { |
| 2471 pWidget->SetRect(crRect); | 2471 pWidget->SetRect(crRect); |
| 2472 bSet = TRUE; | 2472 bSet = true; |
| 2473 } | 2473 } |
| 2474 } | 2474 } |
| 2475 } | 2475 } |
| 2476 } | 2476 } |
| 2477 | 2477 |
| 2478 if (bSet) UpdateFormField(pDocument, pFormField, TRUE, TRUE, TRUE); | 2478 if (bSet) UpdateFormField(pDocument, pFormField, true, true, true); |
| 2479 } | 2479 } |
| 2480 else | 2480 else |
| 2481 { | 2481 { |
| 2482 if(nControlIndex >= pFormField->CountControls()) return; | 2482 if(nControlIndex >= pFormField->CountControls()) return; |
| 2483 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) | 2483 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 2484 { | 2484 { |
| 2485 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) | 2485 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 2486 { | 2486 { |
| 2487 CPDF_Rect crRect = rect; | 2487 CPDF_Rect crRect = rect; |
| 2488 | 2488 |
| 2489 CPDF_Page* pPDFPage = pWidget->GetPDFPage(); | 2489 CPDF_Page* pPDFPage = pWidget->GetPDFPage(); |
| 2490 ASSERT(pPDFPage != NULL); | 2490 ASSERT(pPDFPage != NULL); |
| 2491 | 2491 |
| 2492 // CPDF_Page* pPDFPage = pPage->GetPage(); | 2492 // CPDF_Page* pPDFPage = pPage->GetPage(); |
| 2493 // ASSERT(pPDFPage != NULL); | 2493 // ASSERT(pPDFPage != NULL); |
| 2494 | 2494 |
| 2495 crRect.Intersect(pPDFPage->GetPageBBox()); | 2495 crRect.Intersect(pPDFPage->GetPageBBox()); |
| 2496 | 2496 |
| 2497 if (!crRect.IsEmpty()) | 2497 if (!crRect.IsEmpty()) |
| 2498 { | 2498 { |
| 2499 CPDF_Rect rcOld = pWidget->GetRect(); | 2499 CPDF_Rect rcOld = pWidget->GetRect(); |
| 2500 if (crRect.left != rcOld.left || | 2500 if (crRect.left != rcOld.left || |
| 2501 crRect.right != rcOld.right || | 2501 crRect.right != rcOld.right || |
| 2502 crRect.top != rcOld.top || | 2502 crRect.top != rcOld.top || |
| 2503 crRect.bottom != rcOld.bottom) | 2503 crRect.bottom != rcOld.bottom) |
| 2504 { | 2504 { |
| 2505 pWidget->SetRect(crRect); | 2505 pWidget->SetRect(crRect); |
| 2506 UpdateFormControl(pDocument, pFormControl, TRUE, TRU
E, TRUE); | 2506 UpdateFormControl(pDocument, pFormControl, true, tru
e, true); |
| 2507 } | 2507 } |
| 2508 } | 2508 } |
| 2509 } | 2509 } |
| 2510 } | 2510 } |
| 2511 } | 2511 } |
| 2512 } | 2512 } |
| 2513 } | 2513 } |
| 2514 | 2514 |
| 2515 FX_BOOL Field::required(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2515 bool Field::required(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2516 { | 2516 { |
| 2517 ASSERT(m_pDocument != NULL); | 2517 ASSERT(m_pDocument != NULL); |
| 2518 | 2518 |
| 2519 CFX_PtrArray FieldArray; | 2519 CFX_PtrArray FieldArray; |
| 2520 GetFormFields(m_FieldName,FieldArray); | 2520 GetFormFields(m_FieldName,FieldArray); |
| 2521 if (FieldArray.GetSize() <= 0) return FALSE; | 2521 if (FieldArray.GetSize() <= 0) return false; |
| 2522 | 2522 |
| 2523 if (vp.IsSetting()) | 2523 if (vp.IsSetting()) |
| 2524 { | 2524 { |
| 2525 if (!m_bCanSet) return FALSE; | 2525 if (!m_bCanSet) return false; |
| 2526 | 2526 |
| 2527 | 2527 |
| 2528 bool bVP; | 2528 bool bVP; |
| 2529 vp >> bVP; | 2529 vp >> bVP; |
| 2530 | 2530 |
| 2531 } | 2531 } |
| 2532 else | 2532 else |
| 2533 { | 2533 { |
| 2534 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2534 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2535 ASSERT(pFormField != NULL); | 2535 ASSERT(pFormField != NULL); |
| 2536 | 2536 |
| 2537 if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON) | 2537 if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON) |
| 2538 return FALSE; | 2538 return false; |
| 2539 | 2539 |
| 2540 if (pFormField->GetFieldFlags() & FIELDFLAG_REQUIRED) | 2540 if (pFormField->GetFieldFlags() & FIELDFLAG_REQUIRED) |
| 2541 vp << true; | 2541 vp << true; |
| 2542 else | 2542 else |
| 2543 vp << false; | 2543 vp << false; |
| 2544 } | 2544 } |
| 2545 | 2545 |
| 2546 return TRUE; | 2546 return true; |
| 2547 } | 2547 } |
| 2548 | 2548 |
| 2549 FX_BOOL Field::richText(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2549 bool Field::richText(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2550 { | 2550 { |
| 2551 ASSERT(m_pDocument != NULL); | 2551 ASSERT(m_pDocument != NULL); |
| 2552 | 2552 |
| 2553 if (vp.IsSetting()) | 2553 if (vp.IsSetting()) |
| 2554 { | 2554 { |
| 2555 if (!m_bCanSet) return FALSE; | 2555 if (!m_bCanSet) return false; |
| 2556 | 2556 |
| 2557 bool bVP; | 2557 bool bVP; |
| 2558 vp >> bVP; | 2558 vp >> bVP; |
| 2559 | 2559 |
| 2560 if (m_bDelay) | 2560 if (m_bDelay) |
| 2561 { | 2561 { |
| 2562 AddDelay_Bool(FP_RICHTEXT, bVP); | 2562 AddDelay_Bool(FP_RICHTEXT, bVP); |
| 2563 } | 2563 } |
| 2564 else | 2564 else |
| 2565 { | 2565 { |
| 2566 Field::SetRichText(m_pDocument, m_FieldName, m_nFormControlIndex, bV
P); | 2566 Field::SetRichText(m_pDocument, m_FieldName, m_nFormControlIndex, bV
P); |
| 2567 } | 2567 } |
| 2568 } | 2568 } |
| 2569 else | 2569 else |
| 2570 { | 2570 { |
| 2571 CFX_PtrArray FieldArray; | 2571 CFX_PtrArray FieldArray; |
| 2572 GetFormFields(m_FieldName,FieldArray); | 2572 GetFormFields(m_FieldName,FieldArray); |
| 2573 if (FieldArray.GetSize() <= 0) return FALSE; | 2573 if (FieldArray.GetSize() <= 0) return false; |
| 2574 | 2574 |
| 2575 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2575 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2576 ASSERT(pFormField != NULL); | 2576 ASSERT(pFormField != NULL); |
| 2577 | 2577 |
| 2578 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 2578 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 2579 return FALSE; | 2579 return false; |
| 2580 | 2580 |
| 2581 if (pFormField->GetFieldFlags() & FIELDFLAG_RICHTEXT) | 2581 if (pFormField->GetFieldFlags() & FIELDFLAG_RICHTEXT) |
| 2582 vp << true; | 2582 vp << true; |
| 2583 else | 2583 else |
| 2584 vp << false; | 2584 vp << false; |
| 2585 } | 2585 } |
| 2586 | 2586 |
| 2587 return TRUE; | 2587 return true; |
| 2588 } | 2588 } |
| 2589 | 2589 |
| 2590 void Field::SetRichText(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, bool b) | 2590 void Field::SetRichText(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, bool b) |
| 2591 { | 2591 { |
| 2592 //Not supported. | 2592 //Not supported. |
| 2593 } | 2593 } |
| 2594 | 2594 |
| 2595 FX_BOOL Field::richValue(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 2595 bool Field::richValue(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 2596 { | 2596 { |
| 2597 return TRUE; | 2597 return true; |
| 2598 if (vp.IsSetting()) | 2598 if (vp.IsSetting()) |
| 2599 { | 2599 { |
| 2600 if (!m_bCanSet) return FALSE; | 2600 if (!m_bCanSet) return false; |
| 2601 ; | 2601 ; |
| 2602 } | 2602 } |
| 2603 else | 2603 else |
| 2604 { | 2604 { |
| 2605 ; | 2605 ; |
| 2606 } | 2606 } |
| 2607 return TRUE; | 2607 return true; |
| 2608 } | 2608 } |
| 2609 | 2609 |
| 2610 void Field::SetRichValue(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex) | 2610 void Field::SetRichValue(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex) |
| 2611 { | 2611 { |
| 2612 //Not supported. | 2612 //Not supported. |
| 2613 } | 2613 } |
| 2614 | 2614 |
| 2615 FX_BOOL Field::rotation(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2615 bool Field::rotation(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2616 { | 2616 { |
| 2617 ASSERT(m_pDocument != NULL); | 2617 ASSERT(m_pDocument != NULL); |
| 2618 | 2618 |
| 2619 if (vp.IsSetting()) | 2619 if (vp.IsSetting()) |
| 2620 { | 2620 { |
| 2621 if (!m_bCanSet) return FALSE; | 2621 if (!m_bCanSet) return false; |
| 2622 | 2622 |
| 2623 int nVP; | 2623 int nVP; |
| 2624 vp >> nVP; | 2624 vp >> nVP; |
| 2625 | 2625 |
| 2626 if (m_bDelay) | 2626 if (m_bDelay) |
| 2627 { | 2627 { |
| 2628 AddDelay_Int(FP_ROTATION, nVP); | 2628 AddDelay_Int(FP_ROTATION, nVP); |
| 2629 } | 2629 } |
| 2630 else | 2630 else |
| 2631 { | 2631 { |
| 2632 Field::SetRotation(m_pDocument, m_FieldName, m_nFormControlIndex, nV
P); | 2632 Field::SetRotation(m_pDocument, m_FieldName, m_nFormControlIndex, nV
P); |
| 2633 } | 2633 } |
| 2634 } | 2634 } |
| 2635 else | 2635 else |
| 2636 { | 2636 { |
| 2637 CFX_PtrArray FieldArray; | 2637 CFX_PtrArray FieldArray; |
| 2638 GetFormFields(m_FieldName,FieldArray); | 2638 GetFormFields(m_FieldName,FieldArray); |
| 2639 if (FieldArray.GetSize() <= 0) return FALSE; | 2639 if (FieldArray.GetSize() <= 0) return false; |
| 2640 | 2640 |
| 2641 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2641 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2642 ASSERT(pFormField != NULL); | 2642 ASSERT(pFormField != NULL); |
| 2643 | 2643 |
| 2644 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 2644 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2645 if (!pFormControl)return FALSE; | 2645 if (!pFormControl)return false; |
| 2646 | 2646 |
| 2647 vp << (int32_t)pFormControl->GetRotation(); | 2647 vp << (int32_t)pFormControl->GetRotation(); |
| 2648 } | 2648 } |
| 2649 | 2649 |
| 2650 return TRUE; | 2650 return true; |
| 2651 } | 2651 } |
| 2652 | 2652 |
| 2653 void Field::SetRotation(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, int number) | 2653 void Field::SetRotation(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, int number) |
| 2654 { | 2654 { |
| 2655 //Not supported. | 2655 //Not supported. |
| 2656 } | 2656 } |
| 2657 | 2657 |
| 2658 FX_BOOL Field::strokeColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) | 2658 bool Field::strokeColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 2659 { | 2659 { |
| 2660 ASSERT(m_pDocument != NULL); | 2660 ASSERT(m_pDocument != NULL); |
| 2661 | 2661 |
| 2662 if (vp.IsSetting()) | 2662 if (vp.IsSetting()) |
| 2663 { | 2663 { |
| 2664 if (!m_bCanSet) return FALSE; | 2664 if (!m_bCanSet) return false; |
| 2665 | 2665 |
| 2666 if (!vp.IsArrayObject())return FALSE; | 2666 if (!vp.IsArrayObject())return false; |
| 2667 | 2667 |
| 2668 CJS_Array crArray(m_isolate); | 2668 CJS_Array crArray(m_isolate); |
| 2669 vp >> crArray; | 2669 vp >> crArray; |
| 2670 | 2670 |
| 2671 CPWL_Color color; | 2671 CPWL_Color color; |
| 2672 color::ConvertArrayToPWLColor(crArray, color); | 2672 color::ConvertArrayToPWLColor(crArray, color); |
| 2673 | 2673 |
| 2674 if (m_bDelay) | 2674 if (m_bDelay) |
| 2675 { | 2675 { |
| 2676 AddDelay_Color(FP_STROKECOLOR, color); | 2676 AddDelay_Color(FP_STROKECOLOR, color); |
| 2677 } | 2677 } |
| 2678 else | 2678 else |
| 2679 { | 2679 { |
| 2680 Field::SetStrokeColor(m_pDocument, m_FieldName, m_nFormControlIndex,
color); | 2680 Field::SetStrokeColor(m_pDocument, m_FieldName, m_nFormControlIndex,
color); |
| 2681 } | 2681 } |
| 2682 } | 2682 } |
| 2683 else | 2683 else |
| 2684 { | 2684 { |
| 2685 CFX_PtrArray FieldArray; | 2685 CFX_PtrArray FieldArray; |
| 2686 GetFormFields(m_FieldName,FieldArray); | 2686 GetFormFields(m_FieldName,FieldArray); |
| 2687 if (FieldArray.GetSize() <= 0) return FALSE; | 2687 if (FieldArray.GetSize() <= 0) return false; |
| 2688 | 2688 |
| 2689 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2689 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2690 ASSERT(pFormField != NULL); | 2690 ASSERT(pFormField != NULL); |
| 2691 | 2691 |
| 2692 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 2692 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2693 if (!pFormControl)return FALSE; | 2693 if (!pFormControl)return false; |
| 2694 | 2694 |
| 2695 int iColorType; | 2695 int iColorType; |
| 2696 pFormControl->GetBorderColor(iColorType); | 2696 pFormControl->GetBorderColor(iColorType); |
| 2697 | 2697 |
| 2698 CPWL_Color color; | 2698 CPWL_Color color; |
| 2699 | 2699 |
| 2700 if (iColorType == COLORTYPE_TRANSPARENT) | 2700 if (iColorType == COLORTYPE_TRANSPARENT) |
| 2701 { | 2701 { |
| 2702 color = CPWL_Color(COLORTYPE_TRANSPARENT); | 2702 color = CPWL_Color(COLORTYPE_TRANSPARENT); |
| 2703 } | 2703 } |
| 2704 else if (iColorType == COLORTYPE_GRAY) | 2704 else if (iColorType == COLORTYPE_GRAY) |
| 2705 { | 2705 { |
| 2706 color = CPWL_Color(COLORTYPE_GRAY, pFormControl->GetOriginalBorderCo
lor(0)); | 2706 color = CPWL_Color(COLORTYPE_GRAY, pFormControl->GetOriginalBorderCo
lor(0)); |
| 2707 } | 2707 } |
| 2708 else if (iColorType == COLORTYPE_RGB) | 2708 else if (iColorType == COLORTYPE_RGB) |
| 2709 { | 2709 { |
| 2710 color = CPWL_Color(COLORTYPE_RGB, pFormControl->GetOriginalBorderCol
or(0), | 2710 color = CPWL_Color(COLORTYPE_RGB, pFormControl->GetOriginalBorderCol
or(0), |
| 2711 pFormControl->GetOriginalBorderColor(1), | 2711 pFormControl->GetOriginalBorderColor(1), |
| 2712 pFormControl->GetOriginalBorderColor(2)); | 2712 pFormControl->GetOriginalBorderColor(2)); |
| 2713 } | 2713 } |
| 2714 else if (iColorType == COLORTYPE_CMYK) | 2714 else if (iColorType == COLORTYPE_CMYK) |
| 2715 { | 2715 { |
| 2716 color = CPWL_Color(COLORTYPE_CMYK, pFormControl->GetOriginalBorderCo
lor(0), | 2716 color = CPWL_Color(COLORTYPE_CMYK, pFormControl->GetOriginalBorderCo
lor(0), |
| 2717 pFormControl->GetOriginalBorderColor(1), | 2717 pFormControl->GetOriginalBorderColor(1), |
| 2718 pFormControl->GetOriginalBorderColor(2), | 2718 pFormControl->GetOriginalBorderColor(2), |
| 2719 pFormControl->GetOriginalBorderColor(3)); | 2719 pFormControl->GetOriginalBorderColor(3)); |
| 2720 } | 2720 } |
| 2721 else | 2721 else |
| 2722 return FALSE; | 2722 return false; |
| 2723 | 2723 |
| 2724 CJS_Array crArray(m_isolate); | 2724 CJS_Array crArray(m_isolate); |
| 2725 color::ConvertPWLColorToArray(color, crArray); | 2725 color::ConvertPWLColorToArray(color, crArray); |
| 2726 vp << crArray; | 2726 vp << crArray; |
| 2727 } | 2727 } |
| 2728 | 2728 |
| 2729 return TRUE; | 2729 return true; |
| 2730 } | 2730 } |
| 2731 | 2731 |
| 2732 void Field::SetStrokeColor(CPDFSDK_Document* pDocument, const CFX_WideString& sw
FieldName, int nControlIndex, const CPWL_Color& color) | 2732 void Field::SetStrokeColor(CPDFSDK_Document* pDocument, const CFX_WideString& sw
FieldName, int nControlIndex, const CPWL_Color& color) |
| 2733 { | 2733 { |
| 2734 //Not supported. | 2734 //Not supported. |
| 2735 } | 2735 } |
| 2736 | 2736 |
| 2737 FX_BOOL Field::style(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) | 2737 bool Field::style(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 2738 { | 2738 { |
| 2739 ASSERT(m_pDocument != NULL); | 2739 ASSERT(m_pDocument != NULL); |
| 2740 | 2740 |
| 2741 if (vp.IsSetting()) | 2741 if (vp.IsSetting()) |
| 2742 { | 2742 { |
| 2743 if (!m_bCanSet) return FALSE; | 2743 if (!m_bCanSet) return false; |
| 2744 | 2744 |
| 2745 CFX_ByteString csBCaption; | 2745 CFX_ByteString csBCaption; |
| 2746 vp >> csBCaption; | 2746 vp >> csBCaption; |
| 2747 | 2747 |
| 2748 if (m_bDelay) | 2748 if (m_bDelay) |
| 2749 { | 2749 { |
| 2750 AddDelay_String(FP_STYLE, csBCaption); | 2750 AddDelay_String(FP_STYLE, csBCaption); |
| 2751 } | 2751 } |
| 2752 else | 2752 else |
| 2753 { | 2753 { |
| 2754 Field::SetStyle(m_pDocument, m_FieldName, m_nFormControlIndex, csBCa
ption); | 2754 Field::SetStyle(m_pDocument, m_FieldName, m_nFormControlIndex, csBCa
ption); |
| 2755 } | 2755 } |
| 2756 } | 2756 } |
| 2757 else | 2757 else |
| 2758 { | 2758 { |
| 2759 CFX_PtrArray FieldArray; | 2759 CFX_PtrArray FieldArray; |
| 2760 GetFormFields(m_FieldName,FieldArray); | 2760 GetFormFields(m_FieldName,FieldArray); |
| 2761 if (FieldArray.GetSize() <= 0) return FALSE; | 2761 if (FieldArray.GetSize() <= 0) return false; |
| 2762 | 2762 |
| 2763 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2763 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2764 ASSERT(pFormField != NULL); | 2764 ASSERT(pFormField != NULL); |
| 2765 | 2765 |
| 2766 if (pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON && | 2766 if (pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON && |
| 2767 pFormField->GetFieldType() != FIELDTYPE_CHECKBOX) | 2767 pFormField->GetFieldType() != FIELDTYPE_CHECKBOX) |
| 2768 return FALSE; | 2768 return false; |
| 2769 | 2769 |
| 2770 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 2770 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2771 if (!pFormControl) return FALSE; | 2771 if (!pFormControl) return false; |
| 2772 | 2772 |
| 2773 CFX_WideString csWCaption = pFormControl->GetNormalCaption(); | 2773 CFX_WideString csWCaption = pFormControl->GetNormalCaption(); |
| 2774 CFX_ByteString csBCaption; | 2774 CFX_ByteString csBCaption; |
| 2775 | 2775 |
| 2776 switch (csWCaption[0]) | 2776 switch (csWCaption[0]) |
| 2777 { | 2777 { |
| 2778 case L'l': | 2778 case L'l': |
| 2779 csBCaption = "circle"; | 2779 csBCaption = "circle"; |
| 2780 break; | 2780 break; |
| 2781 case L'8': | 2781 case L'8': |
| 2782 csBCaption = "cross"; | 2782 csBCaption = "cross"; |
| 2783 break; | 2783 break; |
| 2784 case L'u': | 2784 case L'u': |
| 2785 csBCaption = "diamond"; | 2785 csBCaption = "diamond"; |
| 2786 break; | 2786 break; |
| 2787 case L'n': | 2787 case L'n': |
| 2788 csBCaption = "square"; | 2788 csBCaption = "square"; |
| 2789 break; | 2789 break; |
| 2790 case L'H': | 2790 case L'H': |
| 2791 csBCaption = "star"; | 2791 csBCaption = "star"; |
| 2792 break; | 2792 break; |
| 2793 default: //L'4' | 2793 default: //L'4' |
| 2794 csBCaption = "check"; | 2794 csBCaption = "check"; |
| 2795 break; | 2795 break; |
| 2796 } | 2796 } |
| 2797 vp << csBCaption; | 2797 vp << csBCaption; |
| 2798 } | 2798 } |
| 2799 | 2799 |
| 2800 return TRUE; | 2800 return true; |
| 2801 } | 2801 } |
| 2802 | 2802 |
| 2803 void Field::SetStyle(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldN
ame, int nControlIndex, | 2803 void Field::SetStyle(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldN
ame, int nControlIndex, |
| 2804 const CFX_ByteString& string) | 2804 const CFX_ByteString& string) |
| 2805 { | 2805 { |
| 2806 //Not supported. | 2806 //Not supported. |
| 2807 } | 2807 } |
| 2808 | 2808 |
| 2809 FX_BOOL Field::submitName(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) | 2809 bool Field::submitName(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sEr
ror) |
| 2810 { | 2810 { |
| 2811 return TRUE; | 2811 return true; |
| 2812 } | 2812 } |
| 2813 | 2813 |
| 2814 FX_BOOL Field::textColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 2814 bool Field::textColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 2815 { | 2815 { |
| 2816 ASSERT(m_pDocument != NULL); | 2816 ASSERT(m_pDocument != NULL); |
| 2817 | 2817 |
| 2818 if (vp.IsSetting()) | 2818 if (vp.IsSetting()) |
| 2819 { | 2819 { |
| 2820 if (!m_bCanSet) return FALSE; | 2820 if (!m_bCanSet) return false; |
| 2821 | 2821 |
| 2822 CJS_Array crArray(m_isolate); | 2822 CJS_Array crArray(m_isolate); |
| 2823 if (!vp.IsArrayObject())return FALSE; | 2823 if (!vp.IsArrayObject())return false; |
| 2824 vp >> crArray; | 2824 vp >> crArray; |
| 2825 | 2825 |
| 2826 CPWL_Color color; | 2826 CPWL_Color color; |
| 2827 color::ConvertArrayToPWLColor(crArray, color); | 2827 color::ConvertArrayToPWLColor(crArray, color); |
| 2828 | 2828 |
| 2829 if (m_bDelay) | 2829 if (m_bDelay) |
| 2830 { | 2830 { |
| 2831 AddDelay_Color(FP_TEXTCOLOR, color); | 2831 AddDelay_Color(FP_TEXTCOLOR, color); |
| 2832 } | 2832 } |
| 2833 else | 2833 else |
| 2834 { | 2834 { |
| 2835 Field::SetTextColor(m_pDocument, m_FieldName, m_nFormControlIndex, c
olor); | 2835 Field::SetTextColor(m_pDocument, m_FieldName, m_nFormControlIndex, c
olor); |
| 2836 } | 2836 } |
| 2837 } | 2837 } |
| 2838 else | 2838 else |
| 2839 { | 2839 { |
| 2840 CFX_PtrArray FieldArray; | 2840 CFX_PtrArray FieldArray; |
| 2841 GetFormFields(m_FieldName,FieldArray); | 2841 GetFormFields(m_FieldName,FieldArray); |
| 2842 if (FieldArray.GetSize() <= 0) return FALSE; | 2842 if (FieldArray.GetSize() <= 0) return false; |
| 2843 | 2843 |
| 2844 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2844 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2845 ASSERT(pFormField != NULL); | 2845 ASSERT(pFormField != NULL); |
| 2846 | 2846 |
| 2847 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 2847 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2848 if (!pFormControl)return FALSE; | 2848 if (!pFormControl)return false; |
| 2849 | 2849 |
| 2850 int iColorType; | 2850 int iColorType; |
| 2851 FX_ARGB color; | 2851 FX_ARGB color; |
| 2852 CPDF_DefaultAppearance FieldAppearance = pFormControl->GetDefaultAppeara
nce(); | 2852 CPDF_DefaultAppearance FieldAppearance = pFormControl->GetDefaultAppeara
nce(); |
| 2853 FieldAppearance.GetColor(color, iColorType); | 2853 FieldAppearance.GetColor(color, iColorType); |
| 2854 int32_t a,r,g,b; | 2854 int32_t a,r,g,b; |
| 2855 ArgbDecode(color, a, r, g, b); | 2855 ArgbDecode(color, a, r, g, b); |
| 2856 | 2856 |
| 2857 CPWL_Color crRet = CPWL_Color(COLORTYPE_RGB, r / 255.0f, | 2857 CPWL_Color crRet = CPWL_Color(COLORTYPE_RGB, r / 255.0f, |
| 2858 g / 255.0f, | 2858 g / 255.0f, |
| 2859 b / 255.0f); | 2859 b / 255.0f); |
| 2860 | 2860 |
| 2861 if (iColorType == COLORTYPE_TRANSPARENT) | 2861 if (iColorType == COLORTYPE_TRANSPARENT) |
| 2862 crRet = CPWL_Color(COLORTYPE_TRANSPARENT); | 2862 crRet = CPWL_Color(COLORTYPE_TRANSPARENT); |
| 2863 | 2863 |
| 2864 CJS_Array crArray(m_isolate); | 2864 CJS_Array crArray(m_isolate); |
| 2865 color::ConvertPWLColorToArray(crRet, crArray); | 2865 color::ConvertPWLColorToArray(crRet, crArray); |
| 2866 vp << crArray; | 2866 vp << crArray; |
| 2867 } | 2867 } |
| 2868 | 2868 |
| 2869 return TRUE; | 2869 return true; |
| 2870 } | 2870 } |
| 2871 | 2871 |
| 2872 void Field::SetTextColor(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, const CPWL_Color& color) | 2872 void Field::SetTextColor(CPDFSDK_Document* pDocument, const CFX_WideString& swFi
eldName, int nControlIndex, const CPWL_Color& color) |
| 2873 { | 2873 { |
| 2874 //Not supported. | 2874 //Not supported. |
| 2875 } | 2875 } |
| 2876 | 2876 |
| 2877 FX_BOOL Field::textFont(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2877 bool Field::textFont(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2878 { | 2878 { |
| 2879 ASSERT(m_pDocument != NULL); | 2879 ASSERT(m_pDocument != NULL); |
| 2880 | 2880 |
| 2881 if (vp.IsSetting()) | 2881 if (vp.IsSetting()) |
| 2882 { | 2882 { |
| 2883 if (!m_bCanSet) return FALSE; | 2883 if (!m_bCanSet) return false; |
| 2884 | 2884 |
| 2885 CFX_ByteString csFontName; | 2885 CFX_ByteString csFontName; |
| 2886 vp >> csFontName; | 2886 vp >> csFontName; |
| 2887 if (csFontName.IsEmpty()) return FALSE; | 2887 if (csFontName.IsEmpty()) return false; |
| 2888 | 2888 |
| 2889 if (m_bDelay) | 2889 if (m_bDelay) |
| 2890 { | 2890 { |
| 2891 AddDelay_String(FP_TEXTFONT, csFontName); | 2891 AddDelay_String(FP_TEXTFONT, csFontName); |
| 2892 } | 2892 } |
| 2893 else | 2893 else |
| 2894 { | 2894 { |
| 2895 Field::SetTextFont(m_pDocument, m_FieldName, m_nFormControlIndex, cs
FontName); | 2895 Field::SetTextFont(m_pDocument, m_FieldName, m_nFormControlIndex, cs
FontName); |
| 2896 } | 2896 } |
| 2897 } | 2897 } |
| 2898 else | 2898 else |
| 2899 { | 2899 { |
| 2900 CFX_PtrArray FieldArray; | 2900 CFX_PtrArray FieldArray; |
| 2901 GetFormFields(m_FieldName,FieldArray); | 2901 GetFormFields(m_FieldName,FieldArray); |
| 2902 if (FieldArray.GetSize() <= 0) return FALSE; | 2902 if (FieldArray.GetSize() <= 0) return false; |
| 2903 | 2903 |
| 2904 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2904 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2905 ASSERT(pFormField != NULL); | 2905 ASSERT(pFormField != NULL); |
| 2906 | 2906 |
| 2907 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 2907 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2908 if (!pFormControl)return FALSE; | 2908 if (!pFormControl)return false; |
| 2909 | 2909 |
| 2910 int nFieldType = pFormField->GetFieldType(); | 2910 int nFieldType = pFormField->GetFieldType(); |
| 2911 | 2911 |
| 2912 if (nFieldType == FIELDTYPE_PUSHBUTTON || | 2912 if (nFieldType == FIELDTYPE_PUSHBUTTON || |
| 2913 nFieldType == FIELDTYPE_COMBOBOX || | 2913 nFieldType == FIELDTYPE_COMBOBOX || |
| 2914 nFieldType == FIELDTYPE_LISTBOX || | 2914 nFieldType == FIELDTYPE_LISTBOX || |
| 2915 nFieldType == FIELDTYPE_TEXTFIELD) | 2915 nFieldType == FIELDTYPE_TEXTFIELD) |
| 2916 { | 2916 { |
| 2917 CPDF_Font * pFont = pFormControl->GetDefaultControlFont(); | 2917 CPDF_Font * pFont = pFormControl->GetDefaultControlFont(); |
| 2918 if (!pFont) return FALSE; | 2918 if (!pFont) return false; |
| 2919 | 2919 |
| 2920 vp << pFont->GetBaseFont(); | 2920 vp << pFont->GetBaseFont(); |
| 2921 } | 2921 } |
| 2922 else | 2922 else |
| 2923 return FALSE; | 2923 return false; |
| 2924 } | 2924 } |
| 2925 | 2925 |
| 2926 return TRUE; | 2926 return true; |
| 2927 } | 2927 } |
| 2928 | 2928 |
| 2929 void Field::SetTextFont(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, const CFX_ByteString& string) | 2929 void Field::SetTextFont(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, const CFX_ByteString& string) |
| 2930 { | 2930 { |
| 2931 //Not supported. | 2931 //Not supported. |
| 2932 } | 2932 } |
| 2933 | 2933 |
| 2934 FX_BOOL Field::textSize(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2934 bool Field::textSize(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2935 { | 2935 { |
| 2936 ASSERT(m_pDocument != NULL); | 2936 ASSERT(m_pDocument != NULL); |
| 2937 | 2937 |
| 2938 if (vp.IsSetting()) | 2938 if (vp.IsSetting()) |
| 2939 { | 2939 { |
| 2940 if (!m_bCanSet) return FALSE; | 2940 if (!m_bCanSet) return false; |
| 2941 | 2941 |
| 2942 int nVP; | 2942 int nVP; |
| 2943 vp >> nVP; | 2943 vp >> nVP; |
| 2944 | 2944 |
| 2945 if (m_bDelay) | 2945 if (m_bDelay) |
| 2946 { | 2946 { |
| 2947 AddDelay_Int(FP_TEXTSIZE, nVP); | 2947 AddDelay_Int(FP_TEXTSIZE, nVP); |
| 2948 } | 2948 } |
| 2949 else | 2949 else |
| 2950 { | 2950 { |
| 2951 Field::SetTextSize(m_pDocument, m_FieldName, m_nFormControlIndex, nV
P); | 2951 Field::SetTextSize(m_pDocument, m_FieldName, m_nFormControlIndex, nV
P); |
| 2952 } | 2952 } |
| 2953 } | 2953 } |
| 2954 else | 2954 else |
| 2955 { | 2955 { |
| 2956 CFX_PtrArray FieldArray; | 2956 CFX_PtrArray FieldArray; |
| 2957 GetFormFields(m_FieldName,FieldArray); | 2957 GetFormFields(m_FieldName,FieldArray); |
| 2958 if (FieldArray.GetSize() <= 0) return FALSE; | 2958 if (FieldArray.GetSize() <= 0) return false; |
| 2959 | 2959 |
| 2960 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2960 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2961 ASSERT(pFormField != NULL); | 2961 ASSERT(pFormField != NULL); |
| 2962 | 2962 |
| 2963 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 2963 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2964 if (!pFormControl)return FALSE; | 2964 if (!pFormControl)return false; |
| 2965 | 2965 |
| 2966 CPDF_DefaultAppearance FieldAppearance = pFormControl->GetDefaultAppeara
nce(); | 2966 CPDF_DefaultAppearance FieldAppearance = pFormControl->GetDefaultAppeara
nce(); |
| 2967 | 2967 |
| 2968 CFX_ByteString csFontNameTag; | 2968 CFX_ByteString csFontNameTag; |
| 2969 FX_FLOAT fFontSize; | 2969 FX_FLOAT fFontSize; |
| 2970 FieldAppearance.GetFont(csFontNameTag,fFontSize); | 2970 FieldAppearance.GetFont(csFontNameTag,fFontSize); |
| 2971 | 2971 |
| 2972 vp << (int)fFontSize; | 2972 vp << (int)fFontSize; |
| 2973 } | 2973 } |
| 2974 | 2974 |
| 2975 return TRUE; | 2975 return true; |
| 2976 } | 2976 } |
| 2977 | 2977 |
| 2978 void Field::SetTextSize(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, int number) | 2978 void Field::SetTextSize(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, int number) |
| 2979 { | 2979 { |
| 2980 //Not supported. | 2980 //Not supported. |
| 2981 } | 2981 } |
| 2982 | 2982 |
| 2983 FX_BOOL Field::type(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) | 2983 bool Field::type(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 2984 { | 2984 { |
| 2985 ASSERT(m_pDocument != NULL); | 2985 ASSERT(m_pDocument != NULL); |
| 2986 | 2986 |
| 2987 if (!vp.IsGetting()) return FALSE; | 2987 if (!vp.IsGetting()) return false; |
| 2988 | 2988 |
| 2989 CFX_PtrArray FieldArray; | 2989 CFX_PtrArray FieldArray; |
| 2990 GetFormFields(m_FieldName,FieldArray); | 2990 GetFormFields(m_FieldName,FieldArray); |
| 2991 if (FieldArray.GetSize() <= 0) return FALSE; | 2991 if (FieldArray.GetSize() <= 0) return false; |
| 2992 | 2992 |
| 2993 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2993 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2994 ASSERT(pFormField != NULL); | 2994 ASSERT(pFormField != NULL); |
| 2995 | 2995 |
| 2996 switch (pFormField->GetFieldType()) | 2996 switch (pFormField->GetFieldType()) |
| 2997 { | 2997 { |
| 2998 case FIELDTYPE_UNKNOWN: | 2998 case FIELDTYPE_UNKNOWN: |
| 2999 vp << L"unknown"; | 2999 vp << L"unknown"; |
| 3000 break; | 3000 break; |
| 3001 case FIELDTYPE_PUSHBUTTON: | 3001 case FIELDTYPE_PUSHBUTTON: |
| (...skipping 15 matching lines...) Expand all Loading... |
| 3017 vp << L"text"; | 3017 vp << L"text"; |
| 3018 break; | 3018 break; |
| 3019 case FIELDTYPE_SIGNATURE: | 3019 case FIELDTYPE_SIGNATURE: |
| 3020 vp << L"signature"; | 3020 vp << L"signature"; |
| 3021 break; | 3021 break; |
| 3022 default : | 3022 default : |
| 3023 vp << L"unknown"; | 3023 vp << L"unknown"; |
| 3024 break; | 3024 break; |
| 3025 } | 3025 } |
| 3026 | 3026 |
| 3027 return TRUE; | 3027 return true; |
| 3028 } | 3028 } |
| 3029 | 3029 |
| 3030 FX_BOOL Field::userName(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 3030 bool Field::userName(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 3031 { | 3031 { |
| 3032 ASSERT(m_pDocument != NULL); | 3032 ASSERT(m_pDocument != NULL); |
| 3033 | 3033 |
| 3034 if (vp.IsSetting()) | 3034 if (vp.IsSetting()) |
| 3035 { | 3035 { |
| 3036 if (!m_bCanSet) return FALSE; | 3036 if (!m_bCanSet) return false; |
| 3037 | 3037 |
| 3038 CFX_WideString swName; | 3038 CFX_WideString swName; |
| 3039 vp >> swName; | 3039 vp >> swName; |
| 3040 | 3040 |
| 3041 if (m_bDelay) | 3041 if (m_bDelay) |
| 3042 { | 3042 { |
| 3043 AddDelay_WideString(FP_USERNAME, swName); | 3043 AddDelay_WideString(FP_USERNAME, swName); |
| 3044 } | 3044 } |
| 3045 else | 3045 else |
| 3046 { | 3046 { |
| 3047 Field::SetUserName(m_pDocument, m_FieldName, m_nFormControlIndex, sw
Name); | 3047 Field::SetUserName(m_pDocument, m_FieldName, m_nFormControlIndex, sw
Name); |
| 3048 } | 3048 } |
| 3049 } | 3049 } |
| 3050 else | 3050 else |
| 3051 { | 3051 { |
| 3052 CFX_PtrArray FieldArray; | 3052 CFX_PtrArray FieldArray; |
| 3053 GetFormFields(m_FieldName,FieldArray); | 3053 GetFormFields(m_FieldName,FieldArray); |
| 3054 if (FieldArray.GetSize() <= 0) return FALSE; | 3054 if (FieldArray.GetSize() <= 0) return false; |
| 3055 | 3055 |
| 3056 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3056 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3057 ASSERT(pFormField != NULL); | 3057 ASSERT(pFormField != NULL); |
| 3058 | 3058 |
| 3059 vp << (CFX_WideString)pFormField->GetAlternateName(); | 3059 vp << (CFX_WideString)pFormField->GetAlternateName(); |
| 3060 } | 3060 } |
| 3061 | 3061 |
| 3062 return TRUE; | 3062 return true; |
| 3063 } | 3063 } |
| 3064 | 3064 |
| 3065 void Field::SetUserName(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, const CFX_WideString& string) | 3065 void Field::SetUserName(CPDFSDK_Document* pDocument, const CFX_WideString& swFie
ldName, int nControlIndex, const CFX_WideString& string) |
| 3066 { | 3066 { |
| 3067 //Not supported. | 3067 //Not supported. |
| 3068 } | 3068 } |
| 3069 | 3069 |
| 3070 FX_BOOL Field::value(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) | 3070 bool Field::value(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 3071 { | 3071 { |
| 3072 ASSERT(m_pDocument != NULL); | 3072 ASSERT(m_pDocument != NULL); |
| 3073 | 3073 |
| 3074 if (vp.IsSetting()) | 3074 if (vp.IsSetting()) |
| 3075 { | 3075 { |
| 3076 if (!m_bCanSet) return FALSE; | 3076 if (!m_bCanSet) return false; |
| 3077 | 3077 |
| 3078 CJS_WideStringArray strArray; | 3078 CJS_WideStringArray strArray; |
| 3079 | 3079 |
| 3080 if (vp.IsArrayObject()) | 3080 if (vp.IsArrayObject()) |
| 3081 { | 3081 { |
| 3082 CJS_Array ValueArray(m_isolate); | 3082 CJS_Array ValueArray(m_isolate); |
| 3083 vp.ConvertToArray(ValueArray); | 3083 vp.ConvertToArray(ValueArray); |
| 3084 for (int i = 0,sz = ValueArray.GetLength(); i < sz; i++) | 3084 for (int i = 0,sz = ValueArray.GetLength(); i < sz; i++) |
| 3085 { | 3085 { |
| 3086 CJS_Value ElementValue(m_isolate); | 3086 CJS_Value ElementValue(m_isolate); |
| (...skipping 15 matching lines...) Expand all Loading... |
| 3102 } | 3102 } |
| 3103 else | 3103 else |
| 3104 { | 3104 { |
| 3105 Field::SetValue(m_pDocument, m_FieldName, m_nFormControlIndex, strAr
ray); | 3105 Field::SetValue(m_pDocument, m_FieldName, m_nFormControlIndex, strAr
ray); |
| 3106 } | 3106 } |
| 3107 } | 3107 } |
| 3108 else | 3108 else |
| 3109 { | 3109 { |
| 3110 CFX_PtrArray FieldArray; | 3110 CFX_PtrArray FieldArray; |
| 3111 GetFormFields(m_FieldName,FieldArray); | 3111 GetFormFields(m_FieldName,FieldArray); |
| 3112 if (FieldArray.GetSize() <= 0) return FALSE; | 3112 if (FieldArray.GetSize() <= 0) return false; |
| 3113 | 3113 |
| 3114 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3114 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3115 ASSERT(pFormField != NULL); | 3115 ASSERT(pFormField != NULL); |
| 3116 | 3116 |
| 3117 | 3117 |
| 3118 | 3118 |
| 3119 switch (pFormField->GetFieldType()) | 3119 switch (pFormField->GetFieldType()) |
| 3120 { | 3120 { |
| 3121 case FIELDTYPE_PUSHBUTTON: | 3121 case FIELDTYPE_PUSHBUTTON: |
| 3122 return FALSE; | 3122 return false; |
| 3123 case FIELDTYPE_COMBOBOX: | 3123 case FIELDTYPE_COMBOBOX: |
| 3124 case FIELDTYPE_TEXTFIELD: | 3124 case FIELDTYPE_TEXTFIELD: |
| 3125 { | 3125 { |
| 3126 CFX_WideString swValue = pFormField->GetValue(); | 3126 CFX_WideString swValue = pFormField->GetValue(); |
| 3127 | 3127 |
| 3128 double dRet; | 3128 double dRet; |
| 3129 FX_BOOL bDot; | 3129 bool bDot; |
| 3130 if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_str(), dR
et, bDot)) | 3130 if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_str(), dR
et, bDot)) |
| 3131 { | 3131 { |
| 3132 if (bDot) | 3132 if (bDot) |
| 3133 vp << dRet; | 3133 vp << dRet; |
| 3134 else | 3134 else |
| 3135 vp << dRet; | 3135 vp << dRet; |
| 3136 } | 3136 } |
| 3137 else | 3137 else |
| 3138 vp << swValue; | 3138 vp << swValue; |
| 3139 } | 3139 } |
| (...skipping 13 matching lines...) Expand all Loading... |
| 3153 ElementValue = pFormField->GetOptionLabel(iIndex).c_
str(); | 3153 ElementValue = pFormField->GetOptionLabel(iIndex).c_
str(); |
| 3154 ValueArray.SetElement(i, ElementValue); | 3154 ValueArray.SetElement(i, ElementValue); |
| 3155 } | 3155 } |
| 3156 vp << ValueArray; | 3156 vp << ValueArray; |
| 3157 } | 3157 } |
| 3158 else | 3158 else |
| 3159 { | 3159 { |
| 3160 CFX_WideString swValue = pFormField->GetValue(); | 3160 CFX_WideString swValue = pFormField->GetValue(); |
| 3161 | 3161 |
| 3162 double dRet; | 3162 double dRet; |
| 3163 FX_BOOL bDot; | 3163 bool bDot; |
| 3164 if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_str()
, dRet, bDot)) | 3164 if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_str()
, dRet, bDot)) |
| 3165 { | 3165 { |
| 3166 if (bDot) | 3166 if (bDot) |
| 3167 vp << dRet; | 3167 vp << dRet; |
| 3168 else | 3168 else |
| 3169 vp << dRet; | 3169 vp << dRet; |
| 3170 } | 3170 } |
| 3171 else | 3171 else |
| 3172 vp << swValue; | 3172 vp << swValue; |
| 3173 } | 3173 } |
| 3174 } | 3174 } |
| 3175 break; | 3175 break; |
| 3176 case FIELDTYPE_CHECKBOX: | 3176 case FIELDTYPE_CHECKBOX: |
| 3177 case FIELDTYPE_RADIOBUTTON: | 3177 case FIELDTYPE_RADIOBUTTON: |
| 3178 { | 3178 { |
| 3179 FX_BOOL bFind = FALSE; | 3179 bool bFind = false; |
| 3180 for (int i = 0 , sz = pFormField->CountControls(); i < sz; i++) | 3180 for (int i = 0 , sz = pFormField->CountControls(); i < sz; i++) |
| 3181 { | 3181 { |
| 3182 if (pFormField->GetControl(i)->IsChecked()) | 3182 if (pFormField->GetControl(i)->IsChecked()) |
| 3183 { | 3183 { |
| 3184 CFX_WideString swValue = pFormField->GetControl(i)->GetE
xportValue(); | 3184 CFX_WideString swValue = pFormField->GetControl(i)->GetE
xportValue(); |
| 3185 double dRet; | 3185 double dRet; |
| 3186 FX_BOOL bDot; | 3186 bool bDot; |
| 3187 if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_s
tr(), dRet, bDot)) | 3187 if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_s
tr(), dRet, bDot)) |
| 3188 { | 3188 { |
| 3189 if (bDot) | 3189 if (bDot) |
| 3190 vp << dRet; | 3190 vp << dRet; |
| 3191 else | 3191 else |
| 3192 vp << dRet; | 3192 vp << dRet; |
| 3193 } | 3193 } |
| 3194 else | 3194 else |
| 3195 vp << swValue; | 3195 vp << swValue; |
| 3196 | 3196 |
| 3197 bFind = TRUE; | 3197 bFind = true; |
| 3198 break; | 3198 break; |
| 3199 } | 3199 } |
| 3200 else | 3200 else |
| 3201 continue; | 3201 continue; |
| 3202 } | 3202 } |
| 3203 if (!bFind) | 3203 if (!bFind) |
| 3204 vp << L"Off"; | 3204 vp << L"Off"; |
| 3205 } | 3205 } |
| 3206 break; | 3206 break; |
| 3207 default: | 3207 default: |
| 3208 vp << pFormField->GetValue(); | 3208 vp << pFormField->GetValue(); |
| 3209 break; | 3209 break; |
| 3210 } | 3210 } |
| 3211 } | 3211 } |
| 3212 | 3212 |
| 3213 return TRUE; | 3213 return true; |
| 3214 } | 3214 } |
| 3215 | 3215 |
| 3216 void Field::SetValue(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldN
ame, | 3216 void Field::SetValue(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldN
ame, |
| 3217 int nControlIndex, const CJS_WideStringArray& strArray) | 3217 int nControlIndex, const CJS_WideStringArray& strArray) |
| 3218 { | 3218 { |
| 3219 ASSERT(pDocument != NULL); | 3219 ASSERT(pDocument != NULL); |
| 3220 | 3220 |
| 3221 if (strArray.GetSize() < 1) return; | 3221 if (strArray.GetSize() < 1) return; |
| 3222 | 3222 |
| 3223 CFX_PtrArray FieldArray; | 3223 CFX_PtrArray FieldArray; |
| 3224 GetFormFields(pDocument, swFieldName, FieldArray); | 3224 GetFormFields(pDocument, swFieldName, FieldArray); |
| 3225 | 3225 |
| 3226 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 3226 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 3227 { | 3227 { |
| 3228 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); | 3228 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 3229 ASSERT(pFormField != NULL); | 3229 ASSERT(pFormField != NULL); |
| 3230 | 3230 |
| 3231 if (pFormField->GetFullName().Compare(swFieldName) != 0) | 3231 if (pFormField->GetFullName().Compare(swFieldName) != 0) |
| 3232 continue; | 3232 continue; |
| 3233 | 3233 |
| 3234 switch (pFormField->GetFieldType()) | 3234 switch (pFormField->GetFieldType()) |
| 3235 { | 3235 { |
| 3236 case FIELDTYPE_TEXTFIELD: | 3236 case FIELDTYPE_TEXTFIELD: |
| 3237 case FIELDTYPE_COMBOBOX: | 3237 case FIELDTYPE_COMBOBOX: |
| 3238 if (pFormField->GetValue() != strArray.GetAt(0)) | 3238 if (pFormField->GetValue() != strArray.GetAt(0)) |
| 3239 { | 3239 { |
| 3240 CFX_WideString WideString = strArray.GetAt(0); | 3240 CFX_WideString WideString = strArray.GetAt(0); |
| 3241 pFormField->SetValue(strArray.GetAt(0), TRUE); | 3241 pFormField->SetValue(strArray.GetAt(0), true); |
| 3242 UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE); | 3242 UpdateFormField(pDocument, pFormField, true, false, true); |
| 3243 } | 3243 } |
| 3244 break; | 3244 break; |
| 3245 case FIELDTYPE_CHECKBOX: //mantis: 0004493 | 3245 case FIELDTYPE_CHECKBOX: //mantis: 0004493 |
| 3246 case FIELDTYPE_RADIOBUTTON: | 3246 case FIELDTYPE_RADIOBUTTON: |
| 3247 { | 3247 { |
| 3248 if (pFormField->GetValue() != strArray.GetAt(0)) | 3248 if (pFormField->GetValue() != strArray.GetAt(0)) |
| 3249 { | 3249 { |
| 3250 pFormField->SetValue(strArray.GetAt(0), TRUE); | 3250 pFormField->SetValue(strArray.GetAt(0), true); |
| 3251 UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE); | 3251 UpdateFormField(pDocument, pFormField, true, false, true); |
| 3252 } | 3252 } |
| 3253 } | 3253 } |
| 3254 break; | 3254 break; |
| 3255 case FIELDTYPE_LISTBOX: | 3255 case FIELDTYPE_LISTBOX: |
| 3256 { | 3256 { |
| 3257 FX_BOOL bModified = FALSE; | 3257 bool bModified = false; |
| 3258 | 3258 |
| 3259 for (int i=0,sz=strArray.GetSize(); i<sz; i++) | 3259 for (int i=0,sz=strArray.GetSize(); i<sz; i++) |
| 3260 { | 3260 { |
| 3261 int iIndex = pFormField->FindOption(strArray.GetAt(i)); | 3261 int iIndex = pFormField->FindOption(strArray.GetAt(i)); |
| 3262 | 3262 |
| 3263 if (!pFormField->IsItemSelected(iIndex)) | 3263 if (!pFormField->IsItemSelected(iIndex)) |
| 3264 { | 3264 { |
| 3265 bModified = TRUE; | 3265 bModified = true; |
| 3266 break; | 3266 break; |
| 3267 } | 3267 } |
| 3268 } | 3268 } |
| 3269 | 3269 |
| 3270 if (bModified) | 3270 if (bModified) |
| 3271 { | 3271 { |
| 3272 pFormField->ClearSelection(TRUE); | 3272 pFormField->ClearSelection(true); |
| 3273 for (int i=0,sz=strArray.GetSize(); i<sz; i++) | 3273 for (int i=0,sz=strArray.GetSize(); i<sz; i++) |
| 3274 { | 3274 { |
| 3275 int iIndex = pFormField->FindOption(strArray.GetAt(i)); | 3275 int iIndex = pFormField->FindOption(strArray.GetAt(i)); |
| 3276 pFormField->SetItemSelection(iIndex, TRUE, TRUE); | 3276 pFormField->SetItemSelection(iIndex, true, true); |
| 3277 } | 3277 } |
| 3278 | 3278 |
| 3279 UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE); | 3279 UpdateFormField(pDocument, pFormField, true, false, true); |
| 3280 } | 3280 } |
| 3281 } | 3281 } |
| 3282 break; | 3282 break; |
| 3283 default: | 3283 default: |
| 3284 break; | 3284 break; |
| 3285 } | 3285 } |
| 3286 } | 3286 } |
| 3287 } | 3287 } |
| 3288 | 3288 |
| 3289 FX_BOOL Field::valueAsString(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStrin
g& sError) | 3289 bool Field::valueAsString(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 3290 { | 3290 { |
| 3291 ASSERT(m_pDocument != NULL); | 3291 ASSERT(m_pDocument != NULL); |
| 3292 | 3292 |
| 3293 if (!vp.IsGetting()) return FALSE; | 3293 if (!vp.IsGetting()) return false; |
| 3294 | 3294 |
| 3295 CFX_PtrArray FieldArray; | 3295 CFX_PtrArray FieldArray; |
| 3296 GetFormFields(m_FieldName,FieldArray); | 3296 GetFormFields(m_FieldName,FieldArray); |
| 3297 if (FieldArray.GetSize() <= 0) return FALSE; | 3297 if (FieldArray.GetSize() <= 0) return false; |
| 3298 | 3298 |
| 3299 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3299 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3300 ASSERT(pFormField != NULL); | 3300 ASSERT(pFormField != NULL); |
| 3301 | 3301 |
| 3302 if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON) | 3302 if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON) |
| 3303 return FALSE; | 3303 return false; |
| 3304 | 3304 |
| 3305 if (pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) | 3305 if (pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) |
| 3306 { | 3306 { |
| 3307 if(!pFormField->CountControls()) return FALSE; | 3307 if(!pFormField->CountControls()) return false; |
| 3308 | 3308 |
| 3309 if (pFormField->GetControl(0)->IsChecked()) | 3309 if (pFormField->GetControl(0)->IsChecked()) |
| 3310 vp << L"Yes"; | 3310 vp << L"Yes"; |
| 3311 else | 3311 else |
| 3312 vp << L"Off"; | 3312 vp << L"Off"; |
| 3313 } | 3313 } |
| 3314 else if (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON && !(pFormField
->GetFieldFlags() & FIELDFLAG_RADIOSINUNISON)) | 3314 else if (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON && !(pFormField
->GetFieldFlags() & FIELDFLAG_RADIOSINUNISON)) |
| 3315 { | 3315 { |
| 3316 for (int i=0, sz=pFormField->CountControls(); i<sz; i++) | 3316 for (int i=0, sz=pFormField->CountControls(); i<sz; i++) |
| 3317 { | 3317 { |
| 3318 if (pFormField->GetControl(i)->IsChecked()) | 3318 if (pFormField->GetControl(i)->IsChecked()) |
| 3319 { | 3319 { |
| 3320 vp << pFormField->GetControl(i)->GetExportValue().c_str(); | 3320 vp << pFormField->GetControl(i)->GetExportValue().c_str(); |
| 3321 break; | 3321 break; |
| 3322 } | 3322 } |
| 3323 else | 3323 else |
| 3324 vp << L"Off"; | 3324 vp << L"Off"; |
| 3325 } | 3325 } |
| 3326 } | 3326 } |
| 3327 else if (pFormField->GetFieldType() == FIELDTYPE_LISTBOX && (pFormField->Cou
ntSelectedItems() > 1)) | 3327 else if (pFormField->GetFieldType() == FIELDTYPE_LISTBOX && (pFormField->Cou
ntSelectedItems() > 1)) |
| 3328 { | 3328 { |
| 3329 vp << L""; | 3329 vp << L""; |
| 3330 } | 3330 } |
| 3331 else | 3331 else |
| 3332 vp << pFormField->GetValue().c_str(); | 3332 vp << pFormField->GetValue().c_str(); |
| 3333 | 3333 |
| 3334 return TRUE; | 3334 return true; |
| 3335 } | 3335 } |
| 3336 | 3336 |
| 3337 /* --------------------------------- methods --------------------------------- *
/ | 3337 /* --------------------------------- methods --------------------------------- *
/ |
| 3338 | 3338 |
| 3339 FX_BOOL Field::browseForFileToSubmit(IFXJS_Context* cc, const CJS_Parameters& pa
rams, CJS_Value& vRet, CFX_WideString& sError) | 3339 bool Field::browseForFileToSubmit(IFXJS_Context* cc, const CJS_Parameters& param
s, CJS_Value& vRet, CFX_WideString& sError) |
| 3340 { | 3340 { |
| 3341 ASSERT(m_pDocument != NULL); | 3341 ASSERT(m_pDocument != NULL); |
| 3342 | 3342 |
| 3343 CFX_PtrArray FieldArray; | 3343 CFX_PtrArray FieldArray; |
| 3344 GetFormFields(m_FieldName, FieldArray); | 3344 GetFormFields(m_FieldName, FieldArray); |
| 3345 if (FieldArray.GetSize() <= 0) return FALSE; | 3345 if (FieldArray.GetSize() <= 0) return false; |
| 3346 | 3346 |
| 3347 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3347 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3348 ASSERT(pFormField != NULL); | 3348 ASSERT(pFormField != NULL); |
| 3349 | 3349 |
| 3350 CPDFDoc_Environment* pApp = m_pDocument->GetEnv(); | 3350 CPDFDoc_Environment* pApp = m_pDocument->GetEnv(); |
| 3351 ASSERT(pApp != NULL); | 3351 ASSERT(pApp != NULL); |
| 3352 | 3352 |
| 3353 if ((pFormField->GetFieldFlags() & FIELDFLAG_FILESELECT) && | 3353 if ((pFormField->GetFieldFlags() & FIELDFLAG_FILESELECT) && |
| 3354 (pFormField->GetFieldType() == FIELDTYPE_TEXTFIELD)) | 3354 (pFormField->GetFieldType() == FIELDTYPE_TEXTFIELD)) |
| 3355 { | 3355 { |
| 3356 CFX_WideString wsFileName = pApp->JS_fieldBrowse(); | 3356 CFX_WideString wsFileName = pApp->JS_fieldBrowse(); |
| 3357 if(!wsFileName.IsEmpty()) | 3357 if(!wsFileName.IsEmpty()) |
| 3358 { | 3358 { |
| 3359 pFormField->SetValue(wsFileName); | 3359 pFormField->SetValue(wsFileName); |
| 3360 UpdateFormField(m_pDocument, pFormField, TRUE, TRUE, TRUE); | 3360 UpdateFormField(m_pDocument, pFormField, true, true, true); |
| 3361 } | 3361 } |
| 3362 } | 3362 } |
| 3363 else | 3363 else |
| 3364 return FALSE; | 3364 return false; |
| 3365 | 3365 |
| 3366 return TRUE; | 3366 return true; |
| 3367 } | 3367 } |
| 3368 | 3368 |
| 3369 | 3369 |
| 3370 FX_BOOL Field::buttonGetCaption(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3370 bool Field::buttonGetCaption(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) |
| 3371 { | 3371 { |
| 3372 ASSERT(m_pDocument != NULL); | 3372 ASSERT(m_pDocument != NULL); |
| 3373 | 3373 |
| 3374 int nface = 0; | 3374 int nface = 0; |
| 3375 int iSize = params.size(); | 3375 int iSize = params.size(); |
| 3376 if (iSize >= 1) | 3376 if (iSize >= 1) |
| 3377 nface = params[0].ToInt(); | 3377 nface = params[0].ToInt(); |
| 3378 | 3378 |
| 3379 CFX_PtrArray FieldArray; | 3379 CFX_PtrArray FieldArray; |
| 3380 GetFormFields(m_FieldName,FieldArray); | 3380 GetFormFields(m_FieldName,FieldArray); |
| 3381 if (FieldArray.GetSize() <= 0) return FALSE; | 3381 if (FieldArray.GetSize() <= 0) return false; |
| 3382 | 3382 |
| 3383 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3383 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3384 ASSERT(pFormField != NULL); | 3384 ASSERT(pFormField != NULL); |
| 3385 | 3385 |
| 3386 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 3386 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 3387 return FALSE; | 3387 return false; |
| 3388 | 3388 |
| 3389 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 3389 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 3390 if (!pFormControl)return FALSE; | 3390 if (!pFormControl)return false; |
| 3391 | 3391 |
| 3392 if (nface == 0) | 3392 if (nface == 0) |
| 3393 vRet = pFormControl->GetNormalCaption().c_str(); | 3393 vRet = pFormControl->GetNormalCaption().c_str(); |
| 3394 else if (nface == 1) | 3394 else if (nface == 1) |
| 3395 vRet = pFormControl->GetDownCaption().c_str(); | 3395 vRet = pFormControl->GetDownCaption().c_str(); |
| 3396 else if (nface == 2) | 3396 else if (nface == 2) |
| 3397 vRet = pFormControl->GetRolloverCaption().c_str(); | 3397 vRet = pFormControl->GetRolloverCaption().c_str(); |
| 3398 else | 3398 else |
| 3399 return FALSE; | 3399 return false; |
| 3400 | 3400 |
| 3401 return TRUE; | 3401 return true; |
| 3402 } | 3402 } |
| 3403 | 3403 |
| 3404 //#pragma warning(disable: 4800) | 3404 //#pragma warning(disable: 4800) |
| 3405 | 3405 |
| 3406 FX_BOOL Field::buttonGetIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) | 3406 bool Field::buttonGetIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V
alue& vRet, CFX_WideString& sError) |
| 3407 { | 3407 { |
| 3408 ASSERT(m_pDocument != NULL); | 3408 ASSERT(m_pDocument != NULL); |
| 3409 | 3409 |
| 3410 int nface = 0; | 3410 int nface = 0; |
| 3411 int iSize = params.size(); | 3411 int iSize = params.size(); |
| 3412 if (iSize >= 1) | 3412 if (iSize >= 1) |
| 3413 nface = params[0].ToInt(); | 3413 nface = params[0].ToInt(); |
| 3414 | 3414 |
| 3415 CFX_PtrArray FieldArray; | 3415 CFX_PtrArray FieldArray; |
| 3416 GetFormFields(m_FieldName,FieldArray); | 3416 GetFormFields(m_FieldName,FieldArray); |
| 3417 if (FieldArray.GetSize() <= 0) return FALSE; | 3417 if (FieldArray.GetSize() <= 0) return false; |
| 3418 | 3418 |
| 3419 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3419 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3420 ASSERT(pFormField != NULL); | 3420 ASSERT(pFormField != NULL); |
| 3421 | 3421 |
| 3422 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 3422 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 3423 return FALSE; | 3423 return false; |
| 3424 | 3424 |
| 3425 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 3425 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 3426 if (!pFormControl)return FALSE; | 3426 if (!pFormControl)return false; |
| 3427 | 3427 |
| 3428 CJS_Context* pContext = (CJS_Context*)cc; | 3428 CJS_Context* pContext = (CJS_Context*)cc; |
| 3429 ASSERT(pContext != NULL); | 3429 ASSERT(pContext != NULL); |
| 3430 | 3430 |
| 3431 CJS_Runtime* pRuntime = pContext->GetJSRuntime(); | 3431 CJS_Runtime* pRuntime = pContext->GetJSRuntime(); |
| 3432 ASSERT(pRuntime != NULL); | 3432 ASSERT(pRuntime != NULL); |
| 3433 | 3433 |
| 3434 JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, JS_GetObjDefnID(*p
Runtime, L"Icon")); | 3434 JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, JS_GetObjDefnID(*p
Runtime, L"Icon")); |
| 3435 ASSERT(pObj.IsEmpty() == FALSE); | 3435 ASSERT(pObj.IsEmpty() == false); |
| 3436 | 3436 |
| 3437 CJS_Icon* pJS_Icon = (CJS_Icon*)JS_GetPrivate(pObj); | 3437 CJS_Icon* pJS_Icon = (CJS_Icon*)JS_GetPrivate(pObj); |
| 3438 ASSERT(pJS_Icon != NULL); | 3438 ASSERT(pJS_Icon != NULL); |
| 3439 | 3439 |
| 3440 Icon* pIcon = (Icon*)pJS_Icon->GetEmbedObject(); | 3440 Icon* pIcon = (Icon*)pJS_Icon->GetEmbedObject(); |
| 3441 ASSERT(pIcon != NULL); | 3441 ASSERT(pIcon != NULL); |
| 3442 | 3442 |
| 3443 CPDF_Stream* pIconStream = NULL; | 3443 CPDF_Stream* pIconStream = NULL; |
| 3444 if (nface == 0) | 3444 if (nface == 0) |
| 3445 pIconStream = pFormControl->GetNormalIcon(); | 3445 pIconStream = pFormControl->GetNormalIcon(); |
| 3446 else if (nface == 1) | 3446 else if (nface == 1) |
| 3447 pIconStream = pFormControl->GetDownIcon(); | 3447 pIconStream = pFormControl->GetDownIcon(); |
| 3448 else if (nface == 2) | 3448 else if (nface == 2) |
| 3449 pIconStream = pFormControl->GetRolloverIcon(); | 3449 pIconStream = pFormControl->GetRolloverIcon(); |
| 3450 else | 3450 else |
| 3451 return FALSE; | 3451 return false; |
| 3452 | 3452 |
| 3453 pIcon->SetStream(pIconStream); | 3453 pIcon->SetStream(pIconStream); |
| 3454 vRet = pJS_Icon; | 3454 vRet = pJS_Icon; |
| 3455 | 3455 |
| 3456 return TRUE; | 3456 return true; |
| 3457 } | 3457 } |
| 3458 | 3458 |
| 3459 //#pragma warning(default: 4800) | 3459 //#pragma warning(default: 4800) |
| 3460 | 3460 |
| 3461 FX_BOOL Field::buttonImportIcon(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3461 bool Field::buttonImportIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) |
| 3462 { | 3462 { |
| 3463 #if 0 | 3463 #if 0 |
| 3464 ASSERT(m_pDocument != NULL); | 3464 ASSERT(m_pDocument != NULL); |
| 3465 | 3465 |
| 3466 CFX_PtrArray FieldArray; | 3466 CFX_PtrArray FieldArray; |
| 3467 GetFormFields(m_FieldName,FieldArray); | 3467 GetFormFields(m_FieldName,FieldArray); |
| 3468 if (FieldArray.GetSize() <= 0) return FALSE; | 3468 if (FieldArray.GetSize() <= 0) return false; |
| 3469 | 3469 |
| 3470 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3470 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3471 if (!pFormField)return FALSE; | 3471 if (!pFormField)return false; |
| 3472 | 3472 |
| 3473 CPDFDoc_Environment* pEnv = m_pDocument->GetEnv(); | 3473 CPDFDoc_Environment* pEnv = m_pDocument->GetEnv(); |
| 3474 ASSERT(pEnv); | 3474 ASSERT(pEnv); |
| 3475 | 3475 |
| 3476 CFX_WideString sIconFileName = pEnv->JS_fieldBrowse(); | 3476 CFX_WideString sIconFileName = pEnv->JS_fieldBrowse(); |
| 3477 if (sIconFileName.IsEmpty()) | 3477 if (sIconFileName.IsEmpty()) |
| 3478 { | 3478 { |
| 3479 vRet = 1; | 3479 vRet = 1; |
| 3480 return TRUE; | 3480 return true; |
| 3481 } | 3481 } |
| 3482 | 3482 |
| 3483 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); | 3483 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); |
| 3484 ASSERT(pInterForm != NULL); | 3484 ASSERT(pInterForm != NULL); |
| 3485 | 3485 |
| 3486 CPDF_Stream* pStream = pInterForm->LoadImageFromFile(sIconFileName); | 3486 CPDF_Stream* pStream = pInterForm->LoadImageFromFile(sIconFileName); |
| 3487 if (!pStream) | 3487 if (!pStream) |
| 3488 { | 3488 { |
| 3489 vRet = -1; | 3489 vRet = -1; |
| 3490 return TRUE; | 3490 return true; |
| 3491 } | 3491 } |
| 3492 | 3492 |
| 3493 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 3493 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 3494 if (!pFormControl)return FALSE; | 3494 if (!pFormControl)return false; |
| 3495 | 3495 |
| 3496 pFormControl->SetNormalIcon(pStream); | 3496 pFormControl->SetNormalIcon(pStream); |
| 3497 UpdateFormControl(m_pDocument, pFormControl, TRUE, TRUE, TRUE); | 3497 UpdateFormControl(m_pDocument, pFormControl, true, true, true); |
| 3498 | 3498 |
| 3499 vRet = 0; | 3499 vRet = 0; |
| 3500 #endif // 0 | 3500 #endif // 0 |
| 3501 return TRUE; | 3501 return true; |
| 3502 } | 3502 } |
| 3503 | 3503 |
| 3504 FX_BOOL Field::buttonSetCaption(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3504 bool Field::buttonSetCaption(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) |
| 3505 { | 3505 { |
| 3506 return FALSE; | 3506 return false; |
| 3507 } | 3507 } |
| 3508 | 3508 |
| 3509 FX_BOOL Field::buttonSetIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) | 3509 bool Field::buttonSetIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V
alue& vRet, CFX_WideString& sError) |
| 3510 { | 3510 { |
| 3511 return FALSE; | 3511 return false; |
| 3512 } | 3512 } |
| 3513 | 3513 |
| 3514 FX_BOOL Field::checkThisBox(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) | 3514 bool Field::checkThisBox(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) |
| 3515 { | 3515 { |
| 3516 ASSERT(m_pDocument != NULL); | 3516 ASSERT(m_pDocument != NULL); |
| 3517 | 3517 |
| 3518 if (!m_bCanSet) return FALSE; | 3518 if (!m_bCanSet) return false; |
| 3519 | 3519 |
| 3520 int iSize = params.size(); | 3520 int iSize = params.size(); |
| 3521 if (iSize < 1) | 3521 if (iSize < 1) |
| 3522 return FALSE; | 3522 return false; |
| 3523 | 3523 |
| 3524 int nWidget = params[0].ToInt(); | 3524 int nWidget = params[0].ToInt(); |
| 3525 | 3525 |
| 3526 FX_BOOL bCheckit = TRUE; | 3526 bool bCheckit = true; |
| 3527 if (iSize >= 2) | 3527 if (iSize >= 2) |
| 3528 bCheckit = params[1].ToBool(); | 3528 bCheckit = params[1].ToBool(); |
| 3529 | 3529 |
| 3530 CFX_PtrArray FieldArray; | 3530 CFX_PtrArray FieldArray; |
| 3531 GetFormFields(m_FieldName,FieldArray); | 3531 GetFormFields(m_FieldName,FieldArray); |
| 3532 if (FieldArray.GetSize() <= 0) return FALSE; | 3532 if (FieldArray.GetSize() <= 0) return false; |
| 3533 | 3533 |
| 3534 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3534 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3535 ASSERT(pFormField != NULL); | 3535 ASSERT(pFormField != NULL); |
| 3536 | 3536 |
| 3537 if (pFormField->GetFieldType() != FIELDTYPE_CHECKBOX && pFormField->GetField
Type() != FIELDTYPE_RADIOBUTTON) | 3537 if (pFormField->GetFieldType() != FIELDTYPE_CHECKBOX && pFormField->GetField
Type() != FIELDTYPE_RADIOBUTTON) |
| 3538 return FALSE; | 3538 return false; |
| 3539 if(nWidget <0 || nWidget >= pFormField->CountControls()) | 3539 if(nWidget <0 || nWidget >= pFormField->CountControls()) |
| 3540 return FALSE; | 3540 return false; |
| 3541 if (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON) | 3541 if (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON) |
| 3542 pFormField->CheckControl(nWidget, bCheckit, TRUE); | 3542 pFormField->CheckControl(nWidget, bCheckit, true); |
| 3543 else | 3543 else |
| 3544 pFormField->CheckControl(nWidget, bCheckit, TRUE); | 3544 pFormField->CheckControl(nWidget, bCheckit, true); |
| 3545 | 3545 |
| 3546 UpdateFormField(m_pDocument, pFormField, TRUE, TRUE, TRUE); | 3546 UpdateFormField(m_pDocument, pFormField, true, true, true); |
| 3547 return TRUE; | 3547 return true; |
| 3548 } | 3548 } |
| 3549 | 3549 |
| 3550 FX_BOOL Field::clearItems(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V
alue& vRet, CFX_WideString& sError) | 3550 bool Field::clearItems(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Valu
e& vRet, CFX_WideString& sError) |
| 3551 { | 3551 { |
| 3552 return TRUE; | 3552 return true; |
| 3553 } | 3553 } |
| 3554 | 3554 |
| 3555 FX_BOOL Field::defaultIsChecked(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3555 bool Field::defaultIsChecked(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) |
| 3556 { | 3556 { |
| 3557 ASSERT(m_pDocument != NULL); | 3557 ASSERT(m_pDocument != NULL); |
| 3558 | 3558 |
| 3559 if (!m_bCanSet) return FALSE; | 3559 if (!m_bCanSet) return false; |
| 3560 | 3560 |
| 3561 int iSize = params.size(); | 3561 int iSize = params.size(); |
| 3562 if (iSize < 1) | 3562 if (iSize < 1) |
| 3563 return FALSE; | 3563 return false; |
| 3564 | 3564 |
| 3565 int nWidget = params[0].ToInt(); | 3565 int nWidget = params[0].ToInt(); |
| 3566 | 3566 |
| 3567 CFX_PtrArray FieldArray; | 3567 CFX_PtrArray FieldArray; |
| 3568 GetFormFields(m_FieldName,FieldArray); | 3568 GetFormFields(m_FieldName,FieldArray); |
| 3569 if (FieldArray.GetSize() <= 0) return FALSE; | 3569 if (FieldArray.GetSize() <= 0) return false; |
| 3570 | 3570 |
| 3571 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3571 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3572 ASSERT(pFormField != NULL); | 3572 ASSERT(pFormField != NULL); |
| 3573 | 3573 |
| 3574 if(nWidget <0 || nWidget >= pFormField->CountControls()) | 3574 if(nWidget <0 || nWidget >= pFormField->CountControls()) |
| 3575 { | 3575 { |
| 3576 vRet = FALSE; | 3576 vRet = false; |
| 3577 return FALSE; | 3577 return false; |
| 3578 } | 3578 } |
| 3579 if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) | 3579 if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) |
| 3580 || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) | 3580 || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) |
| 3581 { | 3581 { |
| 3582 | 3582 |
| 3583 vRet = TRUE; | 3583 vRet = true; |
| 3584 } | 3584 } |
| 3585 else | 3585 else |
| 3586 vRet = FALSE; | 3586 vRet = false; |
| 3587 | 3587 |
| 3588 return TRUE; | 3588 return true; |
| 3589 } | 3589 } |
| 3590 | 3590 |
| 3591 FX_BOOL Field::deleteItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) | 3591 bool Field::deleteItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) |
| 3592 { | 3592 { |
| 3593 return TRUE; | 3593 return true; |
| 3594 } | 3594 } |
| 3595 | 3595 |
| 3596 int JS_COMPARESTRING(CFX_WideString* ps1, CFX_WideString* ps2) | 3596 int JS_COMPARESTRING(CFX_WideString* ps1, CFX_WideString* ps2) |
| 3597 { | 3597 { |
| 3598 ASSERT(ps1 != NULL); | 3598 ASSERT(ps1 != NULL); |
| 3599 ASSERT(ps2 != NULL); | 3599 ASSERT(ps2 != NULL); |
| 3600 | 3600 |
| 3601 return ps1->Compare(*ps2); | 3601 return ps1->Compare(*ps2); |
| 3602 } | 3602 } |
| 3603 | 3603 |
| 3604 | 3604 |
| 3605 FX_BOOL Field::getArray(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val
ue& vRet, CFX_WideString& sError) | 3605 bool Field::getArray(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value&
vRet, CFX_WideString& sError) |
| 3606 { | 3606 { |
| 3607 ASSERT(m_pDocument != NULL); | 3607 ASSERT(m_pDocument != NULL); |
| 3608 | 3608 |
| 3609 CFX_PtrArray FieldArray; | 3609 CFX_PtrArray FieldArray; |
| 3610 GetFormFields(m_FieldName,FieldArray); | 3610 GetFormFields(m_FieldName,FieldArray); |
| 3611 if (FieldArray.GetSize() <= 0) return FALSE; | 3611 if (FieldArray.GetSize() <= 0) return false; |
| 3612 | 3612 |
| 3613 CGW_ArrayTemplate<CFX_WideString*> swSort; | 3613 CGW_ArrayTemplate<CFX_WideString*> swSort; |
| 3614 | 3614 |
| 3615 for (int i=0,sz=FieldArray.GetSize(); i<sz; i++) | 3615 for (int i=0,sz=FieldArray.GetSize(); i<sz; i++) |
| 3616 { | 3616 { |
| 3617 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); | 3617 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 3618 ASSERT(pFormField != NULL); | 3618 ASSERT(pFormField != NULL); |
| 3619 | 3619 |
| 3620 swSort.Add(new CFX_WideString(pFormField->GetFullName())); | 3620 swSort.Add(new CFX_WideString(pFormField->GetFullName())); |
| 3621 | 3621 |
| 3622 } | 3622 } |
| 3623 swSort.Sort(JS_COMPARESTRING); | 3623 swSort.Sort(JS_COMPARESTRING); |
| 3624 | 3624 |
| 3625 CJS_Context* pContext = (CJS_Context*)cc; | 3625 CJS_Context* pContext = (CJS_Context*)cc; |
| 3626 ASSERT(pContext != NULL); | 3626 ASSERT(pContext != NULL); |
| 3627 CJS_Runtime* pRuntime = pContext->GetJSRuntime(); | 3627 CJS_Runtime* pRuntime = pContext->GetJSRuntime(); |
| 3628 ASSERT(pRuntime != NULL); | 3628 ASSERT(pRuntime != NULL); |
| 3629 | 3629 |
| 3630 CJS_Array FormFieldArray(m_isolate); | 3630 CJS_Array FormFieldArray(m_isolate); |
| 3631 for (int j=0,jsz = swSort.GetSize(); j<jsz; j++) | 3631 for (int j=0,jsz = swSort.GetSize(); j<jsz; j++) |
| 3632 { | 3632 { |
| 3633 CFX_WideString* pStr = swSort.GetAt(j); | 3633 CFX_WideString* pStr = swSort.GetAt(j); |
| 3634 | 3634 |
| 3635 JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, JS_GetObjDefnI
D(*pRuntime, L"Field")); | 3635 JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, JS_GetObjDefnI
D(*pRuntime, L"Field")); |
| 3636 ASSERT(pObj.IsEmpty() == FALSE); | 3636 ASSERT(pObj.IsEmpty() == false); |
| 3637 | 3637 |
| 3638 CJS_Field* pJSField = (CJS_Field*)JS_GetPrivate(pObj); | 3638 CJS_Field* pJSField = (CJS_Field*)JS_GetPrivate(pObj); |
| 3639 ASSERT(pJSField != NULL); | 3639 ASSERT(pJSField != NULL); |
| 3640 | 3640 |
| 3641 Field* pField = (Field*)pJSField->GetEmbedObject(); | 3641 Field* pField = (Field*)pJSField->GetEmbedObject(); |
| 3642 ASSERT(pField != NULL); | 3642 ASSERT(pField != NULL); |
| 3643 | 3643 |
| 3644 pField->AttachField(m_pJSDoc, *pStr); | 3644 pField->AttachField(m_pJSDoc, *pStr); |
| 3645 | 3645 |
| 3646 CJS_Value FormFieldValue(m_isolate); | 3646 CJS_Value FormFieldValue(m_isolate); |
| 3647 FormFieldValue = pJSField; | 3647 FormFieldValue = pJSField; |
| 3648 FormFieldArray.SetElement(j, FormFieldValue); | 3648 FormFieldArray.SetElement(j, FormFieldValue); |
| 3649 | 3649 |
| 3650 delete pStr; | 3650 delete pStr; |
| 3651 } | 3651 } |
| 3652 | 3652 |
| 3653 vRet = FormFieldArray; | 3653 vRet = FormFieldArray; |
| 3654 swSort.RemoveAll(); | 3654 swSort.RemoveAll(); |
| 3655 return TRUE; | 3655 return true; |
| 3656 } | 3656 } |
| 3657 | 3657 |
| 3658 FX_BOOL Field::getItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) | 3658 bool Field::getItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value
& vRet, CFX_WideString& sError) |
| 3659 { | 3659 { |
| 3660 ASSERT(m_pDocument != NULL); | 3660 ASSERT(m_pDocument != NULL); |
| 3661 int iSize = params.size(); | 3661 int iSize = params.size(); |
| 3662 | 3662 |
| 3663 int nIdx = -1; | 3663 int nIdx = -1; |
| 3664 if (iSize >= 1) | 3664 if (iSize >= 1) |
| 3665 nIdx = params[0].ToInt(); | 3665 nIdx = params[0].ToInt(); |
| 3666 | 3666 |
| 3667 FX_BOOL bExport = TRUE; | 3667 bool bExport = true; |
| 3668 if (iSize >= 2) | 3668 if (iSize >= 2) |
| 3669 bExport = params[1].ToBool(); | 3669 bExport = params[1].ToBool(); |
| 3670 | 3670 |
| 3671 CFX_PtrArray FieldArray; | 3671 CFX_PtrArray FieldArray; |
| 3672 GetFormFields(m_FieldName,FieldArray); | 3672 GetFormFields(m_FieldName,FieldArray); |
| 3673 if (FieldArray.GetSize() <= 0) return FALSE; | 3673 if (FieldArray.GetSize() <= 0) return false; |
| 3674 | 3674 |
| 3675 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3675 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3676 ASSERT(pFormField != NULL); | 3676 ASSERT(pFormField != NULL); |
| 3677 | 3677 |
| 3678 if ((pFormField->GetFieldType() == FIELDTYPE_LISTBOX) | 3678 if ((pFormField->GetFieldType() == FIELDTYPE_LISTBOX) |
| 3679 || (pFormField->GetFieldType() == FIELDTYPE_COMBOBOX)) | 3679 || (pFormField->GetFieldType() == FIELDTYPE_COMBOBOX)) |
| 3680 { | 3680 { |
| 3681 if (nIdx == -1 || nIdx > pFormField->CountOptions()) | 3681 if (nIdx == -1 || nIdx > pFormField->CountOptions()) |
| 3682 nIdx = pFormField->CountOptions() -1; | 3682 nIdx = pFormField->CountOptions() -1; |
| 3683 if (bExport) | 3683 if (bExport) |
| 3684 { | 3684 { |
| 3685 CFX_WideString strval = pFormField->GetOptionValue(nIdx); | 3685 CFX_WideString strval = pFormField->GetOptionValue(nIdx); |
| 3686 if (strval.IsEmpty()) | 3686 if (strval.IsEmpty()) |
| 3687 vRet = pFormField->GetOptionLabel(nIdx).c_str(); | 3687 vRet = pFormField->GetOptionLabel(nIdx).c_str(); |
| 3688 else | 3688 else |
| 3689 vRet = strval.c_str(); | 3689 vRet = strval.c_str(); |
| 3690 } | 3690 } |
| 3691 else | 3691 else |
| 3692 vRet = pFormField->GetOptionLabel(nIdx).c_str(); | 3692 vRet = pFormField->GetOptionLabel(nIdx).c_str(); |
| 3693 } | 3693 } |
| 3694 else | 3694 else |
| 3695 return FALSE; | 3695 return false; |
| 3696 | 3696 |
| 3697 return TRUE; | 3697 return true; |
| 3698 } | 3698 } |
| 3699 | 3699 |
| 3700 FX_BOOL Field::getLock(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Valu
e& vRet, CFX_WideString& sError) | 3700 bool Field::getLock(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value&
vRet, CFX_WideString& sError) |
| 3701 { | 3701 { |
| 3702 return FALSE; | 3702 return false; |
| 3703 } | 3703 } |
| 3704 | 3704 |
| 3705 FX_BOOL Field::insertItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) | 3705 bool Field::insertItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) |
| 3706 { | 3706 { |
| 3707 return TRUE; | 3707 return true; |
| 3708 } | 3708 } |
| 3709 | 3709 |
| 3710 FX_BOOL Field::isBoxChecked(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) | 3710 bool Field::isBoxChecked(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) |
| 3711 { | 3711 { |
| 3712 ASSERT(m_pDocument != NULL); | 3712 ASSERT(m_pDocument != NULL); |
| 3713 | 3713 |
| 3714 int nIndex = -1; | 3714 int nIndex = -1; |
| 3715 if (params.size() >= 1) | 3715 if (params.size() >= 1) |
| 3716 nIndex = params[0].ToInt(); | 3716 nIndex = params[0].ToInt(); |
| 3717 | 3717 |
| 3718 CFX_PtrArray FieldArray; | 3718 CFX_PtrArray FieldArray; |
| 3719 GetFormFields(m_FieldName,FieldArray); | 3719 GetFormFields(m_FieldName,FieldArray); |
| 3720 if (FieldArray.GetSize() <= 0) return FALSE; | 3720 if (FieldArray.GetSize() <= 0) return false; |
| 3721 | 3721 |
| 3722 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3722 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3723 ASSERT(pFormField != NULL); | 3723 ASSERT(pFormField != NULL); |
| 3724 | 3724 |
| 3725 if(nIndex <0 || nIndex >= pFormField->CountControls()) | 3725 if(nIndex <0 || nIndex >= pFormField->CountControls()) |
| 3726 { | 3726 { |
| 3727 vRet = FALSE; | 3727 vRet = false; |
| 3728 return FALSE; | 3728 return false; |
| 3729 } | 3729 } |
| 3730 | 3730 |
| 3731 if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) | 3731 if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) |
| 3732 || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) | 3732 || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) |
| 3733 { | 3733 { |
| 3734 if (pFormField->GetControl(nIndex)->IsChecked() !=0 ) | 3734 if (pFormField->GetControl(nIndex)->IsChecked() !=0 ) |
| 3735 vRet = TRUE; | 3735 vRet = true; |
| 3736 else | 3736 else |
| 3737 vRet = FALSE; | 3737 vRet = false; |
| 3738 } | 3738 } |
| 3739 else | 3739 else |
| 3740 vRet = FALSE; | 3740 vRet = false; |
| 3741 | 3741 |
| 3742 return TRUE; | 3742 return true; |
| 3743 } | 3743 } |
| 3744 | 3744 |
| 3745 FX_BOOL Field::isDefaultChecked(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3745 bool Field::isDefaultChecked(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) |
| 3746 { | 3746 { |
| 3747 ASSERT(m_pDocument != NULL); | 3747 ASSERT(m_pDocument != NULL); |
| 3748 | 3748 |
| 3749 int nIndex = -1; | 3749 int nIndex = -1; |
| 3750 if (params.size() >= 1) | 3750 if (params.size() >= 1) |
| 3751 nIndex = params[0].ToInt(); | 3751 nIndex = params[0].ToInt(); |
| 3752 | 3752 |
| 3753 CFX_PtrArray FieldArray; | 3753 CFX_PtrArray FieldArray; |
| 3754 GetFormFields(m_FieldName,FieldArray); | 3754 GetFormFields(m_FieldName,FieldArray); |
| 3755 if (FieldArray.GetSize() <= 0) return FALSE; | 3755 if (FieldArray.GetSize() <= 0) return false; |
| 3756 | 3756 |
| 3757 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3757 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3758 ASSERT(pFormField != NULL); | 3758 ASSERT(pFormField != NULL); |
| 3759 | 3759 |
| 3760 if(nIndex <0 || nIndex >= pFormField->CountControls()) | 3760 if(nIndex <0 || nIndex >= pFormField->CountControls()) |
| 3761 { | 3761 { |
| 3762 vRet = FALSE; | 3762 vRet = false; |
| 3763 return FALSE; | 3763 return false; |
| 3764 } | 3764 } |
| 3765 if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) | 3765 if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) |
| 3766 || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) | 3766 || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) |
| 3767 { | 3767 { |
| 3768 if (pFormField->GetControl(nIndex)->IsDefaultChecked() != 0) | 3768 if (pFormField->GetControl(nIndex)->IsDefaultChecked() != 0) |
| 3769 vRet = TRUE; | 3769 vRet = true; |
| 3770 else | 3770 else |
| 3771 vRet = FALSE; | 3771 vRet = false; |
| 3772 } | 3772 } |
| 3773 else | 3773 else |
| 3774 vRet = FALSE; | 3774 vRet = false; |
| 3775 | 3775 |
| 3776 return TRUE; | 3776 return true; |
| 3777 } | 3777 } |
| 3778 | 3778 |
| 3779 FX_BOOL Field::setAction(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) | 3779 bool Field::setAction(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value
& vRet, CFX_WideString& sError) |
| 3780 { | 3780 { |
| 3781 return TRUE; | 3781 return true; |
| 3782 } | 3782 } |
| 3783 | 3783 |
| 3784 FX_BOOL Field::setFocus(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val
ue& vRet, CFX_WideString& sError) | 3784 bool Field::setFocus(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value&
vRet, CFX_WideString& sError) |
| 3785 { | 3785 { |
| 3786 ASSERT(m_pDocument != NULL); | 3786 ASSERT(m_pDocument != NULL); |
| 3787 | 3787 |
| 3788 CFX_PtrArray FieldArray; | 3788 CFX_PtrArray FieldArray; |
| 3789 GetFormFields(m_FieldName,FieldArray); | 3789 GetFormFields(m_FieldName,FieldArray); |
| 3790 if (FieldArray.GetSize() <= 0) return FALSE; | 3790 if (FieldArray.GetSize() <= 0) return false; |
| 3791 | 3791 |
| 3792 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3792 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3793 ASSERT(pFormField != NULL); | 3793 ASSERT(pFormField != NULL); |
| 3794 | 3794 |
| 3795 int32_t nCount = pFormField->CountControls(); | 3795 int32_t nCount = pFormField->CountControls(); |
| 3796 | 3796 |
| 3797 if (nCount < 1) return FALSE; | 3797 if (nCount < 1) return false; |
| 3798 | 3798 |
| 3799 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); | 3799 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); |
| 3800 ASSERT(pInterForm != NULL); | 3800 ASSERT(pInterForm != NULL); |
| 3801 | 3801 |
| 3802 CPDFSDK_Widget* pWidget = NULL; | 3802 CPDFSDK_Widget* pWidget = NULL; |
| 3803 if (nCount == 1) | 3803 if (nCount == 1) |
| 3804 { | 3804 { |
| 3805 pWidget = pInterForm->GetWidget(pFormField->GetControl(0)); | 3805 pWidget = pInterForm->GetWidget(pFormField->GetControl(0)); |
| 3806 } | 3806 } |
| 3807 else | 3807 else |
| 3808 { | 3808 { |
| 3809 CPDFDoc_Environment* pEnv = m_pDocument->GetEnv(); | 3809 CPDFDoc_Environment* pEnv = m_pDocument->GetEnv(); |
| 3810 ASSERT(pEnv); | 3810 ASSERT(pEnv); |
| 3811 CPDF_Page* pPage = (CPDF_Page*)pEnv->FFI_GetCurrentPage(m_pDocument->Get
Document()); | 3811 CPDF_Page* pPage = (CPDF_Page*)pEnv->FFI_GetCurrentPage(m_pDocument->Get
Document()); |
| 3812 if(!pPage) | 3812 if(!pPage) |
| 3813 return FALSE; | 3813 return false; |
| 3814 if (CPDFSDK_PageView* pCurPageView = m_pDocument->GetPageView(pPage)) | 3814 if (CPDFSDK_PageView* pCurPageView = m_pDocument->GetPageView(pPage)) |
| 3815 { | 3815 { |
| 3816 for (int32_t i=0; i<nCount; i++) | 3816 for (int32_t i=0; i<nCount; i++) |
| 3817 { | 3817 { |
| 3818 if (CPDFSDK_Widget* pTempWidget = pInterForm->GetWidget(pFormFi
eld->GetControl(i))) | 3818 if (CPDFSDK_Widget* pTempWidget = pInterForm->GetWidget(pFormFi
eld->GetControl(i))) |
| 3819 { | 3819 { |
| 3820 if (pTempWidget->GetPDFPage() == pCurPageView->GetPDFPage()) | 3820 if (pTempWidget->GetPDFPage() == pCurPageView->GetPDFPage()) |
| 3821 { | 3821 { |
| 3822 pWidget = pTempWidget; | 3822 pWidget = pTempWidget; |
| 3823 break; | 3823 break; |
| 3824 } | 3824 } |
| 3825 } | 3825 } |
| 3826 } | 3826 } |
| 3827 } | 3827 } |
| 3828 } | 3828 } |
| 3829 | 3829 |
| 3830 if (pWidget) | 3830 if (pWidget) |
| 3831 { | 3831 { |
| 3832 m_pDocument->SetFocusAnnot(pWidget); | 3832 m_pDocument->SetFocusAnnot(pWidget); |
| 3833 } | 3833 } |
| 3834 | 3834 |
| 3835 return TRUE; | 3835 return true; |
| 3836 } | 3836 } |
| 3837 | 3837 |
| 3838 FX_BOOL Field::setItems(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val
ue& vRet, CFX_WideString& sError) | 3838 bool Field::setItems(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value&
vRet, CFX_WideString& sError) |
| 3839 { | 3839 { |
| 3840 return TRUE; | 3840 return true; |
| 3841 } | 3841 } |
| 3842 | 3842 |
| 3843 FX_BOOL Field::setLock(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Valu
e& vRet, CFX_WideString& sError) | 3843 bool Field::setLock(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Value&
vRet, CFX_WideString& sError) |
| 3844 { | 3844 { |
| 3845 return FALSE; | 3845 return false; |
| 3846 } | 3846 } |
| 3847 | 3847 |
| 3848 FX_BOOL Field::signatureGetModifications(IFXJS_Context* cc, const CJS_Parameters
& params, CJS_Value& vRet, CFX_WideString& sError) | 3848 bool Field::signatureGetModifications(IFXJS_Context* cc, const CJS_Parameters& p
arams, CJS_Value& vRet, CFX_WideString& sError) |
| 3849 { | 3849 { |
| 3850 return FALSE; | 3850 return false; |
| 3851 } | 3851 } |
| 3852 | 3852 |
| 3853 FX_BOOL Field::signatureGetSeedValue(IFXJS_Context* cc, const CJS_Parameters& pa
rams, CJS_Value& vRet, CFX_WideString& sError) | 3853 bool Field::signatureGetSeedValue(IFXJS_Context* cc, const CJS_Parameters& param
s, CJS_Value& vRet, CFX_WideString& sError) |
| 3854 { | 3854 { |
| 3855 return FALSE; | 3855 return false; |
| 3856 } | 3856 } |
| 3857 | 3857 |
| 3858 FX_BOOL Field::signatureInfo(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) | 3858 bool Field::signatureInfo(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V
alue& vRet, CFX_WideString& sError) |
| 3859 { | 3859 { |
| 3860 return FALSE; | 3860 return false; |
| 3861 } | 3861 } |
| 3862 | 3862 |
| 3863 FX_BOOL Field::signatureSetSeedValue(IFXJS_Context* cc, const CJS_Parameters& pa
rams, CJS_Value& vRet, CFX_WideString& sError) | 3863 bool Field::signatureSetSeedValue(IFXJS_Context* cc, const CJS_Parameters& param
s, CJS_Value& vRet, CFX_WideString& sError) |
| 3864 { | 3864 { |
| 3865 return FALSE; | 3865 return false; |
| 3866 } | 3866 } |
| 3867 | 3867 |
| 3868 FX_BOOL Field::signatureSign(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) | 3868 bool Field::signatureSign(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V
alue& vRet, CFX_WideString& sError) |
| 3869 { | 3869 { |
| 3870 return FALSE; | 3870 return false; |
| 3871 } | 3871 } |
| 3872 | 3872 |
| 3873 FX_BOOL Field::signatureValidate(IFXJS_Context* cc, const CJS_Parameters& params
, CJS_Value& vRet, CFX_WideString& sError) | 3873 bool Field::signatureValidate(IFXJS_Context* cc, const CJS_Parameters& params, C
JS_Value& vRet, CFX_WideString& sError) |
| 3874 { | 3874 { |
| 3875 return FALSE; | 3875 return false; |
| 3876 } | 3876 } |
| 3877 | 3877 |
| 3878 FX_BOOL Field::source(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) | 3878 bool Field::source(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError) |
| 3879 { | 3879 { |
| 3880 if (vp.IsGetting()) | 3880 if (vp.IsGetting()) |
| 3881 { | 3881 { |
| 3882 vp << (CJS_Object*)NULL; | 3882 vp << (CJS_Object*)NULL; |
| 3883 } | 3883 } |
| 3884 | 3884 |
| 3885 return TRUE; | 3885 return true; |
| 3886 } | 3886 } |
| 3887 | 3887 |
| 3888 /////////////////////////////////////////// delay //////////////////////////////
/////////////// | 3888 /////////////////////////////////////////// delay //////////////////////////////
/////////////// |
| 3889 | 3889 |
| 3890 void Field::AddDelay_Int(enum FIELD_PROP prop, int32_t n) | 3890 void Field::AddDelay_Int(enum FIELD_PROP prop, int32_t n) |
| 3891 { | 3891 { |
| 3892 ASSERT(m_pJSDoc != NULL); | 3892 ASSERT(m_pJSDoc != NULL); |
| 3893 | 3893 |
| 3894 CJS_DelayData* pNewData = new CJS_DelayData; | 3894 CJS_DelayData* pNewData = new CJS_DelayData; |
| 3895 pNewData->sFieldName = m_FieldName; | 3895 pNewData->sFieldName = m_FieldName; |
| (...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4107 | 4107 |
| 4108 #define JS_FIELD_MINWIDTH 1 | 4108 #define JS_FIELD_MINWIDTH 1 |
| 4109 #define JS_FIELD_MINHEIGHT 1 | 4109 #define JS_FIELD_MINHEIGHT 1 |
| 4110 | 4110 |
| 4111 void Field::AddField(CPDFSDK_Document* pDocument, int nPageIndex, int nFieldType
, | 4111 void Field::AddField(CPDFSDK_Document* pDocument, int nPageIndex, int nFieldType
, |
| 4112 const CFX_WideString& sName, const CPDF_Rect& rcCoords) | 4112 const CFX_WideString& sName, const CPDF_Rect& rcCoords) |
| 4113 { | 4113 { |
| 4114 //Not supported. | 4114 //Not supported. |
| 4115 } | 4115 } |
| 4116 | 4116 |
| OLD | NEW |