1GetMenuValue = {} 2MenuAction = {} 3 4GetMenuValue[ MenuC.type.menu ] = function ( menu ) 5 -- return "(menu)" 6 return "" 7end 8 9MenuAction[ MenuC.type.menu ] = function ( menu ) 10 Menu.current = menu 11 Menu.active = 1 12end 13 14GetMenuValue[ MenuC.type.list ] = function ( menu ) 15 local value 16 if Menu[menu].read then value = Menu[menu].read() end 17 if not value then value = "undef" end 18 19 -- script_print(menu .. " --> " .. value ) 20 local i 21 for i=1,getn(Menu[menu].values) do 22 if Menu[menu].values[i] == value then return Menu[menu].labels[i] end 23 end 24 return "unknown (" .. value .. ")" 25end 26 27MenuAction[ MenuC.type.list ] = function ( menu ) 28 local value 29 if Menu[menu].read then 30 value = Menu[menu].read() 31 else 32 value = "undef" 33 end 34 35 local nValues = getn(Menu[menu].values) 36 local i 37 for i=1,nValues do 38 if Menu[menu].values[i] == value then 39 if i < nValues then 40 value = Menu[menu].values[i + 1] 41 else 42 value = Menu[menu].values[1] 43 end 44 return Menu[menu].store( value ) 45 end 46 end 47 return Menu[menu].store( Menu[menu].values[1] ) 48end 49 50MenuAction[ MenuC.type.action ] = function ( menu ) 51 Menu[menu].action() 52end 53 54GetMenuValue[ MenuC.type.slider ] = function ( menu ) 55 return Menu[menu].read() 56end 57 58MenuAction[ MenuC.type.slider ] = function( menu ) 59 if Menu[menu].action then 60 Menu[menu].action() 61 end 62end 63 64MenuAction[ MenuC.type.key ] = function ( menu ) 65 local player = Menu[menu].player 66 local event = Menu[menu].event 67 configure_player = player 68 configure_event = event 69 c_configureKeyboard() 70end 71 72GetMenuValue[ MenuC.type.key ] = function ( menu ) 73 local player = Menu[menu].player 74 local event = Menu[menu].event 75 return c_getKeyName( settings.keys[ player ][ event ] ) 76end 77 78GetMenuValue[ MenuC.type.action ] = function ( menu ) 79 -- return "(action)" 80 return "" 81end 82 83GetMenuValueWidth = function ( menu ) 84 return strlen( GetMenuValue[ Menu[menu].type ]( menu ) ) 85end 86 87GetMenuValueString = function ( menu ) 88 -- write(format("GetMenuValueString: '%s'\n", menu)); 89 return GetMenuValue[ Menu[menu].type ]( menu ) 90end 91 92