]> rtime.felk.cvut.cz Git - sojka/lightdm.git/blobdiff - liblightdm-qt/usersmodel.cpp
Revert the bogus .deps file changes and fix the clean rules
[sojka/lightdm.git] / liblightdm-qt / usersmodel.cpp
index 8bb09a5b1e343f3613899a24a29a93d66126acd9..14d8df1f4484dc0e7c053cd9e4ecd1a1b7bd9ef5 100644 (file)
@@ -29,6 +29,7 @@ public:
     QString session;
     bool isLoggedIn;
     bool hasMessages;
+    quint64 uid;
     QString displayName() const;
 };
 
@@ -66,7 +67,7 @@ UsersModelPrivate::UsersModelPrivate(UsersModel* parent) :
 {
 #if !defined(GLIB_VERSION_2_36)
     g_type_init();
-#endif  
+#endif
 }
 
 UsersModelPrivate::~UsersModelPrivate()
@@ -99,18 +100,17 @@ void UsersModelPrivate::loadUsers()
             user.session = QString::fromUtf8(lightdm_user_get_session(ldmUser));
             user.isLoggedIn = lightdm_user_get_logged_in(ldmUser);
             user.hasMessages = lightdm_user_get_has_messages(ldmUser);
+            user.uid = (quint64)lightdm_user_get_uid(ldmUser);
             users.append(user);
         }
 
         q->endInsertRows();
     }
-    g_signal_connect(lightdm_user_list_get_instance(), "user-added", G_CALLBACK (cb_userAdded), this);
-    g_signal_connect(lightdm_user_list_get_instance(), "user-changed", G_CALLBACK (cb_userChanged), this);
-    g_signal_connect(lightdm_user_list_get_instance(), "user-removed", G_CALLBACK (cb_userRemoved), this);
+    g_signal_connect(lightdm_user_list_get_instance(), LIGHTDM_USER_LIST_SIGNAL_USER_ADDED, G_CALLBACK (cb_userAdded), this);
+    g_signal_connect(lightdm_user_list_get_instance(), LIGHTDM_USER_LIST_SIGNAL_USER_CHANGED, G_CALLBACK (cb_userChanged), this);
+    g_signal_connect(lightdm_user_list_get_instance(), LIGHTDM_USER_LIST_SIGNAL_USER_REMOVED, G_CALLBACK (cb_userRemoved), this);
 }
 
-
-
 void UsersModelPrivate::cb_userAdded(LightDMUserList *user_list, LightDMUser *ldmUser, gpointer data)
 {
     Q_UNUSED(user_list)
@@ -126,6 +126,7 @@ void UsersModelPrivate::cb_userAdded(LightDMUserList *user_list, LightDMUser *ld
     user.background = QString::fromUtf8(lightdm_user_get_background(ldmUser));
     user.isLoggedIn = lightdm_user_get_logged_in(ldmUser);
     user.hasMessages = lightdm_user_get_has_messages(ldmUser);
+    user.uid = (quint64)lightdm_user_get_uid(ldmUser);
     that->users.append(user);
 
     that->q_func()->endInsertRows();
@@ -148,6 +149,7 @@ void UsersModelPrivate::cb_userChanged(LightDMUserList *user_list, LightDMUser *
             that->users[i].background = QString::fromUtf8(lightdm_user_get_background(ldmUser));
             that->users[i].isLoggedIn = lightdm_user_get_logged_in(ldmUser);
             that->users[i].hasMessages = lightdm_user_get_has_messages(ldmUser);
+            that->users[i].uid = (quint64)lightdm_user_get_uid(ldmUser);
 
             QModelIndex index = that->q_ptr->createIndex(i, 0);
             that->q_ptr->dataChanged(index, index);
@@ -185,9 +187,11 @@ UsersModel::UsersModel(QObject *parent) :
     roles[RealNameRole] = "realName";
     roles[LoggedInRole] = "loggedIn";
     roles[BackgroundRole] = "background";
+    roles[BackgroundPathRole] = "backgroundPath";
     roles[SessionRole] = "session";
     roles[HasMessagesRole] = "hasMessages";
     roles[ImagePathRole] = "imagePath";
+    roles[UidRole] = "uid";
     setRoleNames(roles);
     d->loadUsers();
 
@@ -233,14 +237,22 @@ QVariant UsersModel::data(const QModelIndex &index, int role) const
         return d->users[row].isLoggedIn;
     case UsersModel::BackgroundRole:
         return QPixmap(d->users[row].background);
+    case UsersModel::BackgroundPathRole:
+        return d->users[row].background;
     case UsersModel::HasMessagesRole:
         return d->users[row].hasMessages;
     case UsersModel::ImagePathRole:
         return d->users[row].image;
+    case UsersModel::UidRole:
+        return d->users[row].uid;
     }
 
     return QVariant();
 }
 
 
-#include "usersmodel_moc.cpp"
+#if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)
+#include "usersmodel_moc5.cpp"
+#else
+#include "usersmodel_moc4.cpp"
+#endif