You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
874 B
47 lines
874 B
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
//============================================================================= |
|
|
|
#ifndef KEYREPEAT_H |
|
#define KEYREPEAT_H |
|
#ifdef _WIN32 |
|
#pragma once |
|
#endif |
|
|
|
namespace vgui |
|
{ |
|
|
|
enum KEYREPEAT_ALIASES |
|
{ |
|
KR_ALIAS_UP, |
|
KR_ALIAS_DOWN, |
|
KR_ALIAS_LEFT, |
|
KR_ALIAS_RIGHT, |
|
|
|
FM_NUM_KEYREPEAT_ALIASES, |
|
}; |
|
|
|
class CKeyRepeatHandler |
|
{ |
|
public: |
|
CKeyRepeatHandler(); |
|
|
|
void Reset(); |
|
void KeyDown( vgui::KeyCode code ); |
|
void KeyUp( vgui::KeyCode code ); |
|
vgui::KeyCode KeyRepeated(); |
|
void SetKeyRepeatTime( vgui::KeyCode code, float flRepeat ); |
|
|
|
private: |
|
bool m_bAliasDown[MAX_JOYSTICKS][FM_NUM_KEYREPEAT_ALIASES]; |
|
float m_flRepeatTimes[FM_NUM_KEYREPEAT_ALIASES]; |
|
float m_flNextKeyRepeat[MAX_JOYSTICKS]; |
|
bool m_bHaveKeyDown; |
|
}; |
|
|
|
|
|
} // namespace vgui |
|
|
|
#endif // KEYREPEAT_H
|
|
|