mirror of
https://github.com/coderaiser/cloudcmd.git
synced 2026-01-23 18:55:26 +00:00
feature(key) add setCurrentByLetter
This commit is contained in:
parent
738e433124
commit
3d80f5aa03
1 changed files with 31 additions and 5 deletions
|
|
@ -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,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue