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

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

Issue 1946213003: Remove CLASSHASH defines in favour of an enum class. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Created 4 years, 7 months 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
« no previous file with comments | « xfa/fwl/core/fwl_widgetimp.h ('k') | xfa/fwl/core/fwl_widgetmgrimp.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/fwl_widgetimp.h" 7 #include "xfa/fwl/core/fwl_widgetimp.h"
8 8
9 #include <algorithm> 9 #include <algorithm>
10 10
11 #include "xfa/fde/tto/fde_textout.h" 11 #include "xfa/fde/tto/fde_textout.h"
12 #include "xfa/fwl/basewidget/ifwl_combobox.h" 12 #include "xfa/fwl/basewidget/ifwl_combobox.h"
13 #include "xfa/fwl/basewidget/ifwl_datetimepicker.h" 13 #include "xfa/fwl/basewidget/ifwl_datetimepicker.h"
14 #include "xfa/fwl/core/cfwl_message.h" 14 #include "xfa/fwl/core/cfwl_message.h"
15 #include "xfa/fwl/core/cfwl_themebackground.h" 15 #include "xfa/fwl/core/cfwl_themebackground.h"
16 #include "xfa/fwl/core/cfwl_themepart.h" 16 #include "xfa/fwl/core/cfwl_themepart.h"
17 #include "xfa/fwl/core/cfwl_themetext.h" 17 #include "xfa/fwl/core/cfwl_themetext.h"
18 #include "xfa/fwl/core/fwl_appimp.h" 18 #include "xfa/fwl/core/fwl_appimp.h"
19 #include "xfa/fwl/core/fwl_noteimp.h" 19 #include "xfa/fwl/core/fwl_noteimp.h"
20 #include "xfa/fwl/core/fwl_widgetmgrimp.h" 20 #include "xfa/fwl/core/fwl_widgetmgrimp.h"
21 #include "xfa/fwl/core/ifwl_app.h" 21 #include "xfa/fwl/core/ifwl_app.h"
22 #include "xfa/fwl/core/ifwl_form.h" 22 #include "xfa/fwl/core/ifwl_form.h"
23 #include "xfa/fwl/core/ifwl_themeprovider.h" 23 #include "xfa/fwl/core/ifwl_themeprovider.h"
24 #include "xfa/fxfa/include/xfa_ffapp.h" 24 #include "xfa/fxfa/include/xfa_ffapp.h"
25 25
26 #define FWL_CLASSHASH_Menu 3957949655
27 #define FWL_STYLEEXT_MNU_Vert (1L << 0) 26 #define FWL_STYLEEXT_MNU_Vert (1L << 0)
28 27
29 IFWL_Widget::~IFWL_Widget() {} 28 IFWL_Widget::~IFWL_Widget() {}
30 29
31 FWL_Error IFWL_Widget::GetClassName(CFX_WideString& wsClass) const { 30 FWL_Error IFWL_Widget::GetClassName(CFX_WideString& wsClass) const {
32 return m_pImpl->GetClassName(wsClass); 31 return m_pImpl->GetClassName(wsClass);
33 } 32 }
34 33
35 uint32_t IFWL_Widget::GetClassID() const { 34 FWL_Type IFWL_Widget::GetClassID() const {
36 return m_pImpl->GetClassID(); 35 return m_pImpl->GetClassID();
37 } 36 }
38 37
39 FX_BOOL IFWL_Widget::IsInstance(const CFX_WideStringC& wsClass) const { 38 FX_BOOL IFWL_Widget::IsInstance(const CFX_WideStringC& wsClass) const {
40 return m_pImpl->IsInstance(wsClass); 39 return m_pImpl->IsInstance(wsClass);
41 } 40 }
42 41
43 FWL_Error IFWL_Widget::Initialize() { 42 FWL_Error IFWL_Widget::Initialize() {
44 return m_pImpl->Initialize(); 43 return m_pImpl->Initialize();
45 } 44 }
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 NotifyDriver(); 183 NotifyDriver();
185 m_pWidgetMgr->RemoveWidget(m_pInterface); 184 m_pWidgetMgr->RemoveWidget(m_pInterface);
186 return FWL_Error::Succeeded; 185 return FWL_Error::Succeeded;
187 } 186 }
188 187
189 FWL_Error CFWL_WidgetImp::GetClassName(CFX_WideString& wsClass) const { 188 FWL_Error CFWL_WidgetImp::GetClassName(CFX_WideString& wsClass) const {
190 wsClass.clear(); 189 wsClass.clear();
191 return FWL_Error::Succeeded; 190 return FWL_Error::Succeeded;
192 } 191 }
193 192
194 uint32_t CFWL_WidgetImp::GetClassID() const {
195 return 0;
196 }
197
198 FX_BOOL CFWL_WidgetImp::IsInstance(const CFX_WideStringC& wsClass) const { 193 FX_BOOL CFWL_WidgetImp::IsInstance(const CFX_WideStringC& wsClass) const {
199 return FALSE; 194 return FALSE;
200 } 195 }
201 196
202 FWL_Error CFWL_WidgetImp::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) { 197 FWL_Error CFWL_WidgetImp::GetWidgetRect(CFX_RectF& rect, FX_BOOL bAutoSize) {
203 if (bAutoSize) { 198 if (bAutoSize) {
204 if (HasEdge()) { 199 if (HasEdge()) {
205 FX_FLOAT fEdge = GetEdgeWidth(); 200 FX_FLOAT fEdge = GetEdgeWidth();
206 rect.Inflate(fEdge, fEdge); 201 rect.Inflate(fEdge, fEdge);
207 } 202 }
(...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after
702 } 697 }
703 } 698 }
704 void CFWL_WidgetImp::SetGrab(FX_BOOL bSet) { 699 void CFWL_WidgetImp::SetGrab(FX_BOOL bSet) {
705 IFWL_App* pApp = GetOwnerApp(); 700 IFWL_App* pApp = GetOwnerApp();
706 if (!pApp) 701 if (!pApp)
707 return; 702 return;
708 CFWL_NoteDriver* pDriver = 703 CFWL_NoteDriver* pDriver =
709 static_cast<CFWL_NoteDriver*>(pApp->GetNoteDriver()); 704 static_cast<CFWL_NoteDriver*>(pApp->GetNoteDriver());
710 pDriver->SetGrab(m_pInterface, bSet); 705 pDriver->SetGrab(m_pInterface, bSet);
711 } 706 }
707
712 FX_BOOL CFWL_WidgetImp::GetPopupPos(FX_FLOAT fMinHeight, 708 FX_BOOL CFWL_WidgetImp::GetPopupPos(FX_FLOAT fMinHeight,
713 FX_FLOAT fMaxHeight, 709 FX_FLOAT fMaxHeight,
714 const CFX_RectF& rtAnchor, 710 const CFX_RectF& rtAnchor,
715 CFX_RectF& rtPopup) { 711 CFX_RectF& rtPopup) {
716 if (GetClassID() == FWL_CLASSHASH_Menu) { 712 if (GetClassID() == FWL_Type::ComboBox) {
717 return GetPopupPosMenu(fMinHeight, fMaxHeight, rtAnchor, rtPopup); 713 if (m_pWidgetMgr->IsFormDisabled()) {
718 } else {
719 if (GetClassID() == FWL_CLASSHASH_ComboBox) {
720 if (m_pWidgetMgr->IsFormDisabled()) {
721 return m_pWidgetMgr->GetAdapterPopupPos(m_pInterface, fMinHeight,
722 fMaxHeight, rtAnchor, rtPopup);
723 } else {
724 return GetPopupPosComboBox(fMinHeight, fMaxHeight, rtAnchor, rtPopup);
725 }
726 } else if (GetClassID() == FWL_CLASSHASH_DateTimePicker &&
727 m_pWidgetMgr->IsFormDisabled()) {
728 return m_pWidgetMgr->GetAdapterPopupPos(m_pInterface, fMinHeight, 714 return m_pWidgetMgr->GetAdapterPopupPos(m_pInterface, fMinHeight,
729 fMaxHeight, rtAnchor, rtPopup); 715 fMaxHeight, rtAnchor, rtPopup);
730 } else {
731 return GetPopupPosGeneral(fMinHeight, fMaxHeight, rtAnchor, rtPopup);
732 } 716 }
717 return GetPopupPosComboBox(fMinHeight, fMaxHeight, rtAnchor, rtPopup);
733 } 718 }
734 return FALSE; 719 if (GetClassID() == FWL_Type::DateTimePicker &&
720 m_pWidgetMgr->IsFormDisabled()) {
721 return m_pWidgetMgr->GetAdapterPopupPos(m_pInterface, fMinHeight,
722 fMaxHeight, rtAnchor, rtPopup);
723 }
724 return GetPopupPosGeneral(fMinHeight, fMaxHeight, rtAnchor, rtPopup);
735 } 725 }
726
736 FX_BOOL CFWL_WidgetImp::GetPopupPosMenu(FX_FLOAT fMinHeight, 727 FX_BOOL CFWL_WidgetImp::GetPopupPosMenu(FX_FLOAT fMinHeight,
737 FX_FLOAT fMaxHeight, 728 FX_FLOAT fMaxHeight,
738 const CFX_RectF& rtAnchor, 729 const CFX_RectF& rtAnchor,
739 CFX_RectF& rtPopup) { 730 CFX_RectF& rtPopup) {
740 FX_FLOAT fx = 0; 731 FX_FLOAT fx = 0;
741 FX_FLOAT fy = 0; 732 FX_FLOAT fy = 0;
742 FX_FLOAT fScreenWidth = 0; 733 FX_FLOAT fScreenWidth = 0;
743 FX_FLOAT fScreenHeight = 0; 734 FX_FLOAT fScreenHeight = 0;
744 GetScreenSize(fScreenWidth, fScreenHeight); 735 GetScreenSize(fScreenWidth, fScreenHeight);
745 if (GetStylesEx() & FWL_STYLEEXT_MNU_Vert) { 736 if (GetStylesEx() & FWL_STYLEEXT_MNU_Vert) {
(...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after
1035 } 1026 }
1036 } 1027 }
1037 1028
1038 void CFWL_WidgetImpDelegate::OnProcessEvent(CFWL_Event* pEvent) {} 1029 void CFWL_WidgetImpDelegate::OnProcessEvent(CFWL_Event* pEvent) {}
1039 1030
1040 void CFWL_WidgetImpDelegate::OnDrawWidget(CFX_Graphics* pGraphics, 1031 void CFWL_WidgetImpDelegate::OnDrawWidget(CFX_Graphics* pGraphics,
1041 const CFX_Matrix* pMatrix) { 1032 const CFX_Matrix* pMatrix) {
1042 CFWL_EvtDraw evt; 1033 CFWL_EvtDraw evt;
1043 evt.m_pGraphics = pGraphics; 1034 evt.m_pGraphics = pGraphics;
1044 } 1035 }
OLDNEW
« no previous file with comments | « xfa/fwl/core/fwl_widgetimp.h ('k') | xfa/fwl/core/fwl_widgetmgrimp.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698