]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.webapp/src/main/webapp/argeo-ria-src/class/org/argeo/ria/event/Command.js
New function close() in the IView interface
[gpl/argeo-slc.git] / org.argeo.slc.webapp / src / main / webapp / argeo-ria-src / class / org / argeo / ria / event / Command.js
index 2579d2c4d8ae83d3e31321a1cfa94c248696ff16..36c18fc37e139453ea17e1c75c0ecb05b636d1e1 100644 (file)
                                menuClone.add(new qx.ui.menu.Separator());\r
                        }else{\r
                                var button = new qx.ui.menu.Button(submenus[i].label, submenus[i].icon);\r
+                               if(submenus[i].disabled){\r
+                                       button.setEnabled(false);\r
+                               }\r
                                button.setUserData("commandId", submenus[i].commandId);\r
                                button.addListener("execute", this.executeSubMenuCallback, this);\r
                                menuClone.add(button);\r
        executeSubMenuCallback : function(event){\r
                var button = event.getTarget();\r
                var callback = this.getMenuCallback();\r
-               callback = qx.lang.Function.bind(callback, this.getMenuContext() || this);\r
+               var context;\r
+               if(this.getMenuContext()){\r
+                       if(typeof(this.getMenuContext()) == "object") context = this.getMenuContext();\r
+                       else if(typeof(this.getMenuContext()) == "string"){\r
+                               if(this.getMenuContext().split(":")[0] == "view"){\r
+                                       var viewId = this.getMenuContext().split(":")[1];\r
+                                       context = org.argeo.ria.components.ViewsManager.getInstance().getViewPaneById(viewId).getContent();\r
+                               }\r
+                       }\r
+               }\r
+               callback = qx.lang.Function.bind(callback, context || this);\r
                callback(button.getUserData("commandId"));              \r
        },      \r
        /**\r