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

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

Issue 2564443003: Change CFWL_Widget::GetMatrix to return the matrix (Closed)
Patch Set: Re-add check 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
« xfa/fwl/cfwl_widget.cpp ('K') | « xfa/fwl/cfwl_widget.cpp ('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_widgetmgr.h" 7 #include "xfa/fwl/cfwl_widgetmgr.h"
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after
291 return nullptr; 291 return nullptr;
292 292
293 FX_FLOAT x1; 293 FX_FLOAT x1;
294 FX_FLOAT y1; 294 FX_FLOAT y1;
295 CFWL_Widget* child = GetLastChildWidget(parent); 295 CFWL_Widget* child = GetLastChildWidget(parent);
296 while (child) { 296 while (child) {
297 if ((child->GetStates() & FWL_WGTSTATE_Invisible) == 0) { 297 if ((child->GetStates() & FWL_WGTSTATE_Invisible) == 0) {
298 x1 = x; 298 x1 = x;
299 y1 = y; 299 y1 = y;
300 CFX_Matrix matrixOnParent; 300 CFX_Matrix matrixOnParent;
301 child->GetMatrix(matrixOnParent, false);
302 CFX_Matrix m; 301 CFX_Matrix m;
303 m.SetIdentity(); 302 m.SetIdentity();
304 m.SetReverse(matrixOnParent); 303 m.SetReverse(matrixOnParent);
305 m.TransformPoint(x1, y1); 304 m.TransformPoint(x1, y1);
306 CFX_RectF bounds = child->GetWidgetRect(); 305 CFX_RectF bounds = child->GetWidgetRect();
307 if (bounds.Contains(x1, y1)) { 306 if (bounds.Contains(x1, y1)) {
308 x1 -= bounds.left; 307 x1 -= bounds.left;
309 y1 -= bounds.top; 308 y1 -= bounds.top;
310 return GetWidgetAtPoint(child, x1, y1); 309 return GetWidgetAtPoint(child, x1, y1);
311 } 310 }
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after
521 if (child->GetStates() & FWL_WGTSTATE_Invisible) 520 if (child->GetStates() & FWL_WGTSTATE_Invisible)
522 continue; 521 continue;
523 522
524 CFX_RectF rtWidget = child->GetWidgetRect(); 523 CFX_RectF rtWidget = child->GetWidgetRect();
525 if (rtWidget.IsEmpty()) 524 if (rtWidget.IsEmpty())
526 continue; 525 continue;
527 526
528 CFX_Matrix widgetMatrix; 527 CFX_Matrix widgetMatrix;
529 CFX_RectF clipBounds(rtWidget); 528 CFX_RectF clipBounds(rtWidget);
530 if (!bFormDisable) 529 if (!bFormDisable)
531 child->GetMatrix(widgetMatrix, true); 530 widgetMatrix = child->GetMatrix();
532 if (pMatrix) 531 if (pMatrix)
533 widgetMatrix.Concat(*pMatrix); 532 widgetMatrix.Concat(*pMatrix);
534 533
535 if (!bFormDisable) { 534 if (!bFormDisable) {
536 widgetMatrix.TransformPoint(clipBounds.left, clipBounds.top); 535 widgetMatrix.TransformPoint(clipBounds.left, clipBounds.top);
537 clipBounds.Intersect(rtClip); 536 clipBounds.Intersect(rtClip);
538 if (clipBounds.IsEmpty()) 537 if (clipBounds.IsEmpty())
539 continue; 538 continue;
540 539
541 pGraphics->SaveGraphState(); 540 pGraphics->SaveGraphState();
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after
720 pWidget(widget), 719 pWidget(widget),
721 iRedrawCounter(0) 720 iRedrawCounter(0)
722 #if (_FX_OS_ == _FX_WIN32_DESKTOP_) || (_FX_OS_ == _FX_WIN64_) 721 #if (_FX_OS_ == _FX_WIN32_DESKTOP_) || (_FX_OS_ == _FX_WIN64_)
723 , 722 ,
724 bOutsideChanged(false) 723 bOutsideChanged(false)
725 #endif 724 #endif
726 { 725 {
727 } 726 }
728 727
729 CFWL_WidgetMgr::Item::~Item() {} 728 CFWL_WidgetMgr::Item::~Item() {}
OLDNEW
« xfa/fwl/cfwl_widget.cpp ('K') | « xfa/fwl/cfwl_widget.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698