refactored

This commit is contained in:
coderaiser 2013-01-24 06:15:07 -05:00
parent 397a548c15
commit 28784ce6bd
5 changed files with 81 additions and 32 deletions

View file

@ -13,6 +13,13 @@
}
*/
/* символьный шрифт от гитхаба*/
@font-face {
font-family: "GeneralFoundicons";
src: url('http://github.com/zurb/foundation-icons/blob/master/foundation_icons_general/fonts/general_foundicons.woff?raw=true') format('woff');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'Fontello';
@ -71,7 +78,8 @@ body{
width:16px;
height:16px;
margin-left:0.5%;
font-family: 'Octicons Regular';
/* font-family: 'Octicons Regular'; */
font-family: 'GeneralFoundicons';
font-size:16px;
}
.error::before{
@ -79,7 +87,8 @@ body{
bottom : 4px;
color:rgb(222, 41, 41);
cursor:default;
content:'\f026';
/* content:'\f026'; */
/* content:'\f013'; */
}
.loading{
position:relative;

View file

@ -4,7 +4,7 @@
"cache" : {"allowed" : false},
"minification" : {
"js" : false,
"css" : true,
"css" : false,
"html" : true,
"img" : true
},

View file

@ -98,7 +98,7 @@ CloudCmd._loadDir = function(pLink, pNeedRefresh){
if(lParent === '..' && lDir !== '/')
CloudCmd._currentToParent(lDir);
pEvent.preventDefault();
DOM.preventDefault();
};
};

View file

@ -9,7 +9,8 @@ var CloudCommander, Util,
/* private members */
var /* название css-класа текущего файла*/
CURRENT_FILE = 'current-file',
CURRENT_FILE = 'current-file',
Listeners = [],
XMLHTTP,
Title,
@ -44,6 +45,19 @@ var CloudCommander, Util,
Images = new Images();
function removeListenerFromList(pElement){
var lRet;
for(var i = 0, n = Listeners.length; i < n; i++){
if(Listeners[i].element === pElement){
Listeners[i] = null;
break;
}
}
return lRet;
}
/**
* private function thet unset currentfile
*/
@ -93,14 +107,21 @@ var CloudCommander, Util,
* @param pElement {document by default}
*/
DOM.addListener = function(pType, pListener, pElement, pUseCapture){
var lRet = this;
var lRet = this,
lElement = (pElement || window);
(pElement || window).addEventListener(
lElement.addEventListener(
pType,
pListener,
pUseCapture || false
);
Listeners.push({
element : lElement,
callback: pListener
});
return lRet;
};
@ -158,10 +179,28 @@ var CloudCommander, Util,
* @param pListener
* @param pUseCapture
*/
DOM.addClickListener = function(pListener, pElement, pUseCapture){
DOM.addClickListener = function(pListener, pElement, pUseCapture){
return DOM.addListener('click', pListener, pElement, pUseCapture);
};
/**
* getListener for element
*
* @param pElement
*/
DOM.getListener = function(pElement){
var lRet;
for(var i = 0, n = Listeners.length; i < n; i++){
if(Listeners[i].element === pElement){
lRet = Listeners[i].callback;
break;
}
}
return lRet;
};
/**
* load file countent thrue ajax
*/
@ -1067,7 +1106,8 @@ var CloudCommander, Util,
/** prevent default event */
DOM.preventDefault = function(pEvent){
var lRet,
lFunc = Util.bind(pEvent.preventDefault, pEvent);
lPreventDefault = pEvent && pEvent.preventDefault,
lFunc = Util.bind(lPreventDefault, pEvent);
lRet = Util.exec(lFunc);

View file

@ -1,15 +1,14 @@
var CloudCommander, Util, DOM;
(function(CloudCommander, Util, DOM){
(function(CloudCmd, Util, DOM){
"use strict";
DOM.Images.hideLoad();
var cloudcmd = CloudCommander,
/* private property set or set key binding */
keyBinded;
var keyBinded;
/* Key constants*/
cloudcmd.KEY = {
CloudCmd.KEY = {
TAB : 9,
ENTER : 13,
ESC : 27,
@ -41,11 +40,11 @@ var CloudCommander, Util, DOM;
TRA : 192 /* Typewritten Reverse Apostrophe (`) */
};
var KEY = cloudcmd.KEY;
var KEY = CloudCmd.KEY;
cloudcmd.KeyBinding = {};
CloudCmd.KeyBinding = {};
var KeyBinding = cloudcmd.KeyBinding;
var KeyBinding = CloudCmd.KeyBinding;
KeyBinding.get = function(){return keyBinded;};
@ -75,14 +74,14 @@ var CloudCommander, Util, DOM;
DOM.Images.showLoad({top: true});
Util.exec(cloudcmd.Config);
Util.exec(CloudCmd.Config);
}
else if(lKeyCode === KEY.G && event.altKey)
Util.exec(cloudcmd.GitHub);
Util.exec(CloudCmd.GitHub);
else if(lKeyCode === KEY.D && event.altKey){
Util.exec(cloudcmd.DropBox);
Util.exec(CloudCmd.DropBox);
event.preventDefault();
}
@ -121,7 +120,7 @@ var CloudCommander, Util, DOM;
/* if f3 or shift+f3 or alt+f3 pressed */
else if(lKeyCode === KEY.F3){
var lEditor = cloudcmd[event.shiftKey ?
var lEditor = CloudCmd[event.shiftKey ?
'Viewer' : 'Editor'];
Util.exec(lEditor, true);
@ -133,19 +132,19 @@ var CloudCommander, Util, DOM;
else if(lKeyCode === KEY.F4) {
DOM.Images.showLoad();
Util.exec(cloudcmd.Editor);
Util.exec(CloudCmd.Editor);
event.preventDefault();//запрет на дальнейшее действие
}
else if(lKeyCode === KEY.F10 && event.shiftKey){
Util.exec(cloudcmd.Menu);
Util.exec(CloudCmd.Menu);
event.preventDefault();//запрет на дальнейшее действие
}
else if (lKeyCode === KEY.TRA){
DOM.Images.showLoad({top: true});
Util.exec(cloudcmd.Terminal);
Util.exec(CloudCmd.Terminal);
}
/* навигация по таблице файлов*/
/* если нажали клавишу вверх*/
@ -261,7 +260,7 @@ var CloudCommander, Util, DOM;
/* если нажали Enter - открываем папку*/
else if(lKeyCode === KEY.ENTER)
Util.exec(lCurrentFile.ondblclick, true);
Util.exec(CloudCmd._loadDir());
/* если нажали <ctr>+r
* обновляем страницу,
@ -280,7 +279,7 @@ var CloudCommander, Util, DOM;
* содержимого каталога
*/
var lRefreshIcon = DOM.getRefreshButton();
if(lRefreshIcon){
if(lRefreshIcon){
/* получаем название файла*/
var lSelectedName = DOM.getCurrentName();
@ -289,9 +288,11 @@ var CloudCommander, Util, DOM;
* ссылку, на которую повешен eventHandler
* onclick
*/
lRefreshIcon.onclick();
cloudcmd._currentToParent(lSelectedName);
event.preventDefault();//запрет на дальнейшее действие
Util.exec( DOM.getListener(lRefreshIcon) );
CloudCmd._currentToParent(lSelectedName);
DOM.preventDefault();
}
}
@ -303,10 +304,9 @@ var CloudCommander, Util, DOM;
'press <alt>+q to remove all key-handlers');
var lClearCache = DOM.getById('clear-cache');
if(lClearCache && lClearCache.onclick)
lClearCache.onclick();
event.preventDefault();//запрет на дальнейшее действие
Util.exec( DOM.getListener(lClearCache) );
DOM.preventDefault();
}
/* если нажали <alt>+q