X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=extras%2Fsynchronizer.js;h=16e4d96bc36926a8a0a502bc7d20c294c705a3a5;hb=8db6393ec8cac592f323724e43a2a7122a84614f;hp=12d804347bf3869987d1b9b3e1275342deb88c84;hpb=23e6849ffb9bf04f6bf3170e2da2fdef2d643557;p=dygraphs.git diff --git a/extras/synchronizer.js b/extras/synchronizer.js index 12d8043..16e4d96 100644 --- a/extras/synchronizer.js +++ b/extras/synchronizer.js @@ -181,7 +181,7 @@ function attachSelectionHandlers(gs, prevCallbacks) { var me = this; for (var i = 0; i < gs.length; i++) { if (me == gs[i]) continue; - var idx = dygraphsBinarySearch(gs[i], x); + var idx = gs[i].getRowForX(x); if (idx !== null) { gs[i].setSelection(idx, seriesName); } @@ -203,25 +203,4 @@ function attachSelectionHandlers(gs, prevCallbacks) { } } -// Returns the index corresponding to xVal, or null if there is none. -function dygraphsBinarySearch(g, xVal) { - var low = 0, - high = g.numRows() - 1; - - while (low < high) { - var idx = (high + low) >> 1; - var x = g.getValue(idx, 0); - if (x < xVal) { - low = idx + 1; - } else if (x > xVal) { - high = idx - 1; - } else { - return idx; - } - } - - // TODO: give an option to find the closest point, i.e. not demand an exact match. - return null; -} - })();