Kamaelia docs : Kamaelia.UI.OpenGL.Interactor.Interactor

Kamaelia.UI.OpenGL.Interactor.Interactor

For examples and more explanations, see the module level docs.


class Interactor(Axon.AdaptiveCommsComponent.AdaptiveCommsComponent)

Interactor(...) -> A new Interactor object (not very useful, designed to be subclassed)

This component implements the basic functionality of an Interactor. An Interactor listens to events of another component and tranlates them into movement which is applied to the target component. It provides methods to be overridden for adding functionality.

Keyword arguments:

  • target -- OpenGL component to interact with
  • nolink -- if True, no linkages are made (default=False)

Inboxes

  • control : For shutdown messages
  • callback : for the response after a displayrequest
  • inbox : not used
  • events : Input events

Outboxes

  • outbox : used for sending relative tranlational movement
  • signal : For shutdown messages
  • display_signal : Outbox used for communicating to the display surface

Methods defined here

__init__(self, **argd)

x.__init__(...) initializes x; see x.__class__.__doc__ for signature

addListenEvents(self, events)

Sends listening request for pygame events to the display service. The events parameter is expected to be a list of pygame event constants.

frame(self)

Method stub

Override this method for operations you want to do every frame. It will be called every time the component is scheduled. Do not include infinite loops, the method has to return every time it gets called.

handleEvents(self)

Method stub

Override this method to do event handling inside. Should look like this:

while self.dataReady("events"):
    event = self.recv("events")
    # handle event ...

removeListenEvents(self, events)

Sends stop listening request for pygame events to the display service. The events parameter is expected to be a list of pygame event constants.

setup(self)

Method stub

Override this method for component setup. It will be called on the first scheduling of the component.

Feedback

Got a problem with the documentation? Something unclear that could be clearer? Want to help improve it? Constructive criticism is very welcome - especially if you can suggest a better rewording!

Please leave you feedback here in reply to the documentation thread in the Kamaelia blog.

-- Automatic documentation generator, 19 Oct 2008 at 14:29:09 UTC/GMT

This is a page from the Kamaelia website. You can find the original here: