OLD | NEW |
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 "ash/system/tray/tray_image_item.h" | 5 #include "ash/system/tray/tray_image_item.h" |
6 | 6 |
7 #include "ash/system/tray/tray_item_view.h" | 7 #include "ash/system/tray/tray_item_view.h" |
8 #include "ui/base/resource/resource_bundle.h" | 8 #include "ui/base/resource/resource_bundle.h" |
9 #include "ui/gfx/image/image.h" | 9 #include "ui/gfx/image/image.h" |
10 #include "ui/views/controls/image_view.h" | 10 #include "ui/views/controls/image_view.h" |
11 #include "ui/views/layout/fill_layout.h" | 11 #include "ui/views/layout/fill_layout.h" |
12 | 12 |
13 namespace ash { | 13 namespace ash { |
14 namespace internal { | 14 namespace internal { |
15 | 15 |
16 TrayImageItem::TrayImageItem(int resource_id) | 16 TrayImageItem::TrayImageItem(int resource_id) |
17 : resource_id_(resource_id) { | 17 : resource_id_(resource_id), |
| 18 tray_view_(NULL) { |
18 } | 19 } |
19 | 20 |
20 TrayImageItem::~TrayImageItem() {} | 21 TrayImageItem::~TrayImageItem() {} |
21 | 22 |
22 views::View* TrayImageItem::tray_view() { | 23 views::View* TrayImageItem::tray_view() { |
23 return tray_view_.get(); | 24 return tray_view_; |
24 } | 25 } |
25 | 26 |
26 views::View* TrayImageItem::CreateTrayView(user::LoginStatus status) { | 27 views::View* TrayImageItem::CreateTrayView(user::LoginStatus status) { |
27 tray_view_.reset(new TrayItemView); | 28 CHECK(tray_view_ == NULL); |
| 29 tray_view_ = new TrayItemView; |
28 tray_view_->CreateImageView(); | 30 tray_view_->CreateImageView(); |
29 tray_view_->image_view()->SetImage(ui::ResourceBundle::GetSharedInstance(). | 31 tray_view_->image_view()->SetImage(ui::ResourceBundle::GetSharedInstance(). |
30 GetImageNamed(resource_id_).ToSkBitmap()); | 32 GetImageNamed(resource_id_).ToSkBitmap()); |
31 tray_view_->SetVisible(GetInitialVisibility()); | 33 tray_view_->SetVisible(GetInitialVisibility()); |
32 return tray_view_.get(); | 34 return tray_view_; |
33 } | 35 } |
34 | 36 |
35 views::View* TrayImageItem::CreateDefaultView(user::LoginStatus status) { | 37 views::View* TrayImageItem::CreateDefaultView(user::LoginStatus status) { |
36 return NULL; | 38 return NULL; |
37 } | 39 } |
38 | 40 |
39 views::View* TrayImageItem::CreateDetailedView(user::LoginStatus status) { | 41 views::View* TrayImageItem::CreateDetailedView(user::LoginStatus status) { |
40 return NULL; | 42 return NULL; |
41 } | 43 } |
42 | 44 |
43 void TrayImageItem::UpdateAfterLoginStatusChange(user::LoginStatus status) { | 45 void TrayImageItem::UpdateAfterLoginStatusChange(user::LoginStatus status) { |
44 } | 46 } |
45 | 47 |
46 void TrayImageItem::DestroyTrayView() { | 48 void TrayImageItem::DestroyTrayView() { |
47 tray_view_.reset(); | 49 tray_view_ = NULL; |
48 } | 50 } |
49 | 51 |
50 void TrayImageItem::DestroyDefaultView() { | 52 void TrayImageItem::DestroyDefaultView() { |
51 } | 53 } |
52 | 54 |
53 void TrayImageItem::DestroyDetailedView() { | 55 void TrayImageItem::DestroyDetailedView() { |
54 } | 56 } |
55 | 57 |
56 } // namespace internal | 58 } // namespace internal |
57 } // namespace ash | 59 } // namespace ash |
OLD | NEW |