本文整理汇总了C++中Key_KeynumToString函数的典型用法代码示例。如果您正苦于以下问题:C++ Key_KeynumToString函数的具体用法?C++ Key_KeynumToString怎么用?C++ Key_KeynumToString使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Key_KeynumToString函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: DumpBindings
void DumpBindings (FILE *f)
{
int i, leftright;
char *spaces, *string;
qbool printed = false;
for (i = 0; i < (sizeof(keybindings) / sizeof(*keybindings)); i++) {
leftright = Key_IsLeftRightSameBind(i) ? 1 : 0;
if (keybindings[i] || leftright) {
printed = true;
#ifdef WITH_KEYMAP
string = Key_KeynumToString(i, NULL);
#else
string = Key_KeynumToString(i);
#endif
spaces = CreateSpaces(BIND_ALIGN_COL - strlen(string) - 6);
if (i == ';')
fprintf (f, "bind \";\"%s\"%s\"\n", spaces, keybindings[i]);
else
fprintf (f, "bind %s%s\"%s\"\n", string, spaces, keybindings[leftright ? i + 1 : i]);
if (leftright)
i += 2;
}
}
if (!printed)
fprintf(f, "//no bindings\n");
}
示例2: IN_XBox360AxisToButton
static int IN_XBox360AxisToButton(int controllerAxis, int key, float expectedStartValue, float threshold) {
unsigned int axes = 0;
Sint16 axis = SDL_JoystickGetAxis(stick, controllerAxis);
float f = ((float) axis) / 32767.0f;
/*
if(f < -in_joystickThreshold->value)
{
axes |= (1 << (controllerAxis * 2));
}
else if(f > in_joystickThreshold->value)
{
axes |= (1 << ((controllerAxis * 2) + 1));
}
*/
if (f > (expectedStartValue + threshold + in_joystickThreshold->value)) {
axes |= (1 << (controllerAxis));
}
if ((axes & (1 << controllerAxis)) &&
!(stick_state.oldaxes & (1 << controllerAxis))) {
Com_QueueEvent(0, SE_KEY, key, true, 0, nullptr);
if (in_xbox360ControllerDebug->integer) {
Com_Printf("xbox axis = %i to key = Q:0x%02x(%s), value = %f\n",
controllerAxis,
key,
Key_KeynumToString(key),
f);
}
}
if (!(axes & (1 << controllerAxis)) &&
(stick_state.oldaxes & (1 << controllerAxis))) {
Com_QueueEvent(0, SE_KEY, key, false, 0, nullptr);
if (in_xbox360ControllerDebug->integer) {
Com_Printf("xbox axis = %i to key = Q:0x%02x(%s), value = %f\n",
controllerAxis,
key,
Key_KeynumToString(key),
f);
}
}
return axes;
}
示例3: DrawKeyBindingFunc
static void DrawKeyBindingFunc( void *self )
{
int keys[2];
menuaction_s *a = ( menuaction_s * ) self;
M_FindKeysForCommand( bindnames[a->generic.localdata[0]][0], keys);
if (keys[0] == -1)
{
Menu_DrawString (a->generic.x + a->generic.parent->x + 16,
a->generic.y + a->generic.parent->y, "^1<NONE>", 255);
}
else
{
int x;
const char *name;
int alpha;
if (cursor.menuitem == a)
alpha=255;
else
alpha=160;
name = Key_KeynumToString (keys[0]);
Menu_DrawString (a->generic.x + a->generic.parent->x + 16,
a->generic.y + a->generic.parent->y, name , alpha);
x = strlen(name) * MENU_FONT_SIZE;
if (keys[1] != -1)
{
Menu_DrawString (a->generic.x + a->generic.parent->x + MENU_FONT_SIZE*3 + x,
a->generic.y + a->generic.parent->y, "or", alpha);
Menu_DrawString (a->generic.x + a->generic.parent->x + MENU_FONT_SIZE*6 + x,
a->generic.y + a->generic.parent->y, Key_KeynumToString(keys[1]), alpha);
}
}
}
示例4: UI_Tooltip
/**
* @brief Wrapper for UI tooltips
*/
void UI_Tooltip (const uiNode_t* node, int x, int y)
{
const char* string;
const char* key = nullptr;
const char* tooltip = nullptr;
static const int maxWidth = 200;
/* check values */
if (node->key)
key = Key_KeynumToString(node->key->key);
if (node->tooltip)
tooltip = UI_GetReferenceString(node, node->tooltip);
/* normalize */
if (tooltip && tooltip[0] == '\0')
tooltip = nullptr;
if (key && key[0] == '\0')
key = nullptr;
/* create tooltip */
if (key && tooltip) {
char buf[MAX_VAR];
Com_sprintf(buf, sizeof(buf), _("Key: %s"), key);
string = va("%s\n%s", tooltip, buf);
} else if (tooltip) {
string = tooltip;
} else if (key) {
string = va(_("Key: %s"), key);
} else {
return;
}
UI_DrawTooltip(string, x, y, maxWidth);
}
示例5: Key_KeynumToStringBuf
static void Key_KeynumToStringBuf( int keynum, char *buf, int buflen ) {
#else
void Key_KeynumToStringBuf( int keynum, char *buf, int buflen ) {
#endif // RTCW_XX
Q_strncpyz( buf, Key_KeynumToString( keynum, qtrue ), buflen );
}
示例6: IN_PrintKey
/*
===============
IN_PrintKey
===============
*/
static void IN_PrintKey( const SDL_Keysym *keysym, keyNum_t key, bool down )
{
if ( keysym->mod & KMOD_LSHIFT ) { Log::Notice( " KMOD_LSHIFT" ); }
if ( keysym->mod & KMOD_RSHIFT ) { Log::Notice( " KMOD_RSHIFT" ); }
if ( keysym->mod & KMOD_LCTRL ) { Log::Notice( " KMOD_LCTRL" ); }
if ( keysym->mod & KMOD_RCTRL ) { Log::Notice( " KMOD_RCTRL" ); }
if ( keysym->mod & KMOD_LALT ) { Log::Notice( " KMOD_LALT" ); }
if ( keysym->mod & KMOD_RALT ) { Log::Notice( " KMOD_RALT" ); }
if ( keysym->mod & KMOD_LGUI ) { Log::Notice( " KMOD_LGUI" ); }
if ( keysym->mod & KMOD_RGUI ) { Log::Notice( " KMOD_RGUI" ); }
if ( keysym->mod & KMOD_NUM ) { Log::Notice( " KMOD_NUM" ); }
if ( keysym->mod & KMOD_CAPS ) { Log::Notice( " KMOD_CAPS" ); }
if ( keysym->mod & KMOD_MODE ) { Log::Notice( " KMOD_MODE" ); }
if ( keysym->mod & KMOD_RESERVED ) { Log::Notice( " KMOD_RESERVED" ); }
Log::Notice( "%c 0x%02x \"%s\" Q:0x%02x(%s)\n", down ? '+' : ' ', keysym->scancode,
SDL_GetKeyName( keysym->sym ), key, Key_KeynumToString( key ) );
}
示例7: IN_PrintKey
/*
===============
IN_PrintKey
===============
*/
static void IN_PrintKey( const SDL_Keysym *keysym, keyNum_t key, qboolean down )
{
if( down )
Com_Printf( "+ " );
else
Com_Printf( " " );
Com_Printf( "Scancode: 0x%02x(%s) Sym: 0x%02x(%s)",
keysym->scancode, SDL_GetScancodeName( keysym->scancode ),
keysym->sym, SDL_GetKeyName( keysym->sym ) );
if( keysym->mod & KMOD_LSHIFT ) Com_Printf( " KMOD_LSHIFT" );
if( keysym->mod & KMOD_RSHIFT ) Com_Printf( " KMOD_RSHIFT" );
if( keysym->mod & KMOD_LCTRL ) Com_Printf( " KMOD_LCTRL" );
if( keysym->mod & KMOD_RCTRL ) Com_Printf( " KMOD_RCTRL" );
if( keysym->mod & KMOD_LALT ) Com_Printf( " KMOD_LALT" );
if( keysym->mod & KMOD_RALT ) Com_Printf( " KMOD_RALT" );
if( keysym->mod & KMOD_LGUI ) Com_Printf( " KMOD_LGUI" );
if( keysym->mod & KMOD_RGUI ) Com_Printf( " KMOD_RGUI" );
if( keysym->mod & KMOD_NUM ) Com_Printf( " KMOD_NUM" );
if( keysym->mod & KMOD_CAPS ) Com_Printf( " KMOD_CAPS" );
if( keysym->mod & KMOD_MODE ) Com_Printf( " KMOD_MODE" );
if( keysym->mod & KMOD_RESERVED ) Com_Printf( " KMOD_RESERVED" );
Com_Printf( " Q:0x%02x(%s)\n", key, Key_KeynumToString( key, qtrue ) );
}
示例8: Menu_ItemAtCursor
static const char *Keys_MenuKey( menuframework_s *self, int key )
{
menuaction_s *item = ( menuaction_s * ) Menu_ItemAtCursor( &s_keys_menu );
if ( bind_grab )
{
if ( key != K_ESCAPE && key != '`' )
{
char cmd[1024];
Com_sprintf (cmd, sizeof(cmd), "bind \"%s\" \"%s\"", Key_KeynumToString(key), bindnames[item->generic.localdata[0]][0]);
Cbuf_InsertText (cmd);
}
Menu_SetStatusBar( &s_keys_menu, "enter to change, backspace to clear" );
bind_grab = false;
return menu_out_sound;
}
switch ( key )
{
case K_KP_ENTER:
case K_ENTER:
case K_MOUSE1:
KeyBindingFunc( item );
return menu_in_sound;
case K_BACKSPACE: // delete bindings
case K_DEL: // delete bindings
case K_KP_DEL:
M_UnbindCommand( bindnames[item->generic.localdata[0]][0] );
return menu_out_sound;
default:
return Default_MenuKey( self, key );
}
}
示例9: CLMN_AddBindings
static inline void CLMN_AddBindings (linkedList_t **list, char **bindings)
{
int i;
for (i = K_FIRST_KEY; i < K_LAST_KEY; i++)
if (bindings[i] && bindings[i][0] != '\0')
LIST_AddString(list, va("%s\t%s", Key_KeynumToString(i), Cmd_GetCommandDesc(bindings[i])));
}
示例10: UI_KeyBindingNodeKeyPressed
/**
* @brief Called when we press a key when the node got the focus
* @return True, if we use the event
*/
static qboolean UI_KeyBindingNodeKeyPressed (uiNode_t *node, unsigned int key, unsigned short unicode)
{
const char *command;
const char *binding;
UI_RemoveFocus();
/** @todo what about macro expansion? */
if (!Q_strstart(node->text, "*binding:"))
return qfalse;
command = node->text + 9;
/** @todo ensure that the binding for the key command is not executed */
binding = Key_GetBinding(command, EXTRADATA(node).keySpace);
if (binding[0] != '\0') {
/* if it's the same command, do not change anything, otherwise
* show the reason why nothing was changed */
if (!Q_streq(binding, command)) {
const char *keyStr = Key_KeynumToString(key);
UI_DisplayNotice(va(_("Key %s already bound"), keyStr), 2000, NULL);
}
return qfalse;
}
/* fire change event */
if (node->onChange)
UI_ExecuteEventActions(node, node->onChange);
Key_SetBinding(key, command, EXTRADATA(node).keySpace);
return qtrue;
}
示例11: IN_PrintKey
/*
===============
IN_PrintKey
===============
*/
static void IN_PrintKey( const SDL_keysym *keysym, keyNum_t key, qboolean down )
{
if( down )
Com_Printf( "+ " );
else
Com_Printf( " " );
Com_Printf( "0x%02x \"%s\"", keysym->scancode,
SDL_GetKeyName( keysym->sym ) );
if( keysym->mod & KMOD_LSHIFT ) Com_Printf( " KMOD_LSHIFT" );
if( keysym->mod & KMOD_RSHIFT ) Com_Printf( " KMOD_RSHIFT" );
if( keysym->mod & KMOD_LCTRL ) Com_Printf( " KMOD_LCTRL" );
if( keysym->mod & KMOD_RCTRL ) Com_Printf( " KMOD_RCTRL" );
if( keysym->mod & KMOD_LALT ) Com_Printf( " KMOD_LALT" );
if( keysym->mod & KMOD_RALT ) Com_Printf( " KMOD_RALT" );
if( keysym->mod & KMOD_LMETA ) Com_Printf( " KMOD_LMETA" );
if( keysym->mod & KMOD_RMETA ) Com_Printf( " KMOD_RMETA" );
if( keysym->mod & KMOD_NUM ) Com_Printf( " KMOD_NUM" );
if( keysym->mod & KMOD_CAPS ) Com_Printf( " KMOD_CAPS" );
if( keysym->mod & KMOD_MODE ) Com_Printf( " KMOD_MODE" );
if( keysym->mod & KMOD_RESERVED ) Com_Printf( " KMOD_RESERVED" );
Com_Printf( " Q:0x%02x(%s)", key, Key_KeynumToString( key ) );
if( keysym->unicode )
{
Com_Printf( " U:0x%02x", keysym->unicode );
if( keysym->unicode > ' ' && keysym->unicode < '~' )
Com_Printf( "(%c)", (char)keysym->unicode );
}
Com_Printf( "\n" );
}
示例12: DrawKeyBindingFunc
static void DrawKeyBindingFunc( void *self )
{
int mkeys[2];
menuaction_s *a = ( menuaction_s * ) self;
M_FindKeysForCommand( bindnames[a->generic.localdata[0]][0], mkeys);
if (mkeys[0] == -1)
{
Menu_DrawString( a->generic.x + a->generic.parent->x + 16, a->generic.y + a->generic.parent->y, "???" );
}
else
{
int x;
const char *name;
name = Key_KeynumToString (mkeys[0]);
Menu_DrawString( a->generic.x + a->generic.parent->x + 16, a->generic.y + a->generic.parent->y, name );
x = strlen(name) * 8;
if (mkeys[1] != -1)
{
Menu_DrawString( a->generic.x + a->generic.parent->x + 24 + x, a->generic.y + a->generic.parent->y, "or" );
Menu_DrawString( a->generic.x + a->generic.parent->x + 48 + x, a->generic.y + a->generic.parent->y, Key_KeynumToString (mkeys[1]) );
}
}
}
示例13: Cmd_JoyRemapList_f
/*
============
Cmd_JoyRemapList_f
============
*/
void Cmd_JoyRemapList_f( void ) {
int i;
int localPlayerNum;
joyDevice_t *device;
localPlayerNum = Com_LocalPlayerForCvarName( Cmd_Argv(0) );
if ( playerJoyRemapIndex[ localPlayerNum ] == -1 ) {
Com_Printf( "Joystick for player %d not initialized\n", localPlayerNum+1 );
return;
}
device = &joyDevice[ playerJoyRemapIndex[ localPlayerNum ] ];
if ( strcmp( device->name, device->ident ) ) {
Com_Printf("Device: %s (%s)\n", device->name, device->ident );
} else {
Com_Printf("Device: %s\n", device->name );
}
for ( i = 0 ; i < MAX_JOY_REMAPS ; i++ ) {
if ( device->remap[i].event.type == JOYEVENT_NONE ) {
continue;
}
Com_Printf ("%s %s\n", CL_JoyEventToString( &device->remap[i].event ),
Key_KeynumToString( device->remap[i].keynum ) );
}
}
示例14: Key_GetBinding
/**
* @brief Return the key binding for a given script command
* @param[in] binding The script command to bind keynum to
* @param space Namespace of the key binding
* @sa Key_SetBinding
* @return the binded key or empty string if not found
*/
const char* Key_GetBinding (const char *binding, keyBindSpace_t space)
{
int i;
char **keySpace = NULL;
switch (space) {
case KEYSPACE_UI:
keySpace = menuKeyBindings;
break;
case KEYSPACE_GAME:
keySpace = keyBindings;
break;
case KEYSPACE_BATTLE:
keySpace = battleKeyBindings;
break;
default:
Sys_Error("Unknown key space (%i) given", space);
}
for (i = K_FIRST_KEY; i < K_LAST_KEY; i++)
if (keySpace[i] && *keySpace[i] && Q_streq(keySpace[i], binding)) {
return Key_KeynumToString(i);
}
/* not found */
return "";
}
示例15: PF_cl_keynumtostring
//string keynumtostring(float keynum) = #609;
void QCBUILTIN PF_cl_keynumtostring (pubprogfuncs_t *prinst, struct globalvars_s *pr_globals)
{
int code = G_FLOAT(OFS_PARM0);
code = MP_TranslateQCtoFTECodes (code);
RETURN_TSTRING(Key_KeynumToString(code, 0));
}