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 #include "xfa/fwl/theme/cfwl_pushbuttontp.h" | 7 #include "xfa/fwl/theme/cfwl_pushbuttontp.h" |
8 | 8 |
9 #include "xfa/fwl/basewidget/ifwl_pushbutton.h" | 9 #include "xfa/fwl/basewidget/ifwl_pushbutton.h" |
10 #include "xfa/fwl/core/cfwl_themebackground.h" | 10 #include "xfa/fwl/core/cfwl_themebackground.h" |
11 #include "xfa/fwl/core/ifwl_themeprovider.h" | 11 #include "xfa/fwl/core/ifwl_themeprovider.h" |
12 #include "xfa/fwl/core/ifwl_widget.h" | 12 #include "xfa/fwl/core/ifwl_widget.h" |
13 #include "xfa/fxgraphics/cfx_color.h" | 13 #include "xfa/fxgraphics/cfx_color.h" |
14 #include "xfa/fxgraphics/cfx_path.h" | 14 #include "xfa/fxgraphics/cfx_path.h" |
15 | 15 |
16 #define PUSHBUTTON_SIZE_Corner 2 | 16 #define PUSHBUTTON_SIZE_Corner 2 |
17 | 17 |
18 CFWL_PushButtonTP::CFWL_PushButtonTP() : m_pThemeData(new PBThemeData) { | 18 CFWL_PushButtonTP::CFWL_PushButtonTP() : m_pThemeData(new PBThemeData) { |
19 SetThemeData(0); | 19 SetThemeData(0); |
20 } | 20 } |
21 | 21 |
22 CFWL_PushButtonTP::~CFWL_PushButtonTP() {} | 22 CFWL_PushButtonTP::~CFWL_PushButtonTP() {} |
23 | 23 |
24 bool CFWL_PushButtonTP::IsValidWidget(IFWL_Widget* pWidget) { | 24 bool CFWL_PushButtonTP::IsValidWidget(IFWL_Widget* pWidget) { |
25 return pWidget && pWidget->GetClassID() == FWL_Type::PushButton; | 25 return pWidget && pWidget->GetClassID() == FWL_Type::PushButton; |
26 } | 26 } |
27 uint32_t CFWL_PushButtonTP::SetThemeID(IFWL_Widget* pWidget, | 27 uint32_t CFWL_PushButtonTP::SetThemeID(IFWL_Widget* pWidget, |
28 uint32_t dwThemeID, | 28 uint32_t dwThemeID) { |
29 FX_BOOL bChildren) { | |
30 SetThemeData(FWL_GetThemeColor(dwThemeID)); | 29 SetThemeData(FWL_GetThemeColor(dwThemeID)); |
31 return CFWL_WidgetTP::SetThemeID(pWidget, dwThemeID, bChildren); | 30 return CFWL_WidgetTP::SetThemeID(pWidget, dwThemeID); |
32 } | 31 } |
33 FX_BOOL CFWL_PushButtonTP::DrawBackground(CFWL_ThemeBackground* pParams) { | 32 FX_BOOL CFWL_PushButtonTP::DrawBackground(CFWL_ThemeBackground* pParams) { |
34 switch (pParams->m_iPart) { | 33 switch (pParams->m_iPart) { |
35 case CFWL_Part::Border: { | 34 case CFWL_Part::Border: { |
36 DrawBorder(pParams->m_pGraphics, &pParams->m_rtPart, &pParams->m_matrix); | 35 DrawBorder(pParams->m_pGraphics, &pParams->m_rtPart, &pParams->m_matrix); |
37 break; | 36 break; |
38 } | 37 } |
39 case CFWL_Part::Edge: { | 38 case CFWL_Part::Edge: { |
40 DrawEdge(pParams->m_pGraphics, pParams->m_pWidget->GetStyles(), | 39 DrawEdge(pParams->m_pGraphics, pParams->m_pWidget->GetStyles(), |
41 &pParams->m_rtPart, &pParams->m_matrix); | 40 &pParams->m_rtPart, &pParams->m_matrix); |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
160 if (dwStates & CFWL_PartState_Default) { | 159 if (dwStates & CFWL_PartState_Default) { |
161 color += 3; | 160 color += 3; |
162 } else { | 161 } else { |
163 if (dwStates & CFWL_PartState_Hovered) | 162 if (dwStates & CFWL_PartState_Hovered) |
164 color += 2; | 163 color += 2; |
165 if (dwStates & CFWL_PartState_Pressed) | 164 if (dwStates & CFWL_PartState_Pressed) |
166 color += 1; | 165 color += 1; |
167 } | 166 } |
168 return color; | 167 return color; |
169 } | 168 } |
OLD | NEW |