vectorline.py (4023B)
1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\packages\carbonui\primitives\vectorline.py 2 import trinity 3 from carbonui import uiconst 4 from carbonui.primitives.sprite import TexturedBase 5 from carbonui.uicore import uicore 6 from carbonui.util.color import Color 7 8 class VectorLine(TexturedBase): 9 __renderObject__ = trinity.Tr2Sprite2dLine 10 default_name = 'vectorline' 11 default_align = uiconst.TOPLEFT 12 default_spriteEffect = trinity.TR2_SFX_FILL_AA 13 default_translationFrom = (0.0, 0.0) 14 default_translationTo = (100.0, 100.0) 15 default_widthFrom = 1.0 16 default_widthTo = 1.0 17 default_colorFrom = Color.WHITE 18 default_colorTo = Color.WHITE 19 default_textureWidth = 1.0 20 _colorFrom = None 21 _colorTo = None 22 _translationFrom = None 23 _translationTo = None 24 _widthFrom = None 25 _widthTo = None 26 27 def ApplyAttributes(self, attributes): 28 TexturedBase.ApplyAttributes(self, attributes) 29 self.translationFrom = attributes.get('translationFrom', self.default_translationFrom) 30 self.widthFrom = attributes.get('widthFrom', self.default_widthFrom) 31 self.translationTo = attributes.get('translationTo', self.default_translationTo) 32 self.widthTo = attributes.get('widthTo', self.default_widthTo) 33 self.colorFrom = attributes.get('colorFrom', self.default_colorFrom) 34 self.colorTo = attributes.get('colorTo', self.default_colorTo) 35 self.textureWidth = attributes.get('textureWidth', self.default_textureWidth) 36 if attributes.texturePath is not None: 37 self.renderObject.texturePrimary.atlasTexture.isStandAlone = True 38 39 @property 40 def translationFrom(self): 41 return self._translationFrom 42 43 @translationFrom.setter 44 def translationFrom(self, value): 45 self._translationFrom = value 46 if self.renderObject: 47 x = uicore.ScaleDpiF(value[0]) 48 y = uicore.ScaleDpiF(value[1]) 49 self.renderObject.translationFrom = (x, y) 50 51 @property 52 def translationTo(self): 53 return self._translationTo 54 55 @translationTo.setter 56 def translationTo(self, value): 57 self._translationTo = value 58 if self.renderObject: 59 x = uicore.ScaleDpiF(value[0]) 60 y = uicore.ScaleDpiF(value[1]) 61 self.renderObject.translationTo = (x, y) 62 63 @property 64 def widthFrom(self): 65 return self._widthFrom 66 67 @widthFrom.setter 68 def widthFrom(self, value): 69 self._widthFrom = float(value) 70 if self.renderObject: 71 self.renderObject.widthFrom = uicore.ScaleDpiF(value) 72 73 @property 74 def widthTo(self): 75 return self._widthTo 76 77 @widthTo.setter 78 def widthTo(self, value): 79 self._widthTo = float(value) 80 if self.renderObject: 81 self.renderObject.widthTo = uicore.ScaleDpiF(value) 82 83 @property 84 def colorFrom(self): 85 return self._colorFrom 86 87 @colorFrom.setter 88 def colorFrom(self, value): 89 self._colorFrom = value 90 if self.renderObject: 91 self.renderObject.colorFrom = value 92 93 @property 94 def colorTo(self): 95 return self._colorTo 96 97 @colorTo.setter 98 def colorTo(self, value): 99 self._colorTo = value 100 if self.renderObject: 101 self.renderObject.colorTo = value 102 103 @property 104 def textureWidth(self): 105 return self.renderObject.textureWidth 106 107 @textureWidth.setter 108 def textureWidth(self, value): 109 self.renderObject.textureWidth = value 110 111 @property 112 def textureOffset(self): 113 return self.renderObject.textureOffset 114 115 @textureOffset.setter 116 def textureOffset(self, value): 117 self.renderObject.textureOffset = value 118 119 def UpdateUIScaling(self, value, oldValue): 120 super(VectorLine, self).UpdateUIScaling(value, oldValue) 121 self.translationFrom = self._translationFrom 122 self.translationTo = self._translationTo 123 self.widthFrom = self._widthFrom 124 self.widthTo = self._widthTo