| 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 #ifndef _PWL_EDIT_H_ | 7 #ifndef _PWL_EDIT_H_ |
| 8 #define _PWL_EDIT_H_ | 8 #define _PWL_EDIT_H_ |
| 9 | 9 |
| 10 class IPWL_Filler_Notify; | 10 class IPWL_Filler_Notify; |
| 11 class CPWL_Edit; | 11 class CPWL_Edit; |
| 12 class IPWL_SpellCheck; | 12 class IPWL_SpellCheck; |
| 13 | 13 |
| 14 class IPWL_Filler_Notify | 14 class IPWL_Filler_Notify { |
| 15 { | 15 public: |
| 16 public: | 16 virtual void QueryWherePopup( |
| 17 » virtual void» » » » » QueryWherePopup(void* pP
rivateData, FX_FLOAT fPopupMin,FX_FLOAT fPopupMax, | 17 void* pPrivateData, |
| 18 » » » » » » » » » »
FX_INT32 & nRet, FX_FLOAT & fPopupRet) = 0; //nRet: (0:bottom 1:top) | 18 FX_FLOAT fPopupMin, |
| 19 » virtual void» » » » » OnBeforeKeyStroke(FX_BOO
L bEditOrList, void* pPrivateData, FX_INT32 nKeyCode, | 19 FX_FLOAT fPopupMax, |
| 20 » » » » » » » » » »
CFX_WideString & strChange, const CFX_WideString& strChangeEx, | 20 FX_INT32& nRet, |
| 21 » » » » » » » » » »
int nSelStart, int nSelEnd, | 21 FX_FLOAT& fPopupRet) = 0; // nRet: (0:bottom 1:top) |
| 22 » » » » » » » » » »
FX_BOOL bKeyDown, FX_BOOL & bRC, FX_BOOL & bExit, FX_DWORD nFlag) = 0; | 22 virtual void OnBeforeKeyStroke(FX_BOOL bEditOrList, |
| 23 » virtual void» » » » » OnAfterKeyStroke(FX_BOOL
bEditOrList, void* pPrivateData, FX_BOOL & bExit, FX_DWORD nFlag) = 0; | 23 void* pPrivateData, |
| 24 FX_INT32 nKeyCode, |
| 25 CFX_WideString& strChange, |
| 26 const CFX_WideString& strChangeEx, |
| 27 int nSelStart, |
| 28 int nSelEnd, |
| 29 FX_BOOL bKeyDown, |
| 30 FX_BOOL& bRC, |
| 31 FX_BOOL& bExit, |
| 32 FX_DWORD nFlag) = 0; |
| 33 virtual void OnAfterKeyStroke(FX_BOOL bEditOrList, |
| 34 void* pPrivateData, |
| 35 FX_BOOL& bExit, |
| 36 FX_DWORD nFlag) = 0; |
| 24 }; | 37 }; |
| 25 | 38 |
| 26 class PWL_CLASS CPWL_Edit : public CPWL_EditCtrl, public IFX_Edit_OprNotify | 39 class PWL_CLASS CPWL_Edit : public CPWL_EditCtrl, public IFX_Edit_OprNotify { |
| 27 { | 40 public: |
| 28 public: | 41 CPWL_Edit(); |
| 29 » CPWL_Edit(); | 42 virtual ~CPWL_Edit(); |
| 30 » virtual ~CPWL_Edit(); | |
| 31 | 43 |
| 32 public: | 44 public: |
| 33 » virtual CFX_ByteString» » » GetClassName() const; | 45 virtual CFX_ByteString GetClassName() const; |
| 34 » virtual void» » » » » OnDestroy(); | 46 virtual void OnDestroy(); |
| 35 » virtual void» » » » » OnCreated(); | 47 virtual void OnCreated(); |
| 36 » virtual void» » » » » RePosChildWnd(); | 48 virtual void RePosChildWnd(); |
| 37 » virtual CPDF_Rect» » » » GetClientRect() const; | 49 virtual CPDF_Rect GetClientRect() const; |
| 38 | 50 |
| 39 » virtual void» » » » » GetThisAppearanceStream(
CFX_ByteTextBuf & sAppStream); | 51 virtual void GetThisAppearanceStream(CFX_ByteTextBuf& sAppStream); |
| 40 » virtual void» » » » » DrawThisAppearance(CFX_R
enderDevice* pDevice, CPDF_Matrix* pUser2Device); | 52 virtual void DrawThisAppearance(CFX_RenderDevice* pDevice, |
| 53 CPDF_Matrix* pUser2Device); |
| 41 | 54 |
| 42 » virtual FX_BOOL»» » » » OnLButtonDown(const CPDF
_Point & point, FX_DWORD nFlag); | 55 virtual FX_BOOL OnLButtonDown(const CPDF_Point& point, FX_DWORD nFlag); |
| 43 » virtual FX_BOOL»» » » » OnLButtonDblClk(const CP
DF_Point & point, FX_DWORD nFlag); | 56 virtual FX_BOOL OnLButtonDblClk(const CPDF_Point& point, FX_DWORD nFlag); |
| 44 » virtual FX_BOOL»» » » » OnRButtonUp(const CPDF_P
oint & point, FX_DWORD nFlag); | 57 virtual FX_BOOL OnRButtonUp(const CPDF_Point& point, FX_DWORD nFlag); |
| 45 » virtual FX_BOOL»» » » » OnMouseWheel(short zDelt
a, const CPDF_Point & point, FX_DWORD nFlag); | 58 virtual FX_BOOL OnMouseWheel(short zDelta, |
| 59 const CPDF_Point& point, |
| 60 FX_DWORD nFlag); |
| 46 | 61 |
| 47 » virtual FX_BOOL»» » » » OnKeyDown(FX_WORD nChar,
FX_DWORD nFlag); | 62 virtual FX_BOOL OnKeyDown(FX_WORD nChar, FX_DWORD nFlag); |
| 48 » virtual FX_BOOL»» » » » OnChar(FX_WORD nChar, FX
_DWORD nFlag); | 63 virtual FX_BOOL OnChar(FX_WORD nChar, FX_DWORD nFlag); |
| 49 | 64 |
| 50 » virtual CPDF_Rect» » » » GetFocusRect() const; | 65 virtual CPDF_Rect GetFocusRect() const; |
| 51 | 66 |
| 52 public:»» | 67 public: |
| 53 » void» » » » » » » SetAlignFormatH(
PWL_EDIT_ALIGNFORMAT_H nFormat = PEAH_LEFT, FX_BOOL bPaint = TRUE);» //0:left
1:right 2:middle | 68 void SetAlignFormatH(PWL_EDIT_ALIGNFORMAT_H nFormat = PEAH_LEFT, |
| 54 » void» » » » » » » SetAlignFormatV(
PWL_EDIT_ALIGNFORMAT_V nFormat = PEAV_TOP, FX_BOOL bPaint = TRUE);» //0:top
1:bottom 2:center | 69 FX_BOOL bPaint = TRUE); // 0:left 1:right 2:middle |
| 70 void SetAlignFormatV(PWL_EDIT_ALIGNFORMAT_V nFormat = PEAV_TOP, |
| 71 FX_BOOL bPaint = TRUE); // 0:top 1:bottom 2:center |
| 55 | 72 |
| 56 » void» » » » » » » SetCharArray(FX_
INT32 nCharArray); | 73 void SetCharArray(FX_INT32 nCharArray); |
| 57 » void» » » » » » » SetLimitChar(FX_
INT32 nLimitChar); | 74 void SetLimitChar(FX_INT32 nLimitChar); |
| 58 | 75 |
| 59 » void» » » » » » » SetHorzScale(FX_
INT32 nHorzScale, FX_BOOL bPaint = TRUE); | 76 void SetHorzScale(FX_INT32 nHorzScale, FX_BOOL bPaint = TRUE); |
| 60 » void» » » » » » » SetCharSpace(FX_
FLOAT fCharSpace, FX_BOOL bPaint = TRUE); | 77 void SetCharSpace(FX_FLOAT fCharSpace, FX_BOOL bPaint = TRUE); |
| 61 | 78 |
| 62 » void» » » » » » » SetLineLeading(F
X_FLOAT fLineLeading, FX_BOOL bPaint = TRUE); | 79 void SetLineLeading(FX_FLOAT fLineLeading, FX_BOOL bPaint = TRUE); |
| 63 | 80 |
| 64 » void» » » » » » » EnableSpellCheck
(FX_BOOL bEnabled); | 81 void EnableSpellCheck(FX_BOOL bEnabled); |
| 65 | 82 |
| 66 » FX_BOOL»» » » » » » CanSelectAll() c
onst; | 83 FX_BOOL CanSelectAll() const; |
| 67 » FX_BOOL»» » » » » » CanClear() const
; | 84 FX_BOOL CanClear() const; |
| 68 » FX_BOOL»» » » » » » CanCopy() const; | 85 FX_BOOL CanCopy() const; |
| 69 » FX_BOOL»» » » » » » CanCut() const; | 86 FX_BOOL CanCut() const; |
| 70 » FX_BOOL»» » » » » » CanPaste() const
; | 87 FX_BOOL CanPaste() const; |
| 71 | 88 |
| 72 » virtual void» » » » » CopyText(); | 89 virtual void CopyText(); |
| 73 » virtual void» » » » » PasteText(); | 90 virtual void PasteText(); |
| 74 » virtual void » » » » » CutText(); | 91 virtual void CutText(); |
| 75 | 92 |
| 76 » virtual void» » » » » SetText(FX_LPCWSTR csTex
t); | 93 virtual void SetText(FX_LPCWSTR csText); |
| 77 » void» » » » » » » ReplaceSel(FX_LP
CWSTR csText); | 94 void ReplaceSel(FX_LPCWSTR csText); |
| 78 | 95 |
| 79 » CFX_ByteString» » » » » GetTextAppearanceStream(
const CPDF_Point & ptOffset) const; | 96 CFX_ByteString GetTextAppearanceStream(const CPDF_Point& ptOffset) const; |
| 80 » CFX_ByteString» » » » » GetCaretAppearanceStream
(const CPDF_Point & ptOffset) const;» | 97 CFX_ByteString GetCaretAppearanceStream(const CPDF_Point& ptOffset) const; |
| 81 » CFX_ByteString» » » » » GetSelectAppearanceStrea
m(const CPDF_Point & ptOffset) const; | 98 CFX_ByteString GetSelectAppearanceStream(const CPDF_Point& ptOffset) const; |
| 82 | 99 |
| 83 » FX_BOOL»» » » » » » IsTextFull() con
st;» | 100 FX_BOOL IsTextFull() const; |
| 84 | 101 |
| 85 » static FX_FLOAT»» » » » GetCharArrayAutoFontSize
(CPDF_Font* pFont, const CPDF_Rect& rcPlate, FX_INT32 nCharArray); | 102 static FX_FLOAT GetCharArrayAutoFontSize(CPDF_Font* pFont, |
| 103 const CPDF_Rect& rcPlate, |
| 104 FX_INT32 nCharArray); |
| 86 | 105 |
| 87 » void» » » » » » » SetFillerNotify(
IPWL_Filler_Notify* pNotify) {m_pFillerNotify = pNotify;} | 106 void SetFillerNotify(IPWL_Filler_Notify* pNotify) { |
| 107 m_pFillerNotify = pNotify; |
| 108 } |
| 88 | 109 |
| 89 » void» » » » » » » GeneratePageObje
cts(CPDF_PageObjects* pPageObjects, | 110 void GeneratePageObjects(CPDF_PageObjects* pPageObjects, |
| 90 » » » » » » » » » »
const CPDF_Point& ptOffset, CFX_ArrayTemplate<CPDF_TextObject*>& ObjArray); | 111 const CPDF_Point& ptOffset, |
| 91 » void» » » » » » » GeneratePageObje
cts(CPDF_PageObjects* pPageObjects, | 112 CFX_ArrayTemplate<CPDF_TextObject*>& ObjArray); |
| 92 » » » » » » » » » »
const CPDF_Point& ptOffset); | 113 void GeneratePageObjects(CPDF_PageObjects* pPageObjects, |
| 114 const CPDF_Point& ptOffset); |
| 93 | 115 |
| 94 protected: | 116 protected: |
| 95 » virtual void» » » » » OnSetFocus(); | 117 virtual void OnSetFocus(); |
| 96 » virtual void» » » » » OnKillFocus(); | 118 virtual void OnKillFocus(); |
| 97 | 119 |
| 98 protected: | 120 protected: |
| 99 » virtual void» » » » » OnInsertWord(const CPVT_
WordPlace& place, const CPVT_WordPlace& oldplace); | 121 virtual void OnInsertWord(const CPVT_WordPlace& place, |
| 100 » virtual void» » » » » OnInsertReturn(const CPV
T_WordPlace& place, const CPVT_WordPlace& oldplace); | 122 const CPVT_WordPlace& oldplace); |
| 101 » virtual void» » » » » OnBackSpace(const CPVT_W
ordPlace& place, const CPVT_WordPlace& oldplace); | 123 virtual void OnInsertReturn(const CPVT_WordPlace& place, |
| 102 » virtual void» » » » » OnDelete(const CPVT_Word
Place& place, const CPVT_WordPlace& oldplace); | 124 const CPVT_WordPlace& oldplace); |
| 103 » virtual void» » » » » OnClear(const CPVT_WordP
lace& place, const CPVT_WordPlace& oldplace); | 125 virtual void OnBackSpace(const CPVT_WordPlace& place, |
| 104 » virtual void» » » » » OnSetText(const CPVT_Wor
dPlace& place, const CPVT_WordPlace& oldplace); | 126 const CPVT_WordPlace& oldplace); |
| 105 » virtual void» » » » » OnInsertText(const CPVT_
WordPlace& place, const CPVT_WordPlace& oldplace); | 127 virtual void OnDelete(const CPVT_WordPlace& place, |
| 106 » virtual void» » » » » OnAddUndo(IFX_Edit_UndoI
tem* pUndoItem); | 128 const CPVT_WordPlace& oldplace); |
| 129 virtual void OnClear(const CPVT_WordPlace& place, |
| 130 const CPVT_WordPlace& oldplace); |
| 131 virtual void OnSetText(const CPVT_WordPlace& place, |
| 132 const CPVT_WordPlace& oldplace); |
| 133 virtual void OnInsertText(const CPVT_WordPlace& place, |
| 134 const CPVT_WordPlace& oldplace); |
| 135 virtual void OnAddUndo(IFX_Edit_UndoItem* pUndoItem); |
| 107 | 136 |
| 108 private:» | 137 private: |
| 109 » CPVT_WordRange» » » » » GetSelectWordRange() con
st; | 138 CPVT_WordRange GetSelectWordRange() const; |
| 110 » virtual void» » » » » ShowVScrollBar(FX_BOOL b
Show); | 139 virtual void ShowVScrollBar(FX_BOOL bShow); |
| 111 » FX_BOOL»» » » » » » IsVScrollBarVisi
ble() const; | 140 FX_BOOL IsVScrollBarVisible() const; |
| 112 » void» » » » » » » SetParamByFlag()
; | 141 void SetParamByFlag(); |
| 113 | 142 |
| 114 » FX_FLOAT» » » » » » GetCharArrayAuto
FontSize(FX_INT32 nCharArray); | 143 FX_FLOAT GetCharArrayAutoFontSize(FX_INT32 nCharArray); |
| 115 » CPDF_Point» » » » » » GetWordRightBott
omPoint(const CPVT_WordPlace& wpWord); | 144 CPDF_Point GetWordRightBottomPoint(const CPVT_WordPlace& wpWord); |
| 116 | 145 |
| 117 » CPVT_WordRange» » » » » CombineWordRange(const C
PVT_WordRange& wr1, const CPVT_WordRange& wr2); | 146 CPVT_WordRange CombineWordRange(const CPVT_WordRange& wr1, |
| 118 » CPVT_WordRange» » » » » GetLatinWordsRange(const
CPDF_Point & point) const; | 147 const CPVT_WordRange& wr2); |
| 119 » CPVT_WordRange» » » » » GetLatinWordsRange(const
CPVT_WordPlace & place) const; | 148 CPVT_WordRange GetLatinWordsRange(const CPDF_Point& point) const; |
| 120 » CPVT_WordRange» » » » » GetArabicWordsRange(cons
t CPVT_WordPlace & place) const; | 149 CPVT_WordRange GetLatinWordsRange(const CPVT_WordPlace& place) const; |
| 121 » CPVT_WordRange» » » » » GetSameWordsRange(const
CPVT_WordPlace & place, FX_BOOL bLatin, FX_BOOL bArabic) const; | 150 CPVT_WordRange GetArabicWordsRange(const CPVT_WordPlace& place) const; |
| 151 CPVT_WordRange GetSameWordsRange(const CPVT_WordPlace& place, |
| 152 FX_BOOL bLatin, |
| 153 FX_BOOL bArabic) const; |
| 122 | 154 |
| 123 » void» » » » » » » AjustArabicWords
(const CPVT_WordRange& wr); | 155 void AjustArabicWords(const CPVT_WordRange& wr); |
| 124 public: | 156 |
| 125 » FX_BOOL»» » » » » » IsProceedtoOnCha
r(FX_WORD nKeyCode, FX_DWORD nFlag); | 157 public: |
| 126 private: | 158 FX_BOOL IsProceedtoOnChar(FX_WORD nKeyCode, FX_DWORD nFlag); |
| 127 » IPWL_Filler_Notify*» » » » m_pFillerNotify; | 159 |
| 128 » IPWL_SpellCheck*» » » » m_pSpellCheck; | 160 private: |
| 129 » FX_BOOL»» » » » » » m_bFocus; | 161 IPWL_Filler_Notify* m_pFillerNotify; |
| 130 » CPDF_Rect» » » » » » m_rcOldWindow; | 162 IPWL_SpellCheck* m_pSpellCheck; |
| 131 public: | 163 FX_BOOL m_bFocus; |
| 132 » void» » » » » » » AttachFFLData(vo
id* pData) {m_pFormFiller = pData;} | 164 CPDF_Rect m_rcOldWindow; |
| 133 private: | 165 |
| 134 » void*» » » » » » » m_pFormFiller; | 166 public: |
| 167 void AttachFFLData(void* pData) { m_pFormFiller = pData; } |
| 168 |
| 169 private: |
| 170 void* m_pFormFiller; |
| 135 }; | 171 }; |
| 136 | 172 |
| 137 #endif | 173 #endif |
| 138 | |
| OLD | NEW |