|
@@ -692,6 +692,7 @@ class DirectGuiWidget(DirectGuiBase, NodePath):
|
|
|
('borderWidth', (.1,.1), self.setBorderWidth),
|
|
('borderWidth', (.1,.1), self.setBorderWidth),
|
|
|
('frameSize', None, self.setFrameSize),
|
|
('frameSize', None, self.setFrameSize),
|
|
|
('frameColor', (.8,.8,.8,1), self.setFrameColor),
|
|
('frameColor', (.8,.8,.8,1), self.setFrameColor),
|
|
|
|
|
+ ('frameTexture', None, self.setFrameTexture),
|
|
|
('pad', (0,0), self.resetFrameSize),
|
|
('pad', (0,0), self.resetFrameSize),
|
|
|
# Override button id (beware! your name may not be unique!)
|
|
# Override button id (beware! your name may not be unique!)
|
|
|
('guiId', None, INITOPT),
|
|
('guiId', None, INITOPT),
|
|
@@ -955,6 +956,20 @@ class DirectGuiWidget(DirectGuiBase, NodePath):
|
|
|
self.frameStyle[i].setColor(color[0], color[1], color[2], color[3])
|
|
self.frameStyle[i].setColor(color[0], color[1], color[2], color[3])
|
|
|
self.updateFrameStyle()
|
|
self.updateFrameStyle()
|
|
|
|
|
|
|
|
|
|
+ def setFrameTexture(self):
|
|
|
|
|
+ # this might be a single texture or a list of textures
|
|
|
|
|
+ textures = self['frameTexture']
|
|
|
|
|
+ if textures == None or isinstance(textures, Texture):
|
|
|
|
|
+ textures = (textures,)
|
|
|
|
|
+ for i in range(self['numStates']):
|
|
|
|
|
+ if i >= len(textures):
|
|
|
|
|
+ texture = textures[-1]
|
|
|
|
|
+ else:
|
|
|
|
|
+ texture = textures[i]
|
|
|
|
|
+ if texture:
|
|
|
|
|
+ self.frameStyle[i].setTexture(texture)
|
|
|
|
|
+ self.updateFrameStyle()
|
|
|
|
|
+
|
|
|
def setBorderWidth(self):
|
|
def setBorderWidth(self):
|
|
|
width = self['borderWidth']
|
|
width = self['borderWidth']
|
|
|
for i in range(self['numStates']):
|
|
for i in range(self['numStates']):
|