friends column converted to .ui. added gc invites button
This commit is contained in:
parent
603dfd40b5
commit
10a77960dc
7 changed files with 94 additions and 86 deletions
|
@ -25,7 +25,7 @@ class ContactsManager(ToxSave):
|
||||||
self._sorting = settings['sorting']
|
self._sorting = settings['sorting']
|
||||||
self._filter_string = ''
|
self._filter_string = ''
|
||||||
self._friend_item_height = 40 if settings['compact_mode'] else 70
|
self._friend_item_height = 40 if settings['compact_mode'] else 70
|
||||||
screen.online_contacts.setCurrentIndex(int(self._sorting))
|
#screen.online_contacts.setCurrentIndex(int(self._sorting))
|
||||||
self._history = history
|
self._history = history
|
||||||
self._load_contacts()
|
self._load_contacts()
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ class Profile(basecontact.BaseContact, tox_save.ToxSave):
|
||||||
profile_manager,
|
profile_manager,
|
||||||
tox.self_get_name(),
|
tox.self_get_name(),
|
||||||
tox.self_get_status_message(),
|
tox.self_get_status_message(),
|
||||||
screen.user_info,
|
screen,
|
||||||
tox.self_get_address())
|
tox.self_get_address())
|
||||||
tox_save.ToxSave.__init__(self, tox)
|
tox_save.ToxSave.__init__(self, tox)
|
||||||
self._screen = screen
|
self._screen = screen
|
||||||
|
|
|
@ -11,6 +11,7 @@ class GroupsService(tox_save.ToxSave):
|
||||||
super().__init__(tox)
|
super().__init__(tox)
|
||||||
self._contacts_manager = contacts_manager
|
self._contacts_manager = contacts_manager
|
||||||
self._contacts_provider = contacts_provider
|
self._contacts_provider = contacts_provider
|
||||||
|
self._main_screen = main_screen
|
||||||
self._peers_list_widget = main_screen.peers_list
|
self._peers_list_widget = main_screen.peers_list
|
||||||
self._widgets_factory_provider = widgets_factory_provider
|
self._widgets_factory_provider = widgets_factory_provider
|
||||||
self._group_invites = []
|
self._group_invites = []
|
||||||
|
@ -70,22 +71,29 @@ class GroupsService(tox_save.ToxSave):
|
||||||
friend = self._get_friend_by_number(friend_number)
|
friend = self._get_friend_by_number(friend_number)
|
||||||
invite = GroupInvite(friend.tox_id, group_name, invite_data)
|
invite = GroupInvite(friend.tox_id, group_name, invite_data)
|
||||||
self._group_invites.append(invite)
|
self._group_invites.append(invite)
|
||||||
# TODO: notification on main screen
|
self._main_screen.update_gc_invites_button_state()
|
||||||
|
|
||||||
def accept_group_invite(self, invite, name, status, password):
|
def accept_group_invite(self, invite, name, status, password):
|
||||||
pk = invite.friend_public_key
|
pk = invite.friend_public_key
|
||||||
friend = self._get_friend_by_public_key(pk)
|
friend = self._get_friend_by_public_key(pk)
|
||||||
self._join_gc_via_invite(invite.invite_data, friend.number, name, status, password)
|
self._join_gc_via_invite(invite.invite_data, friend.number, name, status, password)
|
||||||
self._delete_group_invite(invite)
|
self._delete_group_invite(invite)
|
||||||
|
self._main_screen.update_gc_invites_button_state()
|
||||||
|
|
||||||
def decline_group_invite(self, invite):
|
def decline_group_invite(self, invite):
|
||||||
self._delete_group_invite(invite)
|
self._delete_group_invite(invite)
|
||||||
|
self._main_screen.update_gc_invites_button_state()
|
||||||
|
|
||||||
def get_group_invites(self):
|
def get_group_invites(self):
|
||||||
return self._group_invites[:]
|
return self._group_invites[:]
|
||||||
|
|
||||||
group_invites = property(get_group_invites)
|
group_invites = property(get_group_invites)
|
||||||
|
|
||||||
|
def get_group_invites_count(self):
|
||||||
|
return len(self._group_invites)
|
||||||
|
|
||||||
|
group_invites_count = property(get_group_invites_count)
|
||||||
|
|
||||||
# -----------------------------------------------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------------------------------------------
|
||||||
# Group info methods
|
# Group info methods
|
||||||
# -----------------------------------------------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------------------------------------------
|
||||||
|
|
|
@ -1253,7 +1253,7 @@ MessageBrowser
|
||||||
background-color: #1E90FF;
|
background-color: #1E90FF;
|
||||||
}
|
}
|
||||||
|
|
||||||
#friends_list:item:selected
|
#friendsListWidget:item:selected
|
||||||
{
|
{
|
||||||
background-color: #333333;
|
background-color: #333333;
|
||||||
}
|
}
|
||||||
|
@ -1277,7 +1277,7 @@ QListWidget > QLabel
|
||||||
color: #A9A9A9;
|
color: #A9A9A9;
|
||||||
}
|
}
|
||||||
|
|
||||||
#contact_name
|
#searchLineEdit
|
||||||
{
|
{
|
||||||
padding-left: 22px;
|
padding-left: 22px;
|
||||||
}
|
}
|
||||||
|
@ -1327,3 +1327,9 @@ ClickableLabel:hover
|
||||||
{
|
{
|
||||||
color: #BC1C1C;
|
color: #BC1C1C;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#groupInvitesPushButton
|
||||||
|
{
|
||||||
|
background-color: #009c00;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
#contact_name
|
#searchLineEdit
|
||||||
{
|
{
|
||||||
padding-left: 22px;
|
padding-left: 22px;
|
||||||
}
|
}
|
||||||
|
@ -32,3 +32,9 @@ MessageEdit
|
||||||
{
|
{
|
||||||
color: #BC1C1C;
|
color: #BC1C1C;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#groupInvitesPushButton
|
||||||
|
{
|
||||||
|
background-color: #009c00;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,7 @@ from ui.widgets import MultilineEdit, ComboBox
|
||||||
from ui.main_screen_widgets import *
|
from ui.main_screen_widgets import *
|
||||||
import utils.util as util
|
import utils.util as util
|
||||||
import utils.ui as util_ui
|
import utils.ui as util_ui
|
||||||
|
from PyQt5 import uic
|
||||||
|
|
||||||
|
|
||||||
class MainWindow(QtWidgets.QMainWindow):
|
class MainWindow(QtWidgets.QMainWindow):
|
||||||
|
@ -38,6 +39,8 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
self._contacts_manager.active_contact_changed.add_callback(self._new_contact_selected)
|
self._contacts_manager.active_contact_changed.add_callback(self._new_contact_selected)
|
||||||
self.messageEdit.set_messenger(messenger)
|
self.messageEdit.set_messenger(messenger)
|
||||||
|
|
||||||
|
self.update_gc_invites_button_state()
|
||||||
|
|
||||||
def show(self):
|
def show(self):
|
||||||
super().show()
|
super().show()
|
||||||
self._contacts_manager.update()
|
self._contacts_manager.update()
|
||||||
|
@ -163,19 +166,21 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
self.audioSettings.setText(util_ui.tr("Audio"))
|
self.audioSettings.setText(util_ui.tr("Audio"))
|
||||||
self.videoSettings.setText(util_ui.tr("Video"))
|
self.videoSettings.setText(util_ui.tr("Video"))
|
||||||
self.updateSettings.setText(util_ui.tr("Updates"))
|
self.updateSettings.setText(util_ui.tr("Updates"))
|
||||||
self.contact_name.setPlaceholderText(util_ui.tr("Search"))
|
|
||||||
|
self.searchLineEdit.setPlaceholderText(util_ui.tr("Search"))
|
||||||
self.sendMessageButton.setToolTip(util_ui.tr("Send message"))
|
self.sendMessageButton.setToolTip(util_ui.tr("Send message"))
|
||||||
self.callButton.setToolTip(util_ui.tr("Start audio call with friend"))
|
self.callButton.setToolTip(util_ui.tr("Start audio call with friend"))
|
||||||
self.online_contacts.clear()
|
self.contactsFilterComboBox.clear()
|
||||||
self.online_contacts.addItem(util_ui.tr("All"))
|
self.contactsFilterComboBox.addItem(util_ui.tr("All"))
|
||||||
self.online_contacts.addItem(util_ui.tr("Online"))
|
self.contactsFilterComboBox.addItem(util_ui.tr("Online"))
|
||||||
self.online_contacts.addItem(util_ui.tr("Online first"))
|
self.contactsFilterComboBox.addItem(util_ui.tr("Online first"))
|
||||||
self.online_contacts.addItem(util_ui.tr("Name"))
|
self.contactsFilterComboBox.addItem(util_ui.tr("Name"))
|
||||||
self.online_contacts.addItem(util_ui.tr("Online and by name"))
|
self.contactsFilterComboBox.addItem(util_ui.tr("Online and by name"))
|
||||||
self.online_contacts.addItem(util_ui.tr("Online first and by name"))
|
self.contactsFilterComboBox.addItem(util_ui.tr("Online first and by name"))
|
||||||
|
|
||||||
ind = self._settings['sorting']
|
ind = self._settings['sorting']
|
||||||
d = {0: 0, 1: 1, 2: 2, 3: 4, 4: 3, 1 | 4: 4, 2 | 4: 5}
|
d = {0: 0, 1: 1, 2: 2, 3: 4, 4: 3, 1 | 4: 4, 2 | 4: 5}
|
||||||
self.online_contacts.setCurrentIndex(d[ind])
|
self.contactsFilterComboBox.setCurrentIndex(d[ind])
|
||||||
self.importPlugin.setText(util_ui.tr("Import plugin"))
|
self.importPlugin.setText(util_ui.tr("Import plugin"))
|
||||||
self.reloadPlugins.setText(util_ui.tr("Reload plugins"))
|
self.reloadPlugins.setText(util_ui.tr("Reload plugins"))
|
||||||
|
|
||||||
|
@ -208,54 +213,48 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
|
|
||||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||||
|
|
||||||
def setup_left_center_menu(self, Form):
|
def setup_left_column(self, left_column):
|
||||||
Form.resize(270, 25)
|
uic.loadUi(util.get_views_path('ms_left_column'), left_column)
|
||||||
self.search_label = QtWidgets.QLabel(Form)
|
|
||||||
self.search_label.setGeometry(QtCore.QRect(3, 2, 20, 20))
|
|
||||||
pixmap = QtGui.QPixmap()
|
pixmap = QtGui.QPixmap()
|
||||||
pixmap.load(util.join_path(util.get_images_directory(), 'search.png'))
|
pixmap.load(util.join_path(util.get_images_directory(), 'search.png'))
|
||||||
self.search_label.setScaledContents(False)
|
left_column.searchLabel.setPixmap(pixmap)
|
||||||
self.search_label.setPixmap(pixmap)
|
|
||||||
|
|
||||||
self.contact_name = LineEdit(Form)
|
self.name = DataLabel(left_column)
|
||||||
self.contact_name.setObjectName('contact_name')
|
self.name.setGeometry(QtCore.QRect(75, 15, 150, 25))
|
||||||
self.contact_name.setGeometry(QtCore.QRect(0, 0, 150, 25))
|
|
||||||
self.contact_name.textChanged.connect(self.filtering)
|
|
||||||
|
|
||||||
self.online_contacts = ComboBox(Form)
|
|
||||||
self.online_contacts.setGeometry(QtCore.QRect(150, 0, 120, 25))
|
|
||||||
self.online_contacts.activated[int].connect(lambda x: self.filtering())
|
|
||||||
self.search_label.raise_()
|
|
||||||
|
|
||||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
|
||||||
|
|
||||||
def setup_left_top(self, Form):
|
|
||||||
Form.setCursor(QtCore.Qt.PointingHandCursor)
|
|
||||||
Form.setMinimumSize(QtCore.QSize(270, 75))
|
|
||||||
Form.setMaximumSize(QtCore.QSize(270, 75))
|
|
||||||
Form.setBaseSize(QtCore.QSize(270, 75))
|
|
||||||
self.avatar_label = Form.avatar_label = QtWidgets.QLabel(Form)
|
|
||||||
self.avatar_label.setGeometry(QtCore.QRect(5, 5, 64, 64))
|
|
||||||
self.avatar_label.setScaledContents(False)
|
|
||||||
self.avatar_label.setAlignment(QtCore.Qt.AlignCenter)
|
|
||||||
self.name = Form.name = DataLabel(Form)
|
|
||||||
Form.name.setGeometry(QtCore.QRect(75, 15, 150, 25))
|
|
||||||
font = QtGui.QFont()
|
font = QtGui.QFont()
|
||||||
font.setFamily(self._settings['font'])
|
font.setFamily(self._settings['font'])
|
||||||
font.setPointSize(14)
|
font.setPointSize(14)
|
||||||
font.setBold(True)
|
font.setBold(True)
|
||||||
Form.name.setFont(font)
|
self.name.setFont(font)
|
||||||
self.status_message = Form.status_message = DataLabel(Form)
|
|
||||||
Form.status_message.setGeometry(QtCore.QRect(75, 35, 170, 25))
|
self.status_message = DataLabel(left_column)
|
||||||
font.setPointSize(12)
|
self.status_message.setGeometry(QtCore.QRect(75, 35, 170, 25))
|
||||||
font.setBold(False)
|
|
||||||
Form.status_message.setFont(font)
|
self.connection_status = StatusCircle(left_column)
|
||||||
self.connection_status = Form.connection_status = StatusCircle(Form)
|
self.connection_status.setGeometry(QtCore.QRect(230, 10, 32, 32))
|
||||||
Form.connection_status.setGeometry(QtCore.QRect(230, 10, 32, 32))
|
|
||||||
|
left_column.contactsFilterComboBox.activated[int].connect(lambda x: self._filtering())
|
||||||
|
|
||||||
|
self.avatar_label = left_column.avatarLabel
|
||||||
|
self.searchLineEdit = left_column.searchLineEdit
|
||||||
|
self.contactsFilterComboBox = left_column.contactsFilterComboBox
|
||||||
|
|
||||||
|
self.groupInvitesPushButton = left_column.groupInvitesPushButton
|
||||||
|
|
||||||
|
self.groupInvitesPushButton.clicked.connect(self._open_gc_invites_list)
|
||||||
self.avatar_label.mouseReleaseEvent = self.profile_settings
|
self.avatar_label.mouseReleaseEvent = self.profile_settings
|
||||||
self.status_message.mouseReleaseEvent = self.profile_settings
|
self.status_message.mouseReleaseEvent = self.profile_settings
|
||||||
self.name.mouseReleaseEvent = self.profile_settings
|
self.name.mouseReleaseEvent = self.profile_settings
|
||||||
self.connection_status.raise_()
|
|
||||||
|
self.friends_list = left_column.friendsListWidget
|
||||||
|
self.friends_list.clicked.connect(self._friend_click)
|
||||||
|
self.friends_list.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
|
||||||
|
self.friends_list.customContextMenuRequested.connect(self._friend_right_click)
|
||||||
|
self.friends_list.setVerticalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel)
|
||||||
|
self.friends_list.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
|
||||||
|
self.friends_list.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
|
||||||
|
self.friends_list.verticalScrollBar().setContextMenuPolicy(QtCore.Qt.NoContextMenu)
|
||||||
|
|
||||||
def setup_right_top(self, Form):
|
def setup_right_top(self, Form):
|
||||||
Form.resize(650, 75)
|
Form.resize(650, 75)
|
||||||
|
@ -303,18 +302,6 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
self.typing.setVisible(False)
|
self.typing.setVisible(False)
|
||||||
QtCore.QMetaObject.connectSlotsByName(Form)
|
QtCore.QMetaObject.connectSlotsByName(Form)
|
||||||
|
|
||||||
def setup_left_center(self, widget):
|
|
||||||
self.friends_list = QtWidgets.QListWidget(widget)
|
|
||||||
self.friends_list.setObjectName("friends_list")
|
|
||||||
self.friends_list.setGeometry(0, 0, 270, 310)
|
|
||||||
self.friends_list.clicked.connect(self.friend_click)
|
|
||||||
self.friends_list.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
|
|
||||||
self.friends_list.customContextMenuRequested.connect(self.friend_right_click)
|
|
||||||
self.friends_list.setVerticalScrollMode(QtWidgets.QAbstractItemView.ScrollPerPixel)
|
|
||||||
self.friends_list.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn)
|
|
||||||
self.friends_list.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
|
|
||||||
self.friends_list.verticalScrollBar().setContextMenuPolicy(QtCore.Qt.NoContextMenu)
|
|
||||||
|
|
||||||
def setup_right_center(self, widget):
|
def setup_right_center(self, widget):
|
||||||
self.messages = QtWidgets.QListWidget(widget)
|
self.messages = QtWidgets.QListWidget(widget)
|
||||||
self.messages.setGeometry(0, 0, 620, 310)
|
self.messages.setGeometry(0, 0, 620, 310)
|
||||||
|
@ -351,35 +338,27 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
menu = QtWidgets.QWidget()
|
menu = QtWidgets.QWidget()
|
||||||
main = QtWidgets.QWidget()
|
main = QtWidgets.QWidget()
|
||||||
grid = QtWidgets.QGridLayout()
|
grid = QtWidgets.QGridLayout()
|
||||||
search = QtWidgets.QWidget()
|
|
||||||
name = QtWidgets.QWidget()
|
|
||||||
info = QtWidgets.QWidget()
|
info = QtWidgets.QWidget()
|
||||||
main_list = QtWidgets.QWidget()
|
left_column = QtWidgets.QWidget()
|
||||||
messages = QtWidgets.QWidget()
|
messages = QtWidgets.QWidget()
|
||||||
message_buttons = QtWidgets.QWidget()
|
message_buttons = QtWidgets.QWidget()
|
||||||
self.setup_left_center_menu(search)
|
|
||||||
self.setup_left_top(name)
|
|
||||||
self.setup_right_center(messages)
|
self.setup_right_center(messages)
|
||||||
self.setup_right_top(info)
|
self.setup_right_top(info)
|
||||||
self.setup_right_bottom(message_buttons)
|
self.setup_right_bottom(message_buttons)
|
||||||
self.setup_left_center(main_list)
|
self.setup_left_column(left_column)
|
||||||
self.setup_menu(menu)
|
self.setup_menu(menu)
|
||||||
if not s['mirror_mode']:
|
if not s['mirror_mode']:
|
||||||
grid.addWidget(search, 2, 0)
|
grid.addWidget(left_column, 1, 0, 4, 1)
|
||||||
grid.addWidget(name, 1, 0)
|
|
||||||
grid.addWidget(messages, 2, 1, 2, 1)
|
grid.addWidget(messages, 2, 1, 2, 1)
|
||||||
grid.addWidget(info, 1, 1)
|
grid.addWidget(info, 1, 1)
|
||||||
grid.addWidget(message_buttons, 4, 1)
|
grid.addWidget(message_buttons, 4, 1)
|
||||||
grid.addWidget(main_list, 3, 0, 2, 1)
|
|
||||||
grid.setColumnMinimumWidth(1, 500)
|
grid.setColumnMinimumWidth(1, 500)
|
||||||
grid.setColumnMinimumWidth(0, 270)
|
grid.setColumnMinimumWidth(0, 270)
|
||||||
else:
|
else:
|
||||||
grid.addWidget(search, 2, 1)
|
grid.addWidget(left_column, 1, 1, 4, 1)
|
||||||
grid.addWidget(name, 1, 1)
|
|
||||||
grid.addWidget(messages, 2, 0, 2, 1)
|
grid.addWidget(messages, 2, 0, 2, 1)
|
||||||
grid.addWidget(info, 1, 0)
|
grid.addWidget(info, 1, 0)
|
||||||
grid.addWidget(message_buttons, 4, 0)
|
grid.addWidget(message_buttons, 4, 0)
|
||||||
grid.addWidget(main_list, 3, 1, 2, 1)
|
|
||||||
grid.setColumnMinimumWidth(0, 500)
|
grid.setColumnMinimumWidth(0, 500)
|
||||||
grid.setColumnMinimumWidth(1, 270)
|
grid.setColumnMinimumWidth(1, 270)
|
||||||
|
|
||||||
|
@ -396,7 +375,6 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
main.setLayout(grid)
|
main.setLayout(grid)
|
||||||
self.setCentralWidget(main)
|
self.setCentralWidget(main)
|
||||||
self.messageEdit.setFocus()
|
self.messageEdit.setFocus()
|
||||||
self.user_info = name
|
|
||||||
self.friend_info = info
|
self.friend_info = info
|
||||||
self.retranslateUi()
|
self.retranslateUi()
|
||||||
|
|
||||||
|
@ -428,7 +406,10 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
else:
|
else:
|
||||||
self.messages.setGeometry(0, 0, width * 3 // 4, self.height() - 155)
|
self.messages.setGeometry(0, 0, width * 3 // 4, self.height() - 155)
|
||||||
self.peers_list.setGeometry(width * 3 // 4, 0, width - width * 3 // 4, self.height() - 155)
|
self.peers_list.setGeometry(width * 3 // 4, 0, width - width * 3 // 4, self.height() - 155)
|
||||||
self.friends_list.setGeometry(0, 0, 270, self.height() - 125)
|
|
||||||
|
invites_button_visible = self.groupInvitesPushButton.isVisible()
|
||||||
|
self.friends_list.setGeometry(0, 125 if invites_button_visible else 100,
|
||||||
|
270, self.height() - 150 if invites_button_visible else self.height() - 125)
|
||||||
|
|
||||||
self.videocallButton.setGeometry(QtCore.QRect(self.width() - 330, 10, 50, 50))
|
self.videocallButton.setGeometry(QtCore.QRect(self.width() - 330, 10, 50, 50))
|
||||||
self.callButton.setGeometry(QtCore.QRect(self.width() - 390, 10, 50, 50))
|
self.callButton.setGeometry(QtCore.QRect(self.width() - 390, 10, 50, 50))
|
||||||
|
@ -617,7 +598,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
# Functions which called when user open context menu in friends list
|
# Functions which called when user open context menu in friends list
|
||||||
# -----------------------------------------------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
def friend_right_click(self, pos):
|
def _friend_right_click(self, pos):
|
||||||
item = self.friends_list.itemAt(pos)
|
item = self.friends_list.itemAt(pos)
|
||||||
number = self.friends_list.indexFromItem(item).row()
|
number = self.friends_list.indexFromItem(item).row()
|
||||||
contact = self._contacts_manager.get_contact(number)
|
contact = self._contacts_manager.get_contact(number)
|
||||||
|
@ -696,23 +677,23 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
# Functions which called when user click somewhere else
|
# Functions which called when user click somewhere else
|
||||||
# -----------------------------------------------------------------------------------------------------------------
|
# -----------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
def friend_click(self, index):
|
def _friend_click(self, index):
|
||||||
num = index.row()
|
num = index.row()
|
||||||
self._contacts_manager.active_contact = num
|
self._contacts_manager.active_contact = num
|
||||||
self.groupMenuButton.setVisible(not self._contacts_manager.is_active_a_friend())
|
self.groupMenuButton.setVisible(not self._contacts_manager.is_active_a_friend())
|
||||||
|
|
||||||
def mouseReleaseEvent(self, event):
|
def mouseReleaseEvent(self, event):
|
||||||
pos = self.connection_status.pos()
|
pos = self.connection_status.pos()
|
||||||
x, y = pos.x() + self.user_info.pos().x(), pos.y() + self.user_info.pos().y()
|
x, y = pos.x(), pos.y() + 25
|
||||||
if (x < event.x() < x + 32) and (y < event.y() < y + 32):
|
if (x < event.x() < x + 32) and (y < event.y() < y + 32):
|
||||||
self._profile.change_status()
|
self._profile.change_status()
|
||||||
else:
|
else:
|
||||||
super().mouseReleaseEvent(event)
|
super().mouseReleaseEvent(event)
|
||||||
|
|
||||||
def filtering(self):
|
def _filtering(self):
|
||||||
ind = self.online_contacts.currentIndex()
|
ind = self.contactsFilterComboBox.currentIndex()
|
||||||
d = {0: 0, 1: 1, 2: 2, 3: 4, 4: 1 | 4, 5: 2 | 4}
|
d = {0: 0, 1: 1, 2: 2, 3: 4, 4: 1 | 4, 5: 2 | 4}
|
||||||
self._contacts_manager.filtration_and_sorting(d[ind], self.contact_name.text())
|
self._contacts_manager.filtration_and_sorting(d[ind], self.searchLineEdit.text())
|
||||||
|
|
||||||
def show_search_field(self):
|
def show_search_field(self):
|
||||||
if hasattr(self, 'search_field') and self.search_field.isVisible():
|
if hasattr(self, 'search_field') and self.search_field.isVisible():
|
||||||
|
@ -741,3 +722,10 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||||
def _open_gc_invites_list(self):
|
def _open_gc_invites_list(self):
|
||||||
self._modal_window = self._widget_factory.create_group_invites_window()
|
self._modal_window = self._widget_factory.create_group_invites_window()
|
||||||
self._modal_window.show()
|
self._modal_window.show()
|
||||||
|
|
||||||
|
def update_gc_invites_button_state(self):
|
||||||
|
invites_count = self._groups_service.group_invites_count
|
||||||
|
self.groupInvitesPushButton.setVisible(invites_count > 0)
|
||||||
|
text = util_ui.tr('{} new invites to group chats').format(invites_count)
|
||||||
|
self.groupInvitesPushButton.setText(text)
|
||||||
|
self.resizeEvent()
|
||||||
|
|
|
@ -57,7 +57,7 @@
|
||||||
<rect>
|
<rect>
|
||||||
<x>40</x>
|
<x>40</x>
|
||||||
<y>50</y>
|
<y>50</y>
|
||||||
<width>16</width>
|
<width>23</width>
|
||||||
<height>23</height>
|
<height>23</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
|
|
Loading…
Reference in a new issue