~lightdm-team/lightdm/1.4

« back to all changes in this revision

Viewing changes to greeters/qt/loginprompt.cpp

  • Committer: David Edmundson
  • Date: 2011-05-22 11:19:24 UTC
  • mto: This revision was merged to the branch mainline in revision 461.
  • Revision ID: david@davidedmundson.co.uk-20110522111924-aar5y8f75tm9q9xh
Added a users model

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
#include <QLightDM/Language>
7
7
 
8
8
#include <QListWidgetItem>
 
9
#include <QLightDM/usersmodel.h>
9
10
 
10
11
LoginPrompt::LoginPrompt(QLightDM::Greeter *greeter, QWidget *parent) :
11
12
    QWidget(parent),
14
15
{
15
16
    ui->setupUi(this);
16
17
    ui->feedbackLabel->setText(QString());
17
 
 
18
 
    m_greeter->connectToServer();
19
 
 
 
18
    
20
19
    ui->hostnameLabel->setText(m_greeter->hostname());
21
 
 
22
 
    QList<QLightDM::User*> users = m_greeter->users();
23
 
    foreach(QLightDM::User *user, users) {
24
 
        QListWidgetItem* item = new QListWidgetItem(user->displayName(), ui->userList);
25
 
        item->setData(Qt::UserRole, user->name());
26
 
        if(user->image().isEmpty())         {
27
 
            item->setIcon(QIcon::fromTheme("user-identity"));
28
 
        } else {
29
 
            item->setIcon(QIcon(user->image()));
30
 
        }
31
 
 
32
 
    }
 
20
    
 
21
    QLightDM::UsersModel *usersModel = new QLightDM::UsersModel(greeter->config(), this);
 
22
    ui->userListView->setModel(usersModel);
33
23
 
34
24
    connect(ui->loginButton, SIGNAL(released()), SLOT(onLoginButtonClicked()));
35
25
    connect(m_greeter, SIGNAL(authenticationComplete(bool)), SLOT(onAuthenticationComplete(bool)));
41
31
    delete ui;
42
32
}
43
33
 
 
34
 
44
35
void LoginPrompt::onLoginButtonClicked()
45
36
{
46
37
    ui->feedbackLabel->setText(QString());
47
 
    if (ui->userList->currentItem()) {
48
 
        m_greeter->startAuthentication(ui->userList->currentItem()->data(Qt::UserRole).toString());
 
38
    if (ui->userListView->currentIndex().isValid()) {
 
39
        m_greeter->startAuthentication(ui->userListView->currentIndex().data(Qt::UserRole).toString());
49
40
    }
50
41
}
51
42