| 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" |
| 11 #include "../../include/javascript/JS_Value.h" | 11 #include "../../include/javascript/JS_Value.h" |
| 12 #include "../../include/javascript/Field.h" | 12 #include "../../include/javascript/Field.h" |
| 13 #include "../../include/javascript/JS_EventHandler.h" | 13 #include "../../include/javascript/JS_EventHandler.h" |
| 14 #include "../../include/javascript/JS_Context.h" | 14 #include "../../include/javascript/JS_Context.h" |
| 15 #include "../../include/javascript/JS_Runtime.h" | 15 #include "../../include/javascript/JS_Runtime.h" |
| 16 #include "../../include/javascript/Document.h" | 16 #include "../../include/javascript/Document.h" |
| 17 #include "../../include/javascript/color.h" | 17 #include "../../include/javascript/color.h" |
| 18 #include "../../include/javascript/PublicMethods.h" | 18 #include "../../include/javascript/PublicMethods.h" |
| 19 #include "../../include/javascript/Icon.h" | 19 #include "../../include/javascript/Icon.h" |
| 20 | 20 |
| 21 | 21 |
| 22 /* ---------------------- Field ---------------------- */ | 22 /* ---------------------- Field ---------------------- */ |
| 23 | 23 |
| 24 BEGIN_JS_STATIC_CONST(CJS_Field) | 24 BEGIN_JS_STATIC_CONST(CJS_Field) |
| 25 END_JS_STATIC_CONST() | 25 END_JS_STATIC_CONST() |
| 26 | 26 |
| 27 BEGIN_JS_STATIC_PROP(CJS_Field) | 27 BEGIN_JS_STATIC_PROP(CJS_Field) |
| 28 » JS_STATIC_PROP_ENTRY(alignment) | 28 JS_STATIC_PROP_ENTRY(alignment) |
| 29 » JS_STATIC_PROP_ENTRY(borderStyle) | 29 JS_STATIC_PROP_ENTRY(borderStyle) |
| 30 » JS_STATIC_PROP_ENTRY(buttonAlignX) | 30 JS_STATIC_PROP_ENTRY(buttonAlignX) |
| 31 » JS_STATIC_PROP_ENTRY(buttonAlignY) | 31 JS_STATIC_PROP_ENTRY(buttonAlignY) |
| 32 » JS_STATIC_PROP_ENTRY(buttonFitBounds) | 32 JS_STATIC_PROP_ENTRY(buttonFitBounds) |
| 33 » JS_STATIC_PROP_ENTRY(buttonPosition) | 33 JS_STATIC_PROP_ENTRY(buttonPosition) |
| 34 » JS_STATIC_PROP_ENTRY(buttonScaleHow) | 34 JS_STATIC_PROP_ENTRY(buttonScaleHow) |
| 35 » JS_STATIC_PROP_ENTRY(buttonScaleWhen) | 35 JS_STATIC_PROP_ENTRY(buttonScaleWhen) |
| 36 » JS_STATIC_PROP_ENTRY(calcOrderIndex) | 36 JS_STATIC_PROP_ENTRY(calcOrderIndex) |
| 37 » JS_STATIC_PROP_ENTRY(charLimit) | 37 JS_STATIC_PROP_ENTRY(charLimit) |
| 38 » JS_STATIC_PROP_ENTRY(comb) | 38 JS_STATIC_PROP_ENTRY(comb) |
| 39 » JS_STATIC_PROP_ENTRY(commitOnSelChange) | 39 JS_STATIC_PROP_ENTRY(commitOnSelChange) |
| 40 » JS_STATIC_PROP_ENTRY(currentValueIndices) | 40 JS_STATIC_PROP_ENTRY(currentValueIndices) |
| 41 » JS_STATIC_PROP_ENTRY(defaultStyle) | 41 JS_STATIC_PROP_ENTRY(defaultStyle) |
| 42 » JS_STATIC_PROP_ENTRY(defaultValue) | 42 JS_STATIC_PROP_ENTRY(defaultValue) |
| 43 » JS_STATIC_PROP_ENTRY(doNotScroll) | 43 JS_STATIC_PROP_ENTRY(doNotScroll) |
| 44 » JS_STATIC_PROP_ENTRY(doNotSpellCheck) | 44 JS_STATIC_PROP_ENTRY(doNotSpellCheck) |
| 45 » JS_STATIC_PROP_ENTRY(delay) | 45 JS_STATIC_PROP_ENTRY(delay) |
| 46 » JS_STATIC_PROP_ENTRY(display) | 46 JS_STATIC_PROP_ENTRY(display) |
| 47 » JS_STATIC_PROP_ENTRY(doc) | 47 JS_STATIC_PROP_ENTRY(doc) |
| 48 » JS_STATIC_PROP_ENTRY(editable) | 48 JS_STATIC_PROP_ENTRY(editable) |
| 49 » JS_STATIC_PROP_ENTRY(exportValues) | 49 JS_STATIC_PROP_ENTRY(exportValues) |
| 50 » JS_STATIC_PROP_ENTRY(hidden) | 50 JS_STATIC_PROP_ENTRY(hidden) |
| 51 » JS_STATIC_PROP_ENTRY(fileSelect) | 51 JS_STATIC_PROP_ENTRY(fileSelect) |
| 52 » JS_STATIC_PROP_ENTRY(fillColor) | 52 JS_STATIC_PROP_ENTRY(fillColor) |
| 53 » JS_STATIC_PROP_ENTRY(lineWidth) | 53 JS_STATIC_PROP_ENTRY(lineWidth) |
| 54 » JS_STATIC_PROP_ENTRY(highlight) | 54 JS_STATIC_PROP_ENTRY(highlight) |
| 55 » JS_STATIC_PROP_ENTRY(multiline) | 55 JS_STATIC_PROP_ENTRY(multiline) |
| 56 » JS_STATIC_PROP_ENTRY(multipleSelection) | 56 JS_STATIC_PROP_ENTRY(multipleSelection) |
| 57 » JS_STATIC_PROP_ENTRY(name) | 57 JS_STATIC_PROP_ENTRY(name) |
| 58 » JS_STATIC_PROP_ENTRY(numItems) | 58 JS_STATIC_PROP_ENTRY(numItems) |
| 59 » JS_STATIC_PROP_ENTRY(page) | 59 JS_STATIC_PROP_ENTRY(page) |
| 60 » JS_STATIC_PROP_ENTRY(password) | 60 JS_STATIC_PROP_ENTRY(password) |
| 61 » JS_STATIC_PROP_ENTRY(print) | 61 JS_STATIC_PROP_ENTRY(print) |
| 62 » JS_STATIC_PROP_ENTRY(radiosInUnison) | 62 JS_STATIC_PROP_ENTRY(radiosInUnison) |
| 63 » JS_STATIC_PROP_ENTRY(readonly) | 63 JS_STATIC_PROP_ENTRY(readonly) |
| 64 » JS_STATIC_PROP_ENTRY(rect) | 64 JS_STATIC_PROP_ENTRY(rect) |
| 65 » JS_STATIC_PROP_ENTRY(required) | 65 JS_STATIC_PROP_ENTRY(required) |
| 66 » JS_STATIC_PROP_ENTRY(richText) | 66 JS_STATIC_PROP_ENTRY(richText) |
| 67 » JS_STATIC_PROP_ENTRY(richValue) | 67 JS_STATIC_PROP_ENTRY(richValue) |
| 68 » JS_STATIC_PROP_ENTRY(rotation) | 68 JS_STATIC_PROP_ENTRY(rotation) |
| 69 » JS_STATIC_PROP_ENTRY(strokeColor) | 69 JS_STATIC_PROP_ENTRY(strokeColor) |
| 70 » JS_STATIC_PROP_ENTRY(style) | 70 JS_STATIC_PROP_ENTRY(style) |
| 71 » JS_STATIC_PROP_ENTRY(submitName) | 71 JS_STATIC_PROP_ENTRY(submitName) |
| 72 » JS_STATIC_PROP_ENTRY(textColor) | 72 JS_STATIC_PROP_ENTRY(textColor) |
| 73 » JS_STATIC_PROP_ENTRY(textFont) | 73 JS_STATIC_PROP_ENTRY(textFont) |
| 74 » JS_STATIC_PROP_ENTRY(textSize) | 74 JS_STATIC_PROP_ENTRY(textSize) |
| 75 » JS_STATIC_PROP_ENTRY(type) | 75 JS_STATIC_PROP_ENTRY(type) |
| 76 » JS_STATIC_PROP_ENTRY(userName) | 76 JS_STATIC_PROP_ENTRY(userName) |
| 77 » JS_STATIC_PROP_ENTRY(value) | 77 JS_STATIC_PROP_ENTRY(value) |
| 78 » JS_STATIC_PROP_ENTRY(valueAsString) | 78 JS_STATIC_PROP_ENTRY(valueAsString) |
| 79 » JS_STATIC_PROP_ENTRY(source) | 79 JS_STATIC_PROP_ENTRY(source) |
| 80 END_JS_STATIC_PROP() | 80 END_JS_STATIC_PROP() |
| 81 | 81 |
| 82 BEGIN_JS_STATIC_METHOD(CJS_Field) | 82 BEGIN_JS_STATIC_METHOD(CJS_Field) |
| 83 » JS_STATIC_METHOD_ENTRY(browseForFileToSubmit) | 83 JS_STATIC_METHOD_ENTRY(browseForFileToSubmit) |
| 84 » JS_STATIC_METHOD_ENTRY(buttonGetCaption) | 84 JS_STATIC_METHOD_ENTRY(buttonGetCaption) |
| 85 » JS_STATIC_METHOD_ENTRY(buttonGetIcon) | 85 JS_STATIC_METHOD_ENTRY(buttonGetIcon) |
| 86 » JS_STATIC_METHOD_ENTRY(buttonImportIcon) | 86 JS_STATIC_METHOD_ENTRY(buttonImportIcon) |
| 87 » JS_STATIC_METHOD_ENTRY(buttonSetCaption) | 87 JS_STATIC_METHOD_ENTRY(buttonSetCaption) |
| 88 » JS_STATIC_METHOD_ENTRY(buttonSetIcon) | 88 JS_STATIC_METHOD_ENTRY(buttonSetIcon) |
| 89 » JS_STATIC_METHOD_ENTRY(checkThisBox) | 89 JS_STATIC_METHOD_ENTRY(checkThisBox) |
| 90 » JS_STATIC_METHOD_ENTRY(clearItems) | 90 JS_STATIC_METHOD_ENTRY(clearItems) |
| 91 » JS_STATIC_METHOD_ENTRY(defaultIsChecked) | 91 JS_STATIC_METHOD_ENTRY(defaultIsChecked) |
| 92 » JS_STATIC_METHOD_ENTRY(deleteItemAt) | 92 JS_STATIC_METHOD_ENTRY(deleteItemAt) |
| 93 » JS_STATIC_METHOD_ENTRY(getArray ) | 93 JS_STATIC_METHOD_ENTRY(getArray ) |
| 94 » JS_STATIC_METHOD_ENTRY(getItemAt) | 94 JS_STATIC_METHOD_ENTRY(getItemAt) |
| 95 » JS_STATIC_METHOD_ENTRY(getLock) | 95 JS_STATIC_METHOD_ENTRY(getLock) |
| 96 » JS_STATIC_METHOD_ENTRY(insertItemAt) | 96 JS_STATIC_METHOD_ENTRY(insertItemAt) |
| 97 » JS_STATIC_METHOD_ENTRY(isBoxChecked) | 97 JS_STATIC_METHOD_ENTRY(isBoxChecked) |
| 98 » JS_STATIC_METHOD_ENTRY(isDefaultChecked) | 98 JS_STATIC_METHOD_ENTRY(isDefaultChecked) |
| 99 » JS_STATIC_METHOD_ENTRY(setAction) | 99 JS_STATIC_METHOD_ENTRY(setAction) |
| 100 » JS_STATIC_METHOD_ENTRY(setFocus) | 100 JS_STATIC_METHOD_ENTRY(setFocus) |
| 101 » JS_STATIC_METHOD_ENTRY(setItems) | 101 JS_STATIC_METHOD_ENTRY(setItems) |
| 102 » JS_STATIC_METHOD_ENTRY(setLock) | 102 JS_STATIC_METHOD_ENTRY(setLock) |
| 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 FX_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) |
| 142 { | 142 { |
| 143 » int iStart = strFieldNameParsed.find_last_of(L'.'); | 143 int iStart = strFieldNameParsed.find_last_of(L'.'); |
| 144 » if (iStart == -1) | 144 if (iStart == -1) |
| 145 » { | 145 { |
| 146 » » strFieldName = strFieldNameParsed; | 146 strFieldName = strFieldNameParsed; |
| 147 » » iControlNo = -1; | 147 iControlNo = -1; |
| 148 » » return; | 148 return; |
| 149 » } | 149 } |
| 150 » std::wstring suffixal = strFieldNameParsed.substr(iStart+1); | 150 std::wstring suffixal = strFieldNameParsed.substr(iStart+1); |
| 151 » iControlNo = FXSYS_wtoi(suffixal.c_str()); | 151 iControlNo = FXSYS_wtoi(suffixal.c_str()); |
| 152 » if (iControlNo == 0) | 152 if (iControlNo == 0) |
| 153 » { | 153 { |
| 154 » » int iStart; | 154 int iStart; |
| 155 » » while((iStart = suffixal.find_last_of(L" ")) != -1) | 155 while((iStart = suffixal.find_last_of(L" ")) != -1) |
| 156 » » { | 156 { |
| 157 » » » suffixal.erase(iStart,1); | 157 suffixal.erase(iStart,1); |
| 158 » » } | 158 } |
| 159 | 159 |
| 160 » » if (suffixal.compare(L"0") != 0) | 160 if (suffixal.compare(L"0") != 0) |
| 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 FX_BOOL Field::AttachField(Document* pDocument, const CFX_WideString& csFieldNam
e) |
| 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, csField
Name)) | 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 bRefresh) | 237 FX_BOOL bChangeMark, FX_BOOL bResetAP, FX_BOOL bRefr
esh) |
| 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->GetInterF
orm(); | 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_
TEXTFIELD) | 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*)widge
ts.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 FX_BOOL bFormated = FALSE; |
| 259 » » » » CFX_WideString sValue = pWidget->OnFormat(bForma
ted); | 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*)widge
ts.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 bRefresh) | 298 FX_BOOL bChangeMark, FX_BOOL bResetAP, FX_BOOL bRefr
esh) |
| 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->GetInterF
orm(); | 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 == FI
ELDTYPE_TEXTFIELD) | 313 if (nFieldType == FIELDTYPE_COMBOBOX || nFieldType == FIELDTYPE_TEXT
FIELD) |
| 314 » » » { | 314 { |
| 315 » » » » FX_BOOL bFormated = FALSE; | 315 FX_BOOL bFormated = FALSE; |
| 316 » » » » CFX_WideString sValue = pWidget->OnFormat(bForma
ted); | 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->GetInterF
orm(); | 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 FX_BOOL Field::ValueIsOccur(CPDF_FormField* pFormField, CFX_WideString csOptLabe
l) |
| 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 » ASSERT(pFormField != NULL); | 368 if (!pFormField->CountControls() || m_nFormControlIndex >= pFormField->Count
Controls()) |
| 369 » if(!pFormField->CountControls() || m_nFormControlIndex>=pFormField->Coun
tControls()) 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 » else | 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 FX_BOOL Field::alignment(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 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_nFormCon
trolIndex, alignStr); | 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.Element
At(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 FX_BOOL Field::borderStyle(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 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_nFormC
ontrolIndex, 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.Element
At(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, GetSmartFieldCo
ntrol(pFormField)); | 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") |
| 507 » » nBorderStyle = BBS_SOLID; | 507 nBorderStyle = BBS_SOLID; |
| 508 » else if (string == "beveled") | 508 else if (string == "beveled") |
| 509 » » nBorderStyle = BBS_BEVELED; | 509 nBorderStyle = BBS_BEVELED; |
| 510 » else if (string == "dashed") | 510 else if (string == "dashed") |
| 511 » » nBorderStyle = BBS_DASH; | 511 nBorderStyle = BBS_DASH; |
| 512 » else if (string == "inset") | 512 else if (string == "inset") |
| 513 » » nBorderStyle = BBS_INSET; | 513 nBorderStyle = BBS_INSET; |
| 514 » else if (string == "underline") | 514 else if (string == "underline") |
| 515 » » nBorderStyle = BBS_UNDERLINE; | 515 nBorderStyle = BBS_UNDERLINE; |
| 516 » else return; | 516 else return; |
| 517 | 517 |
| 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.Element
At(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 FX_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(pDocumen
t, pFormField->GetControl(j))) | 531 if (CPDFSDK_Widget* pWidget = GetWidget(pDocument, pFormField->G
etControl(j))) |
| 532 » » » » { | 532 { |
| 533 » » » » » if (pWidget->GetBorderStyle() != nBorder
Style) | 533 if (pWidget->GetBorderStyle() != nBorderStyle) |
| 534 » » » » » { | 534 { |
| 535 » » » » » » pWidget->SetBorderStyle(nBorderS
tyle); | 535 pWidget->SetBorderStyle(nBorderStyle); |
| 536 » » » » » » bSet = TRUE; | 536 bSet = TRUE; |
| 537 » » » » » } | 537 } |
| 538 » » » » } | 538 } |
| 539 » » » } | 539 } |
| 540 » » » if (bSet) UpdateFormField(pDocument, pFormField, TRUE, T
RUE, 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->GetCont
rol(nControlIndex)) | 545 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 546 » » » { | 546 { |
| 547 » » » » if (CPDFSDK_Widget* pWidget = GetWidget(pDocumen
t, pFormControl)) | 547 if (CPDFSDK_Widget* pWidget = GetWidget(pDocument, pFormControl)
) |
| 548 » » » » { | 548 { |
| 549 » » » » » if (pWidget->GetBorderStyle() != nBorder
Style) | 549 if (pWidget->GetBorderStyle() != nBorderStyle) |
| 550 » » » » » { | 550 { |
| 551 » » » » » » pWidget->SetBorderStyle(nBorderS
tyle); | 551 pWidget->SetBorderStyle(nBorderStyle); |
| 552 » » » » » » UpdateFormControl(pDocument, pFo
rmControl, TRUE, TRUE, TRUE); | 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 FX_BOOL Field::buttonAlignX(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) |
| 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_nForm
ControlIndex, 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.Element
At(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 FX_BOOL Field::buttonAlignY(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) |
| 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_nForm
ControlIndex, 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.Element
At(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 FX_BOOL Field::buttonFitBounds(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStr
ing& 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_nF
ormControlIndex, 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.Element
At(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 FX_BOOL Field::buttonPosition(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& 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_nFo
rmControlIndex, 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.Element
At(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 FX_BOOL Field::buttonScaleHow(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& 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_nFo
rmControlIndex, 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.Element
At(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 FX_BOOL Field::buttonScaleWhen(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStr
ing& 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_nF
ormControlIndex, 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.Elemen
tAt(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 FX_BOOL Field::calcOrderIndex(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& 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_nFo
rmControlIndex, 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.Element
At(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 && pFormFie
ld->GetFieldType() != 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(pFormFiel
d); | 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 FX_BOOL Field::charLimit(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 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_nFormCon
trolIndex, nVP); | 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.Element
At(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 FX_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_nFormControlI
ndex, 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.Element
At(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 FX_BOOL Field::commitOnSelChange(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideS
tring& 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_
nFormControlIndex, 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.Element
At(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 && pFormFie
ld->GetFieldType() != 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 FX_BOOL Field::currentValueIndices(IFXJS_Context* cc, CJS_PropValue& vp, CFX_Wid
eString& 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()) |
| 1066 » » { | 1066 { |
| 1067 » » » CJS_Array SelArray(m_isolate); | 1067 CJS_Array SelArray(m_isolate); |
| 1068 » » » CJS_Value SelValue(m_isolate); | 1068 CJS_Value SelValue(m_isolate); |
| 1069 » » » int iSelecting; | 1069 int iSelecting; |
| 1070 » » » vp >> SelArray; | 1070 vp >> SelArray; |
| 1071 » » » for (int i=0,sz=SelArray.GetLength(); i<sz; i++) | 1071 for (int i=0,sz=SelArray.GetLength(); i<sz; i++) |
| 1072 » » » { | 1072 { |
| 1073 » » » » SelArray.GetElement(i,SelValue); | 1073 SelArray.GetElement(i,SelValue); |
| 1074 » » » » iSelecting = SelValue.ToInt(); | 1074 iSelecting = SelValue.ToInt(); |
| 1075 » » » » array.Add(iSelecting); | 1075 array.Add(iSelecting); |
| 1076 » » » } | 1076 } |
| 1077 » » } | 1077 } |
| 1078 | 1078 |
| 1079 » » if (m_bDelay) | 1079 if (m_bDelay) |
| 1080 » » { | 1080 { |
| 1081 » » » AddDelay_WordArray(FP_CURRENTVALUEINDICES, array); | 1081 AddDelay_WordArray(FP_CURRENTVALUEINDICES, array); |
| 1082 » » } | 1082 } |
| 1083 » » else | 1083 else |
| 1084 » » { | 1084 { |
| 1085 » » » Field::SetCurrentValueIndices(m_pDocument, m_FieldName,
m_nFormControlIndex, 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.Element
At(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 && pFormFie
ld->GetFieldType() != 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,pForm
Field->GetSelectedIndex(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_DWo
rdArray& 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.Element
At(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->IsItemSelected(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 FX_BOOL Field::defaultStyle(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) |
| 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 FX_BOOL Field::defaultValue(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) |
| 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_nForm
ControlIndex, 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.Element
At(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& st
ring) | 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 FX_BOOL Field::doNotScroll(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 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_nFormC
ontrolIndex, 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.Element
At(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 FX_BOOL Field::doNotSpellCheck(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStr
ing& 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.Element
At(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(FX_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 FX_BOOL Field::delay(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 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 FX_BOOL Field::display(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sEr
ror) |
| 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_nFormContr
olIndex, 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.Element
At(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-
>GetInterForm(); | 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(GetSmartFieldCon
trol(pFormField)); | 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->GetInterF
orm(); | 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.Element
At(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 FX_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->Get
Control(j); | 1413 CPDF_FormControl* pFormControl = pFormField->GetControl(j); |
| 1414 » » » » ASSERT(pFormControl != NULL); | 1414 ASSERT(pFormControl != NULL); |
| 1415 | 1415 |
| 1416 » » » » if (CPDFSDK_Widget* pWidget = pInterForm->GetWid
get(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 { |
| 1421 » » » » » case 0: | 1421 case 0: |
| 1422 » » » » » » dwFlag &= (~ANNOTFLAG_INVISIBLE)
; | 1422 dwFlag &= (~ANNOTFLAG_INVISIBLE); |
| 1423 » » » » » » dwFlag &= (~ANNOTFLAG_HIDDEN); | 1423 dwFlag &= (~ANNOTFLAG_HIDDEN); |
| 1424 » » » » » » dwFlag &= (~ANNOTFLAG_NOVIEW); | 1424 dwFlag &= (~ANNOTFLAG_NOVIEW); |
| 1425 » » » » » » dwFlag |= ANNOTFLAG_PRINT; | 1425 dwFlag |= ANNOTFLAG_PRINT; |
| 1426 » » » » » » break; | 1426 break; |
| 1427 » » » » » case 1: | 1427 case 1: |
| 1428 » » » » » » dwFlag &= (~ANNOTFLAG_INVISIBLE)
; | 1428 dwFlag &= (~ANNOTFLAG_INVISIBLE); |
| 1429 » » » » » » dwFlag &= (~ANNOTFLAG_NOVIEW); | 1429 dwFlag &= (~ANNOTFLAG_NOVIEW); |
| 1430 » » » » » » dwFlag |= (ANNOTFLAG_HIDDEN | AN
NOTFLAG_PRINT); | 1430 dwFlag |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT); |
| 1431 » » » » » » break; | 1431 break; |
| 1432 » » » » » case 2: | 1432 case 2: |
| 1433 » » » » » » dwFlag &= (~ANNOTFLAG_INVISIBLE)
; | 1433 dwFlag &= (~ANNOTFLAG_INVISIBLE); |
| 1434 » » » » » » dwFlag &= (~ANNOTFLAG_PRINT); | 1434 dwFlag &= (~ANNOTFLAG_PRINT); |
| 1435 » » » » » » dwFlag &= (~ANNOTFLAG_HIDDEN); | 1435 dwFlag &= (~ANNOTFLAG_HIDDEN); |
| 1436 » » » » » » dwFlag &= (~ANNOTFLAG_NOVIEW); | 1436 dwFlag &= (~ANNOTFLAG_NOVIEW); |
| 1437 » » » » » » break; | 1437 break; |
| 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, F
ALSE, 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->GetCont
rol(nControlIndex)) | 1458 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 1459 » » » { | 1459 { |
| 1460 » » » » if (CPDFSDK_Widget* pWidget = pInterForm->GetWid
get(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(); |
| 1464 » » » » » switch (number) | 1464 switch (number) |
| 1465 » » » » » { | 1465 { |
| 1466 » » » » » case 0: | 1466 case 0: |
| 1467 » » » » » » dwFlag &= (~ANNOTFLAG_INVISIBLE)
; | 1467 dwFlag &= (~ANNOTFLAG_INVISIBLE); |
| 1468 » » » » » » dwFlag &= (~ANNOTFLAG_HIDDEN); | 1468 dwFlag &= (~ANNOTFLAG_HIDDEN); |
| 1469 » » » » » » dwFlag &= (~ANNOTFLAG_NOVIEW); | 1469 dwFlag &= (~ANNOTFLAG_NOVIEW); |
| 1470 » » » » » » dwFlag |= ANNOTFLAG_PRINT; | 1470 dwFlag |= ANNOTFLAG_PRINT; |
| 1471 » » » » » » break; | 1471 break; |
| 1472 » » » » » case 1: | 1472 case 1: |
| 1473 » » » » » » dwFlag &= (~ANNOTFLAG_INVISIBLE)
; | 1473 dwFlag &= (~ANNOTFLAG_INVISIBLE); |
| 1474 » » » » » » dwFlag &= (~ANNOTFLAG_NOVIEW); | 1474 dwFlag &= (~ANNOTFLAG_NOVIEW); |
| 1475 » » » » » » dwFlag |= (ANNOTFLAG_HIDDEN | AN
NOTFLAG_PRINT); | 1475 dwFlag |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT); |
| 1476 » » » » » » break; | 1476 break; |
| 1477 » » » » » case 2: | 1477 case 2: |
| 1478 » » » » » » dwFlag &= (~ANNOTFLAG_INVISIBLE)
; | 1478 dwFlag &= (~ANNOTFLAG_INVISIBLE); |
| 1479 » » » » » » dwFlag &= (~ANNOTFLAG_PRINT); | 1479 dwFlag &= (~ANNOTFLAG_PRINT); |
| 1480 » » » » » » dwFlag &= (~ANNOTFLAG_HIDDEN); | 1480 dwFlag &= (~ANNOTFLAG_HIDDEN); |
| 1481 » » » » » » dwFlag &= (~ANNOTFLAG_NOVIEW); | 1481 dwFlag &= (~ANNOTFLAG_NOVIEW); |
| 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, pFo
rmControl, 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 FX_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 FX_BOOL Field::editable(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 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.Element
At(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 FX_BOOL Field::exportValues(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString
& sError) |
| 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) return FALSE; | 1546 if (FieldArray.GetSize() <= 0) |
| 1547 | 1547 return FALSE; |
| 1548 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1548 |
| 1549 » ASSERT(pFormField != NULL); | 1549 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1550 | 1550 if (pFormField->GetFieldType() != FIELDTYPE_CHECKBOX && |
| 1551 » if (pFormField->GetFieldType() != FIELDTYPE_CHECKBOX && | 1551 pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON) |
| 1552 » » pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON) | 1552 return FALSE; |
| 1553 » » return FALSE; | 1553 |
| 1554 | 1554 if (vp.IsSetting()) |
| 1555 » if (vp.IsSetting()) | 1555 { |
| 1556 » { | 1556 if (!m_bCanSet) |
| 1557 » » if (!m_bCanSet) return FALSE; | 1557 return FALSE; |
| 1558 » » if (!vp.IsArrayObject())return FALSE; | 1558 |
| 1559 » } | 1559 if (!vp.IsArrayObject()) |
| 1560 » else | 1560 return FALSE; |
| 1561 » { | 1561 } |
| 1562 » » CJS_Array ExportValusArray(m_isolate); | 1562 else |
| 1563 | 1563 { |
| 1564 » » if (m_nFormControlIndex < 0) | 1564 CJS_Array ExportValusArray(m_isolate); |
| 1565 » » { | 1565 if (m_nFormControlIndex < 0) |
| 1566 » » » for (int i=0,sz=pFormField->CountControls(); i<sz; i++) | 1566 { |
| 1567 » » » { | 1567 for (int i=0,sz=pFormField->CountControls(); i<sz; i++) |
| 1568 » » » » CPDF_FormControl* pFormControl = pFormField->Get
Control(i); | 1568 { |
| 1569 » » » » ASSERT(pFormControl != NULL); | 1569 CPDF_FormControl* pFormControl = pFormField->GetControl(i); |
| 1570 | 1570 ExportValusArray.SetElement(i, CJS_Value(m_isolate,pFormControl-
>GetExportValue().c_str())); |
| 1571 » » » » ExportValusArray.SetElement(i, CJS_Value(m_isola
te,pFormControl->GetExportValue().c_str())); | 1571 } |
| 1572 » » » } | 1572 } |
| 1573 » » } | 1573 else |
| 1574 » » else | 1574 { |
| 1575 » » { | 1575 if (m_nFormControlIndex >= pFormField->CountControls()) |
| 1576 » » » if(m_nFormControlIndex >= pFormField->CountControls()) r
eturn FALSE; | 1576 return FALSE; |
| 1577 » » » CPDF_FormControl* pFormControl = pFormField->GetControl(
m_nFormControlIndex); | 1577 |
| 1578 » » » if (!pFormControl) return FALSE; | 1578 CPDF_FormControl* pFormControl = pFormField->GetControl(m_nFormContr
olIndex); |
| 1579 | 1579 if (!pFormControl) |
| 1580 » » » ExportValusArray.SetElement(0, CJS_Value(m_isolate,pForm
Control->GetExportValue().c_str())); | 1580 return FALSE; |
| 1581 » » } | 1581 |
| 1582 | 1582 ExportValusArray.SetElement(0, CJS_Value(m_isolate,pFormControl->Get
ExportValue().c_str())); |
| 1583 » » vp << ExportValusArray; | 1583 } |
| 1584 » } | 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 FX_BOOL Field::fileSelect(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 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) return FALSE; | 1595 if (FieldArray.GetSize() <= 0) |
| 1596 | 1596 return FALSE; |
| 1597 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 1597 |
| 1598 » ASSERT(pFormField != NULL); | 1598 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1599 | 1599 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 1600 » if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 1600 return FALSE; |
| 1601 » » return FALSE; | 1601 |
| 1602 | 1602 if (vp.IsSetting()) |
| 1603 » if (vp.IsSetting()) | 1603 { |
| 1604 » { | 1604 if (!m_bCanSet) |
| 1605 » » if (!m_bCanSet) return FALSE; | 1605 return FALSE; |
| 1606 | 1606 |
| 1607 » » bool bVP; | 1607 bool bVP; |
| 1608 » » vp >> bVP; | 1608 vp >> bVP; |
| 1609 | 1609 } |
| 1610 » } | 1610 else |
| 1611 » else | 1611 { |
| 1612 » { | 1612 if (pFormField->GetFieldFlags() & FIELDFLAG_FILESELECT) |
| 1613 » » if (pFormField->GetFieldFlags() & FIELDFLAG_FILESELECT) | 1613 vp << true; |
| 1614 » » » vp << true; | 1614 else |
| 1615 » » else | 1615 vp << false; |
| 1616 » » » vp << false; | 1616 } |
| 1617 » } | 1617 return TRUE; |
| 1618 | |
| 1619 » return TRUE; | |
| 1620 } | 1618 } |
| 1621 | 1619 |
| 1622 FX_BOOL Field::fillColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 1620 FX_BOOL Field::fillColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 1623 { | 1621 { |
| 1624 » ASSERT(m_pDocument != NULL); | 1622 ASSERT(m_pDocument != NULL); |
| 1625 | 1623 |
| 1626 » CJS_Array crArray(m_isolate); | 1624 CJS_Array crArray(m_isolate); |
| 1627 | 1625 |
| 1628 » CFX_PtrArray FieldArray; | 1626 CFX_PtrArray FieldArray; |
| 1629 » GetFormFields(m_FieldName,FieldArray); | 1627 GetFormFields(m_FieldName, FieldArray); |
| 1630 » if (FieldArray.GetSize() <= 0) return FALSE; | 1628 if (FieldArray.GetSize() <= 0) |
| 1631 | 1629 return FALSE; |
| 1632 » if (vp.IsSetting()) | 1630 |
| 1633 » { | 1631 if (vp.IsSetting()) |
| 1634 » » if (!m_bCanSet) return FALSE; | 1632 { |
| 1635 » » if (!vp.IsArrayObject()) return FALSE; | 1633 if (!m_bCanSet) |
| 1636 | 1634 return FALSE; |
| 1637 » » vp >> crArray; | 1635 |
| 1638 | 1636 if (!vp.IsArrayObject()) |
| 1639 » » CPWL_Color color; | 1637 return FALSE; |
| 1640 » » color::ConvertArrayToPWLColor(crArray, color); | 1638 |
| 1641 | 1639 vp >> crArray; |
| 1642 » » if (m_bDelay) | 1640 |
| 1643 » » { | 1641 CPWL_Color color; |
| 1644 » » » AddDelay_Color(FP_FILLCOLOR, color); | 1642 color::ConvertArrayToPWLColor(crArray, color); |
| 1645 » » } | 1643 if (m_bDelay) |
| 1646 » » else | 1644 { |
| 1647 » » { | 1645 AddDelay_Color(FP_FILLCOLOR, color); |
| 1648 » » » Field::SetFillColor(m_pDocument, m_FieldName, m_nFormCon
trolIndex, color); | 1646 } |
| 1649 » » } | 1647 else |
| 1650 » } | 1648 { |
| 1651 » else | 1649 Field::SetFillColor(m_pDocument, m_FieldName, m_nFormControlIndex, c
olor); |
| 1652 » { | 1650 } |
| 1653 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 1651 } |
| 1654 » » ASSERT(pFormField != NULL); | 1652 else |
| 1655 | 1653 { |
| 1656 » » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField
); | 1654 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1657 » » if (!pFormControl)return FALSE; | 1655 ASSERT(pFormField != NULL); |
| 1658 | 1656 |
| 1659 » » int iColorType; | 1657 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 1660 » » pFormControl->GetBackgroundColor(iColorType); | 1658 if (!pFormControl) |
| 1661 | 1659 return FALSE; |
| 1662 » » CPWL_Color color; | 1660 |
| 1663 | 1661 int iColorType; |
| 1664 » » if (iColorType == COLORTYPE_TRANSPARENT) | 1662 pFormControl->GetBackgroundColor(iColorType); |
| 1665 » » { | 1663 |
| 1666 » » » color = CPWL_Color(COLORTYPE_TRANSPARENT); | 1664 CPWL_Color color; |
| 1667 » » } | 1665 if (iColorType == COLORTYPE_TRANSPARENT) |
| 1668 » » else if (iColorType == COLORTYPE_GRAY) | 1666 { |
| 1669 » » { | 1667 color = CPWL_Color(COLORTYPE_TRANSPARENT); |
| 1670 » » » color = CPWL_Color(COLORTYPE_GRAY, pFormControl->GetOrig
inalBackgroundColor(0)); | 1668 } |
| 1671 » » } | 1669 else if (iColorType == COLORTYPE_GRAY) |
| 1672 » » else if (iColorType == COLORTYPE_RGB) | 1670 { |
| 1673 » » { | 1671 color = CPWL_Color(COLORTYPE_GRAY, pFormControl->GetOriginalBackgrou
ndColor(0)); |
| 1674 » » » color = CPWL_Color(COLORTYPE_RGB, pFormControl->GetOrigi
nalBackgroundColor(0), | 1672 } |
| 1675 » » » » pFormControl->GetOriginalBackgroundColor(1), | 1673 else if (iColorType == COLORTYPE_RGB) |
| 1676 » » » » pFormControl->GetOriginalBackgroundColor(2)); | 1674 { |
| 1677 » » } | 1675 color = CPWL_Color(COLORTYPE_RGB, pFormControl->GetOriginalBackgroun
dColor(0), |
| 1678 » » else if (iColorType == COLORTYPE_CMYK) | 1676 pFormControl->GetOriginalBackgroundColor(1), |
| 1679 » » { | 1677 pFormControl->GetOriginalBackgroundColor(2)); |
| 1680 » » » color = CPWL_Color(COLORTYPE_CMYK, pFormControl->GetOrig
inalBackgroundColor(0), | 1678 } |
| 1681 » » » » pFormControl->GetOriginalBackgroundColor(1), | 1679 else if (iColorType == COLORTYPE_CMYK) |
| 1682 » » » » pFormControl->GetOriginalBackgroundColor(2), | 1680 { |
| 1683 » » » » pFormControl->GetOriginalBackgroundColor(3)); | 1681 color = CPWL_Color(COLORTYPE_CMYK, pFormControl->GetOriginalBackgrou
ndColor(0), |
| 1684 » » } | 1682 pFormControl->GetOriginalBackgroundColor(1), |
| 1685 » » else | 1683 pFormControl->GetOriginalBackgroundColor(2), |
| 1686 » » » return FALSE; | 1684 pFormControl->GetOriginalBackgroundColor(3)); |
| 1687 | 1685 } |
| 1688 » » color::ConvertPWLColorToArray(color, crArray); | 1686 else |
| 1687 return FALSE; |
| 1688 |
| 1689 color::ConvertPWLColorToArray(color, crArray); |
| 1689 vp << crArray; | 1690 vp << crArray; |
| 1690 » } | 1691 } |
| 1691 | 1692 |
| 1692 » return TRUE; | 1693 return TRUE; |
| 1693 } | 1694 } |
| 1694 | 1695 |
| 1695 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) |
| 1696 { | 1697 { |
| 1697 » //Not supported. | 1698 //Not supported. |
| 1698 } | 1699 } |
| 1699 | 1700 |
| 1700 FX_BOOL Field::hidden(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) | 1701 FX_BOOL Field::hidden(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 1701 { | 1702 { |
| 1702 » ASSERT(m_pDocument != NULL); | 1703 ASSERT(m_pDocument != NULL); |
| 1703 | 1704 |
| 1704 » if (vp.IsSetting()) | 1705 if (vp.IsSetting()) |
| 1705 » { | 1706 { |
| 1706 » » if (!m_bCanSet) return FALSE; | 1707 if (!m_bCanSet) return FALSE; |
| 1707 | 1708 |
| 1708 » » bool bVP; | 1709 bool bVP; |
| 1709 » » vp >> bVP; | 1710 vp >> bVP; |
| 1710 | 1711 |
| 1711 » » if (m_bDelay) | 1712 if (m_bDelay) |
| 1712 » » { | 1713 { |
| 1713 » » » AddDelay_Bool(FP_HIDDEN, bVP); | 1714 AddDelay_Bool(FP_HIDDEN, bVP); |
| 1714 » » } | 1715 } |
| 1715 » » else | 1716 else |
| 1716 » » { | 1717 { |
| 1717 » » » Field::SetHidden(m_pDocument, m_FieldName, m_nFormContro
lIndex, bVP); | 1718 Field::SetHidden(m_pDocument, m_FieldName, m_nFormControlIndex, bVP)
; |
| 1718 » » } | 1719 } |
| 1719 » } | 1720 } |
| 1720 » else | 1721 else |
| 1721 » { | 1722 { |
| 1722 » » CFX_PtrArray FieldArray; | 1723 CFX_PtrArray FieldArray; |
| 1723 » » GetFormFields(m_FieldName,FieldArray); | 1724 GetFormFields(m_FieldName,FieldArray); |
| 1724 » » if (FieldArray.GetSize() <= 0) return FALSE; | 1725 if (FieldArray.GetSize() <= 0) return FALSE; |
| 1725 | 1726 |
| 1726 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 1727 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1727 » » ASSERT(pFormField != NULL); | 1728 ASSERT(pFormField != NULL); |
| 1728 | 1729 |
| 1729 » » CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument-
>GetInterForm(); | 1730 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); |
| 1730 » » ASSERT(pInterForm != NULL); | 1731 ASSERT(pInterForm != NULL); |
| 1731 | 1732 |
| 1732 » » CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldCon
trol(pFormField)); | 1733 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); |
| 1733 » » if (!pWidget) return FALSE; | 1734 if (!pWidget) return FALSE; |
| 1734 | 1735 |
| 1735 » » FX_DWORD dwFlags = pWidget->GetFlags(); | 1736 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 1736 | 1737 |
| 1737 » » if (ANNOTFLAG_INVISIBLE & dwFlags || ANNOTFLAG_HIDDEN & dwFlags) | 1738 if (ANNOTFLAG_INVISIBLE & dwFlags || ANNOTFLAG_HIDDEN & dwFlags) |
| 1738 » » { | 1739 { |
| 1739 » » » vp << true; | 1740 vp << true; |
| 1740 » » } | 1741 } |
| 1741 » » else | 1742 else |
| 1742 » » » vp << false; | 1743 vp << false; |
| 1743 » } | 1744 } |
| 1744 | 1745 |
| 1745 » return TRUE; | 1746 return TRUE; |
| 1746 } | 1747 } |
| 1747 | 1748 |
| 1748 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) |
| 1749 { | 1750 { |
| 1750 » ASSERT(pDocument != NULL); | 1751 ASSERT(pDocument != NULL); |
| 1751 | 1752 |
| 1752 » CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF
orm(); | 1753 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 1753 » ASSERT(pInterForm != NULL); | 1754 ASSERT(pInterForm != NULL); |
| 1754 | 1755 |
| 1755 » CFX_PtrArray FieldArray; | 1756 CFX_PtrArray FieldArray; |
| 1756 » GetFormFields(pDocument, swFieldName, FieldArray); | 1757 GetFormFields(pDocument, swFieldName, FieldArray); |
| 1757 | 1758 |
| 1758 » for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 1759 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 1759 » { | 1760 { |
| 1760 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(i); | 1761 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 1761 » » ASSERT(pFormField != NULL); | 1762 ASSERT(pFormField != NULL); |
| 1762 | 1763 |
| 1763 » » if (nControlIndex < 0) | 1764 if (nControlIndex < 0) |
| 1764 » » { | 1765 { |
| 1765 » » » FX_BOOL bSet = FALSE; | 1766 FX_BOOL bSet = FALSE; |
| 1766 » » » for (int j=0,jsz = pFormField->CountControls(); j<jsz; j
++) | 1767 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) |
| 1767 » » » { | 1768 { |
| 1768 » » » » if (CPDFSDK_Widget* pWidget = pInterForm->GetWid
get(pFormField->GetControl(j))) | 1769 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormField->
GetControl(j))) |
| 1769 » » » » { | 1770 { |
| 1770 » » » » » FX_DWORD dwFlags = pWidget->GetFlags(); | 1771 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 1771 | 1772 |
| 1772 » » » » » if (b) | 1773 if (b) |
| 1773 » » » » » { | 1774 { |
| 1774 » » » » » » dwFlags &= (~ANNOTFLAG_INVISIBLE
); | 1775 dwFlags &= (~ANNOTFLAG_INVISIBLE); |
| 1775 » » » » » » dwFlags &= (~ANNOTFLAG_NOVIEW); | 1776 dwFlags &= (~ANNOTFLAG_NOVIEW); |
| 1776 » » » » » » dwFlags |= (ANNOTFLAG_HIDDEN | A
NNOTFLAG_PRINT); | 1777 dwFlags |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT); |
| 1777 » » » » » } | 1778 } |
| 1778 » » » » » else | 1779 else |
| 1779 » » » » » { | 1780 { |
| 1780 » » » » » » dwFlags &= (~ANNOTFLAG_INVISIBLE
); | 1781 dwFlags &= (~ANNOTFLAG_INVISIBLE); |
| 1781 » » » » » » dwFlags &= (~ANNOTFLAG_HIDDEN); | 1782 dwFlags &= (~ANNOTFLAG_HIDDEN); |
| 1782 » » » » » » dwFlags &= (~ANNOTFLAG_NOVIEW); | 1783 dwFlags &= (~ANNOTFLAG_NOVIEW); |
| 1783 » » » » » » dwFlags |= ANNOTFLAG_PRINT; | 1784 dwFlags |= ANNOTFLAG_PRINT; |
| 1784 » » » » » } | 1785 } |
| 1785 | 1786 |
| 1786 » » » » » if (dwFlags != pWidget->GetFlags()) | 1787 if (dwFlags != pWidget->GetFlags()) |
| 1787 » » » » » { | 1788 { |
| 1788 » » » » » » pWidget->SetFlags(dwFlags); | 1789 pWidget->SetFlags(dwFlags); |
| 1789 » » » » » » bSet = TRUE; | 1790 bSet = TRUE; |
| 1790 » » » » » } | 1791 } |
| 1791 » » » » } | 1792 } |
| 1792 » » » } | 1793 } |
| 1793 | 1794 |
| 1794 » » » if (bSet) | 1795 if (bSet) |
| 1795 » » » » UpdateFormField(pDocument, pFormField, TRUE, FAL
SE, TRUE); | 1796 UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE); |
| 1796 » » } | 1797 } |
| 1797 » » else | 1798 else |
| 1798 » » { | 1799 { |
| 1799 » » » if(nControlIndex >= pFormField->CountControls()) return; | 1800 if(nControlIndex >= pFormField->CountControls()) return; |
| 1800 » » » if (CPDF_FormControl* pFormControl = pFormField->GetCont
rol(nControlIndex)) | 1801 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 1801 » » » { | 1802 { |
| 1802 » » » » if (CPDFSDK_Widget* pWidget = pInterForm->GetWid
get(pFormControl)) | 1803 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 1803 » » » » { | 1804 { |
| 1804 » » » » » FX_DWORD dwFlags = pWidget->GetFlags(); | 1805 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 1805 | 1806 |
| 1806 » » » » » if (b) | 1807 if (b) |
| 1807 » » » » » { | 1808 { |
| 1808 » » » » » » dwFlags &= (~ANNOTFLAG_INVISIBLE
); | 1809 dwFlags &= (~ANNOTFLAG_INVISIBLE); |
| 1809 » » » » » » dwFlags &= (~ANNOTFLAG_NOVIEW); | 1810 dwFlags &= (~ANNOTFLAG_NOVIEW); |
| 1810 » » » » » » dwFlags |= (ANNOTFLAG_HIDDEN | A
NNOTFLAG_PRINT); | 1811 dwFlags |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT); |
| 1811 » » » » » } | 1812 } |
| 1812 » » » » » else | 1813 else |
| 1813 » » » » » { | 1814 { |
| 1814 » » » » » » dwFlags &= (~ANNOTFLAG_INVISIBLE
); | 1815 dwFlags &= (~ANNOTFLAG_INVISIBLE); |
| 1815 » » » » » » dwFlags &= (~ANNOTFLAG_HIDDEN); | 1816 dwFlags &= (~ANNOTFLAG_HIDDEN); |
| 1816 » » » » » » dwFlags &= (~ANNOTFLAG_NOVIEW); | 1817 dwFlags &= (~ANNOTFLAG_NOVIEW); |
| 1817 » » » » » » dwFlags |= ANNOTFLAG_PRINT; | 1818 dwFlags |= ANNOTFLAG_PRINT; |
| 1818 » » » » » } | 1819 } |
| 1819 | 1820 |
| 1820 » » » » » if (dwFlags != pWidget->GetFlags()) | 1821 if (dwFlags != pWidget->GetFlags()) |
| 1821 » » » » » { | 1822 { |
| 1822 » » » » » » pWidget->SetFlags(dwFlags); | 1823 pWidget->SetFlags(dwFlags); |
| 1823 » » » » » » UpdateFormControl(pDocument, pFo
rmControl, TRUE, FALSE, TRUE); | 1824 UpdateFormControl(pDocument, pFormControl, TRUE, FALSE,
TRUE); |
| 1824 » » » » » } | 1825 } |
| 1825 » » » » } | 1826 } |
| 1826 » » » } | 1827 } |
| 1827 » » } | 1828 } |
| 1828 » } | 1829 } |
| 1829 } | 1830 } |
| 1830 | 1831 |
| 1831 FX_BOOL Field::highlight(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 1832 FX_BOOL Field::highlight(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 1832 { | 1833 { |
| 1833 » ASSERT(m_pDocument != NULL); | 1834 ASSERT(m_pDocument != NULL); |
| 1834 | 1835 |
| 1835 » if (vp.IsSetting()) | 1836 if (vp.IsSetting()) |
| 1836 » { | 1837 { |
| 1837 » » if (!m_bCanSet) return FALSE; | 1838 if (!m_bCanSet) return FALSE; |
| 1838 | 1839 |
| 1839 » » CFX_ByteString strMode; | 1840 CFX_ByteString strMode; |
| 1840 » » vp >> strMode; | 1841 vp >> strMode; |
| 1841 | 1842 |
| 1842 » » if (m_bDelay) | 1843 if (m_bDelay) |
| 1843 » » { | 1844 { |
| 1844 » » » AddDelay_String(FP_HIGHLIGHT, strMode); | 1845 AddDelay_String(FP_HIGHLIGHT, strMode); |
| 1845 » » } | 1846 } |
| 1846 » » else | 1847 else |
| 1847 » » { | 1848 { |
| 1848 » » » Field::SetHighlight(m_pDocument, m_FieldName, m_nFormCon
trolIndex, strMode); | 1849 Field::SetHighlight(m_pDocument, m_FieldName, m_nFormControlIndex, s
trMode); |
| 1849 » » } | 1850 } |
| 1850 » } | 1851 } |
| 1851 » else | 1852 else |
| 1852 » { | 1853 { |
| 1853 » » CFX_PtrArray FieldArray; | 1854 CFX_PtrArray FieldArray; |
| 1854 » » GetFormFields(m_FieldName,FieldArray); | 1855 GetFormFields(m_FieldName,FieldArray); |
| 1855 » » if (FieldArray.GetSize() <= 0) return FALSE; | 1856 if (FieldArray.GetSize() <= 0) return FALSE; |
| 1856 | 1857 |
| 1857 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 1858 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1858 » » ASSERT(pFormField != NULL); | 1859 ASSERT(pFormField != NULL); |
| 1859 | 1860 |
| 1860 » » if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 1861 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 1861 » » » return FALSE; | 1862 return FALSE; |
| 1862 | 1863 |
| 1863 » » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField
); | 1864 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 1864 » » if (!pFormControl) return FALSE; | 1865 if (!pFormControl) return FALSE; |
| 1865 | 1866 |
| 1866 » » int eHM = pFormControl->GetHighlightingMode(); | 1867 int eHM = pFormControl->GetHighlightingMode(); |
| 1867 » » switch (eHM) | 1868 switch (eHM) |
| 1868 » » { | 1869 { |
| 1869 » » case CPDF_FormControl::None: | 1870 case CPDF_FormControl::None: |
| 1870 » » » vp << L"none"; | 1871 vp << L"none"; |
| 1871 » » » break; | 1872 break; |
| 1872 » » case CPDF_FormControl::Push: | 1873 case CPDF_FormControl::Push: |
| 1873 » » » vp << L"push"; | 1874 vp << L"push"; |
| 1874 » » » break; | 1875 break; |
| 1875 » » case CPDF_FormControl::Invert: | 1876 case CPDF_FormControl::Invert: |
| 1876 » » » vp << L"invert"; | 1877 vp << L"invert"; |
| 1877 » » » break; | 1878 break; |
| 1878 » » case CPDF_FormControl::Outline: | 1879 case CPDF_FormControl::Outline: |
| 1879 » » » vp << L"outline"; | 1880 vp << L"outline"; |
| 1880 » » » break; | 1881 break; |
| 1881 » » case CPDF_FormControl::Toggle: | 1882 case CPDF_FormControl::Toggle: |
| 1882 » » » vp << L"toggle"; | 1883 vp << L"toggle"; |
| 1883 » » » break; | 1884 break; |
| 1884 » » } | 1885 } |
| 1885 » } | 1886 } |
| 1886 | 1887 |
| 1887 » return TRUE; | 1888 return TRUE; |
| 1888 } | 1889 } |
| 1889 | 1890 |
| 1890 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) |
| 1891 { | 1892 { |
| 1892 » //Not supported. | 1893 //Not supported. |
| 1893 } | 1894 } |
| 1894 | 1895 |
| 1895 FX_BOOL Field::lineWidth(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 1896 FX_BOOL Field::lineWidth(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 1896 { | 1897 { |
| 1897 » ASSERT(m_pDocument != NULL); | 1898 ASSERT(m_pDocument != NULL); |
| 1898 | 1899 |
| 1899 » if (vp.IsSetting()) | 1900 if (vp.IsSetting()) |
| 1900 » { | 1901 { |
| 1901 » » if (!m_bCanSet) return FALSE; | 1902 if (!m_bCanSet) return FALSE; |
| 1902 | 1903 |
| 1903 » » int iWidth; | 1904 int iWidth; |
| 1904 » » vp >> iWidth; | 1905 vp >> iWidth; |
| 1905 | 1906 |
| 1906 » » if (m_bDelay) | 1907 if (m_bDelay) |
| 1907 » » { | 1908 { |
| 1908 » » » AddDelay_Int(FP_LINEWIDTH, iWidth); | 1909 AddDelay_Int(FP_LINEWIDTH, iWidth); |
| 1909 » » } | 1910 } |
| 1910 » » else | 1911 else |
| 1911 » » { | 1912 { |
| 1912 » » » Field::SetLineWidth(m_pDocument, m_FieldName, m_nFormCon
trolIndex, iWidth); | 1913 Field::SetLineWidth(m_pDocument, m_FieldName, m_nFormControlIndex, i
Width); |
| 1913 » » } | 1914 } |
| 1914 » } | 1915 } |
| 1915 » else | 1916 else |
| 1916 » { | 1917 { |
| 1917 » » CFX_PtrArray FieldArray; | 1918 CFX_PtrArray FieldArray; |
| 1918 » » GetFormFields(m_FieldName,FieldArray); | 1919 GetFormFields(m_FieldName,FieldArray); |
| 1919 » » if (FieldArray.GetSize() <= 0) return FALSE; | 1920 if (FieldArray.GetSize() <= 0) return FALSE; |
| 1920 | 1921 |
| 1921 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 1922 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 1922 » » ASSERT(pFormField != NULL); | 1923 ASSERT(pFormField != NULL); |
| 1923 | 1924 |
| 1924 » » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField
); | 1925 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 1925 » » if (!pFormControl) return FALSE; | 1926 if (!pFormControl) return FALSE; |
| 1926 | 1927 |
| 1927 » » CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument-
>GetInterForm(); | 1928 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); |
| 1928 » » ASSERT(pInterForm != NULL); | 1929 ASSERT(pInterForm != NULL); |
| 1929 | 1930 |
| 1930 » » if(!pFormField->CountControls()) return FALSE; | 1931 if(!pFormField->CountControls()) return FALSE; |
| 1931 | 1932 |
| 1932 » » CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormField->GetC
ontrol(0)); | 1933 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormField->GetControl(0
)); |
| 1933 » » if (!pWidget) return FALSE; | 1934 if (!pWidget) return FALSE; |
| 1934 | 1935 |
| 1935 » » vp << (int32_t)pWidget->GetBorderWidth(); | 1936 vp << (int32_t)pWidget->GetBorderWidth(); |
| 1936 » } | 1937 } |
| 1937 | 1938 |
| 1938 » return TRUE; | 1939 return TRUE; |
| 1939 } | 1940 } |
| 1940 | 1941 |
| 1941 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) |
| 1942 { | 1943 { |
| 1943 » ASSERT(pDocument != NULL); | 1944 ASSERT(pDocument != NULL); |
| 1944 | 1945 |
| 1945 » CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF
orm(); | 1946 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 1946 » ASSERT(pInterForm != NULL); | 1947 ASSERT(pInterForm != NULL); |
| 1947 | 1948 |
| 1948 » CFX_PtrArray FieldArray; | 1949 CFX_PtrArray FieldArray; |
| 1949 » GetFormFields(pDocument, swFieldName, FieldArray); | 1950 GetFormFields(pDocument, swFieldName, FieldArray); |
| 1950 | 1951 |
| 1951 » for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 1952 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 1952 » { | 1953 { |
| 1953 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(i); | 1954 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 1954 » » ASSERT(pFormField != NULL); | 1955 ASSERT(pFormField != NULL); |
| 1955 | 1956 |
| 1956 » » if (nControlIndex < 0) | 1957 if (nControlIndex < 0) |
| 1957 » » { | 1958 { |
| 1958 » » » FX_BOOL bSet = FALSE; | 1959 FX_BOOL bSet = FALSE; |
| 1959 » » » for (int j=0,jsz=pFormField->CountControls(); j<jsz; j++
) | 1960 for (int j=0,jsz=pFormField->CountControls(); j<jsz; j++) |
| 1960 » » » { | 1961 { |
| 1961 » » » » CPDF_FormControl* pFormControl = pFormField->Get
Control(j); | 1962 CPDF_FormControl* pFormControl = pFormField->GetControl(j); |
| 1962 » » » » ASSERT(pFormControl != NULL); | 1963 ASSERT(pFormControl != NULL); |
| 1963 | 1964 |
| 1964 » » » » if (CPDFSDK_Widget* pWidget = pInterForm->GetWid
get(pFormControl)) | 1965 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 1965 » » » » { | 1966 { |
| 1966 » » » » » if (number != pWidget->GetBorderWidth()) | 1967 if (number != pWidget->GetBorderWidth()) |
| 1967 » » » » » { | 1968 { |
| 1968 » » » » » » pWidget->SetBorderWidth(number); | 1969 pWidget->SetBorderWidth(number); |
| 1969 » » » » » » bSet = TRUE; | 1970 bSet = TRUE; |
| 1970 » » » » » } | 1971 } |
| 1971 » » » » } | 1972 } |
| 1972 » » » } | 1973 } |
| 1973 » » » if (bSet) UpdateFormField(pDocument, pFormField, TRUE, T
RUE, TRUE); | 1974 if (bSet) UpdateFormField(pDocument, pFormField, TRUE, TRUE, TRUE); |
| 1974 » » } | 1975 } |
| 1975 » » else | 1976 else |
| 1976 » » { | 1977 { |
| 1977 » » » if(nControlIndex >= pFormField->CountControls()) return; | 1978 if(nControlIndex >= pFormField->CountControls()) return; |
| 1978 » » » if (CPDF_FormControl* pFormControl = pFormField->GetCont
rol(nControlIndex)) | 1979 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 1979 » » » { | 1980 { |
| 1980 » » » » if (CPDFSDK_Widget* pWidget = pInterForm->GetWid
get(pFormControl)) | 1981 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 1981 » » » » { | 1982 { |
| 1982 » » » » » if (number != pWidget->GetBorderWidth()) | 1983 if (number != pWidget->GetBorderWidth()) |
| 1983 » » » » » { | 1984 { |
| 1984 » » » » » » pWidget->SetBorderWidth(number); | 1985 pWidget->SetBorderWidth(number); |
| 1985 » » » » » » UpdateFormControl(pDocument, pFo
rmControl, TRUE, TRUE, TRUE); | 1986 UpdateFormControl(pDocument, pFormControl, TRUE, TRUE, T
RUE); |
| 1986 » » » » » } | 1987 } |
| 1987 » » » » } | 1988 } |
| 1988 » » » } | 1989 } |
| 1989 » » } | 1990 } |
| 1990 » } | 1991 } |
| 1991 } | 1992 } |
| 1992 | 1993 |
| 1993 FX_BOOL Field::multiline(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 1994 FX_BOOL Field::multiline(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 1994 { | 1995 { |
| 1995 » ASSERT(m_pDocument != NULL); | 1996 ASSERT(m_pDocument != NULL); |
| 1996 | 1997 |
| 1997 » if (vp.IsSetting()) | 1998 if (vp.IsSetting()) |
| 1998 » { | 1999 { |
| 1999 » » if (!m_bCanSet) return FALSE; | 2000 if (!m_bCanSet) return FALSE; |
| 2000 | 2001 |
| 2001 » » bool bVP; | 2002 bool bVP; |
| 2002 » » vp >> bVP; | 2003 vp >> bVP; |
| 2003 | 2004 |
| 2004 » » if (m_bDelay) | 2005 if (m_bDelay) |
| 2005 » » { | 2006 { |
| 2006 » » » AddDelay_Bool(FP_MULTILINE, bVP); | 2007 AddDelay_Bool(FP_MULTILINE, bVP); |
| 2007 » » } | 2008 } |
| 2008 » » else | 2009 else |
| 2009 » » { | 2010 { |
| 2010 » » » Field::SetMultiline(m_pDocument, m_FieldName, m_nFormCon
trolIndex, bVP); | 2011 Field::SetMultiline(m_pDocument, m_FieldName, m_nFormControlIndex, b
VP); |
| 2011 » » } | 2012 } |
| 2012 » } | 2013 } |
| 2013 » else | 2014 else |
| 2014 » { | 2015 { |
| 2015 » » CFX_PtrArray FieldArray; | 2016 CFX_PtrArray FieldArray; |
| 2016 » » GetFormFields(m_FieldName, FieldArray); | 2017 GetFormFields(m_FieldName, FieldArray); |
| 2017 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2018 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2018 | 2019 |
| 2019 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2020 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2020 » » ASSERT(pFormField != NULL); | 2021 ASSERT(pFormField != NULL); |
| 2021 | 2022 |
| 2022 » » if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 2023 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 2023 » » » return FALSE; | 2024 return FALSE; |
| 2024 | 2025 |
| 2025 » » if (pFormField->GetFieldFlags() & FIELDFLAG_MULTILINE) | 2026 if (pFormField->GetFieldFlags() & FIELDFLAG_MULTILINE) |
| 2026 » » » vp << true; | 2027 vp << true; |
| 2027 » » else | 2028 else |
| 2028 » » » vp << false; | 2029 vp << false; |
| 2029 » } | 2030 } |
| 2030 | 2031 |
| 2031 » return TRUE; | 2032 return TRUE; |
| 2032 } | 2033 } |
| 2033 | 2034 |
| 2034 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) |
| 2035 { | 2036 { |
| 2036 » //Not supported. | 2037 //Not supported. |
| 2037 } | 2038 } |
| 2038 | 2039 |
| 2039 FX_BOOL Field::multipleSelection(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideS
tring& sError) | 2040 FX_BOOL Field::multipleSelection(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideS
tring& sError) |
| 2040 { | 2041 { |
| 2041 » ASSERT(m_pDocument != NULL); | 2042 ASSERT(m_pDocument != NULL); |
| 2042 | 2043 |
| 2043 » if (vp.IsSetting()) | 2044 if (vp.IsSetting()) |
| 2044 » { | 2045 { |
| 2045 » » if (!m_bCanSet) return FALSE; | 2046 if (!m_bCanSet) return FALSE; |
| 2046 | 2047 |
| 2047 » » bool bVP; | 2048 bool bVP; |
| 2048 » » vp >> bVP; | 2049 vp >> bVP; |
| 2049 | 2050 |
| 2050 » » if (m_bDelay) | 2051 if (m_bDelay) |
| 2051 » » { | 2052 { |
| 2052 » » » AddDelay_Bool(FP_MULTIPLESELECTION, bVP); | 2053 AddDelay_Bool(FP_MULTIPLESELECTION, bVP); |
| 2053 » » } | 2054 } |
| 2054 » » else | 2055 else |
| 2055 » » { | 2056 { |
| 2056 » » » Field::SetMultipleSelection(m_pDocument, m_FieldName, m_
nFormControlIndex, bVP); | 2057 Field::SetMultipleSelection(m_pDocument, m_FieldName, m_nFormControl
Index, bVP); |
| 2057 » » } | 2058 } |
| 2058 » } | 2059 } |
| 2059 » else | 2060 else |
| 2060 » { | 2061 { |
| 2061 » » CFX_PtrArray FieldArray; | 2062 CFX_PtrArray FieldArray; |
| 2062 » » GetFormFields(m_FieldName,FieldArray); | 2063 GetFormFields(m_FieldName,FieldArray); |
| 2063 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2064 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2064 | 2065 |
| 2065 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2066 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2066 » » ASSERT(pFormField != NULL); | 2067 ASSERT(pFormField != NULL); |
| 2067 | 2068 |
| 2068 » » if (pFormField->GetFieldType() != FIELDTYPE_LISTBOX) | 2069 if (pFormField->GetFieldType() != FIELDTYPE_LISTBOX) |
| 2069 » » » return FALSE; | 2070 return FALSE; |
| 2070 | 2071 |
| 2071 » » if (pFormField->GetFieldFlags() & FIELDFLAG_MULTISELECT) | 2072 if (pFormField->GetFieldFlags() & FIELDFLAG_MULTISELECT) |
| 2072 » » » vp << true; | 2073 vp << true; |
| 2073 » » else | 2074 else |
| 2074 » » » vp << false; | 2075 vp << false; |
| 2075 » } | 2076 } |
| 2076 | 2077 |
| 2077 » return TRUE; | 2078 return TRUE; |
| 2078 } | 2079 } |
| 2079 | 2080 |
| 2080 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) |
| 2081 { | 2082 { |
| 2082 » //Not supported. | 2083 //Not supported. |
| 2083 } | 2084 } |
| 2084 | 2085 |
| 2085 FX_BOOL Field::name(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) | 2086 FX_BOOL Field::name(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) |
| 2086 { | 2087 { |
| 2087 » if (!vp.IsGetting()) return FALSE; | 2088 if (!vp.IsGetting()) return FALSE; |
| 2088 | 2089 |
| 2089 » CFX_PtrArray FieldArray; | 2090 CFX_PtrArray FieldArray; |
| 2090 » GetFormFields(m_FieldName, FieldArray); | 2091 GetFormFields(m_FieldName, FieldArray); |
| 2091 » if (FieldArray.GetSize() <= 0) return FALSE; | 2092 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2092 | 2093 |
| 2093 » vp << m_FieldName; | 2094 vp << m_FieldName; |
| 2094 | 2095 |
| 2095 » return TRUE; | 2096 return TRUE; |
| 2096 } | 2097 } |
| 2097 | 2098 |
| 2098 FX_BOOL Field::numItems(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2099 FX_BOOL Field::numItems(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 2099 { | 2100 { |
| 2100 » CFX_PtrArray FieldArray; | 2101 CFX_PtrArray FieldArray; |
| 2101 » GetFormFields(m_FieldName, FieldArray); | 2102 GetFormFields(m_FieldName, FieldArray); |
| 2102 » if (FieldArray.GetSize() <= 0) return FALSE; | 2103 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2103 | 2104 |
| 2104 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2105 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2105 » ASSERT(pFormField != NULL); | 2106 ASSERT(pFormField != NULL); |
| 2106 | 2107 |
| 2107 » if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && | 2108 if (pFormField->GetFieldType() != FIELDTYPE_COMBOBOX && |
| 2108 » » pFormField->GetFieldType() != FIELDTYPE_LISTBOX) | 2109 pFormField->GetFieldType() != FIELDTYPE_LISTBOX) |
| 2109 » » return FALSE; | 2110 return FALSE; |
| 2110 | 2111 |
| 2111 » if (!vp.IsGetting()) return FALSE; | 2112 if (!vp.IsGetting()) return FALSE; |
| 2112 | 2113 |
| 2113 » vp << (int32_t)pFormField->CountOptions(); | 2114 vp << (int32_t)pFormField->CountOptions(); |
| 2114 | 2115 |
| 2115 » return TRUE; | 2116 return TRUE; |
| 2116 } | 2117 } |
| 2117 | 2118 |
| 2118 FX_BOOL Field::page(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) | 2119 FX_BOOL Field::page(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) |
| 2119 { | 2120 { |
| 2120 » if (!vp.IsGetting()) return FALSE; | 2121 if (!vp.IsGetting()) return FALSE; |
| 2121 | 2122 |
| 2122 » CFX_PtrArray FieldArray; | 2123 CFX_PtrArray FieldArray; |
| 2123 » GetFormFields(m_FieldName, FieldArray); | 2124 GetFormFields(m_FieldName, FieldArray); |
| 2124 » if (FieldArray.GetSize() <= 0) return FALSE; | 2125 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2125 | 2126 |
| 2126 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2127 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2127 » if (!pFormField) return FALSE; | 2128 if (!pFormField) return FALSE; |
| 2128 | 2129 |
| 2129 » ASSERT(m_pDocument != NULL); | 2130 ASSERT(m_pDocument != NULL); |
| 2130 | 2131 |
| 2131 » CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); | 2132 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); |
| 2132 » ASSERT(pInterForm != NULL); | 2133 ASSERT(pInterForm != NULL); |
| 2133 | 2134 |
| 2134 » CFX_PtrArray widgetArray; | 2135 CFX_PtrArray widgetArray; |
| 2135 » pInterForm->GetWidgets(pFormField, widgetArray); | 2136 pInterForm->GetWidgets(pFormField, widgetArray); |
| 2136 | 2137 |
| 2137 » if (widgetArray.GetSize() > 0) | 2138 if (widgetArray.GetSize() > 0) |
| 2138 » { | 2139 { |
| 2139 » » CJS_Array PageArray(m_isolate); | 2140 CJS_Array PageArray(m_isolate); |
| 2140 | 2141 |
| 2141 » » for (int i=0,sz=widgetArray.GetSize(); i<sz; i++) | 2142 for (int i=0,sz=widgetArray.GetSize(); i<sz; i++) |
| 2142 » » { | 2143 { |
| 2143 » » » CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgetArray.G
etAt(i); | 2144 CPDFSDK_Widget* pWidget = (CPDFSDK_Widget*)widgetArray.GetAt(i); |
| 2144 » » » ASSERT(pWidget != NULL); | 2145 ASSERT(pWidget != NULL); |
| 2145 | 2146 |
| 2146 » » » CPDFSDK_PageView* pPageView = pWidget->GetPageView(); | 2147 CPDFSDK_PageView* pPageView = pWidget->GetPageView(); |
| 2147 » » » if(!pPageView) | 2148 if(!pPageView) |
| 2148 » » » » return FALSE; | 2149 return FALSE; |
| 2149 | 2150 |
| 2150 » » » PageArray.SetElement(i, CJS_Value(m_isolate,(int32_t)pPa
geView->GetPageIndex())); | 2151 PageArray.SetElement(i, CJS_Value(m_isolate,(int32_t)pPageView->GetP
ageIndex())); |
| 2151 » » } | 2152 } |
| 2152 | 2153 |
| 2153 » » vp << PageArray; | 2154 vp << PageArray; |
| 2154 » } | 2155 } |
| 2155 » else | 2156 else |
| 2156 » { | 2157 { |
| 2157 » » vp << (int32_t) -1; | 2158 vp << (int32_t) -1; |
| 2158 » } | 2159 } |
| 2159 | 2160 |
| 2160 » return TRUE; | 2161 return TRUE; |
| 2161 } | 2162 } |
| 2162 | 2163 |
| 2163 FX_BOOL Field::password(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2164 FX_BOOL Field::password(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 2164 { | 2165 { |
| 2165 » ASSERT(m_pDocument != NULL); | 2166 ASSERT(m_pDocument != NULL); |
| 2166 | 2167 |
| 2167 » if (vp.IsSetting()) | 2168 if (vp.IsSetting()) |
| 2168 » { | 2169 { |
| 2169 » » if (!m_bCanSet) return FALSE; | 2170 if (!m_bCanSet) return FALSE; |
| 2170 | 2171 |
| 2171 » » bool bVP; | 2172 bool bVP; |
| 2172 » » vp >> bVP; | 2173 vp >> bVP; |
| 2173 | 2174 |
| 2174 » » if (m_bDelay) | 2175 if (m_bDelay) |
| 2175 » » { | 2176 { |
| 2176 » » » AddDelay_Bool(FP_PASSWORD, bVP); | 2177 AddDelay_Bool(FP_PASSWORD, bVP); |
| 2177 » » } | 2178 } |
| 2178 » » else | 2179 else |
| 2179 » » { | 2180 { |
| 2180 » » » Field::SetPassword(m_pDocument, m_FieldName, m_nFormCont
rolIndex, bVP); | 2181 Field::SetPassword(m_pDocument, m_FieldName, m_nFormControlIndex, bV
P); |
| 2181 » » } | 2182 } |
| 2182 » } | 2183 } |
| 2183 » else | 2184 else |
| 2184 » { | 2185 { |
| 2185 » » CFX_PtrArray FieldArray; | 2186 CFX_PtrArray FieldArray; |
| 2186 » » GetFormFields(m_FieldName,FieldArray); | 2187 GetFormFields(m_FieldName,FieldArray); |
| 2187 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2188 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2188 | 2189 |
| 2189 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2190 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2190 » » ASSERT(pFormField != NULL); | 2191 ASSERT(pFormField != NULL); |
| 2191 | 2192 |
| 2192 » » if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 2193 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 2193 » » » return FALSE; | 2194 return FALSE; |
| 2194 | 2195 |
| 2195 » » if (pFormField->GetFieldFlags() & FIELDFLAG_PASSWORD) | 2196 if (pFormField->GetFieldFlags() & FIELDFLAG_PASSWORD) |
| 2196 » » » vp << true; | 2197 vp << true; |
| 2197 » » else | 2198 else |
| 2198 » » » vp << false; | 2199 vp << false; |
| 2199 » } | 2200 } |
| 2200 | 2201 |
| 2201 » return TRUE; | 2202 return TRUE; |
| 2202 } | 2203 } |
| 2203 | 2204 |
| 2204 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) |
| 2205 { | 2206 { |
| 2206 » //Not supported. | 2207 //Not supported. |
| 2207 } | 2208 } |
| 2208 | 2209 |
| 2209 FX_BOOL Field::print(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) | 2210 FX_BOOL Field::print(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2210 { | 2211 { |
| 2211 » ASSERT(m_pDocument != NULL); | 2212 ASSERT(m_pDocument != NULL); |
| 2212 | 2213 |
| 2213 » CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); | 2214 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); |
| 2214 » ASSERT(pInterForm != NULL); | 2215 ASSERT(pInterForm != NULL); |
| 2215 | 2216 |
| 2216 » CFX_PtrArray FieldArray; | 2217 CFX_PtrArray FieldArray; |
| 2217 » GetFormFields(m_FieldName, FieldArray); | 2218 GetFormFields(m_FieldName, FieldArray); |
| 2218 » if (FieldArray.GetSize() <= 0) return FALSE; | 2219 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2219 | 2220 |
| 2220 » if (vp.IsSetting()) | 2221 if (vp.IsSetting()) |
| 2221 » { | 2222 { |
| 2222 » » if (!m_bCanSet) return FALSE; | 2223 if (!m_bCanSet) return FALSE; |
| 2223 | 2224 |
| 2224 » » bool bVP; | 2225 bool bVP; |
| 2225 » » vp >> bVP; | 2226 vp >> bVP; |
| 2226 | 2227 |
| 2227 » » for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 2228 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 2228 » » { | 2229 { |
| 2229 » » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray
.ElementAt(i); | 2230 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i
); |
| 2230 » » » ASSERT(pFormField != NULL); | 2231 ASSERT(pFormField != NULL); |
| 2231 | 2232 |
| 2232 » » » if (m_nFormControlIndex < 0) | 2233 if (m_nFormControlIndex < 0) |
| 2233 » » » { | 2234 { |
| 2234 » » » » FX_BOOL bSet = FALSE; | 2235 FX_BOOL bSet = FALSE; |
| 2235 » » » » for (int j=0,jsz = pFormField->CountControls();
j<jsz; j++) | 2236 for (int j=0,jsz = pFormField->CountControls(); j<jsz; j++) |
| 2236 » » » » { | 2237 { |
| 2237 » » » » » if (CPDFSDK_Widget* pWidget = pInterForm
->GetWidget(pFormField->GetControl(j))) | 2238 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormFie
ld->GetControl(j))) |
| 2238 » » » » » { | 2239 { |
| 2239 » » » » » » FX_DWORD dwFlags = pWidget->GetF
lags(); | 2240 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 2240 » » » » » » if (bVP) | 2241 if (bVP) |
| 2241 » » » » » » » dwFlags |= ANNOTFLAG_PRI
NT; | 2242 dwFlags |= ANNOTFLAG_PRINT; |
| 2242 » » » » » » else | 2243 else |
| 2243 » » » » » » » dwFlags &= ~ANNOTFLAG_PR
INT; | 2244 dwFlags &= ~ANNOTFLAG_PRINT; |
| 2244 | 2245 |
| 2245 » » » » » » if (dwFlags != pWidget->GetFlags
()) | 2246 if (dwFlags != pWidget->GetFlags()) |
| 2246 » » » » » » { | 2247 { |
| 2247 » » » » » » » pWidget->SetFlags(dwFlag
s); | 2248 pWidget->SetFlags(dwFlags); |
| 2248 » » » » » » » bSet = TRUE; | 2249 bSet = TRUE; |
| 2249 » » » » » » } | 2250 } |
| 2250 » » » » » } | 2251 } |
| 2251 » » » » } | 2252 } |
| 2252 | 2253 |
| 2253 » » » » if (bSet) | 2254 if (bSet) |
| 2254 » » » » » UpdateFormField(m_pDocument, pFormField,
TRUE, FALSE, TRUE); | 2255 UpdateFormField(m_pDocument, pFormField, TRUE, FALSE, TRUE); |
| 2255 » » » } | 2256 } |
| 2256 » » » else | 2257 else |
| 2257 » » » { | 2258 { |
| 2258 » » » » if(m_nFormControlIndex >= pFormField->CountContr
ols()) return FALSE; | 2259 if(m_nFormControlIndex >= pFormField->CountControls()) return FA
LSE; |
| 2259 » » » » if (CPDF_FormControl* pFormControl = pFormField-
>GetControl(m_nFormControlIndex)) | 2260 if (CPDF_FormControl* pFormControl = pFormField->GetControl(m_nF
ormControlIndex)) |
| 2260 » » » » { | 2261 { |
| 2261 » » » » » if (CPDFSDK_Widget* pWidget = pInterForm
->GetWidget(pFormControl)) | 2262 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormCon
trol)) |
| 2262 » » » » » { | 2263 { |
| 2263 » » » » » » FX_DWORD dwFlags = pWidget->GetF
lags(); | 2264 FX_DWORD dwFlags = pWidget->GetFlags(); |
| 2264 » » » » » » if (bVP) | 2265 if (bVP) |
| 2265 » » » » » » » dwFlags |= ANNOTFLAG_PRI
NT; | 2266 dwFlags |= ANNOTFLAG_PRINT; |
| 2266 » » » » » » else | 2267 else |
| 2267 » » » » » » » dwFlags &= ~ANNOTFLAG_PR
INT; | 2268 dwFlags &= ~ANNOTFLAG_PRINT; |
| 2268 | 2269 |
| 2269 » » » » » » if (dwFlags != pWidget->GetFlags
()) | 2270 if (dwFlags != pWidget->GetFlags()) |
| 2270 » » » » » » { | 2271 { |
| 2271 » » » » » » » pWidget->SetFlags(dwFlag
s); | 2272 pWidget->SetFlags(dwFlags); |
| 2272 » » » » » » » UpdateFormControl(m_pDoc
ument, pFormField->GetControl(m_nFormControlIndex), TRUE, FALSE, TRUE); | 2273 UpdateFormControl(m_pDocument, pFormField->GetContro
l(m_nFormControlIndex), TRUE, FALSE, TRUE); |
| 2273 » » » » » » } | 2274 } |
| 2274 » » » » » } | 2275 } |
| 2275 » » » » } | 2276 } |
| 2276 » » » } | 2277 } |
| 2277 » » } | 2278 } |
| 2278 » } | 2279 } |
| 2279 » else | 2280 else |
| 2280 » { | 2281 { |
| 2281 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2282 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2282 » » ASSERT(pFormField != NULL); | 2283 ASSERT(pFormField != NULL); |
| 2283 | 2284 |
| 2284 » » CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldCon
trol(pFormField)); | 2285 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); |
| 2285 » » if (!pWidget) return FALSE; | 2286 if (!pWidget) return FALSE; |
| 2286 | 2287 |
| 2287 » » if (pWidget->GetFlags() & ANNOTFLAG_PRINT) | 2288 if (pWidget->GetFlags() & ANNOTFLAG_PRINT) |
| 2288 » » » vp << true; | 2289 vp << true; |
| 2289 » » else | 2290 else |
| 2290 » » » vp << false; | 2291 vp << false; |
| 2291 » } | 2292 } |
| 2292 | 2293 |
| 2293 » return TRUE; | 2294 return TRUE; |
| 2294 } | 2295 } |
| 2295 | 2296 |
| 2296 FX_BOOL Field::radiosInUnison(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& sError) | 2297 FX_BOOL Field::radiosInUnison(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStri
ng& sError) |
| 2297 { | 2298 { |
| 2298 » ASSERT(m_pDocument != NULL); | 2299 ASSERT(m_pDocument != NULL); |
| 2299 | 2300 |
| 2300 » CFX_PtrArray FieldArray; | 2301 CFX_PtrArray FieldArray; |
| 2301 » GetFormFields(m_FieldName,FieldArray); | 2302 GetFormFields(m_FieldName,FieldArray); |
| 2302 » if (FieldArray.GetSize() <= 0) return FALSE; | 2303 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2303 | 2304 |
| 2304 » if (vp.IsSetting()) | 2305 if (vp.IsSetting()) |
| 2305 » { | 2306 { |
| 2306 » » if (!m_bCanSet) return FALSE; | 2307 if (!m_bCanSet) return FALSE; |
| 2307 | 2308 |
| 2308 » » bool bVP; | 2309 bool bVP; |
| 2309 » » vp >> bVP; | 2310 vp >> bVP; |
| 2310 | 2311 |
| 2311 » } | 2312 } |
| 2312 » else | 2313 else |
| 2313 » { | 2314 { |
| 2314 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2315 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2315 » » ASSERT(pFormField != NULL); | 2316 ASSERT(pFormField != NULL); |
| 2316 | 2317 |
| 2317 » » if (pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON) | 2318 if (pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON) |
| 2318 » » » return FALSE; | 2319 return FALSE; |
| 2319 | 2320 |
| 2320 » » if (pFormField->GetFieldFlags() & FIELDFLAG_RADIOSINUNISON) | 2321 if (pFormField->GetFieldFlags() & FIELDFLAG_RADIOSINUNISON) |
| 2321 » » » vp << true; | 2322 vp << true; |
| 2322 » » else | 2323 else |
| 2323 » » » vp << false; | 2324 vp << false; |
| 2324 » } | 2325 } |
| 2325 | 2326 |
| 2326 » return TRUE; | 2327 return TRUE; |
| 2327 } | 2328 } |
| 2328 | 2329 |
| 2329 FX_BOOL Field::readonly(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2330 FX_BOOL Field::readonly(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 2330 { | 2331 { |
| 2331 » ASSERT(m_pDocument != NULL); | 2332 ASSERT(m_pDocument != NULL); |
| 2332 | 2333 |
| 2333 » CFX_PtrArray FieldArray; | 2334 CFX_PtrArray FieldArray; |
| 2334 » GetFormFields(m_FieldName,FieldArray); | 2335 GetFormFields(m_FieldName,FieldArray); |
| 2335 » if (FieldArray.GetSize() <= 0) return FALSE; | 2336 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2336 | 2337 |
| 2337 » if (vp.IsSetting()) | 2338 if (vp.IsSetting()) |
| 2338 » { | 2339 { |
| 2339 » » if (!m_bCanSet) return FALSE; | 2340 if (!m_bCanSet) return FALSE; |
| 2340 | 2341 |
| 2341 » » bool bVP; | 2342 bool bVP; |
| 2342 » » vp >> bVP; | 2343 vp >> bVP; |
| 2343 | 2344 |
| 2344 » } | 2345 } |
| 2345 » else | 2346 else |
| 2346 » { | 2347 { |
| 2347 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2348 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2348 » » ASSERT(pFormField != NULL); | 2349 ASSERT(pFormField != NULL); |
| 2349 | 2350 |
| 2350 » » if (pFormField->GetFieldFlags() & FIELDFLAG_READONLY) | 2351 if (pFormField->GetFieldFlags() & FIELDFLAG_READONLY) |
| 2351 » » » vp << true; | 2352 vp << true; |
| 2352 » » else | 2353 else |
| 2353 » » » vp << false; | 2354 vp << false; |
| 2354 » } | 2355 } |
| 2355 | 2356 |
| 2356 » return TRUE; | 2357 return TRUE; |
| 2357 } | 2358 } |
| 2358 | 2359 |
| 2359 FX_BOOL Field::rect(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) | 2360 FX_BOOL Field::rect(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) |
| 2360 { | 2361 { |
| 2361 » ASSERT(m_pDocument != NULL); | 2362 ASSERT(m_pDocument != NULL); |
| 2362 | 2363 |
| 2363 » if (vp.IsSetting()) | 2364 if (vp.IsSetting()) |
| 2364 » { | 2365 { |
| 2365 » » if (!m_bCanSet) return FALSE; | 2366 if (!m_bCanSet) return FALSE; |
| 2366 » » if (!vp.IsArrayObject())return FALSE; | 2367 if (!vp.IsArrayObject())return FALSE; |
| 2367 | 2368 |
| 2368 » » CJS_Array rcArray(m_isolate); | 2369 CJS_Array rcArray(m_isolate); |
| 2369 » » vp >> rcArray; | 2370 vp >> rcArray; |
| 2370 » » 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); |
| 2371 » » rcArray.GetElement(0, Upper_Leftx); | 2372 rcArray.GetElement(0, Upper_Leftx); |
| 2372 » » rcArray.GetElement(1, Upper_Lefty); | 2373 rcArray.GetElement(1, Upper_Lefty); |
| 2373 » » rcArray.GetElement(2, Lower_Rightx); | 2374 rcArray.GetElement(2, Lower_Rightx); |
| 2374 » » rcArray.GetElement(3, Lower_Righty); | 2375 rcArray.GetElement(3, Lower_Righty); |
| 2375 | 2376 |
| 2376 » » 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}; |
| 2377 » » pArray[0] = (FX_FLOAT)Upper_Leftx.ToInt(); | 2378 pArray[0] = (FX_FLOAT)Upper_Leftx.ToInt(); |
| 2378 » » pArray[1] = (FX_FLOAT)Lower_Righty.ToInt(); | 2379 pArray[1] = (FX_FLOAT)Lower_Righty.ToInt(); |
| 2379 » » pArray[2] = (FX_FLOAT)Lower_Rightx.ToInt(); | 2380 pArray[2] = (FX_FLOAT)Lower_Rightx.ToInt(); |
| 2380 » » pArray[3] = (FX_FLOAT)Upper_Lefty.ToInt(); | 2381 pArray[3] = (FX_FLOAT)Upper_Lefty.ToInt(); |
| 2381 | 2382 |
| 2382 » » CPDF_Rect crRect(pArray); | 2383 CPDF_Rect crRect(pArray); |
| 2383 | 2384 |
| 2384 » » if (m_bDelay) | 2385 if (m_bDelay) |
| 2385 » » { | 2386 { |
| 2386 » » » AddDelay_Rect(FP_RECT, crRect); | 2387 AddDelay_Rect(FP_RECT, crRect); |
| 2387 » » } | 2388 } |
| 2388 » » else | 2389 else |
| 2389 » » { | 2390 { |
| 2390 » » » Field::SetRect(m_pDocument, m_FieldName, m_nFormControlI
ndex, crRect); | 2391 Field::SetRect(m_pDocument, m_FieldName, m_nFormControlIndex, crRect
); |
| 2391 » » } | 2392 } |
| 2392 » } | 2393 } |
| 2393 » else | 2394 else |
| 2394 » { | 2395 { |
| 2395 » » CFX_PtrArray FieldArray; | 2396 CFX_PtrArray FieldArray; |
| 2396 » » GetFormFields(m_FieldName,FieldArray); | 2397 GetFormFields(m_FieldName,FieldArray); |
| 2397 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2398 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2398 | 2399 |
| 2399 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2400 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2400 » » ASSERT(pFormField != NULL); | 2401 ASSERT(pFormField != NULL); |
| 2401 | 2402 |
| 2402 » » CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument-
>GetInterForm(); | 2403 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); |
| 2403 » » ASSERT(pInterForm != NULL); | 2404 ASSERT(pInterForm != NULL); |
| 2404 | 2405 |
| 2405 » » CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldCon
trol(pFormField)); | 2406 CPDFSDK_Widget* pWidget = pInterForm->GetWidget(GetSmartFieldControl(pFo
rmField)); |
| 2406 » » if (!pWidget) return FALSE; | 2407 if (!pWidget) return FALSE; |
| 2407 | 2408 |
| 2408 » » CFX_FloatRect crRect = pWidget->GetRect(); | 2409 CFX_FloatRect crRect = pWidget->GetRect(); |
| 2409 » » CJS_Value Upper_Leftx(m_isolate),Upper_Lefty(m_isolate),Lower_Ri
ghtx(m_isolate),Lower_Righty(m_isolate); | 2410 CJS_Value Upper_Leftx(m_isolate),Upper_Lefty(m_isolate),Lower_Rightx(m_i
solate),Lower_Righty(m_isolate); |
| 2410 » » Upper_Leftx = (int32_t)crRect.left; | 2411 Upper_Leftx = (int32_t)crRect.left; |
| 2411 » » Upper_Lefty = (int32_t)crRect.top; | 2412 Upper_Lefty = (int32_t)crRect.top; |
| 2412 » » Lower_Rightx = (int32_t)crRect.right; | 2413 Lower_Rightx = (int32_t)crRect.right; |
| 2413 » » Lower_Righty = (int32_t)crRect.bottom; | 2414 Lower_Righty = (int32_t)crRect.bottom; |
| 2414 | 2415 |
| 2415 » » CJS_Array rcArray(m_isolate); | 2416 CJS_Array rcArray(m_isolate); |
| 2416 » » rcArray.SetElement(0,Upper_Leftx); | 2417 rcArray.SetElement(0,Upper_Leftx); |
| 2417 » » rcArray.SetElement(1,Upper_Lefty); | 2418 rcArray.SetElement(1,Upper_Lefty); |
| 2418 » » rcArray.SetElement(2,Lower_Rightx); | 2419 rcArray.SetElement(2,Lower_Rightx); |
| 2419 » » rcArray.SetElement(3,Lower_Righty); | 2420 rcArray.SetElement(3,Lower_Righty); |
| 2420 | 2421 |
| 2421 » » vp << rcArray; | 2422 vp << rcArray; |
| 2422 » } | 2423 } |
| 2423 | 2424 |
| 2424 » return TRUE; | 2425 return TRUE; |
| 2425 } | 2426 } |
| 2426 | 2427 |
| 2427 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) |
| 2428 { | 2429 { |
| 2429 » ASSERT(pDocument != NULL); | 2430 ASSERT(pDocument != NULL); |
| 2430 | 2431 |
| 2431 » CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterF
orm(); | 2432 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)pDocument->GetInterForm(
); |
| 2432 » ASSERT(pInterForm != NULL); | 2433 ASSERT(pInterForm != NULL); |
| 2433 | 2434 |
| 2434 » CFX_PtrArray FieldArray; | 2435 CFX_PtrArray FieldArray; |
| 2435 » GetFormFields(pDocument, swFieldName, FieldArray); | 2436 GetFormFields(pDocument, swFieldName, FieldArray); |
| 2436 | 2437 |
| 2437 » for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 2438 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 2438 » { | 2439 { |
| 2439 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(i); | 2440 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 2440 » » ASSERT(pFormField != NULL); | 2441 ASSERT(pFormField != NULL); |
| 2441 | 2442 |
| 2442 » » if (nControlIndex < 0) | 2443 if (nControlIndex < 0) |
| 2443 » » { | 2444 { |
| 2444 » » » FX_BOOL bSet = FALSE; | 2445 FX_BOOL bSet = FALSE; |
| 2445 » » » for (int i=0, sz=pFormField->CountControls(); i<sz; i++) | 2446 for (int i=0, sz=pFormField->CountControls(); i<sz; i++) |
| 2446 » » » { | 2447 { |
| 2447 » » » » CPDF_FormControl* pFormControl = pFormField->Get
Control(i); | 2448 CPDF_FormControl* pFormControl = pFormField->GetControl(i); |
| 2448 » » » » ASSERT(pFormControl != NULL); | 2449 ASSERT(pFormControl != NULL); |
| 2449 | 2450 |
| 2450 » » » » if (CPDFSDK_Widget* pWidget = pInterForm->GetWid
get(pFormControl)) | 2451 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 2451 » » » » { | 2452 { |
| 2452 » » » » » CPDF_Rect crRect = rect; | 2453 CPDF_Rect crRect = rect; |
| 2453 | 2454 |
| 2454 » » » » » CPDF_Page* pPDFPage = pWidget->GetPDFPag
e(); | 2455 CPDF_Page* pPDFPage = pWidget->GetPDFPage(); |
| 2455 » » » » » ASSERT(pPDFPage != NULL); | 2456 ASSERT(pPDFPage != NULL); |
| 2456 | 2457 |
| 2457 // » » » » » CPDF_Page* pPDFPage = pPage->GetPage(); | 2458 // CPDF_Page* pPDFPage = pPage->GetPage(); |
| 2458 // » » » » » ASSERT(pPDFPage != NULL); | 2459 // ASSERT(pPDFPage != NULL); |
| 2459 | 2460 |
| 2460 » » » » » crRect.Intersect(pPDFPage->GetPageBBox()
); | 2461 crRect.Intersect(pPDFPage->GetPageBBox()); |
| 2461 | 2462 |
| 2462 » » » » » if (!crRect.IsEmpty()) | 2463 if (!crRect.IsEmpty()) |
| 2463 » » » » » { | 2464 { |
| 2464 » » » » » » CPDF_Rect rcOld = pWidget->GetRe
ct(); | 2465 CPDF_Rect rcOld = pWidget->GetRect(); |
| 2465 » » » » » » if (crRect.left != rcOld.left || | 2466 if (crRect.left != rcOld.left || |
| 2466 » » » » » » » crRect.right != rcOld.ri
ght || | 2467 crRect.right != rcOld.right || |
| 2467 » » » » » » » crRect.top != rcOld.top
|| | 2468 crRect.top != rcOld.top || |
| 2468 » » » » » » » crRect.bottom != rcOld.b
ottom) | 2469 crRect.bottom != rcOld.bottom) |
| 2469 » » » » » » { | 2470 { |
| 2470 » » » » » » » pWidget->SetRect(crRect)
; | 2471 pWidget->SetRect(crRect); |
| 2471 » » » » » » » bSet = TRUE; | 2472 bSet = TRUE; |
| 2472 » » » » » » } | 2473 } |
| 2473 » » » » » } | 2474 } |
| 2474 » » » » } | 2475 } |
| 2475 » » » } | 2476 } |
| 2476 | 2477 |
| 2477 » » » if (bSet) UpdateFormField(pDocument, pFormField, TRUE, T
RUE, TRUE); | 2478 if (bSet) UpdateFormField(pDocument, pFormField, TRUE, TRUE, TRUE); |
| 2478 » » } | 2479 } |
| 2479 » » else | 2480 else |
| 2480 » » { | 2481 { |
| 2481 » » » if(nControlIndex >= pFormField->CountControls()) return; | 2482 if(nControlIndex >= pFormField->CountControls()) return; |
| 2482 » » » if (CPDF_FormControl* pFormControl = pFormField->GetCont
rol(nControlIndex)) | 2483 if (CPDF_FormControl* pFormControl = pFormField->GetControl(nControl
Index)) |
| 2483 » » » { | 2484 { |
| 2484 » » » » if (CPDFSDK_Widget* pWidget = pInterForm->GetWid
get(pFormControl)) | 2485 if (CPDFSDK_Widget* pWidget = pInterForm->GetWidget(pFormControl
)) |
| 2485 » » » » { | 2486 { |
| 2486 » » » » » CPDF_Rect crRect = rect; | 2487 CPDF_Rect crRect = rect; |
| 2487 | 2488 |
| 2488 » » » » » CPDF_Page* pPDFPage = pWidget->GetPDFPag
e(); | 2489 CPDF_Page* pPDFPage = pWidget->GetPDFPage(); |
| 2489 » » » » » ASSERT(pPDFPage != NULL); | 2490 ASSERT(pPDFPage != NULL); |
| 2490 | 2491 |
| 2491 // » » » » » CPDF_Page* pPDFPage = pPage->GetPage(); | 2492 // CPDF_Page* pPDFPage = pPage->GetPage(); |
| 2492 // » » » » » ASSERT(pPDFPage != NULL); | 2493 // ASSERT(pPDFPage != NULL); |
| 2493 | 2494 |
| 2494 » » » » » crRect.Intersect(pPDFPage->GetPageBBox()
); | 2495 crRect.Intersect(pPDFPage->GetPageBBox()); |
| 2495 | 2496 |
| 2496 » » » » » if (!crRect.IsEmpty()) | 2497 if (!crRect.IsEmpty()) |
| 2497 » » » » » { | 2498 { |
| 2498 » » » » » » CPDF_Rect rcOld = pWidget->GetRe
ct(); | 2499 CPDF_Rect rcOld = pWidget->GetRect(); |
| 2499 » » » » » » if (crRect.left != rcOld.left || | 2500 if (crRect.left != rcOld.left || |
| 2500 » » » » » » » crRect.right != rcOld.ri
ght || | 2501 crRect.right != rcOld.right || |
| 2501 » » » » » » » crRect.top != rcOld.top
|| | 2502 crRect.top != rcOld.top || |
| 2502 » » » » » » » crRect.bottom != rcOld.b
ottom) | 2503 crRect.bottom != rcOld.bottom) |
| 2503 » » » » » » { | 2504 { |
| 2504 » » » » » » » pWidget->SetRect(crRect)
; | 2505 pWidget->SetRect(crRect); |
| 2505 » » » » » » » UpdateFormControl(pDocum
ent, pFormControl, TRUE, TRUE, TRUE); | 2506 UpdateFormControl(pDocument, pFormControl, TRUE, TRU
E, TRUE); |
| 2506 » » » » » » } | 2507 } |
| 2507 » » » » » } | 2508 } |
| 2508 » » » » } | 2509 } |
| 2509 » » » } | 2510 } |
| 2510 » » } | 2511 } |
| 2511 » } | 2512 } |
| 2512 } | 2513 } |
| 2513 | 2514 |
| 2514 FX_BOOL Field::required(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2515 FX_BOOL Field::required(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 2515 { | 2516 { |
| 2516 » ASSERT(m_pDocument != NULL); | 2517 ASSERT(m_pDocument != NULL); |
| 2517 | 2518 |
| 2518 » CFX_PtrArray FieldArray; | 2519 CFX_PtrArray FieldArray; |
| 2519 » GetFormFields(m_FieldName,FieldArray); | 2520 GetFormFields(m_FieldName,FieldArray); |
| 2520 » if (FieldArray.GetSize() <= 0) return FALSE; | 2521 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2521 | 2522 |
| 2522 » if (vp.IsSetting()) | 2523 if (vp.IsSetting()) |
| 2523 » { | 2524 { |
| 2524 » » if (!m_bCanSet) return FALSE; | 2525 if (!m_bCanSet) return FALSE; |
| 2525 | 2526 |
| 2526 | 2527 |
| 2527 » » bool bVP; | 2528 bool bVP; |
| 2528 » » vp >> bVP; | 2529 vp >> bVP; |
| 2529 | 2530 |
| 2530 » } | 2531 } |
| 2531 » else | 2532 else |
| 2532 » { | 2533 { |
| 2533 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2534 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2534 » » ASSERT(pFormField != NULL); | 2535 ASSERT(pFormField != NULL); |
| 2535 | 2536 |
| 2536 » » if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON) | 2537 if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON) |
| 2537 » » » return FALSE; | 2538 return FALSE; |
| 2538 | 2539 |
| 2539 » » if (pFormField->GetFieldFlags() & FIELDFLAG_REQUIRED) | 2540 if (pFormField->GetFieldFlags() & FIELDFLAG_REQUIRED) |
| 2540 » » » vp << true; | 2541 vp << true; |
| 2541 » » else | 2542 else |
| 2542 » » » vp << false; | 2543 vp << false; |
| 2543 » } | 2544 } |
| 2544 | 2545 |
| 2545 » return TRUE; | 2546 return TRUE; |
| 2546 } | 2547 } |
| 2547 | 2548 |
| 2548 FX_BOOL Field::richText(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2549 FX_BOOL Field::richText(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 2549 { | 2550 { |
| 2550 » ASSERT(m_pDocument != NULL); | 2551 ASSERT(m_pDocument != NULL); |
| 2551 | 2552 |
| 2552 » if (vp.IsSetting()) | 2553 if (vp.IsSetting()) |
| 2553 » { | 2554 { |
| 2554 » » if (!m_bCanSet) return FALSE; | 2555 if (!m_bCanSet) return FALSE; |
| 2555 | 2556 |
| 2556 » » bool bVP; | 2557 bool bVP; |
| 2557 » » vp >> bVP; | 2558 vp >> bVP; |
| 2558 | 2559 |
| 2559 » » if (m_bDelay) | 2560 if (m_bDelay) |
| 2560 » » { | 2561 { |
| 2561 » » » AddDelay_Bool(FP_RICHTEXT, bVP); | 2562 AddDelay_Bool(FP_RICHTEXT, bVP); |
| 2562 » » } | 2563 } |
| 2563 » » else | 2564 else |
| 2564 » » { | 2565 { |
| 2565 » » » Field::SetRichText(m_pDocument, m_FieldName, m_nFormCont
rolIndex, bVP); | 2566 Field::SetRichText(m_pDocument, m_FieldName, m_nFormControlIndex, bV
P); |
| 2566 » » } | 2567 } |
| 2567 » } | 2568 } |
| 2568 » else | 2569 else |
| 2569 » { | 2570 { |
| 2570 » » CFX_PtrArray FieldArray; | 2571 CFX_PtrArray FieldArray; |
| 2571 » » GetFormFields(m_FieldName,FieldArray); | 2572 GetFormFields(m_FieldName,FieldArray); |
| 2572 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2573 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2573 | 2574 |
| 2574 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2575 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2575 » » ASSERT(pFormField != NULL); | 2576 ASSERT(pFormField != NULL); |
| 2576 | 2577 |
| 2577 » » if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) | 2578 if (pFormField->GetFieldType() != FIELDTYPE_TEXTFIELD) |
| 2578 » » » return FALSE; | 2579 return FALSE; |
| 2579 | 2580 |
| 2580 » » if (pFormField->GetFieldFlags() & FIELDFLAG_RICHTEXT) | 2581 if (pFormField->GetFieldFlags() & FIELDFLAG_RICHTEXT) |
| 2581 » » » vp << true; | 2582 vp << true; |
| 2582 » » else | 2583 else |
| 2583 » » » vp << false; | 2584 vp << false; |
| 2584 » } | 2585 } |
| 2585 | 2586 |
| 2586 » return TRUE; | 2587 return TRUE; |
| 2587 } | 2588 } |
| 2588 | 2589 |
| 2589 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) |
| 2590 { | 2591 { |
| 2591 » //Not supported. | 2592 //Not supported. |
| 2592 } | 2593 } |
| 2593 | 2594 |
| 2594 FX_BOOL Field::richValue(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 2595 FX_BOOL Field::richValue(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 2595 { | 2596 { |
| 2596 » return TRUE; | 2597 return TRUE; |
| 2597 » if (vp.IsSetting()) | 2598 if (vp.IsSetting()) |
| 2598 » { | 2599 { |
| 2599 » » if (!m_bCanSet) return FALSE; | 2600 if (!m_bCanSet) return FALSE; |
| 2600 » » ; | 2601 ; |
| 2601 » } | 2602 } |
| 2602 » else | 2603 else |
| 2603 » { | 2604 { |
| 2604 » » ; | 2605 ; |
| 2605 » } | 2606 } |
| 2606 » return TRUE; | 2607 return TRUE; |
| 2607 } | 2608 } |
| 2608 | 2609 |
| 2609 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) |
| 2610 { | 2611 { |
| 2611 » //Not supported. | 2612 //Not supported. |
| 2612 } | 2613 } |
| 2613 | 2614 |
| 2614 FX_BOOL Field::rotation(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2615 FX_BOOL Field::rotation(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 2615 { | 2616 { |
| 2616 » ASSERT(m_pDocument != NULL); | 2617 ASSERT(m_pDocument != NULL); |
| 2617 | 2618 |
| 2618 » if (vp.IsSetting()) | 2619 if (vp.IsSetting()) |
| 2619 » { | 2620 { |
| 2620 » » if (!m_bCanSet) return FALSE; | 2621 if (!m_bCanSet) return FALSE; |
| 2621 | 2622 |
| 2622 » » int nVP; | 2623 int nVP; |
| 2623 » » vp >> nVP; | 2624 vp >> nVP; |
| 2624 | 2625 |
| 2625 » » if (m_bDelay) | 2626 if (m_bDelay) |
| 2626 » » { | 2627 { |
| 2627 » » » AddDelay_Int(FP_ROTATION, nVP); | 2628 AddDelay_Int(FP_ROTATION, nVP); |
| 2628 » » } | 2629 } |
| 2629 » » else | 2630 else |
| 2630 » » { | 2631 { |
| 2631 » » » Field::SetRotation(m_pDocument, m_FieldName, m_nFormCont
rolIndex, nVP); | 2632 Field::SetRotation(m_pDocument, m_FieldName, m_nFormControlIndex, nV
P); |
| 2632 » » } | 2633 } |
| 2633 » } | 2634 } |
| 2634 » else | 2635 else |
| 2635 » { | 2636 { |
| 2636 » » CFX_PtrArray FieldArray; | 2637 CFX_PtrArray FieldArray; |
| 2637 » » GetFormFields(m_FieldName,FieldArray); | 2638 GetFormFields(m_FieldName,FieldArray); |
| 2638 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2639 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2639 | 2640 |
| 2640 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2641 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2641 » » ASSERT(pFormField != NULL); | 2642 ASSERT(pFormField != NULL); |
| 2642 | 2643 |
| 2643 » » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField
); | 2644 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2644 » » if (!pFormControl)return FALSE; | 2645 if (!pFormControl)return FALSE; |
| 2645 | 2646 |
| 2646 » » vp << (int32_t)pFormControl->GetRotation(); | 2647 vp << (int32_t)pFormControl->GetRotation(); |
| 2647 » } | 2648 } |
| 2648 | 2649 |
| 2649 » return TRUE; | 2650 return TRUE; |
| 2650 } | 2651 } |
| 2651 | 2652 |
| 2652 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) |
| 2653 { | 2654 { |
| 2654 » //Not supported. | 2655 //Not supported. |
| 2655 } | 2656 } |
| 2656 | 2657 |
| 2657 FX_BOOL Field::strokeColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) | 2658 FX_BOOL Field::strokeColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 2658 { | 2659 { |
| 2659 » ASSERT(m_pDocument != NULL); | 2660 ASSERT(m_pDocument != NULL); |
| 2660 | 2661 |
| 2661 » if (vp.IsSetting()) | 2662 if (vp.IsSetting()) |
| 2662 » { | 2663 { |
| 2663 » » if (!m_bCanSet) return FALSE; | 2664 if (!m_bCanSet) return FALSE; |
| 2664 | 2665 |
| 2665 » » if (!vp.IsArrayObject())return FALSE; | 2666 if (!vp.IsArrayObject())return FALSE; |
| 2666 | 2667 |
| 2667 » » CJS_Array crArray(m_isolate); | 2668 CJS_Array crArray(m_isolate); |
| 2668 » » vp >> crArray; | 2669 vp >> crArray; |
| 2669 | 2670 |
| 2670 » » CPWL_Color color; | 2671 CPWL_Color color; |
| 2671 » » color::ConvertArrayToPWLColor(crArray, color); | 2672 color::ConvertArrayToPWLColor(crArray, color); |
| 2672 | 2673 |
| 2673 » » if (m_bDelay) | 2674 if (m_bDelay) |
| 2674 » » { | 2675 { |
| 2675 » » » AddDelay_Color(FP_STROKECOLOR, color); | 2676 AddDelay_Color(FP_STROKECOLOR, color); |
| 2676 » » } | 2677 } |
| 2677 » » else | 2678 else |
| 2678 » » { | 2679 { |
| 2679 » » » Field::SetStrokeColor(m_pDocument, m_FieldName, m_nFormC
ontrolIndex, color); | 2680 Field::SetStrokeColor(m_pDocument, m_FieldName, m_nFormControlIndex,
color); |
| 2680 » » } | 2681 } |
| 2681 » } | 2682 } |
| 2682 » else | 2683 else |
| 2683 » { | 2684 { |
| 2684 » » CFX_PtrArray FieldArray; | 2685 CFX_PtrArray FieldArray; |
| 2685 » » GetFormFields(m_FieldName,FieldArray); | 2686 GetFormFields(m_FieldName,FieldArray); |
| 2686 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2687 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2687 | 2688 |
| 2688 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2689 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2689 » » ASSERT(pFormField != NULL); | 2690 ASSERT(pFormField != NULL); |
| 2690 | 2691 |
| 2691 » » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField
); | 2692 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2692 » » if (!pFormControl)return FALSE; | 2693 if (!pFormControl)return FALSE; |
| 2693 | 2694 |
| 2694 » » int iColorType; | 2695 int iColorType; |
| 2695 » » pFormControl->GetBorderColor(iColorType); | 2696 pFormControl->GetBorderColor(iColorType); |
| 2696 | 2697 |
| 2697 » » CPWL_Color color; | 2698 CPWL_Color color; |
| 2698 | 2699 |
| 2699 » » if (iColorType == COLORTYPE_TRANSPARENT) | 2700 if (iColorType == COLORTYPE_TRANSPARENT) |
| 2700 » » { | 2701 { |
| 2701 » » » color = CPWL_Color(COLORTYPE_TRANSPARENT); | 2702 color = CPWL_Color(COLORTYPE_TRANSPARENT); |
| 2702 » » } | 2703 } |
| 2703 » » else if (iColorType == COLORTYPE_GRAY) | 2704 else if (iColorType == COLORTYPE_GRAY) |
| 2704 » » { | 2705 { |
| 2705 » » » color = CPWL_Color(COLORTYPE_GRAY, pFormControl->GetOrig
inalBorderColor(0)); | 2706 color = CPWL_Color(COLORTYPE_GRAY, pFormControl->GetOriginalBorderCo
lor(0)); |
| 2706 » » } | 2707 } |
| 2707 » » else if (iColorType == COLORTYPE_RGB) | 2708 else if (iColorType == COLORTYPE_RGB) |
| 2708 » » { | 2709 { |
| 2709 » » » color = CPWL_Color(COLORTYPE_RGB, pFormControl->GetOrigi
nalBorderColor(0), | 2710 color = CPWL_Color(COLORTYPE_RGB, pFormControl->GetOriginalBorderCol
or(0), |
| 2710 » » » » pFormControl->GetOriginalBorderColor(1), | 2711 pFormControl->GetOriginalBorderColor(1), |
| 2711 » » » » pFormControl->GetOriginalBorderColor(2)); | 2712 pFormControl->GetOriginalBorderColor(2)); |
| 2712 » » } | 2713 } |
| 2713 » » else if (iColorType == COLORTYPE_CMYK) | 2714 else if (iColorType == COLORTYPE_CMYK) |
| 2714 » » { | 2715 { |
| 2715 » » » color = CPWL_Color(COLORTYPE_CMYK, pFormControl->GetOrig
inalBorderColor(0), | 2716 color = CPWL_Color(COLORTYPE_CMYK, pFormControl->GetOriginalBorderCo
lor(0), |
| 2716 » » » » pFormControl->GetOriginalBorderColor(1), | 2717 pFormControl->GetOriginalBorderColor(1), |
| 2717 » » » » pFormControl->GetOriginalBorderColor(2), | 2718 pFormControl->GetOriginalBorderColor(2), |
| 2718 » » » » pFormControl->GetOriginalBorderColor(3)); | 2719 pFormControl->GetOriginalBorderColor(3)); |
| 2719 » » } | 2720 } |
| 2720 » » else | 2721 else |
| 2721 » » » return FALSE; | 2722 return FALSE; |
| 2722 | 2723 |
| 2723 » » CJS_Array crArray(m_isolate); | 2724 CJS_Array crArray(m_isolate); |
| 2724 » » color::ConvertPWLColorToArray(color, crArray); | 2725 color::ConvertPWLColorToArray(color, crArray); |
| 2725 vp << crArray; | 2726 vp << crArray; |
| 2726 » } | 2727 } |
| 2727 | 2728 |
| 2728 » return TRUE; | 2729 return TRUE; |
| 2729 } | 2730 } |
| 2730 | 2731 |
| 2731 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) |
| 2732 { | 2733 { |
| 2733 » //Not supported. | 2734 //Not supported. |
| 2734 } | 2735 } |
| 2735 | 2736 |
| 2736 FX_BOOL Field::style(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) | 2737 FX_BOOL Field::style(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 2737 { | 2738 { |
| 2738 » ASSERT(m_pDocument != NULL); | 2739 ASSERT(m_pDocument != NULL); |
| 2739 | 2740 |
| 2740 » if (vp.IsSetting()) | 2741 if (vp.IsSetting()) |
| 2741 » { | 2742 { |
| 2742 » » if (!m_bCanSet) return FALSE; | 2743 if (!m_bCanSet) return FALSE; |
| 2743 | 2744 |
| 2744 » » CFX_ByteString csBCaption; | 2745 CFX_ByteString csBCaption; |
| 2745 » » vp >> csBCaption; | 2746 vp >> csBCaption; |
| 2746 | 2747 |
| 2747 » » if (m_bDelay) | 2748 if (m_bDelay) |
| 2748 » » { | 2749 { |
| 2749 » » » AddDelay_String(FP_STYLE, csBCaption); | 2750 AddDelay_String(FP_STYLE, csBCaption); |
| 2750 » » } | 2751 } |
| 2751 » » else | 2752 else |
| 2752 » » { | 2753 { |
| 2753 » » » Field::SetStyle(m_pDocument, m_FieldName, m_nFormControl
Index, csBCaption); | 2754 Field::SetStyle(m_pDocument, m_FieldName, m_nFormControlIndex, csBCa
ption); |
| 2754 » » } | 2755 } |
| 2755 » } | 2756 } |
| 2756 » else | 2757 else |
| 2757 » { | 2758 { |
| 2758 » » CFX_PtrArray FieldArray; | 2759 CFX_PtrArray FieldArray; |
| 2759 » » GetFormFields(m_FieldName,FieldArray); | 2760 GetFormFields(m_FieldName,FieldArray); |
| 2760 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2761 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2761 | 2762 |
| 2762 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2763 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2763 » » ASSERT(pFormField != NULL); | 2764 ASSERT(pFormField != NULL); |
| 2764 | 2765 |
| 2765 » » if (pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON && | 2766 if (pFormField->GetFieldType() != FIELDTYPE_RADIOBUTTON && |
| 2766 » » » pFormField->GetFieldType() != FIELDTYPE_CHECKBOX) | 2767 pFormField->GetFieldType() != FIELDTYPE_CHECKBOX) |
| 2767 » » » return FALSE; | 2768 return FALSE; |
| 2768 | 2769 |
| 2769 » » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField
); | 2770 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2770 » » if (!pFormControl) return FALSE; | 2771 if (!pFormControl) return FALSE; |
| 2771 | 2772 |
| 2772 » » CFX_WideString csWCaption = pFormControl->GetNormalCaption(); | 2773 CFX_WideString csWCaption = pFormControl->GetNormalCaption(); |
| 2773 » » CFX_ByteString csBCaption; | 2774 CFX_ByteString csBCaption; |
| 2774 | 2775 |
| 2775 » » switch (csWCaption[0]) | 2776 switch (csWCaption[0]) |
| 2776 » » { | 2777 { |
| 2777 » » » case L'l': | 2778 case L'l': |
| 2778 » » » » csBCaption = "circle"; | 2779 csBCaption = "circle"; |
| 2779 » » » » break; | 2780 break; |
| 2780 » » » case L'8': | 2781 case L'8': |
| 2781 » » » » csBCaption = "cross"; | 2782 csBCaption = "cross"; |
| 2782 » » » » break; | 2783 break; |
| 2783 » » » case L'u': | 2784 case L'u': |
| 2784 » » » » csBCaption = "diamond"; | 2785 csBCaption = "diamond"; |
| 2785 » » » » break; | 2786 break; |
| 2786 » » » case L'n': | 2787 case L'n': |
| 2787 » » » » csBCaption = "square"; | 2788 csBCaption = "square"; |
| 2788 » » » » break; | 2789 break; |
| 2789 » » » case L'H': | 2790 case L'H': |
| 2790 » » » » csBCaption = "star"; | 2791 csBCaption = "star"; |
| 2791 » » » » break; | 2792 break; |
| 2792 » » » default: //L'4' | 2793 default: //L'4' |
| 2793 » » » » csBCaption = "check"; | 2794 csBCaption = "check"; |
| 2794 » » » » break; | 2795 break; |
| 2795 » » } | 2796 } |
| 2796 » » vp << csBCaption; | 2797 vp << csBCaption; |
| 2797 » } | 2798 } |
| 2798 | 2799 |
| 2799 » return TRUE; | 2800 return TRUE; |
| 2800 } | 2801 } |
| 2801 | 2802 |
| 2802 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, |
| 2803 » » » » » const CFX_ByteString& string) | 2804 const CFX_ByteString& string) |
| 2804 { | 2805 { |
| 2805 » //Not supported. | 2806 //Not supported. |
| 2806 } | 2807 } |
| 2807 | 2808 |
| 2808 FX_BOOL Field::submitName(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) | 2809 FX_BOOL Field::submitName(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString&
sError) |
| 2809 { | 2810 { |
| 2810 » return TRUE; | 2811 return TRUE; |
| 2811 } | 2812 } |
| 2812 | 2813 |
| 2813 FX_BOOL Field::textColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) | 2814 FX_BOOL Field::textColor(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& s
Error) |
| 2814 { | 2815 { |
| 2815 » ASSERT(m_pDocument != NULL); | 2816 ASSERT(m_pDocument != NULL); |
| 2816 | 2817 |
| 2817 » if (vp.IsSetting()) | 2818 if (vp.IsSetting()) |
| 2818 » { | 2819 { |
| 2819 » » if (!m_bCanSet) return FALSE; | 2820 if (!m_bCanSet) return FALSE; |
| 2820 | 2821 |
| 2821 » » CJS_Array crArray(m_isolate); | 2822 CJS_Array crArray(m_isolate); |
| 2822 » » if (!vp.IsArrayObject())return FALSE; | 2823 if (!vp.IsArrayObject())return FALSE; |
| 2823 » » vp >> crArray; | 2824 vp >> crArray; |
| 2824 | 2825 |
| 2825 » » CPWL_Color color; | 2826 CPWL_Color color; |
| 2826 » » color::ConvertArrayToPWLColor(crArray, color); | 2827 color::ConvertArrayToPWLColor(crArray, color); |
| 2827 | 2828 |
| 2828 » » if (m_bDelay) | 2829 if (m_bDelay) |
| 2829 » » { | 2830 { |
| 2830 » » » AddDelay_Color(FP_TEXTCOLOR, color); | 2831 AddDelay_Color(FP_TEXTCOLOR, color); |
| 2831 » » } | 2832 } |
| 2832 » » else | 2833 else |
| 2833 » » { | 2834 { |
| 2834 » » » Field::SetTextColor(m_pDocument, m_FieldName, m_nFormCon
trolIndex, color); | 2835 Field::SetTextColor(m_pDocument, m_FieldName, m_nFormControlIndex, c
olor); |
| 2835 » » } | 2836 } |
| 2836 » } | 2837 } |
| 2837 » else | 2838 else |
| 2838 » { | 2839 { |
| 2839 » » CFX_PtrArray FieldArray; | 2840 CFX_PtrArray FieldArray; |
| 2840 » » GetFormFields(m_FieldName,FieldArray); | 2841 GetFormFields(m_FieldName,FieldArray); |
| 2841 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2842 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2842 | 2843 |
| 2843 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2844 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2844 » » ASSERT(pFormField != NULL); | 2845 ASSERT(pFormField != NULL); |
| 2845 | 2846 |
| 2846 » » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField
); | 2847 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2847 » » if (!pFormControl)return FALSE; | 2848 if (!pFormControl)return FALSE; |
| 2848 | 2849 |
| 2849 » » int iColorType; | 2850 int iColorType; |
| 2850 » » FX_ARGB color; | 2851 FX_ARGB color; |
| 2851 » » CPDF_DefaultAppearance FieldAppearance = pFormControl->GetDefaul
tAppearance(); | 2852 CPDF_DefaultAppearance FieldAppearance = pFormControl->GetDefaultAppeara
nce(); |
| 2852 » » FieldAppearance.GetColor(color, iColorType); | 2853 FieldAppearance.GetColor(color, iColorType); |
| 2853 » » int32_t a,r,g,b; | 2854 int32_t a,r,g,b; |
| 2854 » » ArgbDecode(color, a, r, g, b); | 2855 ArgbDecode(color, a, r, g, b); |
| 2855 | 2856 |
| 2856 » » CPWL_Color crRet = CPWL_Color(COLORTYPE_RGB, r / 255.0f, | 2857 CPWL_Color crRet = CPWL_Color(COLORTYPE_RGB, r / 255.0f, |
| 2857 » » » » g / 255.0f, | 2858 g / 255.0f, |
| 2858 » » » » b / 255.0f); | 2859 b / 255.0f); |
| 2859 | 2860 |
| 2860 » » if (iColorType == COLORTYPE_TRANSPARENT) | 2861 if (iColorType == COLORTYPE_TRANSPARENT) |
| 2861 » » » crRet = CPWL_Color(COLORTYPE_TRANSPARENT); | 2862 crRet = CPWL_Color(COLORTYPE_TRANSPARENT); |
| 2862 | 2863 |
| 2863 » » CJS_Array crArray(m_isolate); | 2864 CJS_Array crArray(m_isolate); |
| 2864 » » color::ConvertPWLColorToArray(crRet, crArray); | 2865 color::ConvertPWLColorToArray(crRet, crArray); |
| 2865 vp << crArray; | 2866 vp << crArray; |
| 2866 » } | 2867 } |
| 2867 | 2868 |
| 2868 » return TRUE; | 2869 return TRUE; |
| 2869 } | 2870 } |
| 2870 | 2871 |
| 2871 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) |
| 2872 { | 2873 { |
| 2873 » //Not supported. | 2874 //Not supported. |
| 2874 } | 2875 } |
| 2875 | 2876 |
| 2876 FX_BOOL Field::textFont(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2877 FX_BOOL Field::textFont(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 2877 { | 2878 { |
| 2878 » ASSERT(m_pDocument != NULL); | 2879 ASSERT(m_pDocument != NULL); |
| 2879 | 2880 |
| 2880 » if (vp.IsSetting()) | 2881 if (vp.IsSetting()) |
| 2881 » { | 2882 { |
| 2882 » » if (!m_bCanSet) return FALSE; | 2883 if (!m_bCanSet) return FALSE; |
| 2883 | 2884 |
| 2884 » » CFX_ByteString csFontName; | 2885 CFX_ByteString csFontName; |
| 2885 » » vp >> csFontName; | 2886 vp >> csFontName; |
| 2886 » » if (csFontName.IsEmpty()) return FALSE; | 2887 if (csFontName.IsEmpty()) return FALSE; |
| 2887 | 2888 |
| 2888 » » if (m_bDelay) | 2889 if (m_bDelay) |
| 2889 » » { | 2890 { |
| 2890 » » » AddDelay_String(FP_TEXTFONT, csFontName); | 2891 AddDelay_String(FP_TEXTFONT, csFontName); |
| 2891 » » } | 2892 } |
| 2892 » » else | 2893 else |
| 2893 » » { | 2894 { |
| 2894 » » » Field::SetTextFont(m_pDocument, m_FieldName, m_nFormCont
rolIndex, csFontName); | 2895 Field::SetTextFont(m_pDocument, m_FieldName, m_nFormControlIndex, cs
FontName); |
| 2895 » » } | 2896 } |
| 2896 » } | 2897 } |
| 2897 » else | 2898 else |
| 2898 » { | 2899 { |
| 2899 » » CFX_PtrArray FieldArray; | 2900 CFX_PtrArray FieldArray; |
| 2900 » » GetFormFields(m_FieldName,FieldArray); | 2901 GetFormFields(m_FieldName,FieldArray); |
| 2901 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2902 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2902 | 2903 |
| 2903 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2904 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2904 » » ASSERT(pFormField != NULL); | 2905 ASSERT(pFormField != NULL); |
| 2905 | 2906 |
| 2906 » » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField
); | 2907 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2907 » » if (!pFormControl)return FALSE; | 2908 if (!pFormControl)return FALSE; |
| 2908 | 2909 |
| 2909 » » int nFieldType = pFormField->GetFieldType(); | 2910 int nFieldType = pFormField->GetFieldType(); |
| 2910 | 2911 |
| 2911 » » if (nFieldType == FIELDTYPE_PUSHBUTTON || | 2912 if (nFieldType == FIELDTYPE_PUSHBUTTON || |
| 2912 » » » nFieldType == FIELDTYPE_COMBOBOX || | 2913 nFieldType == FIELDTYPE_COMBOBOX || |
| 2913 » » » nFieldType == FIELDTYPE_LISTBOX || | 2914 nFieldType == FIELDTYPE_LISTBOX || |
| 2914 » » » nFieldType == FIELDTYPE_TEXTFIELD) | 2915 nFieldType == FIELDTYPE_TEXTFIELD) |
| 2915 » » { | 2916 { |
| 2916 » » » CPDF_Font * pFont = pFormControl->GetDefaultControlFont(
); | 2917 CPDF_Font * pFont = pFormControl->GetDefaultControlFont(); |
| 2917 » » » if (!pFont) return FALSE; | 2918 if (!pFont) return FALSE; |
| 2918 | 2919 |
| 2919 » » » vp << pFont->GetBaseFont(); | 2920 vp << pFont->GetBaseFont(); |
| 2920 » » } | 2921 } |
| 2921 » » else | 2922 else |
| 2922 » » » return FALSE; | 2923 return FALSE; |
| 2923 » } | 2924 } |
| 2924 | 2925 |
| 2925 » return TRUE; | 2926 return TRUE; |
| 2926 } | 2927 } |
| 2927 | 2928 |
| 2928 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) |
| 2929 { | 2930 { |
| 2930 » //Not supported. | 2931 //Not supported. |
| 2931 } | 2932 } |
| 2932 | 2933 |
| 2933 FX_BOOL Field::textSize(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 2934 FX_BOOL Field::textSize(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 2934 { | 2935 { |
| 2935 » ASSERT(m_pDocument != NULL); | 2936 ASSERT(m_pDocument != NULL); |
| 2936 | 2937 |
| 2937 » if (vp.IsSetting()) | 2938 if (vp.IsSetting()) |
| 2938 » { | 2939 { |
| 2939 » » if (!m_bCanSet) return FALSE; | 2940 if (!m_bCanSet) return FALSE; |
| 2940 | 2941 |
| 2941 » » int nVP; | 2942 int nVP; |
| 2942 » » vp >> nVP; | 2943 vp >> nVP; |
| 2943 | 2944 |
| 2944 » » if (m_bDelay) | 2945 if (m_bDelay) |
| 2945 » » { | 2946 { |
| 2946 » » » AddDelay_Int(FP_TEXTSIZE, nVP); | 2947 AddDelay_Int(FP_TEXTSIZE, nVP); |
| 2947 » » } | 2948 } |
| 2948 » » else | 2949 else |
| 2949 » » { | 2950 { |
| 2950 » » » Field::SetTextSize(m_pDocument, m_FieldName, m_nFormCont
rolIndex, nVP); | 2951 Field::SetTextSize(m_pDocument, m_FieldName, m_nFormControlIndex, nV
P); |
| 2951 » » } | 2952 } |
| 2952 » } | 2953 } |
| 2953 » else | 2954 else |
| 2954 » { | 2955 { |
| 2955 » » CFX_PtrArray FieldArray; | 2956 CFX_PtrArray FieldArray; |
| 2956 » » GetFormFields(m_FieldName,FieldArray); | 2957 GetFormFields(m_FieldName,FieldArray); |
| 2957 » » if (FieldArray.GetSize() <= 0) return FALSE; | 2958 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2958 | 2959 |
| 2959 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 2960 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2960 » » ASSERT(pFormField != NULL); | 2961 ASSERT(pFormField != NULL); |
| 2961 | 2962 |
| 2962 » » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField
); | 2963 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 2963 » » if (!pFormControl)return FALSE; | 2964 if (!pFormControl)return FALSE; |
| 2964 | 2965 |
| 2965 » » CPDF_DefaultAppearance FieldAppearance = pFormControl->GetDefaul
tAppearance(); | 2966 CPDF_DefaultAppearance FieldAppearance = pFormControl->GetDefaultAppeara
nce(); |
| 2966 | 2967 |
| 2967 » » CFX_ByteString csFontNameTag; | 2968 CFX_ByteString csFontNameTag; |
| 2968 » » FX_FLOAT fFontSize; | 2969 FX_FLOAT fFontSize; |
| 2969 » » FieldAppearance.GetFont(csFontNameTag,fFontSize); | 2970 FieldAppearance.GetFont(csFontNameTag,fFontSize); |
| 2970 | 2971 |
| 2971 » » vp << (int)fFontSize; | 2972 vp << (int)fFontSize; |
| 2972 » } | 2973 } |
| 2973 | 2974 |
| 2974 » return TRUE; | 2975 return TRUE; |
| 2975 } | 2976 } |
| 2976 | 2977 |
| 2977 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) |
| 2978 { | 2979 { |
| 2979 » //Not supported. | 2980 //Not supported. |
| 2980 } | 2981 } |
| 2981 | 2982 |
| 2982 FX_BOOL Field::type(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) | 2983 FX_BOOL Field::type(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sError
) |
| 2983 { | 2984 { |
| 2984 » ASSERT(m_pDocument != NULL); | 2985 ASSERT(m_pDocument != NULL); |
| 2985 | 2986 |
| 2986 » if (!vp.IsGetting()) return FALSE; | 2987 if (!vp.IsGetting()) return FALSE; |
| 2987 | 2988 |
| 2988 » CFX_PtrArray FieldArray; | 2989 CFX_PtrArray FieldArray; |
| 2989 » GetFormFields(m_FieldName,FieldArray); | 2990 GetFormFields(m_FieldName,FieldArray); |
| 2990 » if (FieldArray.GetSize() <= 0) return FALSE; | 2991 if (FieldArray.GetSize() <= 0) return FALSE; |
| 2991 | 2992 |
| 2992 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 2993 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 2993 » ASSERT(pFormField != NULL); | 2994 ASSERT(pFormField != NULL); |
| 2994 | 2995 |
| 2995 » switch (pFormField->GetFieldType()) | 2996 switch (pFormField->GetFieldType()) |
| 2996 » { | 2997 { |
| 2997 » » case FIELDTYPE_UNKNOWN: | 2998 case FIELDTYPE_UNKNOWN: |
| 2998 » » » vp << L"unknown"; | 2999 vp << L"unknown"; |
| 2999 » » » break; | 3000 break; |
| 3000 » » case FIELDTYPE_PUSHBUTTON: | 3001 case FIELDTYPE_PUSHBUTTON: |
| 3001 » » » vp << L"button"; | 3002 vp << L"button"; |
| 3002 » » » break; | 3003 break; |
| 3003 » » case FIELDTYPE_CHECKBOX: | 3004 case FIELDTYPE_CHECKBOX: |
| 3004 » » » vp << L"checkbox"; | 3005 vp << L"checkbox"; |
| 3005 » » » break; | 3006 break; |
| 3006 » » case FIELDTYPE_RADIOBUTTON: | 3007 case FIELDTYPE_RADIOBUTTON: |
| 3007 » » » vp << L"radiobutton"; | 3008 vp << L"radiobutton"; |
| 3008 » » » break; | 3009 break; |
| 3009 » » case FIELDTYPE_COMBOBOX: | 3010 case FIELDTYPE_COMBOBOX: |
| 3010 » » » vp << L"combobox"; | 3011 vp << L"combobox"; |
| 3011 » » » break; | 3012 break; |
| 3012 » » case FIELDTYPE_LISTBOX: | 3013 case FIELDTYPE_LISTBOX: |
| 3013 » » » vp << L"listbox"; | 3014 vp << L"listbox"; |
| 3014 » » » break; | 3015 break; |
| 3015 » » case FIELDTYPE_TEXTFIELD: | 3016 case FIELDTYPE_TEXTFIELD: |
| 3016 » » » vp << L"text"; | 3017 vp << L"text"; |
| 3017 » » » break; | 3018 break; |
| 3018 » » case FIELDTYPE_SIGNATURE: | 3019 case FIELDTYPE_SIGNATURE: |
| 3019 » » » vp << L"signature"; | 3020 vp << L"signature"; |
| 3020 » » » break; | 3021 break; |
| 3021 » » default : | 3022 default : |
| 3022 » » » vp << L"unknown"; | 3023 vp << L"unknown"; |
| 3023 » » » break; | 3024 break; |
| 3024 » } | 3025 } |
| 3025 | 3026 |
| 3026 » return TRUE; | 3027 return TRUE; |
| 3027 } | 3028 } |
| 3028 | 3029 |
| 3029 FX_BOOL Field::userName(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) | 3030 FX_BOOL Field::userName(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sE
rror) |
| 3030 { | 3031 { |
| 3031 » ASSERT(m_pDocument != NULL); | 3032 ASSERT(m_pDocument != NULL); |
| 3032 | 3033 |
| 3033 » if (vp.IsSetting()) | 3034 if (vp.IsSetting()) |
| 3034 » { | 3035 { |
| 3035 » » if (!m_bCanSet) return FALSE; | 3036 if (!m_bCanSet) return FALSE; |
| 3036 | 3037 |
| 3037 » » CFX_WideString swName; | 3038 CFX_WideString swName; |
| 3038 » » vp >> swName; | 3039 vp >> swName; |
| 3039 | 3040 |
| 3040 » » if (m_bDelay) | 3041 if (m_bDelay) |
| 3041 » » { | 3042 { |
| 3042 » » » AddDelay_WideString(FP_USERNAME, swName); | 3043 AddDelay_WideString(FP_USERNAME, swName); |
| 3043 » » } | 3044 } |
| 3044 » » else | 3045 else |
| 3045 » » { | 3046 { |
| 3046 » » » Field::SetUserName(m_pDocument, m_FieldName, m_nFormCont
rolIndex, swName); | 3047 Field::SetUserName(m_pDocument, m_FieldName, m_nFormControlIndex, sw
Name); |
| 3047 » » } | 3048 } |
| 3048 » } | 3049 } |
| 3049 » else | 3050 else |
| 3050 » { | 3051 { |
| 3051 » » CFX_PtrArray FieldArray; | 3052 CFX_PtrArray FieldArray; |
| 3052 » » GetFormFields(m_FieldName,FieldArray); | 3053 GetFormFields(m_FieldName,FieldArray); |
| 3053 » » if (FieldArray.GetSize() <= 0) return FALSE; | 3054 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3054 | 3055 |
| 3055 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 3056 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3056 » » ASSERT(pFormField != NULL); | 3057 ASSERT(pFormField != NULL); |
| 3057 | 3058 |
| 3058 » » vp << (CFX_WideString)pFormField->GetAlternateName(); | 3059 vp << (CFX_WideString)pFormField->GetAlternateName(); |
| 3059 » } | 3060 } |
| 3060 | 3061 |
| 3061 » return TRUE; | 3062 return TRUE; |
| 3062 } | 3063 } |
| 3063 | 3064 |
| 3064 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) |
| 3065 { | 3066 { |
| 3066 » //Not supported. | 3067 //Not supported. |
| 3067 } | 3068 } |
| 3068 | 3069 |
| 3069 FX_BOOL Field::value(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) | 3070 FX_BOOL Field::value(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErro
r) |
| 3070 { | 3071 { |
| 3071 » ASSERT(m_pDocument != NULL); | 3072 ASSERT(m_pDocument != NULL); |
| 3072 | 3073 |
| 3073 » if (vp.IsSetting()) | 3074 if (vp.IsSetting()) |
| 3074 » { | 3075 { |
| 3075 » » if (!m_bCanSet) return FALSE; | 3076 if (!m_bCanSet) return FALSE; |
| 3076 | 3077 |
| 3077 » » CJS_WideStringArray strArray; | 3078 CJS_WideStringArray strArray; |
| 3078 | 3079 |
| 3079 » » if (vp.IsArrayObject()) | 3080 if (vp.IsArrayObject()) |
| 3080 » » { | 3081 { |
| 3081 » » » CJS_Array ValueArray(m_isolate); | 3082 CJS_Array ValueArray(m_isolate); |
| 3082 » » » vp.ConvertToArray(ValueArray); | 3083 vp.ConvertToArray(ValueArray); |
| 3083 » » » for (int i = 0,sz = ValueArray.GetLength(); i < sz; i++) | 3084 for (int i = 0,sz = ValueArray.GetLength(); i < sz; i++) |
| 3084 » » » { | 3085 { |
| 3085 » » » » CJS_Value ElementValue(m_isolate); | 3086 CJS_Value ElementValue(m_isolate); |
| 3086 » » » » ValueArray.GetElement(i, ElementValue); | 3087 ValueArray.GetElement(i, ElementValue); |
| 3087 » » » » strArray.Add(ElementValue.ToCFXWideString()); | 3088 strArray.Add(ElementValue.ToCFXWideString()); |
| 3088 » » » } | 3089 } |
| 3089 » » } | 3090 } |
| 3090 » » else | 3091 else |
| 3091 » » { | 3092 { |
| 3092 » » » CFX_WideString swValue; | 3093 CFX_WideString swValue; |
| 3093 » » » vp >> swValue; | 3094 vp >> swValue; |
| 3094 | 3095 |
| 3095 » » » strArray.Add(swValue); | 3096 strArray.Add(swValue); |
| 3096 » » } | 3097 } |
| 3097 | 3098 |
| 3098 » » if (m_bDelay) | 3099 if (m_bDelay) |
| 3099 » » { | 3100 { |
| 3100 » » » AddDelay_WideStringArray(FP_VALUE, strArray); | 3101 AddDelay_WideStringArray(FP_VALUE, strArray); |
| 3101 » » } | 3102 } |
| 3102 » » else | 3103 else |
| 3103 » » { | 3104 { |
| 3104 » » » Field::SetValue(m_pDocument, m_FieldName, m_nFormControl
Index, strArray); | 3105 Field::SetValue(m_pDocument, m_FieldName, m_nFormControlIndex, strAr
ray); |
| 3105 » » } | 3106 } |
| 3106 » } | 3107 } |
| 3107 » else | 3108 else |
| 3108 » { | 3109 { |
| 3109 » » CFX_PtrArray FieldArray; | 3110 CFX_PtrArray FieldArray; |
| 3110 » » GetFormFields(m_FieldName,FieldArray); | 3111 GetFormFields(m_FieldName,FieldArray); |
| 3111 » » if (FieldArray.GetSize() <= 0) return FALSE; | 3112 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3112 | 3113 |
| 3113 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(0); | 3114 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3114 » » ASSERT(pFormField != NULL); | 3115 ASSERT(pFormField != NULL); |
| 3115 | 3116 |
| 3116 | 3117 |
| 3117 | 3118 |
| 3118 » » switch (pFormField->GetFieldType()) | 3119 switch (pFormField->GetFieldType()) |
| 3119 » » { | 3120 { |
| 3120 » » case FIELDTYPE_PUSHBUTTON: | 3121 case FIELDTYPE_PUSHBUTTON: |
| 3121 » » » return FALSE; | 3122 return FALSE; |
| 3122 » » case FIELDTYPE_COMBOBOX: | 3123 case FIELDTYPE_COMBOBOX: |
| 3123 » » case FIELDTYPE_TEXTFIELD: | 3124 case FIELDTYPE_TEXTFIELD: |
| 3124 » » » { | 3125 { |
| 3125 » » » » CFX_WideString swValue = pFormField->GetValue(); | 3126 CFX_WideString swValue = pFormField->GetValue(); |
| 3126 | 3127 |
| 3127 » » » » double dRet; | 3128 double dRet; |
| 3128 » » » » FX_BOOL bDot; | 3129 FX_BOOL bDot; |
| 3129 » » » » if (CJS_PublicMethods::ConvertStringToNumber(swV
alue.c_str(), dRet, bDot)) | 3130 if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_str(), dR
et, bDot)) |
| 3130 » » » » { | 3131 { |
| 3131 » » » » » if (bDot) | 3132 if (bDot) |
| 3132 » » » » » » vp << dRet; | 3133 vp << dRet; |
| 3133 » » » » » else | 3134 else |
| 3134 » » » » » » vp << dRet; | 3135 vp << dRet; |
| 3135 » » » » } | 3136 } |
| 3136 » » » » else | 3137 else |
| 3137 » » » » » vp << swValue; | 3138 vp << swValue; |
| 3138 » » » } | 3139 } |
| 3139 » » » break; | 3140 break; |
| 3140 » » case FIELDTYPE_LISTBOX: | 3141 case FIELDTYPE_LISTBOX: |
| 3141 » » » { | 3142 { |
| 3142 » » » » if (pFormField->CountSelectedItems() > 1) | 3143 if (pFormField->CountSelectedItems() > 1) |
| 3143 » » » » { | 3144 { |
| 3144 » » » » » CJS_Array ValueArray(m_isolate); | 3145 CJS_Array ValueArray(m_isolate); |
| 3145 » » » » » CJS_Value ElementValue(m_isolate); | 3146 CJS_Value ElementValue(m_isolate); |
| 3146 » » » » » int iIndex; | 3147 int iIndex; |
| 3147 » » » » » for (int i = 0, sz = pFormField->CountSe
lectedItems(); i < sz; i++) | 3148 for (int i = 0, sz = pFormField->CountSelectedItems(); i < s
z; i++) |
| 3148 » » » » » { | 3149 { |
| 3149 » » » » » » iIndex = pFormField->GetSelected
Index(i); | 3150 iIndex = pFormField->GetSelectedIndex(i); |
| 3150 » » » » » » ElementValue = pFormField->GetOp
tionValue(iIndex).c_str(); | 3151 ElementValue = pFormField->GetOptionValue(iIndex).c_str(
); |
| 3151 » » » » » » if (FXSYS_wcslen(ElementValue.To
CFXWideString().c_str()) == 0) | 3152 if (FXSYS_wcslen(ElementValue.ToCFXWideString().c_str())
== 0) |
| 3152 » » » » » » » ElementValue = pFormFiel
d->GetOptionLabel(iIndex).c_str(); | 3153 ElementValue = pFormField->GetOptionLabel(iIndex).c_
str(); |
| 3153 » » » » » » ValueArray.SetElement(i, Element
Value); | 3154 ValueArray.SetElement(i, ElementValue); |
| 3154 » » » » » } | 3155 } |
| 3155 » » » » » vp << ValueArray; | 3156 vp << ValueArray; |
| 3156 » » » » } | 3157 } |
| 3157 » » » » else | 3158 else |
| 3158 » » » » { | 3159 { |
| 3159 » » » » » CFX_WideString swValue = pFormField->Get
Value(); | 3160 CFX_WideString swValue = pFormField->GetValue(); |
| 3160 | 3161 |
| 3161 » » » » » double dRet; | 3162 double dRet; |
| 3162 » » » » » FX_BOOL bDot; | 3163 FX_BOOL bDot; |
| 3163 » » » » » if (CJS_PublicMethods::ConvertStringToNu
mber(swValue.c_str(), dRet, bDot)) | 3164 if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_str()
, dRet, bDot)) |
| 3164 » » » » » { | 3165 { |
| 3165 » » » » » » if (bDot) | 3166 if (bDot) |
| 3166 » » » » » » » vp << dRet; | 3167 vp << dRet; |
| 3167 » » » » » » else | 3168 else |
| 3168 » » » » » » » vp << dRet; | 3169 vp << dRet; |
| 3169 » » » » » } | 3170 } |
| 3170 » » » » » else | 3171 else |
| 3171 » » » » » » vp << swValue; | 3172 vp << swValue; |
| 3172 » » » » } | 3173 } |
| 3173 » » » } | 3174 } |
| 3174 » » » break; | 3175 break; |
| 3175 » » case FIELDTYPE_CHECKBOX: | 3176 case FIELDTYPE_CHECKBOX: |
| 3176 » » case FIELDTYPE_RADIOBUTTON: | 3177 case FIELDTYPE_RADIOBUTTON: |
| 3177 » » » { | 3178 { |
| 3178 » » » » FX_BOOL bFind = FALSE; | 3179 FX_BOOL bFind = FALSE; |
| 3179 » » » » for (int i = 0 , sz = pFormField->CountControls(
); i < sz; i++) | 3180 for (int i = 0 , sz = pFormField->CountControls(); i < sz; i++) |
| 3180 » » » » { | 3181 { |
| 3181 » » » » » if (pFormField->GetControl(i)->IsChecked
()) | 3182 if (pFormField->GetControl(i)->IsChecked()) |
| 3182 » » » » » { | 3183 { |
| 3183 » » » » » » CFX_WideString swValue = pFormFi
eld->GetControl(i)->GetExportValue(); | 3184 CFX_WideString swValue = pFormField->GetControl(i)->GetE
xportValue(); |
| 3184 » » » » » » double dRet; | 3185 double dRet; |
| 3185 » » » » » » FX_BOOL bDot; | 3186 FX_BOOL bDot; |
| 3186 » » » » » » if (CJS_PublicMethods::ConvertSt
ringToNumber(swValue.c_str(), dRet, bDot)) | 3187 if (CJS_PublicMethods::ConvertStringToNumber(swValue.c_s
tr(), dRet, bDot)) |
| 3187 » » » » » » { | 3188 { |
| 3188 » » » » » » » if (bDot) | 3189 if (bDot) |
| 3189 » » » » » » » » vp << dRet; | 3190 vp << dRet; |
| 3190 » » » » » » » else | 3191 else |
| 3191 » » » » » » » » vp << dRet; | 3192 vp << dRet; |
| 3192 » » » » » » } | 3193 } |
| 3193 » » » » » » else | 3194 else |
| 3194 » » » » » » » vp << swValue; | 3195 vp << swValue; |
| 3195 | 3196 |
| 3196 » » » » » » bFind = TRUE; | 3197 bFind = TRUE; |
| 3197 » » » » » » break; | 3198 break; |
| 3198 » » » » » } | 3199 } |
| 3199 » » » » » else | 3200 else |
| 3200 » » » » » » continue; | 3201 continue; |
| 3201 » » » » } | 3202 } |
| 3202 » » » » if (!bFind) | 3203 if (!bFind) |
| 3203 » » » » » vp << L"Off"; | 3204 vp << L"Off"; |
| 3204 » » » } | 3205 } |
| 3205 » » » break; | 3206 break; |
| 3206 » » default: | 3207 default: |
| 3207 » » » vp << pFormField->GetValue(); | 3208 vp << pFormField->GetValue(); |
| 3208 » » » break; | 3209 break; |
| 3209 » » } | 3210 } |
| 3210 » } | 3211 } |
| 3211 | 3212 |
| 3212 » return TRUE; | 3213 return TRUE; |
| 3213 } | 3214 } |
| 3214 | 3215 |
| 3215 void Field::SetValue(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldN
ame, | 3216 void Field::SetValue(CPDFSDK_Document* pDocument, const CFX_WideString& swFieldN
ame, |
| 3216 » » » » » int nControlIndex, const CJS_WideString
Array& strArray) | 3217 int nControlIndex, const CJS_WideStringArray& strArray) |
| 3217 { | 3218 { |
| 3218 » ASSERT(pDocument != NULL); | 3219 ASSERT(pDocument != NULL); |
| 3219 | 3220 |
| 3220 » if (strArray.GetSize() < 1) return; | 3221 if (strArray.GetSize() < 1) return; |
| 3221 | 3222 |
| 3222 » CFX_PtrArray FieldArray; | 3223 CFX_PtrArray FieldArray; |
| 3223 » GetFormFields(pDocument, swFieldName, FieldArray); | 3224 GetFormFields(pDocument, swFieldName, FieldArray); |
| 3224 | 3225 |
| 3225 » for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) | 3226 for (int i=0,isz=FieldArray.GetSize(); i<isz; i++) |
| 3226 » { | 3227 { |
| 3227 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(i); | 3228 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 3228 » » ASSERT(pFormField != NULL); | 3229 ASSERT(pFormField != NULL); |
| 3229 | 3230 |
| 3230 » » if (pFormField->GetFullName().Compare(swFieldName) != 0) | 3231 if (pFormField->GetFullName().Compare(swFieldName) != 0) |
| 3231 » » » continue; | 3232 continue; |
| 3232 | 3233 |
| 3233 » » switch (pFormField->GetFieldType()) | 3234 switch (pFormField->GetFieldType()) |
| 3234 » » { | 3235 { |
| 3235 » » case FIELDTYPE_TEXTFIELD: | 3236 case FIELDTYPE_TEXTFIELD: |
| 3236 » » case FIELDTYPE_COMBOBOX: | 3237 case FIELDTYPE_COMBOBOX: |
| 3237 » » » if (pFormField->GetValue() != strArray.GetAt(0)) | 3238 if (pFormField->GetValue() != strArray.GetAt(0)) |
| 3238 » » » { | 3239 { |
| 3239 » » » » CFX_WideString WideString = strArray.GetAt(0); | 3240 CFX_WideString WideString = strArray.GetAt(0); |
| 3240 » » » » pFormField->SetValue(strArray.GetAt(0), TRUE); | 3241 pFormField->SetValue(strArray.GetAt(0), TRUE); |
| 3241 » » » » UpdateFormField(pDocument, pFormField, TRUE, FAL
SE, TRUE); | 3242 UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE); |
| 3242 » » » } | 3243 } |
| 3243 » » » break; | 3244 break; |
| 3244 » » case FIELDTYPE_CHECKBOX: //mantis: 0004493 | 3245 case FIELDTYPE_CHECKBOX: //mantis: 0004493 |
| 3245 » » case FIELDTYPE_RADIOBUTTON: | 3246 case FIELDTYPE_RADIOBUTTON: |
| 3246 » » » { | 3247 { |
| 3247 » » » » if (pFormField->GetValue() != strArray.GetAt(0)) | 3248 if (pFormField->GetValue() != strArray.GetAt(0)) |
| 3248 » » » » { | 3249 { |
| 3249 » » » » » pFormField->SetValue(strArray.GetAt(0),
TRUE); | 3250 pFormField->SetValue(strArray.GetAt(0), TRUE); |
| 3250 » » » » » UpdateFormField(pDocument, pFormField, T
RUE, FALSE, TRUE); | 3251 UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE); |
| 3251 » » » » } | 3252 } |
| 3252 » » » } | 3253 } |
| 3253 » » » break; | 3254 break; |
| 3254 » » case FIELDTYPE_LISTBOX: | 3255 case FIELDTYPE_LISTBOX: |
| 3255 » » » { | 3256 { |
| 3256 » » » » FX_BOOL bModified = FALSE; | 3257 FX_BOOL bModified = FALSE; |
| 3257 | 3258 |
| 3258 » » » » for (int i=0,sz=strArray.GetSize(); i<sz; i++) | 3259 for (int i=0,sz=strArray.GetSize(); i<sz; i++) |
| 3259 » » » » { | 3260 { |
| 3260 » » » » » int iIndex = pFormField->FindOption(strA
rray.GetAt(i)); | 3261 int iIndex = pFormField->FindOption(strArray.GetAt(i)); |
| 3261 | 3262 |
| 3262 » » » » » if (!pFormField->IsItemSelected(iIndex)) | 3263 if (!pFormField->IsItemSelected(iIndex)) |
| 3263 » » » » » { | 3264 { |
| 3264 » » » » » » bModified = TRUE; | 3265 bModified = TRUE; |
| 3265 » » » » » » break; | 3266 break; |
| 3266 » » » » » } | 3267 } |
| 3267 » » » » } | 3268 } |
| 3268 | 3269 |
| 3269 » » » » if (bModified) | 3270 if (bModified) |
| 3270 » » » » { | 3271 { |
| 3271 » » » » » pFormField->ClearSelection(TRUE); | 3272 pFormField->ClearSelection(TRUE); |
| 3272 » » » » » for (int i=0,sz=strArray.GetSize(); i<sz
; i++) | 3273 for (int i=0,sz=strArray.GetSize(); i<sz; i++) |
| 3273 » » » » » { | 3274 { |
| 3274 » » » » » » int iIndex = pFormField->FindOpt
ion(strArray.GetAt(i)); | 3275 int iIndex = pFormField->FindOption(strArray.GetAt(i)); |
| 3275 » » » » » » pFormField->SetItemSelection(iIn
dex, TRUE, TRUE); | 3276 pFormField->SetItemSelection(iIndex, TRUE, TRUE); |
| 3276 » » » » » } | 3277 } |
| 3277 | 3278 |
| 3278 » » » » » UpdateFormField(pDocument, pFormField, T
RUE, FALSE, TRUE); | 3279 UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE); |
| 3279 » » » » } | 3280 } |
| 3280 » » » } | 3281 } |
| 3281 » » » break; | 3282 break; |
| 3282 » » default: | 3283 default: |
| 3283 » » » break; | 3284 break; |
| 3284 » » } | 3285 } |
| 3285 » } | 3286 } |
| 3286 } | 3287 } |
| 3287 | 3288 |
| 3288 FX_BOOL Field::valueAsString(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStrin
g& sError) | 3289 FX_BOOL Field::valueAsString(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideStrin
g& sError) |
| 3289 { | 3290 { |
| 3290 » ASSERT(m_pDocument != NULL); | 3291 ASSERT(m_pDocument != NULL); |
| 3291 | 3292 |
| 3292 » if (!vp.IsGetting()) return FALSE; | 3293 if (!vp.IsGetting()) return FALSE; |
| 3293 | 3294 |
| 3294 » CFX_PtrArray FieldArray; | 3295 CFX_PtrArray FieldArray; |
| 3295 » GetFormFields(m_FieldName,FieldArray); | 3296 GetFormFields(m_FieldName,FieldArray); |
| 3296 » if (FieldArray.GetSize() <= 0) return FALSE; | 3297 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3297 | 3298 |
| 3298 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3299 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3299 » ASSERT(pFormField != NULL); | 3300 ASSERT(pFormField != NULL); |
| 3300 | 3301 |
| 3301 » if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON) | 3302 if (pFormField->GetFieldType() == FIELDTYPE_PUSHBUTTON) |
| 3302 » » return FALSE; | 3303 return FALSE; |
| 3303 | 3304 |
| 3304 » if (pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) | 3305 if (pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) |
| 3305 » { | 3306 { |
| 3306 » » if(!pFormField->CountControls()) return FALSE; | 3307 if(!pFormField->CountControls()) return FALSE; |
| 3307 | 3308 |
| 3308 » » if (pFormField->GetControl(0)->IsChecked()) | 3309 if (pFormField->GetControl(0)->IsChecked()) |
| 3309 » » » vp << L"Yes"; | 3310 vp << L"Yes"; |
| 3310 » » else | 3311 else |
| 3311 » » » vp << L"Off"; | 3312 vp << L"Off"; |
| 3312 » } | 3313 } |
| 3313 » else if (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON && !(pFormF
ield->GetFieldFlags() & FIELDFLAG_RADIOSINUNISON)) | 3314 else if (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON && !(pFormField
->GetFieldFlags() & FIELDFLAG_RADIOSINUNISON)) |
| 3314 » { | 3315 { |
| 3315 » » for (int i=0, sz=pFormField->CountControls(); i<sz; i++) | 3316 for (int i=0, sz=pFormField->CountControls(); i<sz; i++) |
| 3316 » » { | 3317 { |
| 3317 » » » if (pFormField->GetControl(i)->IsChecked()) | 3318 if (pFormField->GetControl(i)->IsChecked()) |
| 3318 » » » { | 3319 { |
| 3319 » » » » vp << pFormField->GetControl(i)->GetExportValue(
).c_str(); | 3320 vp << pFormField->GetControl(i)->GetExportValue().c_str(); |
| 3320 » » » » break; | 3321 break; |
| 3321 » » » } | 3322 } |
| 3322 » » » else | 3323 else |
| 3323 » » » » vp << L"Off"; | 3324 vp << L"Off"; |
| 3324 » » } | 3325 } |
| 3325 » } | 3326 } |
| 3326 » else if (pFormField->GetFieldType() == FIELDTYPE_LISTBOX && (pFormField-
>CountSelectedItems() > 1)) | 3327 else if (pFormField->GetFieldType() == FIELDTYPE_LISTBOX && (pFormField->Cou
ntSelectedItems() > 1)) |
| 3327 » { | 3328 { |
| 3328 » » vp << L""; | 3329 vp << L""; |
| 3329 » } | 3330 } |
| 3330 » else | 3331 else |
| 3331 » » vp << pFormField->GetValue().c_str(); | 3332 vp << pFormField->GetValue().c_str(); |
| 3332 | 3333 |
| 3333 » return TRUE; | 3334 return TRUE; |
| 3334 } | 3335 } |
| 3335 | 3336 |
| 3336 /* --------------------------------- methods --------------------------------- *
/ | 3337 /* --------------------------------- methods --------------------------------- *
/ |
| 3337 | 3338 |
| 3338 FX_BOOL Field::browseForFileToSubmit(IFXJS_Context* cc, const CJS_Parameters& pa
rams, CJS_Value& vRet, CFX_WideString& sError) | 3339 FX_BOOL Field::browseForFileToSubmit(IFXJS_Context* cc, const CJS_Parameters& pa
rams, CJS_Value& vRet, CFX_WideString& sError) |
| 3339 { | 3340 { |
| 3340 » ASSERT(m_pDocument != NULL); | 3341 ASSERT(m_pDocument != NULL); |
| 3341 | 3342 |
| 3342 » CFX_PtrArray FieldArray; | 3343 CFX_PtrArray FieldArray; |
| 3343 » GetFormFields(m_FieldName, FieldArray); | 3344 GetFormFields(m_FieldName, FieldArray); |
| 3344 » if (FieldArray.GetSize() <= 0) return FALSE; | 3345 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3345 | 3346 |
| 3346 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3347 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3347 » ASSERT(pFormField != NULL); | 3348 ASSERT(pFormField != NULL); |
| 3348 | 3349 |
| 3349 » CPDFDoc_Environment* pApp = m_pDocument->GetEnv(); | 3350 CPDFDoc_Environment* pApp = m_pDocument->GetEnv(); |
| 3350 » ASSERT(pApp != NULL); | 3351 ASSERT(pApp != NULL); |
| 3351 | 3352 |
| 3352 » if ((pFormField->GetFieldFlags() & FIELDFLAG_FILESELECT) && | 3353 if ((pFormField->GetFieldFlags() & FIELDFLAG_FILESELECT) && |
| 3353 » » (pFormField->GetFieldType() == FIELDTYPE_TEXTFIELD)) | 3354 (pFormField->GetFieldType() == FIELDTYPE_TEXTFIELD)) |
| 3354 » { | 3355 { |
| 3355 » » CFX_WideString wsFileName = pApp->JS_fieldBrowse(); | 3356 CFX_WideString wsFileName = pApp->JS_fieldBrowse(); |
| 3356 » » if(!wsFileName.IsEmpty()) | 3357 if(!wsFileName.IsEmpty()) |
| 3357 » » { | 3358 { |
| 3358 » » » pFormField->SetValue(wsFileName); | 3359 pFormField->SetValue(wsFileName); |
| 3359 » » » UpdateFormField(m_pDocument, pFormField, TRUE, TRUE, TRU
E); | 3360 UpdateFormField(m_pDocument, pFormField, TRUE, TRUE, TRUE); |
| 3360 } | 3361 } |
| 3361 » } | 3362 } |
| 3362 » else | 3363 else |
| 3363 » » return FALSE; | 3364 return FALSE; |
| 3364 | 3365 |
| 3365 » return TRUE; | 3366 return TRUE; |
| 3366 } | 3367 } |
| 3367 | 3368 |
| 3368 | 3369 |
| 3369 FX_BOOL Field::buttonGetCaption(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3370 FX_BOOL Field::buttonGetCaption(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) |
| 3370 { | 3371 { |
| 3371 » ASSERT(m_pDocument != NULL); | 3372 ASSERT(m_pDocument != NULL); |
| 3372 | 3373 |
| 3373 » int nface = 0; | 3374 int nface = 0; |
| 3374 » int iSize = params.size(); | 3375 int iSize = params.size(); |
| 3375 » if (iSize >= 1) | 3376 if (iSize >= 1) |
| 3376 » » nface = params[0].ToInt(); | 3377 nface = params[0].ToInt(); |
| 3377 | 3378 |
| 3378 » CFX_PtrArray FieldArray; | 3379 CFX_PtrArray FieldArray; |
| 3379 » GetFormFields(m_FieldName,FieldArray); | 3380 GetFormFields(m_FieldName,FieldArray); |
| 3380 » if (FieldArray.GetSize() <= 0) return FALSE; | 3381 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3381 | 3382 |
| 3382 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3383 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3383 » ASSERT(pFormField != NULL); | 3384 ASSERT(pFormField != NULL); |
| 3384 | 3385 |
| 3385 » if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 3386 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 3386 » » return FALSE; | 3387 return FALSE; |
| 3387 | 3388 |
| 3388 » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 3389 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 3389 » if (!pFormControl)return FALSE; | 3390 if (!pFormControl)return FALSE; |
| 3390 | 3391 |
| 3391 » if (nface == 0) | 3392 if (nface == 0) |
| 3392 » » vRet = pFormControl->GetNormalCaption().c_str(); | 3393 vRet = pFormControl->GetNormalCaption().c_str(); |
| 3393 » else if (nface == 1) | 3394 else if (nface == 1) |
| 3394 » » vRet = pFormControl->GetDownCaption().c_str(); | 3395 vRet = pFormControl->GetDownCaption().c_str(); |
| 3395 » else if (nface == 2) | 3396 else if (nface == 2) |
| 3396 » » vRet = pFormControl->GetRolloverCaption().c_str(); | 3397 vRet = pFormControl->GetRolloverCaption().c_str(); |
| 3397 » else | 3398 else |
| 3398 » » return FALSE; | 3399 return FALSE; |
| 3399 | 3400 |
| 3400 » return TRUE; | 3401 return TRUE; |
| 3401 } | 3402 } |
| 3402 | 3403 |
| 3403 //#pragma warning(disable: 4800) | 3404 //#pragma warning(disable: 4800) |
| 3404 | 3405 |
| 3405 FX_BOOL Field::buttonGetIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) | 3406 FX_BOOL Field::buttonGetIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) |
| 3406 { | 3407 { |
| 3407 » ASSERT(m_pDocument != NULL); | 3408 ASSERT(m_pDocument != NULL); |
| 3408 | 3409 |
| 3409 » int nface = 0; | 3410 int nface = 0; |
| 3410 » int iSize = params.size(); | 3411 int iSize = params.size(); |
| 3411 » if (iSize >= 1) | 3412 if (iSize >= 1) |
| 3412 » » nface = params[0].ToInt(); | 3413 nface = params[0].ToInt(); |
| 3413 | 3414 |
| 3414 » CFX_PtrArray FieldArray; | 3415 CFX_PtrArray FieldArray; |
| 3415 » GetFormFields(m_FieldName,FieldArray); | 3416 GetFormFields(m_FieldName,FieldArray); |
| 3416 » if (FieldArray.GetSize() <= 0) return FALSE; | 3417 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3417 | 3418 |
| 3418 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3419 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3419 » ASSERT(pFormField != NULL); | 3420 ASSERT(pFormField != NULL); |
| 3420 | 3421 |
| 3421 » if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) | 3422 if (pFormField->GetFieldType() != FIELDTYPE_PUSHBUTTON) |
| 3422 » » return FALSE; | 3423 return FALSE; |
| 3423 | 3424 |
| 3424 » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 3425 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 3425 » if (!pFormControl)return FALSE; | 3426 if (!pFormControl)return FALSE; |
| 3426 | 3427 |
| 3427 » CJS_Context* pContext = (CJS_Context*)cc; | 3428 CJS_Context* pContext = (CJS_Context*)cc; |
| 3428 » ASSERT(pContext != NULL); | 3429 ASSERT(pContext != NULL); |
| 3429 | 3430 |
| 3430 » CJS_Runtime* pRuntime = pContext->GetJSRuntime(); | 3431 CJS_Runtime* pRuntime = pContext->GetJSRuntime(); |
| 3431 » ASSERT(pRuntime != NULL); | 3432 ASSERT(pRuntime != NULL); |
| 3432 | 3433 |
| 3433 » JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, JS_GetObjDefnI
D(*pRuntime, L"Icon")); | 3434 JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, JS_GetObjDefnID(*p
Runtime, L"Icon")); |
| 3434 » ASSERT(pObj.IsEmpty() == FALSE); | 3435 ASSERT(pObj.IsEmpty() == FALSE); |
| 3435 | 3436 |
| 3436 » CJS_Icon* pJS_Icon = (CJS_Icon*)JS_GetPrivate(pObj); | 3437 CJS_Icon* pJS_Icon = (CJS_Icon*)JS_GetPrivate(pObj); |
| 3437 » ASSERT(pJS_Icon != NULL); | 3438 ASSERT(pJS_Icon != NULL); |
| 3438 | 3439 |
| 3439 » Icon* pIcon = (Icon*)pJS_Icon->GetEmbedObject(); | 3440 Icon* pIcon = (Icon*)pJS_Icon->GetEmbedObject(); |
| 3440 » ASSERT(pIcon != NULL); | 3441 ASSERT(pIcon != NULL); |
| 3441 | 3442 |
| 3442 » CPDF_Stream* pIconStream = NULL; | 3443 CPDF_Stream* pIconStream = NULL; |
| 3443 » if (nface == 0) | 3444 if (nface == 0) |
| 3444 » » pIconStream = pFormControl->GetNormalIcon(); | 3445 pIconStream = pFormControl->GetNormalIcon(); |
| 3445 » else if (nface == 1) | 3446 else if (nface == 1) |
| 3446 » » pIconStream = pFormControl->GetDownIcon(); | 3447 pIconStream = pFormControl->GetDownIcon(); |
| 3447 » else if (nface == 2) | 3448 else if (nface == 2) |
| 3448 » » pIconStream = pFormControl->GetRolloverIcon(); | 3449 pIconStream = pFormControl->GetRolloverIcon(); |
| 3449 » else | 3450 else |
| 3450 » » return FALSE; | 3451 return FALSE; |
| 3451 | 3452 |
| 3452 » pIcon->SetStream(pIconStream); | 3453 pIcon->SetStream(pIconStream); |
| 3453 » vRet = pJS_Icon; | 3454 vRet = pJS_Icon; |
| 3454 | 3455 |
| 3455 » return TRUE; | 3456 return TRUE; |
| 3456 } | 3457 } |
| 3457 | 3458 |
| 3458 //#pragma warning(default: 4800) | 3459 //#pragma warning(default: 4800) |
| 3459 | 3460 |
| 3460 FX_BOOL Field::buttonImportIcon(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3461 FX_BOOL Field::buttonImportIcon(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) |
| 3461 { | 3462 { |
| 3462 #if 0 | 3463 #if 0 |
| 3463 » ASSERT(m_pDocument != NULL); | 3464 ASSERT(m_pDocument != NULL); |
| 3464 | 3465 |
| 3465 » CFX_PtrArray FieldArray; | 3466 CFX_PtrArray FieldArray; |
| 3466 » GetFormFields(m_FieldName,FieldArray); | 3467 GetFormFields(m_FieldName,FieldArray); |
| 3467 » if (FieldArray.GetSize() <= 0) return FALSE; | 3468 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3468 | 3469 |
| 3469 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3470 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3470 » if (!pFormField)return FALSE; | 3471 if (!pFormField)return FALSE; |
| 3471 | 3472 |
| 3472 » CPDFDoc_Environment* pEnv = m_pDocument->GetEnv(); | 3473 CPDFDoc_Environment* pEnv = m_pDocument->GetEnv(); |
| 3473 » ASSERT(pEnv); | 3474 ASSERT(pEnv); |
| 3474 | 3475 |
| 3475 » CFX_WideString sIconFileName = pEnv->JS_fieldBrowse(); | 3476 CFX_WideString sIconFileName = pEnv->JS_fieldBrowse(); |
| 3476 » if (sIconFileName.IsEmpty()) | 3477 if (sIconFileName.IsEmpty()) |
| 3477 » { | 3478 { |
| 3478 » » vRet = 1; | 3479 vRet = 1; |
| 3479 » » return TRUE; | 3480 return TRUE; |
| 3480 » } | 3481 } |
| 3481 | 3482 |
| 3482 » CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInte
rForm(); | 3483 CPDFSDK_InterForm* pInterForm = (CPDFSDK_InterForm*)m_pDocument->GetInterFor
m(); |
| 3483 » ASSERT(pInterForm != NULL); | 3484 ASSERT(pInterForm != NULL); |
| 3484 | 3485 |
| 3485 » CPDF_Stream* pStream = pInterForm->LoadImageFromFile(sIconFileName); | 3486 CPDF_Stream* pStream = pInterForm->LoadImageFromFile(sIconFileName); |
| 3486 » if (!pStream) | 3487 if (!pStream) |
| 3487 » { | 3488 { |
| 3488 » » vRet = -1; | 3489 vRet = -1; |
| 3489 » » return TRUE; | 3490 return TRUE; |
| 3490 » } | 3491 } |
| 3491 | 3492 |
| 3492 » CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); | 3493 CPDF_FormControl* pFormControl = GetSmartFieldControl(pFormField); |
| 3493 » if (!pFormControl)return FALSE; | 3494 if (!pFormControl)return FALSE; |
| 3494 | 3495 |
| 3495 » pFormControl->SetNormalIcon(pStream); | 3496 pFormControl->SetNormalIcon(pStream); |
| 3496 » UpdateFormControl(m_pDocument, pFormControl, TRUE, TRUE, TRUE); | 3497 UpdateFormControl(m_pDocument, pFormControl, TRUE, TRUE, TRUE); |
| 3497 | 3498 |
| 3498 » vRet = 0; | 3499 vRet = 0; |
| 3499 #endif // 0 | 3500 #endif // 0 |
| 3500 » return TRUE; | 3501 return TRUE; |
| 3501 } | 3502 } |
| 3502 | 3503 |
| 3503 FX_BOOL Field::buttonSetCaption(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3504 FX_BOOL Field::buttonSetCaption(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) |
| 3504 { | 3505 { |
| 3505 » return FALSE; | 3506 return FALSE; |
| 3506 } | 3507 } |
| 3507 | 3508 |
| 3508 FX_BOOL Field::buttonSetIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) | 3509 FX_BOOL Field::buttonSetIcon(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) |
| 3509 { | 3510 { |
| 3510 » return FALSE; | 3511 return FALSE; |
| 3511 } | 3512 } |
| 3512 | 3513 |
| 3513 FX_BOOL Field::checkThisBox(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) | 3514 FX_BOOL Field::checkThisBox(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) |
| 3514 { | 3515 { |
| 3515 » ASSERT(m_pDocument != NULL); | 3516 ASSERT(m_pDocument != NULL); |
| 3516 | 3517 |
| 3517 » if (!m_bCanSet) return FALSE; | 3518 if (!m_bCanSet) return FALSE; |
| 3518 | 3519 |
| 3519 » int iSize = params.size(); | 3520 int iSize = params.size(); |
| 3520 » if (iSize < 1) | 3521 if (iSize < 1) |
| 3521 » » return FALSE; | 3522 return FALSE; |
| 3522 | 3523 |
| 3523 » int nWidget = params[0].ToInt(); | 3524 int nWidget = params[0].ToInt(); |
| 3524 | 3525 |
| 3525 » FX_BOOL bCheckit = TRUE; | 3526 FX_BOOL bCheckit = TRUE; |
| 3526 » if (iSize >= 2) | 3527 if (iSize >= 2) |
| 3527 » » bCheckit = params[1].ToBool(); | 3528 bCheckit = params[1].ToBool(); |
| 3528 | 3529 |
| 3529 » CFX_PtrArray FieldArray; | 3530 CFX_PtrArray FieldArray; |
| 3530 » GetFormFields(m_FieldName,FieldArray); | 3531 GetFormFields(m_FieldName,FieldArray); |
| 3531 » if (FieldArray.GetSize() <= 0) return FALSE; | 3532 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3532 | 3533 |
| 3533 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3534 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3534 » ASSERT(pFormField != NULL); | 3535 ASSERT(pFormField != NULL); |
| 3535 | 3536 |
| 3536 » if (pFormField->GetFieldType() != FIELDTYPE_CHECKBOX && pFormField->GetF
ieldType() != FIELDTYPE_RADIOBUTTON) | 3537 if (pFormField->GetFieldType() != FIELDTYPE_CHECKBOX && pFormField->GetField
Type() != FIELDTYPE_RADIOBUTTON) |
| 3537 » » return FALSE; | 3538 return FALSE; |
| 3538 » if(nWidget <0 || nWidget >= pFormField->CountControls()) | 3539 if(nWidget <0 || nWidget >= pFormField->CountControls()) |
| 3539 » » return FALSE; | 3540 return FALSE; |
| 3540 » if (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON) | 3541 if (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON) |
| 3541 » » pFormField->CheckControl(nWidget, bCheckit, TRUE); | 3542 pFormField->CheckControl(nWidget, bCheckit, TRUE); |
| 3542 » else | 3543 else |
| 3543 » » pFormField->CheckControl(nWidget, bCheckit, TRUE); | 3544 pFormField->CheckControl(nWidget, bCheckit, TRUE); |
| 3544 | 3545 |
| 3545 » UpdateFormField(m_pDocument, pFormField, TRUE, TRUE, TRUE); | 3546 UpdateFormField(m_pDocument, pFormField, TRUE, TRUE, TRUE); |
| 3546 » return TRUE; | 3547 return TRUE; |
| 3547 } | 3548 } |
| 3548 | 3549 |
| 3549 FX_BOOL Field::clearItems(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V
alue& vRet, CFX_WideString& sError) | 3550 FX_BOOL Field::clearItems(IFXJS_Context* cc, const CJS_Parameters& params, CJS_V
alue& vRet, CFX_WideString& sError) |
| 3550 { | 3551 { |
| 3551 » return TRUE; | 3552 return TRUE; |
| 3552 } | 3553 } |
| 3553 | 3554 |
| 3554 FX_BOOL Field::defaultIsChecked(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3555 FX_BOOL Field::defaultIsChecked(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) |
| 3555 { | 3556 { |
| 3556 » ASSERT(m_pDocument != NULL); | 3557 ASSERT(m_pDocument != NULL); |
| 3557 | 3558 |
| 3558 » if (!m_bCanSet) return FALSE; | 3559 if (!m_bCanSet) return FALSE; |
| 3559 | 3560 |
| 3560 » int iSize = params.size(); | 3561 int iSize = params.size(); |
| 3561 » if (iSize < 1) | 3562 if (iSize < 1) |
| 3562 » » return FALSE; | 3563 return FALSE; |
| 3563 | 3564 |
| 3564 » int nWidget = params[0].ToInt(); | 3565 int nWidget = params[0].ToInt(); |
| 3565 | 3566 |
| 3566 » CFX_PtrArray FieldArray; | 3567 CFX_PtrArray FieldArray; |
| 3567 » GetFormFields(m_FieldName,FieldArray); | 3568 GetFormFields(m_FieldName,FieldArray); |
| 3568 » if (FieldArray.GetSize() <= 0) return FALSE; | 3569 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3569 | 3570 |
| 3570 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3571 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3571 » ASSERT(pFormField != NULL); | 3572 ASSERT(pFormField != NULL); |
| 3572 | 3573 |
| 3573 » if(nWidget <0 || nWidget >= pFormField->CountControls()) | 3574 if(nWidget <0 || nWidget >= pFormField->CountControls()) |
| 3574 » { | 3575 { |
| 3575 » » vRet = FALSE; | 3576 vRet = FALSE; |
| 3576 » » return FALSE; | 3577 return FALSE; |
| 3577 » } | 3578 } |
| 3578 » if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) | 3579 if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) |
| 3579 » » || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) | 3580 || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) |
| 3580 » { | 3581 { |
| 3581 | 3582 |
| 3582 » » vRet = TRUE; | 3583 vRet = TRUE; |
| 3583 » } | 3584 } |
| 3584 » else | 3585 else |
| 3585 » » vRet = FALSE; | 3586 vRet = FALSE; |
| 3586 | 3587 |
| 3587 » return TRUE; | 3588 return TRUE; |
| 3588 } | 3589 } |
| 3589 | 3590 |
| 3590 FX_BOOL Field::deleteItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) | 3591 FX_BOOL Field::deleteItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) |
| 3591 { | 3592 { |
| 3592 » return TRUE; | 3593 return TRUE; |
| 3593 } | 3594 } |
| 3594 | 3595 |
| 3595 int JS_COMPARESTRING(CFX_WideString* ps1, CFX_WideString* ps2) | 3596 int JS_COMPARESTRING(CFX_WideString* ps1, CFX_WideString* ps2) |
| 3596 { | 3597 { |
| 3597 » ASSERT(ps1 != NULL); | 3598 ASSERT(ps1 != NULL); |
| 3598 » ASSERT(ps2 != NULL); | 3599 ASSERT(ps2 != NULL); |
| 3599 | 3600 |
| 3600 » return ps1->Compare(*ps2); | 3601 return ps1->Compare(*ps2); |
| 3601 } | 3602 } |
| 3602 | 3603 |
| 3603 | 3604 |
| 3604 FX_BOOL Field::getArray(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val
ue& vRet, CFX_WideString& sError) | 3605 FX_BOOL Field::getArray(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val
ue& vRet, CFX_WideString& sError) |
| 3605 { | 3606 { |
| 3606 » ASSERT(m_pDocument != NULL); | 3607 ASSERT(m_pDocument != NULL); |
| 3607 | 3608 |
| 3608 » CFX_PtrArray FieldArray; | 3609 CFX_PtrArray FieldArray; |
| 3609 » GetFormFields(m_FieldName,FieldArray); | 3610 GetFormFields(m_FieldName,FieldArray); |
| 3610 » if (FieldArray.GetSize() <= 0) return FALSE; | 3611 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3611 | 3612 |
| 3612 » CGW_ArrayTemplate<CFX_WideString*> swSort; | 3613 CGW_ArrayTemplate<CFX_WideString*> swSort; |
| 3613 | 3614 |
| 3614 » for (int i=0,sz=FieldArray.GetSize(); i<sz; i++) | 3615 for (int i=0,sz=FieldArray.GetSize(); i<sz; i++) |
| 3615 » { | 3616 { |
| 3616 » » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.Element
At(i); | 3617 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(i); |
| 3617 » » ASSERT(pFormField != NULL); | 3618 ASSERT(pFormField != NULL); |
| 3618 | 3619 |
| 3619 » » swSort.Add(new CFX_WideString(pFormField->GetFullName())); | 3620 swSort.Add(new CFX_WideString(pFormField->GetFullName())); |
| 3620 | 3621 |
| 3621 » } | 3622 } |
| 3622 » swSort.Sort(JS_COMPARESTRING); | 3623 swSort.Sort(JS_COMPARESTRING); |
| 3623 | 3624 |
| 3624 » CJS_Context* pContext = (CJS_Context*)cc; | 3625 CJS_Context* pContext = (CJS_Context*)cc; |
| 3625 » ASSERT(pContext != NULL); | 3626 ASSERT(pContext != NULL); |
| 3626 » CJS_Runtime* pRuntime = pContext->GetJSRuntime(); | 3627 CJS_Runtime* pRuntime = pContext->GetJSRuntime(); |
| 3627 » ASSERT(pRuntime != NULL); | 3628 ASSERT(pRuntime != NULL); |
| 3628 | 3629 |
| 3629 » CJS_Array FormFieldArray(m_isolate); | 3630 CJS_Array FormFieldArray(m_isolate); |
| 3630 » for (int j=0,jsz = swSort.GetSize(); j<jsz; j++) | 3631 for (int j=0,jsz = swSort.GetSize(); j<jsz; j++) |
| 3631 » { | 3632 { |
| 3632 » » CFX_WideString* pStr = swSort.GetAt(j); | 3633 CFX_WideString* pStr = swSort.GetAt(j); |
| 3633 | 3634 |
| 3634 » » JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, JS_Get
ObjDefnID(*pRuntime, L"Field")); | 3635 JSFXObject pObj = JS_NewFxDynamicObj(*pRuntime, pContext, JS_GetObjDefnI
D(*pRuntime, L"Field")); |
| 3635 » » ASSERT(pObj.IsEmpty() == FALSE); | 3636 ASSERT(pObj.IsEmpty() == FALSE); |
| 3636 | 3637 |
| 3637 » » CJS_Field* pJSField = (CJS_Field*)JS_GetPrivate(pObj); | 3638 CJS_Field* pJSField = (CJS_Field*)JS_GetPrivate(pObj); |
| 3638 » » ASSERT(pJSField != NULL); | 3639 ASSERT(pJSField != NULL); |
| 3639 | 3640 |
| 3640 » » Field* pField = (Field*)pJSField->GetEmbedObject(); | 3641 Field* pField = (Field*)pJSField->GetEmbedObject(); |
| 3641 » » ASSERT(pField != NULL); | 3642 ASSERT(pField != NULL); |
| 3642 | 3643 |
| 3643 » » pField->AttachField(m_pJSDoc, *pStr); | 3644 pField->AttachField(m_pJSDoc, *pStr); |
| 3644 | 3645 |
| 3645 » » CJS_Value FormFieldValue(m_isolate); | 3646 CJS_Value FormFieldValue(m_isolate); |
| 3646 » » FormFieldValue = pJSField; | 3647 FormFieldValue = pJSField; |
| 3647 » » FormFieldArray.SetElement(j, FormFieldValue); | 3648 FormFieldArray.SetElement(j, FormFieldValue); |
| 3648 | 3649 |
| 3649 » » delete pStr; | 3650 delete pStr; |
| 3650 » } | 3651 } |
| 3651 | 3652 |
| 3652 » vRet = FormFieldArray; | 3653 vRet = FormFieldArray; |
| 3653 » swSort.RemoveAll(); | 3654 swSort.RemoveAll(); |
| 3654 » return TRUE; | 3655 return TRUE; |
| 3655 } | 3656 } |
| 3656 | 3657 |
| 3657 FX_BOOL Field::getItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) | 3658 FX_BOOL Field::getItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) |
| 3658 { | 3659 { |
| 3659 » ASSERT(m_pDocument != NULL); | 3660 ASSERT(m_pDocument != NULL); |
| 3660 » int iSize = params.size(); | 3661 int iSize = params.size(); |
| 3661 | 3662 |
| 3662 » int nIdx = -1; | 3663 int nIdx = -1; |
| 3663 » if (iSize >= 1) | 3664 if (iSize >= 1) |
| 3664 » » nIdx = params[0].ToInt(); | 3665 nIdx = params[0].ToInt(); |
| 3665 | 3666 |
| 3666 » FX_BOOL bExport = TRUE; | 3667 FX_BOOL bExport = TRUE; |
| 3667 » if (iSize >= 2) | 3668 if (iSize >= 2) |
| 3668 » » bExport = params[1].ToBool(); | 3669 bExport = params[1].ToBool(); |
| 3669 | 3670 |
| 3670 » CFX_PtrArray FieldArray; | 3671 CFX_PtrArray FieldArray; |
| 3671 » GetFormFields(m_FieldName,FieldArray); | 3672 GetFormFields(m_FieldName,FieldArray); |
| 3672 » if (FieldArray.GetSize() <= 0) return FALSE; | 3673 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3673 | 3674 |
| 3674 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3675 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3675 » ASSERT(pFormField != NULL); | 3676 ASSERT(pFormField != NULL); |
| 3676 | 3677 |
| 3677 » if ((pFormField->GetFieldType() == FIELDTYPE_LISTBOX) | 3678 if ((pFormField->GetFieldType() == FIELDTYPE_LISTBOX) |
| 3678 » » || (pFormField->GetFieldType() == FIELDTYPE_COMBOBOX)) | 3679 || (pFormField->GetFieldType() == FIELDTYPE_COMBOBOX)) |
| 3679 » { | 3680 { |
| 3680 » » if (nIdx == -1 || nIdx > pFormField->CountOptions()) | 3681 if (nIdx == -1 || nIdx > pFormField->CountOptions()) |
| 3681 » » » nIdx = pFormField->CountOptions() -1; | 3682 nIdx = pFormField->CountOptions() -1; |
| 3682 » » if (bExport) | 3683 if (bExport) |
| 3683 » » { | 3684 { |
| 3684 » » » CFX_WideString strval = pFormField->GetOptionValue(nIdx)
; | 3685 CFX_WideString strval = pFormField->GetOptionValue(nIdx); |
| 3685 » » » if (strval.IsEmpty()) | 3686 if (strval.IsEmpty()) |
| 3686 » » » » vRet = pFormField->GetOptionLabel(nIdx).c_str(); | 3687 vRet = pFormField->GetOptionLabel(nIdx).c_str(); |
| 3687 » » » else | 3688 else |
| 3688 » » » » vRet = strval.c_str(); | 3689 vRet = strval.c_str(); |
| 3689 » » } | 3690 } |
| 3690 » » else | 3691 else |
| 3691 » » » vRet = pFormField->GetOptionLabel(nIdx).c_str(); | 3692 vRet = pFormField->GetOptionLabel(nIdx).c_str(); |
| 3692 » } | 3693 } |
| 3693 » else | 3694 else |
| 3694 » » return FALSE; | 3695 return FALSE; |
| 3695 | 3696 |
| 3696 » return TRUE; | 3697 return TRUE; |
| 3697 } | 3698 } |
| 3698 | 3699 |
| 3699 FX_BOOL Field::getLock(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Valu
e& vRet, CFX_WideString& sError) | 3700 FX_BOOL Field::getLock(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Valu
e& vRet, CFX_WideString& sError) |
| 3700 { | 3701 { |
| 3701 » return FALSE; | 3702 return FALSE; |
| 3702 } | 3703 } |
| 3703 | 3704 |
| 3704 FX_BOOL Field::insertItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) | 3705 FX_BOOL Field::insertItemAt(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) |
| 3705 { | 3706 { |
| 3706 » return TRUE; | 3707 return TRUE; |
| 3707 } | 3708 } |
| 3708 | 3709 |
| 3709 FX_BOOL Field::isBoxChecked(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) | 3710 FX_BOOL Field::isBoxChecked(IFXJS_Context* cc, const CJS_Parameters& params, CJS
_Value& vRet, CFX_WideString& sError) |
| 3710 { | 3711 { |
| 3711 » ASSERT(m_pDocument != NULL); | 3712 ASSERT(m_pDocument != NULL); |
| 3712 | 3713 |
| 3713 » int nIndex = -1; | 3714 int nIndex = -1; |
| 3714 » if (params.size() >= 1) | 3715 if (params.size() >= 1) |
| 3715 » » nIndex = params[0].ToInt(); | 3716 nIndex = params[0].ToInt(); |
| 3716 | 3717 |
| 3717 » CFX_PtrArray FieldArray; | 3718 CFX_PtrArray FieldArray; |
| 3718 » GetFormFields(m_FieldName,FieldArray); | 3719 GetFormFields(m_FieldName,FieldArray); |
| 3719 » if (FieldArray.GetSize() <= 0) return FALSE; | 3720 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3720 | 3721 |
| 3721 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3722 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3722 » ASSERT(pFormField != NULL); | 3723 ASSERT(pFormField != NULL); |
| 3723 | 3724 |
| 3724 » if(nIndex <0 || nIndex >= pFormField->CountControls()) | 3725 if(nIndex <0 || nIndex >= pFormField->CountControls()) |
| 3725 » { | 3726 { |
| 3726 » » vRet = FALSE; | 3727 vRet = FALSE; |
| 3727 » » return FALSE; | 3728 return FALSE; |
| 3728 » } | 3729 } |
| 3729 | 3730 |
| 3730 » if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) | 3731 if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) |
| 3731 » » || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) | 3732 || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) |
| 3732 » { | 3733 { |
| 3733 » » if (pFormField->GetControl(nIndex)->IsChecked() !=0 ) | 3734 if (pFormField->GetControl(nIndex)->IsChecked() !=0 ) |
| 3734 » » » vRet = TRUE; | 3735 vRet = TRUE; |
| 3735 » » else | 3736 else |
| 3736 » » » vRet = FALSE; | 3737 vRet = FALSE; |
| 3737 » } | 3738 } |
| 3738 » else | 3739 else |
| 3739 » » vRet = FALSE; | 3740 vRet = FALSE; |
| 3740 | 3741 |
| 3741 » return TRUE; | 3742 return TRUE; |
| 3742 } | 3743 } |
| 3743 | 3744 |
| 3744 FX_BOOL Field::isDefaultChecked(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) | 3745 FX_BOOL Field::isDefaultChecked(IFXJS_Context* cc, const CJS_Parameters& params,
CJS_Value& vRet, CFX_WideString& sError) |
| 3745 { | 3746 { |
| 3746 » ASSERT(m_pDocument != NULL); | 3747 ASSERT(m_pDocument != NULL); |
| 3747 | 3748 |
| 3748 » int nIndex = -1; | 3749 int nIndex = -1; |
| 3749 » if (params.size() >= 1) | 3750 if (params.size() >= 1) |
| 3750 » » nIndex = params[0].ToInt(); | 3751 nIndex = params[0].ToInt(); |
| 3751 | 3752 |
| 3752 » CFX_PtrArray FieldArray; | 3753 CFX_PtrArray FieldArray; |
| 3753 » GetFormFields(m_FieldName,FieldArray); | 3754 GetFormFields(m_FieldName,FieldArray); |
| 3754 » if (FieldArray.GetSize() <= 0) return FALSE; | 3755 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3755 | 3756 |
| 3756 » CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); | 3757 CPDF_FormField* pFormField = (CPDF_FormField*)FieldArray.ElementAt(0); |
| 3757 » ASSERT(pFormField != NULL); | 3758 ASSERT(pFormField != NULL); |
| 3758 | 3759 |
| 3759 » if(nIndex <0 || nIndex >= pFormField->CountControls()) | 3760 if(nIndex <0 || nIndex >= pFormField->CountControls()) |
| 3760 » { | 3761 { |
| 3761 » » vRet = FALSE; | 3762 vRet = FALSE; |
| 3762 » » return FALSE; | 3763 return FALSE; |
| 3763 » } | 3764 } |
| 3764 » if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) | 3765 if ((pFormField->GetFieldType() == FIELDTYPE_CHECKBOX) |
| 3765 » » || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) | 3766 || (pFormField->GetFieldType() == FIELDTYPE_RADIOBUTTON)) |
| 3766 » { | 3767 { |
| 3767 » » if (pFormField->GetControl(nIndex)->IsDefaultChecked() != 0) | 3768 if (pFormField->GetControl(nIndex)->IsDefaultChecked() != 0) |
| 3768 » » » vRet = TRUE; | 3769 vRet = TRUE; |
| 3769 » » else | 3770 else |
| 3770 » » » vRet = FALSE; | 3771 vRet = FALSE; |
| 3771 » } | 3772 } |
| 3772 » else | 3773 else |
| 3773 » » vRet = FALSE; | 3774 vRet = FALSE; |
| 3774 | 3775 |
| 3775 » return TRUE; | 3776 return TRUE; |
| 3776 } | 3777 } |
| 3777 | 3778 |
| 3778 FX_BOOL Field::setAction(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) | 3779 FX_BOOL Field::setAction(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Va
lue& vRet, CFX_WideString& sError) |
| 3779 { | 3780 { |
| 3780 » return TRUE; | 3781 return TRUE; |
| 3781 } | 3782 } |
| 3782 | 3783 |
| 3783 FX_BOOL Field::setFocus(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val
ue& vRet, CFX_WideString& sError) | 3784 FX_BOOL Field::setFocus(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val
ue& vRet, CFX_WideString& sError) |
| 3784 { | 3785 { |
| 3785 ASSERT(m_pDocument != NULL); | 3786 ASSERT(m_pDocument != NULL); |
| 3786 | 3787 |
| 3787 CFX_PtrArray FieldArray; | 3788 CFX_PtrArray FieldArray; |
| 3788 GetFormFields(m_FieldName,FieldArray); | 3789 GetFormFields(m_FieldName,FieldArray); |
| 3789 if (FieldArray.GetSize() <= 0) return FALSE; | 3790 if (FieldArray.GetSize() <= 0) return FALSE; |
| 3790 | 3791 |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3829 if (pWidget) | 3830 if (pWidget) |
| 3830 { | 3831 { |
| 3831 m_pDocument->SetFocusAnnot(pWidget); | 3832 m_pDocument->SetFocusAnnot(pWidget); |
| 3832 } | 3833 } |
| 3833 | 3834 |
| 3834 return TRUE; | 3835 return TRUE; |
| 3835 } | 3836 } |
| 3836 | 3837 |
| 3837 FX_BOOL Field::setItems(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val
ue& vRet, CFX_WideString& sError) | 3838 FX_BOOL Field::setItems(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Val
ue& vRet, CFX_WideString& sError) |
| 3838 { | 3839 { |
| 3839 » return TRUE; | 3840 return TRUE; |
| 3840 } | 3841 } |
| 3841 | 3842 |
| 3842 FX_BOOL Field::setLock(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Valu
e& vRet, CFX_WideString& sError) | 3843 FX_BOOL Field::setLock(IFXJS_Context* cc, const CJS_Parameters& params, CJS_Valu
e& vRet, CFX_WideString& sError) |
| 3843 { | 3844 { |
| 3844 » return FALSE; | 3845 return FALSE; |
| 3845 } | 3846 } |
| 3846 | 3847 |
| 3847 FX_BOOL Field::signatureGetModifications(IFXJS_Context* cc, const CJS_Parameters
& params, CJS_Value& vRet, CFX_WideString& sError) | 3848 FX_BOOL Field::signatureGetModifications(IFXJS_Context* cc, const CJS_Parameters
& params, CJS_Value& vRet, CFX_WideString& sError) |
| 3848 { | 3849 { |
| 3849 » return FALSE; | 3850 return FALSE; |
| 3850 } | 3851 } |
| 3851 | 3852 |
| 3852 FX_BOOL Field::signatureGetSeedValue(IFXJS_Context* cc, const CJS_Parameters& pa
rams, CJS_Value& vRet, CFX_WideString& sError) | 3853 FX_BOOL Field::signatureGetSeedValue(IFXJS_Context* cc, const CJS_Parameters& pa
rams, CJS_Value& vRet, CFX_WideString& sError) |
| 3853 { | 3854 { |
| 3854 » return FALSE; | 3855 return FALSE; |
| 3855 } | 3856 } |
| 3856 | 3857 |
| 3857 FX_BOOL Field::signatureInfo(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) | 3858 FX_BOOL Field::signatureInfo(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) |
| 3858 { | 3859 { |
| 3859 » return FALSE; | 3860 return FALSE; |
| 3860 } | 3861 } |
| 3861 | 3862 |
| 3862 FX_BOOL Field::signatureSetSeedValue(IFXJS_Context* cc, const CJS_Parameters& pa
rams, CJS_Value& vRet, CFX_WideString& sError) | 3863 FX_BOOL Field::signatureSetSeedValue(IFXJS_Context* cc, const CJS_Parameters& pa
rams, CJS_Value& vRet, CFX_WideString& sError) |
| 3863 { | 3864 { |
| 3864 » return FALSE; | 3865 return FALSE; |
| 3865 } | 3866 } |
| 3866 | 3867 |
| 3867 FX_BOOL Field::signatureSign(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) | 3868 FX_BOOL Field::signatureSign(IFXJS_Context* cc, const CJS_Parameters& params, CJ
S_Value& vRet, CFX_WideString& sError) |
| 3868 { | 3869 { |
| 3869 » return FALSE; | 3870 return FALSE; |
| 3870 } | 3871 } |
| 3871 | 3872 |
| 3872 FX_BOOL Field::signatureValidate(IFXJS_Context* cc, const CJS_Parameters& params
, CJS_Value& vRet, CFX_WideString& sError) | 3873 FX_BOOL Field::signatureValidate(IFXJS_Context* cc, const CJS_Parameters& params
, CJS_Value& vRet, CFX_WideString& sError) |
| 3873 { | 3874 { |
| 3874 » return FALSE; | 3875 return FALSE; |
| 3875 } | 3876 } |
| 3876 | 3877 |
| 3877 FX_BOOL Field::source(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) | 3878 FX_BOOL Field::source(IFXJS_Context* cc, CJS_PropValue& vp, CFX_WideString& sErr
or) |
| 3878 { | 3879 { |
| 3879 » if (vp.IsGetting()) | 3880 if (vp.IsGetting()) |
| 3880 » { | 3881 { |
| 3881 » » vp << (CJS_Object*)NULL; | 3882 vp << (CJS_Object*)NULL; |
| 3882 » } | 3883 } |
| 3883 | 3884 |
| 3884 » return TRUE; | 3885 return TRUE; |
| 3885 } | 3886 } |
| 3886 | 3887 |
| 3887 /////////////////////////////////////////// delay //////////////////////////////
/////////////// | 3888 /////////////////////////////////////////// delay //////////////////////////////
/////////////// |
| 3888 | 3889 |
| 3889 void Field::AddDelay_Int(enum FIELD_PROP prop, int32_t n) | 3890 void Field::AddDelay_Int(enum FIELD_PROP prop, int32_t n) |
| 3890 { | 3891 { |
| 3891 » ASSERT(m_pJSDoc != NULL); | 3892 ASSERT(m_pJSDoc != NULL); |
| 3892 | 3893 |
| 3893 » CJS_DelayData* pNewData = new CJS_DelayData; | 3894 CJS_DelayData* pNewData = new CJS_DelayData; |
| 3894 » pNewData->sFieldName = m_FieldName; | 3895 pNewData->sFieldName = m_FieldName; |
| 3895 » pNewData->nControlIndex = m_nFormControlIndex; | 3896 pNewData->nControlIndex = m_nFormControlIndex; |
| 3896 » pNewData->eProp = prop; | 3897 pNewData->eProp = prop; |
| 3897 » pNewData->num = n; | 3898 pNewData->num = n; |
| 3898 | 3899 |
| 3899 » m_pJSDoc->AddDelayData(pNewData); | 3900 m_pJSDoc->AddDelayData(pNewData); |
| 3900 } | 3901 } |
| 3901 | 3902 |
| 3902 void Field::AddDelay_Bool(enum FIELD_PROP prop,bool b) | 3903 void Field::AddDelay_Bool(enum FIELD_PROP prop,bool b) |
| 3903 { | 3904 { |
| 3904 » ASSERT(m_pJSDoc != NULL); | 3905 ASSERT(m_pJSDoc != NULL); |
| 3905 | 3906 |
| 3906 » CJS_DelayData* pNewData = new CJS_DelayData; | 3907 CJS_DelayData* pNewData = new CJS_DelayData; |
| 3907 » pNewData->sFieldName = m_FieldName; | 3908 pNewData->sFieldName = m_FieldName; |
| 3908 » pNewData->nControlIndex = m_nFormControlIndex; | 3909 pNewData->nControlIndex = m_nFormControlIndex; |
| 3909 » pNewData->eProp = prop; | 3910 pNewData->eProp = prop; |
| 3910 » pNewData->b = b; | 3911 pNewData->b = b; |
| 3911 | 3912 |
| 3912 » m_pJSDoc->AddDelayData(pNewData); | 3913 m_pJSDoc->AddDelayData(pNewData); |
| 3913 } | 3914 } |
| 3914 | 3915 |
| 3915 void Field::AddDelay_String(enum FIELD_PROP prop, const CFX_ByteString& string) | 3916 void Field::AddDelay_String(enum FIELD_PROP prop, const CFX_ByteString& string) |
| 3916 { | 3917 { |
| 3917 » ASSERT(m_pJSDoc != NULL); | 3918 ASSERT(m_pJSDoc != NULL); |
| 3918 | 3919 |
| 3919 » CJS_DelayData* pNewData = new CJS_DelayData; | 3920 CJS_DelayData* pNewData = new CJS_DelayData; |
| 3920 » pNewData->sFieldName = m_FieldName; | 3921 pNewData->sFieldName = m_FieldName; |
| 3921 » pNewData->nControlIndex = m_nFormControlIndex; | 3922 pNewData->nControlIndex = m_nFormControlIndex; |
| 3922 » pNewData->eProp = prop; | 3923 pNewData->eProp = prop; |
| 3923 » pNewData->string = string; | 3924 pNewData->string = string; |
| 3924 | 3925 |
| 3925 » m_pJSDoc->AddDelayData(pNewData); | 3926 m_pJSDoc->AddDelayData(pNewData); |
| 3926 } | 3927 } |
| 3927 | 3928 |
| 3928 void Field::AddDelay_WideString(enum FIELD_PROP prop, const CFX_WideString& stri
ng) | 3929 void Field::AddDelay_WideString(enum FIELD_PROP prop, const CFX_WideString& stri
ng) |
| 3929 { | 3930 { |
| 3930 » ASSERT(m_pJSDoc != NULL); | 3931 ASSERT(m_pJSDoc != NULL); |
| 3931 | 3932 |
| 3932 » CJS_DelayData* pNewData = new CJS_DelayData; | 3933 CJS_DelayData* pNewData = new CJS_DelayData; |
| 3933 » pNewData->sFieldName = m_FieldName; | 3934 pNewData->sFieldName = m_FieldName; |
| 3934 » pNewData->nControlIndex = m_nFormControlIndex; | 3935 pNewData->nControlIndex = m_nFormControlIndex; |
| 3935 » pNewData->eProp = prop; | 3936 pNewData->eProp = prop; |
| 3936 » pNewData->widestring = string; | 3937 pNewData->widestring = string; |
| 3937 | 3938 |
| 3938 » m_pJSDoc->AddDelayData(pNewData); | 3939 m_pJSDoc->AddDelayData(pNewData); |
| 3939 } | 3940 } |
| 3940 | 3941 |
| 3941 void Field::AddDelay_Rect(enum FIELD_PROP prop, const CPDF_Rect& rect) | 3942 void Field::AddDelay_Rect(enum FIELD_PROP prop, const CPDF_Rect& rect) |
| 3942 { | 3943 { |
| 3943 » ASSERT(m_pJSDoc != NULL); | 3944 ASSERT(m_pJSDoc != NULL); |
| 3944 | 3945 |
| 3945 » CJS_DelayData* pNewData = new CJS_DelayData; | 3946 CJS_DelayData* pNewData = new CJS_DelayData; |
| 3946 » pNewData->sFieldName = m_FieldName; | 3947 pNewData->sFieldName = m_FieldName; |
| 3947 » pNewData->nControlIndex = m_nFormControlIndex; | 3948 pNewData->nControlIndex = m_nFormControlIndex; |
| 3948 » pNewData->eProp = prop; | 3949 pNewData->eProp = prop; |
| 3949 » pNewData->rect = rect; | 3950 pNewData->rect = rect; |
| 3950 | 3951 |
| 3951 » m_pJSDoc->AddDelayData(pNewData); | 3952 m_pJSDoc->AddDelayData(pNewData); |
| 3952 } | 3953 } |
| 3953 | 3954 |
| 3954 void Field::AddDelay_Color(enum FIELD_PROP prop, const CPWL_Color& color) | 3955 void Field::AddDelay_Color(enum FIELD_PROP prop, const CPWL_Color& color) |
| 3955 { | 3956 { |
| 3956 » ASSERT(m_pJSDoc != NULL); | 3957 ASSERT(m_pJSDoc != NULL); |
| 3957 | 3958 |
| 3958 » CJS_DelayData* pNewData = new CJS_DelayData; | 3959 CJS_DelayData* pNewData = new CJS_DelayData; |
| 3959 » pNewData->sFieldName = m_FieldName; | 3960 pNewData->sFieldName = m_FieldName; |
| 3960 » pNewData->nControlIndex = m_nFormControlIndex; | 3961 pNewData->nControlIndex = m_nFormControlIndex; |
| 3961 » pNewData->eProp = prop; | 3962 pNewData->eProp = prop; |
| 3962 » pNewData->color = color; | 3963 pNewData->color = color; |
| 3963 | 3964 |
| 3964 » m_pJSDoc->AddDelayData(pNewData); | 3965 m_pJSDoc->AddDelayData(pNewData); |
| 3965 } | 3966 } |
| 3966 | 3967 |
| 3967 void Field::AddDelay_WordArray(enum FIELD_PROP prop, const CFX_DWordArray& array
) | 3968 void Field::AddDelay_WordArray(enum FIELD_PROP prop, const CFX_DWordArray& array
) |
| 3968 { | 3969 { |
| 3969 » ASSERT(m_pJSDoc != NULL); | 3970 ASSERT(m_pJSDoc != NULL); |
| 3970 | 3971 |
| 3971 » CJS_DelayData* pNewData = new CJS_DelayData; | 3972 CJS_DelayData* pNewData = new CJS_DelayData; |
| 3972 » pNewData->sFieldName = m_FieldName; | 3973 pNewData->sFieldName = m_FieldName; |
| 3973 » pNewData->nControlIndex = m_nFormControlIndex; | 3974 pNewData->nControlIndex = m_nFormControlIndex; |
| 3974 » pNewData->eProp = prop; | 3975 pNewData->eProp = prop; |
| 3975 | 3976 |
| 3976 » for (int i=0,sz=array.GetSize(); i<sz; i++) | 3977 for (int i=0,sz=array.GetSize(); i<sz; i++) |
| 3977 » » pNewData->wordarray.Add(array.GetAt(i)); | 3978 pNewData->wordarray.Add(array.GetAt(i)); |
| 3978 | 3979 |
| 3979 » m_pJSDoc->AddDelayData(pNewData); | 3980 m_pJSDoc->AddDelayData(pNewData); |
| 3980 } | 3981 } |
| 3981 | 3982 |
| 3982 void Field::AddDelay_WideStringArray(enum FIELD_PROP prop, const CJS_WideStringA
rray& array) | 3983 void Field::AddDelay_WideStringArray(enum FIELD_PROP prop, const CJS_WideStringA
rray& array) |
| 3983 { | 3984 { |
| 3984 » ASSERT(m_pJSDoc != NULL); | 3985 ASSERT(m_pJSDoc != NULL); |
| 3985 | 3986 |
| 3986 » CJS_DelayData* pNewData = new CJS_DelayData; | 3987 CJS_DelayData* pNewData = new CJS_DelayData; |
| 3987 » pNewData->sFieldName = m_FieldName; | 3988 pNewData->sFieldName = m_FieldName; |
| 3988 » pNewData->nControlIndex = m_nFormControlIndex; | 3989 pNewData->nControlIndex = m_nFormControlIndex; |
| 3989 » pNewData->eProp = prop; | 3990 pNewData->eProp = prop; |
| 3990 » for (int i=0,sz=array.GetSize(); i<sz; i++) | 3991 for (int i=0,sz=array.GetSize(); i<sz; i++) |
| 3991 » » pNewData->widestringarray.Add(array.GetAt(i)); | 3992 pNewData->widestringarray.Add(array.GetAt(i)); |
| 3992 | 3993 |
| 3993 » m_pJSDoc->AddDelayData(pNewData); | 3994 m_pJSDoc->AddDelayData(pNewData); |
| 3994 } | 3995 } |
| 3995 | 3996 |
| 3996 void Field::DoDelay(CPDFSDK_Document* pDocument, CJS_DelayData* pData) | 3997 void Field::DoDelay(CPDFSDK_Document* pDocument, CJS_DelayData* pData) |
| 3997 { | 3998 { |
| 3998 » ASSERT(pDocument != NULL); | 3999 ASSERT(pDocument != NULL); |
| 3999 » ASSERT(pData != NULL); | 4000 ASSERT(pData != NULL); |
| 4000 | 4001 |
| 4001 » switch (pData->eProp) | 4002 switch (pData->eProp) |
| 4002 » { | 4003 { |
| 4003 » case FP_ALIGNMENT: | 4004 case FP_ALIGNMENT: |
| 4004 » » Field::SetAlignment(pDocument, pData->sFieldName, pData->nContro
lIndex, pData->string); | 4005 Field::SetAlignment(pDocument, pData->sFieldName, pData->nControlIndex,
pData->string); |
| 4005 » » break; | 4006 break; |
| 4006 » case FP_BORDERSTYLE: | 4007 case FP_BORDERSTYLE: |
| 4007 » » Field::SetBorderStyle(pDocument, pData->sFieldName, pData->nCont
rolIndex, pData->string); | 4008 Field::SetBorderStyle(pDocument, pData->sFieldName, pData->nControlIndex
, pData->string); |
| 4008 » » break; | 4009 break; |
| 4009 » case FP_BUTTONALIGNX: | 4010 case FP_BUTTONALIGNX: |
| 4010 » » Field::SetButtonAlignX(pDocument, pData->sFieldName, pData->nCon
trolIndex, pData->num); | 4011 Field::SetButtonAlignX(pDocument, pData->sFieldName, pData->nControlInde
x, pData->num); |
| 4011 » » break; | 4012 break; |
| 4012 » case FP_BUTTONALIGNY: | 4013 case FP_BUTTONALIGNY: |
| 4013 » » Field::SetButtonAlignY(pDocument, pData->sFieldName, pData->nCon
trolIndex, pData->num); | 4014 Field::SetButtonAlignY(pDocument, pData->sFieldName, pData->nControlInde
x, pData->num); |
| 4014 » » break; | 4015 break; |
| 4015 » case FP_BUTTONFITBOUNDS: | 4016 case FP_BUTTONFITBOUNDS: |
| 4016 » » Field::SetButtonFitBounds(pDocument, pData->sFieldName, pData->n
ControlIndex, pData->b); | 4017 Field::SetButtonFitBounds(pDocument, pData->sFieldName, pData->nControlI
ndex, pData->b); |
| 4017 » » break; | 4018 break; |
| 4018 » case FP_BUTTONPOSITION: | 4019 case FP_BUTTONPOSITION: |
| 4019 » » Field::SetButtonPosition(pDocument, pData->sFieldName, pData->nC
ontrolIndex, pData->num); | 4020 Field::SetButtonPosition(pDocument, pData->sFieldName, pData->nControlIn
dex, pData->num); |
| 4020 » » break; | 4021 break; |
| 4021 » case FP_BUTTONSCALEHOW: | 4022 case FP_BUTTONSCALEHOW: |
| 4022 » » Field::SetButtonScaleHow(pDocument, pData->sFieldName, pData->nC
ontrolIndex, pData->num); | 4023 Field::SetButtonScaleHow(pDocument, pData->sFieldName, pData->nControlIn
dex, pData->num); |
| 4023 » » break; | 4024 break; |
| 4024 » case FP_BUTTONSCALEWHEN: | 4025 case FP_BUTTONSCALEWHEN: |
| 4025 » » Field::SetButtonScaleWhen(pDocument, pData->sFieldName, pData->n
ControlIndex, pData->num); | 4026 Field::SetButtonScaleWhen(pDocument, pData->sFieldName, pData->nControlI
ndex, pData->num); |
| 4026 » » break; | 4027 break; |
| 4027 » case FP_CALCORDERINDEX: | 4028 case FP_CALCORDERINDEX: |
| 4028 » » Field::SetCalcOrderIndex(pDocument, pData->sFieldName, pData->nC
ontrolIndex, pData->num); | 4029 Field::SetCalcOrderIndex(pDocument, pData->sFieldName, pData->nControlIn
dex, pData->num); |
| 4029 » » break; | 4030 break; |
| 4030 » case FP_CHARLIMIT: | 4031 case FP_CHARLIMIT: |
| 4031 » » Field::SetCharLimit(pDocument, pData->sFieldName, pData->nContro
lIndex, pData->num); | 4032 Field::SetCharLimit(pDocument, pData->sFieldName, pData->nControlIndex,
pData->num); |
| 4032 » » break; | 4033 break; |
| 4033 » case FP_COMB: | 4034 case FP_COMB: |
| 4034 » » Field::SetComb(pDocument, pData->sFieldName, pData->nControlInde
x, pData->b); | 4035 Field::SetComb(pDocument, pData->sFieldName, pData->nControlIndex, pData
->b); |
| 4035 » » break; | 4036 break; |
| 4036 » case FP_COMMITONSELCHANGE: | 4037 case FP_COMMITONSELCHANGE: |
| 4037 » » Field::SetCommitOnSelChange(pDocument, pData->sFieldName, pData-
>nControlIndex, pData->b); | 4038 Field::SetCommitOnSelChange(pDocument, pData->sFieldName, pData->nContro
lIndex, pData->b); |
| 4038 » » break; | 4039 break; |
| 4039 » case FP_CURRENTVALUEINDICES: | 4040 case FP_CURRENTVALUEINDICES: |
| 4040 » » Field::SetCurrentValueIndices(pDocument, pData->sFieldName, pDat
a->nControlIndex, pData->wordarray); | 4041 Field::SetCurrentValueIndices(pDocument, pData->sFieldName, pData->nCont
rolIndex, pData->wordarray); |
| 4041 » » break; | 4042 break; |
| 4042 » case FP_DEFAULTVALUE: | 4043 case FP_DEFAULTVALUE: |
| 4043 » » Field::SetDefaultValue(pDocument, pData->sFieldName, pData->nCon
trolIndex, pData->widestring); | 4044 Field::SetDefaultValue(pDocument, pData->sFieldName, pData->nControlInde
x, pData->widestring); |
| 4044 » » break; | 4045 break; |
| 4045 » case FP_DONOTSCROLL: | 4046 case FP_DONOTSCROLL: |
| 4046 » » Field::SetDoNotScroll(pDocument, pData->sFieldName, pData->nCont
rolIndex, pData->b); | 4047 Field::SetDoNotScroll(pDocument, pData->sFieldName, pData->nControlIndex
, pData->b); |
| 4047 » » break; | 4048 break; |
| 4048 » case FP_DISPLAY: | 4049 case FP_DISPLAY: |
| 4049 » » Field::SetDisplay(pDocument, pData->sFieldName, pData->nControlI
ndex, pData->num); | 4050 Field::SetDisplay(pDocument, pData->sFieldName, pData->nControlIndex, pD
ata->num); |
| 4050 » » break; | 4051 break; |
| 4051 » case FP_FILLCOLOR: | 4052 case FP_FILLCOLOR: |
| 4052 » » Field::SetFillColor(pDocument, pData->sFieldName, pData->nContro
lIndex, pData->color); | 4053 Field::SetFillColor(pDocument, pData->sFieldName, pData->nControlIndex,
pData->color); |
| 4053 » » break; | 4054 break; |
| 4054 » case FP_HIDDEN: | 4055 case FP_HIDDEN: |
| 4055 » » Field::SetHidden(pDocument, pData->sFieldName, pData->nControlIn
dex, pData->b); | 4056 Field::SetHidden(pDocument, pData->sFieldName, pData->nControlIndex, pDa
ta->b); |
| 4056 » » break; | 4057 break; |
| 4057 » case FP_HIGHLIGHT: | 4058 case FP_HIGHLIGHT: |
| 4058 » » Field::SetHighlight(pDocument, pData->sFieldName, pData->nContro
lIndex, pData->string); | 4059 Field::SetHighlight(pDocument, pData->sFieldName, pData->nControlIndex,
pData->string); |
| 4059 » » break; | 4060 break; |
| 4060 » case FP_LINEWIDTH: | 4061 case FP_LINEWIDTH: |
| 4061 » » Field::SetLineWidth(pDocument, pData->sFieldName, pData->nContro
lIndex, pData->num); | 4062 Field::SetLineWidth(pDocument, pData->sFieldName, pData->nControlIndex,
pData->num); |
| 4062 » » break; | 4063 break; |
| 4063 » case FP_MULTILINE: | 4064 case FP_MULTILINE: |
| 4064 » » Field::SetMultiline(pDocument, pData->sFieldName, pData->nContro
lIndex, pData->b); | 4065 Field::SetMultiline(pDocument, pData->sFieldName, pData->nControlIndex,
pData->b); |
| 4065 » » break; | 4066 break; |
| 4066 » case FP_MULTIPLESELECTION: | 4067 case FP_MULTIPLESELECTION: |
| 4067 » » Field::SetMultipleSelection(pDocument, pData->sFieldName, pData-
>nControlIndex, pData->b); | 4068 Field::SetMultipleSelection(pDocument, pData->sFieldName, pData->nContro
lIndex, pData->b); |
| 4068 » » break; | 4069 break; |
| 4069 » case FP_PASSWORD: | 4070 case FP_PASSWORD: |
| 4070 » » Field::SetPassword(pDocument, pData->sFieldName, pData->nControl
Index, pData->b); | 4071 Field::SetPassword(pDocument, pData->sFieldName, pData->nControlIndex, p
Data->b); |
| 4071 » » break; | 4072 break; |
| 4072 » case FP_RECT: | 4073 case FP_RECT: |
| 4073 » » Field::SetRect(pDocument, pData->sFieldName, pData->nControlInde
x, pData->rect); | 4074 Field::SetRect(pDocument, pData->sFieldName, pData->nControlIndex, pData
->rect); |
| 4074 » » break; | 4075 break; |
| 4075 » case FP_RICHTEXT: | 4076 case FP_RICHTEXT: |
| 4076 » » Field::SetRichText(pDocument, pData->sFieldName, pData->nControl
Index, pData->b); | 4077 Field::SetRichText(pDocument, pData->sFieldName, pData->nControlIndex, p
Data->b); |
| 4077 » » break; | 4078 break; |
| 4078 » case FP_RICHVALUE: | 4079 case FP_RICHVALUE: |
| 4079 » » break; | 4080 break; |
| 4080 » case FP_ROTATION: | 4081 case FP_ROTATION: |
| 4081 » » Field::SetRotation(pDocument, pData->sFieldName, pData->nControl
Index, pData->num); | 4082 Field::SetRotation(pDocument, pData->sFieldName, pData->nControlIndex, p
Data->num); |
| 4082 » » break; | 4083 break; |
| 4083 » case FP_STROKECOLOR: | 4084 case FP_STROKECOLOR: |
| 4084 » » Field::SetStrokeColor(pDocument, pData->sFieldName, pData->nCont
rolIndex, pData->color); | 4085 Field::SetStrokeColor(pDocument, pData->sFieldName, pData->nControlIndex
, pData->color); |
| 4085 » » break; | 4086 break; |
| 4086 » case FP_STYLE: | 4087 case FP_STYLE: |
| 4087 » » Field::SetStyle(pDocument, pData->sFieldName, pData->nControlInd
ex, pData->string); | 4088 Field::SetStyle(pDocument, pData->sFieldName, pData->nControlIndex, pDat
a->string); |
| 4088 » » break; | 4089 break; |
| 4089 » case FP_TEXTCOLOR: | 4090 case FP_TEXTCOLOR: |
| 4090 » » Field::SetTextColor(pDocument, pData->sFieldName, pData->nContro
lIndex, pData->color); | 4091 Field::SetTextColor(pDocument, pData->sFieldName, pData->nControlIndex,
pData->color); |
| 4091 » » break; | 4092 break; |
| 4092 » case FP_TEXTFONT: | 4093 case FP_TEXTFONT: |
| 4093 » » Field::SetTextFont(pDocument, pData->sFieldName, pData->nControl
Index, pData->string); | 4094 Field::SetTextFont(pDocument, pData->sFieldName, pData->nControlIndex, p
Data->string); |
| 4094 » » break; | 4095 break; |
| 4095 » case FP_TEXTSIZE: | 4096 case FP_TEXTSIZE: |
| 4096 » » Field::SetTextSize(pDocument, pData->sFieldName, pData->nControl
Index, pData->num); | 4097 Field::SetTextSize(pDocument, pData->sFieldName, pData->nControlIndex, p
Data->num); |
| 4097 » » break; | 4098 break; |
| 4098 » case FP_USERNAME: | 4099 case FP_USERNAME: |
| 4099 » » Field::SetUserName(pDocument, pData->sFieldName, pData->nControl
Index, pData->widestring); | 4100 Field::SetUserName(pDocument, pData->sFieldName, pData->nControlIndex, p
Data->widestring); |
| 4100 » » break; | 4101 break; |
| 4101 » case FP_VALUE: | 4102 case FP_VALUE: |
| 4102 » » Field::SetValue(pDocument, pData->sFieldName, pData->nControlInd
ex, pData->widestringarray); | 4103 Field::SetValue(pDocument, pData->sFieldName, pData->nControlIndex, pDat
a->widestringarray); |
| 4103 » » break; | 4104 break; |
| 4104 » } | 4105 } |
| 4105 } | 4106 } |
| 4106 | 4107 |
| 4107 #define JS_FIELD_MINWIDTH» 1 | 4108 #define JS_FIELD_MINWIDTH 1 |
| 4108 #define JS_FIELD_MINHEIGHT» 1 | 4109 #define JS_FIELD_MINHEIGHT 1 |
| 4109 | 4110 |
| 4110 void Field::AddField(CPDFSDK_Document* pDocument, int nPageIndex, int nFieldType
, | 4111 void Field::AddField(CPDFSDK_Document* pDocument, int nPageIndex, int nFieldType
, |
| 4111 » » » » » » » const CFX_WideString& sN
ame, const CPDF_Rect& rcCoords) | 4112 const CFX_WideString& sName, const CPDF_Rect& rcCoords) |
| 4112 { | 4113 { |
| 4113 » //Not supported. | 4114 //Not supported. |
| 4114 } | 4115 } |
| 4115 | 4116 |
| OLD | NEW |