Merge XFA to PDFium master at 4dc95e7 on 10/28/2014
[pdfium.git] / xfa / include / fwl / theme / scrollbartp.h
1 // Copyright 2014 PDFium Authors. All rights reserved.\r
2 // Use of this source code is governed by a BSD-style license that can be\r
3 // found in the LICENSE file.\r
4 \r
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com\r
6 \r
7 #ifndef _FWL_SCROLLBARTP_H\r
8 #define _FWL_SCROLLBARTP_H\r
9 class CFWL_WidgetTP;\r
10 class CFWL_ScrollBarTP;\r
11 class CFWL_ScrollBarTP : public CFWL_WidgetTP\r
12 {\r
13 public:\r
14     CFWL_ScrollBarTP();\r
15     virtual ~CFWL_ScrollBarTP();\r
16     virtual FX_BOOL             IsValidWidget(IFWL_Widget *pWidget);\r
17     virtual FX_DWORD    SetThemeID(IFWL_Widget *pWidget, FX_DWORD dwThemeID, FX_BOOL bChildren = TRUE);\r
18     virtual FX_BOOL             DrawBackground(CFWL_ThemeBackground *pParams);\r
19     virtual FX_LPVOID   GetCapacity(CFWL_ThemePart *pThemePart, FX_DWORD dwCapacity);\r
20 protected:\r
21     void        DrawThumbBtn(CFX_Graphics *pGraphics, const CFX_RectF *pRect, FX_BOOL bVert, FWLTHEME_STATE eState, FX_BOOL bPawButton = TRUE, CFX_Matrix *pMatrix = NULL);\r
22     void        DrawTrack(CFX_Graphics *pGraphics, const CFX_RectF *pRect, FX_BOOL bVert, FWLTHEME_STATE eState, FX_BOOL bLowerTrack, CFX_Matrix *pMatrix = NULL);\r
23     void        DrawMaxMinBtn(CFX_Graphics *pGraphics, const CFX_RectF *pRect, FWLTHEME_DIRECTION eDict, FWLTHEME_STATE eState, CFX_Matrix *pMatrix = NULL);\r
24     void    DrawPaw(CFX_Graphics *pGraphics, const CFX_RectF *pRect, FX_BOOL bVert, FWLTHEME_STATE eState, CFX_Matrix *pMatrix = NULL);\r
25     void        SetThemeData(FX_DWORD dwID);\r
26     struct SBThemeData : public CFX_Object {\r
27     public:\r
28         FX_ARGB clrPawColorLight[4];\r
29         FX_ARGB clrPawColorDark[4];\r
30         FX_ARGB clrBtnBK[4][2];\r
31         FX_ARGB clrBtnBorder[4];\r
32         FX_ARGB clrTrackBKStart;\r
33         FX_ARGB clrTrackBKEnd;\r
34     } *m_pThemeData;\r
35 };\r
36 #endif\r