Пример #1
0
 def ApplyAttributes(self, attributes):
     ContainerAutoSize.ApplyAttributes(self, attributes)
     self.abortbtn = None
     self.abortbtnpar = None
     self.confirmbtn = None
     self.abortconfirmbtnpar = None
     self.sr.readprogress = util.KeyVal(text='', prev=0)
     self.caption = EveCaptionMedium(name='caption',
                                     parent=self,
                                     align=uiconst.TOTOP,
                                     padding=(25, 0, 25, 0),
                                     top=12,
                                     idx=0,
                                     state=uiconst.UI_DISABLED)
     self.progressText = EveLabelMedium(parent=self,
                                        width=270,
                                        left=2,
                                        top=4,
                                        state=uiconst.UI_NORMAL,
                                        align=uiconst.TOTOP,
                                        padding=(25, 0, 25, 0))
     self.progressBar = ProgressBar(parent=self,
                                    height=10,
                                    padding=(25, 10, 25, 10),
                                    align=uiconst.TOTOP)
     uicontrols.WindowUnderlay(bgParent=self)
Пример #2
0
 def Expand(self, *args):
     self.expanding = 1
     if sm.GetService('connection').IsConnected():
         eve.Message('ComboExpand')
     log.LogInfo('ColorPreview', self.name, 'expanding')
     colorpar = uiprimitives.Container(name='colors',
                                       align=uiconst.TOPLEFT,
                                       width=112,
                                       height=62)
     uicore.layer.menu.children.insert(0, colorpar)
     colorSwatch = ColorSwatch(name='colorSwatch',
                               align=uiconst.TOALL,
                               parent=colorpar)
     colorSwatch.Startup()
     colorSwatch.sr.dad = self
     self.sr.wndUnderlay = uicontrols.WindowUnderlay(parent=colorpar)
     self.sr.wndUnderlay.padding = -6
     l, t, w, h = self.sr.preview.GetAbsolute()
     colorpar.left = [l + w, l - colorpar.width
                      ][l + w + colorpar.width > uicore.desktop.width]
     colorpar.top = [t + h, t - colorpar.height
                     ][t + h + colorpar.height > uicore.desktop.height]
     colorpar.state = uiconst.UI_NORMAL
     self.colorpar = colorpar
     self.sr.cookie = uicore.event.RegisterForTriuiEvents(
         uiconst.UI_MOUSEUP, self.OnGlobalClick)
     self.expanding = 0
     self.expanded = 1
     log.LogInfo('ColorPreview', self.name, 'expanded')
Пример #3
0
 def ApplyAttributes(self, attributes):
     uiprimitives.Container.ApplyAttributes(self, attributes)
     self.submenu = None
     self.hilitedentry = None
     entries = uiprimitives.Container(parent=self,
                                      name='entries',
                                      padding=(2, 2, 2, 2),
                                      align=uiconst.TOALL,
                                      state=uiconst.UI_PICKCHILDREN)
     underlay = uicontrols.WindowUnderlay(parent=self)
Пример #4
0
    def GetUnderlay(self):
        if self.underlay is None:
            for each in uicore.layer.main.children[:]:
                if each is not None and not each.destroyed and each.name == 'services':
                    uicore.registry.UnregisterWindow(each)
                    each.OnClick = None
                    each.Minimize = None
                    each.Maximize = None
                    each.Close()

            self.underlay = uiprimitives.Sprite(name='services',
                                                parent=uicore.layer.main,
                                                align=uiconst.TOTOP,
                                                state=uiconst.UI_HIDDEN)
            self.underlay.scope = 'station'
            self.underlay.minimized = 0
            self.underlay.Minimize = self.MinimizeUnderlay
            self.underlay.Maximize = self.MaximizeUnderlay
            main = uiprimitives.Container(name='mainparentXX',
                                          parent=self.underlay,
                                          align=uiconst.TOALL,
                                          pos=(0, 0, 0, 0))
            main.OnClick = self.ClickParent
            main.state = uiconst.UI_NORMAL
            sub = uiprimitives.Container(name='subparent',
                                         parent=main,
                                         align=uiconst.TOALL,
                                         pos=(0, 0, 0, 0))
            captionparent = uiprimitives.Container(name='captionparent',
                                                   parent=main,
                                                   align=uiconst.TOPLEFT,
                                                   left=128,
                                                   top=36,
                                                   idx=0)
            caption = uicontrols.CaptionLabel(text='', parent=captionparent)
            self.closeBtn = uicontrols.ButtonGroup(btns=[[
                localization.GetByLabel('UI/Commands/CmdClose'), self.CloseSvc,
                None, 81
            ]],
                                                   parent=sub)
            self.sr.underlay = uicontrols.WindowUnderlay(parent=main)
            self.sr.underlay.padding = (-1, -10, -1, 0)
            svcparent = uiprimitives.Container(name='serviceparent',
                                               parent=sub,
                                               align=uiconst.TOALL,
                                               pos=(0, 0, 0, 0))
            self.underlay.sr.main = main
            self.underlay.sr.svcparent = svcparent
            self.underlay.sr.caption = caption
            uicore.registry.RegisterWindow(self.underlay)
        return self.underlay
Пример #5
0
    def ClickPic(self, idx):
        """
        A logo layer pic has been clicked; Open the logo layer selection pop-up
        """
        if not self.sr.Get('shapes', None):
            top = self.corpLogo.top + self.corpLogo.height
            self.sr.shapes = uiprimitives.Container(name='shapes_container',
                                                    parent=self.sr.main,
                                                    align=uiconst.CENTERTOP,
                                                    height=220,
                                                    width=280,
                                                    idx=0,
                                                    top=top)
            self.sr.shapes.state = uiconst.UI_HIDDEN
            shapescroll = uicontrols.Scroll(
                parent=self.sr.shapes,
                padding=(const.defaultPadding, const.defaultPadding,
                         const.defaultPadding, const.defaultPadding))
            self.AddCloseButton(self.sr.shapes)
            self.sr.underlay = uicontrols.WindowUnderlay(parent=self.sr.shapes)
            x = 0
            scrolllist = []
            icons = []
            graphicIDs = const.graphicCorpLogoLibShapes.keys()
            graphicIDs.sort()
            for graphicID in graphicIDs:
                texturePath = self.GetLogoLibShape(graphicID)
                icons.append((texturePath, None, graphicID, self.PickPic))
                x += 1
                if x == 4:
                    scrolllist.append(listentry.Get('Icons', {'icons': icons}))
                    icons = []
                    x = 0

            if len(icons):
                scrolllist.append(listentry.Get('Icons', {'icons': icons}))
            self.sr.shapes.state = uiconst.UI_NORMAL
            shapescroll.Load(fixedEntryHeight=64, contentList=scrolllist)
        self.layerNumSelected = idx
        self.sr.shapes.top = self.corpLogo.top + self.corpLogo.height
        if self.sr.Get('colors', None):
            self.sr.colors.state = uiconst.UI_HIDDEN
        self.sr.shapes.state = uiconst.UI_NORMAL
        self.sr.shapes.SetOrder(0)
Пример #6
0
    def ClickCol(self, idx, sender):
        """
        A logo layer color has been clicked; Open the logo layer color selection pop-up
        """
        if not self.sr.Get('colors', None):
            self.sr.colors = uiprimitives.Container(name='colors_container',
                                                    parent=self.sr.main,
                                                    align=uiconst.CENTERTOP,
                                                    height=128,
                                                    width=150,
                                                    idx=0)
            colorscroll = uicontrols.Scroll(
                parent=self.sr.colors,
                padding=(const.defaultPadding, const.defaultPadding,
                         const.defaultPadding, const.defaultPadding))
            self.AddCloseButton(self.sr.colors)
            self.sr.underlay = uicontrols.WindowUnderlay(parent=self.sr.colors)
            x = 0
            scrolllist = []
            icons = []
            graphicIDs = const.graphicCorpLogoLibColors.keys()
            graphicIDs.sort()
            for graphicID in graphicIDs:
                color, blendMode = self.GetLogoLibColor(graphicID)
                icons.append((None, color, graphicID, self.PickCol))
                x += 1
                if x == 4:
                    scrolllist.append(listentry.Get('Icons', {'icons': icons}))
                    icons = []
                    x = 0

            if len(icons):
                scrolllist.append(listentry.Get('Icons', {'icons': icons[:]}))
            self.sr.colors.state = uiconst.UI_NORMAL
            colorscroll.Load(fixedEntryHeight=32, contentList=scrolllist)
        self.layerNumSelected = idx
        self.sr.colors.top = self.corpLogo.top + self.corpLogo.height
        if self.sr.Get('shapes', None):
            self.sr.shapes.state = uiconst.UI_HIDDEN
        self.sr.colors.state = uiconst.UI_NORMAL
        uiutil.SetOrder(self.sr.colors, 0)
Пример #7
0
    def Layout(self,
               reloading=0,
               pushBtnArgs=None,
               setUsername=None,
               setPassword=None):
        if not reloading:
            self.sceneLoadedEvent = locks.Event('loginScene')
            uthread.new(self.LoadScene)
        self.eulaInited = 0
        self.Flush()
        borderHeight = uicore.desktop.height / 6
        par = uiprimitives.Container(name='underlayContainer',
                                     parent=self,
                                     align=uiconst.TOTOP,
                                     height=borderHeight)
        self.sr.underlay2 = uicontrols.WindowUnderlay(parent=par)
        self.sr.underlay2.padding = (-16, -16, -16, 0)
        bottomPar = uiprimitives.Container(name='underlayContainer_Bottom',
                                           parent=self,
                                           align=uiconst.TOBOTTOM,
                                           height=borderHeight + 6)
        bottomUnderlay = uicontrols.WindowUnderlay(parent=bottomPar)
        bottomUnderlay.padding = (-16, 6, -16, -16)
        if trinity.app.fullscreen:
            closex = uicontrols.Icon(
                icon='ui_73_16_49',
                parent=self,
                pos=(0, 1, 0, 0),
                align=uiconst.TOPRIGHT,
                idx=0,
                state=uiconst.UI_NORMAL,
                hint=localization.GetByLabel('UI/Login/QuitGame'))
            closex.OnClick = self.ClickExit
            closex.sr.hintAbRight = uicore.desktop.width - 16
            closex.sr.hintAbTop = 16
        self.mainBrowserParent = uiprimitives.Container(
            name='mainBrowserParent',
            parent=self,
            align=uiconst.CENTER,
            state=uiconst.UI_HIDDEN,
            width=800,
            height=440,
            idx=0)
        self.mainBrowser = uicontrols.Edit(parent=self.mainBrowserParent,
                                           padding=(8, 18, 8, 8),
                                           readonly=1)
        mainclosex = uicontrols.Icon(icon='ui_38_16_220',
                                     parent=self.mainBrowserParent,
                                     pos=(2, 1, 0, 0),
                                     align=uiconst.TOPRIGHT,
                                     idx=0,
                                     state=uiconst.UI_NORMAL)
        mainclosex.OnClick = self.CloseMenu
        wndUnderlay = uicontrols.WindowUnderlay(parent=self.mainBrowserParent)
        self.eulaParent = uiprimitives.Container(name='eulaParent',
                                                 parent=self,
                                                 align=uiconst.CENTER,
                                                 state=uiconst.UI_HIDDEN,
                                                 width=800,
                                                 height=440,
                                                 idx=0)
        eulaCont = uiprimitives.Container(name='eulaCont',
                                          parent=self.eulaParent,
                                          align=uiconst.TOALL,
                                          padding=(0, 18, 0, 0))
        browser = uicontrols.Edit(parent=eulaCont,
                                  padding=(6, 6, 6, 6),
                                  readonly=1)
        browser.sr.scrollcontrols.state = uiconst.UI_NORMAL
        browser.viewing = 'eula_ccp'
        self.eulaBrowser = browser
        self.sr.eulaUnderlay = uicontrols.WindowUnderlay(
            parent=self.eulaParent)
        self.maintabs = uicontrols.TabGroup(
            name='maintabs',
            parent=eulaCont,
            idx=0,
            tabs=[[
                localization.GetByLabel('UI/Login/EULA/EveEULAHeader'),
                browser, self, 'eula_ccp'
            ],
                  [
                      localization.GetByLabel(
                          'UI/Login/EULA/ThirdPartyEULAHeader'), browser, self,
                      'eula_others'
                  ]],
            groupID='eula',
            autoselecttab=0)
        self.eulaclosex = uicontrols.Icon(icon='ui_38_16_220',
                                          parent=self.eulaParent,
                                          pos=(2, 1, 0, 0),
                                          align=uiconst.TOPRIGHT,
                                          idx=0,
                                          state=uiconst.UI_NORMAL)
        self.eulaclosex.OnClick = self.CloseMenu
        bottomArea = uiprimitives.Container(name='bottomArea',
                                            parent=bottomPar,
                                            idx=0,
                                            pos=(0, 0, 0, 0))
        bottomSub = uiprimitives.Container(name='bottomSub',
                                           parent=bottomArea,
                                           align=uiconst.CENTER,
                                           idx=0,
                                           height=bottomPar.height,
                                           width=800)
        knownUserNames = settings.public.ui.Get('usernames', [])
        editswidth = 120
        if borderHeight <= 100:
            editstop = 30
        else:
            editstop = 40
        editsleft = (bottomSub.width - editswidth) / 2
        edit = uicontrols.SinglelineEdit(name='username',
                                         parent=bottomSub,
                                         pos=(editsleft, editstop, editswidth,
                                              0),
                                         maxLength=64)
        edit.SetHistoryVisibility(0)
        t1 = uicontrols.EveLabelSmall(
            text=localization.GetByLabel('UI/Login/Username'),
            parent=edit,
            top=3,
            state=uiconst.UI_DISABLED,
            color=(1.0, 1.0, 1.0, 0.75))
        if knownUserNames:
            ops = [(name, name) for name in knownUserNames]
            edit.LoadCombo('usernamecombo',
                           ops,
                           self.OnComboChange,
                           comboIsTabStop=0)
        edit.SetValue(setUsername or settings.public.ui.Get('username', ''))
        edit.OnReturn = self.Confirm
        self.usernameEditCtrl = edit
        edit = uicontrols.SinglelineEdit(name='password',
                                         parent=bottomSub,
                                         pos=(editsleft,
                                              edit.top + edit.height + 6,
                                              editswidth, 0),
                                         maxLength=64)
        t2 = uicontrols.EveLabelSmall(
            text=localization.GetByLabel('UI/Login/Password'),
            parent=edit,
            top=3,
            state=uiconst.UI_DISABLED,
            color=(1.0, 1.0, 1.0, 0.75))
        edit.SetPasswordChar(u'\u2022')
        edit.SetValue(setPassword or '')
        edit.OnReturn = self.Confirm
        self.passwordEditCtrl = edit
        if sm.GetService('gameui').UsingSingleSignOn():
            self.usernameEditCtrl.state = self.passwordEditCtrl.state = uiconst.UI_HIDDEN
            editswidth = 0
        tw = max(t1.textwidth, t2.textwidth)
        t1.left = t2.left = -tw - 6
        connectBtn = uicontrols.Button(
            parent=bottomSub,
            label=localization.GetByLabel('UI/Login/Connect'),
            func=self.Connect,
            pos=(editsleft, edit.top + edit.height + 4, 0, 0),
            fixedwidth=120,
            btn_default=1)
        statusContainer = uiprimitives.Container(parent=bottomSub,
                                                 left=editsleft + editswidth +
                                                 6,
                                                 top=editstop)
        self.serverNameTextControl = uicontrols.EveLabelSmall(
            text=localization.GetByLabel('UI/Login/CheckingStatus'),
            parent=statusContainer,
            align=uiconst.TOTOP,
            state=uiconst.UI_DISABLED)
        self.serverStatusTextControl = uicontrols.EveLabelSmall(
            parent=statusContainer,
            align=uiconst.TOTOP,
            state=uiconst.UI_DISABLED)
        self.serverPlayerCountTextControl = uicontrols.EveLabelSmall(
            parent=statusContainer,
            align=uiconst.TOTOP,
            state=uiconst.UI_DISABLED)
        self.serverVersionTextControl = uicontrols.EveLabelSmall(
            parent=statusContainer,
            align=uiconst.TOTOP,
            state=uiconst.UI_DISABLED)
        self.motdParent = uiprimitives.Container(name='motdParent',
                                                 parent=self,
                                                 align=uiconst.CENTERBOTTOM,
                                                 top=borderHeight + 16,
                                                 width=400,
                                                 height=64,
                                                 state=uiconst.UI_HIDDEN)
        motdLabel = uicontrols.EveLabelMedium(parent=self.motdParent,
                                              align=uiconst.CENTER,
                                              width=360,
                                              state=uiconst.UI_NORMAL)
        self.motdLabel = motdLabel
        uicontrols.BumpedUnderlay(parent=self.motdParent, name='background')
        versionstr = localization.GetByLabel('UI/Login/Version',
                                             versionNumber=GetVersion())
        uicontrols.EveLabelSmall(text=versionstr,
                                 parent=self,
                                 left=6,
                                 top=6,
                                 idx=0,
                                 state=uiconst.UI_NORMAL)
        self.pushButtons = uicls.ToggleButtonGroup(
            parent=bottomPar,
            align=uiconst.CENTERTOP,
            idx=0,
            top=12,
            width=120,
            callback=self.OnButtonSelected)
        for btnID, label, panel in (
            ('settings', localization.GetByLabel('UI/Login/Settings'), None),
            ('eula', localization.GetByLabel('UI/Login/EULA/EULAHeader'),
             self.eulaParent)):
            self.pushButtons.AddButton(btnID, label, panel)

        if boot.region == 'optic':
            self.eulaCRC = zlib.adler32(str(boot.version))
        else:
            self.eulaCRC = zlib.adler32(buffer(self.GetEulaCCP()))
        eulaAgreed = True
        if not eulaAgreed:
            self.GetEulaConfirmation()
        else:
            if pushBtnArgs:
                self.pushButtons.SelectByID(pushBtnArgs)
            uthread.new(self.LoadMotd, bool(pushBtnArgs))
            if trinity.app.IsActive():
                if settings.public.ui.Get('username', ''):
                    uicore.registry.SetFocus(self.passwordEditCtrl)
                else:
                    uicore.registry.SetFocus(self.usernameEditCtrl)
        if boot.region != 'optic':
            esrbNoticeHeight = 70
            esrbNoticeWidth = 200
            allowedSizes = [1.0, 0.9, 0.8]
            desktopWidth = uicore.desktop.width
            useHeight = int(esrbNoticeHeight * 0.7)
            useWidth = int(esrbNoticeWidth * 0.7)
            for multiplier in allowedSizes:
                tempWidth = esrbNoticeWidth * multiplier
                if tempWidth <= desktopWidth * 0.11:
                    useWidth = int(tempWidth)
                    useHeight = int(esrbNoticeHeight * multiplier)
                    break

            cont = uiprimitives.Container(name='esrbParent',
                                          parent=bottomArea,
                                          align=uiconst.TOPLEFT,
                                          top=editstop,
                                          width=useWidth,
                                          height=useHeight,
                                          state=uiconst.UI_NORMAL,
                                          idx=0,
                                          left=20)
            sprite = uiprimitives.Sprite(
                name='ESRB',
                parent=cont,
                align=uiconst.TOALL,
                state=uiconst.UI_DISABLED,
                color=(1.0, 1.0, 1.0, 1.0),
                lockAspect=1,
                texturePath='res:/UI/Texture/ESRBnotice.dds')
            sprite.rectWidth = esrbNoticeWidth
            sprite.rectHeight = esrbNoticeHeight
            uthread.new(uix.FadeCont, cont, 0, after=6000, fadeTime=500.0)
Пример #8
0
 def ApplyAttributes(self, attributes):
     uiprimitives.Container.ApplyAttributes(self, attributes)
     self.pin = attributes.Get('pin', None)
     pad = self.pad = 3
     self.main = uiprimitives.Container(parent=self,
                                        name='main',
                                        pos=(0, 0, 0, 0),
                                        padding=(pad, pad, pad, pad),
                                        state=uiconst.UI_PICKCHILDREN,
                                        align=uiconst.TOALL)
     pad = const.defaultPadding
     self.sr.footer = uiprimitives.Container(name='footer',
                                             parent=self.main,
                                             align=uiconst.TOBOTTOM,
                                             pos=(0, 0, 0, 25),
                                             padding=(pad, pad, pad, pad))
     self.sr.underlay = uicontrols.WindowUnderlay(parent=self)
     self.sr.underlay.state = uiconst.UI_DISABLED
     self.header = self._DrawAlignTopCont(18, 'headerCont')
     self.closeBtn = uicontrols.Icon(name='close',
                                     icon='ui_38_16_220',
                                     parent=self.header,
                                     pos=(0, 0, 16, 16),
                                     align=uiconst.TOPRIGHT)
     self.closeBtn.OnClick = lambda: sm.GetService(
         'planetUI').myPinManager.PinUnselected()
     self.headerText = uicontrols.EveLabelMedium(parent=self.header,
                                                 align=uiconst.CENTER,
                                                 state=uiconst.UI_NORMAL)
     self.headerText.text = evetypes.GetName(self.pin.GetTypeID())
     uiprimitives.Line(parent=self.header, align=uiconst.TOBOTTOM)
     self.content = self._DrawAlignTopCont(180,
                                           'contentCont',
                                           padding=(4, 4, 4, 4))
     iconX = 180
     itemHeight = 2
     ownerID = self.pin.GetOwnerID()
     conflictState = eveDustPlanetSurface.GetConflictState(
         self.pin.pinKv.conflicts)
     conflictText = localization.GetByLabel(STATE_NAMES[conflictState])
     self.conflictStateLabel = uicontrols.EveLabelMedium(
         parent=self.content,
         pos=(2, itemHeight, self.default_width - 10, 16))
     self.conflictStateLabel.text = localization.GetByLabel(
         'UI/PI/Planet/Dust/ConflictState', state=conflictText)
     itemHeight += 20
     if ownerID:
         self.ownerLabel = uicontrols.EveLabelMedium(parent=self.content,
                                                     pos=(2, itemHeight,
                                                          iconX, 16))
         self.ownerLabel.text = localization.GetByLabel(
             'UI/PI/Planet/Dust/DustPinOwner', player=ownerID)
         self.ownerIcon = uiprimitives.Container(parent=self.content,
                                                 pos=(iconX, itemHeight, 64,
                                                      64),
                                                 align=uiconst.RELATIVE)
         uiutil.GetLogoIcon(itemID=ownerID,
                            parent=self.ownerIcon,
                            name='ownercorplogo',
                            acceptNone=False,
                            align=uiconst.TOALL)
         itemHeight += 68
     if ownerID == session.corpid and conflictState == const.objectiveStateCeasefire:
         uicontrols.Button(
             parent=self.sr.footer,
             label=localization.GetByLabel('UI/PI/Planet/Dust/DestroyPin'),
             func=self.Terminate)
     elif ownerID != session.corpid and eveDustPlanetSurface.GetConflictState(
             self.pin.pinKv.conflicts,
             session.corpid) == const.objectiveStateCeasefire:
         uicontrols.Button(parent=self.sr.footer,
                           label=localization.GetByLabel(
                               'UI/PI/Planet/Dust/AttackInstallation'),
                           func=self.Attack)
     dw = uicore.desktop.width
     dh = uicore.desktop.height
     self.height = self.default_height
     self.width = self.default_width
     self.left = settings.user.ui.Get('planetContPositionX',
                                      (dw - self.width) / 2)
     self.top = settings.user.ui.Get('planetContPositionY',
                                     (dh - self.height) / 2)
     if self.left < 0:
         self.left = 0
     elif self.left > dw - self.width:
         self.left = dw - self.width
     if self.top < 0:
         self.top = 0
     elif self.top > dh - self.height:
         self.top = dh - self.height
     uicls.UIEffects().MorphUI(self,
                               'opacity',
                               1.0,
                               time=250.0,
                               float=1,
                               newthread=1,
                               maxSteps=100)
Пример #9
0
 def Prepare_Background_(self, *args):
     self.sr.underlay = uicontrols.WindowUnderlay(parent=self,
                                                  transparent=False,
                                                  padding=-2)
Пример #10
0
 def ApplyAttributes(self, attributes):
     uiprimitives.Container.ApplyAttributes(self, attributes)
     self.abortbtn = None
     self.abortbtnpar = None
     self.confirmbtn = None
     self.abortconfirmbtnpar = None
     self.sr.progresstext = None
     self.sr.readprogress = util.KeyVal(text='', prev=0)
     self.scope = 'all'
     self.sr.main = uiprimitives.Container(parent=self,
                                           pos=(0, 0, 0, 0),
                                           name='maincontainer',
                                           state=uiconst.UI_PICKCHILDREN,
                                           align=uiconst.TOALL)
     self.sr.wndUnderlay = uicontrols.WindowUnderlay(parent=self,
                                                     transparent=False)
     par = uiprimitives.Container(name='progressParent',
                                  parent=self.sr.main,
                                  align=uiconst.TOBOTTOM,
                                  height=32)
     progress = uiprimitives.Container(parent=par,
                                       pos=(25, 10, self.width - 50, 10),
                                       name='progressbar',
                                       state=uiconst.UI_DISABLED,
                                       align=uiconst.RELATIVE)
     self.sr.glowClipper = uiprimitives.Container(parent=progress,
                                                  pos=(0, 0, 0, 10),
                                                  name='glowclipper',
                                                  state=uiconst.UI_DISABLED,
                                                  clipChildren=True,
                                                  align=uiconst.RELATIVE)
     self.sr.glow = uiprimitives.Container(parent=self.sr.glowClipper,
                                           pos=(0, 0, progress.width, 10),
                                           name='glow',
                                           state=uiconst.UI_DISABLED,
                                           align=uiconst.RELATIVE)
     glowFill = FillUnderlay(parent=self.sr.glow,
                             name='glowFill',
                             state=uiconst.UI_DISABLED,
                             colorType=uiconst.COLORTYPE_UIHILIGHT,
                             align=uiconst.TOALL,
                             opacity=0.4)
     shade = uiprimitives.Container(parent=progress,
                                    pos=(0, 0, 0, 0),
                                    name='shade',
                                    state=uiconst.UI_DISABLED,
                                    align=uiconst.TOALL)
     shadeFill = FillUnderlay(parent=shade,
                              name='shadeFill',
                              state=uiconst.UI_DISABLED,
                              colorType=uiconst.COLORTYPE_UIHILIGHT,
                              align=uiconst.TOALL)
     FrameUnderlay(parent=progress, colorType=uiconst.COLORTYPE_UIHILIGHT)
     self.sr.loading_progress = progress
     self.sr.progresstext = uicontrols.EveLabelMedium(
         text='',
         parent=progress,
         width=270,
         left=2,
         top=4,
         state=uiconst.UI_NORMAL)
     self.state = uiconst.UI_PICKCHILDREN