Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / athena / system / status_icon_container_view.h
1 // Copyright 2014 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 #ifndef ATHENA_SYSTEM_STATUS_ICON_CONTAINER_VIEW_H_
6 #define ATHENA_SYSTEM_STATUS_ICON_CONTAINER_VIEW_H_
7
8 #include "athena/system/public/system_ui.h"
9 #include "base/memory/scoped_ptr.h"
10 #include "ui/views/view.h"
11
12 namespace athena {
13
14 // View which displays the system tray icons.
15 class StatusIconContainerView : public views::View {
16  public:
17   StatusIconContainerView(SystemUI::ColorScheme color_scheme);
18   ~StatusIconContainerView() override;
19
20  private:
21   // views::View:
22   virtual bool OnMousePressed(const ui::MouseEvent& event) override;
23   virtual void OnGestureEvent(ui::GestureEvent* event) override;
24   virtual void ChildPreferredSizeChanged(views::View* child) override;
25
26   class PowerStatus;
27   scoped_ptr<PowerStatus> power_status_;
28
29   class NetworkStatus;
30   scoped_ptr<NetworkStatus> network_status_;
31
32   class UpdateStatus;
33   scoped_ptr<UpdateStatus> update_status_;
34
35   DISALLOW_COPY_AND_ASSIGN(StatusIconContainerView);
36 };
37
38 }  // namespace athena
39
40 #endif  // ATHENA_SYSTEM_STATUS_ICON_CONTAINER_VIEW_H_