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

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

Issue 2506253004: Split fwl/core class pt I. (Closed)
Patch Set: Rebase to master Created 4 years, 1 month 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_form.h" 7 #include "xfa/fwl/core/ifwl_form.h"
8 8
9 #include "third_party/base/ptr_util.h" 9 #include "third_party/base/ptr_util.h"
10 #include "xfa/fde/tto/fde_textout.h" 10 #include "xfa/fde/tto/fde_textout.h"
11 #include "xfa/fwl/core/cfwl_evtclose.h" 11 #include "xfa/fwl/core/cfwl_evtclose.h"
12 #include "xfa/fwl/core/cfwl_msgmouse.h" 12 #include "xfa/fwl/core/cfwl_msgmouse.h"
13 #include "xfa/fwl/core/cfwl_sysbtn.h"
13 #include "xfa/fwl/core/cfwl_themebackground.h" 14 #include "xfa/fwl/core/cfwl_themebackground.h"
14 #include "xfa/fwl/core/cfwl_themepart.h" 15 #include "xfa/fwl/core/cfwl_themepart.h"
15 #include "xfa/fwl/core/cfwl_themetext.h" 16 #include "xfa/fwl/core/cfwl_themetext.h"
16 #include "xfa/fwl/core/cfwl_widgetmgr.h" 17 #include "xfa/fwl/core/cfwl_widgetmgr.h"
17 #include "xfa/fwl/core/fwl_noteimp.h" 18 #include "xfa/fwl/core/fwl_noteimp.h"
18 #include "xfa/fwl/core/ifwl_app.h" 19 #include "xfa/fwl/core/ifwl_app.h"
19 #include "xfa/fwl/core/ifwl_formproxy.h" 20 #include "xfa/fwl/core/ifwl_formproxy.h"
20 #include "xfa/fwl/core/ifwl_themeprovider.h" 21 #include "xfa/fwl/core/ifwl_themeprovider.h"
21 #include "xfa/fwl/theme/cfwl_widgettp.h" 22 #include "xfa/fwl/theme/cfwl_widgettp.h"
22 23
(...skipping 445 matching lines...) Expand 10 before | Expand all | Expand 10 after
468 static_cast<FX_FLOAT*>(GetThemeCapacity(dwCapacity)); 469 static_cast<FX_FLOAT*>(GetThemeCapacity(dwCapacity));
469 return pfCapHeight ? *pfCapHeight : 0; 470 return pfCapHeight ? *pfCapHeight : 0;
470 } 471 }
471 return 0; 472 return 0;
472 } 473 }
473 474
474 void IFWL_Form::DrawCaptionText(CFX_Graphics* pGs, 475 void IFWL_Form::DrawCaptionText(CFX_Graphics* pGs,
475 IFWL_ThemeProvider* pTheme, 476 IFWL_ThemeProvider* pTheme,
476 const CFX_Matrix* pMatrix) { 477 const CFX_Matrix* pMatrix) {
477 CFX_WideString wsText; 478 CFX_WideString wsText;
478 IFWL_DataProvider* pData = m_pProperties->m_pDataProvider; 479 IFWL_Widget::DataProvider* pData = m_pProperties->m_pDataProvider;
479 pData->GetCaption(this, wsText); 480 pData->GetCaption(this, wsText);
480 if (wsText.IsEmpty()) 481 if (wsText.IsEmpty())
481 return; 482 return;
482 483
483 CFWL_ThemeText textParam; 484 CFWL_ThemeText textParam;
484 textParam.m_pWidget = this; 485 textParam.m_pWidget = this;
485 textParam.m_iPart = CFWL_Part::Caption; 486 textParam.m_iPart = CFWL_Part::Caption;
486 textParam.m_dwStates = CFWL_PartState_Normal; 487 textParam.m_dwStates = CFWL_PartState_Normal;
487 textParam.m_pGraphics = pGs; 488 textParam.m_pGraphics = pGs;
488 if (pMatrix) 489 if (pMatrix)
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
672 m_pBigIcon = pBigIcon; 673 m_pBigIcon = pBigIcon;
673 if (pSmallIcon) 674 if (pSmallIcon)
674 m_pSmallIcon = pSmallIcon; 675 m_pSmallIcon = pSmallIcon;
675 } 676 }
676 677
677 void IFWL_Form::UpdateCaption() { 678 void IFWL_Form::UpdateCaption() {
678 CFWL_WidgetMgr* pWidgetMgr = GetOwnerApp()->GetWidgetMgr(); 679 CFWL_WidgetMgr* pWidgetMgr = GetOwnerApp()->GetWidgetMgr();
679 if (!pWidgetMgr) 680 if (!pWidgetMgr)
680 return; 681 return;
681 682
682 IFWL_DataProvider* pData = m_pProperties->m_pDataProvider; 683 IFWL_Widget::DataProvider* pData = m_pProperties->m_pDataProvider;
683 if (!pData) 684 if (!pData)
684 return; 685 return;
685 686
686 CFX_WideString text; 687 CFX_WideString text;
687 pData->GetCaption(this, text); 688 pData->GetCaption(this, text);
688 } 689 }
689 690
690 void IFWL_Form::OnProcessMessage(CFWL_Message* pMessage) { 691 void IFWL_Form::OnProcessMessage(CFWL_Message* pMessage) {
691 #ifndef FWL_UseMacSystemBorder 692 #ifndef FWL_UseMacSystemBorder
692 if (!pMessage) 693 if (!pMessage)
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
846 HitTest(pMsg->m_fx, pMsg->m_fy) == FWL_WidgetHit::Titlebar) { 847 HitTest(pMsg->m_fx, pMsg->m_fy) == FWL_WidgetHit::Titlebar) {
847 if (m_bMaximized) 848 if (m_bMaximized)
848 SetWidgetRect(m_rtRestore); 849 SetWidgetRect(m_rtRestore);
849 else 850 else
850 SetWorkAreaRect(); 851 SetWorkAreaRect();
851 852
852 Update(); 853 Update();
853 m_bMaximized = !m_bMaximized; 854 m_bMaximized = !m_bMaximized;
854 } 855 }
855 } 856 }
856
857 CFWL_SysBtn::CFWL_SysBtn() {
858 m_rtBtn.Set(0, 0, 0, 0);
859 m_dwState = 0;
860 }
861
862 bool CFWL_SysBtn::IsDisabled() const {
863 return !!(m_dwState & FWL_SYSBUTTONSTATE_Disabled);
864 }
865
866 void CFWL_SysBtn::SetNormal() {
867 m_dwState &= 0xFFF0;
868 }
869
870 void CFWL_SysBtn::SetPressed() {
871 SetNormal();
872 m_dwState |= FWL_SYSBUTTONSTATE_Pressed;
873 }
874
875 void CFWL_SysBtn::SetHover() {
876 SetNormal();
877 m_dwState |= FWL_SYSBUTTONSTATE_Hover;
878 }
879
880 void CFWL_SysBtn::SetDisabled(bool bDisabled) {
881 bDisabled ? m_dwState |= FWL_SYSBUTTONSTATE_Disabled
882 : m_dwState &= ~FWL_SYSBUTTONSTATE_Disabled;
883 }
884
885 uint32_t CFWL_SysBtn::GetPartState() const {
886 if (IsDisabled())
887 return CFWL_PartState_Disabled;
888 if (m_dwState & FWL_SYSBUTTONSTATE_Pressed)
889 return CFWL_PartState_Pressed;
890 if (m_dwState & FWL_SYSBUTTONSTATE_Hover)
891 return CFWL_PartState_Hovered;
892 return CFWL_PartState_Normal;
893 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698