don't pretend to support dbus on windows in dbus_export.h
[chromium-blink-merge.git] / ash / system / user / tray_user_separator.h
blob003e4cd1d0828888509027c2849cdd1825dd0806
1 // Copyright 2013 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.
5 #ifndef ASH_SYSTEM_USER_TRAY_USER_SEPARATOR_H_
6 #define ASH_SYSTEM_USER_TRAY_USER_SEPARATOR_H_
8 #include "ash/ash_export.h"
9 #include "ash/system/tray/system_tray_item.h"
11 namespace ash {
13 // This tray item is showing an additional separator line between the logged in
14 // users and the rest of the system tray menu. The separator will only be shown
15 // when there are at least two users logged in.
16 class ASH_EXPORT TrayUserSeparator : public SystemTrayItem {
17 public:
18 explicit TrayUserSeparator(SystemTray* system_tray);
19 virtual ~TrayUserSeparator() {}
21 // Returns true if the separator gets shown.
22 bool separator_shown() { return separator_shown_; }
24 private:
25 // Overridden from SystemTrayItem.
26 virtual views::View* CreateTrayView(user::LoginStatus status) OVERRIDE;
27 virtual views::View* CreateDefaultView(user::LoginStatus status) OVERRIDE;
28 virtual views::View* CreateDetailedView(user::LoginStatus status) OVERRIDE;
29 virtual void DestroyTrayView() OVERRIDE {}
30 virtual void DestroyDefaultView() OVERRIDE;
31 virtual void DestroyDetailedView() OVERRIDE {}
32 virtual void UpdateAfterLoginStatusChange(
33 user::LoginStatus status) OVERRIDE {}
34 virtual void UpdateAfterShelfAlignmentChange(
35 ShelfAlignment alignment) OVERRIDE {}
37 // True if the separator gets shown.
38 bool separator_shown_;
40 DISALLOW_COPY_AND_ASSIGN(TrayUserSeparator);
43 } // namespace ash
45 #endif // ASH_SYSTEM_USER_TRAY_USER_SEPARATOR_H_