4 #include "friendlistitem.h"
5 #include "friendlistitemdelegate.h"
6 #include "friendlistview.h"
7 #include "imagebutton.h"
8 #include "panelcommon.h"
11 #include "meetpeoplepanel.h"
13 MeetPeoplePanel::MeetPeoplePanel(QWidget *parent)
16 qDebug() << __PRETTY_FUNCTION__;
18 QVBoxLayout *meetPeopleLayout = new QVBoxLayout;
19 meetPeopleLayout->setMargin(0);
20 meetPeopleLayout->setSpacing(0);
21 setLayout(meetPeopleLayout);
23 m_nearbyFriendListView = new FriendListView(this);
24 m_nearbyFriendListView->setItemDelegate(new FriendListItemDelegate(this));
26 QVBoxLayout *listViewLayout = new QVBoxLayout;
27 listViewLayout->setContentsMargins(PANEL_MARGIN_LEFT, PANEL_MARGIN_TOP,
28 PANEL_MARGIN_RIGHT, PANEL_MARGIN_BOTTOM);
29 listViewLayout->addWidget(m_nearbyFriendListView);
30 meetPeopleLayout->addLayout(listViewLayout);
32 ImageButton *searchPeopleButton = new ImageButton(0, ":/res/images/search.png",
33 ":/res/images/search_s.png");
34 m_contextButtonList.append(searchPeopleButton);
36 m_chatButton = new ImageButton(0, ":/res/images/chat_button", ":/res/images/chat_button_s.png");
37 m_contextButtonList.append(m_chatButton);
39 connect(m_nearbyFriendListView, SIGNAL(listItemSelectionChanged()),
40 this, SLOT(setChatButtonDisabled()));
43 void MeetPeoplePanel::friendImageReady(User *user)
45 qDebug() << __PRETTY_FUNCTION__;
47 FriendListItem *item =
48 static_cast<FriendListItem*>(m_nearbyFriendListView->listItem(user->userId()));
51 item->setAvatarImage(user->profileImage());
54 void MeetPeoplePanel::populateNearbyFriendListView(QList<User *> &nearbyFriendList)
56 qDebug() << __PRETTY_FUNCTION__;
58 foreach (User *nearbyFriend, nearbyFriendList) {
59 FriendListItem *item = new FriendListItem();
60 item->setUserData(nearbyFriend);
61 m_nearbyFriendListView->addListItem(nearbyFriend->userId(), item);
64 m_nearbyFriendListView->scrollToTop();
67 void MeetPeoplePanel::setChatButtonDisabled()
69 qDebug() << __PRETTY_FUNCTION__;
71 m_chatButton->setDisabled(m_nearbyFriendListView->selectedItems().isEmpty());