Commit Graph

429 Commits

Author SHA1 Message Date
Lubomir Sotirov
38f85c98b5 Fix 3267 Add "onHover" functionality for legend (#3271)
Add "onHover" to the legend options that will hold a user defined function (default is null) and called when a "mousemove" event is registered on top of a label item, with same parameters as the "onClick" option.

Also introduced logic that determines if the type of event passed to the legend "handleEvent" function is one we can handle. Currently allowing "click" and "mousemove" events. If the event is not one of those we stop the function execution (this is for the sake of reusing the legend hitbox calculations).
2016-09-08 14:42:42 +02:00
Simon Brunel
7c93255b16 Enforce curly braces for single statement block
curly: [error, all] (http://eslint.org/docs/rules/curly)
2016-09-03 18:42:28 +02:00
Simon Brunel
3d40774c7d Enforce consistent tab indentation
indent: [error, tab] (http://eslint.org/docs/rules/indent)
2016-09-03 18:42:26 +02:00
Simon Brunel
69ab0d3e23 Use gulp-eslint instead of gulp-jshint
Change the linter in gulp tasks to be consistent with Code Climate results which are based on ESLint using .eslintrc options. However, defaults Code Climate rules are too strict, so turn as warnings the 'complexity' and 'max-statements' rules (other errors has been fixed). Note that the Gulp task name has been changed for `gulp lint`.
2016-09-03 18:42:22 +02:00
Evert Timberg
2268bef321 Merge pull request #3242 from Pikamander2/new_branch
Fix zero border width not working (issue #3241)
2016-09-02 18:46:16 -04:00
Ekaterina Dontsova
6408ba426c Fix #3022 Multi-lines label alignment (#3239) 2016-09-03 00:26:02 +02:00
Pikamander2
f3c51fc624 Fix zero border width not working (issue #3241) 2016-09-01 02:28:10 -04:00
Pikamander2
2002ca058b Fix zero border width not working (issue #3241) 2016-09-01 02:18:42 -04:00
etimberg
904f19fb7e When drawTicks is false, we should not include their size in the size of the axis 2016-08-22 20:09:09 -04:00
Evert Timberg
89531c6b93 Merge pull request #3112 from MatthieuRivaud/MonotoneCubicInterpolation
Monotone cubic interpolation
2016-08-22 17:53:31 -04:00
Evert Timberg
c94673e55a Merge pull request #3128 from vermeeca/3127-tooltip-sort
Accept chart data to itemSort callback for Tooltips
2016-08-22 17:53:11 -04:00
Karthik Iyengar
349a8a33ea Added borderDash support for grid lines (#3136) (#3142)
* Added borderDash support for grid lines (#3136)

* Save and restore context to prevent border dash being applied to other elements

* Adds support for borderDashOffset, checks for setLineDash (IE9/IE10)

* Fixes tests
2016-08-12 12:31:54 -04:00
Craig Vermeer
88de438c0e 3127 - Modify the itemSort callback for tooltips to accept a third parameter of the data object passed to the chart 2016-08-10 09:54:21 -04:00
MatthieuRivaud
7635ab4a4e Calling |helpers.sign| instead of |Math.sign| directly for IE and Safari compatibility. 2016-08-09 09:32:10 +02:00
MatthieuRivaud
4aabc0cb82 Recovered a fix lost when branching. 2016-08-08 15:56:53 +02:00
MatthieuRivaud
2409908027 Implement monotone cubic interpolation (see issue #3086). 2016-08-08 14:01:30 +02:00
Evert Timberg
554f31a1bb Make the iframe not focusable by using tabIndex of -1 2016-08-04 18:55:32 -04:00
Evert Timberg
23ca08184e Merge pull request #3045 from IonutLaceanu/master
getElementAtEvent: enforce one element limit
2016-07-28 18:02:31 -04:00
Jeff Esp
1e5cdc6188 Fix #2922 Make the XAxis based hover/tooltip pick the item at the same x-axis value 2016-07-27 21:09:13 +02:00
Ionut Laceanu
f46a9472b5 getElementAtEvent: enforce one element limit 2016-07-27 19:27:08 +03:00
Tiago Roldão
9df06e8c2e Check for existence of data element before accessing property 2016-07-18 22:05:44 +01:00
Evert Timberg
524493fe06 Merge pull request #2883 from Mesonyx/mesonyx/bugfix/null-tooltips
Fix for null value label/x-axis multi-tooltip bug
2016-07-11 10:34:20 -04:00
jeffesp
0c5a17af00 Fixes #2923: swapped tooltip xAlign & yAlign 2016-07-06 09:49:31 -04:00
Shayne Linhart
0dccc85e3a Added usePointStyle option to label boxes
- Closes #2252
- Allows label boxes to match the shape(pointStyle) of the corresponding data.
* Removed unused varaible from legend's draw()
2016-07-05 20:08:29 -06:00
Adam Templeton
6f1344d4e9 fix for null tooltip bug 2016-06-30 11:34:53 -05:00
nmac143
426466d051 Fixed truncation of pie chart borders 2016-06-29 19:39:10 -04:00
Adam Templeton
103957c4e0 adds x-axis hover option for charts and tooltips, highlights all dots on x-axis upon x-axis hover 2016-06-28 14:15:12 -05:00
André Wallat
72f423fb95 Fix tooltip not shown for missing dataset
When two datasets are shown and they don't have the same x-coordinates, then the position of the tooltip is not calculated correctly, when using mode 'label' or 'dataset'. This fix checks if the position of every dataset exists, before it is used.
2016-06-28 09:45:08 +02:00
Evert Timberg
0e276c968a Merge pull request #2821 from chartjs/fix/2526
Gracefully handle creating the chart with no config
2016-06-22 21:46:06 -04:00
Alexey Kopleman Dvurechensky
a9e0f2cae6 Fix statements in for() in tooltips's getAveragePosition. 2016-06-22 14:58:12 +03:00
Evert Timberg
553b20dc44 Gracefully handle creating the chart with no config 2016-06-21 18:45:22 -04:00
Simon Brunel
47912f49b4 Remove duplicated function names 2016-06-18 11:15:25 +02:00
Simon Brunel
f36123925c Fix #2734 Cleanup unused variables 2016-06-18 11:00:11 +02:00
Evert Timberg
f106e1bf2d fix tooltip with array returns 2016-06-14 19:19:15 -04:00
Simon Brunel
53eb7667dd New datasets update plugin extensions
Add `beforeDatasetsUpdate` and `afterDatasetsUpdate` plugin notifications during the chart update. Plugins are able to cancel the datasets update by explicitly returning false to `beforeDatasetsUpdate`. For consistency, rename `(before|after)DatasetDraw` to `(before|after)DatasetsDraw`.
2016-06-11 00:17:48 +02:00
Simon Brunel
dfdbd4465c Allow to register/unregister an array of plugins
The plugins service now accepts an array of plugin instances to register or unregister (for consistency, renamed `Chart.plugins.remove` to `unregister`). Also added a few methods to manipulate registered plugins, such as `count`, `getAll` and `clear` (mainly used by our unit tests).
2016-06-11 00:17:44 +02:00
Simon Brunel
a55c17d73f Enhance plugin notification system
Change the plugin notification behavior: this method now returns false as soon as a plugin *explicitly* returns false, else returns true. Also, plugins are now called in their own scope (so remove the never used `scope` parameter).
2016-06-10 22:26:55 +02:00
Simon Brunel
7a419af4c2 Rename plugin service and notification method
Rename `Chart.pluginService` to `Chart.plugins` (so move the old Chart.plugins array as a private member of the service), and rename `notifyPlugins` to `notify` for consistency with other service methods.
2016-06-10 22:26:35 +02:00
Evert Timberg
b1c50ed0c2 Merge pull request #2732 from chartjs/scale-colors-per-line
Scale colors per line
2016-06-09 18:35:48 -04:00
Evert Timberg
3aeddf5239 Merge pull request #2723 from chartjs/vertical-legend
Vertical legend
2016-06-09 18:35:29 -04:00
Evert Timberg
8d94e3e427 Merge pull request #2712 from simonbrunel/helpers-cleanup
Rewrite a few helpers to be more efficient
2016-06-08 20:08:44 -04:00
Jack Valentine
29bc3b0b8b ChartJS tooltip fontColor fix
fixed global variable name fix
callback variable name fix
- 'titleColor' to 'titleFontColor'
- 'bodyColor' to 'bodyFontColor'
- 'footerColor' to 'footerFontColor'
2016-06-09 00:04:20 +09:00
Evert Timberg
fbecfa2baf Reduce duplicated code in core scale draw method 2016-06-07 22:03:36 -04:00
문승찬
7ebf85eacf change tooltip font color option
bodyColor  -> bodyFontColor
titleColor -> titleFontColor
footerColor -> footerFontColor
2016-06-08 10:16:38 +09:00
Evert Timberg
6b2cfd5e11 Support arrays of colors and line widths in cartesian axes 2016-06-07 20:22:06 -04:00
Evert Timberg
71cbc4c5c1 Optimize legend drawing 2016-06-06 22:14:42 -04:00
Evert Timberg
80bd7d3f60 Initial vertical legend mode 2016-06-06 21:41:40 -04:00
Evert Timberg
959b4eedf6 Merge pull request #2716 from thebenedict/master
Make canvas element display: block by default, with config option to …
2016-06-06 10:14:59 -04:00
thebenedict
0b19689b00 style canvas element display: block by default 2016-06-06 17:05:44 +03:00
Simon Brunel
287cefc9b9 Rewrite a few helpers to be more efficient
Resolve at definition time if a browser built-in method or our polyfill should be used, so avoid checking it for each call. Also, `helpers.extend` doesn't need to iterate two times on the function arguments. Finally, remove helpers never referenced.
2016-06-05 23:23:19 +02:00