DirectObject.py 918 B

12345678910111213141516171819202122232425262728293031323334
  1. from MessengerGlobal import *
  2. from DirectNotifyGlobal import *
  3. class DirectObject:
  4. """
  5. This is the class that all Direct/SAL classes should inherit from
  6. """
  7. def __del__(self):
  8. """__del__(self)
  9. """
  10. try:
  11. self.cleanup()
  12. except AttributeError:
  13. # No cleanup() method defined
  14. pass
  15. # Event Handling
  16. # object.accept('mouse', object.handleMouse)
  17. # object.accept('mouse', object.handleMouse, [1,2])
  18. def accept(self, event, method, extraArgs=[]):
  19. messenger.accept(event, self, method, extraArgs, 1)
  20. def acceptOnce(self, event, method, extraArgs=[]):
  21. messenger.accept(event, self, method, extraArgs, 0)
  22. def ignore(self, event):
  23. messenger.ignore(event, self)
  24. def isAccepting(self, event):
  25. return messenger.isAccepting(event, self)
  26. def isIgnoring(self, event):
  27. return messenger.isIgnoring(event, self)