X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/ee06f37b0f6f6d94cd05a6ffae556660f7c4a2bc..c930e9176a5a85509c5b0230e2bff5c22a591432:/docs/source/App.html diff --git a/docs/source/App.html b/docs/source/App.html new file mode 100644 index 00000000..747deb14 --- /dev/null +++ b/docs/source/App.html @@ -0,0 +1,86 @@ + + + The source code + + + + +
Ext.app.App = function(cfg){
+    Ext.apply(this, cfg);
+    this.addEvents({
+        'ready' : true,
+        'beforeunload' : true
+    });
+
+    Ext.onReady(this.initApp, this);
+};
+
+Ext.extend(Ext.app.App, Ext.util.Observable, {
+    isReady: false,
+    startMenu: null,
+    modules: null,
+
+    getStartConfig : function(){
+
+    },
+
+    initApp : function(){
+    	this.startConfig = this.startConfig || this.getStartConfig();
+
+        this.desktop = new Ext.Desktop(this);
+
+		this.launcher = this.desktop.taskbar.startMenu;
+
+		this.modules = this.getModules();
+        if(this.modules){
+            this.initModules(this.modules);
+        }
+
+        this.init();
+
+        Ext.EventManager.on(window, 'beforeunload', this.onUnload, this);
+		this.fireEvent('ready', this);
+        this.isReady = true;
+    },
+
+    getModules : Ext.emptyFn,
+    init : Ext.emptyFn,
+
+    initModules : function(ms){
+		for(var i = 0, len = ms.length; i < len; i++){
+            var m = ms[i];
+            this.launcher.add(m.launcher);
+            m.app = this;
+        }
+    },
+
+    getModule : function(name){
+    	var ms = this.modules;
+    	for(var i = 0, len = ms.length; i < len; i++){
+    		if(ms[i].id == name || ms[i].appType == name){
+    			return ms[i];
+			}
+        }
+        return '';
+    },
+
+    onReady : function(fn, scope){
+        if(!this.isReady){
+            this.on('ready', fn, scope);
+        }else{
+            fn.call(scope, this);
+        }
+    },
+
+    getDesktop : function(){
+        return this.desktop;
+    },
+
+    onUnload : function(e){
+        if(this.fireEvent('beforeunload', this) === false){
+            e.stopEvent();
+        }
+    }
+});
+ + \ No newline at end of file