--- a/src/pyams_skin/resources/js/ext/flot/jquery.flot.image.js Thu Sep 26 11:55:17 2019 +0200
+++ b/src/pyams_skin/resources/js/ext/flot/jquery.flot.image.js Wed Oct 16 13:00:43 2019 +0200
@@ -11,7 +11,7 @@
There are two helpers included for retrieving images. The easiest work the way
that you put in URLs instead of images in the data, like this:
- [ "myimage.png", 0, 0, 10, 10 ]
+ [ "myimage.png", 0, 0, 10, 10 ]
Then call $.plot.image.loadData( data, options, callback ) where data and
options are the same as you pass in to $.plot. This loads the images, replaces
@@ -25,20 +25,20 @@
The plugin supports these options:
- series: {
- images: {
- show: boolean
- anchor: "corner" or "center"
- alpha: [ 0, 1 ]
- }
- }
+ series: {
+ images: {
+ show: boolean
+ anchor: "corner" or "center"
+ alpha: [ 0, 1 ]
+ }
+ }
They can be specified for a specific series:
- $.plot( $("#placeholder"), [{
- data: [ ... ],
- images: { ... }
- ])
+ $.plot( $("#placeholder"), [{
+ data: [ ... ],
+ images: { ... }
+ ])
Note that because the data format is different from usual data points, you
can't use images with anything else in a specific data series.
@@ -69,16 +69,18 @@
var urls = [], points = [];
var defaultShow = options.series.images.show;
-
+
$.each(series, function (i, s) {
- if (!(defaultShow || s.images.show))
+ if (!(defaultShow || s.images.show)) {
return;
-
- if (s.data)
+ }
+
+ if (s.data) {
s = s.data;
+ }
$.each(s, function (i, p) {
- if (typeof p[0] == "string") {
+ if (typeof p[0] === "string") {
urls.push(p[0]);
points.push(p);
}
@@ -88,42 +90,45 @@
$.plot.image.load(urls, function (loadedImages) {
$.each(points, function (i, p) {
var url = p[0];
- if (loadedImages[url])
+ if (loadedImages[url]) {
p[0] = loadedImages[url];
+ }
});
callback();
});
}
-
+
$.plot.image.load = function (urls, callback) {
var missing = urls.length, loaded = {};
- if (missing == 0)
+ if (missing === 0) {
callback({});
+ }
$.each(urls, function (i, url) {
var handler = function () {
--missing;
-
loaded[url] = this;
-
- if (missing == 0)
+
+ if (missing === 0) {
callback(loaded);
+ }
};
$('<img />').load(handler).error(handler).attr('src', url);
});
};
-
+
function drawSeries(plot, ctx, series) {
var plotOffset = plot.getPlotOffset();
-
- if (!series.images || !series.images.show)
+
+ if (!series.images || !series.images.show) {
return;
-
+ }
+
var points = series.datapoints.points,
ps = series.datapoints.pointsize;
-
+
for (var i = 0; i < points.length; i += ps) {
var img = points[i],
x1 = points[i + 1], y1 = points[i + 2],
@@ -134,8 +139,9 @@
// actually we should check img.complete, but it
// appears to be a somewhat unreliable indicator in
// IE6 (false even after load event)
- if (!img || img.width <= 0 || img.height <= 0)
+ if (!img || img.width <= 0 || img.height <= 0) {
continue;
+ }
if (x1 > x2) {
tmp = x2;
@@ -147,23 +153,24 @@
y2 = y1;
y1 = tmp;
}
-
- // if the anchor is at the center of the pixel, expand the
+
+ // if the anchor is at the center of the pixel, expand the
// image by 1/2 pixel in each direction
- if (series.images.anchor == "center") {
- tmp = 0.5 * (x2-x1) / (img.width - 1);
+ if (series.images.anchor === "center") {
+ tmp = 0.5 * (x2 - x1) / (img.width - 1);
x1 -= tmp;
x2 += tmp;
- tmp = 0.5 * (y2-y1) / (img.height - 1);
+ tmp = 0.5 * (y2 - y1) / (img.height - 1);
y1 -= tmp;
y2 += tmp;
}
-
+
// clip
- if (x1 == x2 || y1 == y2 ||
+ if (x1 === x2 || y1 === y2 ||
x1 >= xaxis.max || x2 <= xaxis.min ||
- y1 >= yaxis.max || y2 <= yaxis.min)
+ y1 >= yaxis.max || y2 <= yaxis.min) {
continue;
+ }
var sx1 = 0, sy1 = 0, sx2 = img.width, sy2 = img.height;
if (x1 < xaxis.min) {
@@ -185,12 +192,12 @@
sy1 += (sy1 - sy2) * (yaxis.max - y2) / (y2 - y1);
y2 = yaxis.max;
}
-
+
x1 = xaxis.p2c(x1);
x2 = xaxis.p2c(x2);
y1 = yaxis.p2c(y1);
y2 = yaxis.p2c(y2);
-
+
// the transformation may have swapped us
if (x1 > x2) {
tmp = x2;
@@ -214,8 +221,9 @@
}
function processRawData(plot, series, data, datapoints) {
- if (!series.images.show)
+ if (!series.images.show) {
return;
+ }
// format is Image, x1, y1, x2, y2 (opposite corners)
datapoints.format = [
@@ -226,12 +234,12 @@
{ y: true, number: true, required: true }
];
}
-
+
function init(plot) {
plot.hooks.processRawData.push(processRawData);
plot.hooks.drawSeries.push(drawSeries);
}
-
+
$.plot.plugins.push({
init: init,
options: options,