refactored

This commit is contained in:
coderaiser 2013-01-24 07:36:07 -05:00
parent e8b98395f9
commit f217e1c50a
2 changed files with 57 additions and 61 deletions

View file

@ -91,14 +91,16 @@ CloudCmd._loadDir = function(pLink, pNeedRefresh){
lLink = pLink || Util.removeStr(lHref, CloudCmd.HOST),
lDir = DOM.getCurrentDir();
/* загружаем содержимое каталога */
CloudCmd._ajaxLoad(lLink, { refresh: pNeedRefresh });
if(pLink || lCurrentLink.target !== '_blank'){
/* загружаем содержимое каталога */
CloudCmd._ajaxLoad(lLink, { refresh: pNeedRefresh });
/* если нажали на ссылку на верхний каталог*/
if(lParent === '..' && lDir !== '/')
CloudCmd._currentToParent(lDir);
}
/* если нажали на ссылку на верхний каталог*/
if(lParent === '..' && lDir !== '/')
CloudCmd._currentToParent(lDir);
DOM.preventDefault();
DOM.preventDefault(pEvent);
};
};

View file

@ -60,16 +60,15 @@ var CloudCommander, Util, DOM;
};
var key_event = function(event){
var key_event = function(pEvent){
/* получаем выдленный файл*/
var lCurrentFile = DOM.getCurrentFile(),
lName, i;
var lCurrentFile = DOM.getCurrentFile(), i;
/* если клавиши можно обрабатывать*/
if(keyBinded && event){
var lKeyCode = event.keyCode;
if(keyBinded && pEvent){
var lKeyCode = pEvent.keyCode;
/* open configuration window */
if(lKeyCode === KEY.O && event.altKey){
if(lKeyCode === KEY.O && pEvent.altKey){
console.log('openning config window...');
DOM.Images.showLoad({top: true});
@ -77,12 +76,12 @@ var CloudCommander, Util, DOM;
Util.exec(CloudCmd.Config);
}
else if(lKeyCode === KEY.G && event.altKey)
else if(lKeyCode === KEY.G && pEvent.altKey)
Util.exec(CloudCmd.GitHub);
else if(lKeyCode === KEY.D && event.altKey){
else if(lKeyCode === KEY.D && pEvent.altKey){
Util.exec(CloudCmd.DropBox);
event.preventDefault();
DOM.preventDefault(pEvent);
}
/* если нажали таб:
@ -113,20 +112,20 @@ var CloudCommander, Util, DOM;
}
});
event.preventDefault();//запрет на дальнейшее действие
DOM.preventDefault(pEvent);//запрет на дальнейшее действие
}
else if(lKeyCode === KEY.Delete)
DOM.promptRemoveCurrent(lCurrentFile);
/* if f3 or shift+f3 or alt+f3 pressed */
else if(lKeyCode === KEY.F3){
var lEditor = CloudCmd[event.shiftKey ?
var lEditor = CloudCmd[pEvent.shiftKey ?
'Viewer' : 'Editor'];
Util.exec(lEditor, true);
event.preventDefault();//запрет на дальнейшее действие
}
DOM.preventDefault(pEvent);
}
/* if f4 pressed */
else if(lKeyCode === KEY.F4) {
@ -134,12 +133,12 @@ var CloudCommander, Util, DOM;
Util.exec(CloudCmd.Editor);
event.preventDefault();//запрет на дальнейшее действие
DOM.preventDefault(pEvent);
}
else if(lKeyCode === KEY.F10 && event.shiftKey){
else if(lKeyCode === KEY.F10 && pEvent.shiftKey){
Util.exec(CloudCmd.Menu);
event.preventDefault();//запрет на дальнейшее действие
DOM.preventDefault(pEvent);
}
else if (lKeyCode === KEY.TRA){
@ -159,24 +158,23 @@ var CloudCommander, Util, DOM;
lCurrentFile = lCurrentFile.previousSibling;
if(lCurrentFile){
/* выделяем предыдущую строку*/
DOM.setCurrentFile(lCurrentFile);
DOM.setCurrentFile(lCurrentFile);
}
event.preventDefault();//запрет на дальнейшее действие
DOM.preventDefault(pEvent);
}
/* если нажали клавишу в низ*/
else if(lKeyCode === KEY.DOWN){
else if(lKeyCode === KEY.DOWN){
/* если ненайдены выделенные файлы - выходим*/
if(!lCurrentFile)return;
lCurrentFile = lCurrentFile.nextSibling;
/* если это не последняя строка */
if(lCurrentFile){
/* выделяем следующую строку*/
DOM.setCurrentFile(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
lCurrentFile = lCurrentFile.nextSibling;
/* если это не последняя строка */
if(lCurrentFile){
/* выделяем следующую строку*/
DOM.setCurrentFile(lCurrentFile);
DOM.preventDefault(pEvent);
}
}
}
@ -185,19 +183,18 @@ var CloudCommander, Util, DOM;
* элементу
*/
else if(lKeyCode === KEY.HOME){
/* получаем первый элемент
* пропускаем путь и заголовки столбиков
* выделяем верхий файл
*/
lCurrentFile = lCurrentFile.
parentElement.firstChild;
/* set current file and
* move scrollbar to top
*/
DOM.setCurrentFile(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
/* получаем первый элемент
* пропускаем путь и заголовки столбиков
* выделяем верхий файл
*/
lCurrentFile = lCurrentFile.parentElement.firstChild;
/* set current file and
* move scrollbar to top
*/
DOM.setCurrentFile(lCurrentFile);
DOM.preventDefault(pEvent);
}
/* если нажали клавишу End
@ -211,8 +208,8 @@ var CloudCommander, Util, DOM;
/* set current file and
* move scrollbar to bottom
*/
DOM.setCurrentFile(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
DOM.setCurrentFile(lCurrentFile);
DOM.preventDefault(pEvent);
}
/* если нажали клавишу page down
@ -227,8 +224,7 @@ var CloudCommander, Util, DOM;
lCurrentFile = lCurrentFile.nextSibling;
}
DOM.setCurrentFile(lCurrentFile);
event.preventDefault();//запрет на дальнейшее действие
DOM.preventDefault(pEvent);
}
/* если нажали клавишу page up
@ -254,14 +250,12 @@ var CloudCommander, Util, DOM;
lC = lC.previousSibling;
}
DOM.setCurrentFile(lC);
event.preventDefault();//запрет на дальнейшее действие
DOM.preventDefault(pEvent);
}
/* если нажали Enter - открываем папку*/
else if(lKeyCode === KEY.ENTER)
Util.exec(CloudCmd._loadDir());
/* если нажали <ctr>+r
* обновляем страницу,
* загружаем содержимое каталога
@ -270,7 +264,7 @@ var CloudCommander, Util, DOM;
* (обновляем кэш)
*/
else if(lKeyCode === KEY.R &&
event.ctrlKey){
pEvent.ctrlKey){
console.log('<ctrl>+r pressed\n' +
'reloading page...\n' +
'press <alt>+q to remove all key-handlers');
@ -298,7 +292,7 @@ var CloudCommander, Util, DOM;
/* если нажали <ctrl>+d чистим кэш */
else if(lKeyCode === KEY.D &&
event.ctrlKey){
pEvent.ctrlKey){
console.log('<ctrl>+d pressed\n' +
'clearing cache...\n' +
'press <alt>+q to remove all key-handlers');
@ -313,7 +307,7 @@ var CloudCommander, Util, DOM;
* убираем все обработчики
* нажатий клавиш
*/
else if(lKeyCode === KEY.Q && event.altKey){
else if(lKeyCode === KEY.Q && pEvent.altKey){
console.log('<alt>+q pressed\n' +
'<ctrl>+r reload key-handerl - removed' +
'<ctrl>+s clear cache key-handler - removed'+
@ -322,7 +316,7 @@ var CloudCommander, Util, DOM;
/* обработчик нажатий клавиш снят*/
keyBinded = false;
event.preventDefault();//запрет на дальнейшее действие
pEvent.preventDefault();//запрет на дальнейшее действие
}
}
@ -330,7 +324,7 @@ var CloudCommander, Util, DOM;
* устанавливаем все обработчики
* нажатий клавиш
*/
else if(event.keyCode === KEY.S && event.altKey){
else if(pEvent.keyCode === KEY.S && pEvent.altKey){
/* обрабатываем нажатия на клавиши*/
keyBinded = true;
@ -339,7 +333,7 @@ var CloudCommander, Util, DOM;
'<ctrl>+s clear cache key-handler - set\n' +
'press <alt>+q to remove them');
event.preventDefault();//запрет на дальнейшее действие
pEvent.preventDefault();//запрет на дальнейшее действие
}
};