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

Side by Side Diff: xfa/fwl/cfwl_form.cpp

Issue 2575573002: Remove unused CFWL_Form flags (Closed)
Patch Set: Rebase to master 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
« no previous file with comments | « xfa/fwl/cfwl_form.h ('k') | no next file » | 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/cfwl_form.h" 7 #include "xfa/fwl/cfwl_form.h"
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 14 matching lines...) Expand all
25 #include "xfa/fwl/theme/cfwl_widgettp.h" 25 #include "xfa/fwl/theme/cfwl_widgettp.h"
26 26
27 namespace { 27 namespace {
28 28
29 const int kSystemButtonSize = 21; 29 const int kSystemButtonSize = 21;
30 const int kSystemButtonMargin = 5; 30 const int kSystemButtonMargin = 5;
31 const int kSystemButtonSpan = 2; 31 const int kSystemButtonSpan = 2;
32 32
33 } // namespace 33 } // namespace
34 34
35 namespace {
36
37 const uint8_t kCornerEnlarge = 10;
38
39 } // namespace
40
41 CFWL_Form::CFWL_Form(const CFWL_App* app, 35 CFWL_Form::CFWL_Form(const CFWL_App* app,
42 std::unique_ptr<CFWL_WidgetProperties> properties, 36 std::unique_ptr<CFWL_WidgetProperties> properties,
43 CFWL_Widget* pOuter) 37 CFWL_Widget* pOuter)
44 : CFWL_Widget(app, std::move(properties), pOuter), 38 : CFWL_Widget(app, std::move(properties), pOuter),
45 #if (_FX_OS_ == _FX_MACOSX_) 39 #if (_FX_OS_ == _FX_MACOSX_)
46 m_bMouseIn(false), 40 m_bMouseIn(false),
47 #endif 41 #endif
48 m_pCloseBox(nullptr), 42 m_pCloseBox(nullptr),
49 m_pMinBox(nullptr), 43 m_pMinBox(nullptr),
50 m_pMaxBox(nullptr), 44 m_pMaxBox(nullptr),
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 return FWL_WidgetHit::CloseBox; 96 return FWL_WidgetHit::CloseBox;
103 if (m_pMaxBox && m_pMaxBox->m_rtBtn.Contains(fx, fy)) 97 if (m_pMaxBox && m_pMaxBox->m_rtBtn.Contains(fx, fy))
104 return FWL_WidgetHit::MaxBox; 98 return FWL_WidgetHit::MaxBox;
105 if (m_pMinBox && m_pMinBox->m_rtBtn.Contains(fx, fy)) 99 if (m_pMinBox && m_pMinBox->m_rtBtn.Contains(fx, fy))
106 return FWL_WidgetHit::MinBox; 100 return FWL_WidgetHit::MinBox;
107 101
108 CFX_RectF rtCap; 102 CFX_RectF rtCap;
109 rtCap.Set(m_fCYBorder, m_fCXBorder, 103 rtCap.Set(m_fCYBorder, m_fCXBorder,
110 0 - kSystemButtonSize * m_iSysBox - 2 * m_fCYBorder, 104 0 - kSystemButtonSize * m_iSysBox - 2 * m_fCYBorder,
111 0 - m_fCXBorder); 105 0 - m_fCXBorder);
112 if (rtCap.Contains(fx, fy)) 106 return rtCap.Contains(fx, fy) ? FWL_WidgetHit::Titlebar
113 return FWL_WidgetHit::Titlebar; 107 : FWL_WidgetHit::Client;
114 if ((m_pProperties->m_dwStyles & FWL_WGTSTYLE_Border) &&
115 (m_pProperties->m_dwStyleExes & FWL_STYLEEXT_FRM_Resize)) {
116 FX_FLOAT fWidth = m_rtRelative.width - 2 * (m_fCYBorder + kCornerEnlarge);
117 FX_FLOAT fHeight = m_rtRelative.height - 2 * (m_fCXBorder + kCornerEnlarge);
118
119 CFX_RectF rt;
120 rt.Set(0, m_fCXBorder + kCornerEnlarge, m_fCYBorder, fHeight);
121 if (rt.Contains(fx, fy))
122 return FWL_WidgetHit::Left;
123
124 rt.Set(m_rtRelative.width - m_fCYBorder, m_fCXBorder + kCornerEnlarge,
125 m_fCYBorder, fHeight);
126 if (rt.Contains(fx, fy))
127 return FWL_WidgetHit::Right;
128
129 rt.Set(m_fCYBorder + kCornerEnlarge, 0, fWidth, m_fCXBorder);
130 if (rt.Contains(fx, fy))
131 return FWL_WidgetHit::Top;
132
133 rt.Set(m_fCYBorder + kCornerEnlarge, m_rtRelative.height - m_fCXBorder,
134 fWidth, m_fCXBorder);
135 if (rt.Contains(fx, fy))
136 return FWL_WidgetHit::Bottom;
137
138 rt.Set(0, 0, m_fCYBorder + kCornerEnlarge, m_fCXBorder + kCornerEnlarge);
139 if (rt.Contains(fx, fy))
140 return FWL_WidgetHit::LeftTop;
141
142 rt.Set(0, m_rtRelative.height - m_fCXBorder - kCornerEnlarge,
143 m_fCYBorder + kCornerEnlarge, m_fCXBorder + kCornerEnlarge);
144 if (rt.Contains(fx, fy))
145 return FWL_WidgetHit::LeftBottom;
146
147 rt.Set(m_rtRelative.width - m_fCYBorder - kCornerEnlarge, 0,
148 m_fCYBorder + kCornerEnlarge, m_fCXBorder + kCornerEnlarge);
149 if (rt.Contains(fx, fy))
150 return FWL_WidgetHit::RightTop;
151
152 rt.Set(m_rtRelative.width - m_fCYBorder - kCornerEnlarge,
153 m_rtRelative.height - m_fCXBorder - kCornerEnlarge,
154 m_fCYBorder + kCornerEnlarge, m_fCXBorder + kCornerEnlarge);
155 if (rt.Contains(fx, fy))
156 return FWL_WidgetHit::RightBottom;
157 }
158 return FWL_WidgetHit::Client;
159 } 108 }
160 109
161 void CFWL_Form::DrawWidget(CFX_Graphics* pGraphics, const CFX_Matrix* pMatrix) { 110 void CFWL_Form::DrawWidget(CFX_Graphics* pGraphics, const CFX_Matrix* pMatrix) {
162 if (!pGraphics) 111 if (!pGraphics)
163 return; 112 return;
164 if (!m_pProperties->m_pThemeProvider) 113 if (!m_pProperties->m_pThemeProvider)
165 return; 114 return;
166 115
167 IFWL_ThemeProvider* pTheme = m_pProperties->m_pThemeProvider; 116 IFWL_ThemeProvider* pTheme = m_pProperties->m_pThemeProvider;
168 bool bInactive = !IsActive(); 117 bool bInactive = !IsActive();
169 int32_t iState = bInactive ? CFWL_PartState_Inactive : CFWL_PartState_Normal; 118 int32_t iState = bInactive ? CFWL_PartState_Inactive : CFWL_PartState_Normal;
170 if ((m_pProperties->m_dwStyleExes & FWL_STYLEEXT_FRM_NoDrawClient) == 0) 119 DrawBackground(pGraphics, pTheme);
171 DrawBackground(pGraphics, pTheme);
172 120
173 #ifdef FWL_UseMacSystemBorder 121 #ifdef FWL_UseMacSystemBorder
174 return; 122 return;
175 #endif 123 #endif
176 CFWL_ThemeBackground param; 124 CFWL_ThemeBackground param;
177 param.m_pWidget = this; 125 param.m_pWidget = this;
178 param.m_dwStates = iState; 126 param.m_dwStates = iState;
179 param.m_pGraphics = pGraphics; 127 param.m_pGraphics = pGraphics;
180 param.m_rtPart = m_rtRelative; 128 param.m_rtPart = m_rtRelative;
181 if (pMatrix) 129 if (pMatrix)
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after
482 break; 430 break;
483 case FWL_MouseCommand::LeftButtonUp: 431 case FWL_MouseCommand::LeftButtonUp:
484 OnLButtonUp(pMsg); 432 OnLButtonUp(pMsg);
485 break; 433 break;
486 case FWL_MouseCommand::Move: 434 case FWL_MouseCommand::Move:
487 OnMouseMove(pMsg); 435 OnMouseMove(pMsg);
488 break; 436 break;
489 case FWL_MouseCommand::Leave: 437 case FWL_MouseCommand::Leave:
490 OnMouseLeave(pMsg); 438 OnMouseLeave(pMsg);
491 break; 439 break;
492 case FWL_MouseCommand::LeftButtonDblClk:
493 OnLButtonDblClk(pMsg);
494 break;
495 default: 440 default:
496 break; 441 break;
497 } 442 }
498 break; 443 break;
499 } 444 }
500 default: 445 default:
501 break; 446 break;
502 } 447 }
503 #endif // FWL_UseMacSystemBorder 448 #endif // FWL_UseMacSystemBorder
504 } 449 }
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
602 } 547 }
603 548
604 void CFWL_Form::OnMouseLeave(CFWL_MessageMouse* pMsg) { 549 void CFWL_Form::OnMouseLeave(CFWL_MessageMouse* pMsg) {
605 CFWL_SysBtn* pHover = GetSysBtnByState(FWL_SYSBUTTONSTATE_Hover); 550 CFWL_SysBtn* pHover = GetSysBtnByState(FWL_SYSBUTTONSTATE_Hover);
606 if (!pHover) 551 if (!pHover)
607 return; 552 return;
608 553
609 pHover->SetNormal(); 554 pHover->SetNormal();
610 RepaintRect(pHover->m_rtBtn); 555 RepaintRect(pHover->m_rtBtn);
611 } 556 }
612
613 void CFWL_Form::OnLButtonDblClk(CFWL_MessageMouse* pMsg) {
614 if ((m_pProperties->m_dwStyleExes & FWL_STYLEEXT_FRM_Resize) &&
615 HitTest(pMsg->m_fx, pMsg->m_fy) == FWL_WidgetHit::Titlebar) {
616 if (m_bMaximized)
617 SetWidgetRect(m_rtRestore);
618 else
619 SetWorkAreaRect();
620
621 Update();
622 m_bMaximized = !m_bMaximized;
623 }
624 }
OLDNEW
« no previous file with comments | « xfa/fwl/cfwl_form.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698