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 FPDFSDK_INCLUDE_PDFWINDOW_PWL_CARET_H_ | 7 #ifndef FPDFSDK_INCLUDE_PDFWINDOW_PWL_CARET_H_ |
8 #define FPDFSDK_INCLUDE_PDFWINDOW_PWL_CARET_H_ | 8 #define FPDFSDK_INCLUDE_PDFWINDOW_PWL_CARET_H_ |
9 | 9 |
10 #include "PWL_Wnd.h" | 10 #include "PWL_Wnd.h" |
11 | 11 |
12 struct PWL_CARET_INFO | 12 struct PWL_CARET_INFO { |
13 { | 13 public: |
14 public: | 14 PWL_CARET_INFO() : bVisible(FALSE), ptHead(0, 0), ptFoot(0, 0) {} |
15 » PWL_CARET_INFO() : bVisible(FALSE), ptHead(0,0), ptFoot(0,0) | |
16 » { | |
17 » } | |
18 | 15 |
19 » FX_BOOL»» » » » » bVisible; | 16 FX_BOOL bVisible; |
20 » CPDF_Point» » » » » ptHead; | 17 CPDF_Point ptHead; |
21 » CPDF_Point» » » » » ptFoot; | 18 CPDF_Point ptFoot; |
22 }; | 19 }; |
23 | 20 |
| 21 class CPWL_Caret : public CPWL_Wnd { |
| 22 public: |
| 23 CPWL_Caret(); |
| 24 virtual ~CPWL_Caret(); |
24 | 25 |
25 class CPWL_Caret : public CPWL_Wnd | 26 virtual CFX_ByteString GetClassName() const; |
26 { | 27 virtual void GetThisAppearanceStream(CFX_ByteTextBuf& sAppStream); |
27 public: | 28 virtual void DrawThisAppearance(CFX_RenderDevice* pDevice, |
28 » CPWL_Caret(); | 29 CPDF_Matrix* pUser2Device); |
29 » virtual ~CPWL_Caret(); | 30 virtual void InvalidateRect(CPDF_Rect* pRect = NULL); |
| 31 virtual void SetVisible(FX_BOOL bVisible) {} |
| 32 virtual void TimerProc(); |
| 33 void SetCaret(FX_BOOL bVisible, |
| 34 const CPDF_Point& ptHead, |
| 35 const CPDF_Point& ptFoot); |
| 36 CFX_ByteString GetCaretAppearanceStream(const CPDF_Point& ptOffset); |
| 37 void SetInvalidRect(CPDF_Rect rc) { m_rcInvalid = rc; } |
30 | 38 |
31 » virtual CFX_ByteString» » GetClassName() const; | 39 private: |
32 » virtual void» » » » GetThisAppearanceStream(CFX_Byte
TextBuf & sAppStream); | 40 void GetCaretApp(CFX_ByteTextBuf& sAppStream, const CPDF_Point& ptOffset); |
33 » virtual void» » » » DrawThisAppearance(CFX_RenderDev
ice* pDevice, CPDF_Matrix* pUser2Device); | 41 CPDF_Rect GetCaretRect() const; |
34 » virtual void» » » » InvalidateRect(CPDF_Rect * pRect
= NULL); | |
35 » virtual void» » » » SetVisible(FX_BOOL bVisible) {} | |
36 » virtual»void» » » » TimerProc(); | |
37 » void» » » » » » SetCaret(FX_BOOL bVisibl
e, const CPDF_Point & ptHead, const CPDF_Point & ptFoot); | |
38 » CFX_ByteString» » » » GetCaretAppearanceStream(const C
PDF_Point & ptOffset); | |
39 » void» » » » » » SetInvalidRect(CPDF_Rect
rc) {m_rcInvalid = rc;} | |
40 | 42 |
41 private: | 43 FX_BOOL m_bFlash; |
42 » void» » » » » » GetCaretApp(CFX_ByteText
Buf & sAppStream,const CPDF_Point & ptOffset); | 44 CPDF_Point m_ptHead; |
43 » CPDF_Rect» » » » » GetCaretRect() const; | 45 CPDF_Point m_ptFoot; |
44 | 46 FX_FLOAT m_fWidth; |
45 » FX_BOOL»» » » » » m_bFlash; | 47 int32_t m_nDelay; |
46 » CPDF_Point» » » » » m_ptHead; | 48 CPDF_Rect m_rcInvalid; |
47 » CPDF_Point» » » » » m_ptFoot; | |
48 » FX_FLOAT» » » » » m_fWidth; | |
49 » int32_t»» » » » m_nDelay; | |
50 » CPDF_Rect» » » » » m_rcInvalid; | |
51 }; | 49 }; |
52 | 50 |
53 #endif // FPDFSDK_INCLUDE_PDFWINDOW_PWL_CARET_H_ | 51 #endif // FPDFSDK_INCLUDE_PDFWINDOW_PWL_CARET_H_ |
OLD | NEW |