From ec95aad451f31e1d95f0b5b0fbabae7b901c4215 Mon Sep 17 00:00:00 2001 From: coderaiser Date: Fri, 6 Jun 2014 08:40:36 -0400 Subject: [PATCH] refactor(menu) show --- lib/client/menu.js | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/lib/client/menu.js b/lib/client/menu.js index 52097483..6b841ffc 100644 --- a/lib/client/menu.js +++ b/lib/client/menu.js @@ -21,11 +21,7 @@ var CloudCmd, Util, DOM, CloudFunc, MenuIO; function init() { Loading = true; - - Util.exec.series([ - DOM.loadMenu, - Menu.show - ]); + Menu.show(); Events.addKey(listener); } @@ -35,7 +31,29 @@ var CloudCmd, Util, DOM, CloudFunc, MenuIO; MenuContextFile.hide(); }; - this.show = function(x, y ) { + this.show = function(position) { + var x, y, + showFunc; + + if (position) { + x = position.x; + y = position.y; + } + + showFunc = Util.exec.with(show, x, y); + + Util.exec.if(MenuIO, showFunc, function() { + DOM.loadMenu(function(error) { + + if (error) + DOM.Dialog.alert(error); + else + showFunc(); + }); + }); + }; + + function show(x, y) { if (!x || !y) { x = (position || Position).x; y = (position || Position).y; @@ -71,7 +89,7 @@ var CloudCmd, Util, DOM, CloudFunc, MenuIO; position = null; }); } - }; + } function getOptions(notFile) { var name, func, options;