| 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_scrollbartp.h" | 7 #include "xfa/fwl/theme/cfwl_scrollbartp.h" |
| 8 | 8 |
| 9 #include "xfa/fwl/basewidget/ifwl_scrollbar.h" | 9 #include "xfa/fwl/basewidget/ifwl_scrollbar.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 namespace { | 16 namespace { |
| 17 | 17 |
| 18 const float kPawLength = 12.5f; | 18 const float kPawLength = 12.5f; |
| 19 | 19 |
| 20 } // namespace | 20 } // namespace |
| 21 | 21 |
| 22 CFWL_ScrollBarTP::CFWL_ScrollBarTP() : m_pThemeData(new SBThemeData) { | 22 CFWL_ScrollBarTP::CFWL_ScrollBarTP() : m_pThemeData(new SBThemeData) { |
| 23 SetThemeData(0); | 23 SetThemeData(0); |
| 24 } | 24 } |
| 25 | 25 |
| 26 CFWL_ScrollBarTP::~CFWL_ScrollBarTP() { | 26 CFWL_ScrollBarTP::~CFWL_ScrollBarTP() {} |
| 27 delete m_pThemeData; | |
| 28 } | |
| 29 | 27 |
| 30 bool CFWL_ScrollBarTP::IsValidWidget(IFWL_Widget* pWidget) { | 28 bool CFWL_ScrollBarTP::IsValidWidget(IFWL_Widget* pWidget) { |
| 31 return pWidget && pWidget->GetClassID() == FWL_Type::ScrollBar; | 29 return pWidget && pWidget->GetClassID() == FWL_Type::ScrollBar; |
| 32 } | 30 } |
| 33 void* CFWL_ScrollBarTP::GetCapacity(CFWL_ThemePart* pThemePart, | 31 void* CFWL_ScrollBarTP::GetCapacity(CFWL_ThemePart* pThemePart, |
| 34 CFWL_WidgetCapacity dwCapacity) { | 32 CFWL_WidgetCapacity dwCapacity) { |
| 35 if (dwCapacity == CFWL_WidgetCapacity::Size) { | 33 if (dwCapacity == CFWL_WidgetCapacity::Size) { |
| 36 m_fValue = 5; | 34 m_fValue = 5; |
| 37 return &m_fValue; | 35 return &m_fValue; |
| 38 } | 36 } |
| 39 return CFWL_WidgetTP::GetCapacity(pThemePart, dwCapacity); | 37 return CFWL_WidgetTP::GetCapacity(pThemePart, dwCapacity); |
| 40 } | 38 } |
| 41 uint32_t CFWL_ScrollBarTP::SetThemeID(IFWL_Widget* pWidget, | 39 uint32_t CFWL_ScrollBarTP::SetThemeID(IFWL_Widget* pWidget, |
| 42 uint32_t dwThemeID, | 40 uint32_t dwThemeID, |
| 43 FX_BOOL bChildren) { | 41 FX_BOOL bChildren) { |
| 44 if (m_pThemeData) { | 42 if (m_pThemeData) |
| 45 SetThemeData(FWL_GetThemeColor(dwThemeID)); | 43 SetThemeData(FWL_GetThemeColor(dwThemeID)); |
| 46 } | |
| 47 return CFWL_WidgetTP::SetThemeID(pWidget, dwThemeID, bChildren); | 44 return CFWL_WidgetTP::SetThemeID(pWidget, dwThemeID, bChildren); |
| 48 } | 45 } |
| 49 FX_BOOL CFWL_ScrollBarTP::DrawBackground(CFWL_ThemeBackground* pParams) { | 46 FX_BOOL CFWL_ScrollBarTP::DrawBackground(CFWL_ThemeBackground* pParams) { |
| 50 if (!pParams) | 47 if (!pParams) |
| 51 return FALSE; | 48 return FALSE; |
| 52 IFWL_Widget* pWidget = pParams->m_pWidget; | 49 IFWL_Widget* pWidget = pParams->m_pWidget; |
| 53 FWLTHEME_STATE eState = FWLTHEME_STATE_Normal; | 50 FWLTHEME_STATE eState = FWLTHEME_STATE_Normal; |
| 54 if (pParams->m_dwStates & CFWL_PartState_Hovered) | 51 if (pParams->m_dwStates & CFWL_PartState_Hovered) |
| 55 eState = FWLTHEME_STATE_Hover; | 52 eState = FWLTHEME_STATE_Hover; |
| 56 else if (pParams->m_dwStates & CFWL_PartState_Pressed) | 53 else if (pParams->m_dwStates & CFWL_PartState_Pressed) |
| (...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 296 m_pThemeData->clrBtnBorder[1] = ArgbEncode(0xff, 218, 230, 254); | 293 m_pThemeData->clrBtnBorder[1] = ArgbEncode(0xff, 218, 230, 254); |
| 297 m_pThemeData->clrPawColorLight[2] = ArgbEncode(0xff, 207, 221, 253); | 294 m_pThemeData->clrPawColorLight[2] = ArgbEncode(0xff, 207, 221, 253); |
| 298 m_pThemeData->clrPawColorDark[2] = ArgbEncode(0xff, 131, 158, 216); | 295 m_pThemeData->clrPawColorDark[2] = ArgbEncode(0xff, 131, 158, 216); |
| 299 m_pThemeData->clrBtnBK[2][0] = ArgbEncode(0xff, 167, 190, 245); | 296 m_pThemeData->clrBtnBK[2][0] = ArgbEncode(0xff, 167, 190, 245); |
| 300 m_pThemeData->clrBtnBK[2][1] = ArgbEncode(0xff, 146, 179, 249); | 297 m_pThemeData->clrBtnBK[2][1] = ArgbEncode(0xff, 146, 179, 249); |
| 301 m_pThemeData->clrBtnBorder[2] = ArgbEncode(0xff, 124, 159, 211); | 298 m_pThemeData->clrBtnBorder[2] = ArgbEncode(0xff, 124, 159, 211); |
| 302 m_pThemeData->clrTrackBKStart = ArgbEncode(0xff, 243, 241, 236); | 299 m_pThemeData->clrTrackBKStart = ArgbEncode(0xff, 243, 241, 236); |
| 303 m_pThemeData->clrTrackBKEnd = ArgbEncode(0xff, 254, 254, 251); | 300 m_pThemeData->clrTrackBKEnd = ArgbEncode(0xff, 254, 254, 251); |
| 304 } | 301 } |
| 305 } | 302 } |
| OLD | NEW |