summaryrefslogtreecommitdiff
path: root/xfa/fwl
diff options
context:
space:
mode:
Diffstat (limited to 'xfa/fwl')
-rw-r--r--xfa/fwl/basewidget/fwl_comboboximp.cpp1
-rw-r--r--xfa/fwl/basewidget/fwl_editimp.cpp45
-rw-r--r--xfa/fwl/basewidget/fwl_editimp.h48
3 files changed, 32 insertions, 62 deletions
diff --git a/xfa/fwl/basewidget/fwl_comboboximp.cpp b/xfa/fwl/basewidget/fwl_comboboximp.cpp
index 60794da476..55f0910c4a 100644
--- a/xfa/fwl/basewidget/fwl_comboboximp.cpp
+++ b/xfa/fwl/basewidget/fwl_comboboximp.cpp
@@ -7,6 +7,7 @@
#include "xfa/fwl/basewidget/fwl_comboboximp.h"
#include "xfa/fde/tto/fde_textout.h"
+#include "xfa/fee/fde_txtedtengine.h"
#include "xfa/fwl/basewidget/fwl_editimp.h"
#include "xfa/fwl/basewidget/fwl_formproxyimp.h"
#include "xfa/fwl/basewidget/fwl_listboximp.h"
diff --git a/xfa/fwl/basewidget/fwl_editimp.cpp b/xfa/fwl/basewidget/fwl_editimp.cpp
index 17aef3bb16..29fab8b9b3 100644
--- a/xfa/fwl/basewidget/fwl_editimp.cpp
+++ b/xfa/fwl/basewidget/fwl_editimp.cpp
@@ -11,6 +11,7 @@
#include "xfa/fde/fde_gedevice.h"
#include "xfa/fde/fde_render.h"
+#include "xfa/fee/fde_txtedtengine.h"
#include "xfa/fee/ifde_txtedtpage.h"
#include "xfa/fwl/basewidget/fwl_caretimp.h"
#include "xfa/fwl/basewidget/fwl_comboboximp.h"
@@ -755,8 +756,7 @@ FX_BOOL CFWL_EditImp::CanRedo() {
FWL_ERR CFWL_EditImp::SetTabWidth(FX_FLOAT fTabWidth, FX_BOOL bEquidistant) {
if (!m_pEdtEngine)
return FWL_ERR_Succeeded;
- FDE_LPTXTEDTPARAMS pParams =
- (FDE_LPTXTEDTPARAMS)m_pEdtEngine->GetEditParams();
+ FDE_TXTEDTPARAMS* pParams = m_pEdtEngine->GetEditParams();
pParams->fTabWidth = fTabWidth;
pParams->bTabEquidistant = bEquidistant;
return FWL_ERR_Succeeded;
@@ -771,7 +771,7 @@ FWL_ERR CFWL_EditImp::SetNumberRange(int32_t iMin, int32_t iMax) {
m_bSetRange = TRUE;
return FWL_ERR_Succeeded;
}
-void CFWL_EditImp::On_CaretChanged(IFDE_TxtEdtEngine* pEdit,
+void CFWL_EditImp::On_CaretChanged(CFDE_TxtEdtEngine* pEdit,
int32_t nPage,
FX_BOOL bVisible) {
if (m_rtEngine.IsEmpty()) {
@@ -799,7 +799,7 @@ void CFWL_EditImp::On_CaretChanged(IFDE_TxtEdtEngine* pEdit,
Repaint(&rtInvalid);
}
}
-void CFWL_EditImp::On_TextChanged(IFDE_TxtEdtEngine* pEdit,
+void CFWL_EditImp::On_TextChanged(CFDE_TxtEdtEngine* pEdit,
FDE_TXTEDT_TEXTCHANGE_INFO& ChangeInfo) {
uint32_t dwStyleEx = m_pProperties->m_dwStyleExes;
if (dwStyleEx & FWL_STYLEEXT_EDT_VAlignMask) {
@@ -864,25 +864,25 @@ void CFWL_EditImp::On_TextChanged(IFDE_TxtEdtEngine* pEdit,
LayoutScrollBar();
Repaint(&rtTemp);
}
-void CFWL_EditImp::On_SelChanged(IFDE_TxtEdtEngine* pEdit) {
+void CFWL_EditImp::On_SelChanged(CFDE_TxtEdtEngine* pEdit) {
CFX_RectF rtTemp;
GetClientRect(rtTemp);
Repaint(&rtTemp);
}
-FX_BOOL CFWL_EditImp::On_PageLoad(IFDE_TxtEdtEngine* pEdit,
+FX_BOOL CFWL_EditImp::On_PageLoad(CFDE_TxtEdtEngine* pEdit,
int32_t nPageIndex,
int32_t nPurpose) {
- IFDE_TxtEdtEngine* pEdtEngine = m_pEdtEngine;
+ CFDE_TxtEdtEngine* pEdtEngine = m_pEdtEngine;
IFDE_TxtEdtPage* pPage = pEdtEngine->GetPage(nPageIndex);
if (!pPage)
return FALSE;
pPage->LoadPage(nullptr, nullptr);
return TRUE;
}
-FX_BOOL CFWL_EditImp::On_PageUnload(IFDE_TxtEdtEngine* pEdit,
+FX_BOOL CFWL_EditImp::On_PageUnload(CFDE_TxtEdtEngine* pEdit,
int32_t nPageIndex,
int32_t nPurpose) {
- IFDE_TxtEdtEngine* pEdtEngine = m_pEdtEngine;
+ CFDE_TxtEdtEngine* pEdtEngine = m_pEdtEngine;
IFDE_TxtEdtPage* pPage = pEdtEngine->GetPage(nPageIndex);
if (!pPage)
return FALSE;
@@ -890,28 +890,12 @@ FX_BOOL CFWL_EditImp::On_PageUnload(IFDE_TxtEdtEngine* pEdit,
return TRUE;
}
-void CFWL_EditImp::On_AddDoRecord(IFDE_TxtEdtEngine* pEdit,
+void CFWL_EditImp::On_AddDoRecord(CFDE_TxtEdtEngine* pEdit,
const CFX_ByteStringC& bsDoRecord) {
AddDoRecord(bsDoRecord);
}
-FX_BOOL CFWL_EditImp::On_ValidateField(IFDE_TxtEdtEngine* pEdit,
- int32_t nBlockIndex,
- int32_t nFieldIndex,
- const CFX_WideString& wsFieldText,
- int32_t nCharIndex) {
- return TRUE;
-}
-FX_BOOL CFWL_EditImp::On_ValidateBlock(IFDE_TxtEdtEngine* pEdit,
- int32_t nBlockIndex) {
- return TRUE;
-}
-FX_BOOL CFWL_EditImp::On_GetBlockFormatText(IFDE_TxtEdtEngine* pEdit,
- int32_t nBlockIndex,
- CFX_WideString& wsBlockText) {
- return FALSE;
-}
-FX_BOOL CFWL_EditImp::On_Validate(IFDE_TxtEdtEngine* pEdit,
+FX_BOOL CFWL_EditImp::On_Validate(CFDE_TxtEdtEngine* pEdit,
CFX_WideString& wsText) {
IFWL_Widget* pDst = GetOuter();
if (!pDst) {
@@ -1607,11 +1591,10 @@ void CFWL_EditImp::InitScrollBar(FX_BOOL bVert) {
pScrollBar->Initialize();
(bVert ? &m_pVertScrollBar : &m_pHorzScrollBar)->reset(pScrollBar);
}
+
void CFWL_EditImp::InitEngine() {
- if (m_pEdtEngine) {
- return;
- }
- m_pEdtEngine = IFDE_TxtEdtEngine::Create();
+ if (!m_pEdtEngine)
+ m_pEdtEngine = new CFDE_TxtEdtEngine;
}
FX_BOOL FWL_ShowCaret(IFWL_Widget* pWidget,
diff --git a/xfa/fwl/basewidget/fwl_editimp.h b/xfa/fwl/basewidget/fwl_editimp.h
index f8fb1aa37d..226a0e8b41 100644
--- a/xfa/fwl/basewidget/fwl_editimp.h
+++ b/xfa/fwl/basewidget/fwl_editimp.h
@@ -24,7 +24,7 @@ class IFWL_Caret;
class CFWL_EditImp;
class CFWL_EditImpDelegate;
-class CFWL_EditImp : public CFWL_WidgetImp, public IFDE_TxtEdtEventSink {
+class CFWL_EditImp : public CFWL_WidgetImp {
public:
CFWL_EditImp(const CFWL_WidgetImpProperties& properties, IFWL_Widget* pOuter);
~CFWL_EditImp() override;
@@ -79,38 +79,24 @@ class CFWL_EditImp : public CFWL_WidgetImp, public IFDE_TxtEdtEventSink {
virtual FWL_ERR SetTabWidth(FX_FLOAT fTabWidth, FX_BOOL bEquidistant);
virtual FWL_ERR SetOuter(IFWL_Widget* pOuter);
virtual FWL_ERR SetNumberRange(int32_t iMin, int32_t iMax);
- void On_CaretChanged(IFDE_TxtEdtEngine* pEdit,
+ virtual FWL_ERR SetBackgroundColor(uint32_t color);
+ virtual FWL_ERR SetFont(const CFX_WideString& wsFont, FX_FLOAT fSize);
+
+ void On_CaretChanged(CFDE_TxtEdtEngine* pEdit,
int32_t nPage,
- FX_BOOL bVisible = true) override;
- void On_TextChanged(IFDE_TxtEdtEngine* pEdit,
- FDE_TXTEDT_TEXTCHANGE_INFO& ChangeInfo) override;
- void On_PageCountChanged(IFDE_TxtEdtEngine* pEdit) override {}
- void On_SelChanged(IFDE_TxtEdtEngine* pEdit) override;
- FX_BOOL On_PageLoad(IFDE_TxtEdtEngine* pEdit,
+ FX_BOOL bVisible = true);
+ void On_TextChanged(CFDE_TxtEdtEngine* pEdit,
+ FDE_TXTEDT_TEXTCHANGE_INFO& ChangeInfo);
+ void On_SelChanged(CFDE_TxtEdtEngine* pEdit);
+ FX_BOOL On_PageLoad(CFDE_TxtEdtEngine* pEdit,
int32_t nPageIndex,
- int32_t nPurpose) override;
- FX_BOOL On_PageUnload(IFDE_TxtEdtEngine* pEdit,
+ int32_t nPurpose);
+ FX_BOOL On_PageUnload(CFDE_TxtEdtEngine* pEdit,
int32_t nPageIndex,
- int32_t nPurpose) override;
- FX_BOOL On_PageChange(IFDE_TxtEdtEngine* pEdit, int32_t nPageIndex) override {
- return TRUE;
- }
- void On_AddDoRecord(IFDE_TxtEdtEngine* pEdit,
- const CFX_ByteStringC& bsDoRecord) override;
- FX_BOOL On_ValidateField(IFDE_TxtEdtEngine* pEdit,
- int32_t nBlockIndex,
- int32_t nFieldIndex,
- const CFX_WideString& wsFieldText,
- int32_t nCharIndex) override;
- FX_BOOL On_ValidateBlock(IFDE_TxtEdtEngine* pEdit,
- int32_t nBlockIndex) override;
- FX_BOOL On_GetBlockFormatText(IFDE_TxtEdtEngine* pEdit,
- int32_t nBlockIndex,
- CFX_WideString& wsBlockText) override;
- FX_BOOL On_Validate(IFDE_TxtEdtEngine* pEdit,
- CFX_WideString& wsText) override;
- virtual FWL_ERR SetBackgroundColor(uint32_t color);
- virtual FWL_ERR SetFont(const CFX_WideString& wsFont, FX_FLOAT fSize);
+ int32_t nPurpose);
+ void On_AddDoRecord(CFDE_TxtEdtEngine* pEdit,
+ const CFX_ByteStringC& bsDoRecord);
+ FX_BOOL On_Validate(CFDE_TxtEdtEngine* pEdit, CFX_WideString& wsText);
void SetScrollOffset(FX_FLOAT fScrollOffset);
FX_BOOL GetSuggestWords(CFX_PointF pointf,
std::vector<CFX_ByteString>& sSuggest);
@@ -160,7 +146,7 @@ class CFWL_EditImp : public CFWL_WidgetImp, public IFDE_TxtEdtEventSink {
FX_FLOAT m_fVAlignOffset;
FX_FLOAT m_fScrollOffsetX;
FX_FLOAT m_fScrollOffsetY;
- IFDE_TxtEdtEngine* m_pEdtEngine;
+ CFDE_TxtEdtEngine* m_pEdtEngine;
FX_BOOL m_bLButtonDown;
int32_t m_nSelStart;
int32_t m_nLimit;