Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(32)

Side by Side Diff: xfa/fwl/core/ifwl_datetimepicker.cpp

Issue 2524993002: Remove plumbing for today value (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/core/ifwl_datetimepicker.h" 7 #include "xfa/fwl/core/ifwl_datetimepicker.h"
8 8
9 #include <memory> 9 #include <memory>
10 #include <utility> 10 #include <utility>
(...skipping 18 matching lines...) Expand all
29 } // namespace 29 } // namespace
30 30
31 IFWL_DateTimePicker::IFWL_DateTimePicker( 31 IFWL_DateTimePicker::IFWL_DateTimePicker(
32 const CFWL_App* app, 32 const CFWL_App* app,
33 std::unique_ptr<CFWL_WidgetProperties> properties) 33 std::unique_ptr<CFWL_WidgetProperties> properties)
34 : IFWL_Widget(app, std::move(properties), nullptr), 34 : IFWL_Widget(app, std::move(properties), nullptr),
35 m_iBtnState(1), 35 m_iBtnState(1),
36 m_iYear(-1), 36 m_iYear(-1),
37 m_iMonth(-1), 37 m_iMonth(-1),
38 m_iDay(-1), 38 m_iDay(-1),
39 m_iCurYear(2010),
dsinclair 2016/11/23 15:04:53 They have these values to start but as soon as we
40 m_iCurMonth(3),
41 m_iCurDay(29),
42 m_bLBtnDown(false) { 39 m_bLBtnDown(false) {
43 m_rtBtn.Set(0, 0, 0, 0); 40 m_rtBtn.Set(0, 0, 0, 0);
44 41
45 m_pProperties->m_dwStyleExes = FWL_STYLEEXT_DTP_ShortDateFormat; 42 m_pProperties->m_dwStyleExes = FWL_STYLEEXT_DTP_ShortDateFormat;
46 43
47 auto monthProp = pdfium::MakeUnique<CFWL_WidgetProperties>(this); 44 auto monthProp = pdfium::MakeUnique<CFWL_WidgetProperties>(this);
48 monthProp->m_dwStyles = FWL_WGTSTYLE_Popup | FWL_WGTSTYLE_Border; 45 monthProp->m_dwStyles = FWL_WGTSTYLE_Popup | FWL_WGTSTYLE_Border;
49 monthProp->m_dwStates = FWL_WGTSTATE_Invisible; 46 monthProp->m_dwStates = FWL_WGTSTATE_Invisible;
50 monthProp->m_pParent = this; 47 monthProp->m_pParent = this;
51 monthProp->m_pThemeProvider = m_pProperties->m_pThemeProvider; 48 monthProp->m_pThemeProvider = m_pProperties->m_pThemeProvider;
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 m_rtClient.height - 1); 107 m_rtClient.height - 1);
111 108
112 CFX_RectF rtEdit; 109 CFX_RectF rtEdit;
113 rtEdit.Set(m_rtClient.left, m_rtClient.top, m_rtClient.width - fBtn, 110 rtEdit.Set(m_rtClient.left, m_rtClient.top, m_rtClient.width - fBtn,
114 m_rtClient.height); 111 m_rtClient.height);
115 m_pEdit->SetWidgetRect(rtEdit); 112 m_pEdit->SetWidgetRect(rtEdit);
116 ResetEditAlignment(); 113 ResetEditAlignment();
117 m_pEdit->Update(); 114 m_pEdit->Update();
118 if (!(m_pMonthCal->GetThemeProvider())) 115 if (!(m_pMonthCal->GetThemeProvider()))
119 m_pMonthCal->SetThemeProvider(m_pProperties->m_pThemeProvider); 116 m_pMonthCal->SetThemeProvider(m_pProperties->m_pThemeProvider);
120 if (m_pProperties->m_pDataProvider) {
121 IFWL_DateTimePicker::DataProvider* pData =
122 static_cast<IFWL_DateTimePicker::DataProvider*>(
123 m_pProperties->m_pDataProvider);
124 pData->GetToday(this, m_iCurYear, m_iCurMonth, m_iCurDay);
125 }
126 117
127 CFX_RectF rtMonthCal; 118 CFX_RectF rtMonthCal;
128 m_pMonthCal->GetWidgetRect(rtMonthCal, true); 119 m_pMonthCal->GetWidgetRect(rtMonthCal, true);
129 CFX_RectF rtPopUp; 120 CFX_RectF rtPopUp;
130 rtPopUp.Set(rtMonthCal.left, rtMonthCal.top + kDateTimePickerHeight, 121 rtPopUp.Set(rtMonthCal.left, rtMonthCal.top + kDateTimePickerHeight,
131 rtMonthCal.width, rtMonthCal.height); 122 rtMonthCal.width, rtMonthCal.height);
132 m_pMonthCal->SetWidgetRect(rtPopUp); 123 m_pMonthCal->SetWidgetRect(rtPopUp);
133 m_pMonthCal->Update(); 124 m_pMonthCal->Update();
134 return; 125 return;
135 } 126 }
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after
460 m_pProperties->m_pThemeProvider = GetAvailableTheme(); 451 m_pProperties->m_pThemeProvider = GetAvailableTheme();
461 452
462 m_pEdit->SetThemeProvider(m_pProperties->m_pThemeProvider); 453 m_pEdit->SetThemeProvider(m_pProperties->m_pThemeProvider);
463 GetClientRect(m_rtClient); 454 GetClientRect(m_rtClient);
464 m_pEdit->SetWidgetRect(m_rtClient); 455 m_pEdit->SetWidgetRect(m_rtClient);
465 ResetEditAlignment(); 456 ResetEditAlignment();
466 m_pEdit->Update(); 457 m_pEdit->Update();
467 458
468 if (!m_pMonthCal->GetThemeProvider()) 459 if (!m_pMonthCal->GetThemeProvider())
469 m_pMonthCal->SetThemeProvider(m_pProperties->m_pThemeProvider); 460 m_pMonthCal->SetThemeProvider(m_pProperties->m_pThemeProvider);
470 if (m_pProperties->m_pDataProvider) {
471 IFWL_DateTimePicker::DataProvider* pData =
472 static_cast<IFWL_DateTimePicker::DataProvider*>(
473 m_pProperties->m_pDataProvider);
474 pData->GetToday(this, m_iCurYear, m_iCurMonth, m_iCurDay);
475 }
476 461
477 FX_FLOAT* pWidth = static_cast<FX_FLOAT*>( 462 FX_FLOAT* pWidth = static_cast<FX_FLOAT*>(
478 GetThemeCapacity(CFWL_WidgetCapacity::ScrollBarWidth)); 463 GetThemeCapacity(CFWL_WidgetCapacity::ScrollBarWidth));
479 if (!pWidth) 464 if (!pWidth)
480 return; 465 return;
481 466
482 m_fBtn = *pWidth; 467 m_fBtn = *pWidth;
483 CFX_RectF rtMonthCal; 468 CFX_RectF rtMonthCal;
484 m_pMonthCal->GetWidgetRect(rtMonthCal, true); 469 m_pMonthCal->GetWidgetRect(rtMonthCal, true);
485 470
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after
667 if (DisForm_IsMonthCalendarVisible()) 652 if (DisForm_IsMonthCalendarVisible())
668 ShowMonthCalendar(false); 653 ShowMonthCalendar(false);
669 if (m_pEdit->GetStates() & FWL_WGTSTATE_Focused) { 654 if (m_pEdit->GetStates() & FWL_WGTSTATE_Focused) {
670 pMsg->m_pSrcTarget = m_pEdit.get(); 655 pMsg->m_pSrcTarget = m_pEdit.get();
671 m_pEdit->GetDelegate()->OnProcessMessage(pMsg); 656 m_pEdit->GetDelegate()->OnProcessMessage(pMsg);
672 } 657 }
673 } 658 }
674 rtInvalidate.Inflate(2, 2); 659 rtInvalidate.Inflate(2, 2);
675 Repaint(&rtInvalidate); 660 Repaint(&rtInvalidate);
676 } 661 }
677
678 int32_t IFWL_DateTimePicker::GetCurDay(IFWL_Widget* pWidget) {
679 return m_iCurDay;
680 }
681
682 int32_t IFWL_DateTimePicker::GetCurMonth(IFWL_Widget* pWidget) {
683 return m_iCurMonth;
684 }
685
686 int32_t IFWL_DateTimePicker::GetCurYear(IFWL_Widget* pWidget) {
687 return m_iCurYear;
688 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698