#include <stdarg.h>#include "uInput.h"#include "tMemManager.h"#include "rScreen.h"#include "tInitExit.h"#include "tConfiguration.h"#include "rConsole.h"#include "uMenu.h"#include "tSysTime.h"#include <vector>#include <map>

Go to the source code of this file.
Classes | |
| class | uAutoDeleteInput |
| class | uKeyInput |
| class | uMouseInput |
| class | tConfItem_key |
| class | uJoystick |
| struct | uJoystick::HatDirections |
| class | uJoystickInput |
| struct | uTransformEventInfo |
| class | uMenuItemInput |
Defines | |
| #define | MOUSE_BUTTONS 7 |
| #define | su_TRANSFORM_PASSES 2 |
| #define | MTHRESH 5 |
| #define | MREL 2 |
Typedefs | |
| typedef std::vector< uInput * > | uInputs |
Functions | |
| static uInput * | su_GetInput (tString const &persistentID) |
| static uAutoDeleteInput & | su_GetAutoDeleteInput () |
| static uInput * | su_NewInput (tString const &ID, tString const &name) |
| static uInput * | su_NewInput (char const *ID, char const *name) |
| static uKeyInput const & | su_GetKeyInput () |
| static uMouseInput const & | su_GetMouseInput () |
| void | su_KeyInit () |
| static void | keyboard_init () |
| static void | keyboard_exit () |
| static uJoystickInput & | su_GetJoystickInput () |
| static uJoystick * | su_GetJoystick (int id) |
| void | su_JoystickInit () |
| bool | GlobalAct (uAction *act, REAL x) |
| static void | su_TransformEvent (SDL_Event &e, std::vector< uTransformEventInfo > &info) |
| static int | Input_Compare (const tListItemBase *a, const tListItemBase *b) |
| static void | s_InputConfigGeneric (int ePlayer, uAction *&actions, const tOutput &title) |
| void | su_InputConfig (int ePlayer) |
| void | su_InputConfigCamera (int player) |
| void | su_InputConfigGlobal () |
| void | su_HandleDelayedEvents () |
| bool | su_HandleEvent (SDL_Event &e, bool delayed) |
| void | su_InputSync () |
| void | su_ClearKeys () |
| static bool | messup_func (REAL x) |
| static bool | messdown_func (REAL x) |
Variables | |
| bool | su_mouseGrab = false |
| static uAction * | su_allActions [uMAX_ACTIONS] |
| static int | su_allActionsLen = 0 |
| uInputs | su_inputs |
| std::map< std::string, uInput * > | su_inputMap |
| static tConfItem_key | x |
| static uAction * | s_playerActions |
| static uAction * | s_cameraActions |
| static uAction * | s_globalActions |
| static tInitExit keyboard_ie & | keyboard_init |
| REAL | su_doubleBindTimeout = -10.0f |
| true if the mouse cursor is to be confined into the window | |
| static int | nextid = 0 |
| REAL | mouse_sensitivity = REAL(.1) |
| REAL | key_sensitivity = 40 |
| static double | lastTime = 0 |
| static REAL | ts = 0 |
| static bool | su_delayed = false |
| static char const * | Player_keyword = "PLAYER_BIND" |
| static uActionGlobalFunc * | uActionGlobal_anchor = NULL |
| static uActionGlobal | mess_up ("MESS_UP") |
| static uActionGlobal | mess_down ("MESS_DOWN") |
| #define MOUSE_BUTTONS 7 |
Definition at line 227 of file uInput.cpp.
Referenced by su_TransformEvent(), and uMouseInput::uMouseInput().
| #define MREL 2 |
Definition at line 1122 of file uInput.cpp.
| #define MTHRESH 5 |
Definition at line 1121 of file uInput.cpp.
| #define su_TRANSFORM_PASSES 2 |
Definition at line 780 of file uInput.cpp.
Definition at line 99 of file uInput.cpp.
Definition at line 691 of file uInput.cpp.
References uActionGlobalFunc::GlobalAct().
Referenced by uBindPlayer::DoActivate().
00692 { 00693 return uActionGlobalFunc::GlobalAct(act,x);


| static int Input_Compare | ( | const tListItemBase * | a, | |
| const tListItemBase * | b | |||
| ) | [static] |
Definition at line 1211 of file uInput.cpp.
Referenced by s_InputConfigGeneric().

| static void keyboard_exit | ( | ) | [static] |
| static void keyboard_init | ( | ) | [static] |
| static bool messdown_func | ( | REAL | x | ) | [static] |
Definition at line 1493 of file uInput.cpp.
References rConsole::Scroll(), and sr_con.

| static bool messup_func | ( | REAL | x | ) | [static] |
Definition at line 1486 of file uInput.cpp.
References rConsole::Scroll(), and sr_con.

| static void s_InputConfigGeneric | ( | int | ePlayer, | |
| uAction *& | actions, | |||
| const tOutput & | title | |||
| ) | [static] |
Definition at line 1218 of file uInput.cpp.
References a, b, uMenu::Enter(), Input_Compare(), tListItemBase::Len(), tListItem< T >::Next(), uMenu::ReverseItems(), and tNEW.
Referenced by su_InputConfig(), su_InputConfigCamera(), and su_InputConfigGlobal().
01219 { 01220 uMenuItemInput **input; 01221 01222 uMenu input_menu(title); 01223 01224 actions->tListItemBase::Sort(&Input_Compare); 01225 01226 int len = actions->Len(); 01227 01228 input=tNEW(uMenuItemInput*)[len]; 01229 int a=0; 01230 for (uAction *A=actions;A; A = A->Next()){ 01231 input[a++]=new uMenuItemInput(&input_menu, 01232 A, 01233 ePlayer+1); 01234 01235 } 01236 01237 input_menu.ReverseItems(); 01238 input_menu.Enter(); 01239 01240 for (int b=a-1;b>=0;b--) 01241 delete input[b]; 01242 delete[] input;


| void su_ClearKeys | ( | ) |
Definition at line 1367 of file uInput.cpp.
References uBind::Activate(), uInput::GetBind(), uInput::GetPressed(), uInput::SetPressed(), and su_inputs.
Referenced by do_chat(), and uMenu::OnEnter().
01369 { 01370 // clears stored keypresses 01371 for ( uInputs::const_iterator i = su_inputs.begin(); i != su_inputs.end(); ++i ) 01372 { 01373 uInput * input = *i; 01374 uBind * bind = input->GetBind(); 01375 if ( input->GetPressed() > 0 && bind ) 01376 { 01377 bind->Activate( -1, su_delayed ); 01378 input->SetPressed( 0 ); 01379 } 01380 }


| static uAutoDeleteInput& su_GetAutoDeleteInput | ( | ) | [static] |
Definition at line 158 of file uInput.cpp.
Referenced by su_NewInput().
00159 { 00160 static uAutoDeleteInput filler; 00161 return filler; 00162 }

Definition at line 118 of file uInput.cpp.
References NULL, and su_inputMap.
Referenced by tConfItem_key::ReadVal().
00119 { 00120 try 00121 { 00122 return su_inputMap[ persistentID ]; 00123 } 00124 catch (...) 00125 { 00126 return NULL; 00127 } 00128 }

| static uJoystick* su_GetJoystick | ( | int | id | ) | [static] |
Definition at line 654 of file uInput.cpp.
References uJoystickInput::joysticks, su_GetJoystickInput(), and tASSERT.
Referenced by su_TransformEvent().
00656 { 00657 uJoystickInput & joysticks = su_GetJoystickInput(); 00658 tASSERT( id >= 0 && id < (int)joysticks.joysticks.size() ); 00659 00660 return joysticks.joysticks[id];


| static uJoystickInput& su_GetJoystickInput | ( | ) | [static] |
Definition at line 648 of file uInput.cpp.
Referenced by su_GetJoystick(), and su_JoystickInit().
00650 { 00651 static uJoystickInput filler; 00652 return filler;

| static uKeyInput const& su_GetKeyInput | ( | ) | [static] |
Definition at line 221 of file uInput.cpp.
Referenced by su_KeyInit(), and su_TransformEvent().
00223 { 00224 static uKeyInput filler; 00225 return filler;

| static uMouseInput const& su_GetMouseInput | ( | ) | [static] |
Definition at line 261 of file uInput.cpp.
Referenced by su_KeyInit(), and su_TransformEvent().
00263 { 00264 static uMouseInput filler; 00265 return filler;

| void su_HandleDelayedEvents | ( | ) |
Definition at line 1274 of file uInput.cpp.
References uBind::HanldeDelayed(), and su_inputs.
Referenced by gGame::GameLoop(), and su_HandleEvent().
01276 { 01277 // nothing to do 01278 if ( !su_delayed ) 01279 { 01280 return; 01281 } 01282 01283 su_delayed = false; 01284 01285 for ( uInputs::const_iterator i = su_inputs.begin(); i != su_inputs.end(); ++i ) 01286 { 01287 uBind * bind = (*i)->GetBind(); 01288 if ( bind ) 01289 { 01290 bind->HanldeDelayed(); 01291 } 01292 }


| bool su_HandleEvent | ( | SDL_Event & | e, | |
| bool | delayed | |||
| ) |
Definition at line 1294 of file uInput.cpp.
References uBind::act, uBind::Activate(), uInput::GetBind(), uTransformEventInfo::input, uBind::IsDoubleBind(), uTransformEventInfo::needsRepeat, uInput::SetPressed(), su_HandleDelayedEvents(), su_TransformEvent(), uAction::type, uAction::uINPUT_ANALOG, and uTransformEventInfo::value.
Referenced by gMemuItemConsole::Event(), gGame::GameLoop(), and uMenu::HandleEvent().
01295 { 01296 #ifndef DEDICATED 01297 if ( su_delayed && !delayed ) 01298 { 01299 su_HandleDelayedEvents(); 01300 } 01301 01302 su_delayed = delayed; 01303 01304 // transform events 01305 bool ret = false; 01306 01307 std::vector< uTransformEventInfo > events; 01308 su_TransformEvent( e, events ); 01309 01310 for ( std::vector< uTransformEventInfo >::const_iterator i = events.begin(); i != events.end(); ++i ) 01311 { 01312 uTransformEventInfo info = *i; 01313 01314 if ( info.input ) 01315 { 01316 // store input state for later repeat 01317 if ( info.needsRepeat ) 01318 { 01319 info.input->SetPressed( info.value > 0 ? info.value : 0 ); 01320 } 01321 01322 // activate binding 01323 uBind * bind = info.input->GetBind(); 01324 if ( bind ) 01325 { 01326 if ( bind->IsDoubleBind( info.input ) ) 01327 { 01328 return true; 01329 } 01330 01331 if ( info.needsRepeat && bind->act && bind->act->type == uAction::uINPUT_ANALOG ) 01332 { 01333 info.value *= ts*key_sensitivity; 01334 } 01335 01336 ret |= bind->Activate( info.value, delayed ); 01337 } 01338 } 01339 } 01340 01341 return ret; 01342 #endif 01343 return false;


| void su_InputConfig | ( | int | ePlayer | ) |
Definition at line 1244 of file uInput.cpp.
References uPlayerPrototype::Name(), uPlayerPrototype::PlayerConfig(), s_InputConfigGeneric(), and tOutput::SetTemplateParameter().
Referenced by sg_PlayerMenu().
01245 { 01246 01247 tOutput name; 01248 name.SetTemplateParameter(1, ePlayer+1); 01249 name.SetTemplateParameter(2, uPlayerPrototype::PlayerConfig(ePlayer)->Name()); 01250 name << "$input_for_player"; 01251 01252 s_InputConfigGeneric(ePlayer,s_playerActions,name);


| void su_InputConfigCamera | ( | int | player | ) |
Definition at line 1254 of file uInput.cpp.
References uPlayerPrototype::Name(), uPlayerPrototype::PlayerConfig(), s_InputConfigGeneric(), and tOutput::SetTemplateParameter().
Referenced by sg_PlayerMenu().
01255 { 01256 01257 tOutput name; 01258 name.SetTemplateParameter(1, uPlayerPrototype::PlayerConfig(player)->Name()); 01259 name << "$camera_controls"; 01260 01261 s_InputConfigGeneric(player,s_cameraActions,name);


| void su_InputConfigGlobal | ( | ) |
Definition at line 1263 of file uInput.cpp.
References s_InputConfigGeneric().
Referenced by MainMenu().
01264 { 01265 s_InputConfigGeneric(-1,s_globalActions,"$input_items_global");


| void su_InputSync | ( | ) |
Definition at line 1345 of file uInput.cpp.
References uBind::act, uBind::Activate(), uInput::GetBind(), uInput::GetPressed(), REAL, su_inputs, tSysTimeFloat(), uAction::type, and uAction::uINPUT_ANALOG.
Referenced by gGame::GameLoop().
01346 { 01347 double time=tSysTimeFloat(); 01348 ts=REAL(time-lastTime); 01349 01350 //static REAL tsSmooth=0; 01351 //tsSmooth+=REAL(ts*.1); 01352 //tsSmooth/=REAL(1.1); 01353 lastTime=time; 01354 01355 // key repeat 01356 for ( uInputs::const_iterator i = su_inputs.begin(); i != su_inputs.end(); ++i ) 01357 { 01358 uInput * input = *i; 01359 uBind * bind = input->GetBind(); 01360 if ( input->GetPressed() > 0 && bind && 01361 bind->act && bind->act->type == uAction::uINPUT_ANALOG ) 01362 { 01363 bind->Activate( ts * key_sensitivity * input->GetPressed(), su_delayed ); 01364 } 01365 }


| void su_JoystickInit | ( | ) |
Definition at line 662 of file uInput.cpp.
References su_GetJoystickInput().
Referenced by main().
00664 { 00665 su_GetJoystickInput(); 00666 SDL_JoystickEventState( SDL_ENABLE );


| void su_KeyInit | ( | ) |
Definition at line 267 of file uInput.cpp.
References su_GetKeyInput(), and su_GetMouseInput().
Referenced by main().
00269 { 00270 su_GetKeyInput(); 00271 su_GetMouseInput();


| static uInput* su_NewInput | ( | char const * | ID, | |
| char const * | name | |||
| ) | [static] |
Definition at line 169 of file uInput.cpp.
References uAutoDeleteInput::Create(), and su_GetAutoDeleteInput().
00170 { 00171 return su_GetAutoDeleteInput().Create( tString( ID ), tString( name ) ); 00172 }

Definition at line 164 of file uInput.cpp.
References uAutoDeleteInput::Create(), and su_GetAutoDeleteInput().
Referenced by tConfItem_key::ReadVal(), uJoystick::uJoystick(), uKeyInput::uKeyInput(), and uMouseInput::uMouseInput().
00165 { 00166 return su_GetAutoDeleteInput().Create( ID, name ); 00167 }


| static void su_TransformEvent | ( | SDL_Event & | e, | |
| std::vector< uTransformEventInfo > & | info | |||
| ) | [static] |
Definition at line 794 of file uInput.cpp.
References c, uJoystick::Down, uJoystick::GetAxis(), uJoystick::GetBall(), uJoystick::GetButton(), uJoystick::GetHat(), uJoystick::GetHatDirection(), uJoystick::Left, MOUSE_BUTTONS, mouse_sensitivity, REAL, uJoystick::Right, sr_screenHeight, sr_screenWidth, su_GetJoystick(), su_GetKeyInput(), su_GetMouseInput(), su_mouseGrab, and uJoystick::Up.
Referenced by uMenuItemInput::Event(), and su_HandleEvent().
00796 { 00797 switch (e.type) 00798 { 00799 case SDL_MOUSEMOTION: 00800 { 00801 // ignore events generated by mouse grabbing 00802 if ( su_mouseGrab && 00803 e.motion.x==sr_screenWidth/2 && e.motion.x==sr_screenHeight/2) 00804 { 00805 return; 00806 } 00807 00808 // we generate up to four events per mouse movement 00809 info.reserve(4); 00810 00811 REAL xrel=e.motion.xrel; 00812 if (xrel > 0) // right 00813 { 00814 info.push_back( uTransformEventInfo( 00815 su_GetMouseInput().x_minus, 00816 0, 00817 false ) ); 00818 info.push_back( uTransformEventInfo( 00819 su_GetMouseInput().x_plus, 00820 xrel * mouse_sensitivity, 00821 false ) ); 00822 } 00823 00824 if (xrel < 0) // left 00825 { 00826 info.push_back( uTransformEventInfo( 00827 su_GetMouseInput().x_plus, 00828 0, 00829 false ) ); 00830 info.push_back( uTransformEventInfo( 00831 su_GetMouseInput().x_minus, 00832 -xrel * mouse_sensitivity, 00833 false ) ); 00834 } 00835 00836 // invert mouse movement 00837 REAL yrel=-e.motion.yrel; 00838 if (yrel>0) // up 00839 { 00840 info.push_back( uTransformEventInfo( 00841 su_GetMouseInput().y_minus, 00842 0, 00843 false ) ); 00844 info.push_back( uTransformEventInfo( 00845 su_GetMouseInput().y_plus, 00846 yrel * mouse_sensitivity, 00847 false ) ); 00848 } 00849 if (yrel<0) // down 00850 { 00851 info.push_back( uTransformEventInfo( 00852 su_GetMouseInput().y_plus, 00853 0, 00854 false ) ); 00855 info.push_back( uTransformEventInfo( 00856 su_GetMouseInput().y_minus, 00857 -yrel * mouse_sensitivity, 00858 false ) ); 00859 } 00860 } 00861 break; 00862 case SDL_MOUSEBUTTONDOWN: 00863 case SDL_MOUSEBUTTONUP: 00864 { 00865 int button=e.button.button; 00866 if (button<=MOUSE_BUTTONS) 00867 { 00868 info.push_back( uTransformEventInfo( 00869 su_GetMouseInput().button[ button ], 00870 ( e.type == SDL_MOUSEBUTTONDOWN ) ? 1 : 0 ) ); 00871 } 00872 } 00873 break; 00874 case SDL_KEYDOWN: 00875 case SDL_KEYUP: 00876 { 00877 SDL_keysym &c = e.key.keysym; 00878 00879 info.push_back( uTransformEventInfo( 00880 su_GetKeyInput().sdl_keys[ c.sym ], 00881 ( e.type == SDL_KEYDOWN ) ? 1 : 0 ) ); 00882 00883 break; 00884 } 00885 #ifndef NOJOYSTICK 00886 case SDL_JOYAXISMOTION: 00887 { 00888 uJoystick * joystick = su_GetJoystick( e.jaxis.which ); 00889 int dir = e.jaxis.value > 0 ? 1 : 0; 00890 00891 info.push_back( uTransformEventInfo( 00892 joystick->GetAxis( e.jaxis.axis, 1-dir ), 00893 0 ) ); 00894 info.push_back( uTransformEventInfo( 00895 joystick->GetAxis( e.jaxis.axis, dir ), 00896 fabs( e.jaxis.value )/32768 ) ); 00897 00898 break; 00899 } 00900 case SDL_JOYBUTTONDOWN: 00901 case SDL_JOYBUTTONUP: 00902 info.push_back( uTransformEventInfo( 00903 su_GetJoystick( e.jbutton.which )->GetButton( e.jbutton.button ), 00904 ( e.type == SDL_JOYBUTTONDOWN ) ? 1 : 0 ) ); 00905 break; 00906 case SDL_JOYHATMOTION: 00907 { 00908 info.reserve(4); 00909 00910 uJoystick * joystick = su_GetJoystick( e.jhat.which ); 00911 int hat = e.jhat.hat; 00912 int hatDirection = e.jhat.value; 00913 00914 // left/right hat motion 00915 { 00916 int & lastDir = joystick->GetHatDirection( hat, 0 ); 00917 int newDir = 00918 ( ( hatDirection & SDL_HAT_LEFT ) ? -1 : 0 ) + 00919 ( ( hatDirection & SDL_HAT_RIGHT ) ? +1 : 0 ); 00920 00921 // negate previous events 00922 if ( lastDir < 0 && newDir >= 0 ) 00923 { 00924 info.push_back( uTransformEventInfo( 00925 joystick->GetHat( hat, uJoystick::Left ), 00926 0 ) ); 00927 } 00928 00929 if ( lastDir > 0 && newDir <= 0 ) 00930 { 00931 info.push_back( uTransformEventInfo( 00932 joystick->GetHat( hat, uJoystick::Right ), 00933 0 ) ); 00934 } 00935 00936 // create new events 00937 if ( lastDir >= 0 && newDir < 0 ) 00938 { 00939 info.push_back( uTransformEventInfo( 00940 joystick->GetHat( hat, uJoystick::Left ), 00941 1 ) ); 00942 } 00943 00944 if ( lastDir <= 0 && newDir > 0 ) 00945 { 00946 info.push_back( uTransformEventInfo( 00947 joystick->GetHat( hat, uJoystick::Right ), 00948 1 ) ); 00949 } 00950 00951 lastDir = newDir; 00952 } 00953 00954 // up/down hat motion 00955 { 00956 int & lastDir = joystick->GetHatDirection( hat, 1 ); 00957 int newDir = 00958 ( ( hatDirection & SDL_HAT_UP ) ? -1 : 0 ) + 00959 ( ( hatDirection & SDL_HAT_DOWN ) ? +1 : 0 ); 00960 00961 // negate previous events 00962 if ( lastDir < 0 && newDir >= 0 ) 00963 { 00964 info.push_back( uTransformEventInfo( 00965 joystick->GetHat( hat, uJoystick::Up ), 00966 0 ) ); 00967 } 00968 00969 if ( lastDir > 0 && newDir <= 0 ) 00970 { 00971 info.push_back( uTransformEventInfo( 00972 joystick->GetHat( hat, uJoystick::Down ), 00973 0 ) ); 00974 } 00975 00976 // create new events 00977 if ( lastDir >= 0 && newDir < 0 ) 00978 { 00979 info.push_back( uTransformEventInfo( 00980 joystick->GetHat( hat, uJoystick::Up ), 00981 1 ) ); 00982 } 00983 00984 if ( lastDir <= 0 && newDir > 0 ) 00985 { 00986 info.push_back( uTransformEventInfo( 00987 joystick->GetHat( hat, uJoystick::Down ), 00988 1 ) ); 00989 } 00990 00991 lastDir = newDir; 00992 } 00993 } 00994 break; 00995 case SDL_JOYBALLMOTION: 00996 { 00997 info.reserve(4); 00998 00999 uJoystick * joystick = su_GetJoystick( e.jball.which ); 01000 int ball = e.jball.ball; 01001 01002 REAL xrel=e.jball.xrel; 01003 if (xrel > 0) // right 01004 { 01005 info.push_back( uTransformEventInfo( 01006 joystick->GetBall( ball, uJoystick::Left ), 01007 0, 01008 false ) ); 01009 info.push_back( uTransformEventInfo( 01010 joystick->GetBall( ball, uJoystick::Right ), 01011 xrel, 01012 false ) ); 01013 } 01014 01015 if (xrel < 0) // left 01016 { 01017 info.push_back( uTransformEventInfo( 01018 joystick->GetBall( ball, uJoystick::Right ), 01019 0, 01020 false ) ); 01021 info.push_back( uTransformEventInfo( 01022 joystick->GetBall( ball, uJoystick::Left ), 01023 -xrel, 01024 false ) ); 01025 } 01026 01027 // invert ball movement 01028 REAL yrel=-e.jball.yrel; 01029 if (yrel>0) // up 01030 { 01031 info.push_back( uTransformEventInfo( 01032 joystick->GetBall( ball, uJoystick::Down ), 01033 0, 01034 false ) ); 01035 info.push_back( uTransformEventInfo( 01036 joystick->GetBall( ball, uJoystick::Up ), 01037 yrel, 01038 false ) ); 01039 } 01040 if (yrel<0) // down 01041 { 01042 info.push_back( uTransformEventInfo( 01043 joystick->GetBall( ball, uJoystick::Up ), 01044 0, 01045 false ) ); 01046 info.push_back( uTransformEventInfo( 01047 joystick->GetBall( ball, uJoystick::Down ), 01048 -yrel, 01049 false ) ); 01050 } 01051 } 01052 break; 01053 #endif 01054 default: 01055 break; 01056 }


| REAL key_sensitivity = 40 |
Definition at line 1268 of file uInput.cpp.
tInitExit keyboard_ie& keyboard_init [static] |
Definition at line 670 of file uInput.cpp.
double lastTime = 0 [static] |
Definition at line 1269 of file uInput.cpp.
static uActionGlobalFunc md & mess_down [static] |
Definition at line 1501 of file uInput.cpp.
static uActionGlobalFunc mu & mess_up [static] |
Definition at line 1500 of file uInput.cpp.
| REAL mouse_sensitivity = REAL(.1) |
int nextid = 0 [static] |
Definition at line 738 of file uInput.cpp.
Referenced by uPlayerPrototype::Num(), and uPlayerPrototype::uPlayerPrototype().
char const* Player_keyword = "PLAYER_BIND" [static] |
Definition at line 1386 of file uInput.cpp.
uAction* s_cameraActions [static] |
Definition at line 354 of file uInput.cpp.
uAction* s_globalActions [static] |
Definition at line 355 of file uInput.cpp.
uAction* s_playerActions [static] |
Definition at line 353 of file uInput.cpp.
uAction* su_allActions[uMAX_ACTIONS] [static] |
Definition at line 43 of file uInput.cpp.
int su_allActionsLen = 0 [static] |
bool su_delayed = false [static] |
Definition at line 1272 of file uInput.cpp.
| REAL su_doubleBindTimeout = -10.0f |
true if the mouse cursor is to be confined into the window
Definition at line 717 of file uInput.cpp.
Referenced by uBind::IsDoubleBind().
| std::map< std::string, uInput * > su_inputMap |
Definition at line 100 of file uInput.cpp.
Referenced by uMenuItemInput::Event(), uActionGlobal::IsBreakingGlobalBind(), uBindPlayer::NewBind(), tConfItem_key::ReadVal(), uMenuItemInput::Render(), su_ClearKeys(), su_HandleDelayedEvents(), su_InputSync(), uInput::uInput(), tConfItem_key::WriteVal(), and uInput::~uInput().
| bool su_mouseGrab = false |
Definition at line 41 of file uInput.cpp.
Referenced by filter(), sg_ScreenModeMenu(), and su_TransformEvent().
Definition at line 1270 of file uInput.cpp.
Referenced by cCockpit::cb_Framerate(), uMenu::OnEnter(), gWallRim::RenderReal(), gAIPlayer::SetTraceSide(), gSpark::Timestep(), gCycleMovement::Timestep(), gAIPlayer::Timestep(), gCycleMovement::TimestepCore(), and gCycle::TimestepCore().
uActionGlobalFunc* uActionGlobal_anchor = NULL [static] |
Definition at line 1459 of file uInput.cpp.
tConfItem_key x [static] |
Definition at line 351 of file uInput.cpp.
Referenced by atan2f(), uMenuItemSelection< bool >::Clear(), client(), DecaySmooth(), eGrid::display_simple(), nServerInfo::DoQueryAll(), gAIPlayer::EmergencySurvive(), expf(), fabsf(), floorf(), PDDisc::Generate(), PDCone::Generate(), PDCylinder::Generate(), gArena::GetRandomPos(), zShapePolygon::isInside(), tListItemBase::Len(), rModel::Load(), logf(), main(), rConsole::MaxHeight(), MenuBackground(), uMenuItemSelection< bool >::NewChoice(), NextPowerOfTwo(), ntest(), ePoint::operator *(), tOutput::operator const char *(), ePoint::operator+(), ePoint::operator-(), ePoint::operator=(), ePoint::Print(), nKrawall::ReadScrambledPassword(), gCycle::ReadSync(), eNetGameObject::ReceiveControlNet(), gExplosion::Render(), gCycle::Render(), rFont::Render(), gExplosion::Render2D(), cWidget::NeedleGauge::RenderGraph(), cWidget::VerticalBarGauge::RenderGraph(), cWidget::BarGauge::RenderGraph(), gNetPlayerWall::RenderList(), gCycle::RenderName(), uMenu::ReverseItems(), rotate(), sqrtf(), test_max_a(), test_max_b(), gAIPlayer::Think(), gCamera::Timestep(), eCamera::Timestep(), gCycleMovement::TimestepCore(), PDBlob::Within(), PDCone::Within(), PDCylinder::Within(), gCycle::WriteSync(), and gCamera::~gCamera().
1.5.4