#include "fpdfsdk/formfiller/cffl_textfield.h"
#include <utility>
#include "constants/ascii.h"
#include "constants/form_flags.h"
#include "core/fpdfdoc/cpdf_bafontmap.h"
#include "core/fxcrt/check.h"
#include "fpdfsdk/cpdfsdk_widget.h"
#include "fpdfsdk/formfiller/cffl_perwindowdata.h"
#include "fpdfsdk/pwl/cpwl_edit.h"
#include "public/fpdf_fwlevent.h"
namespace {
enum Alignment { … };
}
CFFL_TextField::CFFL_TextField(CFFL_InteractiveFormFiller* pFormFiller,
CPDFSDK_Widget* pWidget)
: … { … }
CFFL_TextField::~CFFL_TextField() { … }
CPWL_Wnd::CreateParams CFFL_TextField::GetCreateParam() { … }
std::unique_ptr<CPWL_Wnd> CFFL_TextField::NewPWLWindow(
const CPWL_Wnd::CreateParams& cp,
std::unique_ptr<IPWL_FillerNotify::PerWindowData> pAttachedData) { … }
bool CFFL_TextField::OnChar(CPDFSDK_Widget* pWidget,
uint32_t nChar,
Mask<FWL_EVENTFLAG> nFlags) { … }
bool CFFL_TextField::IsDataChanged(const CPDFSDK_PageView* pPageView) { … }
void CFFL_TextField::SaveData(const CPDFSDK_PageView* pPageView) { … }
void CFFL_TextField::GetActionData(const CPDFSDK_PageView* pPageView,
CPDF_AAction::AActionType type,
CFFL_FieldAction& fa) { … }
void CFFL_TextField::SetActionData(const CPDFSDK_PageView* pPageView,
CPDF_AAction::AActionType type,
const CFFL_FieldAction& fa) { … }
void CFFL_TextField::SavePWLWindowState(const CPDFSDK_PageView* pPageView) { … }
void CFFL_TextField::RecreatePWLWindowFromSavedState(
const CPDFSDK_PageView* pPageView) { … }
#ifdef PDF_ENABLE_XFA
bool CFFL_TextField::IsFieldFull(const CPDFSDK_PageView* pPageView) { … }
#endif
void CFFL_TextField::OnSetFocusForEdit(CPWL_Edit* pEdit) { … }
CPWL_Edit* CFFL_TextField::GetPWLEdit(const CPDFSDK_PageView* pPageView) const { … }
CPWL_Edit* CFFL_TextField::CreateOrUpdatePWLEdit(
const CPDFSDK_PageView* pPageView) { … }