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

Side by Side Diff: ui/gfx/shadow_value.cc

Issue 11081007: Remove implicit flooring Scale() method from Point and Size. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « ui/gfx/point_f.h ('k') | ui/gfx/size.h » ('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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium 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 #include "ui/gfx/shadow_value.h" 5 #include "ui/gfx/shadow_value.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/stringprintf.h" 9 #include "base/stringprintf.h"
10 #include "ui/gfx/insets.h" 10 #include "ui/gfx/insets.h"
11 #include "ui/gfx/point_conversions.h"
11 12
12 namespace gfx { 13 namespace gfx {
13 14
14 ShadowValue::ShadowValue() 15 ShadowValue::ShadowValue()
15 : blur_(0), 16 : blur_(0),
16 color_(0) { 17 color_(0) {
17 } 18 }
18 19
19 ShadowValue::ShadowValue(const gfx::Point& offset, 20 ShadowValue::ShadowValue(const gfx::Point& offset,
20 double blur, 21 double blur,
21 SkColor color) 22 SkColor color)
22 : offset_(offset), 23 : offset_(offset),
23 blur_(blur), 24 blur_(blur),
24 color_(color) { 25 color_(color) {
25 } 26 }
26 27
27 ShadowValue::~ShadowValue() { 28 ShadowValue::~ShadowValue() {
28 } 29 }
29 30
30 ShadowValue ShadowValue::Scale(float scale) const { 31 ShadowValue ShadowValue::Scale(float scale) const {
31 return ShadowValue(offset_.Scale(scale), blur_ * scale, color_); 32 gfx::Point scaled_offset = gfx::ToFlooredPoint(offset_.Scale(scale));
33 return ShadowValue(scaled_offset, blur_ * scale, color_);
32 } 34 }
33 35
34 std::string ShadowValue::ToString() const { 36 std::string ShadowValue::ToString() const {
35 return base::StringPrintf( 37 return base::StringPrintf(
36 "(%d,%d),%.2f,rgba(%d,%d,%d,%d)", 38 "(%d,%d),%.2f,rgba(%d,%d,%d,%d)",
37 offset_.x(), offset_.y(), 39 offset_.x(), offset_.y(),
38 blur_, 40 blur_,
39 SkColorGetR(color_), 41 SkColorGetR(color_),
40 SkColorGetG(color_), 42 SkColorGetG(color_),
41 SkColorGetB(color_), 43 SkColorGetB(color_),
(...skipping 16 matching lines...) Expand all
58 left = std::max(left, blur - shadow.x()); 60 left = std::max(left, blur - shadow.x());
59 top = std::max(top, blur - shadow.y()); 61 top = std::max(top, blur - shadow.y());
60 right = std::max(right, blur + shadow.x()); 62 right = std::max(right, blur + shadow.x());
61 bottom = std::max(bottom, blur + shadow.y()); 63 bottom = std::max(bottom, blur + shadow.y());
62 } 64 }
63 65
64 return Insets(-top, -left, -bottom, -right); 66 return Insets(-top, -left, -bottom, -right);
65 } 67 }
66 68
67 } // namespace gfx 69 } // namespace gfx
OLDNEW
« no previous file with comments | « ui/gfx/point_f.h ('k') | ui/gfx/size.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698