def LoadFilters(self): scrolllist = [] for name, labelName in fleetbr.broadcastNames.iteritems(): data = KeyVal() if name == 'Event': rngName = '' else: rng = fleetbr.GetBroadcastWhere(name) rngName = fleetbr.GetBroadcastWhereName(rng) data.label = localization.GetByLabel(labelName) data.props = None data.checked = bool( settings.user.ui.Get('listenBroadcast_%s' % name, True)) data.cfgname = name data.retval = None data.hint = '%s:<br>%s' % (localization.GetByLabel( 'UI/Fleet/FleetBroadcast/RecipientRange'), rngName) data.colorcoded = settings.user.ui.Get( 'fleet_broadcastcolor_%s' % name, None) data.OnChange = self.Filter_OnCheckBoxChange scrolllist.append( listentry.Get(entryType=None, data=data, decoClass=BroadcastSettingsEntry)) self.sr.scrollBroadcasts.sr.id = 'scrollBroadcasts' self.sr.scrollBroadcasts.Load(contentList=scrolllist)
def AddCheckBox(self, config, scrolllist, group = None, usecharsettings = 0, sublevel = 0): cfgname, retval, desc, default = config data = KeyVal() data.label = desc data.checked = default data.cfgname = cfgname data.retval = retval data.group = group data.sublevel = sublevel data.OnChange = self.CheckBoxChange data.usecharsettings = usecharsettings data.hideLines = True if scrolllist is not None: scrolllist.append(listentry.Get('Checkbox', data=data)) else: return listentry.Get('Checkbox', data=data)
def LoadComposition(self): fleetSvc = sm.GetService('fleet') if not fleetSvc.IsCommanderOrBoss(): raise UserError('FleetNotCommanderOrBoss') scrolllist = [] composition = fleetSvc.GetFleetComposition() fleetHierarchy = fleetSvc.GetFleetHierarchy() fleetPositionText = localization.GetByLabel( 'UI/Fleet/FleetWindow/FleetPosition') for kv in composition: blue.pyos.BeNice() member = fleetSvc.GetMemberInfo(kv.characterID, fleetHierarchy) if not fleetSvc.IsMySubordinate( kv.characterID) and not fleetSvc.IsBoss(): continue data = KeyVal() charName = localization.GetByLabel('UI/Common/CharacterNameLabel', charID=kv.characterID) locationName = localization.GetByLabel('UI/Common/LocationDynamic', location=kv.solarSystemID) if kv.stationID: locationName = '%s %s' % ( locationName, localization.GetByLabel('UI/Fleet/FleetComposition/Docked') ) if kv.shipTypeID is not None: shipTypeName = evetypes.GetName(kv.shipTypeID) shipGroupName = evetypes.GetGroupName(kv.shipTypeID) else: shipTypeName = '' shipGroupName = '' if kv.skills: skillLevels = localization.GetByLabel( 'UI/Fleet/FleetComposition/SkillLevels', skillLevelA=kv.skills[2], skillLevelB=kv.skills[1], skillLevelC=kv.skills[0]) data.hint = localization.GetByLabel( 'UI/Fleet/FleetComposition/SkillsHint', skillTypeA=kv.skillIDs[2], skillLevelA=kv.skills[2], skillTypeB=kv.skillIDs[1], skillLevelB=kv.skills[1], skillTypeC=kv.skillIDs[0], skillLevelC=kv.skills[0]) else: skillLevels = '' if not member.wingName: fleetPosition = '' positionSortValue = (None, None) elif not member.squadName: fleetPosition = member.wingName positionSortValue = (fleetPosition, None) else: fleetPosition = '%s / %s ' % (member.wingName, member.squadName) positionSortValue = (member.wingName, member.squadName) data.label = '<t>'.join([ charName, locationName, shipTypeName, shipGroupName, member.roleName, skillLevels, fleetPosition ]) data.GetMenu = self.OnCompositionEntryMenu data.cfgname = charName data.retval = None data.charID = kv.characterID data.shipTypeID = kv.shipTypeID data.solarSystemID = kv.solarSystemID data.info = cfg.eveowners.Get(kv.characterID) data.Set('sort_%s' % fleetPositionText, positionSortValue) scrolllist.append(listentry.Get('FleetCompositionEntry', data=data)) self.counterLabel.text = localization.GetByLabel( 'UI/Fleet/FleetComposition/PilotsSelected', numSelected=0, numTotalPilots=len(scrolllist)) self.sr.scrollBroadcasts.sr.id = 'scrollComposition' headers = [ localization.GetByLabel('UI/Common/Name'), localization.GetByLabel('UI/Common/Location'), localization.GetByLabel('UI/Fleet/FleetComposition/ShipType'), localization.GetByLabel('UI/Fleet/FleetComposition/ShipGroup'), localization.GetByLabel('UI/Fleet/FleetComposition/FleetRole'), localization.GetByLabel('UI/Fleet/FleetComposition/FleetSkills'), fleetPositionText ] self.sr.scrollBroadcasts.Load(headers=headers, contentList=scrolllist)