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
3// found in the LICENSE file.
4
5#include "ash/system/tray/tray_empty.h"
6
7#include "ui/views/layout/box_layout.h"
8#include "ui/views/background.h"
9#include "ui/views/border.h"
10#include "ui/views/view.h"
11
12namespace {
13
14class EmptyBackground : public views::Background {
15 public:
16  EmptyBackground() {}
17  virtual ~EmptyBackground() {}
18
19 private:
20  virtual void Paint(gfx::Canvas* canvas, views::View* view) const OVERRIDE {
21  }
22
23  DISALLOW_COPY_AND_ASSIGN(EmptyBackground);
24};
25
26}
27
28namespace ash {
29
30TrayEmpty::TrayEmpty(SystemTray* system_tray)
31    : SystemTrayItem(system_tray) {
32}
33
34TrayEmpty::~TrayEmpty() {}
35
36views::View* TrayEmpty::CreateTrayView(user::LoginStatus status) {
37  return NULL;
38}
39
40views::View* TrayEmpty::CreateDefaultView(user::LoginStatus status) {
41  if (status == user::LOGGED_IN_NONE)
42    return NULL;
43
44  views::View* view = new views::View;
45  view->set_background(new EmptyBackground());
46  view->SetBorder(views::Border::CreateEmptyBorder(10, 0, 0, 0));
47  view->SetLayoutManager(new views::BoxLayout(views::BoxLayout::kVertical,
48        0, 0, 0));
49  view->SetPaintToLayer(true);
50  view->SetFillsBoundsOpaquely(false);
51  return view;
52}
53
54views::View* TrayEmpty::CreateDetailedView(user::LoginStatus status) {
55  return NULL;
56}
57
58void TrayEmpty::DestroyTrayView() {}
59
60void TrayEmpty::DestroyDefaultView() {}
61
62void TrayEmpty::DestroyDetailedView() {}
63
64void TrayEmpty::UpdateAfterLoginStatusChange(user::LoginStatus status) {}
65
66}  // namespace ash
67