1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00
qTox/widget/friendwidget.h

59 lines
1.5 KiB
C
Raw Normal View History

2014-07-07 00:19:45 +08:00
/*
Copyright (C) 2014 by Project Tox <https://tox.im>
This file is part of qTox, a Qt-based graphical interface for Tox.
This program is libre software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the COPYING file for more details.
*/
2014-06-25 04:11:11 +08:00
#ifndef FRIENDWIDGET_H
#define FRIENDWIDGET_H
#include <QWidget>
#include <QLabel>
#include <QVBoxLayout>
#include <QHBoxLayout>
2014-08-14 15:47:30 +08:00
#include "croppinglabel.h"
2014-06-25 04:11:11 +08:00
struct FriendWidget : public QWidget
{
Q_OBJECT
public:
FriendWidget(int FriendId, QString id);
void mouseReleaseEvent (QMouseEvent* event);
2014-06-28 02:22:53 +08:00
void mousePressEvent(QMouseEvent *event);
2014-06-25 04:11:11 +08:00
void contextMenuEvent(QContextMenuEvent * event);
2014-06-28 02:11:32 +08:00
void enterEvent(QEvent* event);
void leaveEvent(QEvent* event);
2014-06-27 09:47:16 +08:00
void setAsActiveChatroom();
void setAsInactiveChatroom();
2014-08-22 23:19:16 +08:00
int isActive();
2014-06-25 04:11:11 +08:00
signals:
void friendWidgetClicked(FriendWidget* widget);
void removeFriend(int friendId);
void copyFriendIdToClipboard(int friendId);
2014-06-25 04:11:11 +08:00
public:
int friendId;
2014-08-18 16:58:51 +08:00
QLabel avatar, statusPic;
CroppingLabel name, statusMessage;
2014-06-25 04:11:11 +08:00
QHBoxLayout layout;
QVBoxLayout textLayout;
2014-06-28 02:11:32 +08:00
private:
2014-06-28 02:22:53 +08:00
QColor lastColor;
int isActiveWidget;
2014-06-25 04:11:11 +08:00
};
#endif // FRIENDWIDGET_H