| Index: fpdfsdk/javascript/Field.cpp
|
| diff --git a/fpdfsdk/javascript/Field.cpp b/fpdfsdk/javascript/Field.cpp
|
| index 3b69a5ac22db96b95dd23eee0f4a03e871d00cb3..5c279d6b53a9839a077efca1d18e66f045f9b531 100644
|
| --- a/fpdfsdk/javascript/Field.cpp
|
| +++ b/fpdfsdk/javascript/Field.cpp
|
| @@ -1531,65 +1531,8 @@ void Field::SetHidden(CPDFSDK_Document* pDocument,
|
| const CFX_WideString& swFieldName,
|
| int nControlIndex,
|
| bool b) {
|
| - CPDFSDK_InterForm* pInterForm = pDocument->GetInterForm();
|
| - std::vector<CPDF_FormField*> FieldArray =
|
| - GetFormFields(pDocument, swFieldName);
|
| - for (CPDF_FormField* pFormField : FieldArray) {
|
| - if (nControlIndex < 0) {
|
| - FX_BOOL bSet = FALSE;
|
| - for (int i = 0, sz = pFormField->CountControls(); i < sz; ++i) {
|
| - if (CPDFSDK_Widget* pWidget =
|
| - pInterForm->GetWidget(pFormField->GetControl(i), false)) {
|
| - uint32_t dwFlags = pWidget->GetFlags();
|
| -
|
| - if (b) {
|
| - dwFlags &= (~ANNOTFLAG_INVISIBLE);
|
| - dwFlags &= (~ANNOTFLAG_NOVIEW);
|
| - dwFlags |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT);
|
| - } else {
|
| - dwFlags &= (~ANNOTFLAG_INVISIBLE);
|
| - dwFlags &= (~ANNOTFLAG_HIDDEN);
|
| - dwFlags &= (~ANNOTFLAG_NOVIEW);
|
| - dwFlags |= ANNOTFLAG_PRINT;
|
| - }
|
| -
|
| - if (dwFlags != pWidget->GetFlags()) {
|
| - pWidget->SetFlags(dwFlags);
|
| - bSet = TRUE;
|
| - }
|
| - }
|
| - }
|
| -
|
| - if (bSet)
|
| - UpdateFormField(pDocument, pFormField, TRUE, FALSE, TRUE);
|
| - } else {
|
| - if (nControlIndex >= pFormField->CountControls())
|
| - return;
|
| - if (CPDF_FormControl* pFormControl =
|
| - pFormField->GetControl(nControlIndex)) {
|
| - if (CPDFSDK_Widget* pWidget =
|
| - pInterForm->GetWidget(pFormControl, false)) {
|
| - uint32_t dwFlags = pWidget->GetFlags();
|
| -
|
| - if (b) {
|
| - dwFlags &= (~ANNOTFLAG_INVISIBLE);
|
| - dwFlags &= (~ANNOTFLAG_NOVIEW);
|
| - dwFlags |= (ANNOTFLAG_HIDDEN | ANNOTFLAG_PRINT);
|
| - } else {
|
| - dwFlags &= (~ANNOTFLAG_INVISIBLE);
|
| - dwFlags &= (~ANNOTFLAG_HIDDEN);
|
| - dwFlags &= (~ANNOTFLAG_NOVIEW);
|
| - dwFlags |= ANNOTFLAG_PRINT;
|
| - }
|
| -
|
| - if (dwFlags != pWidget->GetFlags()) {
|
| - pWidget->SetFlags(dwFlags);
|
| - UpdateFormControl(pDocument, pFormControl, TRUE, FALSE, TRUE);
|
| - }
|
| - }
|
| - }
|
| - }
|
| - }
|
| + int display = b ? 1 /*Hidden*/ : 0 /*Visible*/;
|
| + SetDisplay(pDocument, swFieldName, nControlIndex, display);
|
| }
|
|
|
| FX_BOOL Field::highlight(IJS_Context* cc,
|
|
|