+++ /dev/null
-<html>\r
-<head>\r
- <title>The source code</title>\r
- <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />\r
- <script type="text/javascript" src="../resources/prettify/prettify.js"></script>\r
-</head>\r
-<body onload="prettyPrint();">\r
- <pre class="prettyprint lang-js">Ext.app.App = function(cfg){\r
- Ext.apply(this, cfg);\r
- this.addEvents({\r
- 'ready' : true,\r
- 'beforeunload' : true\r
- });\r
-\r
- Ext.onReady(this.initApp, this);\r
-};\r
-\r
-Ext.extend(Ext.app.App, Ext.util.Observable, {\r
- isReady: false,\r
- startMenu: null,\r
- modules: null,\r
-\r
- getStartConfig : function(){\r
-\r
- },\r
-\r
- initApp : function(){\r
- this.startConfig = this.startConfig || this.getStartConfig();\r
-\r
- this.desktop = new Ext.Desktop(this);\r
-\r
- this.launcher = this.desktop.taskbar.startMenu;\r
-\r
- this.modules = this.getModules();\r
- if(this.modules){\r
- this.initModules(this.modules);\r
- }\r
-\r
- this.init();\r
-\r
- Ext.EventManager.on(window, 'beforeunload', this.onUnload, this);\r
- this.fireEvent('ready', this);\r
- this.isReady = true;\r
- },\r
-\r
- getModules : Ext.emptyFn,\r
- init : Ext.emptyFn,\r
-\r
- initModules : function(ms){\r
- for(var i = 0, len = ms.length; i < len; i++){\r
- var m = ms[i];\r
- this.launcher.add(m.launcher);\r
- m.app = this;\r
- }\r
- },\r
-\r
- getModule : function(name){\r
- var ms = this.modules;\r
- for(var i = 0, len = ms.length; i < len; i++){\r
- if(ms[i].id == name || ms[i].appType == name){\r
- return ms[i];\r
- }\r
- }\r
- return '';\r
- },\r
-\r
- onReady : function(fn, scope){\r
- if(!this.isReady){\r
- this.on('ready', fn, scope);\r
- }else{\r
- fn.call(scope, this);\r
- }\r
- },\r
-\r
- getDesktop : function(){\r
- return this.desktop;\r
- },\r
-\r
- onUnload : function(e){\r
- if(this.fireEvent('beforeunload', this) === false){\r
- e.stopEvent();\r
- }\r
- }\r
-});</pre> \r
-</body>\r
-</html>
\ No newline at end of file