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

Merge pull request #14 from F1ynn/master

New group chat notification icons
This commit is contained in:
Tux3 / Mlkj / !Lev.uXFMLA 2014-06-28 10:35:11 +02:00
commit 1f11f7bad8
49 changed files with 309 additions and 68 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 128 B

After

Width:  |  Height:  |  Size: 613 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 605 B

After

Width:  |  Height:  |  Size: 796 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 764 B

After

Width:  |  Height:  |  Size: 814 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 807 B

BIN
toxgui Executable file

Binary file not shown.

View File

@ -0,0 +1,72 @@
QPushButton#green
{
background-color: transparent;
background-image: url("ui/callButton/callButton.png");
background-repeat: none;
border: none;
width: 50px;
height: 40px;
}
QPushButton#green:hover
{
background-image: url("ui/callButton/callButtonHover.png");
}
QPushButton#green:pressed
{
background-image: url("ui/callButton/callButtonPressed.png");
}
QPushButton#red
{
background-color: transparent;
background-image: url("ui/callButton/callButtonRed.png");
background-repeat: none;
border: none;
width: 50px;
height: 40px;
}
QPushButton#red:hover
{
background-image: url("ui/callButton/callButtonRedHover.png");
}
QPushButton#red:pressed
{
background-image: url("ui/callButton/callButtonRedPressed.png");
}
QPushButton#yellow
{
background-color: transparent;
background-image: url("ui/callButton/callButtonYellow.png");
background-repeat: none;
border: none;
width: 50px;
height: 40px;
}
QPushButton#yellow:hover
{
background-image: url("ui/callButton/callButtonYellowHover.png");
}
QPushButton#yellow:pressed
{
background-image: url("ui/callButton/callButtonYellowPressed.png");
}
QPushButton#grey
{
background-color: transparent;
background-image: url("ui/callButton/callButtonDisabled.png");
background-repeat: none;
border: none;
width: 50px;
height: 40px;
}
QPushButton:focus {
outline: none;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 974 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 899 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 946 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 980 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 884 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 918 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 951 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 854 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 848 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 897 B

View File

@ -0,0 +1,22 @@
QPushButton
{
background-color: transparent;
background-image: url("ui/emoteButton/emoteButton.png");
background-repeat: none;
border: none;
width: 24px;
height: 24px;
}
QPushButton:hover
{
background-image: url("ui/emoteButton/emoteButtonHover.png");
}
QPushButton:pressed
{
background-image: url("ui/emoteButton/emoteButtonPressed.png");
}
QPushButton:focus {
outline: none;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 758 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 745 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 754 B

View File

@ -0,0 +1,22 @@
QPushButton
{
background-color: transparent;
background-image: url("ui/fileButton/fileButton.png");
background-repeat: none;
border: none;
width: 24px;
height: 24px;
}
QPushButton:hover
{
background-image: url("ui/fileButton/fileButtonHover.png");
}
QPushButton:pressed
{
background-image: url("ui/fileButton/fileButtonPressed.png");
}
QPushButton:focus {
outline: none;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 857 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 848 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 839 B

View File

@ -0,0 +1,22 @@
QPushButton
{
background-color: transparent;
background-image: url("ui/sendButton/sendButton.png");
background-repeat: none;
border: none;
width: 50px;
height: 50px;
}
QPushButton:hover
{
background-image: url("ui/sendButton/sendButtonHover.png");
}
QPushButton:pressed
{
background-image: url("ui/sendButton/sendButtonPressed.png");
}
QPushButton:focus {
outline: none;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@ -0,0 +1,71 @@
QPushButton#green
{
background-color: transparent;
background-image: url("ui/videoButton/videoButton.png");
background-repeat: none;
border: none;
width: 50px;
height: 40px;
}
QPushButton#green:hover
{
background-image: url("ui/videoButton/videoButtonHover.png");
}
QPushButton#green:pressed
{
background-image: url("ui/videoButton/videoButtonPressed.png");
}
QPushButton#red
{
background-color: transparent;
background-image: url("ui/videoButton/videoButtonRed.png");
background-repeat: none;
border: none;
width: 50px;
height: 40px;
}
QPushButton#red:hover
{
background-image: url("ui/videoButton/videoButtonRedHover.png");
}
QPushButton#red:pressed
{
background-image: url("ui/videoButton/videoButtonRedPressed.png");
}
QPushButton#yellow
{
background-color: transparent;
background-image: url("ui/videoButton/videoButtonYellow.png");
background-repeat: none;
border: none;
width: 50px;
height: 40px;
}
QPushButton#yellow:hover
{
background-image: url("ui/videoButton/videoButtonYellowHover.png");
}
QPushButton#yellow:pressed
{
background-image: url("ui/videoButton/videoButtonYellowPressed.png");
}
QPushButton#grey
{
background-color: transparent;
background-image: url("ui/videoButton/videoButtonDisabled.png");
background-repeat: none;
border: none;
width: 50px;
height: 40px;
}
QPushButton:focus {
outline: none;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 636 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 597 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 613 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 617 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 571 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 574 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 574 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 577 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 573 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 572 B

View File

@ -18,7 +18,7 @@ ChatForm::ChatForm(Friend* chatFriend)
headTextLayout = new QVBoxLayout(), mainLayout = new QVBoxLayout(), footButtonsSmall = new QVBoxLayout();
mainChatLayout = new QGridLayout();
msgEdit = new ChatTextEdit();
sendButton = new QPushButton(), fileButton = new QPushButton(), emoteButton = new QPushButton(), callButton = new QPushButton();
sendButton = new QPushButton(), fileButton = new QPushButton(), emoteButton = new QPushButton(), callButton = new QPushButton(), videoButton = new QPushButton();
chatArea = new QScrollArea();
QFont bold;
@ -38,32 +38,68 @@ ChatForm::ChatForm(Friend* chatFriend)
footButtonsSmall->setSpacing(2);
msgEdit->setFixedHeight(50);
QString sendButtonStylesheet = "";
try
{
QFile f("ui/sendButton/sendButton.css");
f.open(QFile::ReadOnly | QFile::Text);
QTextStream sendButtonStylesheetStream(&f);
sendButtonStylesheet = sendButtonStylesheetStream.readAll();
}
catch (int e) {}
sendButton->setStyleSheet(sendButtonStylesheet);
QPalette toxgreen;
toxgreen.setColor(QPalette::Button, QColor(107,194,96)); // Tox Green
sendButton->setIcon(QIcon("img/button icons/sendmessage_2x.png"));
sendButton->setFlat(true);
sendButton->setPalette(toxgreen);
sendButton->setAutoFillBackground(true);
sendButton->setFixedSize(50, 50);
sendButton->setIconSize(QSize(32,32));
fileButton->setIcon(QIcon("img/button icons/attach_2x.png"));
fileButton->setFlat(true);
fileButton->setPalette(toxgreen);
fileButton->setAutoFillBackground(true);
fileButton->setIconSize(QSize(16,16));
fileButton->setFixedSize(24,24);
emoteButton->setIcon(QIcon("img/button icons/emoticon_2x.png"));
emoteButton->setFlat(true);
emoteButton->setPalette(toxgreen);
emoteButton->setAutoFillBackground(true);
emoteButton->setIconSize(QSize(16,16));
emoteButton->setFixedSize(24,24);
callButton->setIcon(QIcon("img/button icons/call_2x.png"));
callButton->setFlat(true);
callButton->setPalette(toxgreen);
callButton->setAutoFillBackground(true);
callButton->setIconSize(QSize(25,25));
callButton->setFixedSize(50,40);
QString fileButtonStylesheet = "";
try
{
QFile f("ui/fileButton/fileButton.css");
f.open(QFile::ReadOnly | QFile::Text);
QTextStream fileButtonStylesheetStream(&f);
fileButtonStylesheet = fileButtonStylesheetStream.readAll();
}
catch (int e) {}
fileButton->setStyleSheet(fileButtonStylesheet);
QString emoteButtonStylesheet = "";
try
{
QFile f("ui/emoteButton/emoteButton.css");
f.open(QFile::ReadOnly | QFile::Text);
QTextStream emoteButtonStylesheetStream(&f);
emoteButtonStylesheet = emoteButtonStylesheetStream.readAll();
}
catch (int e) {}
emoteButton->setStyleSheet(emoteButtonStylesheet);
QString callButtonStylesheet = "";
try
{
QFile f("ui/callButton/callButton.css");
f.open(QFile::ReadOnly | QFile::Text);
QTextStream callButtonStylesheetStream(&f);
callButtonStylesheet = callButtonStylesheetStream.readAll();
}
catch (int e) {}
callButton->setObjectName("green");
callButton->setStyleSheet(callButtonStylesheet);
QString videoButtonStylesheet = "";
try
{
QFile f("ui/videoButton/videoButton.css");
f.open(QFile::ReadOnly | QFile::Text);
QTextStream videoButtonStylesheetStream(&f);
videoButtonStylesheet = videoButtonStylesheetStream.readAll();
}
catch (int e) {}
videoButton->setObjectName("green");
videoButton->setStyleSheet(videoButtonStylesheet);
main->setLayout(mainLayout);
mainLayout->addWidget(chatArea);
@ -84,6 +120,7 @@ ChatForm::ChatForm(Friend* chatFriend)
headLayout->addLayout(headTextLayout);
headLayout->addStretch();
headLayout->addWidget(callButton);
headLayout->addWidget(videoButton);
headTextLayout->addStretch();
headTextLayout->addWidget(name);
@ -290,9 +327,8 @@ void ChatForm::onAvInvite(int FriendId, int CallId)
if (FriendId != f->friendId)
return;
callId = CallId;
QPalette callinvitePal;
callinvitePal.setColor(QPalette::Button, QColor(206, 191, 69)); // Call invite orange
callButton->setPalette(callinvitePal);
callButton->setObjectName("yellow");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onAnswerCallTriggered()));
}
@ -302,9 +338,8 @@ void ChatForm::onAvStart(int FriendId, int CallId)
if (FriendId != f->friendId)
return;
callId = CallId;
QPalette toxred;
toxred.setColor(QPalette::Button, QColor(200,78,78)); // Tox Red
callButton->setPalette(toxred);
callButton->setObjectName("red");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onHangupCallTriggered()));
}
@ -313,9 +348,8 @@ void ChatForm::onAvCancel(int FriendId, int)
{
if (FriendId != f->friendId)
return;
QPalette toxgreen;
toxgreen.setColor(QPalette::Button, QColor(107,194,96)); // Tox Green
callButton->setPalette(toxgreen);
callButton->setObjectName("red");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onCallTriggered()));
}
@ -324,9 +358,8 @@ void ChatForm::onAvEnd(int FriendId, int)
{
if (FriendId != f->friendId)
return;
QPalette toxgreen;
toxgreen.setColor(QPalette::Button, QColor(107,194,96)); // Tox Green
callButton->setPalette(toxgreen);
callButton->setObjectName("green");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onCallTriggered()));
}
@ -336,9 +369,8 @@ void ChatForm::onAvRinging(int FriendId, int CallId)
if (FriendId != f->friendId)
return;
callId = CallId;
QPalette pal;
pal.setColor(QPalette::Button, Qt::gray); // Call ringing grey
callButton->setPalette(pal);
callButton->setObjectName("grey");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onCancelCallTriggered()));
}
@ -347,9 +379,8 @@ void ChatForm::onAvStarting(int FriendId, int)
{
if (FriendId != f->friendId)
return;
QPalette toxred;
toxred.setColor(QPalette::Button, QColor(200,78,78)); // Tox Red
callButton->setPalette(toxred);
callButton->setObjectName("red");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onHangupCallTriggered()));
}
@ -358,9 +389,8 @@ void ChatForm::onAvEnding(int FriendId, int)
{
if (FriendId != f->friendId)
return;
QPalette toxgreen;
toxgreen.setColor(QPalette::Button, QColor(107,194,96)); // Tox Green
callButton->setPalette(toxgreen);
callButton->setObjectName("green");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onCallTriggered()));
}
@ -369,9 +399,8 @@ void ChatForm::onAvRequestTimeout(int FriendId, int)
{
if (FriendId != f->friendId)
return;
QPalette toxgreen;
toxgreen.setColor(QPalette::Button, QColor(107,194,96)); // Tox Green
callButton->setPalette(toxgreen);
callButton->setObjectName("green");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onCallTriggered()));
}
@ -380,9 +409,8 @@ void ChatForm::onAvPeerTimeout(int FriendId, int)
{
if (FriendId != f->friendId)
return;
QPalette toxgreen;
toxgreen.setColor(QPalette::Button, QColor(107,194,96)); // Tox Green
callButton->setPalette(toxgreen);
callButton->setObjectName("green");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onCallTriggered()));
}
@ -405,9 +433,8 @@ void ChatForm::onCallTriggered()
void ChatForm::onCancelCallTriggered()
{
QPalette toxgreen;
toxgreen.setColor(QPalette::Button, QColor(107,194,96)); // Tox Green
callButton->setPalette(toxgreen);
callButton->setObjectName("green");
callButton->style()->polish(callButton);
callButton->disconnect();
connect(callButton, SIGNAL(clicked()), this, SLOT(onCallTriggered()));
emit cancelCall(callId, f->friendId);

View File

@ -72,7 +72,7 @@ private:
QGridLayout *mainChatLayout;
QLabel *avatar, *name, *statusMessage;
ChatTextEdit *msgEdit;
QPushButton *sendButton, *fileButton, *emoteButton, *callButton;
QPushButton *sendButton, *fileButton, *emoteButton, *callButton, *videoButton;
QScrollArea *chatArea;
QWidget *main, *head, *chatAreaWidget;
QString previousName;

View File

@ -45,13 +45,17 @@ GroupChatForm::GroupChatForm(Group* chatGroup)
mainChatLayout->setColumnStretch(1,1);
mainChatLayout->setHorizontalSpacing(10);
sendButton->setIcon(QIcon("img/button icons/sendmessage_2x.png"));
sendButton->setIconSize(QSize(32,32));
sendButton->setFlat(true);
QPalette pal;
pal.setColor(QPalette::Button, QColor(107,194,96)); // Tox Green
sendButton->setPalette(pal);
sendButton->setAutoFillBackground(true);
QString sendButtonStylesheet = "";
try
{
QFile f("ui/sendButton/sendButton.css");
f.open(QFile::ReadOnly | QFile::Text);
QTextStream sendButtonStylesheetStream(&f);
sendButtonStylesheet = sendButtonStylesheetStream.readAll();
}
catch (int e) {}
sendButton->setStyleSheet(sendButtonStylesheet);
msgEdit->setFixedHeight(50);
sendButton->setFixedSize(50, 50);

View File

@ -350,13 +350,13 @@ void Widget::onFriendMessageReceived(int friendId, const QString& message)
if ((f->friendId != f2->friendId) || isFriendWidgetActive == 0)
{
f->hasNewMessages = 1;
playMessageNotification();
newMessageAlert();
}
}
else
{
f->hasNewMessages = 1;
playMessageNotification();
newMessageAlert();
}
updateFriendStatusLights(friendId);
@ -380,8 +380,9 @@ void Widget::updateFriendStatusLights(int friendId)
f->widget->statusPic.setPixmap(QPixmap("img/status/dot_away_notification.png"));
}
void Widget::playMessageNotification()
void Widget::newMessageAlert()
{
QApplication::alert(this, 1000);
QSound::play("audio/notification.wav");
}
@ -427,7 +428,7 @@ void Widget::onGroupMessageReceived(int groupnumber, int friendgroupnumber, cons
{
if (message.contains(Settings::getInstance().getUsername(), Qt::CaseInsensitive))
{
playMessageNotification();
newMessageAlert();
g->hasNewMessages = 1;
g->userWasMentioned = 1;
g->widget->statusPic.setPixmap(QPixmap("img/status/dot_groupchat_notification.png"));

View File

@ -84,7 +84,7 @@ private:
GroupWidget* activeGroupWidget;
void updateFriendStatusLights(int friendId);
int isFriendWidgetActive, isGroupWidgetActive;
void playMessageNotification();
void newMessageAlert();
};
#endif // WIDGET_H