def __init__(self, chatrooms=None, room=None, users=None): self.lines = [] self.chatrooms = chatrooms self.frame = chatrooms.frame self.room = room QtGui.QWidget.__init__(self, None) self.ui = Ui_Room() self.ui.setupUi(self) #self.connect(self, SIGNAL("PrivateMessage(PyQt_PyObject,PyQt_PyObject, PyQt_PyObject)"), self.frame.Networking.PrivateMessage) self.ui.UserList.setHeaderLabels(("", "User", "Speed", "Files")) self.ui.UserList.setIndentation(0) self.ui.UserList.setColumnWidth(0, 20) self.ui.UserList.setColumnWidth(1, 100) self.ui.UserList.setColumnWidth(2, 100) self.ui.UserList.setColumnWidth(3, 50) self.ui.UserList.setColumnCount(4) self.ui.UserList.sortItems(1, Qt.AscendingOrder) self.tag_remote = self.frame.makecolour(self.ui.UserList, "chatremote") self.tag_local = self.frame.makecolour(self.ui.UserList, "chatlocal") self.tag_me = self.frame.makecolour(self.ui.UserList, "chatme") self.tag_hilite = self.frame.makecolour(self.ui.UserList, "chathilite") self.users = {} for username, stats in users.items(): self.users[username] = QTreeWidgetItem( self.ui.UserList.invisibleRootItem()) status, speed, downloads, files, dirs = self.frame.user_stats[ username] = [stats[0], stats[1], stats[2], stats[3], stats[4]] hspeed = self.frame.HumanSpeed(speed) hfiles = self.frame.Humanize(files) #print self.frame.user_stats[user] self.users[username].setIcon( 0, self.frame.GetStatusImage(username, status)) self.users[username].setText(1, username) self.users[username].setText(2, hspeed) self.users[username].setTextAlignment(2, Qt.AlignRight) self.users[username].setText(3, hfiles) self.users[username].setTextAlignment(3, Qt.AlignRight) self.users[username].setText(4, str(status)) self.users[username].setData(5, 0, QVariant(speed)) self.users[username].setData(6, 0, QVariant(files)) #newuser.setText(0, status) self.connect(self.ui.ChatEntry, SIGNAL("returnPressed()"), self.SayRoom) self.connect(self.ui.Close, SIGNAL("clicked()"), self.LeaveRoom) self.tag_log = None self.ui.UserList.resizeColumnToContents(0) #self.ui.UserList.resizeColumnToContents(1) self.ui.UserList.resizeColumnToContents(2)