diff options
Diffstat (limited to 'core/fpdfdoc/cpdf_formfield.cpp')
-rw-r--r-- | core/fpdfdoc/cpdf_formfield.cpp | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/core/fpdfdoc/cpdf_formfield.cpp b/core/fpdfdoc/cpdf_formfield.cpp index 2502fe6faa..df59369723 100644 --- a/core/fpdfdoc/cpdf_formfield.cpp +++ b/core/fpdfdoc/cpdf_formfield.cpp @@ -45,6 +45,14 @@ bool IsUnison(CPDF_FormField* pField) { } // namespace +Optional<FormFieldType> IntToFormFieldType(int value) { + if (value >= static_cast<int>(FormFieldType::kUnknown) && + value < static_cast<int>(kFormFieldTypeCount)) { + return {static_cast<FormFieldType>(value)}; + } + return {}; +} + CPDF_Object* FPDF_GetFieldAttr(const CPDF_Dictionary* pFieldDict, const char* name, int nLevel) { @@ -238,28 +246,27 @@ int CPDF_FormField::GetControlIndex(const CPDF_FormControl* pControl) const { return it != m_ControlList.end() ? it - m_ControlList.begin() : -1; } -int CPDF_FormField::GetFieldType() const { +FormFieldType CPDF_FormField::GetFieldType() const { switch (m_Type) { case PushButton: - return FIELDTYPE_PUSHBUTTON; + return FormFieldType::kPushButton; case CheckBox: - return FIELDTYPE_CHECKBOX; + return FormFieldType::kCheckBox; case RadioButton: - return FIELDTYPE_RADIOBUTTON; + return FormFieldType::kRadioButton; case ComboBox: - return FIELDTYPE_COMBOBOX; + return FormFieldType::kComboBox; case ListBox: - return FIELDTYPE_LISTBOX; + return FormFieldType::kListBox; case Text: case RichText: case File: - return FIELDTYPE_TEXTFIELD; + return FormFieldType::kTextField; case Sign: - return FIELDTYPE_SIGNATURE; + return FormFieldType::kSignature; default: - break; + return FormFieldType::kUnknown; } - return FIELDTYPE_UNKNOWN; } CPDF_AAction CPDF_FormField::GetAdditionalAction() const { |