Added separate tab for broadcast messages
This commit is contained in:
parent
bfdb04716a
commit
e46bdae4b0
|
@ -57,6 +57,17 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.ui = Ui_MainWindow()
|
||||
self.ui.setupUi(self)
|
||||
|
||||
# Define tab indexes here to avoid ghost numbers laster on
|
||||
self.TabIndex_Inbox = 0
|
||||
self.TabIndex_Broadcasts = 1
|
||||
self.TabIndex_Send = 2
|
||||
self.TabIndex_Sent = 3
|
||||
self.TabIndex_YourIdentities = 4
|
||||
self.TabIndex_Subscriptions = 5
|
||||
self.TabIndex_AddressBook = 6
|
||||
self.TabIndex_Blacklist = 7
|
||||
self.TabIndex_NetworkStatus = 8
|
||||
|
||||
# Ask the user if we may delete their old version 1 addresses if they
|
||||
# have any.
|
||||
configSections = shared.config.sections()
|
||||
|
@ -156,6 +167,32 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.popMenuInbox.addAction( self.actionSaveMessageAs )
|
||||
self.popMenuInbox.addAction( self.actionTrashInboxMessage )
|
||||
|
||||
# Popup menu for the Broadcasts tab
|
||||
self.ui.broadcastsContextMenuToolbar = QtGui.QToolBar()
|
||||
# Actions
|
||||
self.actionReply = self.ui.broadcastsContextMenuToolbar.addAction(_translate(
|
||||
"MainWindow", "Reply"), self.on_action_InboxReply)
|
||||
self.actionAddSenderToAddressBook = self.ui.broadcastsContextMenuToolbar.addAction(_translate(
|
||||
"MainWindow", "Add sender to your Address Book"), self.on_action_InboxAddSenderToAddressBook)
|
||||
self.actionTrashInboxMessage = self.ui.broadcastsContextMenuToolbar.addAction(
|
||||
_translate("MainWindow", "Move to Trash"), self.on_action_InboxTrash)
|
||||
self.actionForceHtml = self.ui.broadcastsContextMenuToolbar.addAction(_translate(
|
||||
"MainWindow", "View HTML code as formatted text"), self.on_action_InboxMessageForceHtml)
|
||||
self.actionSaveMessageAs = self.ui.broadcastsContextMenuToolbar.addAction(_translate(
|
||||
"MainWindow", "Save message as..."), self.on_action_InboxSaveMessageAs)
|
||||
self.ui.tableWidgetBroadcasts.setContextMenuPolicy(
|
||||
QtCore.Qt.CustomContextMenu)
|
||||
self.connect(self.ui.tableWidgetBroadcasts, QtCore.SIGNAL(
|
||||
'customContextMenuRequested(const QPoint&)'), self.on_context_menuBroadcasts)
|
||||
self.popMenuBroadcasts = QtGui.QMenu(self)
|
||||
self.popMenuBroadcasts.addAction(self.actionForceHtml)
|
||||
self.popMenuBroadcasts.addSeparator()
|
||||
self.popMenuBroadcasts.addAction(self.actionReply)
|
||||
self.popMenuBroadcasts.addAction(self.actionAddSenderToAddressBook)
|
||||
self.popMenuBroadcasts.addSeparator()
|
||||
self.popMenuBroadcasts.addAction( self.actionSaveMessageAs )
|
||||
self.popMenuBroadcasts.addAction( self.actionTrashInboxMessage )
|
||||
|
||||
# Popup menu for the Your Identities tab
|
||||
self.ui.addressContextMenuToolbar = QtGui.QToolBar()
|
||||
# Actions
|
||||
|
@ -323,8 +360,10 @@ class MyForm(QtGui.QMainWindow):
|
|||
try:
|
||||
if toAddress == self.str_broadcast_subscribers:
|
||||
toLabel = self.str_broadcast_subscribers
|
||||
table = self.ui.tableWidgetBroadcasts
|
||||
else:
|
||||
toLabel = shared.config.get(toAddress, 'label')
|
||||
table = self.ui.tableWidgetInbox
|
||||
except:
|
||||
toLabel = ''
|
||||
if toLabel == '':
|
||||
|
@ -356,7 +395,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
for row in queryreturn:
|
||||
fromLabel, = row
|
||||
|
||||
self.ui.tableWidgetInbox.insertRow(0)
|
||||
table.insertRow(0)
|
||||
newItem = QtGui.QTableWidgetItem(unicode(toLabel, 'utf-8'))
|
||||
newItem.setToolTip(unicode(toLabel, 'utf-8'))
|
||||
newItem.setFlags(
|
||||
|
@ -366,7 +405,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
newItem.setData(Qt.UserRole, str(toAddress))
|
||||
if shared.safeConfigGetBoolean(toAddress, 'mailinglist'):
|
||||
newItem.setTextColor(QtGui.QColor(137, 04, 177))
|
||||
self.ui.tableWidgetInbox.setItem(0, 0, newItem)
|
||||
table.setItem(0, 0, newItem)
|
||||
if fromLabel == '':
|
||||
newItem = QtGui.QTableWidgetItem(
|
||||
unicode(fromAddress, 'utf-8'))
|
||||
|
@ -380,7 +419,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
newItem.setFont(font)
|
||||
newItem.setData(Qt.UserRole, str(fromAddress))
|
||||
|
||||
self.ui.tableWidgetInbox.setItem(0, 1, newItem)
|
||||
table.setItem(0, 1, newItem)
|
||||
newItem = QtGui.QTableWidgetItem(unicode(subject, 'utf-8'))
|
||||
newItem.setToolTip(unicode(subject, 'utf-8'))
|
||||
newItem.setData(Qt.UserRole, unicode(message, 'utf-8)'))
|
||||
|
@ -388,7 +427,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)
|
||||
if not read:
|
||||
newItem.setFont(font)
|
||||
self.ui.tableWidgetInbox.setItem(0, 2, newItem)
|
||||
table.setItem(0, 2, newItem)
|
||||
newItem = myTableWidgetItem(unicode(strftime(shared.config.get(
|
||||
'bitmessagesettings', 'timeformat'), localtime(int(received))), 'utf-8'))
|
||||
newItem.setToolTip(unicode(strftime(shared.config.get(
|
||||
|
@ -399,9 +438,11 @@ class MyForm(QtGui.QMainWindow):
|
|||
QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)
|
||||
if not read:
|
||||
newItem.setFont(font)
|
||||
self.ui.tableWidgetInbox.setItem(0, 3, newItem)
|
||||
table.setItem(0, 3, newItem)
|
||||
self.ui.tableWidgetInbox.sortItems(3, Qt.DescendingOrder)
|
||||
self.ui.tableWidgetBroadcasts.sortItems(3, Qt.DescendingOrder)
|
||||
self.ui.tableWidgetInbox.keyPressEvent = self.tableWidgetInboxKeyPressEvent
|
||||
self.ui.tableWidgetBroadcasts.keyPressEvent = self.tableWidgetBroadcastsKeyPressEvent
|
||||
|
||||
# Load Sent items from database
|
||||
shared.sqlLock.acquire()
|
||||
|
@ -543,6 +584,8 @@ class MyForm(QtGui.QMainWindow):
|
|||
"itemChanged(QTableWidgetItem *)"), self.tableWidgetSubscriptionsItemChanged)
|
||||
QtCore.QObject.connect(self.ui.tableWidgetInbox, QtCore.SIGNAL(
|
||||
"itemSelectionChanged ()"), self.tableWidgetInboxItemClicked)
|
||||
QtCore.QObject.connect(self.ui.tableWidgetBroadcasts, QtCore.SIGNAL(
|
||||
"itemSelectionChanged ()"), self.tableWidgetInboxItemClicked)
|
||||
QtCore.QObject.connect(self.ui.tableWidgetSent, QtCore.SIGNAL(
|
||||
"itemSelectionChanged ()"), self.tableWidgetSentItemClicked)
|
||||
|
||||
|
@ -647,7 +690,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
def appIndicatorInbox(self, mm_app, source_id):
|
||||
self.appIndicatorShow()
|
||||
# select inbox
|
||||
self.ui.tabWidget.setCurrentIndex(0)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_Inbox)
|
||||
selectedItem = None
|
||||
if source_id == 'Subscriptions':
|
||||
# select unread broadcast
|
||||
|
@ -674,17 +717,17 @@ class MyForm(QtGui.QMainWindow):
|
|||
# Show the program window and select send tab
|
||||
def appIndicatorSend(self):
|
||||
self.appIndicatorShow()
|
||||
self.ui.tabWidget.setCurrentIndex(1)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_Send)
|
||||
|
||||
# Show the program window and select subscriptions tab
|
||||
def appIndicatorSubscribe(self):
|
||||
self.appIndicatorShow()
|
||||
self.ui.tabWidget.setCurrentIndex(4)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_Subscriptions)
|
||||
|
||||
# Show the program window and select the address book tab
|
||||
def appIndicatorAddressBook(self):
|
||||
self.appIndicatorShow()
|
||||
self.ui.tabWidget.setCurrentIndex(5)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_AddressBook)
|
||||
|
||||
# create application indicator
|
||||
def appIndicatorInit(self, app):
|
||||
|
@ -745,6 +788,12 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.tray.setContextMenu(m)
|
||||
self.tray.show()
|
||||
|
||||
def getCurrentTableAndEdit(self):
|
||||
if self.ui.tabWidget.currentIndex() == self.TabIndex_Inbox:
|
||||
return self.ui.tableWidgetInbox, self.ui.textEditInboxMessage
|
||||
else:
|
||||
return self.ui.tableWidgetBroadcasts, self.ui.textEditBroadcastsMessage
|
||||
|
||||
# Ubuntu Messaging menu object
|
||||
mmapp = None
|
||||
|
||||
|
@ -916,6 +965,11 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.on_action_InboxTrash()
|
||||
return QtGui.QTableWidget.keyPressEvent(self.ui.tableWidgetInbox, event)
|
||||
|
||||
def tableWidgetBroadcastsKeyPressEvent(self, event):
|
||||
if event.key() == QtCore.Qt.Key_Delete:
|
||||
self.on_action_BroadcastsTrash()
|
||||
return QtGui.QTableWidget.keyPressEvent(self.ui.tableWidgetBroadcasts, event)
|
||||
|
||||
def tableWidgetSentKeyPressEvent(self, event):
|
||||
if event.key() == QtCore.Qt.Key_Delete:
|
||||
self.on_action_SentTrash()
|
||||
|
@ -970,7 +1024,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
# self.addressGenerator.start()
|
||||
shared.addressGeneratorQueue.put(('createDeterministicAddresses', addressVersionNumber, streamNumberForAddress, "regenerated deterministic address", self.regenerateAddressesDialogInstance.ui.spinBoxNumberOfAddressesToMake.value(
|
||||
), self.regenerateAddressesDialogInstance.ui.lineEditPassphrase.text().toUtf8(), self.regenerateAddressesDialogInstance.ui.checkBoxEighteenByteRipe.isChecked()))
|
||||
self.ui.tabWidget.setCurrentIndex(3)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_YourIdentities)
|
||||
|
||||
def openKeysFile(self):
|
||||
if 'linux' in sys.platform:
|
||||
|
@ -1217,6 +1271,68 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.ui.tableWidgetInbox.item(
|
||||
i, 0).setTextColor(QtGui.QColor(0, 0, 0))
|
||||
|
||||
def removeBroadcastsRowByMsgid(self, msgid): # msgid and inventoryHash are the same thing
|
||||
for i in range(self.ui.tableWidgetBroadcasts.rowCount()):
|
||||
if msgid == str(self.ui.tableWidgetBroadcasts.item(i, 3).data(Qt.UserRole).toPyObject()):
|
||||
self.statusBar().showMessage(_translate(
|
||||
"MainWindow", "Message trashed"))
|
||||
self.ui.tableWidgetBroadcasts.removeRow(i)
|
||||
break
|
||||
|
||||
def rerenderBroadcastsFromLabels(self):
|
||||
for i in range(self.ui.tableWidgetBroadcasts.rowCount()):
|
||||
addressToLookup = str(self.ui.tableWidgetBroadcasts.item(
|
||||
i, 1).data(Qt.UserRole).toPyObject())
|
||||
fromLabel = ''
|
||||
t = (addressToLookup,)
|
||||
shared.sqlLock.acquire()
|
||||
shared.sqlSubmitQueue.put(
|
||||
'''select label from addressbook where address=?''')
|
||||
shared.sqlSubmitQueue.put(t)
|
||||
queryreturn = shared.sqlReturnQueue.get()
|
||||
shared.sqlLock.release()
|
||||
|
||||
if queryreturn != []:
|
||||
for row in queryreturn:
|
||||
fromLabel, = row
|
||||
self.ui.tableWidgetBroadcasts.item(
|
||||
i, 1).setText(unicode(fromLabel, 'utf-8'))
|
||||
else:
|
||||
# It might be a broadcast message. We should check for that
|
||||
# label.
|
||||
shared.sqlLock.acquire()
|
||||
shared.sqlSubmitQueue.put(
|
||||
'''select label from subscriptions where address=?''')
|
||||
shared.sqlSubmitQueue.put(t)
|
||||
queryreturn = shared.sqlReturnQueue.get()
|
||||
shared.sqlLock.release()
|
||||
|
||||
if queryreturn != []:
|
||||
for row in queryreturn:
|
||||
fromLabel, = row
|
||||
self.ui.tableWidgetBroadcasts.item(
|
||||
i, 1).setText(unicode(fromLabel, 'utf-8'))
|
||||
|
||||
def rerenderBroadcastsToLabels(self):
|
||||
for i in range(self.ui.tableWidgetBroadcasts.rowCount()):
|
||||
toAddress = str(self.ui.tableWidgetBroadcasts.item(
|
||||
i, 0).data(Qt.UserRole).toPyObject())
|
||||
try:
|
||||
toLabel = shared.config.get(toAddress, 'label')
|
||||
except:
|
||||
toLabel = ''
|
||||
if toLabel == '':
|
||||
toLabel = toAddress
|
||||
self.ui.tableWidgetBroadcasts.item(
|
||||
i, 0).setText(unicode(toLabel, 'utf-8'))
|
||||
# Set the color according to whether it is the address of a mailing
|
||||
# list or not.
|
||||
if shared.safeConfigGetBoolean(toAddress, 'mailinglist'):
|
||||
self.ui.tableWidgetBroadcasts.item(i, 0).setTextColor(QtGui.QColor(137, 04, 177))
|
||||
else:
|
||||
self.ui.tableWidgetBroadcasts.item(
|
||||
i, 0).setTextColor(QtGui.QColor(0, 0, 0))
|
||||
|
||||
def rerenderSentFromLabels(self):
|
||||
for i in range(self.ui.tableWidgetSent.rowCount()):
|
||||
fromAddress = str(self.ui.tableWidgetSent.item(
|
||||
|
@ -1371,7 +1487,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.ui.lineEditTo.setText('')
|
||||
self.ui.lineEditSubject.setText('')
|
||||
self.ui.textEditMessage.setText('')
|
||||
self.ui.tabWidget.setCurrentIndex(2)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_Sent)
|
||||
self.ui.tableWidgetSent.setCurrentCell(0, 0)
|
||||
else:
|
||||
self.statusBar().showMessage(_translate(
|
||||
|
@ -1442,11 +1558,11 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.ui.lineEditTo.setText('')
|
||||
self.ui.lineEditSubject.setText('')
|
||||
self.ui.textEditMessage.setText('')
|
||||
self.ui.tabWidget.setCurrentIndex(2)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_Sent)
|
||||
self.ui.tableWidgetSent.setCurrentCell(0, 0)
|
||||
|
||||
def click_pushButtonLoadFromAddressBook(self):
|
||||
self.ui.tabWidget.setCurrentIndex(5)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_AddressBook)
|
||||
for i in range(4):
|
||||
time.sleep(0.1)
|
||||
self.statusBar().showMessage('')
|
||||
|
@ -1557,8 +1673,10 @@ class MyForm(QtGui.QMainWindow):
|
|||
try:
|
||||
if toAddress == self.str_broadcast_subscribers:
|
||||
toLabel = self.str_broadcast_subscribers
|
||||
table = self.ui.tableWidgetBroadcasts
|
||||
else:
|
||||
toLabel = shared.config.get(toAddress, 'label')
|
||||
table = self.ui.tableWidgetInbox
|
||||
except:
|
||||
toLabel = ''
|
||||
if toLabel == '':
|
||||
|
@ -1566,15 +1684,15 @@ class MyForm(QtGui.QMainWindow):
|
|||
|
||||
font = QFont()
|
||||
font.setBold(True)
|
||||
self.ui.tableWidgetInbox.setSortingEnabled(False)
|
||||
table.setSortingEnabled(False)
|
||||
newItem = QtGui.QTableWidgetItem(unicode(toLabel, 'utf-8'))
|
||||
newItem.setToolTip(unicode(toLabel, 'utf-8'))
|
||||
newItem.setFont(font)
|
||||
newItem.setData(Qt.UserRole, str(toAddress))
|
||||
if shared.safeConfigGetBoolean(str(toAddress), 'mailinglist'):
|
||||
newItem.setTextColor(QtGui.QColor(137, 04, 177))
|
||||
self.ui.tableWidgetInbox.insertRow(0)
|
||||
self.ui.tableWidgetInbox.setItem(0, 0, newItem)
|
||||
table.insertRow(0)
|
||||
table.setItem(0, 0, newItem)
|
||||
|
||||
if fromLabel == '':
|
||||
newItem = QtGui.QTableWidgetItem(unicode(fromAddress, 'utf-8'))
|
||||
|
@ -1588,12 +1706,12 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.notifierShow(unicode(_translate("MainWindow",'New Message').toUtf8(),'utf-8'), unicode(_translate("MainWindow",'From ').toUtf8(),'utf-8') + unicode(fromLabel, 'utf-8'))
|
||||
newItem.setData(Qt.UserRole, str(fromAddress))
|
||||
newItem.setFont(font)
|
||||
self.ui.tableWidgetInbox.setItem(0, 1, newItem)
|
||||
table.setItem(0, 1, newItem)
|
||||
newItem = QtGui.QTableWidgetItem(unicode(subject, 'utf-8)'))
|
||||
newItem.setToolTip(unicode(subject, 'utf-8)'))
|
||||
newItem.setData(Qt.UserRole, unicode(message, 'utf-8)'))
|
||||
newItem.setFont(font)
|
||||
self.ui.tableWidgetInbox.setItem(0, 2, newItem)
|
||||
table.setItem(0, 2, newItem)
|
||||
newItem = myTableWidgetItem(unicode(strftime(shared.config.get(
|
||||
'bitmessagesettings', 'timeformat'), localtime(int(time.time()))), 'utf-8'))
|
||||
newItem.setToolTip(unicode(strftime(shared.config.get(
|
||||
|
@ -1601,8 +1719,8 @@ class MyForm(QtGui.QMainWindow):
|
|||
newItem.setData(Qt.UserRole, QByteArray(inventoryHash))
|
||||
newItem.setData(33, int(time.time()))
|
||||
newItem.setFont(font)
|
||||
self.ui.tableWidgetInbox.setItem(0, 3, newItem)
|
||||
self.ui.tableWidgetInbox.setSortingEnabled(True)
|
||||
table.setItem(0, 3, newItem)
|
||||
table.setSortingEnabled(True)
|
||||
self.ubuntuMessagingMenuUpdate(True, newItem, toLabel)
|
||||
|
||||
def click_pushButtonAddAddressBook(self):
|
||||
|
@ -2013,8 +2131,9 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.quit()
|
||||
|
||||
def on_action_InboxMessageForceHtml(self):
|
||||
currentInboxRow = self.ui.tableWidgetInbox.currentRow()
|
||||
lines = self.ui.tableWidgetInbox.item(
|
||||
table, editbox = self.getCurrentTableAndEdit()
|
||||
currentInboxRow = table.currentRow()
|
||||
lines = table.item(
|
||||
currentInboxRow, 2).data(Qt.UserRole).toPyObject().split('\n')
|
||||
for i in xrange(len(lines)):
|
||||
if lines[i].contains('Message ostensibly from '):
|
||||
|
@ -2026,13 +2145,14 @@ class MyForm(QtGui.QMainWindow):
|
|||
for i in xrange(len(lines)):
|
||||
content += lines[i]
|
||||
content = content.replace('\n\n', '<br><br>')
|
||||
self.ui.textEditInboxMessage.setHtml(QtCore.QString(content))
|
||||
editbox.setHtml(QtCore.QString(content))
|
||||
|
||||
def on_action_InboxReply(self):
|
||||
currentInboxRow = self.ui.tableWidgetInbox.currentRow()
|
||||
toAddressAtCurrentInboxRow = str(self.ui.tableWidgetInbox.item(
|
||||
table, editbox = self.getCurrentTableAndEdit()
|
||||
currentInboxRow = table.currentRow()
|
||||
toAddressAtCurrentInboxRow = str(table.item(
|
||||
currentInboxRow, 0).data(Qt.UserRole).toPyObject())
|
||||
fromAddressAtCurrentInboxRow = str(self.ui.tableWidgetInbox.item(
|
||||
fromAddressAtCurrentInboxRow = str(table.item(
|
||||
currentInboxRow, 1).data(Qt.UserRole).toPyObject())
|
||||
if toAddressAtCurrentInboxRow == self.str_broadcast_subscribers:
|
||||
self.ui.labelFrom.setText('')
|
||||
|
@ -2049,21 +2169,22 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.ui.lineEditTo.setText(str(fromAddressAtCurrentInboxRow))
|
||||
self.ui.comboBoxSendFrom.setCurrentIndex(0)
|
||||
# self.ui.comboBoxSendFrom.setEditText(str(self.ui.tableWidgetInbox.item(currentInboxRow,0).text))
|
||||
self.ui.textEditMessage.setText('\n\n------------------------------------------------------\n' + self.ui.tableWidgetInbox.item(
|
||||
self.ui.textEditMessage.setText('\n\n------------------------------------------------------\n' + table.item(
|
||||
currentInboxRow, 2).data(Qt.UserRole).toPyObject())
|
||||
if self.ui.tableWidgetInbox.item(currentInboxRow, 2).text()[0:3] == 'Re:':
|
||||
if table.item(currentInboxRow, 2).text()[0:3] == 'Re:':
|
||||
self.ui.lineEditSubject.setText(
|
||||
self.ui.tableWidgetInbox.item(currentInboxRow, 2).text())
|
||||
table.item(currentInboxRow, 2).text())
|
||||
else:
|
||||
self.ui.lineEditSubject.setText(
|
||||
'Re: ' + self.ui.tableWidgetInbox.item(currentInboxRow, 2).text())
|
||||
'Re: ' + table.item(currentInboxRow, 2).text())
|
||||
self.ui.radioButtonSpecific.setChecked(True)
|
||||
self.ui.tabWidget.setCurrentIndex(1)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_Send)
|
||||
|
||||
def on_action_InboxAddSenderToAddressBook(self):
|
||||
currentInboxRow = self.ui.tableWidgetInbox.currentRow()
|
||||
table, editbox = self.getCurrentTableAndEdit()
|
||||
currentInboxRow = table.currentRow()
|
||||
# self.ui.tableWidgetInbox.item(currentRow,1).data(Qt.UserRole).toPyObject()
|
||||
addressAtCurrentInboxRow = str(self.ui.tableWidgetInbox.item(
|
||||
addressAtCurrentInboxRow = str(table.item(
|
||||
currentInboxRow, 1).data(Qt.UserRole).toPyObject())
|
||||
# Let's make sure that it isn't already in the address book
|
||||
shared.sqlLock.acquire()
|
||||
|
@ -2091,7 +2212,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
queryreturn = shared.sqlReturnQueue.get()
|
||||
shared.sqlSubmitQueue.put('commit')
|
||||
shared.sqlLock.release()
|
||||
self.ui.tabWidget.setCurrentIndex(5)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_AddressBook)
|
||||
self.ui.tableWidgetAddressBook.setCurrentCell(0, 0)
|
||||
self.statusBar().showMessage(_translate(
|
||||
"MainWindow", "Entry added to the Address Book. Edit the label to your liking."))
|
||||
|
@ -2101,9 +2222,10 @@ class MyForm(QtGui.QMainWindow):
|
|||
|
||||
# Send item on the Inbox tab to trash
|
||||
def on_action_InboxTrash(self):
|
||||
while self.ui.tableWidgetInbox.selectedIndexes() != []:
|
||||
currentRow = self.ui.tableWidgetInbox.selectedIndexes()[0].row()
|
||||
inventoryHashToTrash = str(self.ui.tableWidgetInbox.item(
|
||||
table, editbox = self.getCurrentTableAndEdit()
|
||||
while table.selectedIndexes() != []:
|
||||
currentRow = table.selectedIndexes()[0].row()
|
||||
inventoryHashToTrash = str(table.item(
|
||||
currentRow, 3).data(Qt.UserRole).toPyObject())
|
||||
t = (inventoryHashToTrash,)
|
||||
shared.sqlLock.acquire()
|
||||
|
@ -2112,32 +2234,33 @@ class MyForm(QtGui.QMainWindow):
|
|||
shared.sqlSubmitQueue.put(t)
|
||||
shared.sqlReturnQueue.get()
|
||||
shared.sqlLock.release()
|
||||
self.ui.textEditInboxMessage.setText("")
|
||||
self.ui.tableWidgetInbox.removeRow(currentRow)
|
||||
editbox.setText("")
|
||||
table.removeRow(currentRow)
|
||||
self.statusBar().showMessage(_translate(
|
||||
"MainWindow", "Moved items to trash. There is no user interface to view your trash, but it is still on disk if you are desperate to get it back."))
|
||||
shared.sqlLock.acquire()
|
||||
shared.sqlSubmitQueue.put('commit')
|
||||
shared.sqlLock.release()
|
||||
if currentRow == 0:
|
||||
self.ui.tableWidgetInbox.selectRow(currentRow)
|
||||
table.selectRow(currentRow)
|
||||
else:
|
||||
self.ui.tableWidgetInbox.selectRow(currentRow - 1)
|
||||
table.selectRow(currentRow - 1)
|
||||
|
||||
def on_action_InboxSaveMessageAs(self):
|
||||
currentInboxRow = self.ui.tableWidgetInbox.currentRow()
|
||||
table, editbox = self.getCurrentTableAndEdit()
|
||||
currentInboxRow = table.currentRow()
|
||||
try:
|
||||
subjectAtCurrentInboxRow = str(self.ui.tableWidgetInbox.item(currentInboxRow,2).text())
|
||||
subjectAtCurrentInboxRow = str(table.item(currentInboxRow,2).text())
|
||||
except:
|
||||
subjectAtCurrentInboxRow = ''
|
||||
defaultFilename = "".join(x for x in subjectAtCurrentInboxRow if x.isalnum()) + '.txt'
|
||||
data = self.ui.tableWidgetInbox.item(currentInboxRow,2).data(Qt.UserRole).toPyObject()
|
||||
data = table.item(currentInboxRow,2).data(Qt.UserRole).toPyObject()
|
||||
filename = QFileDialog.getSaveFileName(self, _translate("MainWindow","Save As..."), defaultFilename, "Text files (*.txt);;All files (*.*)")
|
||||
if filename == '':
|
||||
return
|
||||
try:
|
||||
f = open(filename, 'w')
|
||||
f.write( self.ui.tableWidgetInbox.item(currentInboxRow,2).data(Qt.UserRole).toPyObject() )
|
||||
f.write( table.item(currentInboxRow,2).data(Qt.UserRole).toPyObject() )
|
||||
f.close()
|
||||
except Exception, e:
|
||||
sys.stderr.write('Write error: '+ e)
|
||||
|
@ -2256,7 +2379,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
"MainWindow", "No addresses selected."))
|
||||
else:
|
||||
self.statusBar().showMessage('')
|
||||
self.ui.tabWidget.setCurrentIndex(1)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_Send)
|
||||
|
||||
def on_action_AddressBookSubscribe(self):
|
||||
listOfSelectedRows = {}
|
||||
|
@ -2270,7 +2393,7 @@ class MyForm(QtGui.QMainWindow):
|
|||
continue
|
||||
labelAtCurrentRow = self.ui.tableWidgetAddressBook.item(currentRow,0).text().toUtf8()
|
||||
self.addSubscription(labelAtCurrentRow, addressAtCurrentRow)
|
||||
self.ui.tabWidget.setCurrentIndex(4)
|
||||
self.ui.tabWidget.setCurrentIndex(self.TabIndex_Subscriptions)
|
||||
|
||||
def on_context_menuAddressBook(self, point):
|
||||
self.popMenuAddressBook.exec_(
|
||||
|
@ -2485,6 +2608,9 @@ class MyForm(QtGui.QMainWindow):
|
|||
def on_context_menuInbox(self, point):
|
||||
self.popMenuInbox.exec_(self.ui.tableWidgetInbox.mapToGlobal(point))
|
||||
|
||||
def on_context_menuBroadcasts(self, point):
|
||||
self.popMenuBroadcasts.exec_(self.ui.tableWidgetBroadcasts.mapToGlobal(point))
|
||||
|
||||
def on_context_menuSent(self, point):
|
||||
self.popMenuSent = QtGui.QMenu(self)
|
||||
self.popMenuSent.addAction(self.actionSentClipboard)
|
||||
|
@ -2508,36 +2634,37 @@ class MyForm(QtGui.QMainWindow):
|
|||
self.popMenuSent.exec_(self.ui.tableWidgetSent.mapToGlobal(point))
|
||||
|
||||
def tableWidgetInboxItemClicked(self):
|
||||
currentRow = self.ui.tableWidgetInbox.currentRow()
|
||||
table, editbox = self.getCurrentTableAndEdit()
|
||||
#QtGui.QMessageBox.information(self, 'tableWidgetInboxItemClicked', str(editbox.objectName))
|
||||
currentRow = table.currentRow()
|
||||
if currentRow >= 0:
|
||||
fromAddress = str(self.ui.tableWidgetInbox.item(
|
||||
fromAddress = str(table.item(
|
||||
currentRow, 1).data(Qt.UserRole).toPyObject())
|
||||
# If we have received this message from either a broadcast address
|
||||
# or from someone in our address book, display as HTML
|
||||
if decodeAddress(fromAddress)[3] in shared.broadcastSendersForWhichImWatching or shared.isAddressInMyAddressBook(fromAddress):
|
||||
if len(self.ui.tableWidgetInbox.item(currentRow, 2).data(Qt.UserRole).toPyObject()) < 30000:
|
||||
self.ui.textEditInboxMessage.setText(self.ui.tableWidgetInbox.item(
|
||||
if len(table.item(currentRow, 2).data(Qt.UserRole).toPyObject()) < 30000:
|
||||
editbox.setText(table.item(
|
||||
currentRow, 2).data(Qt.UserRole).toPyObject()) # Only show the first 30K characters
|
||||
else:
|
||||
self.ui.textEditInboxMessage.setText(self.ui.tableWidgetInbox.item(currentRow, 2).data(Qt.UserRole).toPyObject()[
|
||||
editbox.setText(table.item(currentRow, 2).data(Qt.UserRole).toPyObject()[
|
||||
:30000] + '\n\nDisplay of the remainder of the message truncated because it is too long.') # Only show the first 30K characters
|
||||
else:
|
||||
if len(self.ui.tableWidgetInbox.item(currentRow, 2).data(Qt.UserRole).toPyObject()) < 30000:
|
||||
self.ui.textEditInboxMessage.setPlainText(self.ui.tableWidgetInbox.item(
|
||||
if len(table.item(currentRow, 2).data(Qt.UserRole).toPyObject()) < 30000:
|
||||
editbox.setPlainText(table.item(
|
||||
currentRow, 2).data(Qt.UserRole).toPyObject()) # Only show the first 30K characters
|
||||
else:
|
||||
self.ui.textEditInboxMessage.setPlainText(self.ui.tableWidgetInbox.item(currentRow, 2).data(Qt.UserRole).toPyObject()[
|
||||
editbox.setPlainText(table.item(currentRow, 2).data(Qt.UserRole).toPyObject()[
|
||||
:30000] + '\n\nDisplay of the remainder of the message truncated because it is too long.') # Only show the first 30K characters
|
||||
|
||||
font = QFont()
|
||||
font.setBold(False)
|
||||
self.ui.tableWidgetInbox.item(currentRow, 0).setFont(font)
|
||||
self.ui.tableWidgetInbox.item(currentRow, 1).setFont(font)
|
||||
self.ui.tableWidgetInbox.item(currentRow, 2).setFont(font)
|
||||
self.ui.tableWidgetInbox.item(currentRow, 3).setFont(font)
|
||||
table.item(currentRow, 0).setFont(font)
|
||||
table.item(currentRow, 1).setFont(font)
|
||||
table.item(currentRow, 2).setFont(font)
|
||||
table.item(currentRow, 3).setFont(font)
|
||||
|
||||
inventoryHash = str(self.ui.tableWidgetInbox.item(
|
||||
currentRow, 3).data(Qt.UserRole).toPyObject())
|
||||
inventoryHash = str(table.item(currentRow, 3).data(Qt.UserRole).toPyObject())
|
||||
t = (inventoryHash,)
|
||||
self.ubuntuMessagingMenuClear(t)
|
||||
shared.sqlLock.acquire()
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
# Form implementation generated from reading ui file 'bitmessageui.ui'
|
||||
#
|
||||
# Created: Thu Jun 13 01:02:50 2013
|
||||
# by: PyQt4 UI code generator 4.10.1
|
||||
# Created: Sat Jun 29 15:09:14 2013
|
||||
# by: PyQt4 UI code generator 4.10.2
|
||||
#
|
||||
# WARNING! All changes made in this file will be lost!
|
||||
|
||||
|
@ -26,7 +26,7 @@ except AttributeError:
|
|||
class Ui_MainWindow(object):
|
||||
def setupUi(self, MainWindow):
|
||||
MainWindow.setObjectName(_fromUtf8("MainWindow"))
|
||||
MainWindow.resize(795, 561)
|
||||
MainWindow.resize(847, 561)
|
||||
icon = QtGui.QIcon()
|
||||
icon.addPixmap(QtGui.QPixmap(_fromUtf8(":/newPrefix/images/can-icon-24px.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
|
||||
MainWindow.setWindowIcon(icon)
|
||||
|
@ -86,6 +86,40 @@ class Ui_MainWindow(object):
|
|||
icon1 = QtGui.QIcon()
|
||||
icon1.addPixmap(QtGui.QPixmap(_fromUtf8(":/newPrefix/images/inbox.png")), QtGui.QIcon.Normal, QtGui.QIcon.Off)
|
||||
self.tabWidget.addTab(self.inbox, icon1, _fromUtf8(""))
|
||||
self.broadcasts = QtGui.QWidget()
|
||||
self.broadcasts.setObjectName(_fromUtf8("broadcasts"))
|
||||
self.verticalLayout_3 = QtGui.QVBoxLayout(self.broadcasts)
|
||||
self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
|
||||
self.tableWidgetBroadcasts = QtGui.QTableWidget(self.broadcasts)
|
||||
self.tableWidgetBroadcasts.setAlternatingRowColors(True)
|
||||
self.tableWidgetBroadcasts.setSelectionMode(QtGui.QAbstractItemView.ExtendedSelection)
|
||||
self.tableWidgetBroadcasts.setSelectionBehavior(QtGui.QAbstractItemView.SelectRows)
|
||||
self.tableWidgetBroadcasts.setWordWrap(False)
|
||||
self.tableWidgetBroadcasts.setObjectName(_fromUtf8("tableWidgetBroadcasts"))
|
||||
self.tableWidgetBroadcasts.setColumnCount(4)
|
||||
self.tableWidgetBroadcasts.setRowCount(0)
|
||||
item = QtGui.QTableWidgetItem()
|
||||
self.tableWidgetBroadcasts.setHorizontalHeaderItem(0, item)
|
||||
item = QtGui.QTableWidgetItem()
|
||||
self.tableWidgetBroadcasts.setHorizontalHeaderItem(1, item)
|
||||
item = QtGui.QTableWidgetItem()
|
||||
self.tableWidgetBroadcasts.setHorizontalHeaderItem(2, item)
|
||||
item = QtGui.QTableWidgetItem()
|
||||
self.tableWidgetBroadcasts.setHorizontalHeaderItem(3, item)
|
||||
self.tableWidgetBroadcasts.horizontalHeader().setCascadingSectionResizes(True)
|
||||
self.tableWidgetBroadcasts.horizontalHeader().setDefaultSectionSize(200)
|
||||
self.tableWidgetBroadcasts.horizontalHeader().setHighlightSections(False)
|
||||
self.tableWidgetBroadcasts.horizontalHeader().setMinimumSectionSize(27)
|
||||
self.tableWidgetBroadcasts.horizontalHeader().setSortIndicatorShown(False)
|
||||
self.tableWidgetBroadcasts.horizontalHeader().setStretchLastSection(True)
|
||||
self.tableWidgetBroadcasts.verticalHeader().setVisible(False)
|
||||
self.tableWidgetBroadcasts.verticalHeader().setDefaultSectionSize(26)
|
||||
self.verticalLayout_3.addWidget(self.tableWidgetBroadcasts)
|
||||
self.textEditBroadcastsMessage = QtGui.QTextEdit(self.broadcasts)
|
||||
self.textEditBroadcastsMessage.setBaseSize(QtCore.QSize(0, 500))
|
||||
self.textEditBroadcastsMessage.setObjectName(_fromUtf8("textEditBroadcastsMessage"))
|
||||
self.verticalLayout_3.addWidget(self.textEditBroadcastsMessage)
|
||||
self.tabWidget.addTab(self.broadcasts, _fromUtf8(""))
|
||||
self.send = QtGui.QWidget()
|
||||
self.send.setObjectName(_fromUtf8("send"))
|
||||
self.gridLayout_2 = QtGui.QGridLayout(self.send)
|
||||
|
@ -392,7 +426,7 @@ class Ui_MainWindow(object):
|
|||
self.gridLayout.addWidget(self.tabWidget, 0, 0, 1, 1)
|
||||
MainWindow.setCentralWidget(self.centralwidget)
|
||||
self.menubar = QtGui.QMenuBar(MainWindow)
|
||||
self.menubar.setGeometry(QtCore.QRect(0, 0, 795, 18))
|
||||
self.menubar.setGeometry(QtCore.QRect(0, 0, 847, 24))
|
||||
self.menubar.setObjectName(_fromUtf8("menubar"))
|
||||
self.menuFile = QtGui.QMenu(self.menubar)
|
||||
self.menuFile.setObjectName(_fromUtf8("menuFile"))
|
||||
|
@ -477,6 +511,16 @@ class Ui_MainWindow(object):
|
|||
item = self.tableWidgetInbox.horizontalHeaderItem(3)
|
||||
item.setText(_translate("MainWindow", "Received", None))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.inbox), _translate("MainWindow", "Inbox", None))
|
||||
self.tableWidgetBroadcasts.setSortingEnabled(True)
|
||||
item = self.tableWidgetBroadcasts.horizontalHeaderItem(0)
|
||||
item.setText(_translate("MainWindow", "To", None))
|
||||
item = self.tableWidgetBroadcasts.horizontalHeaderItem(1)
|
||||
item.setText(_translate("MainWindow", "From", None))
|
||||
item = self.tableWidgetBroadcasts.horizontalHeaderItem(2)
|
||||
item.setText(_translate("MainWindow", "Subject", None))
|
||||
item = self.tableWidgetBroadcasts.horizontalHeaderItem(3)
|
||||
item.setText(_translate("MainWindow", "Received", None))
|
||||
self.tabWidget.setTabText(self.tabWidget.indexOf(self.broadcasts), _translate("MainWindow", "Broadcasts", None))
|
||||
self.pushButtonLoadFromAddressBook.setText(_translate("MainWindow", "Load from Address book", None))
|
||||
self.label_4.setText(_translate("MainWindow", "Message:", None))
|
||||
self.label_3.setText(_translate("MainWindow", "Subject:", None))
|
||||
|
@ -484,8 +528,8 @@ class Ui_MainWindow(object):
|
|||
self.textEditMessage.setHtml(_translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
|
||||
"p, li { white-space: pre-wrap; }\n"
|
||||
"</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:9pt; font-weight:400; font-style:normal;\">\n"
|
||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><br /></p></body></html>", None))
|
||||
"</style></head><body style=\" font-family:\'Droid Sans [unknown]\'; font-size:9pt; font-weight:400; font-style:normal;\">\n"
|
||||
"<p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:\'MS Shell Dlg 2\';\"><br /></p></body></html>", None))
|
||||
self.label.setText(_translate("MainWindow", "To:", None))
|
||||
self.label_2.setText(_translate("MainWindow", "From:", None))
|
||||
self.radioButtonBroadcast.setText(_translate("MainWindow", "Broadcast to everyone who is subscribed to your address", None))
|
||||
|
@ -559,13 +603,3 @@ class Ui_MainWindow(object):
|
|||
self.actionDeleteAllTrashedMessages.setText(_translate("MainWindow", "Delete all trashed messages", None))
|
||||
|
||||
import bitmessage_icons_rc
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
app = QtGui.QApplication(sys.argv)
|
||||
MainWindow = QtGui.QMainWindow()
|
||||
ui = Ui_MainWindow()
|
||||
ui.setupUi(MainWindow)
|
||||
MainWindow.show()
|
||||
sys.exit(app.exec_())
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>795</width>
|
||||
<width>847</width>
|
||||
<height>561</height>
|
||||
</rect>
|
||||
</property>
|
||||
|
@ -14,7 +14,7 @@
|
|||
<string>Bitmessage</string>
|
||||
</property>
|
||||
<property name="windowIcon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/can-icon-24px.png</normaloff>:/newPrefix/images/can-icon-24px.png</iconset>
|
||||
</property>
|
||||
<property name="tabShape">
|
||||
|
@ -61,7 +61,7 @@
|
|||
</property>
|
||||
<widget class="QWidget" name="inbox">
|
||||
<attribute name="icon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/inbox.png</normaloff>:/newPrefix/images/inbox.png</iconset>
|
||||
</attribute>
|
||||
<attribute name="title">
|
||||
|
@ -143,9 +143,89 @@
|
|||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="broadcasts">
|
||||
<attribute name="title">
|
||||
<string>Broadcasts</string>
|
||||
</attribute>
|
||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||
<item>
|
||||
<widget class="QTableWidget" name="tableWidgetBroadcasts">
|
||||
<property name="alternatingRowColors">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="selectionMode">
|
||||
<enum>QAbstractItemView::ExtendedSelection</enum>
|
||||
</property>
|
||||
<property name="selectionBehavior">
|
||||
<enum>QAbstractItemView::SelectRows</enum>
|
||||
</property>
|
||||
<property name="sortingEnabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="wordWrap">
|
||||
<bool>false</bool>
|
||||
</property>
|
||||
<attribute name="horizontalHeaderCascadingSectionResizes">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderDefaultSectionSize">
|
||||
<number>200</number>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderHighlightSections">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderMinimumSectionSize">
|
||||
<number>27</number>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderShowSortIndicator" stdset="0">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="horizontalHeaderStretchLastSection">
|
||||
<bool>true</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderVisible">
|
||||
<bool>false</bool>
|
||||
</attribute>
|
||||
<attribute name="verticalHeaderDefaultSectionSize">
|
||||
<number>26</number>
|
||||
</attribute>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>To</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>From</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Subject</string>
|
||||
</property>
|
||||
</column>
|
||||
<column>
|
||||
<property name="text">
|
||||
<string>Received</string>
|
||||
</property>
|
||||
</column>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QTextEdit" name="textEditBroadcastsMessage">
|
||||
<property name="baseSize">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>500</height>
|
||||
</size>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
<widget class="QWidget" name="send">
|
||||
<attribute name="icon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/send.png</normaloff>:/newPrefix/images/send.png</iconset>
|
||||
</attribute>
|
||||
<attribute name="title">
|
||||
|
@ -214,8 +294,8 @@
|
|||
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
|
||||
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
|
||||
p, li { white-space: pre-wrap; }
|
||||
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:9pt; font-weight:400; font-style:normal;">
|
||||
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p></body></html></string>
|
||||
</style></head><body style=" font-family:'Droid Sans [unknown]'; font-size:9pt; font-weight:400; font-style:normal;">
|
||||
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'MS Shell Dlg 2';"><br /></p></body></html></string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
@ -303,7 +383,7 @@ p, li { white-space: pre-wrap; }
|
|||
</widget>
|
||||
<widget class="QWidget" name="sent">
|
||||
<attribute name="icon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/sent.png</normaloff>:/newPrefix/images/sent.png</iconset>
|
||||
</attribute>
|
||||
<attribute name="title">
|
||||
|
@ -380,7 +460,7 @@ p, li { white-space: pre-wrap; }
|
|||
</widget>
|
||||
<widget class="QWidget" name="youridentities">
|
||||
<attribute name="icon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/identities.png</normaloff>:/newPrefix/images/identities.png</iconset>
|
||||
</attribute>
|
||||
<attribute name="title">
|
||||
|
@ -480,7 +560,7 @@ p, li { white-space: pre-wrap; }
|
|||
</widget>
|
||||
<widget class="QWidget" name="subscriptions">
|
||||
<attribute name="icon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/subscriptions.png</normaloff>:/newPrefix/images/subscriptions.png</iconset>
|
||||
</attribute>
|
||||
<attribute name="title">
|
||||
|
@ -565,7 +645,7 @@ p, li { white-space: pre-wrap; }
|
|||
</widget>
|
||||
<widget class="QWidget" name="addressbook">
|
||||
<attribute name="icon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/addressbook.png</normaloff>:/newPrefix/images/addressbook.png</iconset>
|
||||
</attribute>
|
||||
<attribute name="title">
|
||||
|
@ -647,7 +727,7 @@ p, li { white-space: pre-wrap; }
|
|||
</widget>
|
||||
<widget class="QWidget" name="blackwhitelist">
|
||||
<attribute name="icon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/blacklist.png</normaloff>:/newPrefix/images/blacklist.png</iconset>
|
||||
</attribute>
|
||||
<attribute name="title">
|
||||
|
@ -739,7 +819,7 @@ p, li { white-space: pre-wrap; }
|
|||
</widget>
|
||||
<widget class="QWidget" name="networkstatus">
|
||||
<attribute name="icon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/networkstatus.png</normaloff>:/newPrefix/images/networkstatus.png</iconset>
|
||||
</attribute>
|
||||
<attribute name="title">
|
||||
|
@ -758,7 +838,7 @@ p, li { white-space: pre-wrap; }
|
|||
<string/>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset resource="bitmessage_icons.qrc">
|
||||
<iconset>
|
||||
<normaloff>:/newPrefix/images/redicon.png</normaloff>:/newPrefix/images/redicon.png</iconset>
|
||||
</property>
|
||||
<property name="flat">
|
||||
|
@ -924,8 +1004,8 @@ p, li { white-space: pre-wrap; }
|
|||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>795</width>
|
||||
<height>18</height>
|
||||
<width>847</width>
|
||||
<height>24</height>
|
||||
</rect>
|
||||
</property>
|
||||
<widget class="QMenu" name="menuFile">
|
||||
|
|
Reference in New Issue
Block a user