Merge XFA to PDFium master at 4dc95e7 on 10/28/2014
[pdfium.git] / xfa / include / fwl / theme / monthcalendartp.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_MONTHCALENDARTP_H\r
8 #define _FWL_MONTHCALENDARTP_H\r
9 class CFWL_WidgetTP;\r
10 class CFWL_MonthCalendarTP;\r
11 class CFWL_MonthCalendarTP : public CFWL_WidgetTP\r
12 {\r
13 public:\r
14     CFWL_MonthCalendarTP();\r
15     virtual ~CFWL_MonthCalendarTP();\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_BOOL             DrawText(CFWL_ThemeText *pParams);\r
20     virtual FX_LPVOID   GetCapacity(CFWL_ThemePart *pThemePart, FX_DWORD dwCapacity);\r
21     virtual FWL_ERR             Initialize();\r
22     virtual FWL_ERR             Finalize();\r
23 protected:\r
24     FX_BOOL             DrawTotalBK(CFWL_ThemeBackground *pParams, CFX_Matrix *pMatrix);\r
25     FX_BOOL             DrawHeadBk(CFWL_ThemeBackground *pParams, CFX_Matrix *pMatrix);\r
26     FX_BOOL             DrawLButton(CFWL_ThemeBackground *pParams, CFX_Matrix *pMatrix);\r
27     FX_BOOL             DrawRButton(CFWL_ThemeBackground *pParams, CFX_Matrix *pMatrix);\r
28     FX_BOOL             DrawDatesInBK(CFWL_ThemeBackground *pParams, CFX_Matrix *pMatrix);\r
29     FX_BOOL             DrawDatesInCircle(CFWL_ThemeBackground *pParams, CFX_Matrix *pMatrix);\r
30     FX_BOOL             DrawTodayCircle(CFWL_ThemeBackground *pParams, CFX_Matrix *pMatrix);\r
31     FX_BOOL             DrawHSeperator(CFWL_ThemeBackground *pParams, CFX_Matrix *pMatrix);\r
32     FX_BOOL             DrawWeekNumSep(CFWL_ThemeBackground *pParams, CFX_Matrix *pMatrix);\r
33     FWLTHEME_STATE GetState(FX_DWORD dwFWLStates);\r
34     void        SetThemeData(FX_DWORD dwThemeID);\r
35     class MCThemeData : public CFX_Object\r
36     {\r
37     public:\r
38         FX_ARGB clrCaption;\r
39         FX_ARGB clrSeperator;\r
40         FX_ARGB clrDatesHoverBK;\r
41         FX_ARGB clrDatesSelectedBK;\r
42         FX_ARGB clrDatesCircle;\r
43         FX_ARGB clrToday;\r
44         FX_ARGB clrBK;\r
45     } *m_pThemeData;\r
46     CFX_WideString wsResource;\r
47 };\r
48 #endif\r