dockPanelSubFrame.py (6584B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\shared\mapView\dockPanelSubFrame.py 2 from __future__ import print_function 3 from carbonui.primitives.base import Base 4 from carbonui.primitives.container import Container 5 from carbonui.primitives.fill import Fill 6 from carbonui.primitives.frame import Frame 7 from carbonui.primitives.sprite import Sprite 8 from carbonui.util.color import GetColor 9 from eve.client.script.ui.control.themeColored import FrameThemeColored 10 from eve.client.script.ui.shared.radialMenu.radialMenu import ThreePartContainer 11 import carbonui.const as uiconst 12 import trinity 13 import uthread 14 from carbonui.uicore import uicore 15 BASECOLOR = (118 / 255.0, 163 / 255.0, 255 / 255.0) 16 OUTER_FRAME = GetColor(BASECOLOR, alpha=0.6, saturation=0.7) 17 FRAME_GLOW_ACTIVE = (1.0, 1.0, 1.0, 1.0) 18 INNER_FRAME_ACTIVE = GetColor(BASECOLOR, alpha=0.6) 19 20 class DockablePanelContentFrame(Container): 21 default_align = uiconst.TOALL 22 default_state = uiconst.UI_NORMAL 23 default_width = 0 24 default_height = 0 25 outerFrameWidth = 2 26 innerFrameWidth = 1 27 distanceFromOuterToInnerFrame_side = 4 28 distanceFromOuterToInnerFrame_bottom = 4 29 distanceFromInnerFrameToContent_sides = 6 30 distanceFromInnerFrameToContent_bottom = 6 31 32 def ApplyAttributes(self, attributes): 33 Container.ApplyAttributes(self, attributes) 34 innerContainerPadding = self.outerFrameWidth + self.distanceFromOuterToInnerFrame_side 35 innerContainer = Container(parent=self, name='innerContainer', padding=innerContainerPadding, bgColor=(0, 0, 0, 0.5)) 36 frameCornerSize = 2 + self.innerFrameWidth 37 glowFrameTexturePath = 'res:/UI/Texture/classes/CharacterSelection/glowDotFrame.png' 38 self.normalGlowFrame = Frame(parent=innerContainer, name='glowFrame', color=FRAME_GLOW_ACTIVE, frameConst=(glowFrameTexturePath, 39 5, 40 -2, 41 0), padding=0) 42 self.normalFrame = FrameThemeColored(parent=innerContainer, name='normalFrame', padding=0, frameConst=('ui_1_16_161', 43 frameCornerSize, 44 -2, 45 0)) 46 self.normalFrame.opacity = 0.0 47 self.selectionFrameGlow = Frame(parent=self, name='selectionFrame', color=FRAME_GLOW_ACTIVE, texturePath='res:/UI/Texture/classes/CharacterSelection/selectFrame.png', cornerSize=22) 48 self.selectionFrameGlow.opacity = 0 49 frameCornerSize = 2 + self.outerFrameWidth 50 self.selectionFrame = Frame(parent=self, name='selectionFrame', color=OUTER_FRAME, frameConst=('ui_1_16_161', 51 frameCornerSize, 52 -2, 53 0)) 54 self.selectionFrame.opacity = 0 55 contentPadding = self.distanceFromInnerFrameToContent_sides + self.innerFrameWidth 56 contentParent = Container(parent=innerContainer, name='contentParent', padding=contentPadding, align=uiconst.TOALL) 57 self.contentTopPush = Container(name='contentTopPush', parent=contentParent, align=uiconst.TOTOP_PROP, height=0.55) 58 self.contentBottomPush = Container(name='contentBottomPush', parent=contentParent, align=uiconst.TOBOTTOM_PROP, height=0.55) 59 self.content = Container(parent=contentParent, name='content', align=uiconst.TOALL, pos=(0, 0, 0, 0), clipChildren=True, state=uiconst.UI_PICKCHILDREN, opacity=0.0) 60 self.dotFrameTopPush = Container(name='dotFrameTopPush', parent=innerContainer, align=uiconst.TOTOP_PROP, height=0.5) 61 self.dotFrameBottomPush = Container(name='dotFrameBottomPush', parent=innerContainer, align=uiconst.TOBOTTOM_PROP, height=0.5) 62 self.dotFrame = FrameThemeColored(parent=innerContainer, name='dotFrame', color=FRAME_GLOW_ACTIVE, texturePath='res:/UI/Texture/classes/MapView/dotFrame.png', cornerSize=21, offset=-1) 63 self.dotFrame.opacity = 0.0 64 65 def AnimateContentIn(self, animationOffset = 0.0): 66 minBlinkValue = 0.2 67 blinkDuration = 0.1 68 lineAnimationOffset = animationOffset 69 lineAnimationDuration = 0.4 70 lineFadeOutOffset = lineAnimationOffset + lineAnimationDuration 71 lineFadeOutDuration = 0.2 72 for each in (self.dotFrameTopPush, self.dotFrameBottomPush): 73 uicore.animations.MorphScalar(each, 'height', startVal=each.height, endVal=0.0, duration=lineAnimationDuration, timeOffset=lineAnimationOffset) 74 75 uicore.animations.MorphScalar(self.dotFrame, 'opacity', startVal=0.8, endVal=0, duration=lineFadeOutDuration, timeOffset=lineFadeOutOffset) 76 normalFrameFadeOffset = lineFadeOutDuration + lineFadeOutOffset - 0.2 77 normalFrameFadeDuration = 0.4 78 uicore.animations.MorphScalar(self.normalFrame, 'opacity', startVal=0, endVal=INNER_FRAME_ACTIVE[3], duration=normalFrameFadeDuration, timeOffset=normalFrameFadeOffset) 79 portraitOffset = normalFrameFadeOffset + normalFrameFadeDuration - 0.2 80 portraitDuration = 0.2 81 for each in (self.contentTopPush, self.contentBottomPush): 82 uicore.animations.MorphScalar(each, 'height', startVal=each.height, endVal=0.0, duration=portraitDuration, timeOffset=portraitOffset) 83 84 uicore.animations.BlinkIn(self.content, startVal=1.0, endVal=minBlinkValue, duration=blinkDuration, curveType=uiconst.ANIM_BOUNCE, timeOffset=portraitOffset + portraitDuration) 85 86 def PlaySelectedAnimation(self): 87 print('PlaySelectedAnimation') 88 uicore.animations.BlinkIn(self.selectionFrame, startVal=OUTER_FRAME[3], endVal=0.0, duration=0.1, loops=2, curveType=uiconst.ANIM_BOUNCE, timeOffset=0.2) 89 90 91 class ContainerLockedRatio(Container): 92 lockDesktopRatio = None 93 94 @apply 95 def displayRect(): 96 doc = '' 97 fget = Base.displayRect.fget 98 99 def fset(self, value): 100 displayX, displayY, displayWidth, displayHeight = value 101 self._displayHeight = int(round(displayY + displayHeight)) - self._displayY 102 if self.lockDesktopRatio: 103 self._displayWidth = min(uicore.desktop.width * self.self.lockDesktopRatio, int(round(displayX + displayWidth)) - self._displayX) 104 if self.parent: 105 self._displayX = (self.parent.displayWidth - self._displayWidth) / 2 106 self._displayY = int(round(displayY)) 107 ro = self.renderObject 108 if ro: 109 ro.displayX = self._displayX 110 ro.displayY = self._displayY 111 ro.displayWidth = self._displayWidth 112 ro.displayHeight = self._displayHeight 113 if self._backgroundlist and len(self.background): 114 self.UpdateBackgrounds() 115 116 return property(**locals())