X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=dygraph-utils.js;h=73777b91828d3574aa96d2139fd00d3f0d40968a;hb=4ee251cb5a4f2f1f460facb47f6b30ab9fca6ebb;hp=9e74c7dc7c68368d6d20e182ee2fbc9d26e60128;hpb=1e7f8af02c2ddc8320aa9b0aa98194c883b7b749;p=dygraphs.git diff --git a/dygraph-utils.js b/dygraph-utils.js index 9e74c7d..73777b9 100644 --- a/dygraph-utils.js +++ b/dygraph-utils.js @@ -12,7 +12,7 @@ */ /*jshint globalstrict: true */ -/*global Dygraph:false, G_vmlCanvasManager:false, Node:false, printStackTrace: false */ +/*global Dygraph:false, G_vmlCanvasManager:false, Node:false */ "use strict"; Dygraph.LOG_SCALE = 10; @@ -27,20 +27,6 @@ Dygraph.log10 = function(x) { return Math.log(x) / Dygraph.LN_TEN; }; -// Various logging levels. -Dygraph.DEBUG = 1; -Dygraph.INFO = 2; -Dygraph.WARNING = 3; -Dygraph.ERROR = 3; - -// -// Set this to log stack traces on warnings, etc. -// This requires stacktrace.js, which is up to you to provide. -// A copy can be found in the dygraphs repo, or at -// https://github.com/eriwen/javascript-stacktrace -Dygraph.LOG_STACK_TRACES = false; -// - /** A dotted line stroke pattern. */ Dygraph.DOTTED_LINE = [2, 2]; /** A dashed line stroke pattern. */ @@ -49,94 +35,6 @@ Dygraph.DASHED_LINE = [7, 3]; Dygraph.DOT_DASH_LINE = [7, 2, 2, 2]; /** - * Log an error on the JS console at the given severity. - * @param {number} severity One of Dygraph.{DEBUG,INFO,WARNING,ERROR} - * @param {string} message The message to log. - * @private - */ -Dygraph.log = function(severity, message) { - // - var st; - if (typeof(printStackTrace) != 'undefined') { - try { - // Remove uninteresting bits: logging functions and paths. - st = printStackTrace({guess:false}); - while (st[0].indexOf("stacktrace") != -1) { - st.splice(0, 1); - } - - st.splice(0, 2); - for (var i = 0; i < st.length; i++) { - st[i] = st[i].replace(/\([^)]*\/(.*)\)/, '@$1') - .replace(/\@.*\/([^\/]*)/, '@$1') - .replace('[object Object].', ''); - } - var top_msg = st.splice(0, 1)[0]; - message += ' (' + top_msg.replace(/^.*@ ?/, '') + ')'; - } catch(e) { - // Oh well, it was worth a shot! - } - } - // - - if (typeof(window.console) != 'undefined') { - // In older versions of Firefox, only console.log is defined. - var console = window.console; - var log = function(console, method, msg) { - if (method && typeof(method) == 'function') { - method.call(console, msg); - } else { - console.log(msg); - } - }; - - switch (severity) { - case Dygraph.DEBUG: - log(console, console.debug, 'dygraphs: ' + message); - break; - case Dygraph.INFO: - log(console, console.info, 'dygraphs: ' + message); - break; - case Dygraph.WARNING: - log(console, console.warn, 'dygraphs: ' + message); - break; - case Dygraph.ERROR: - log(console, console.error, 'dygraphs: ' + message); - break; - } - } - - // - if (Dygraph.LOG_STACK_TRACES) { - window.console.log(st.join('\n')); - } - // -}; - -/** - * @param {string} message - * @private - */ -Dygraph.info = function(message) { - Dygraph.log(Dygraph.INFO, message); -}; - -/** - * @param {string} message - * @private - */ -Dygraph.warn = function(message) { - Dygraph.log(Dygraph.WARNING, message); -}; - -/** - * @param {string} message - */ -Dygraph.error = function(message) { - Dygraph.log(Dygraph.ERROR, message); -}; - -/** * Return the 2d context for a dygraph canvas. * * This method is only exposed for the sake of replacing the function in @@ -672,7 +570,7 @@ Dygraph.dateParser = function(dateStr) { } if (!d || isNaN(d)) { - Dygraph.error("Couldn't parse " + dateStr + " as a date"); + console.error("Couldn't parse " + dateStr + " as a date"); } return d; }; @@ -831,13 +729,20 @@ Dygraph.createCanvas = function() { */ Dygraph.getContextPixelRatio = function(context) { try { - var devicePixelRatio = window.devicePixelRatio || 1, - backingStoreRatio = context.webkitBackingStorePixelRatio || + var devicePixelRatio = window.devicePixelRatio; + var backingStoreRatio = context.webkitBackingStorePixelRatio || context.mozBackingStorePixelRatio || context.msBackingStorePixelRatio || context.oBackingStorePixelRatio || - context.backingStorePixelRatio || 1; - return devicePixelRatio / backingStoreRatio; + context.backingStorePixelRatio; + if (devicePixelRatio !== undefined && + backingStorePixelRatio !== undefined) { + return devicePixelRatio / backingStoreRatio; + } else { + // If either value is undefined, the ratio is meaningless so we want to + // return 1. + return 1; + } } catch (e) { return 1; } @@ -1298,7 +1203,7 @@ Dygraph.parseFloat_ = function(x, opt_line_no, opt_line) { if (opt_line !== undefined && opt_line_no !== undefined) { msg += " on line " + (1+(opt_line_no||0)) + " ('" + opt_line + "') of CSV."; } - Dygraph.error(msg); + console.error(msg); return null; };