2 Situare - A location system for Facebook
3 Copyright (C) 2010 Ixonos Plc. Authors:
5 Jussi Laitinen - jussi.laitinen@ixonos.com
7 Situare is free software; you can redistribute it and/or
8 modify it under the terms of the GNU General Public License
9 version 2 as published by the Free Software Foundation.
11 Situare is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with Situare; if not, write to the Free Software
18 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
22 #ifndef MEETPEOPLEPANEL_H
23 #define MEETPEOPLEPANEL_H
27 #include "panelbase.h"
36 class MeetPeoplePanel : public PanelBase
42 * @brief Unit test class
44 friend class TestMeetPeoplePanel;
47 * @brief Default constructor
51 MeetPeoplePanel(QWidget *parent = 0);
53 /*******************************************************************************
54 * BASE CLASS INHERITED AND REIMPLEMENTED MEMBER FUNCTIONS
55 ******************************************************************************/
58 * @brief Re-implemented from QWidget::hideEvent()
60 * Calls clear item selection to list.
64 void hideEvent(QHideEvent *event);
68 * @brief Called when any of the panel tabs is closed
70 * Calls clear item selection to list.
72 void anyPanelClosed();
75 * @brief Called when message button is pressed.
77 * Calls requestMessageDialog with message receiver's ID and name
79 void messageButtonPressed();
82 * @brief Sets person's image.
85 * @param image image pixmap
87 void setImage(const QString &id, const QPixmap &image);
90 * Shows selected friend in friend list
92 * Emits requestShowFriend with selected friend from list
97 * @brief Populates interesting people list view.
99 * @param interestingPeople list of interesting people
101 void populateInterestingPeopleListView(QList<User> &interestingPeople);
105 * @brief Signal for person finding
107 * @param coordinates Target coordinate
109 void findPerson(const GeoCoordinate &coordinates);
112 * @brief Requests interesting people from current map viewport.
114 * Interesting people is defined by people with same tags as user has.
116 void requestInterestingPeople();
119 * @brief Requests interesting people search.
121 void requestInterestingPeopleSearch();
124 * @brief Requests message dialog.
125 * @param receiver receiver facebook ID and name
127 void requestMessageDialog(const QPair<QString, QString> &receiver);
130 * @brief Requests to show friend in friend list.
132 * @param userIDs list of friends' user IDs
134 void requestShowFriend(const QList<QString> &userIDs);
137 PersonListView *m_personListView; ///< Interesting people list view
138 ImageButton *m_chatButton; ///< Chat button
141 #endif // MEETPEOPLEPANEL_H