def updateList(self, selectedID, result): isFullUpdate, diff = False, [] self._selectedIdx = None result = set(result) for clubItem in result: try: index = self.mapping[clubItem.getID()] item = self.collection[index] except (KeyError, IndexError): LOG_ERROR('Item not found', clubItem) continue item.update({ 'rating': self.getGuiUserRating(clubItem.getCreatorID()), 'playersCount': clubItem.getMembersCount(), 'commandSize': clubItem.getCommandSize(), 'description': clubItem.getDescription(), 'ladderIcon': getLadderChevron16x16(clubItem.getDivision()) }) diff.append(index) if self._selectedIdx is None and selectedID in self.mapping: self._selectedIdx = self.mapping[selectedID] if isFullUpdate: self.refresh() elif len(diff): self.updateItems(diff) return self._selectedIdx
def updateList(self, selectedID, result): isFullUpdate, diff = False, [] self._selectedIdx = None result = set(result) for clubItem in result: try: index = self.mapping[clubItem.getID()] item = self.collection[index] except (KeyError, IndexError): LOG_ERROR('Item not found', clubItem) continue item.update({'rating': self.getGuiUserRating(clubItem.getCreatorID()), 'playersCount': clubItem.getMembersCount(), 'commandSize': clubItem.getCommandSize(), 'description': clubItem.getDescription(), 'ladderIcon': getLadderChevron16x16(clubItem.getDivision())}) diff.append(index) if self._selectedIdx is None and selectedID in self.mapping: self._selectedIdx = self.mapping[selectedID] if isFullUpdate: self.refresh() elif len(diff): self.updateItems(diff) return self._selectedIdx
def buildList(self, selectedID, result, syncUserInfo=True): self.clear() userGetter = storage_getter('users')().getUser colorGetter = g_settings.getColorScheme('rosters').getColors ratingFormatter = BigWorld.wg_getIntegralFormat self._selectedIdx = -1 self._lastResult = result data = [] for clubItem in result: cfdUnitID = clubItem.getID() creatorID = clubItem.getCreatorID() rating = self.getUserRating(creatorID) creator = self._UserEntityAdapter(creatorID, clubItem, userGetter(creatorID), self) creatorName = creator.getName() creatorVO = makeUserVO(creator, colorGetter) index = len(self.collection) if cfdUnitID == selectedID: self._selectedIdx = index self.mapping[cfdUnitID] = index data.append((rating, { 'cfdUnitID': cfdUnitID, 'unitMgrID': cfdUnitID, 'creator': creatorVO, 'creatorName': creatorName, 'rating': self.getGuiUserRating(creatorID), 'playersCount': clubItem.getMembersCount(), 'commandSize': clubItem.getCommandSize(), 'inBattle': False, 'isFreezed': False, 'isRestricted': False, 'description': html.escape(clubItem.getShortDescription()), 'peripheryID': -1, 'server': None, 'ladderIcon': getLadderChevron16x16(clubItem.getDivision()), 'isStatic': True })) self.collection.extend( map(lambda (r, c): c, sorted(data, reverse=True, key=operator.itemgetter(0)))) if syncUserInfo: self.syncUsersInfo() return self._selectedIdx
def buildList(self, selectedID, result, syncUserInfo=True): self.clear() userGetter = storage_getter("users")().getUser colorGetter = g_settings.getColorScheme("rosters").getColors ratingFormatter = BigWorld.wg_getIntegralFormat self._selectedIdx = -1 self._lastResult = result data = [] for clubItem in result: cfdUnitID = clubItem.getID() creatorID = clubItem.getCreatorID() rating = self.getUserRating(creatorID) creator = self._UserEntityAdapter(creatorID, clubItem, userGetter(creatorID), self) creatorName = creator.getName() creatorVO = makeUserVO(creator, colorGetter) index = len(self.collection) if cfdUnitID == selectedID: self._selectedIdx = index self.mapping[cfdUnitID] = index data.append( ( rating, { "cfdUnitID": cfdUnitID, "unitMgrID": cfdUnitID, "creator": creatorVO, "creatorName": creatorName, "rating": self.getGuiUserRating(creatorID), "playersCount": clubItem.getMembersCount(), "commandSize": clubItem.getCommandSize(), "inBattle": False, "isFreezed": False, "isRestricted": False, "description": html.escape(clubItem.getShortDescription()), "peripheryID": -1, "server": None, "ladderIcon": getLadderChevron16x16(clubItem.getDivision()), "isStatic": True, }, ) ) self.collection.extend(map(lambda (r, c): c, sorted(data, reverse=True, key=operator.itemgetter(0)))) if syncUserInfo: self.syncUsersInfo() return self._selectedIdx
def buildList(self, selectedID, result): self.clear() userGetter = storage_getter("users")().getUser colorGetter = g_settings.getColorScheme("rosters").getColors pNameGetter = g_lobbyContext.getPeripheryName ratingFormatter = BigWorld.wg_getIntegralFormat self._selectedIdx = -1 for unitItem in result: creator = unitItem.creator if creator: dbID = creator.dbID creatorVO = makePlayerVO(creator, userGetter(dbID), colorGetter) else: creatorVO = {} if unitItem.isClub: ladderIcon = getLadderChevron16x16(unitItem.extra.divisionID) else: ladderIcon = None cfdUnitID = unitItem.cfdUnitID index = len(self.collection) if cfdUnitID == selectedID: self._selectedIdx = index self.mapping[cfdUnitID] = index self.collection.append( { "cfdUnitID": cfdUnitID, "unitMgrID": unitItem.unitMgrID, "creator": creatorVO, "creatorName": creatorVO.get("userName", ""), "rating": ratingFormatter(unitItem.rating), "playersCount": unitItem.playersCount, "commandSize": unitItem.commandSize, "inBattle": unitItem.flags.isInArena(), "isFreezed": unitItem.flags.isLocked(), "isRestricted": unitItem.isRosterSet, "description": unitItem.description, "peripheryID": unitItem.peripheryID, "server": pNameGetter(unitItem.peripheryID), "ladderIcon": ladderIcon, "isStatic": unitItem.isClub, } ) return self._selectedIdx
def buildList(self, selectedID, result): self.clear() userGetter = storage_getter('users')().getUser colorGetter = g_settings.getColorScheme('rosters').getColors pNameGetter = g_lobbyContext.getPeripheryName ratingFormatter = BigWorld.wg_getIntegralFormat self._selectedIdx = -1 for unitItem in result: creator = unitItem.creator if creator: dbID = creator.dbID creatorVO = makePlayerVO(creator, userGetter(dbID), colorGetter) else: creatorVO = {} if unitItem.isClub: ladderIcon = getLadderChevron16x16(unitItem.extra.divisionID) else: ladderIcon = None cfdUnitID = unitItem.cfdUnitID index = len(self.collection) if cfdUnitID == selectedID: self._selectedIdx = index self.mapping[cfdUnitID] = index self.collection.append({ 'cfdUnitID': cfdUnitID, 'unitMgrID': unitItem.unitMgrID, 'creator': creatorVO, 'creatorName': creatorVO.get('userName', ''), 'rating': ratingFormatter(unitItem.rating), 'playersCount': unitItem.playersCount, 'commandSize': unitItem.commandSize, 'inBattle': unitItem.flags.isInArena(), 'isFreezed': unitItem.flags.isLocked(), 'isRestricted': unitItem.isRosterSet, 'description': unitItem.description, 'peripheryID': unitItem.peripheryID, 'server': pNameGetter(unitItem.peripheryID), 'ladderIcon': ladderIcon, 'isStatic': unitItem.isClub }) return self._selectedIdx
def buildList(self, selectedID, result, syncUserInfo = True): self.clear() userGetter = storage_getter('users')().getUser colorGetter = g_settings.getColorScheme('rosters').getColors ratingFormatter = BigWorld.wg_getIntegralFormat self._selectedIdx = -1 self._lastResult = result data = [] for clubItem in result: cfdUnitID = clubItem.getID() creatorID = clubItem.getCreatorID() creator = userGetter(creatorID) rating = self.getUserRating(creatorID) if creator is None: creator = self._UserEntityAdapter(creatorID, self) creatorName = creator.getName() creatorVO = makeUserVO(creator, colorGetter) index = len(self.collection) if cfdUnitID == selectedID: self._selectedIdx = index self.mapping[cfdUnitID] = index data.append((rating, {'cfdUnitID': cfdUnitID, 'unitMgrID': cfdUnitID, 'creator': creatorVO, 'creatorName': creatorName, 'rating': ratingFormatter(rating), 'playersCount': clubItem.getMembersCount(), 'commandSize': clubItem.getCommandSize(), 'inBattle': False, 'isFreezed': False, 'isRestricted': False, 'description': html.escape(clubItem.getShortDescription()), 'peripheryID': -1, 'server': None, 'ladderIcon': getLadderChevron16x16(clubItem.getDivision()), 'isStatic': True})) self.collection.extend(map(lambda (r, c): c, sorted(data, reverse=True, key=operator.itemgetter(0)))) if syncUserInfo: self.syncUsersInfo() return self._selectedIdx
def buildList(self, selectedID, result): self.clear() userGetter = storage_getter('users')().getUser colorGetter = g_settings.getColorScheme('rosters').getColors pNameGetter = g_lobbyContext.getPeripheryName ratingFormatter = BigWorld.wg_getIntegralFormat self._selectedIdx = -1 for unitItem in result: creator = unitItem.creator if creator: dbID = creator.dbID creatorVO = makePlayerVO(creator, userGetter(dbID), colorGetter) else: creatorVO = {} if unitItem.isClub: ladderIcon = getLadderChevron16x16(unitItem.extra.divisionID) else: ladderIcon = None cfdUnitID = unitItem.cfdUnitID index = len(self.collection) if cfdUnitID == selectedID: self._selectedIdx = index self.mapping[cfdUnitID] = index self.collection.append({'cfdUnitID': cfdUnitID, 'unitMgrID': unitItem.unitMgrID, 'creator': creatorVO, 'creatorName': creatorVO.get('userName', ''), 'rating': ratingFormatter(unitItem.rating), 'playersCount': unitItem.playersCount, 'commandSize': unitItem.commandSize, 'inBattle': unitItem.flags.isInArena(), 'isFreezed': unitItem.flags.isLocked(), 'isRestricted': unitItem.isRosterSet, 'description': unitItem.description, 'peripheryID': unitItem.peripheryID, 'server': pNameGetter(unitItem.peripheryID), 'ladderIcon': ladderIcon, 'isStatic': unitItem.isClub}) return self._selectedIdx
def getLadderChevron(self): return getLadderChevron16x16(self.division)
def getLadderChevron(self): return getLadderChevron16x16(self.division)