mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-04 02:42:49 -04:00
Able
This commit is contained in:
parent
30a41eac86
commit
5fba7e2cae
@ -8,6 +8,7 @@ class PieMenu(NodePath, PandaObject):
|
|||||||
NodePath.__init__(self)
|
NodePath.__init__(self)
|
||||||
# Create a toplevel node for aspect ratio scaling
|
# Create a toplevel node for aspect ratio scaling
|
||||||
self.assign(hidden.attachNewNode('PieMenu'))
|
self.assign(hidden.attachNewNode('PieMenu'))
|
||||||
|
self.dr = direct.dr
|
||||||
# Attach the menu
|
# Attach the menu
|
||||||
self.visibleMenu = visibleMenu
|
self.visibleMenu = visibleMenu
|
||||||
# Try to flatten the visibleMenu (note, flattenStrong is too strong
|
# Try to flatten the visibleMenu (note, flattenStrong is too strong
|
||||||
@ -45,15 +46,14 @@ class PieMenu(NodePath, PandaObject):
|
|||||||
taskMgr.remove('pieMenuTask')
|
taskMgr.remove('pieMenuTask')
|
||||||
|
|
||||||
# Where did the user press the button?
|
# Where did the user press the button?
|
||||||
self.originX = direct.dr.mouseX
|
self.originX = self.dr.mouseX
|
||||||
self.originY = direct.dr.mouseY
|
self.originY = self.dr.mouseY
|
||||||
|
|
||||||
# Pop up menu
|
# Pop up menu
|
||||||
self.reparentTo(render2d)
|
self.reparentTo(render2d)
|
||||||
self.setPos(self.originX,0.0,self.originY)
|
self.setPos(self.originX,0.0,self.originY)
|
||||||
# Compensate for window aspect ratio
|
# Compensate for window aspect ratio
|
||||||
self.setScale(1.0, 1.0,1.0)
|
self.setScale(1.0, 1.0,1.0)
|
||||||
#direct.dr.width/float(direct.dr.height))
|
|
||||||
# Start drawing the selection line
|
# Start drawing the selection line
|
||||||
self.lines.reset()
|
self.lines.reset()
|
||||||
self.lines.moveTo(0,0,0)
|
self.lines.moveTo(0,0,0)
|
||||||
@ -65,8 +65,8 @@ class PieMenu(NodePath, PandaObject):
|
|||||||
taskMgr.add(self.pieMenuTask, 'pieMenuTask')
|
taskMgr.add(self.pieMenuTask, 'pieMenuTask')
|
||||||
|
|
||||||
def pieMenuTask(self,state):
|
def pieMenuTask(self,state):
|
||||||
mouseX = direct.dr.mouseX
|
mouseX = self.dr.mouseX
|
||||||
mouseY = direct.dr.mouseY
|
mouseY = self.dr.mouseY
|
||||||
deltaX = mouseX - self.originX
|
deltaX = mouseX - self.originX
|
||||||
deltaY = mouseY - self.originY
|
deltaY = mouseY - self.originY
|
||||||
|
|
||||||
@ -124,7 +124,14 @@ class TextPieMenu(PieMenu):
|
|||||||
newMenu = hidden.attachNewNode('TextMenu')
|
newMenu = hidden.attachNewNode('TextMenu')
|
||||||
# Compute angle per item
|
# Compute angle per item
|
||||||
angle = deg2Rad(360.0/numItems)
|
angle = deg2Rad(360.0/numItems)
|
||||||
aspectRatio = direct.dr.getWidth()/float(direct.dr.getHeight())
|
prop = base.win.getProperties()
|
||||||
|
if prop.hasSize():
|
||||||
|
width = prop.getXSize()
|
||||||
|
height = prop.getYSize()
|
||||||
|
else:
|
||||||
|
width = 640
|
||||||
|
height = 480
|
||||||
|
aspectRatio = width/float(height)
|
||||||
# Add items
|
# Add items
|
||||||
from DirectGuiGlobals import getDefaultFont
|
from DirectGuiGlobals import getDefaultFont
|
||||||
for i in range (numItems):
|
for i in range (numItems):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user