Exemplo n.º 1
0
    def GetSubContent(self, data, *args):
        scrolllist = []
        skillQueueSvc = sm.GetService('skillqueue')
        skillqueue = skillQueueSvc.GetServerQueue()
        skillqueue = {(x.trainingTypeID, x.trainingToLevel): idx
                      for idx, x in enumerate(skillqueue)}
        mySkills = sm.GetService('skills').GetSkills()
        skillsInQueue = data.inqueue
        skillInTraining = skillQueueSvc.SkillInTraining()
        toggleGroups = settings.user.ui.Get(
            'charsheet_toggleOneSkillGroupAtATime', 1)
        if toggleGroups and not data.forceOpen:
            dataWnd = Window.GetIfOpen(unicode(data.id))
            if not dataWnd:
                for entry in self.scroll.GetNodes():
                    if entry.__guid__ != 'listentry.Group' or entry.id == data.id:
                        continue
                    if entry.open:
                        if entry.panel:
                            entry.panel.Toggle()
                        else:
                            uicore.registry.SetListGroupOpenState(entry.id, 0)
                            entry.scroll.PrepareSubContent(entry)

        skillsInGroup = localization.util.Sort(
            data.groupItems, key=lambda x: evetypes.GetName(x.typeID))
        for skill in skillsInGroup:
            inQueue = None
            if skill.typeID in skillsInQueue:
                for i in xrange(5, skill.skillLevel, -1):
                    if (skill.typeID, i) in skillqueue:
                        inQueue = i
                        break

            inTraining = 0
            if skillInTraining and skill.typeID == skillInTraining.typeID:
                inTraining = 1
            data = {
                'invtype': skill.typeID,
                'skill': skill,
                'trained': skill.typeID in mySkills,
                'plannedInQueue': inQueue,
                'skillID': skill.typeID,
                'inTraining': inTraining
            }
            scrolllist.append(entries.Get('SkillEntry', data))

        return scrolllist
Exemplo n.º 2
0
    def GetCertSubContent(self, dataX, *args):
        toggleGroups = settings.user.ui.Get(
            'charsheet_toggleOneCertGroupAtATime', 1)
        if toggleGroups and not dataX.forceOpen:
            dataWnd = Window.GetIfOpen(windowID=unicode(dataX.id))
            if not dataWnd:
                for entry in self.scroll.GetNodes():
                    if entry.__guid__ != 'listentry.Group' or entry.id == dataX.id:
                        continue
                    if entry.open:
                        if entry.panel:
                            entry.panel.Toggle()
                        else:
                            uicore.registry.SetListGroupOpenState(entry.id, 0)
                            entry.scroll.PrepareSubContent(entry)

        entries = self.GetCertificateEntries(dataX)
        return entries