Tree connected

This commit is contained in:
Dmitri Bogomolov 2019-02-20 19:09:45 +02:00
parent 946db51f51
commit 45d3dbc0ec
Signed by untrusted user: g1itch
GPG Key ID: 720A756F18DEED13
2 changed files with 28 additions and 10 deletions

View File

@ -735,6 +735,16 @@ class MainWindow(Window):
tableWidget.horizontalHeaderItem(3).setText(_translate("MainWindow", "Sent", None)) tableWidget.horizontalHeaderItem(3).setText(_translate("MainWindow", "Sent", None))
tableWidget.setUpdatesEnabled(True) tableWidget.setUpdatesEnabled(True)
def switchMessagelist(
self, view, account,
folder='inbox', search_option=None, search_line=None
):
model = view.model()
update = {'folder': folder}
if account:
update['toaddress'] = account
model.updateFilter(update)
# Load messages from database file # Load messages from database file
def loadMessagelist(self, tableWidget, account, folder="inbox", where="", what="", unreadOnly = False): def loadMessagelist(self, tableWidget, account, folder="inbox", where="", what="", unreadOnly = False):
if folder == 'sent': if folder == 'sent':
@ -2883,7 +2893,7 @@ class MainWindow(Window):
return self.treeWidgetYourIdentities return self.treeWidgetYourIdentities
def getCurrentMessagelist(self): def getCurrentMessagelist(self):
currentIndex = self.tabWidget.currentIndex(); currentIndex = self.tabWidget.currentIndex()
messagelistList = ( messagelistList = (
self.tableWidgetInboxSubscriptions, self.tableWidgetInboxSubscriptions,
self.tableWidgetInboxChans, self.tableWidgetInboxChans,
@ -3369,11 +3379,15 @@ class MainWindow(Window):
messageTextedit = self.getCurrentMessageTextedit() messageTextedit = self.getCurrentMessageTextedit()
if messageTextedit: if messageTextedit:
messageTextedit.setPlainText(QtCore.QString("")) messageTextedit.setPlainText(QtCore.QString(""))
messagelist = self.getCurrentMessagelist() messagelist = self.getCurrentMessagelist() or self.messagelistInbox
if messagelist: # ??
account = self.getCurrentAccount() account = self.getCurrentAccount()
folder = self.getCurrentFolder() folder = self.getCurrentFolder()
treeWidget = self.getCurrentTreeWidget() treeWidget = self.getCurrentTreeWidget()
if isinstance(messagelist, QtGui.QTableView):
self.switchMessagelist(
messagelist, account, folder, searchOption, searchLine)
return
# refresh count indicator # refresh count indicator
self.propagateUnreadCount(account.address if hasattr(account, 'address') else None, folder, treeWidget, 0) self.propagateUnreadCount(account.address if hasattr(account, 'address') else None, folder, treeWidget, 0)
self.loadMessagelist(messagelist, account, folder, searchOption, searchLine) self.loadMessagelist(messagelist, account, folder, searchOption, searchLine)

View File

@ -78,7 +78,7 @@ class AccountFormatter(object):
class InboxTableModel(QtCore.QAbstractTableModel): class InboxTableModel(QtCore.QAbstractTableModel):
table = 'inbox' table = 'inbox'
fields = ( fields = (
'msgid', 'toaddress', 'fromaddress', 'subject', 'received', 'read') 'msgid', 'folder', 'toaddress', 'fromaddress', 'subject', 'received', 'read')
header = ( header = (
{'field': 'fromaddress', {'field': 'fromaddress',
'label': _translate("MainWindow", "From"), 'label': _translate("MainWindow", "From"),
@ -158,6 +158,10 @@ class InboxTableModel(QtCore.QAbstractTableModel):
'SELECT message FROM inbox WHERE msgid = ?', msgid 'SELECT message FROM inbox WHERE msgid = ?', msgid
)[0][0] )[0][0]
def updateFilter(self, *args, **kwargs):
self.filter.update(*args, **kwargs)
self.emit(QtCore.SIGNAL("layoutChanged()"))
class InboxMessagelist(QtGui.QTableView): class InboxMessagelist(QtGui.QTableView):
def __init__(self, parent=None): def __init__(self, parent=None):