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.
5 #ifndef ASH_SYSTEM_USER_USER_CARD_VIEW_H_
6 #define ASH_SYSTEM_USER_USER_CARD_VIEW_H_
8 #include "ash/system/user/login_status.h"
9 #include "base/macros.h"
10 #include "ui/views/view.h"
15 // The view displaying information about the user, such as user's avatar, email
16 // address, name, and more. View has no borders.
17 class UserCardView
: public views::View
{
19 // |max_width| takes effect only if |login_status| is LOGGED_IN_PUBLIC.
20 UserCardView(user::LoginStatus login_status
,
22 int multiprofile_index
);
23 ~UserCardView() override
;
25 // views::View overrides.
26 void GetAccessibleState(ui::AXViewState
* state
) override
;
29 // Creates the content for the public mode.
30 void AddPublicModeUserContent(int max_width
);
32 void AddUserContent(user::LoginStatus login_status
, int multiprofile_index
);
34 // Create a user icon representation.
35 views::View
* CreateIcon(user::LoginStatus login_status
,
36 int multiprofile_index
);
38 DISALLOW_COPY_AND_ASSIGN(UserCardView
);
44 #endif // ASH_SYSTEM_USER_USER_CARD_VIEW_H_