831 @"Function", @"Assigned to", @"Overrides", nil]
832 forRow:GUI_ROW_KC_HEADING];
842 NSInteger n_rows, start_row, previous = 0;
843 NSString *validate =
nil;
845 if (skip >= n_functions)
846 skip = n_functions - 1;
879 for(i = 0; i < (n_functions - skip) && (
int)i < n_rows; i++)
881 NSDictionary *entry = [
keyFunctions objectAtIndex:i + skip];
883 NSString *header = [
entry objectForKey:KEY_KC_HEADER];
889 NSString *assignment =
nil;
890 NSString *
override =
nil;
891 if (![
self entryIsDictCustomEquip:entry])
894 assignment = [PLAYER keyBindingDescription2:[
entry objectForKey:KEY_KC_DEFINITION]];
895 override = ([
overrides objectForKey:[
entry objectForKey:KEY_KC_DEFINITION]] ?
@"Yes" :
@"");
902 assignment = [PLAYER getKeyBindingDescription:[[
customEquipActivation objectAtIndex:idx] oo_arrayForKey:custom_keytype]];
906 NSArray *defArray =
nil;
907 NSArray *compArray =
nil;
919 for (j = 0; j < [
defArray count]; j++)
923 if (![
self compareKeyEntries:[defArray objectAtIndex:j] second:[compArray objectAtIndex:k]])
929 if (result ==
false)
break;
932 override = (!result ?
@"Yes" :
@"");
935 if (assignment ==
nil)
941 [
entry objectForKey:KEY_KC_GUIDESC], assignment, override, nil]
950 if (i < n_functions - skip)
958 [
gui setSelectableRange:NSMakeRange(GUI_ROW_KC_SELECTKBD, (i + start_row - GUI_ROW_KC_FUNCSTART) + (GUI_ROW_KC_FUNCSTART - GUI_ROW_KC_SELECTKBD))];
1003 [
funcList addObject:[
self makeKeyGuiDict:DESC(@"oolite-keydesc-key_docking_clearance_request")
keyDef:@"key_docking_clearance_request"]];
1032 [
funcList addObject:[
self makeKeyGuiDict:DESC(@"oolite-keydesc-key_prime_previous_equipment")
keyDef:@"key_prime_previous_equipment"]];
1035 [
funcList addObject:[
self makeKeyGuiDict:DESC(@"oolite-keydesc-key_fastactivate_equipment_a")
keyDef:@"key_fastactivate_equipment_a"]];
1036 [
funcList addObject:[
self makeKeyGuiDict:DESC(@"oolite-keydesc-key_fastactivate_equipment_b")
keyDef:@"key_fastactivate_equipment_b"]];
1040 [
funcList addObject:[
self makeKeyGuiDict:DESC(@"oolite-keydesc-key_advanced_nav_array_previous")
keyDef:@"key_advanced_nav_array_previous"]];
1072#if OO_FOV_INFLIGHT_CONTROL_ENABLED
1089 [
funcList addObject:[
self makeKeyGuiDict:DESC(@"oolite-keydesc-key_custom_view_rotate_right")
keyDef:@"key_custom_view_rotate_right"]];
1117 if ([customEquipActivation
count] > 0)
1391- (NSString *) validateKey:(NSString *)key checkKeys:(NSArray *)check_keys
1393 NSString *result =
nil;
1396 NSArray *gui_keys = [
NSArray arrayWithObjects:@"key_gui_arrow_left", @"key_gui_arrow_right", @"key_gui_arrow_up", @"key_gui_arrow_down", @"key_gui_page_up",
1397 @"key_gui_page_down", @"key_gui_select", nil];
1399 if ([gui_keys containsObject:key])
1402 if (result)
return result;
1405 NSArray *debug_keys = [
NSArray arrayWithObjects:
1406 @"key_dump_target_state", @"key_dump_entity_list", @"key_debug_full", @"key_debug_collision", @"key_debug_console_connect", @"key_debug_bounding_boxes",
1407 @"key_debug_shaders", @"key_debug_off", nil];
1409 if ([debug_keys containsObject:key])
1412 if (result)
return result;
1415 NSArray *customview_keys = [
NSArray arrayWithObjects:
1416 @"key_custom_view", @"key_custom_view_zoom_out", @"key_custom_view_zoom_in", @"key_custom_view_roll_left", @"key_custom_view_pan_left",
1417 @"key_custom_view_roll_right", @"key_custom_view_pan_right", @"key_custom_view_rotate_up", @"key_custom_view_pan_up", @"key_custom_view_rotate_down",
1418 @"key_custom_view_pan_down", @"key_custom_view_rotate_left", @"key_custom_view_rotate_right", nil];
1420 if ([customview_keys containsObject:key])
1423 if (result)
return result;
1426 NSMutableArray *inflight_keys = [
NSMutableArray arrayWithObjects:
1427 @"key_roll_left", @"key_roll_right", @"key_pitch_forward", @"key_pitch_back", @"key_yaw_left", @"key_yaw_right", @"key_view_forward", @"key_view_aft",
1428 @"key_view_port", @"key_view_starboard", @"key_increase_speed", @"key_decrease_speed", @"key_inject_fuel", @"key_fire_lasers", @"key_weapons_online_toggle",
1429 @"key_launch_missile", @"key_next_missile", @"key_ecm", @"key_prime_next_equipment", @"key_prime_previous_equipment", @"key_activate_equipment",
1430 @"key_mode_equipment", @"key_fastactivate_equipment_a", @"key_fastactivate_equipment_b", @"key_target_incoming_missile", @"key_target_missile",
1431 @"key_untarget_missile", @"key_ident_system", @"key_scanner_zoom", @"key_scanner_unzoom", @"key_launch_escapepod", @"key_galactic_hyperspace",
1432 @"key_hyperspace", @"key_jumpdrive", @"key_dump_cargo", @"key_rotate_cargo", @"key_autopilot", @"key_autodock", @"key_docking_clearance_request",
1433 @"key_snapshot", @"key_cycle_next_mfd", @"key_cycle_previous_mfd", @"key_switch_next_mfd", @"key_switch_previous_mfd",
1434 @"key_next_target", @"key_previous_target", @"key_comms_log", @"key_prev_compass_mode", @"key_next_compass_mode", @"key_custom_view",
1435#if OO_FOV_INFLIGHT_CONTROL_ENABLED
1436 @"key_inc_field_of_view", @"key_dec_field_of_view",
1438 @"key_pausebutton", @"key_dump_target_state", nil];
1440 if ([
self entryIsCustomEquip:key]) {
1449 if ([inflight_keys containsObject:key])
1452 if (result)
return result;
1455 NSArray *docking_keys = [
NSArray arrayWithObjects:
1456 @"key_docking_music", @"key_autopilot", @"key_pausebutton", nil];
1458 if ([docking_keys containsObject:key])
1461 if (result)
return result;
1464 NSArray *docked_keys = [
1465 [
NSArray arrayWithObjects:@"key_launch_ship", @"key_gui_screen_options", @"key_gui_screen_equipship", @"key_gui_screen_interfaces", @"key_gui_screen_status",
1466 @"key_gui_chart_screens", @"key_gui_system_data", @"key_gui_market", nil]
1467 arrayByAddingObjectsFromArray:gui_keys];
1469 if ([docked_keys containsObject:key])
1472 if (result)
return result;
1475 NSArray *paused_keys = [[
1476 [
NSArray arrayWithObjects:@"key_pausebutton", @"key_gui_screen_options", @"key_hud_toggle", @"key_show_fps", @"key_mouse_control_roll",
1477 @"key_mouse_control_yaw", nil]
1478 arrayByAddingObjectsFromArray:debug_keys]
1479 arrayByAddingObjectsFromArray:customview_keys];
1481 if ([paused_keys containsObject:key])
1484 if (result)
return result;
1487 NSArray *chart_keys = [
NSArray arrayWithObjects:
1488 @"key_advanced_nav_array_next", @"key_advanced_nav_array_previous", @"key_map_home", @"key_map_end", @"key_map_info",
1489 @"key_map_zoom_in", @"key_map_zoom_out", @"key_map_next_system", @"key_map_previous_system", @"key_chart_highlight",
1490 @"key_launch_ship", @"key_gui_screen_options", @"key_gui_screen_equipship", @"key_gui_screen_interfaces", @"key_gui_screen_status",
1491 @"key_gui_chart_screens", @"key_gui_system_data", @"key_gui_market", nil];
1493 if ([chart_keys containsObject:key])
1496 if (result)
return result;
1499 NSArray *sysinfo_keys = [
NSArray arrayWithObjects:
1500 @"key_system_home", @"key_system_end", @"key_system_next_system", @"key_system_previous_system",
1501 @"key_launch_ship", @"key_gui_screen_options", @"key_gui_screen_equipship", @"key_gui_screen_interfaces", @"key_gui_screen_status",
1502 @"key_gui_chart_screens", @"key_gui_system_data", @"key_gui_market", nil];
1504 if ([sysinfo_keys containsObject:key])
1507 if (result)
return result;
1510 NSArray *market_keys = [
NSArray arrayWithObjects:
1511 @"key_market_filter_cycle", @"key_market_sorter_cycle", @"key_market_buy_one", @"key_market_sell_one", @"key_market_buy_max",
1512 @"key_market_sell_max", @"key_launch_ship", @"key_gui_screen_options", @"key_gui_screen_equipship", @"key_gui_screen_interfaces", @"key_gui_screen_status",
1513 @"key_gui_chart_screens", @"key_gui_system_data", @"key_gui_market", @"key_gui_arrow_up", @"key_gui_arrow_down", @"key_gui_page_up",
1514 @"key_gui_page_down", @"key_gui_select", nil];
1516 if ([market_keys containsObject:key])
1519 if (result)
return result;