*** empty log message ***

This commit is contained in:
Mike Goslin 2000-12-08 19:21:02 +00:00
parent 91127e578a
commit 20987630f3
9 changed files with 63 additions and 37 deletions

View File

@ -14,11 +14,9 @@ class StateData(DirectObject):
self.isLoaded = 0
self.isEntered = 0
return None
def __del__(self):
"""__del__(self)
Only define this if you construct any classes in your __init__()
so you can del them explicitly
def cleanup(self):
"""cleanup(self)
"""
self.unload()
return None

View File

@ -1,4 +1,5 @@
from ShowBaseGlobal import *
from DirectObject import *
import GuiManager
import GuiLabel
import GuiButton
@ -7,7 +8,7 @@ import Vec3
guiMgr = GuiManager.GuiManager.getPtr(base.win, base.mak.node())
font = (loader.loadModelOnce("phase_3/models/fonts/ttf-comic")).node()
class Button:
class Button(DirectObject):
def __init__(self, name, label=None):
self.name = name
@ -31,14 +32,15 @@ class Button:
self.l3, self.l3, self.l1)
self.setScale(0.1)
self.managed = 0
return None
def __del__(self):
def cleanup(self):
if (self.managed):
self.button.unmanage()
del(self.l1)
del(self.l2)
del(self.button)
self.l1 = None
self.l2 = None
self.button = None
return None
def __str__(self):
return "Button: %s" % self.name

View File

@ -29,7 +29,6 @@ class ForceAcknowledge(StateData.StateData):
self.okButton.manage()
self.accept("ForceAcknowledge-rollover", self.__handleRollover)
self.accept("ForceAcknowledge-ok", self.__handleOk)
return None
def exit(self):
@ -79,7 +78,10 @@ class ForceAcknowledge(StateData.StateData):
# GUI
self.text.removeNode()
del(self.okButton)
self.text.cleanup()
self.text = None
self.okButton.cleanup()
self.okButton = None
self.isLoaded = 0
return None

View File

@ -1,4 +1,5 @@
from ShowBaseGlobal import *
from DirectObject import *
import GuiManager
import GuiFrame
import Vec3
@ -6,7 +7,7 @@ import Vec3
guiMgr = GuiManager.GuiManager.getPtr(base.win, base.mak.node())
font = (loader.loadModelOnce("phase_3/models/fonts/ttf-comic")).node()
class Frame:
class Frame(DirectObject):
# special methods
def __init__(self, name):
@ -15,11 +16,15 @@ class Frame:
self.offset = 0
self.frame = GuiFrame.GuiFrame(name)
self.items = []
return None
def __del__(self):
def cleanup(self):
"""cleanup(self)
"""
if (self.managed):
self.frame.unmanage()
del(self.frame)
self.frame = None
return None
def __str__(self):
return "Frame: %s = %s" % (self.name, self.items)

View File

@ -36,12 +36,16 @@ class OnscreenText(PandaObject, NodePath):
# assume 4:3 aspect ratio
self.setScale( 0.069, 1.0, 0.069)
self.isClean = 0
return None
def __del__(self):
"""__del__(self)
def cleanup(self):
"""cleanup(self)
"""
del(self.textNode)
NodePath.__del__(self)
self.textNode = None
if self.isClean == 0:
self.isClean = 1
NodePath.__del__(self)
return None
def setText(self, string):

View File

@ -32,9 +32,10 @@ class PickList(PandaObject.PandaObject):
# display the menu
self.__displayChoices(choiceList)
return None
def __del__(self):
"""__del__(self)
def cleanup(self):
"""cleanup(self)
"""
# remove keyboard events
self.ignore("up-up")
@ -49,7 +50,7 @@ class PickList(PandaObject.PandaObject):
# reset the display
self.frame.unmanage()
del(self.frame)
self.frame = None
return None
# accessing

View File

@ -78,24 +78,25 @@ class ScrollingLabel(PandaObject.PandaObject):
# refresh the frame
self.frame.recompute()
return None
def __del__(self):
"""__del__(self)
def cleanup(self):
"""cleanup(self)
"""
# remove gui items
del(self.frame)
del(self.items)
# ignore events
self.ignore(self.name + "-left")
self.ignore(self.name + "-right")
self.setKeyFocus(0)
del(self.label)
del(self.title)
del(self.itemSign)
del(self.leftButton)
del(self.rightButton)
# remove gui items
self.frame = None
self.items = None
self.label = None
self.title = None
self.itemSign = None
self.leftButton = None
self.rightButton = None
return None
# accessing

View File

@ -1,10 +1,11 @@
from ShowBaseGlobal import *
from DirectObject import *
import GuiSign
import GuiManager
guiMgr = GuiManager.GuiManager.getPtr(base.win, base.mak.node())
class Sign:
class Sign(DirectObject):
def __init__(self, name, label):
self.name = name
@ -12,11 +13,15 @@ class Sign:
self.sign = GuiSign.GuiSign(name, label)
self.setScale(0.1)
self.managed = 0
return None
def __del__(self):
def cleanup(self):
"""cleanup(self)
"""
if (self.managed):
self.unmanage()
del(self.sign)
self.sign = None
return None
def __str__(self):
return "sign: %s contains label: %s" % (self.name, self.label.name)

View File

@ -6,6 +6,14 @@ class DirectObject:
"""
This is the class that all Direct/SAL classes should inherit from
"""
def __del__(self):
"""__del__(self)
"""
try:
self.cleanup()
except:
directNotify.notify.warning('No cleanup() method defined!')
# Event Handling
# object.accept('mouse', object.handleMouse)