From 8e6d37e23c0e500410da28c4b2d057839aca52b2 Mon Sep 17 00:00:00 2001 From: ingvar1995 Date: Mon, 17 Jul 2017 21:53:35 +0300 Subject: [PATCH] minimal working functionality --- toxygen/callbacks.py | 7 ++++--- toxygen/group_chat.py | 15 ++++++++++++++ toxygen/images/group.png | Bin 0 -> 4142 bytes toxygen/mainscreen.py | 7 +++++++ toxygen/profile.py | 43 ++++++++++++++++++++++++++++++--------- toxygen/tox.py | 29 ++++++++++++++++++-------- 6 files changed, 79 insertions(+), 22 deletions(-) create mode 100644 toxygen/images/group.png diff --git a/toxygen/callbacks.py b/toxygen/callbacks.py index 7028f97..6cc88c0 100644 --- a/toxygen/callbacks.py +++ b/toxygen/callbacks.py @@ -380,17 +380,18 @@ def video_receive_frame(toxav, friend_number, width, height, y, u, v, ystride, u def group_invite(tox, friend_number, gc_type, data, length, user_data): - invoke_in_main_thread(Profile.get_instance().group_invite, friend_number, gc_type, data[:length]) + invoke_in_main_thread(Profile.get_instance().group_invite, friend_number, gc_type, + bytes(data[:length])) def group_message(tox, group_number, peer_number, message, length, user_data): invoke_in_main_thread(Profile.get_instance().new_gc_message, group_number, - peer_number, TOX_MESSAGE_TYPE['NORMAL'], message[:length]) + peer_number, TOX_MESSAGE_TYPE['NORMAL'], str(message, 'utf-8')) def group_action(tox, group_number, peer_number, message, length, user_data): invoke_in_main_thread(Profile.get_instance().new_gc_message, group_number, - peer_number, TOX_MESSAGE_TYPE['ACTION'], message[:length]) + peer_number, TOX_MESSAGE_TYPE['ACTION'], str(message, 'utf-8')) def group_title(tox, group_number, peer_number, title, length, user_data): diff --git a/toxygen/group_chat.py b/toxygen/group_chat.py index 563d494..fe009b7 100644 --- a/toxygen/group_chat.py +++ b/toxygen/group_chat.py @@ -1,4 +1,7 @@ import contact +import util +from PyQt5 import QtGui, QtCore +import toxcore_enums_and_consts as cnst class GroupChat(contact.Contact): @@ -6,6 +9,7 @@ class GroupChat(contact.Contact): def __init__(self, name, status_message, widget, tox, group_number): super().__init__(None, group_number, name, status_message, widget, None) self._tox = tox + self._status = cnst.TOX_USER_STATUS['NONE'] def set_name(self, name): self._tox.group_set_title(self._number, name) @@ -16,3 +20,14 @@ class GroupChat(contact.Contact): def new_title(self, title): super().set_name(title) + + def load_avatar(self): + path = util.curr_directory() + '/images/group.png' + width = self._widget.avatar_label.width() + pixmap = QtGui.QPixmap(path) + self._widget.avatar_label.setPixmap(pixmap.scaled(width, width, QtCore.Qt.KeepAspectRatio, + QtCore.Qt.SmoothTransformation)) + self._widget.avatar_label.repaint() + + def remove_invalid_unsent_files(self): + pass diff --git a/toxygen/images/group.png b/toxygen/images/group.png new file mode 100644 index 0000000000000000000000000000000000000000..22adab0a66b1b939ae0c9b6fee5d0781c41b91c0 GIT binary patch literal 4142 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