OLD | NEW |
| (Empty) |
1 // Copyright 2014 PDFium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | |
6 | |
7 #ifndef XFA_INCLUDE_FWL_THEME_CHECKBOXTP_H_ | |
8 #define XFA_INCLUDE_FWL_THEME_CHECKBOXTP_H_ | |
9 | |
10 #include "xfa/include/fwl/theme/utils.h" | |
11 #include "xfa/include/fwl/theme/widgettp.h" | |
12 | |
13 class CFWL_CheckBoxTP : public CFWL_WidgetTP { | |
14 public: | |
15 CFWL_CheckBoxTP(); | |
16 virtual ~CFWL_CheckBoxTP(); | |
17 virtual FX_BOOL IsValidWidget(IFWL_Widget* pWidget); | |
18 virtual uint32_t SetThemeID(IFWL_Widget* pWidget, | |
19 uint32_t dwThemeID, | |
20 FX_BOOL bChildren = TRUE); | |
21 virtual FX_BOOL DrawText(CFWL_ThemeText* pParams); | |
22 virtual FX_BOOL DrawBackground(CFWL_ThemeBackground* pParams); | |
23 virtual FWL_ERR Initialize(); | |
24 virtual FWL_ERR Finalize(); | |
25 | |
26 protected: | |
27 void DrawBoxBk(IFWL_Widget* pWidget, | |
28 CFX_Graphics* pGraphics, | |
29 const CFX_RectF* pRect, | |
30 uint32_t dwStates, | |
31 CFX_Matrix* pMatrix = NULL); | |
32 void DrawSign(IFWL_Widget* pWidget, | |
33 CFX_Graphics* pGraphics, | |
34 const CFX_RectF* pRtBox, | |
35 uint32_t dwStates, | |
36 CFX_Matrix* pMatrix = NULL); | |
37 void DrawSignNeutral(CFX_Graphics* pGraphics, | |
38 const CFX_RectF* pRtSign, | |
39 CFX_Matrix* pMatrix = NULL); | |
40 void DrawSignCheck(CFX_Graphics* pGraphics, | |
41 const CFX_RectF* pRtSign, | |
42 FX_ARGB argbFill, | |
43 CFX_Matrix* pMatrix = NULL); | |
44 void DrawSignCircle(CFX_Graphics* pGraphics, | |
45 const CFX_RectF* pRtSign, | |
46 FX_ARGB argbFill, | |
47 CFX_Matrix* pMatrix = NULL); | |
48 void DrawSignCross(CFX_Graphics* pGraphics, | |
49 const CFX_RectF* pRtSign, | |
50 FX_ARGB argbFill, | |
51 CFX_Matrix* pMatrix = NULL); | |
52 void DrawSignDiamond(CFX_Graphics* pGraphics, | |
53 const CFX_RectF* pRtSign, | |
54 FX_ARGB argbFill, | |
55 CFX_Matrix* pMatrix = NULL); | |
56 void DrawSignSquare(CFX_Graphics* pGraphics, | |
57 const CFX_RectF* pRtSign, | |
58 FX_ARGB argbFill, | |
59 CFX_Matrix* pMatrix = NULL); | |
60 void DrawSignStar(CFX_Graphics* pGraphics, | |
61 const CFX_RectF* pRtSign, | |
62 FX_ARGB argbFill, | |
63 CFX_Matrix* pMatrix = NULL); | |
64 void DrawSignBorder(IFWL_Widget* pWidget, | |
65 CFX_Graphics* pGraphics, | |
66 const CFX_RectF* pRtBox, | |
67 FX_BOOL bDisable = FALSE, | |
68 CFX_Matrix* pMatrix = NULL); | |
69 void SetThemeData(uint32_t dwID); | |
70 void initCheckPath(FX_FLOAT fCheckLen); | |
71 struct CKBThemeData { | |
72 FX_ARGB clrBoxBk[13][2]; | |
73 FX_ARGB clrSignBorderNormal; | |
74 FX_ARGB clrSignBorderDisable; | |
75 FX_ARGB clrSignCheck; | |
76 FX_ARGB clrSignNeutral; | |
77 FX_ARGB clrSignNeutralNormal; | |
78 FX_ARGB clrSignNeutralHover; | |
79 FX_ARGB clrSignNeutralPressed; | |
80 } * m_pThemeData; | |
81 CFX_Path* m_pCheckPath; | |
82 }; | |
83 | |
84 #endif // XFA_INCLUDE_FWL_THEME_CHECKBOXTP_H_ | |
OLD | NEW |