Index: fpdfsdk/include/pdfwindow/PWL_EditCtrl.h |
diff --git a/fpdfsdk/include/pdfwindow/PWL_EditCtrl.h b/fpdfsdk/include/pdfwindow/PWL_EditCtrl.h |
index b13d5e1e79c76681099597c03a3391197f1b4f39..a84432235baf9bf94d17840294fde43fece56c56 100644 |
--- a/fpdfsdk/include/pdfwindow/PWL_EditCtrl.h |
+++ b/fpdfsdk/include/pdfwindow/PWL_EditCtrl.h |
@@ -1,25 +1,15 @@ |
// Copyright 2014 PDFium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
- |
+ |
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
#ifndef _PWL_EDITCTRL_H_ |
#define _PWL_EDITCTRL_H_ |
-enum PWL_EDIT_ALIGNFORMAT_H |
-{ |
- PEAH_LEFT = 0, |
- PEAH_MIDDLE, |
- PEAH_RIGHT |
-}; |
+enum PWL_EDIT_ALIGNFORMAT_H { PEAH_LEFT = 0, PEAH_MIDDLE, PEAH_RIGHT }; |
-enum PWL_EDIT_ALIGNFORMAT_V |
-{ |
- PEAV_TOP = 0, |
- PEAV_CENTER, |
- PEAV_BOTTOM |
-}; |
+enum PWL_EDIT_ALIGNFORMAT_V { PEAV_TOP = 0, PEAV_CENTER, PEAV_BOTTOM }; |
class IPWL_Edit_Notify; |
class CPWL_EditCtrl; |
@@ -27,145 +17,168 @@ class CPWL_Caret; |
class IFX_Edit; |
class CPWL_Edit; |
-class IPWL_Edit_Notify |
-{ |
-public: |
- //when the position of caret is changed in edit |
- virtual void OnCaretMove(FX_INT32 x1, FX_INT32 y1, FX_INT32 x2, FX_INT32 y2) {} |
- virtual void OnContentChange(const CPDF_Rect& rcContent){} |
- //OprType: 0 InsertWord |
- //1 InsertReturn |
- //2 BackSpace |
- //3 Delete |
- //4 Clear |
- //5 InsertText |
- //6 SetText |
- virtual void OnInsertWord(const CPVT_WordPlace& place, const CPVT_WordPlace& oldplace){} |
- virtual void OnInsertReturn(const CPVT_WordPlace& place, const CPVT_WordPlace& oldplace){} |
- virtual void OnBackSpace(const CPVT_WordPlace& place, const CPVT_WordPlace& oldplace){} |
- virtual void OnDelete(const CPVT_WordPlace& place, const CPVT_WordPlace& oldplace){} |
- virtual void OnClear(const CPVT_WordPlace& place, const CPVT_WordPlace& oldplace){} |
- virtual void OnInsertText(const CPVT_WordPlace& place, const CPVT_WordPlace& oldplace){} |
- virtual void OnSetText(const CPVT_WordPlace& place, const CPVT_WordPlace& oldplace){} |
- virtual void OnAddUndo(CPWL_Edit* pEdit) {} |
+class IPWL_Edit_Notify { |
+ public: |
+ // when the position of caret is changed in edit |
+ virtual void OnCaretMove(FX_INT32 x1, FX_INT32 y1, FX_INT32 x2, FX_INT32 y2) { |
+ } |
+ virtual void OnContentChange(const CPDF_Rect& rcContent) {} |
+ // OprType: 0 InsertWord |
+ // 1 InsertReturn |
+ // 2 BackSpace |
+ // 3 Delete |
+ // 4 Clear |
+ // 5 InsertText |
+ // 6 SetText |
+ virtual void OnInsertWord(const CPVT_WordPlace& place, |
+ const CPVT_WordPlace& oldplace) {} |
+ virtual void OnInsertReturn(const CPVT_WordPlace& place, |
+ const CPVT_WordPlace& oldplace) {} |
+ virtual void OnBackSpace(const CPVT_WordPlace& place, |
+ const CPVT_WordPlace& oldplace) {} |
+ virtual void OnDelete(const CPVT_WordPlace& place, |
+ const CPVT_WordPlace& oldplace) {} |
+ virtual void OnClear(const CPVT_WordPlace& place, |
+ const CPVT_WordPlace& oldplace) {} |
+ virtual void OnInsertText(const CPVT_WordPlace& place, |
+ const CPVT_WordPlace& oldplace) {} |
+ virtual void OnSetText(const CPVT_WordPlace& place, |
+ const CPVT_WordPlace& oldplace) {} |
+ virtual void OnAddUndo(CPWL_Edit* pEdit) {} |
}; |
-class PWL_CLASS CPWL_EditCtrl : public CPWL_Wnd, public IFX_Edit_Notify |
-{ |
- friend class CPWL_Edit_Notify; |
- |
-public: |
- CPWL_EditCtrl(); |
- virtual ~CPWL_EditCtrl(); |
- |
-public: |
- virtual void OnCreate(PWL_CREATEPARAM & cp); |
- virtual void OnCreated(); |
- |
- virtual FX_BOOL OnKeyDown(FX_WORD nChar, FX_DWORD nFlag); |
- virtual FX_BOOL OnChar(FX_WORD nChar, FX_DWORD nFlag); |
- virtual FX_BOOL OnLButtonDown(const CPDF_Point & point, FX_DWORD nFlag); |
- virtual FX_BOOL OnLButtonUp(const CPDF_Point & point, FX_DWORD nFlag); |
- virtual FX_BOOL OnMouseMove(const CPDF_Point & point, FX_DWORD nFlag); |
- virtual void OnNotify(CPWL_Wnd* pWnd, FX_DWORD msg, FX_INTPTR wParam = 0, FX_INTPTR lParam = 0); |
- |
- virtual void CreateChildWnd(const PWL_CREATEPARAM & cp); |
- virtual void RePosChildWnd(); |
- virtual void SetFontSize(FX_FLOAT fFontSize); |
- virtual FX_FLOAT GetFontSize() const; |
- |
-public: |
- virtual void SetText(FX_LPCWSTR csText); |
- |
- virtual void CopyText(); |
- virtual void PasteText(); |
- virtual void CutText(); |
- |
- CPDF_Rect GetContentRect() const; |
- void GetCaretPos(FX_INT32& x, FX_INT32& y) const; |
- FX_BOOL IsModified() const; |
- |
- CFX_WideString GetText() const; |
- void SetSel(FX_INT32 nStartChar,FX_INT32 nEndChar); |
- void GetSel(FX_INT32 & nStartChar, FX_INT32 & nEndChar ) const; |
- void GetTextRange(const CPDF_Rect& rect, FX_INT32 & nStartChar, FX_INT32 & nEndChar) const; |
- CFX_WideString GetText(FX_INT32 & nStartChar, FX_INT32 & nEndChar) const; |
- void Clear(); |
- void SelectAll(); |
- |
- FX_INT32 GetCaret() const; |
- void SetCaret(FX_INT32 nPos); |
- FX_INT32 GetTotalWords() const; |
- |
- void Paint(); |
- |
- void EnableRefresh(FX_BOOL bRefresh); |
- CPDF_Point GetScrollPos() const; |
- void SetScrollPos(const CPDF_Point& point); |
- |
- void SetEditNotify(IPWL_Edit_Notify* pNotify) {m_pEditNotify = pNotify;} |
- |
- void SetCharSet(FX_BYTE nCharSet){m_nCharSet = nCharSet;} |
- FX_INT32 GetCharSet() const; |
- |
- void SetCodePage(FX_INT32 nCodePage){m_nCodePage = nCodePage;} |
- FX_INT32 GetCodePage() const {return m_nCodePage;} |
- |
- CPDF_Font * GetCaretFont() const; |
- FX_FLOAT GetCaretFontSize() const; |
- |
- FX_BOOL CanUndo() const; |
- FX_BOOL CanRedo() const; |
- void Redo(); |
- void Undo(); |
- |
- void SetReadyToInput(); |
-protected: |
- virtual void ShowVScrollBar(FX_BOOL bShow); |
- |
- virtual void InsertWord(FX_WORD word, FX_INT32 nCharset); |
- virtual void InsertReturn(); |
- virtual void InsertText(FX_LPCWSTR csText); |
- |
- virtual void SetCursor(); |
- FX_BOOL IsWndHorV(); |
- |
- void Delete(); |
- void Backspace(); |
- |
-protected: |
- void GetCaretInfo(CPDF_Point & ptHead, CPDF_Point & ptFoot) const; |
- void SetCaret(FX_BOOL bVisible, const CPDF_Point & ptHead, const CPDF_Point & ptFoot); |
- |
- void SetEditCaret(FX_BOOL bVisible); |
- |
-protected: |
- virtual void IOnSetScrollInfoX(FX_FLOAT fPlateMin, FX_FLOAT fPlateMax, |
- FX_FLOAT fContentMin, FX_FLOAT fContentMax, |
- FX_FLOAT fSmallStep, FX_FLOAT fBigStep){} |
- virtual void IOnSetScrollInfoY(FX_FLOAT fPlateMin, FX_FLOAT fPlateMax, |
- FX_FLOAT fContentMin, FX_FLOAT fContentMax, |
- FX_FLOAT fSmallStep, FX_FLOAT fBigStep); |
- virtual void IOnSetScrollPosX(FX_FLOAT fx){} |
- virtual void IOnSetScrollPosY(FX_FLOAT fy); |
- virtual void IOnSetCaret(FX_BOOL bVisible,const CPDF_Point & ptHead,const CPDF_Point & ptFoot, const CPVT_WordPlace& place); |
- virtual void IOnCaretChange(const CPVT_SecProps & secProps, const CPVT_WordProps & wordProps); |
- virtual void IOnContentChange(const CPDF_Rect& rcContent); |
- virtual void IOnInvalidateRect(CPDF_Rect * pRect); |
- |
-private: |
- void CreateEditCaret(const PWL_CREATEPARAM & cp); |
- |
-protected: |
- IFX_Edit* m_pEdit; |
- CPWL_Caret* m_pEditCaret; |
- FX_BOOL m_bMouseDown; |
- IPWL_Edit_Notify* m_pEditNotify; |
- |
-private: |
- FX_INT32 m_nCharSet; |
- FX_INT32 m_nCodePage; |
+class PWL_CLASS CPWL_EditCtrl : public CPWL_Wnd, public IFX_Edit_Notify { |
+ friend class CPWL_Edit_Notify; |
+ |
+ public: |
+ CPWL_EditCtrl(); |
+ virtual ~CPWL_EditCtrl(); |
+ |
+ public: |
+ virtual void OnCreate(PWL_CREATEPARAM& cp); |
+ virtual void OnCreated(); |
+ |
+ virtual FX_BOOL OnKeyDown(FX_WORD nChar, FX_DWORD nFlag); |
+ virtual FX_BOOL OnChar(FX_WORD nChar, FX_DWORD nFlag); |
+ virtual FX_BOOL OnLButtonDown(const CPDF_Point& point, FX_DWORD nFlag); |
+ virtual FX_BOOL OnLButtonUp(const CPDF_Point& point, FX_DWORD nFlag); |
+ virtual FX_BOOL OnMouseMove(const CPDF_Point& point, FX_DWORD nFlag); |
+ virtual void OnNotify(CPWL_Wnd* pWnd, |
+ FX_DWORD msg, |
+ FX_INTPTR wParam = 0, |
+ FX_INTPTR lParam = 0); |
+ |
+ virtual void CreateChildWnd(const PWL_CREATEPARAM& cp); |
+ virtual void RePosChildWnd(); |
+ virtual void SetFontSize(FX_FLOAT fFontSize); |
+ virtual FX_FLOAT GetFontSize() const; |
+ |
+ public: |
+ virtual void SetText(FX_LPCWSTR csText); |
+ |
+ virtual void CopyText(); |
+ virtual void PasteText(); |
+ virtual void CutText(); |
+ |
+ CPDF_Rect GetContentRect() const; |
+ void GetCaretPos(FX_INT32& x, FX_INT32& y) const; |
+ FX_BOOL IsModified() const; |
+ |
+ CFX_WideString GetText() const; |
+ void SetSel(FX_INT32 nStartChar, FX_INT32 nEndChar); |
+ void GetSel(FX_INT32& nStartChar, FX_INT32& nEndChar) const; |
+ void GetTextRange(const CPDF_Rect& rect, |
+ FX_INT32& nStartChar, |
+ FX_INT32& nEndChar) const; |
+ CFX_WideString GetText(FX_INT32& nStartChar, FX_INT32& nEndChar) const; |
+ void Clear(); |
+ void SelectAll(); |
+ |
+ FX_INT32 GetCaret() const; |
+ void SetCaret(FX_INT32 nPos); |
+ FX_INT32 GetTotalWords() const; |
+ |
+ void Paint(); |
+ |
+ void EnableRefresh(FX_BOOL bRefresh); |
+ CPDF_Point GetScrollPos() const; |
+ void SetScrollPos(const CPDF_Point& point); |
+ |
+ void SetEditNotify(IPWL_Edit_Notify* pNotify) { m_pEditNotify = pNotify; } |
+ |
+ void SetCharSet(FX_BYTE nCharSet) { m_nCharSet = nCharSet; } |
+ FX_INT32 GetCharSet() const; |
+ |
+ void SetCodePage(FX_INT32 nCodePage) { m_nCodePage = nCodePage; } |
+ FX_INT32 GetCodePage() const { return m_nCodePage; } |
+ |
+ CPDF_Font* GetCaretFont() const; |
+ FX_FLOAT GetCaretFontSize() const; |
+ |
+ FX_BOOL CanUndo() const; |
+ FX_BOOL CanRedo() const; |
+ void Redo(); |
+ void Undo(); |
+ |
+ void SetReadyToInput(); |
+ |
+ protected: |
+ virtual void ShowVScrollBar(FX_BOOL bShow); |
+ |
+ virtual void InsertWord(FX_WORD word, FX_INT32 nCharset); |
+ virtual void InsertReturn(); |
+ virtual void InsertText(FX_LPCWSTR csText); |
+ |
+ virtual void SetCursor(); |
+ FX_BOOL IsWndHorV(); |
+ |
+ void Delete(); |
+ void Backspace(); |
+ |
+ protected: |
+ void GetCaretInfo(CPDF_Point& ptHead, CPDF_Point& ptFoot) const; |
+ void SetCaret(FX_BOOL bVisible, |
+ const CPDF_Point& ptHead, |
+ const CPDF_Point& ptFoot); |
+ |
+ void SetEditCaret(FX_BOOL bVisible); |
+ |
+ protected: |
+ virtual void IOnSetScrollInfoX(FX_FLOAT fPlateMin, |
+ FX_FLOAT fPlateMax, |
+ FX_FLOAT fContentMin, |
+ FX_FLOAT fContentMax, |
+ FX_FLOAT fSmallStep, |
+ FX_FLOAT fBigStep) {} |
+ virtual void IOnSetScrollInfoY(FX_FLOAT fPlateMin, |
+ FX_FLOAT fPlateMax, |
+ FX_FLOAT fContentMin, |
+ FX_FLOAT fContentMax, |
+ FX_FLOAT fSmallStep, |
+ FX_FLOAT fBigStep); |
+ virtual void IOnSetScrollPosX(FX_FLOAT fx) {} |
+ virtual void IOnSetScrollPosY(FX_FLOAT fy); |
+ virtual void IOnSetCaret(FX_BOOL bVisible, |
+ const CPDF_Point& ptHead, |
+ const CPDF_Point& ptFoot, |
+ const CPVT_WordPlace& place); |
+ virtual void IOnCaretChange(const CPVT_SecProps& secProps, |
+ const CPVT_WordProps& wordProps); |
+ virtual void IOnContentChange(const CPDF_Rect& rcContent); |
+ virtual void IOnInvalidateRect(CPDF_Rect* pRect); |
+ |
+ private: |
+ void CreateEditCaret(const PWL_CREATEPARAM& cp); |
+ |
+ protected: |
+ IFX_Edit* m_pEdit; |
+ CPWL_Caret* m_pEditCaret; |
+ FX_BOOL m_bMouseDown; |
+ IPWL_Edit_Notify* m_pEditNotify; |
+ |
+ private: |
+ FX_INT32 m_nCharSet; |
+ FX_INT32 m_nCodePage; |
}; |
#endif |
- |