My Project
Public Member Functions | Static Public Member Functions | Protected Attributes | Static Protected Attributes | List of all members
ParaEngine::CGUIKeyboardVirtual Class Reference

base class for keyboard system. More...

#include <GUIKeyboardVirtual.h>

Inheritance diagram for ParaEngine::CGUIKeyboardVirtual:
ParaEngine::CDirectKeyboard

Public Member Functions

virtual bool IsUseWindowsMessage ()
 whether to use window message for buffered mouse event. More...
 
virtual void SetUseWindowsMessage (bool bUseWinMsg)
 whether to use window message for buffered mouse event. More...
 
virtual void PushKeyEvent (UINT uMsg, WPARAM wParam, LPARAM lParam)
 push a standard windows key event to the buffer for processing in the next frame move. More...
 
virtual void PushKeyEvent (const MSG &msg)
 push a standard windows key event to the buffer for processing in the next frame move. More...
 
virtual void Update ()
 read hardware buffer and immediate keyboard states to internal data structure. More...
 
virtual bool IsKeyPressed (DWORD nKey)
 return true if the key is being pressed at the time of calling. More...
 
virtual void SetKeyPressed (DWORD nKey, bool bPressed)
 
virtual void Reset ()
 
virtual HRESULT ReadBufferedData ()
 
virtual HRESULT ReadImmediateData ()
 
virtual BYTE GetLastKeyState (int nIndex)
 
virtual BYTE GetCurrentKeyState (int nIndex)
 
virtual short GetKeyState (int nIndex)
 
BYTE * GetKeyStates ()
 
DWORD GetElementsCount () const
 
void SetElementsCount (DWORD val)
 
DIDEVICEOBJECTDATAGetDeviceObjectData ()
 

Static Public Member Functions

static void SetCapture (CGUIBase *obj)
 
static void ReleaseCapture ()
 
static void ReleaseCapture (CGUIBase *obj)
 
static CGUIBaseGetCapture ()
 

Protected Attributes

DWORD m_dwElements
 
BYTE m_keystate [256]
 
BYTE m_lastkeystate [256]
 
DIDEVICEOBJECTDATA m_didod [SAMPLE_BUFFER_SIZE]
 
bool m_bUseWindowMessage
 whether to use window message for buffered mouse event. More...
 
MSG m_buffered_key_msgs [SAMPLE_BUFFER_SIZE/2]
 
int m_buffered_key_msgs_count
 

Static Protected Attributes

static CGUIBasem_objCaptured = NULL
 

Detailed Description

base class for keyboard system.

Member Function Documentation

§ IsKeyPressed()

bool CGUIKeyboardVirtual::IsKeyPressed ( DWORD  nKey)
virtual

return true if the key is being pressed at the time of calling.

Parameters
nKeya direct input key, such as DIK_SPACE.

§ IsUseWindowsMessage()

bool CGUIKeyboardVirtual::IsUseWindowsMessage ( )
virtual

whether to use window message for buffered mouse event.

default to true, if false, directInput will be used.

§ PushKeyEvent() [1/2]

void CGUIKeyboardVirtual::PushKeyEvent ( UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)
virtual

push a standard windows key event to the buffer for processing in the next frame move.

§ PushKeyEvent() [2/2]

void CGUIKeyboardVirtual::PushKeyEvent ( const MSG msg)
virtual

push a standard windows key event to the buffer for processing in the next frame move.

§ ReadBufferedData()

HRESULT ParaEngine::CGUIKeyboardVirtual::ReadBufferedData ( )
virtual

we do not use Read Buffered Data, instead, mouse events are translated from windows messages. Only immediate button data are read from direct input.

§ SetUseWindowsMessage()

void CGUIKeyboardVirtual::SetUseWindowsMessage ( bool  bUseWinMsg)
virtual

whether to use window message for buffered mouse event.

default to true, if false, directInput will be used.

§ Update()

void ParaEngine::CGUIKeyboardVirtual::Update ( )
virtual

read hardware buffer and immediate keyboard states to internal data structure.

Member Data Documentation

§ m_bUseWindowMessage

bool ParaEngine::CGUIKeyboardVirtual::m_bUseWindowMessage
protected

whether to use window message for buffered mouse event.

default to true, if false, directInput will be used.


The documentation for this class was generated from the following files: