| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "chrome/browser/chromeos/setting_level_bubble_view.h" | 5 #include "chrome/browser/chromeos/setting_level_bubble_view.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "third_party/skia/include/core/SkBitmap.h" | 10 #include "third_party/skia/include/core/SkBitmap.h" |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 | 25 |
| 26 } // namespace | 26 } // namespace |
| 27 | 27 |
| 28 namespace chromeos { | 28 namespace chromeos { |
| 29 | 29 |
| 30 SettingLevelBubbleView::SettingLevelBubbleView() | 30 SettingLevelBubbleView::SettingLevelBubbleView() |
| 31 : progress_bar_(NULL), | 31 : progress_bar_(NULL), |
| 32 icon_(NULL) { | 32 icon_(NULL) { |
| 33 } | 33 } |
| 34 | 34 |
| 35 void SettingLevelBubbleView::Init(SkBitmap* icon, int level_percent) { | 35 void SettingLevelBubbleView::Init(SkBitmap* icon, |
| 36 int level_percent, |
| 37 bool enabled) { |
| 36 DCHECK(icon); | 38 DCHECK(icon); |
| 37 DCHECK(level_percent >= 0 && level_percent <= 100); | 39 DCHECK(level_percent >= 0 && level_percent <= 100); |
| 38 icon_ = icon; | 40 icon_ = icon; |
| 39 progress_bar_ = new views::ProgressBar(); | 41 progress_bar_ = new views::ProgressBar(); |
| 40 AddChildView(progress_bar_); | 42 AddChildView(progress_bar_); |
| 41 Update(level_percent); | |
| 42 progress_bar_->EnableCanvasFlippingForRTLUI(true); | 43 progress_bar_->EnableCanvasFlippingForRTLUI(true); |
| 43 EnableCanvasFlippingForRTLUI(true); | 44 EnableCanvasFlippingForRTLUI(true); |
| 45 SetLevel(level_percent); |
| 46 SetEnabled(enabled); |
| 44 } | 47 } |
| 45 | 48 |
| 46 void SettingLevelBubbleView::SetIcon(SkBitmap* icon) { | 49 void SettingLevelBubbleView::SetIcon(SkBitmap* icon) { |
| 47 DCHECK(icon); | 50 DCHECK(icon); |
| 48 icon_ = icon; | 51 icon_ = icon; |
| 49 SchedulePaint(); | 52 SchedulePaint(); |
| 50 } | 53 } |
| 51 | 54 |
| 52 void SettingLevelBubbleView::Update(int level_percent) { | 55 void SettingLevelBubbleView::SetLevel(int level_percent) { |
| 53 DCHECK(level_percent >= 0 && level_percent <= 100); | 56 DCHECK(level_percent >= 0 && level_percent <= 100); |
| 54 progress_bar_->SetProgress(level_percent); | 57 progress_bar_->SetProgress(level_percent); |
| 55 } | 58 } |
| 56 | 59 |
| 60 void SettingLevelBubbleView::SetEnabled(bool enabled) { |
| 61 progress_bar_->SetEnabled(enabled); |
| 62 } |
| 63 |
| 57 void SettingLevelBubbleView::OnPaint(gfx::Canvas* canvas) { | 64 void SettingLevelBubbleView::OnPaint(gfx::Canvas* canvas) { |
| 58 views::View::OnPaint(canvas); | 65 views::View::OnPaint(canvas); |
| 59 canvas->DrawBitmapInt(*icon_, kPadding, (height() - icon_->height()) / 2); | 66 canvas->DrawBitmapInt(*icon_, kPadding, (height() - icon_->height()) / 2); |
| 60 } | 67 } |
| 61 | 68 |
| 62 void SettingLevelBubbleView::Layout() { | 69 void SettingLevelBubbleView::Layout() { |
| 63 progress_bar_->SetBounds(width() - kPadding - kProgressBarWidth, | 70 progress_bar_->SetBounds(width() - kPadding - kProgressBarWidth, |
| 64 (height() - kProgressBarHeight) / 2, | 71 (height() - kProgressBarHeight) / 2, |
| 65 kProgressBarWidth, kProgressBarHeight); | 72 kProgressBarWidth, kProgressBarHeight); |
| 66 } | 73 } |
| 67 | 74 |
| 68 gfx::Size SettingLevelBubbleView::GetPreferredSize() { | 75 gfx::Size SettingLevelBubbleView::GetPreferredSize() { |
| 69 return gfx::Size(kWidth, kHeight); | 76 return gfx::Size(kWidth, kHeight); |
| 70 } | 77 } |
| 71 | 78 |
| 72 } // namespace chromeos | 79 } // namespace chromeos |
| OLD | NEW |