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 XFA_FWL_CORE_IFWL_TOOLTIP_H_ | 7 #ifndef XFA_FWL_CORE_IFWL_TOOLTIP_H_ |
8 #define XFA_FWL_CORE_IFWL_TOOLTIP_H_ | 8 #define XFA_FWL_CORE_IFWL_TOOLTIP_H_ |
9 | 9 |
10 #include "xfa/fwl/core/ifwl_form.h" | 10 #include "xfa/fwl/core/ifwl_form.h" |
11 #include "xfa/fwl/core/ifwl_timer.h" | 11 #include "xfa/fwl/core/ifwl_timer.h" |
12 | 12 |
13 class CFWL_WidgetImpProperties; | 13 class CFWL_WidgetProperties; |
14 class IFWL_Widget; | 14 class IFWL_Widget; |
15 class CFWL_ToolTipImpDelegate; | 15 class CFWL_ToolTipImpDelegate; |
16 | 16 |
17 #define FWL_STYLEEXT_TTP_Rectangle (0L << 3) | 17 #define FWL_STYLEEXT_TTP_Rectangle (0L << 3) |
18 #define FWL_STYLEEXT_TTP_RoundCorner (1L << 3) | 18 #define FWL_STYLEEXT_TTP_RoundCorner (1L << 3) |
19 #define FWL_STYLEEXT_TTP_Balloon (1L << 4) | 19 #define FWL_STYLEEXT_TTP_Balloon (1L << 4) |
20 #define FWL_STYLEEXT_TTP_Multiline (1L << 5) | 20 #define FWL_STYLEEXT_TTP_Multiline (1L << 5) |
21 #define FWL_STYLEEXT_TTP_NoAnchor (1L << 6) | 21 #define FWL_STYLEEXT_TTP_NoAnchor (1L << 6) |
22 | 22 |
23 class IFWL_ToolTipDP : public IFWL_DataProvider { | 23 class IFWL_ToolTipDP : public IFWL_DataProvider { |
24 public: | 24 public: |
25 // IFWL_DataProvider | 25 // IFWL_DataProvider |
26 FWL_Error GetCaption(IFWL_Widget* pWidget, | 26 FWL_Error GetCaption(IFWL_Widget* pWidget, |
27 CFX_WideString& wsCaption) override = 0; | 27 CFX_WideString& wsCaption) override = 0; |
28 | 28 |
29 virtual int32_t GetInitialDelay(IFWL_Widget* pWidget) = 0; | 29 virtual int32_t GetInitialDelay(IFWL_Widget* pWidget) = 0; |
30 virtual int32_t GetAutoPopDelay(IFWL_Widget* pWidget) = 0; | 30 virtual int32_t GetAutoPopDelay(IFWL_Widget* pWidget) = 0; |
31 virtual CFX_DIBitmap* GetToolTipIcon(IFWL_Widget* pWidget) = 0; | 31 virtual CFX_DIBitmap* GetToolTipIcon(IFWL_Widget* pWidget) = 0; |
32 virtual CFX_SizeF GetToolTipIconSize(IFWL_Widget* pWidget) = 0; | 32 virtual CFX_SizeF GetToolTipIconSize(IFWL_Widget* pWidget) = 0; |
33 }; | 33 }; |
34 | 34 |
35 class IFWL_ToolTip : public IFWL_Form { | 35 class IFWL_ToolTip : public IFWL_Form { |
36 public: | 36 public: |
37 IFWL_ToolTip(const IFWL_App* app, | 37 IFWL_ToolTip(const IFWL_App* app, |
38 const CFWL_WidgetImpProperties& properties, | 38 std::unique_ptr<CFWL_WidgetProperties> properties, |
39 IFWL_Widget* pOuter); | 39 IFWL_Widget* pOuter); |
40 ~IFWL_ToolTip() override; | 40 ~IFWL_ToolTip() override; |
41 | 41 |
42 // IFWL_Widget | 42 // IFWL_Widget |
43 FWL_Type GetClassID() const override; | 43 FWL_Type GetClassID() const override; |
44 FWL_Error GetWidgetRect(CFX_RectF& rect, bool bAutoSize = false) override; | 44 FWL_Error GetWidgetRect(CFX_RectF& rect, bool bAutoSize = false) override; |
45 FWL_Error Update() override; | 45 FWL_Error Update() override; |
46 FWL_Error DrawWidget(CFX_Graphics* pGraphics, | 46 FWL_Error DrawWidget(CFX_Graphics* pGraphics, |
47 const CFX_Matrix* pMatrix = nullptr) override; | 47 const CFX_Matrix* pMatrix = nullptr) override; |
48 void SetStates(uint32_t dwStates, bool bSet) override; | 48 void SetStates(uint32_t dwStates, bool bSet) override; |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 private: | 87 private: |
88 void OnFocusChanged(CFWL_Message* pMsg, bool bSet); | 88 void OnFocusChanged(CFWL_Message* pMsg, bool bSet); |
89 void OnLButtonDown(CFWL_MsgMouse* pMsg); | 89 void OnLButtonDown(CFWL_MsgMouse* pMsg); |
90 void OnLButtonUp(CFWL_MsgMouse* pMsg); | 90 void OnLButtonUp(CFWL_MsgMouse* pMsg); |
91 void OnMouseMove(CFWL_MsgMouse* pMsg); | 91 void OnMouseMove(CFWL_MsgMouse* pMsg); |
92 void OnMouseLeave(CFWL_MsgMouse* pMsg); | 92 void OnMouseLeave(CFWL_MsgMouse* pMsg); |
93 void OnKeyDown(CFWL_MsgKey* pMsg); | 93 void OnKeyDown(CFWL_MsgKey* pMsg); |
94 }; | 94 }; |
95 | 95 |
96 #endif // XFA_FWL_CORE_IFWL_TOOLTIP_H_ | 96 #endif // XFA_FWL_CORE_IFWL_TOOLTIP_H_ |
OLD | NEW |