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

Side by Side Diff: views/background.cc

Issue 2811032: Revert 50784 - Canvas refactoring part 3.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 10 years, 6 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 | « gfx/gfx.gyp ('k') | views/controls/button/text_button.cc » ('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) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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 "views/background.h" 5 #include "views/background.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "gfx/canvas_skia.h" 8 #include "gfx/canvas.h"
9 #include "gfx/color_utils.h" 9 #include "gfx/color_utils.h"
10 #include "skia/ext/skia_utils_win.h" 10 #include "skia/ext/skia_utils_win.h"
11 #include "third_party/skia/include/core/SkPaint.h" 11 #include "third_party/skia/include/core/SkPaint.h"
12 #include "views/painter.h" 12 #include "views/painter.h"
13 #include "views/view.h" 13 #include "views/view.h"
14 14
15 namespace views { 15 namespace views {
16 16
17 // SolidBackground is a trivial Background implementation that fills the 17 // SolidBackground is a trivial Background implementation that fills the
18 // background in a solid color. 18 // background in a solid color.
19 class SolidBackground : public Background { 19 class SolidBackground : public Background {
20 public: 20 public:
21 explicit SolidBackground(const SkColor& color) { 21 explicit SolidBackground(const SkColor& color) {
22 SetNativeControlColor(color); 22 SetNativeControlColor(color);
23 } 23 }
24 24
25 void Paint(gfx::Canvas* canvas, View* view) const { 25 void Paint(gfx::Canvas* canvas, View* view) const {
26 // Fill the background. Note that we don't constrain to the bounds as 26 // Fill the background. Note that we don't constrain to the bounds as
27 // canvas is already clipped for us. 27 // canvas is already clipped for us.
28 canvas->AsCanvasSkia()->drawColor(get_color()); 28 canvas->drawColor(get_color());
29 } 29 }
30 30
31 private: 31 private:
32 DISALLOW_COPY_AND_ASSIGN(SolidBackground); 32 DISALLOW_COPY_AND_ASSIGN(SolidBackground);
33 }; 33 };
34 34
35 class BackgroundPainter : public Background { 35 class BackgroundPainter : public Background {
36 public: 36 public:
37 BackgroundPainter(bool owns_painter, Painter* painter) 37 BackgroundPainter(bool owns_painter, Painter* painter)
38 : owns_painter_(owns_painter), painter_(painter) { 38 : owns_painter_(owns_painter), painter_(painter) {
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
101 return background; 101 return background;
102 } 102 }
103 103
104 //static 104 //static
105 Background* Background::CreateBackgroundPainter(bool owns_painter, 105 Background* Background::CreateBackgroundPainter(bool owns_painter,
106 Painter* painter) { 106 Painter* painter) {
107 return new BackgroundPainter(owns_painter, painter); 107 return new BackgroundPainter(owns_painter, painter);
108 } 108 }
109 109
110 } // namespace views 110 } // namespace views
OLDNEW
« no previous file with comments | « gfx/gfx.gyp ('k') | views/controls/button/text_button.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698