summaryrefslogtreecommitdiff
path: root/includes/js/dojox/charting/Element.js
diff options
context:
space:
mode:
Diffstat (limited to 'includes/js/dojox/charting/Element.js')
-rw-r--r--includes/js/dojox/charting/Element.js49
1 files changed, 49 insertions, 0 deletions
diff --git a/includes/js/dojox/charting/Element.js b/includes/js/dojox/charting/Element.js
new file mode 100644
index 0000000..f6bdc5d
--- /dev/null
+++ b/includes/js/dojox/charting/Element.js
@@ -0,0 +1,49 @@
+if(!dojo._hasResource["dojox.charting.Element"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
+dojo._hasResource["dojox.charting.Element"] = true;
+dojo.provide("dojox.charting.Element");
+
+dojo.declare("dojox.charting.Element", null, {
+ constructor: function(chart){
+ this.chart = chart;
+ this.group = null;
+ this.htmlElements = [];
+ this.dirty = true;
+ },
+ createGroup: function(creator){
+ if(!creator){ creator = this.chart.surface; }
+ if(!this.group){
+ this.group = creator.createGroup();
+ }
+ return this;
+ },
+ purgeGroup: function(){
+ this.destroyHtmlElements();
+ if(this.group){
+ this.group.clear();
+ this.group.removeShape();
+ this.group = null;
+ }
+ this.dirty = true;
+ return this;
+ },
+ cleanGroup: function(creator){
+ this.destroyHtmlElements();
+ if(!creator){ creator = this.chart.surface; }
+ if(this.group){
+ this.group.clear();
+ }else{
+ this.group = creator.createGroup();
+ }
+ this.dirty = true;
+ return this;
+ },
+ destroyHtmlElements: function(){
+ dojo.forEach(this.htmlElements, dojo._destroyElement);
+ this.htmlElements = [];
+ },
+ destroy: function(){
+ this.purgeGroup();
+ }
+});
+
+}