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)
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')
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)
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
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)
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)
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)
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)
def Prepare_Background_(self, *args): self.sr.underlay = uicontrols.WindowUnderlay(parent=self, transparent=False, padding=-2)
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