diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm index 4ef7d27dfee..8180c96dc18 100644 --- a/code/datums/datumvars.dm +++ b/code/datums/datumvars.dm @@ -27,14 +27,63 @@ client var filter_text = document.getElementById('filter'); var filter = filter_text.value; - if(event.keyCode == 13){ + if(event.keyCode == 13){ //Enter / return var vars_ol = document.getElementById('vars'); var lis = vars_ol.getElementsByTagName("li"); - if(lis.length > 0){ - alist = lis\[0\].getElementsByTagName("a") - if(alist.length > 0){ - location.href=alist\[0\].href; - } + for ( var i = 0; i < lis.length; ++i ) + { + try{ + var li = lis\[i\]; + if ( li.style.backgroundColor == "#ffee88" ) + { + alist = lis\[i\].getElementsByTagName("a") + if(alist.length > 0){ + location.href=alist\[0\].href; + } + } + }catch(err) { } + } + return + } + + if(event.keyCode == 38){ //Up arrow + var vars_ol = document.getElementById('vars'); + var lis = vars_ol.getElementsByTagName("li"); + for ( var i = 0; i < lis.length; ++i ) + { + try{ + var li = lis\[i\]; + if ( li.style.backgroundColor == "#ffee88" ) + { + if( (i-1) >= 0){ + var li_new = lis\[i-1\]; + li.style.backgroundColor = "white"; + li_new.style.backgroundColor = "#ffee88"; + return + } + } + }catch(err) { } + } + return + } + + if(event.keyCode == 40){ //Down arrow + var vars_ol = document.getElementById('vars'); + var lis = vars_ol.getElementsByTagName("li"); + for ( var i = 0; i < lis.length; ++i ) + { + try{ + var li = lis\[i\]; + if ( li.style.backgroundColor == "#ffee88" ) + { + if( (i+1) < lis.length){ + var li_new = lis\[i+1\]; + li.style.backgroundColor = "white"; + li_new.style.backgroundColor = "#ffee88"; + return + } + } + }catch(err) { } } return } @@ -44,6 +93,7 @@ client }else{ var vars_ol = document.getElementById('vars'); var lis = vars_ol.getElementsByTagName("li"); + for ( var i = 0; i < lis.length; ++i ) { try{ @@ -52,14 +102,24 @@ client { vars_ol.removeChild(li); i--; - //return } }catch(err) { } } } - + var lis_new = vars_ol.getElementsByTagName("li"); + for ( var j = 0; j < lis_new.length; ++j ) + { + var li1 = lis\[j\]; + if (j == 0){ + li1.style.backgroundColor = "#ffee88"; + }else{ + li1.style.backgroundColor = "white"; + } + } } + + function selectTextField(){ var filter_text = document.getElementById('filter'); filter_text.focus(); @@ -78,7 +138,7 @@ client } "} - body += "" + body += "" body += "
" @@ -137,7 +197,7 @@ client body += "C - Change, asks you for the var type first.
" body += "M - Mass modify: changes this variable for all objects of this type.
" - body += "
Search:

" + body += "
Search:

" body += "
    " @@ -179,7 +239,7 @@ client var/html = "" if(DA) - html += "
  1. (E) (C) (M) " + html += "
  2. (E) (C) (M) " else html += "
  3. "