feature(key) add setCurrentByLetter

This commit is contained in:
coderaiser 2013-11-28 09:39:54 +00:00
parent 738e433124
commit 3d80f5aa03

View file

@ -30,6 +30,8 @@ var CloudCmd, Util, DOM;
S : 83,
T : 84,
Z : 90,
F1 : 112,
F2 : 113,
F3 : 114,
@ -70,14 +72,16 @@ var CloudCmd, Util, DOM;
function listener(pEvent) {
/* получаем выдленный файл*/
var i, n, lCurrent = DOM.getCurrentFile(),
var i, n,
lCurrent = DOM.getCurrentFile(),
lKeyCode = pEvent.keyCode,
lShift = pEvent.shiftKey,
lAlt = pEvent.altKey,
lCtrl = pEvent.ctrlKey;
lAlt = pEvent.altKey;
/* если клавиши можно обрабатывать*/
if (Binded) {
switchKey(pEvent);
if (lKeyCode >= KEY.A && lKeyCode <= KEY.Z)
setCurrentByLetter(lKeyCode);
else
switchKey(pEvent);
/* устанавливаем все обработчики
* нажатий клавиш
@ -94,6 +98,28 @@ var CloudCmd, Util, DOM;
}
}
function setCurrentByLetter(pKeyCode) {
var i, n, name, isCurrent, isContain,
lCurrent = DOM.getCurrentFile(),
panel = DOM.getPanel(),
nodes = panel.childNodes,
SMALL = 32,
char = String.fromCharCode(pKeyCode + SMALL);
n = nodes.length;
for (i = 2; i < n; i++) {
lCurrent = panel.childNodes[i];
name = DOM.getCurrentName(lCurrent);
isContain = Util.isContainStrAtBegin(name, char);
if (isContain) {
lCurrent = DOM.getCurrentFileByName(name);
DOM.setCurrentFile(lCurrent);
break;
}
}
}
function switchKey(pEvent) {
var i, n, lCurrent = DOM.getCurrentFile(),
lKeyCode = pEvent.keyCode,