]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blob - libldmgreeter-qt/ldmuser.h
libldmgreeter -> libldmgreeter-gobject
[sojka/lightdm.git] / libldmgreeter-qt / ldmuser.h
1 #ifndef LDMUSER_H
2 #define LDMUSER_H
3
4 #include <QString>
5 #include <QtDBus/QtDBus>
6
7 class LdmUserPrivate;
8
9 //public facing User class
10 class Q_DECL_EXPORT LdmUser
11 {
12 public:
13     explicit LdmUser();
14     LdmUser(const QString& name, const QString& realName, const QString& image, const bool loggedIn);
15     LdmUser(const LdmUser& other);
16     ~LdmUser();
17     LdmUser &operator=(const LdmUser& other);
18
19     /** The name to display (the real name if available, otherwise use the username */
20     QString displayName() const;
21
22     /** The username of the user*/
23     QString name() const;
24     /** The user's real name, use this for displaying*/
25     QString realName() const;
26
27     /** Returns the path to an avatar of this user*/
28     QString image() const;
29
30     /** Returns true if this user is already logged in on another session*/
31     bool isLoggedIn() const;
32
33 //    LdmUser &operator=(const LdmUser user);
34 private:
35     LdmUserPrivate* d;
36 };
37
38 QDBusArgument &operator<<(QDBusArgument &argument, const LdmUser &request);
39 const QDBusArgument &operator>>(const QDBusArgument &argument, LdmUser &request);
40
41 Q_DECLARE_METATYPE(LdmUser);
42 Q_DECLARE_METATYPE(QList<LdmUser>);
43
44 #endif // LDMUSER_H