rgraph-rails 1.0.8 → 4.62
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +3 -3
- data/lib/rgraph-rails/version.rb +1 -1
- data/vendor/assets/javascripts/RGraph.bar.js +16 -8
- data/vendor/assets/javascripts/RGraph.bipolar.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.annotate.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.context.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.core.js +84 -7
- data/vendor/assets/javascripts/RGraph.common.csv.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.deprecated.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.dynamic.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.effects.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.key.js +3 -3
- data/vendor/assets/javascripts/RGraph.common.resizing.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.sheets.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.tooltips.js +1 -1
- data/vendor/assets/javascripts/RGraph.common.zoom.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.background.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.circle.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.image.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.marker1.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.marker2.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.marker3.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.poly.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.rect.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.text.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.xaxis.js +1 -1
- data/vendor/assets/javascripts/RGraph.drawing.yaxis.js +1 -1
- data/vendor/assets/javascripts/RGraph.fuel.js +1 -1
- data/vendor/assets/javascripts/RGraph.funnel.js +1 -1
- data/vendor/assets/javascripts/RGraph.gantt.js +1 -1
- data/vendor/assets/javascripts/RGraph.gauge.js +1 -1
- data/vendor/assets/javascripts/RGraph.hbar.js +228 -2
- data/vendor/assets/javascripts/RGraph.hprogress.js +1 -1
- data/vendor/assets/javascripts/RGraph.line.js +27 -5
- data/vendor/assets/javascripts/RGraph.meter.js +1 -1
- data/vendor/assets/javascripts/RGraph.modaldialog.js +1 -1
- data/vendor/assets/javascripts/RGraph.odo.js +1 -1
- data/vendor/assets/javascripts/RGraph.pie.js +1 -1
- data/vendor/assets/javascripts/RGraph.radar.js +1 -1
- data/vendor/assets/javascripts/RGraph.rose.js +1 -1
- data/vendor/assets/javascripts/RGraph.rscatter.js +1 -1
- data/vendor/assets/javascripts/RGraph.scatter.js +161 -34
- data/vendor/assets/javascripts/RGraph.semicircularprogress.js +1 -1
- data/vendor/assets/javascripts/RGraph.svg.bar.js +772 -103
- data/vendor/assets/javascripts/RGraph.svg.common.ajax.js +1 -1
- data/vendor/assets/javascripts/RGraph.svg.common.core.js +806 -231
- data/vendor/assets/javascripts/RGraph.svg.common.csv.js +1 -1
- data/vendor/assets/javascripts/RGraph.svg.common.fx.js +24 -24
- data/vendor/assets/javascripts/RGraph.svg.common.key.js +206 -0
- data/vendor/assets/javascripts/RGraph.svg.common.sheets.js +1 -1
- data/vendor/assets/javascripts/RGraph.svg.common.tooltips.js +63 -22
- data/vendor/assets/javascripts/RGraph.svg.hbar.js +351 -91
- data/vendor/assets/javascripts/RGraph.svg.line.js +159 -64
- data/vendor/assets/javascripts/RGraph.svg.pie.js +402 -51
- data/vendor/assets/javascripts/RGraph.svg.radar.js +320 -143
- data/vendor/assets/javascripts/RGraph.svg.rose.js +1818 -0
- data/vendor/assets/javascripts/RGraph.svg.scatter.js +1262 -0
- data/vendor/assets/javascripts/RGraph.svg.semicircularprogress.js +106 -57
- data/vendor/assets/javascripts/RGraph.svg.waterfall.js +1253 -0
- data/vendor/assets/javascripts/RGraph.thermometer.js +7 -6
- data/vendor/assets/javascripts/RGraph.vprogress.js +1 -1
- data/vendor/assets/javascripts/RGraph.waterfall.js +1 -1
- data/vendor/assets/javascripts/financial-data.js +1067 -0
- metadata +8 -5
- data/vendor/assets/javascripts/RGraph.cornergauge.js +0 -71
- data/vendor/assets/javascripts/RGraph.thermometer.old.js +0 -68
@@ -1,4 +1,4 @@
|
|
1
|
-
// version: 2017-
|
1
|
+
// version: 2017-05-08
|
2
2
|
/**
|
3
3
|
* o--------------------------------------------------------------------------------o
|
4
4
|
* | This file is part of the RGraph package - you can learn more at: |
|
@@ -736,11 +736,11 @@
|
|
736
736
|
jQuery('#rgraph_hblinds_' + i + '_' + obj.id).animate({height: 0}, duration);
|
737
737
|
}
|
738
738
|
|
739
|
-
setTimeout(function () {
|
740
|
-
setTimeout(function () {
|
741
|
-
setTimeout(function () {
|
742
|
-
setTimeout(function () {
|
743
|
-
setTimeout(function () {
|
739
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_hblinds_0_' + obj.id));}, duration);
|
740
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_hblinds_1_' + obj.id));}, duration);
|
741
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_hblinds_2_' + obj.id));}, duration);
|
742
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_hblinds_3_' + obj.id));}, duration);
|
743
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_hblinds_4_' + obj.id));}, duration);
|
744
744
|
setTimeout(function () {callback(obj);}, duration);
|
745
745
|
|
746
746
|
return this;
|
@@ -841,21 +841,21 @@
|
|
841
841
|
div.style.top = 0;
|
842
842
|
div.style.position = 'absolute';
|
843
843
|
div.style.backgroundColor = color;
|
844
|
-
|
844
|
+
obj.container.appendChild(div);
|
845
845
|
|
846
846
|
jQuery('#rgraph_vblinds_' + i + '_' + obj.id).animate({width: 0}, duration);
|
847
847
|
}
|
848
848
|
|
849
|
-
setTimeout(function () {
|
850
|
-
setTimeout(function () {
|
851
|
-
setTimeout(function () {
|
852
|
-
setTimeout(function () {
|
853
|
-
setTimeout(function () {
|
854
|
-
setTimeout(function () {
|
855
|
-
setTimeout(function () {
|
856
|
-
setTimeout(function () {
|
857
|
-
setTimeout(function () {
|
858
|
-
setTimeout(function () {
|
849
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_0_' + obj.id));}, duration + 100);
|
850
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_1_' + obj.id));}, duration + 100);
|
851
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_2_' + obj.id));}, duration + 100);
|
852
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_3_' + obj.id));}, duration + 100);
|
853
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_4_' + obj.id));}, duration + 100);
|
854
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_5_' + obj.id));}, duration + 100);
|
855
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_6_' + obj.id));}, duration + 100);
|
856
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_7_' + obj.id));}, duration + 100);
|
857
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_8_' + obj.id));}, duration + 100);
|
858
|
+
setTimeout(function () {obj.container.removeChild(doc.getElementById('rgraph_vblinds_9_' + obj.id));}, duration + 100);
|
859
859
|
|
860
860
|
setTimeout(function () {callback(obj);}, duration + 100);
|
861
861
|
|
@@ -973,7 +973,7 @@
|
|
973
973
|
|
974
974
|
jQuery(this.svg).animate({left:0,top:0}, duration, function ()
|
975
975
|
{
|
976
|
-
callback(
|
976
|
+
callback(obj);
|
977
977
|
});
|
978
978
|
|
979
979
|
return this;
|
@@ -1223,13 +1223,13 @@
|
|
1223
1223
|
|
1224
1224
|
setTimeout(function ()
|
1225
1225
|
{
|
1226
|
-
|
1227
|
-
|
1228
|
-
|
1229
|
-
|
1230
|
-
|
1226
|
+
obj.container.removeChild(doc.getElementById('rgraph_vscissors_0' + '_' + obj.id));
|
1227
|
+
obj.container.removeChild(doc.getElementById('rgraph_vscissors_1' + '_' + obj.id));
|
1228
|
+
obj.container.removeChild(doc.getElementById('rgraph_vscissors_2' + '_' + obj.id));
|
1229
|
+
obj.container.removeChild(doc.getElementById('rgraph_vscissors_3' + '_' + obj.id));
|
1230
|
+
obj.container.removeChild(doc.getElementById('rgraph_vscissors_4' + '_' + obj.id));
|
1231
1231
|
|
1232
|
-
callback(
|
1232
|
+
callback(obj);
|
1233
1233
|
|
1234
1234
|
}, duration);
|
1235
1235
|
|
@@ -0,0 +1,206 @@
|
|
1
|
+
// version: 2017-05-08
|
2
|
+
/**
|
3
|
+
* o--------------------------------------------------------------------------------o
|
4
|
+
* | This file is part of the RGraph package - you can learn more at: |
|
5
|
+
* | |
|
6
|
+
* | http://www.rgraph.net |
|
7
|
+
* | |
|
8
|
+
* | RGraph is licensed under the Open Source MIT license. That means that it's |
|
9
|
+
* | totally free to use! |
|
10
|
+
* o--------------------------------------------------------------------------------o
|
11
|
+
*/
|
12
|
+
|
13
|
+
RGraph = window.RGraph || {isRGraph: true};
|
14
|
+
RGraph.SVG = RGraph.SVG || {};
|
15
|
+
RGraph.SVG.HTML = RGraph.SVG.HTML || {};
|
16
|
+
|
17
|
+
// Module pattern
|
18
|
+
(function (win, doc, undefined)
|
19
|
+
{
|
20
|
+
var RG = RGraph,
|
21
|
+
ua = navigator.userAgent,
|
22
|
+
ma = Math;
|
23
|
+
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
/**
|
28
|
+
* Draws the graph key (used by various graphs)
|
29
|
+
*
|
30
|
+
* @param object obj The graph object
|
31
|
+
* @param array key An array of the texts to be listed in the key
|
32
|
+
* @param colors An array of the colors to be used
|
33
|
+
*/
|
34
|
+
RG.SVG.drawKey = function (obj)
|
35
|
+
{
|
36
|
+
var prop = obj.properties,
|
37
|
+
key = prop.key,
|
38
|
+
colors = prop.keyColors || prop.colors,
|
39
|
+
defaultFont = 'Arial',
|
40
|
+
blobSize = 0,
|
41
|
+
width = 0;
|
42
|
+
|
43
|
+
// Work out the center point of the SVG tag
|
44
|
+
var centerx = obj.svg.getAttribute('width') / 2;
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
// First measure the length so that the key can be centered
|
50
|
+
for (var i=0,length = 0; i<key.length; i++) {
|
51
|
+
|
52
|
+
// First measure the text
|
53
|
+
var textDimensions = RG.SVG.measureText({
|
54
|
+
text: key[i],
|
55
|
+
bold: prop.keyTextBold || false,
|
56
|
+
font: prop.keyTextFont || prop.textFont || defaultFont,
|
57
|
+
size: prop.keyTextSize || prop.textSize
|
58
|
+
});
|
59
|
+
|
60
|
+
blobSize = ma.max(blobSize, textDimensions[1]);
|
61
|
+
|
62
|
+
width = width + 10 + blobSize + 5 + textDimensions[0];
|
63
|
+
}
|
64
|
+
|
65
|
+
// Center the key
|
66
|
+
x = centerx - width / 2;
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
|
74
|
+
// Loop thru the key and draw them
|
75
|
+
for (var i=0,y=prop.gutterTop - 5; i<key.length; ++i) {
|
76
|
+
|
77
|
+
// First measure the text
|
78
|
+
var textDimensions = RG.SVG.measureText({
|
79
|
+
text: key[i],
|
80
|
+
bold: prop.keyTextBold || false,
|
81
|
+
font: prop.keyTextFont || prop.textFont || defaultFont,
|
82
|
+
size: prop.keyTextSize || prop.textSize
|
83
|
+
});
|
84
|
+
|
85
|
+
|
86
|
+
RG.SVG.create({
|
87
|
+
svg: obj.svg,
|
88
|
+
type: 'rect',
|
89
|
+
parent: obj.svg.all,
|
90
|
+
attr: {
|
91
|
+
x: x + prop.keyOffsetx,
|
92
|
+
y: y - blobSize + prop.keyOffsety,
|
93
|
+
width: blobSize,
|
94
|
+
height: blobSize,
|
95
|
+
fill: colors[i]
|
96
|
+
}
|
97
|
+
});
|
98
|
+
|
99
|
+
RGraph.SVG.text({
|
100
|
+
object: obj,
|
101
|
+
parent: obj.svg.all,
|
102
|
+
size: prop.keyTextSize || prop.textSize,
|
103
|
+
bold: prop.keyTextBold || false,
|
104
|
+
font: 'Arial',
|
105
|
+
italic: prop.keyTextItalic|| false,
|
106
|
+
halign: 'left',
|
107
|
+
valign: 'bottom',
|
108
|
+
text: key[i],
|
109
|
+
x: x + blobSize + 5 + prop.keyTextOffsetx + prop.keyOffsetx,
|
110
|
+
y: y + prop.keyTextOffsety + prop.keyOffsety,
|
111
|
+
color: 'black',
|
112
|
+
background: 'white',
|
113
|
+
padding: 0
|
114
|
+
})
|
115
|
+
|
116
|
+
x += 10 + blobSize + 5 + textDimensions[0];
|
117
|
+
}
|
118
|
+
};
|
119
|
+
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
|
126
|
+
|
127
|
+
/**
|
128
|
+
* Create a TABLE based HTML key. There's lots of options so it's
|
129
|
+
* suggested that you consult the documentation page
|
130
|
+
*
|
131
|
+
* @param mixed id This should be a string consisting of the ID of the container
|
132
|
+
* @param object prop An object map of the various properties that you can use to
|
133
|
+
* configure the key. See the documentation page for a list.
|
134
|
+
*/
|
135
|
+
RG.SVG.HTML.key = function (id, prop)
|
136
|
+
{
|
137
|
+
var div = doc.getElementById(id);
|
138
|
+
|
139
|
+
|
140
|
+
/**
|
141
|
+
* Create the table that becomes the key
|
142
|
+
*/
|
143
|
+
var str = '<table border="0" cellspacing="0" cellpadding="0" id="rgraph_key" style="display: inline;' + (function ()
|
144
|
+
{
|
145
|
+
var style = ''
|
146
|
+
for (i in prop.tableCss) {
|
147
|
+
if (typeof i === 'string') {
|
148
|
+
style = style + i + ': ' + prop.tableCss[i] + ';';
|
149
|
+
}
|
150
|
+
}
|
151
|
+
return style;
|
152
|
+
})() + '" ' + (prop.tableClass ? 'class="' + prop.tableClass + '"' : '') + '>';
|
153
|
+
|
154
|
+
|
155
|
+
|
156
|
+
/**
|
157
|
+
* Add the individual key elements
|
158
|
+
*/
|
159
|
+
for (var i=0; i<prop.labels.length; i+=1) {
|
160
|
+
str += '<tr><td><div style="' + (function ()
|
161
|
+
{
|
162
|
+
var style = '';
|
163
|
+
|
164
|
+
for (var j in prop.blobCss) {
|
165
|
+
if (typeof j === 'string') {
|
166
|
+
style = style + j + ': ' + prop.blobCss[j] + ';';
|
167
|
+
}
|
168
|
+
}
|
169
|
+
|
170
|
+
return style;
|
171
|
+
})() + 'display: inline-block; margin-right: 5px; margin-top: 4px; width: 15px; height: 15px; background-color: ' + prop.colors[i] + '"' + (prop.blobClass ? 'class="' + prop.blobClass + '"' : '') + '> </div><td>' + (prop.links && prop.links[i] ? '<a href="' + prop.links[i] + '">' : '') + '<span ' + (prop.labelClass ? 'class="' + prop.labelClass + '"' : '') + '" style="' + (function ()
|
172
|
+
{
|
173
|
+
var style = '';
|
174
|
+
|
175
|
+
for (var j in prop.labelCss) {
|
176
|
+
if (typeof j === 'string') {
|
177
|
+
style = style + j + ': ' + prop.labelCss[j] + ';';
|
178
|
+
}
|
179
|
+
}
|
180
|
+
|
181
|
+
return style;
|
182
|
+
})() + '" ' + (function ()
|
183
|
+
{
|
184
|
+
var style = '';
|
185
|
+
|
186
|
+
if (prop['labelCss_' + i]) {
|
187
|
+
for (var j in prop['labelCss_' + i]) {
|
188
|
+
style = style + j + ': ' + prop['labelCss_' + i][j] + ';';
|
189
|
+
}
|
190
|
+
}
|
191
|
+
|
192
|
+
return style ? 'style="' + style + '"' : '';
|
193
|
+
})() + '>' + prop.labels[i] + '</span>' + (prop.links && prop.links[i] ? '</a>' : '') + '</td></tr>';
|
194
|
+
}
|
195
|
+
|
196
|
+
div.innerHTML += (str + '</table>');
|
197
|
+
|
198
|
+
// Return the TABLE object that is the HTML key
|
199
|
+
return doc.getElementById('rgraph_key');
|
200
|
+
};
|
201
|
+
|
202
|
+
|
203
|
+
|
204
|
+
|
205
|
+
// End module pattern
|
206
|
+
})(window, document);
|
@@ -1,4 +1,4 @@
|
|
1
|
-
// version: 2017-
|
1
|
+
// version: 2017-05-08
|
2
2
|
/**
|
3
3
|
* o--------------------------------------------------------------------------------o
|
4
4
|
* | This file is part of the RGraph package - you can learn more at: |
|
@@ -42,7 +42,7 @@
|
|
42
42
|
zIndex: 3,
|
43
43
|
borderRadius: '5px',
|
44
44
|
boxShadow: 'rgba(96,96,96,0.5) 0 0 5px',
|
45
|
-
|
45
|
+
transition: 'left ease-out .25s, top ease-out .25s'
|
46
46
|
};
|
47
47
|
|
48
48
|
|
@@ -60,9 +60,7 @@
|
|
60
60
|
RG.SVG.fireCustomEvent(obj, 'onbeforetooltip');
|
61
61
|
|
62
62
|
|
63
|
-
|
64
|
-
|
65
|
-
if (RG.SVG.trim(opt.text).length === 0) {
|
63
|
+
if (!opt.text || typeof opt.text === 'undefined' || RG.SVG.trim(opt.text).length === 0) {
|
66
64
|
return;
|
67
65
|
}
|
68
66
|
|
@@ -81,20 +79,61 @@
|
|
81
79
|
|
82
80
|
|
83
81
|
|
84
|
-
// Create the tooltip DIV element
|
85
|
-
var tooltipObj = document.createElement('DIV');
|
86
|
-
tooltipObj.className = prop.tooltipsCssClass;
|
87
82
|
|
88
83
|
|
89
84
|
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
85
|
+
|
86
|
+
|
87
|
+
// Create the tooltip DIV element
|
88
|
+
if (!RG.SVG.REG.get('tooltip')) {
|
89
|
+
|
90
|
+
var tooltipObj = document.createElement('DIV');
|
91
|
+
tooltipObj.className = prop.tooltipsCssClass;
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
// Add the default CSS to the tooltip
|
97
|
+
for (var i in RG.SVG.tooltips.style) {
|
98
|
+
if (typeof i === 'string') {
|
99
|
+
tooltipObj.style[i] = RG.SVG.tooltips.style[i];
|
100
|
+
}
|
94
101
|
}
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
|
106
|
+
|
107
|
+
// Reuse an existing tooltip
|
108
|
+
} else {
|
109
|
+
var tooltipObj = RG.SVG.REG.get('tooltip');
|
110
|
+
tooltipObj.__object__.removeHighlight();
|
111
|
+
|
112
|
+
// This prevents the object from continuously growing
|
113
|
+
tooltipObj.style.width = '';
|
95
114
|
}
|
96
115
|
|
97
116
|
|
117
|
+
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+
if (RG.SVG.REG.get('tooltip-lasty')) {
|
133
|
+
tooltipObj.style.left = RG.SVG.REG.get('tooltip-lastx') + 'px';
|
134
|
+
tooltipObj.style.top = RG.SVG.REG.get('tooltip-lasty') + 'px';
|
135
|
+
}
|
136
|
+
|
98
137
|
tooltipObj.innerHTML = opt.text;
|
99
138
|
tooltipObj.__text__ = opt.text; // This is set because the innerHTML can change when it's set
|
100
139
|
tooltipObj.id = '__rgraph_tooltip_' + obj.id + '_' + obj.uid + '_'+ opt.index;
|
@@ -130,7 +169,7 @@
|
|
130
169
|
|
131
170
|
var width = tooltipObj.offsetWidth,
|
132
171
|
height = tooltipObj.offsetHeight;
|
133
|
-
|
172
|
+
|
134
173
|
// Move the tooltip into position
|
135
174
|
tooltipObj.style.left = opt.event.pageX - (width / 2) + 'px';
|
136
175
|
tooltipObj.style.top = opt.event.pageY - height - 15 + 'px';
|
@@ -142,10 +181,9 @@
|
|
142
181
|
* Set the width on the tooltip so it doesn't resize if the window is resized
|
143
182
|
*/
|
144
183
|
tooltipObj.style.width = width + 'px';
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
if (prop.tooltipsEffect === 'fade') {
|
184
|
+
|
185
|
+
// Fade the tooltip in if the tooltip is not the first view
|
186
|
+
if (!RG.SVG.REG.get('tooltip-lastx')) {
|
149
187
|
for (var i=0; i<=30; ++i) {
|
150
188
|
(function (idx)
|
151
189
|
{
|
@@ -155,9 +193,6 @@
|
|
155
193
|
}, (idx / 30) * 200);
|
156
194
|
})(i);
|
157
195
|
}
|
158
|
-
} else {
|
159
|
-
tooltipObj.style.opacity = 1;
|
160
|
-
tooltipObj.style.display = 'inline-block';
|
161
196
|
}
|
162
197
|
|
163
198
|
|
@@ -202,7 +237,7 @@
|
|
202
237
|
};
|
203
238
|
|
204
239
|
// Cancel the click event
|
205
|
-
tooltipObj.onclick
|
240
|
+
tooltipObj.onclick = function (e)
|
206
241
|
{
|
207
242
|
if (e.button == 0) {
|
208
243
|
e.stopPropagation();
|
@@ -210,16 +245,22 @@
|
|
210
245
|
};
|
211
246
|
|
212
247
|
// Add the body click handler that clears the tooltip
|
213
|
-
document.body.addEventListener('
|
248
|
+
document.body.addEventListener('mouseup', function (e)
|
214
249
|
{
|
215
250
|
RG.SVG.hideTooltip();
|
216
251
|
}, false);
|
217
252
|
|
218
253
|
|
254
|
+
|
255
|
+
|
256
|
+
|
219
257
|
/**
|
220
258
|
* Keep a reference to the tooltip in the registry
|
221
259
|
*/
|
222
260
|
RG.SVG.REG.set('tooltip', tooltipObj);
|
261
|
+
RG.SVG.REG.set('tooltip-lastx', parseFloat(tooltipObj.style.left));
|
262
|
+
RG.SVG.REG.set('tooltip-lasty', parseFloat(tooltipObj.style.top));
|
263
|
+
|
223
264
|
|
224
265
|
//
|
225
266
|
// Fire the tooltip event
|