Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 "skia/ext/skia_utils_win.h" | 8 #include "skia/ext/skia_utils_win.h" |
| 9 #include "third_party/skia/include/core/SkPaint.h" | 9 #include "third_party/skia/include/core/SkPaint.h" |
| 10 #include "ui/gfx/canvas_skia.h" | 10 #include "ui/gfx/canvas_skia.h" |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 67 | 67 |
| 68 Background::~Background() { | 68 Background::~Background() { |
| 69 #if defined(OS_WIN) | 69 #if defined(OS_WIN) |
| 70 DeleteObject(native_control_brush_); | 70 DeleteObject(native_control_brush_); |
| 71 #endif | 71 #endif |
| 72 } | 72 } |
| 73 | 73 |
| 74 void Background::SetNativeControlColor(SkColor color) { | 74 void Background::SetNativeControlColor(SkColor color) { |
| 75 color_ = color; | 75 color_ = color; |
| 76 #if defined(OS_WIN) | 76 #if defined(OS_WIN) |
| 77 DeleteObject(native_control_brush_); | 77 DeleteObject(native_control_brush_); |
|
Ben Goodger (Google)
2011/05/24 02:09:48
Should this also set native_control_brush_ back to
sky
2011/05/24 18:13:50
Definitely. Fixed.
| |
| 78 native_control_brush_ = CreateSolidBrush(skia::SkColorToCOLORREF(color)); | |
| 79 #endif | 78 #endif |
| 80 } | 79 } |
| 81 | 80 |
| 81 #if defined(OS_WIN) | |
| 82 HBRUSH Background::GetNativeControlBrush() const { | |
| 83 if (!native_control_brush_) | |
| 84 native_control_brush_ = CreateSolidBrush(skia::SkColorToCOLORREF(color_)); | |
| 85 return native_control_brush_; | |
| 86 } | |
| 87 #endif | |
| 88 | |
| 82 //static | 89 //static |
| 83 Background* Background::CreateSolidBackground(const SkColor& color) { | 90 Background* Background::CreateSolidBackground(const SkColor& color) { |
| 84 return new SolidBackground(color); | 91 return new SolidBackground(color); |
| 85 } | 92 } |
| 86 | 93 |
| 87 //static | 94 //static |
| 88 Background* Background::CreateStandardPanelBackground() { | 95 Background* Background::CreateStandardPanelBackground() { |
| 89 return CreateVerticalGradientBackground(SkColorSetRGB(246, 250, 255), | 96 return CreateVerticalGradientBackground(SkColorSetRGB(246, 250, 255), |
| 90 SkColorSetRGB(219, 235, 255)); | 97 SkColorSetRGB(219, 235, 255)); |
| 91 } | 98 } |
| 92 | 99 |
| 93 //static | 100 //static |
| 94 Background* Background::CreateVerticalGradientBackground( | 101 Background* Background::CreateVerticalGradientBackground( |
| 95 const SkColor& color1, const SkColor& color2) { | 102 const SkColor& color1, const SkColor& color2) { |
| 96 Background* background = CreateBackgroundPainter( | 103 Background* background = CreateBackgroundPainter( |
| 97 true, Painter::CreateVerticalGradient(color1, color2)); | 104 true, Painter::CreateVerticalGradient(color1, color2)); |
| 98 background->SetNativeControlColor( | 105 background->SetNativeControlColor( |
| 99 color_utils::AlphaBlend(color1, color2, 128)); | 106 color_utils::AlphaBlend(color1, color2, 128)); |
| 100 | 107 |
| 101 return background; | 108 return background; |
| 102 } | 109 } |
| 103 | 110 |
| 104 //static | 111 //static |
| 105 Background* Background::CreateBackgroundPainter(bool owns_painter, | 112 Background* Background::CreateBackgroundPainter(bool owns_painter, |
| 106 Painter* painter) { | 113 Painter* painter) { |
| 107 return new BackgroundPainter(owns_painter, painter); | 114 return new BackgroundPainter(owns_painter, painter); |
| 108 } | 115 } |
| 109 | 116 |
| 110 } // namespace views | 117 } // namespace views |
| OLD | NEW |