MCPcopy Index your code
hub / github.com/Bitmessage/PyBitmessage / MessageList_AddressWidget

Class MessageList_AddressWidget

src/bitmessageqt/foldertree.py:296–368  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

294
295
296class MessageList_AddressWidget(QtGui.QTableWidgetItem, AccountMixin, SettingsMixin):
297 def __init__(self, parent, address = None, label = None, unread = False):
298 super(QtGui.QTableWidgetItem, self).__init__()
299 #parent.insertTopLevelItem(pos, self)
300 # only set default when creating
301 #super(QtGui.QTreeWidgetItem, self).setExpanded(BMConfigParser().getboolean(self.address, 'enabled'))
302 self.isEnabled = True
303 self.setAddress(address)
304 self.setLabel(label)
305 self.setUnread(unread)
306 self.setFlags(QtCore.Qt.ItemIsSelectable | QtCore.Qt.ItemIsEnabled)
307 self.setType()
308 parent.append(self)
309
310 def setLabel(self, label = None):
311 newLabel = self.address
312 if label is None:
313 queryreturn = None
314 if self.type in (AccountMixin.NORMAL, AccountMixin.CHAN, AccountMixin.MAILINGLIST):
315 try:
316 newLabel = unicode(BMConfigParser().get(self.address, 'label'), 'utf-8', 'ignore')
317 except:
318 queryreturn = sqlQuery(
319 '''select label from addressbook where address=?''', self.address)
320 elif self.type == AccountMixin.SUBSCRIPTION:
321 queryreturn = sqlQuery(
322 '''select label from subscriptions where address=?''', self.address)
323 if queryreturn is not None:
324 if queryreturn != []:
325 for row in queryreturn:
326 newLabel = unicode(row[0], 'utf-8', 'ignore')
327 else:
328 newLabel = label
329 if hasattr(self, 'label') and newLabel == self.label:
330 return
331 self.label = newLabel
332
333 def setUnread(self, unread):
334 self.unread = unread
335
336 def data(self, role):
337 if role == QtCore.Qt.DisplayRole:
338 return self.label
339 elif role == QtCore.Qt.EditRole:
340 return self.label
341 elif role == QtCore.Qt.ToolTipRole:
342 return self.label + " (" + self.address + ")"
343 elif role == QtCore.Qt.DecorationRole:
344 if BMConfigParser().safeGetBoolean('bitmessagesettings', 'useidenticons'):
345 if self.address is None:
346 return avatarize(self.label)
347 else:
348 return avatarize(self.address)
349 elif role == QtCore.Qt.FontRole:
350 font = QtGui.QFont()
351 font.setBold(self.unread)
352 return font
353 elif role == QtCore.Qt.ForegroundRole:

Callers 2

Calls

no outgoing calls

Tested by

no test coverage detected