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 #ifndef XFA_FWL_BASEWIDGET_IFWL_MONTHCALENDAR_H_ | 7 #ifndef XFA_FWL_BASEWIDGET_IFWL_MONTHCALENDAR_H_ |
8 #define XFA_FWL_BASEWIDGET_IFWL_MONTHCALENDAR_H_ | 8 #define XFA_FWL_BASEWIDGET_IFWL_MONTHCALENDAR_H_ |
9 | 9 |
10 #include "xfa/fwl/core/ifwl_widget.h" | 10 #include "xfa/fwl/core/ifwl_widget.h" |
11 #include "xfa/fwl/core/cfwl_event.h" | 11 #include "xfa/fwl/core/cfwl_event.h" |
12 #include "xfa/fwl/core/ifwl_dataprovider.h" | 12 #include "xfa/fwl/core/ifwl_dataprovider.h" |
13 #include "xfa/fwl/core/cfwl_widgetimpproperties.h" | 13 #include "xfa/fwl/core/cfwl_widgetimpproperties.h" |
14 | 14 |
15 #define FWL_CLASS_MonthCalendar L"FWL_MONTHCALENDAR" | 15 #define FWL_CLASS_MonthCalendar L"FWL_MONTHCALENDAR" |
16 #define FWL_STYLEEXT_MCD_MultiSelect (1L << 0) | 16 #define FWL_STYLEEXT_MCD_MultiSelect (1L << 0) |
17 #define FWL_STYLEEXT_MCD_NoToday (1L << 1) | 17 #define FWL_STYLEEXT_MCD_NoToday (1L << 1) |
18 #define FWL_STYLEEXT_MCD_NoTodayCircle (1L << 2) | 18 #define FWL_STYLEEXT_MCD_NoTodayCircle (1L << 2) |
19 #define FWL_STYLEEXT_MCD_WeekNumbers (1L << 3) | 19 #define FWL_STYLEEXT_MCD_WeekNumbers (1L << 3) |
20 #define FWL_ITEMSTATE_MCD_Nomal (0L << 0) | 20 #define FWL_ITEMSTATE_MCD_Nomal (0L << 0) |
21 #define FWL_ITEMSTATE_MCD_Flag (1L << 0) | 21 #define FWL_ITEMSTATE_MCD_Flag (1L << 0) |
22 #define FWL_ITEMSTATE_MCD_Selected (1L << 1) | 22 #define FWL_ITEMSTATE_MCD_Selected (1L << 1) |
23 #define FWL_ITEMSTATE_MCD_Focused (1L << 2) | 23 #define FWL_ITEMSTATE_MCD_Focused (1L << 2) |
24 | 24 |
25 BEGIN_FWL_EVENT_DEF(CFWL_Event_McdDateSelected, CFWL_EventType::DataSelected) | 25 FWL_EVENT_DEF(CFWL_Event_McdDateSelected, |
26 int32_t m_iStartDay; | 26 CFWL_EventType::DataSelected, |
27 int32_t m_iEndDay; | 27 int32_t m_iStartDay; |
28 END_FWL_EVENT_DEF | 28 int32_t m_iEndDay;) |
29 | 29 |
30 BEGIN_FWL_EVENT_DEF(CFWL_EventMcdDateChanged, CFWL_EventType::DateChanged) | 30 FWL_EVENT_DEF(CFWL_EventMcdDateChanged, |
31 int32_t m_iOldYear; | 31 CFWL_EventType::DateChanged, |
32 int32_t m_iOldMonth; | 32 int32_t m_iOldYear; |
33 int32_t m_iStartDay; | 33 int32_t m_iOldMonth; |
34 int32_t m_iEndDay; | 34 int32_t m_iStartDay; |
35 END_FWL_EVENT_DEF | 35 int32_t m_iEndDay;) |
36 | 36 |
37 class IFWL_MonthCalendarDP : public IFWL_DataProvider { | 37 class IFWL_MonthCalendarDP : public IFWL_DataProvider { |
38 public: | 38 public: |
39 virtual int32_t GetCurDay(IFWL_Widget* pWidget) = 0; | 39 virtual int32_t GetCurDay(IFWL_Widget* pWidget) = 0; |
40 virtual int32_t GetCurMonth(IFWL_Widget* pWidget) = 0; | 40 virtual int32_t GetCurMonth(IFWL_Widget* pWidget) = 0; |
41 virtual int32_t GetCurYear(IFWL_Widget* pWidget) = 0; | 41 virtual int32_t GetCurYear(IFWL_Widget* pWidget) = 0; |
42 }; | 42 }; |
43 | 43 |
44 class IFWL_MonthCalendar : public IFWL_Widget { | 44 class IFWL_MonthCalendar : public IFWL_Widget { |
45 public: | 45 public: |
46 static IFWL_MonthCalendar* Create(const CFWL_WidgetImpProperties& properties, | 46 static IFWL_MonthCalendar* Create(const CFWL_WidgetImpProperties& properties, |
47 IFWL_Widget* pOuter); | 47 IFWL_Widget* pOuter); |
48 | 48 |
49 int32_t CountSelect(); | 49 int32_t CountSelect(); |
50 FX_BOOL GetSelect(int32_t& iYear, | 50 FX_BOOL GetSelect(int32_t& iYear, |
51 int32_t& iMonth, | 51 int32_t& iMonth, |
52 int32_t& iDay, | 52 int32_t& iDay, |
53 int32_t nIndex = 0); | 53 int32_t nIndex = 0); |
54 FX_BOOL SetSelect(int32_t iYear, int32_t iMonth, int32_t iDay); | 54 FX_BOOL SetSelect(int32_t iYear, int32_t iMonth, int32_t iDay); |
55 | 55 |
56 protected: | 56 protected: |
57 IFWL_MonthCalendar(); | 57 IFWL_MonthCalendar(); |
58 }; | 58 }; |
59 | 59 |
60 #endif // XFA_FWL_BASEWIDGET_IFWL_MONTHCALENDAR_H_ | 60 #endif // XFA_FWL_BASEWIDGET_IFWL_MONTHCALENDAR_H_ |
OLD | NEW |