feature(edward) add setMenu

This commit is contained in:
coderaiser 2015-01-13 10:44:19 -05:00
parent f739563699
commit b65dfc663e
2 changed files with 50 additions and 52 deletions

View file

@ -135,10 +135,6 @@ var CloudCmd, Util, DOM, CloudFunc, io, ace, Zip, MenuIO, Format, edward;
notAppend : true
});
Events.add(element, {
contextmenu : setMenu
});
return element;
}
@ -485,53 +481,6 @@ var CloudCmd, Util, DOM, CloudFunc, io, ace, Zip, MenuIO, Format, edward;
});
}
function setMenu() {
if (!Menu) {
DOM.loadMenu(function(error) {
var position = CloudCmd.MousePosition,
options = {
beforeShow: function(params) {
params.x -= 18;
params.y -= 27;
},
afterClick: function() {
edward.focus();
}
},
menuData = {
'Save Ctrl+S' : function() {
Edit.save();
},
'Go To Line Ctrl+G' : function() {
Edit.goToLine();
},
'Select All Ctrl+A' : function() {
edward.selectAll();
},
'Delete Del' : function() {
edward.remove('right');
},
'Beautify Ctrl+B' : function() {
Edit.beautify();
},
'Minify Ctrl+M' : function() {
Edit.minify();
},
'Close Esc' : Edit.hide
};
if (error) {
Dialog.alert(error);
} else if (!Menu) {
Menu = new MenuIO(Element, options, menuData);
Menu.show(position.x, position.y);
Events.remove('contextMenu', Element, setMenu);
}
});
}
}
function loadFiles(element, callback) {
var dir = CloudCmd.LIBDIRCLIENT,
name = 'edward',

View file

@ -1,4 +1,4 @@
var join, ace, Util, DOM;
var join, ace, Util, DOM, CloudCmd;
(function(global, join, DOM, exec, load) {
'use strict';
@ -13,11 +13,13 @@ var join, ace, Util, DOM;
ElementMsg,
Value,
Ace,
Menu,
edward = function(el, callback) {
Element = el || document.body;
Element.addEventListener('drop', onDrop);
Element.addEventListener('contextmenu', setMenu);
Element.addEventListener('dragover', function(event) {
event.preventDefault();
});
@ -169,6 +171,53 @@ var join, ace, Util, DOM;
});
}
function setMenu() {
if (!Menu) {
DOM.loadRemote('menu', function(error) {
var position = CloudCmd.MousePosition,
options = {
beforeShow: function(params) {
params.x -= 18;
params.y -= 27;
},
afterClick: function() {
edward.focus();
}
},
menuData = {
'Save Ctrl+S' : function() {
CloudCmd.Edit.save();
},
'Go To Line Ctrl+G' : function() {
CloudCmd.Edit.goToLine();
},
'Select All Ctrl+A' : function() {
edward.selectAll();
},
'Delete Del' : function() {
edward.remove('right');
},
'Beautify Ctrl+B' : function() {
CloudCmd.Edit.beautify();
},
'Minify Ctrl+M' : function() {
CloudCmd.Edit.minify();
},
'Close Esc' : CloudCmd.Edit.hide
};
if (error) {
alert(error);
} else if (!Menu) {
Menu = new window.MenuIO(Element, options, menuData);
Menu.show(position.x, position.y);
Element.removeEventListener('contextmenu', setMenu);
}
});
}
}
function loadFiles(callback) {
var css = '/css/edward.css',
dir = '/modules/ace-builds/src-noconflict/',