mirror of
https://github.com/coderaiser/cloudcmd.git
synced 2026-07-18 17:05:17 +00:00
added keys constants
This commit is contained in:
parent
766de1bbce
commit
6f401769ea
1 changed files with 68 additions and 42 deletions
|
|
@ -1,6 +1,6 @@
|
|||
var CloudCommander;
|
||||
var CloudFunc;
|
||||
CloudCommander.keyBinding=(function(){
|
||||
CloudCommander.keyBinding = (function(){
|
||||
"use strict";
|
||||
|
||||
var Util = new CloudCommander.Util();
|
||||
|
|
@ -10,9 +10,31 @@ CloudCommander.keyBinding=(function(){
|
|||
right : 0
|
||||
|
||||
};
|
||||
var key_event=function(event){
|
||||
|
||||
var lKEY = {
|
||||
TAB : 9,
|
||||
ENTER : 13,
|
||||
|
||||
PAGE_DOWN : 34,
|
||||
END : 35,
|
||||
HOME : 36,
|
||||
|
||||
UP : 38,
|
||||
DOWN : 40,
|
||||
|
||||
D : 68,
|
||||
Q : 81,
|
||||
R : 82,
|
||||
S : 83,
|
||||
|
||||
F2 : 113,
|
||||
F3 : 114,
|
||||
F4 : 115
|
||||
};
|
||||
|
||||
var key_event = function(event){
|
||||
var lCurrentFile,
|
||||
lName, lTop, i;
|
||||
lName, i;
|
||||
/* если клавиши можно обрабатывать*/
|
||||
if(CloudCommander.keyBinded){
|
||||
/* если нажали таб:
|
||||
|
|
@ -21,10 +43,9 @@ CloudCommander.keyBinding=(function(){
|
|||
* мы были на левой и
|
||||
* наоборот
|
||||
*/
|
||||
if(event.keyCode===9){
|
||||
if(event.keyCode === lKEY.TAB){
|
||||
console.log('Tab pressed');
|
||||
|
||||
var lCURRENT_FILE = CloudCommander.CURRENT_FILE;
|
||||
|
||||
try{
|
||||
lCurrentFile = Util.getCurrentFile();
|
||||
|
||||
|
|
@ -34,44 +55,51 @@ CloudCommander.keyBinding=(function(){
|
|||
|
||||
lTabPanel[lId] = lCurrentFile;
|
||||
|
||||
var lPanel = Util.getPanel({active:false});
|
||||
var lId = lPanel.id;
|
||||
|
||||
if(lTabPanel[lId])
|
||||
lTabPanel[lId].className = lCURRENT_FILE;
|
||||
else
|
||||
lPanel.getElementsByTagName('li')[2]
|
||||
.className = lCURRENT_FILE;
|
||||
lPanel = Util.getPanel({active:false});
|
||||
lId = lPanel.id;
|
||||
|
||||
|
||||
lCurrentFile.className = '';
|
||||
if(lTabPanel[lId])
|
||||
Util.setCurrentFile(lTabPanel[lId].className);
|
||||
else{
|
||||
var lFirstFileOnList =
|
||||
lPanel.getElementsByTagName('li')[2];
|
||||
|
||||
Util.setCurrentFile(lFirstFileOnList);
|
||||
}
|
||||
Util.unSetCurrentFile(lCurrentFile);
|
||||
|
||||
}catch(error){console.log(error);}
|
||||
}
|
||||
/* if f2 pressed */
|
||||
else if(event.keyCode===113){
|
||||
else if(event.keyCode === lKEY.F2){
|
||||
|
||||
}
|
||||
|
||||
/* if f3 pressed */
|
||||
else if(event.keyCode===114){
|
||||
else if(event.keyCode === lKEY.F3){
|
||||
if (typeof CloudCommander.Viewer === 'function')
|
||||
CloudCommander.Viewer();
|
||||
}
|
||||
|
||||
/* if alt+f3 pressed */
|
||||
else if(event.keyCode===114 &&
|
||||
else if(event.keyCode === lKEY.F3 &&
|
||||
event.altKey){
|
||||
if (typeof CloudCommander.Terminal === 'function')
|
||||
CloudCommander.Terminal();
|
||||
}
|
||||
|
||||
/* if f4 pressed */
|
||||
else if(event.keyCode === 115) {
|
||||
else if(event.keyCode === lKEY.F4) {
|
||||
Util.Images.showLoad();
|
||||
|
||||
if (typeof CloudCommander.Editor === 'function')
|
||||
CloudCommander.Editor();
|
||||
}
|
||||
|
||||
/* навигация по таблице файлов*/
|
||||
/* если нажали клавишу вверх*/
|
||||
else if(event.keyCode===38){
|
||||
else if(event.keyCode === lKEY.UP){
|
||||
/* получаем выдленный файл*/
|
||||
lCurrentFile = Util.getCurrentFile();
|
||||
|
||||
|
|
@ -97,7 +125,7 @@ CloudCommander.keyBinding=(function(){
|
|||
}
|
||||
}
|
||||
/* если нажали клавишу в низ*/
|
||||
else if(event.keyCode===40){
|
||||
else if(event.keyCode === lKEY.DOWN){
|
||||
/* получаем выдленный файл*/
|
||||
lCurrentFile = Util.getCurrentFile();
|
||||
|
||||
|
|
@ -122,7 +150,7 @@ CloudCommander.keyBinding=(function(){
|
|||
* переходим к самому верхнему
|
||||
* элементу
|
||||
*/
|
||||
else if(event.keyCode === 36){
|
||||
else if(event.keyCode === lKEY.HOME){
|
||||
lCurrentFile = Util.getCurrentFile();
|
||||
/* убираем выделение с текущего файла*/
|
||||
lCurrentFile.className='';
|
||||
|
|
@ -139,7 +167,7 @@ CloudCommander.keyBinding=(function(){
|
|||
/* если нажали клавишу End
|
||||
* выделяем последний элемент
|
||||
*/
|
||||
else if( event.keyCode === 35){
|
||||
else if( event.keyCode === lKEY.END){
|
||||
lCurrentFile = Util.getCurrentFile();
|
||||
/* снимаем выделение с текущего файла*/
|
||||
lCurrentFile.className='';
|
||||
|
|
@ -153,7 +181,7 @@ CloudCommander.keyBinding=(function(){
|
|||
/* если нажали клавишу page down
|
||||
* проматываем экран
|
||||
*/
|
||||
else if(event.keyCode === 34){
|
||||
else if(event.keyCode === lKEY.PAGE_DOWN){
|
||||
Util.getPanel().scrollByPages(1);
|
||||
|
||||
lCurrentFile = Util.getCurrentFile();
|
||||
|
|
@ -180,7 +208,10 @@ CloudCommander.keyBinding=(function(){
|
|||
.previousSibling
|
||||
.previousSibling
|
||||
.previousSibling;
|
||||
} catch(pError){break};
|
||||
}
|
||||
catch(pError){
|
||||
break;
|
||||
}
|
||||
lCurrentFile = lCurrentFile.previousSibling;
|
||||
}
|
||||
Util.getCurrentFile().className = '';
|
||||
|
|
@ -222,7 +253,7 @@ CloudCommander.keyBinding=(function(){
|
|||
* сервера, а не из кэша
|
||||
* (обновляем кэш)
|
||||
*/
|
||||
else if(event.keyCode===82 &&
|
||||
else if(event.keyCode === lKEY.R &&
|
||||
event.ctrlKey){
|
||||
console.log('<ctrl>+r pressed');
|
||||
console.log('reloading page...');
|
||||
|
|
@ -236,11 +267,8 @@ CloudCommander.keyBinding=(function(){
|
|||
if(lRefreshIcon)lRefreshIcon = lRefreshIcon[0];
|
||||
if(lRefreshIcon){
|
||||
/* находим файл который сейчас выделен */
|
||||
lCurrentFile = Util
|
||||
.getByClass(CloudCommander.CURRENT_FILE);
|
||||
|
||||
if(lCurrentFile.length > 0)
|
||||
lCurrentFile=lCurrentFile[0];
|
||||
lCurrentFile = Util.getCurrentFile();
|
||||
|
||||
/* получаем название файла*/
|
||||
var lSelectedName = lCurrentFile
|
||||
.getElementsByTagName('a')[0].textContent;
|
||||
|
|
@ -249,19 +277,16 @@ CloudCommander.keyBinding=(function(){
|
|||
* ссылку, на которую повешен eventHandler
|
||||
* onclick
|
||||
*/
|
||||
if(lRefreshIcon.click)lRefreshIcon.parentElement.click();
|
||||
else lRefreshIcon.parentElement.onclick();
|
||||
if(lRefreshIcon.click)
|
||||
lRefreshIcon.parentElement.click();
|
||||
else
|
||||
lRefreshIcon.parentElement.onclick();
|
||||
|
||||
/* перебираем файлы левой панели
|
||||
* в поисках подсвеченого файла
|
||||
*/
|
||||
var lLeft = Util.getById('left');
|
||||
if(lLeft)
|
||||
CloudCommander._currentToParent(lSelectedName);
|
||||
CloudCommander._currentToParent(lSelectedName);
|
||||
}
|
||||
}
|
||||
/* если нажали <ctrl>+d чистим кэш */
|
||||
else if(event.keyCode===68 &&
|
||||
else if(event.keyCode === lKEY.D &&
|
||||
event.ctrlKey){
|
||||
console.log('<ctrl>+d pressed');
|
||||
console.log('clearing cache...');
|
||||
|
|
@ -274,7 +299,7 @@ CloudCommander.keyBinding=(function(){
|
|||
* убираем все обработчики
|
||||
* нажатий клавиш
|
||||
*/
|
||||
else if(event.keyCode === 81 &&
|
||||
else if(event.keyCode === lKEY.Q &&
|
||||
event.altKey){
|
||||
//document.removeEventListener('keydown', key_event,false);
|
||||
console.log('<alt>+q pressed');
|
||||
|
|
@ -292,7 +317,7 @@ CloudCommander.keyBinding=(function(){
|
|||
* устанавливаем все обработчики
|
||||
* нажатий клавиш
|
||||
*/
|
||||
else if(event.keyCode===83 &&
|
||||
else if(event.keyCode === lKEY.S &&
|
||||
event.altKey){
|
||||
/*
|
||||
document.addEventListener('keydown', key_event,false);
|
||||
|
|
@ -308,6 +333,7 @@ CloudCommander.keyBinding=(function(){
|
|||
|
||||
return false;
|
||||
};
|
||||
|
||||
/* добавляем обработчик клавишь */
|
||||
if(document.addEventListener)
|
||||
document.addEventListener('keydown', key_event,false);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue