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_CORE_IFWL_DATETIMEPICKER_H_ | 7 #ifndef XFA_FWL_CORE_IFWL_DATETIMEPICKER_H_ |
8 #define XFA_FWL_CORE_IFWL_DATETIMEPICKER_H_ | 8 #define XFA_FWL_CORE_IFWL_DATETIMEPICKER_H_ |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 17 matching lines...) Expand all Loading... |
28 #define FWL_STYLEEXT_DTP_EditVFar (2L << 6) | 28 #define FWL_STYLEEXT_DTP_EditVFar (2L << 6) |
29 #define FWL_STYLEEXT_DTP_EditJustified (1L << 8) | 29 #define FWL_STYLEEXT_DTP_EditJustified (1L << 8) |
30 #define FWL_STYLEEXT_DTP_EditDistributed (2L << 8) | 30 #define FWL_STYLEEXT_DTP_EditDistributed (2L << 8) |
31 #define FWL_STYLEEXT_DTP_EditHAlignMask (3L << 4) | 31 #define FWL_STYLEEXT_DTP_EditHAlignMask (3L << 4) |
32 #define FWL_STYLEEXT_DTP_EditVAlignMask (3L << 6) | 32 #define FWL_STYLEEXT_DTP_EditVAlignMask (3L << 6) |
33 #define FWL_STYLEEXT_DTP_EditHAlignModeMask (3L << 8) | 33 #define FWL_STYLEEXT_DTP_EditHAlignModeMask (3L << 8) |
34 | 34 |
35 class IFWL_DateTimeEdit; | 35 class IFWL_DateTimeEdit; |
36 class IFWL_FormProxy; | 36 class IFWL_FormProxy; |
37 | 37 |
38 class IFWL_DateTimePickerDP : public IFWL_Widget::DataProvider { | |
39 public: | |
40 virtual void GetToday(IFWL_Widget* pWidget, | |
41 int32_t& iYear, | |
42 int32_t& iMonth, | |
43 int32_t& iDay) = 0; | |
44 }; | |
45 | |
46 class IFWL_DateTimePicker : public IFWL_Widget, | 38 class IFWL_DateTimePicker : public IFWL_Widget, |
47 public IFWL_MonthCalendar::DataProvider { | 39 public IFWL_MonthCalendar::DataProvider { |
48 public: | 40 public: |
| 41 class DataProvider : public IFWL_Widget::DataProvider { |
| 42 public: |
| 43 virtual void GetToday(IFWL_Widget* pWidget, |
| 44 int32_t& iYear, |
| 45 int32_t& iMonth, |
| 46 int32_t& iDay) = 0; |
| 47 }; |
| 48 |
49 explicit IFWL_DateTimePicker( | 49 explicit IFWL_DateTimePicker( |
50 const IFWL_App* app, | 50 const IFWL_App* app, |
51 std::unique_ptr<CFWL_WidgetProperties> properties); | 51 std::unique_ptr<CFWL_WidgetProperties> properties); |
52 ~IFWL_DateTimePicker() override; | 52 ~IFWL_DateTimePicker() override; |
53 | 53 |
54 // IFWL_Widget | 54 // IFWL_Widget |
55 FWL_Type GetClassID() const override; | 55 FWL_Type GetClassID() const override; |
56 void GetWidgetRect(CFX_RectF& rect, bool bAutoSize = false) override; | 56 void GetWidgetRect(CFX_RectF& rect, bool bAutoSize = false) override; |
57 void Update() override; | 57 void Update() override; |
58 FWL_WidgetHit HitTest(FX_FLOAT fx, FX_FLOAT fy) override; | 58 FWL_WidgetHit HitTest(FX_FLOAT fx, FX_FLOAT fy) override; |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
131 int32_t m_iCurMonth; | 131 int32_t m_iCurMonth; |
132 int32_t m_iCurDay; | 132 int32_t m_iCurDay; |
133 bool m_bLBtnDown; | 133 bool m_bLBtnDown; |
134 std::unique_ptr<IFWL_DateTimeEdit> m_pEdit; | 134 std::unique_ptr<IFWL_DateTimeEdit> m_pEdit; |
135 std::unique_ptr<IFWL_MonthCalendar> m_pMonthCal; | 135 std::unique_ptr<IFWL_MonthCalendar> m_pMonthCal; |
136 std::unique_ptr<IFWL_FormProxy> m_pForm; | 136 std::unique_ptr<IFWL_FormProxy> m_pForm; |
137 FX_FLOAT m_fBtn; | 137 FX_FLOAT m_fBtn; |
138 }; | 138 }; |
139 | 139 |
140 #endif // XFA_FWL_CORE_IFWL_DATETIMEPICKER_H_ | 140 #endif // XFA_FWL_CORE_IFWL_DATETIMEPICKER_H_ |
OLD | NEW |