rem: var time = args[0]; var val = args[1]; if (time != null && val != null) {  showStatus("Date: " + formatTime(time) + " Value: " + val.toFixed(2)); } else { showStatus(null); 
add: log ("selchanged");  if (args[0] == "range") { if (args[1] && args[2]) { var t1 = args[1]; var t2 = args[2];  var foundIndexes = [];    var foundPoints = false; var dss = BigPerfGraph.dataSets; for (var i = 0; i < dss.length; i++) { var idcs = dss[i].indicesForTimeRange(t1, t2); if (idcs[1] - idcs[0] > 1) { foundPoints = true; break; } foundIndexes.push(idcs); }  if (!foundPoints) {   log("Orig t1 " + t1 + " t2 " + t2);  for (var i = 0; i < dss.length; i++) { if (foundIndexes[i][0] > 0) { t1 = Math.min(dss[i].data[(foundIndexes[i][0] - 1) * 2], t1); } else if (foundIndexes[i][1]+1 < (ds.data.length/2)) { t2 = Math.max(dss[i].data[(foundIndexes[i][1] + 1) * 2], t2); } }  log("Fixed t1 " + t1 + " t2 " + t2); }  BigPerfGraph.setTimeRange (t1, t2); } else { BigPerfGraph.setTimeRange (SmallPerfGraph.startTime, SmallPerfGraph.endTime); } BigPerfGraph.autoScale(); BigPerfGraph.redraw(); 
context:              subscribe (function (type, args, obj) {                       var time = args[0];                       var val = args[1];                       if (time != null && val != null) {                           // cheat                           showStatus("Date: " + formatTime(time) + " Value: " + val.toFixed(2));                       } else {                           showStatus(null);                       }                   });
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/9421/f548e257d9403b78a5cc81c75c66b6ff5ee4af0e/graph.js/clean/webtools/new-graph/js/graph.js