QString session;
bool isLoggedIn;
bool hasMessages;
+ quint64 uid;
QString displayName() const;
};
{
#if !defined(GLIB_VERSION_2_36)
g_type_init();
-#endif
+#endif
}
UsersModelPrivate::~UsersModelPrivate()
{
- g_signal_handlers_disconnect_by_func(lightdm_user_list_get_instance(), NULL, this);
+ g_signal_handlers_disconnect_by_data(lightdm_user_list_get_instance(), this);
}
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)
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();
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);
// Extend roleNames (we want to keep the "display" role)
QHash<int, QByteArray> roles = roleNames();
roles[NameRole] = "name";
+ 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();
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