/*!
- * Ext JS Library 3.0.0
+ * Ext JS Library 3.0.3
* Copyright(c) 2006-2009 Ext JS, LLC
* licensing@extjs.com
* http://www.extjs.com/license
* The wmode of the flash object. This can be used to control layering. Defaults to <tt>'opaque'</tt>.
*/
wmode: 'opaque',
+
+ /**
+ * @cfg {Object} flashVars
+ * A set of key value pairs to be passed to the flash object as flash variables. Defaults to <tt>undefined</tt>.
+ */
+ flashVars: undefined,
+
+ /**
+ * @cfg {Object} flashParams
+ * A set of key value pairs to be passed to the flash object as parameters. Possible parameters can be found here:
+ * http://kb2.adobe.com/cps/127/tn_12701.html Defaults to <tt>undefined</tt>.
+ */
+ flashParams: undefined,
/**
* @cfg {String} url
onRender : function(){
Ext.FlashComponent.superclass.onRender.apply(this, arguments);
- var params = {
+ var params = Ext.apply({
allowScriptAccess: 'always',
bgcolor: this.backgroundColor,
wmode: this.wmode
- }, vars = {
+ }, this.flashParams), vars = Ext.apply({
allowedDomain: document.location.hostname,
elementID: this.getId(),
eventHandler: 'Ext.FlashEventProxy.onEvent'
- };
+ }, this.flashVars);
new swfobject.embedSWF(this.url, this.id, this.swfWidth, this.swfHeight, this.flashVersion,
this.expressInstall ? Ext.FlashComponent.EXPRESS_INSTALL_URL : undefined, vars, params);
*/\r
bindStore : function(store, initial){\r
if(!initial && this.store){\r
- this.store.un("datachanged", this.refresh, this);\r
- this.store.un("add", this.delayRefresh, this);\r
- this.store.un("remove", this.delayRefresh, this);\r
- this.store.un("update", this.delayRefresh, this);\r
- this.store.un("clear", this.refresh, this);\r
if(store !== this.store && this.store.autoDestroy){\r
this.store.destroy();\r
+ }else{\r
+ this.store.un("datachanged", this.refresh, this);\r
+ this.store.un("add", this.delayRefresh, this);\r
+ this.store.un("remove", this.delayRefresh, this);\r
+ this.store.un("update", this.delayRefresh, this);\r
+ this.store.un("clear", this.refresh, this);\r
}\r
}\r
if(store){\r
this.swf.setType(this.type);\r
\r
if(this.chartStyle){\r
- this.setStyles(Ext.apply(this.extraStyle || {}, this.chartStyle));\r
+ this.setStyles(Ext.apply({}, this.extraStyle, this.chartStyle));\r
}\r
\r
if(this.categoryNames){\r
\r
onDestroy: function(){\r
Ext.chart.Chart.superclass.onDestroy.call(this);\r
- delete window[this.tipFnName];\r
+ this.bindStore(null);\r
+ var tip = this.tipFnName;\r
+ if(!Ext.isEmpty(tip)){\r
+ delete window[tip];\r
+ }\r
}\r
});\r
Ext.reg('chart', Ext.chart.Chart);\r