(menu_setting.c) Cut down on strcmps

This commit is contained in:
twinaphex 2015-06-05 17:05:11 +02:00
parent 439de844b4
commit b6cfa4a892
2 changed files with 120 additions and 81 deletions

View File

@ -19,9 +19,31 @@
#ifdef __cplusplus
extern "C" {
#endif
#define MENU_LABEL_SCREENSHOT_DIRECTORY 0x552612d7U
#define MENU_LABEL_RESET 0x10474288U
#define MENU_LABEL_SLOWMOTION 0x6a269ea0U
#define MENU_LABEL_HOLD_FAST_FORWARD 0xebe2e4cdU
#define MENU_LABEL_CHEAT_TOGGLE 0xe515e0cbU
#define MENU_LABEL_PAUSE_TOGGLE 0x557634e4U
#define MENU_LABEL_SAVE_STATE 0x54a257f4U
#define MENU_LABEL_LOAD_STATE 0xe8c5dae5U
#define MENU_LABEL_REWIND 0x1931d5aeU
#define MENU_LABEL_NETPLAY_FLIP_PLAYERS 0x801425abU
#define MENU_LABEL_CHEAT_INDEX_MINUS 0x57f58b6cU
#define MENU_LABEL_CHEAT_INDEX_PLUS 0x678542a4U
#define MENU_LABEL_SCREENSHOT_DIRECTORY 0x552612d7U
#define MENU_LABEL_SHADER_NEXT 0x54d359baU
#define MENU_LABEL_SHADER_PREV 0x54d4a758U
#define MENU_LABEL_FRAME_ADVANCE 0xd80302a1U
#define MENU_LABEL_MOVIE_RECORD_TOGGLE 0xa2d2ff04U
#define MENU_LABEL_L_X_PLUS 0xd7370d4bU
#define MENU_LABEL_L_X_MINUS 0xbde0aaf3U
#define MENU_LABEL_L_Y_PLUS 0xd98c35ecU
#define MENU_LABEL_L_Y_MINUS 0x0adae7b4U
#define MENU_LABEL_R_X_PLUS 0x60c20a91U
#define MENU_LABEL_R_X_MINUS 0x78cb50f9U
#define MENU_LABEL_R_Y_MINUS 0xc5c58dbaU
#define MENU_LABEL_R_Y_PLUS 0x63173332U
#define MENU_LABEL_VIDEO_SWAP_INTERVAL 0x5673ff9aU
#define MENU_LABEL_VIDEO_GPU_SCREENSHOT 0xee2fcb44U
#define MENU_LABEL_PAUSE_NONACTIVE 0x580bf549U

View File

@ -2864,24 +2864,104 @@ static int setting_get_description_compare_label(uint32_t label_hash,
"itself (not turbo button) is released.");
break;
case MENU_LABEL_OSK_ENABLE:
snprintf(s, len,
snprintf(s, len,
" -- Enable/disable on-screen keyboard.");
break;
break;
case MENU_LABEL_AUDIO_MUTE:
snprintf(s, len,
" -- Mute/unmute audio.");
break;
snprintf(s, len,
" -- Mute/unmute audio.");
break;
case MENU_LABEL_REWIND:
snprintf(s, len,
" -- Hold button down to rewind.\n"
" \n"
"Rewind must be enabled.");
break;
case MENU_LABEL_EXIT_EMULATOR:
snprintf(s, len,
" -- Key to exit RetroArch cleanly."
snprintf(s, len,
" -- Key to exit RetroArch cleanly."
#if !defined(RARCH_MOBILE) && !defined(RARCH_CONSOLE)
"\nKilling it in any hard way (SIGKILL, \n"
"etc) will terminate without saving\n"
"RAM, etc. On Unix-likes,\n"
"SIGINT/SIGTERM allows\n"
"a clean deinitialization."
"\nKilling it in any hard way (SIGKILL, \n"
"etc) will terminate without saving\n"
"RAM, etc. On Unix-likes,\n"
"SIGINT/SIGTERM allows\n"
"a clean deinitialization."
#endif
);
);
break;
case MENU_LABEL_LOAD_STATE:
snprintf(s, len,
" -- Loads state.");
break;
case MENU_LABEL_SAVE_STATE:
snprintf(s, len,
" -- Saves state.");
break;
case MENU_LABEL_NETPLAY_FLIP_PLAYERS:
snprintf(s, len,
" -- Netplay flip users.");
break;
case MENU_LABEL_CHEAT_INDEX_PLUS:
snprintf(s, len,
" -- Increment cheat index.\n");
break;
case MENU_LABEL_CHEAT_INDEX_MINUS:
snprintf(s, len,
" -- Decrement cheat index.\n");
break;
case MENU_LABEL_SHADER_PREV:
snprintf(s, len,
" -- Applies previous shader in directory.");
break;
case MENU_LABEL_SHADER_NEXT:
snprintf(s, len,
" -- Applies next shader in directory.");
break;
case MENU_LABEL_RESET:
snprintf(s, len,
" -- Reset the content.\n");
break;
case MENU_LABEL_PAUSE_TOGGLE:
snprintf(s, len,
" -- Toggle between paused and non-paused state.");
break;
case MENU_LABEL_CHEAT_TOGGLE:
snprintf(s, len,
" -- Toggle cheat index.\n");
break;
case MENU_LABEL_HOLD_FAST_FORWARD:
snprintf(s, len,
" -- Hold for fast-forward. Releasing button \n"
"disables fast-forward.");
break;
case MENU_LABEL_SLOWMOTION:
snprintf(s, len,
" -- Hold for slowmotion.");
break;
case MENU_LABEL_FRAME_ADVANCE:
snprintf(s, len,
" -- Frame advance when content is paused.");
break;
case MENU_LABEL_MOVIE_RECORD_TOGGLE:
snprintf(s, len,
" -- Toggle between recording and not.");
break;
case MENU_LABEL_L_X_PLUS:
case MENU_LABEL_L_X_MINUS:
case MENU_LABEL_L_Y_PLUS:
case MENU_LABEL_L_Y_MINUS:
case MENU_LABEL_R_X_PLUS:
case MENU_LABEL_R_X_MINUS:
case MENU_LABEL_R_Y_PLUS:
case MENU_LABEL_R_Y_MINUS:
snprintf(s, len,
" -- Axis for analog stick (DualShock-esque).\n"
" \n"
"Bound as usual, however, if a real analog \n"
"axis is bound, it can be read as a true analog.\n"
" \n"
"Positive X axis is right. \n"
"Positive Y axis is down.");
break;
default:
return -1;
@ -2907,75 +2987,12 @@ int setting_get_description(const char *label, char *s,
{
settings_t *settings = config_get_ptr();
uint32_t label_hash = djb2_calculate(label);
if (setting_get_description_compare_label(label_hash, settings, s, len) == 0)
return 0;
if (
!strcmp(label, "l_x_plus") ||
!strcmp(label, "l_x_minus") ||
!strcmp(label, "l_y_plus") ||
!strcmp(label, "l_y_minus")
)
snprintf(s, len,
" -- Axis for analog stick (DualShock-esque).\n"
" \n"
"Bound as usual, however, if a real analog \n"
"axis is bound, it can be read as a true analog.\n"
" \n"
"Positive X axis is right. \n"
"Positive Y axis is down.");
else if (!strcmp(label, "rewind"))
snprintf(s, len,
" -- Hold button down to rewind.\n"
" \n"
"Rewind must be enabled.");
else if (!strcmp(label, "load_state"))
snprintf(s, len,
" -- Loads state.");
else if (!strcmp(label, "save_state"))
snprintf(s, len,
" -- Saves state.");
else if (!strcmp(label, "netplay_flip_players"))
snprintf(s, len,
" -- Netplay flip users.");
else if (!strcmp(label, "frame_advance"))
snprintf(s, len,
" -- Frame advance when content is paused.");
else if (!strcmp(label, "slowmotion"))
snprintf(s, len,
" -- Hold for slowmotion.");
else if (!strcmp(label, "movie_record_toggle"))
snprintf(s, len,
" -- Toggle between recording and not.");
else if (!strcmp(label, "pause_toggle"))
snprintf(s, len,
" -- Toggle between paused and non-paused state.");
else if (!strcmp(label, "hold_fast_forward"))
snprintf(s, len,
" -- Hold for fast-forward. Releasing button \n"
"disables fast-forward.");
else if (!strcmp(label, "shader_next"))
snprintf(s, len,
" -- Applies next shader in directory.");
else if (!strcmp(label, "reset"))
snprintf(s, len,
" -- Reset the content.\n");
else if (!strcmp(label, "cheat_index_plus"))
snprintf(s, len,
" -- Increment cheat index.\n");
else if (!strcmp(label, "cheat_index_minus"))
snprintf(s, len,
" -- Decrement cheat index.\n");
else if (!strcmp(label, "cheat_toggle"))
snprintf(s, len,
" -- Toggle cheat index.\n");
else if (!strcmp(label, "shader_prev"))
snprintf(s, len,
" -- Applies previous shader in directory.");
else
snprintf(s, len,
"-- No info on this item is available. --\n");
snprintf(s, len,
"-- No info on this item is available. --\n");
return 0;
}