libkdegames Library API Documentation

KGameKeyIO Class Reference

The KGameKeyIO class. More...

#include <kgameio.h>

Inheritance diagram for KGameKeyIO:

Inheritance graph
[legend]
Collaboration diagram for KGameKeyIO:

Collaboration graph
[legend]
List of all members.

Signals

void signalKeyEvent (KGameIO *io, QDataStream &stream, QKeyEvent *m, bool *eatevent)

Public Member Functions

 KGameKeyIO (QWidget *parent)
virtual int rtti () const

Protected Member Functions

bool eventFilter (QObject *o, QEvent *e)

Detailed Description

The KGameKeyIO class.

It is used to process keyboard input from a widget and create moves for the player it belongs to.

Author:
Martin Heni <martin@heni-online.de>

Definition at line 177 of file kgameio.h.


Constructor & Destructor Documentation

KGameKeyIO::KGameKeyIO QWidget parent  ) 
 

Create a keyboard input devices.

All keyboards inputs of the given widgets are passed through a signal handler signalKeyEvent and can be used to generate a valid move for the player. Note the widget you pass to the constructor must be the main window of your application, e.g. view->parentWidget() as QT does not forward your keyevents otherwise. This means that this might be a different widget comapred to the one you use for mouse inputs! Example:

 KGameKeyIO *input;
  input=new KGameKeyIO(myWidget);
  connect(input,SIGNAL(signalKeyEvent(KGameIO *,QDataStream &,QKeyEvent *,bool *)),
          this,SLOT(slotKeyInput(KGameIO *,QDataStream &,QKeyEvent *,bool *)));

Parameters:
parent The parents widget whose keyboard events * should be grabbed

Definition at line 120 of file kgameio.cpp.


Member Function Documentation

int KGameKeyIO::rtti  )  const [virtual]
 

The idendification of the IO.

Returns:
KeyIO

Implements KGameIO.

Definition at line 138 of file kgameio.cpp.

void KGameKeyIO::signalKeyEvent KGameIO io,
QDataStream stream,
QKeyEvent m,
bool *  eatevent
[signal]
 

Signal handler for keyboard events.

This function is called on every keyboard event. If appropriate it can generate a move for the player the device belongs to. If this is done and the event is eaten eatevent needs to be set to true. What move you generate (i.e. what you write to the stream) is totally up to you as it will not be evaluated but forwared to the player's/game's input move function Example:

 KPlayer *player=input->player(); // Get the player
 Q_INT32 key=e->key();
 stream << key;
 eatevent=true;

Parameters:
io the IO device we belong to
stream the stream where we write our move into
m The QKeyEvent we can evaluate
eatevent set this to true if we processed the event

Referenced by eventFilter().

bool KGameKeyIO::eventFilter QObject o,
QEvent e
[protected]
 

Internal method to process the events.

Definition at line 140 of file kgameio.cpp.

References KGameIO::player(), KGameIO::sendInput(), and signalKeyEvent().


The documentation for this class was generated from the following files:
KDE Logo
This file is part of the documentation for libkdegames Library Version 3.3.91.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Mon Feb 21 17:36:53 2005 by doxygen 1.3.9.1 written by Dimitri van Heesch, © 1997-2003