VMLRenderer.js 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /* *
  2. * (c) 2010-2019 Torstein Honsi
  3. *
  4. * Extension to the VML Renderer
  5. *
  6. * License: www.highcharts.com/license
  7. */
  8. 'use strict';
  9. import H from '../parts/Globals.js';
  10. import '../parts/Utilities.js';
  11. import '../parts/Axis.js';
  12. import '../parts/SvgRenderer.js';
  13. var addEvent = H.addEvent,
  14. Axis = H.Axis,
  15. SVGRenderer = H.SVGRenderer,
  16. VMLRenderer = H.VMLRenderer;
  17. if (VMLRenderer) {
  18. H.setOptions({ animate: false });
  19. VMLRenderer.prototype.face3d = SVGRenderer.prototype.face3d;
  20. VMLRenderer.prototype.polyhedron = SVGRenderer.prototype.polyhedron;
  21. VMLRenderer.prototype.elements3d = SVGRenderer.prototype.elements3d;
  22. VMLRenderer.prototype.element3d = SVGRenderer.prototype.element3d;
  23. VMLRenderer.prototype.cuboid = SVGRenderer.prototype.cuboid;
  24. VMLRenderer.prototype.cuboidPath = SVGRenderer.prototype.cuboidPath;
  25. VMLRenderer.prototype.toLinePath = SVGRenderer.prototype.toLinePath;
  26. VMLRenderer.prototype.toLineSegments = SVGRenderer.prototype.toLineSegments;
  27. VMLRenderer.prototype.arc3d = function (shapeArgs) {
  28. var result = SVGRenderer.prototype.arc3d.call(this, shapeArgs);
  29. result.css({ zIndex: result.zIndex });
  30. return result;
  31. };
  32. H.VMLRenderer.prototype.arc3dPath = H.SVGRenderer.prototype.arc3dPath;
  33. addEvent(Axis, 'render', function () {
  34. // VML doesn't support a negative z-index
  35. if (this.sideFrame) {
  36. this.sideFrame.css({ zIndex: 0 });
  37. this.sideFrame.front.attr({ fill: this.sideFrame.color });
  38. }
  39. if (this.bottomFrame) {
  40. this.bottomFrame.css({ zIndex: 1 });
  41. this.bottomFrame.front.attr({ fill: this.bottomFrame.color });
  42. }
  43. if (this.backFrame) {
  44. this.backFrame.css({ zIndex: 0 });
  45. this.backFrame.front.attr({ fill: this.backFrame.color });
  46. }
  47. });
  48. }