HighchartsPie::newEvents()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 0
1
<?php
2
3
/**
4
 * This file is part of the highcharts-bundle package.
5
 *
6
 * (c) 2017 WEBEWEB
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions;
13
14
use JsonSerializable;
15
use WBW\Library\Core\Utility\Argument\ArrayUtility;
16
17
/**
18
 * Highcharts pie.
19
 *
20
 * @author webeweb <https://github.com/webeweb/>
21
 * @package WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions
22
 * @version 5.0.14
23
 * @final
24
 */
25
final class HighchartsPie implements JsonSerializable {
26
27
    /**
28
     * Allow point select.
29
     *
30
     * @var boolean
31
     * @since 1.2.0
32
     */
33
    private $allowPointSelect = false;
34
35
    /**
36
     * Animation.
37
     *
38
     * @var boolean
39
     */
40
    private $animation = true;
41
42
    /**
43
     * Animation limit.
44
     *
45
     * @var integer
46
     */
47
    private $animationLimit;
48
49
    /**
50
     * Border color.
51
     *
52
     * @var string
53
     */
54
    private $borderColor = "#ffffff";
55
56
    /**
57
     * Border width.
58
     *
59
     * @var integer
60
     */
61
    private $borderWidth = 1;
62
63
    /**
64
     * Center.
65
     *
66
     * @var array
67
     */
68
    private $center = [null, null];
69
70
    /**
71
     * Class name.
72
     *
73
     * @var string
74
     * @since 5.0.0
75
     */
76
    private $className;
77
78
    /**
79
     * Color index.
80
     *
81
     * @var integer
82
     * @since 5.0.0
83
     */
84
    private $colorIndex;
85
86
    /**
87
     * Colors.
88
     *
89
     * @var array
90
     * @since 3.0
91
     */
92
    private $colors;
93
94
    /**
95
     * Cursor.
96
     *
97
     * @var string
98
     */
99
    private $cursor;
100
101
    /**
102
     * Data labels.
103
     *
104
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsDataLabels
105
     */
106
    private $dataLabels;
107
108
    /**
109
     * Depth.
110
     *
111
     * @var integer
112
     * @since 4.0
113
     */
114
    private $depth = 0;
115
116
    /**
117
     * Description.
118
     *
119
     * @var string
120
     * @since 5.0.0
121
     */
122
    private $description;
123
124
    /**
125
     * Enable mouse tracking.
126
     *
127
     * @var boolean
128
     */
129
    private $enableMouseTracking = true;
130
131
    /**
132
     * End angle.
133
     *
134
     * @var integer
135
     * @since 1.3.6
136
     */
137
    private $endAngle;
138
139
    /**
140
     * Events.
141
     *
142
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsEvents
143
     */
144
    private $events;
145
146
    /**
147
     * Expose element to a11y.
148
     *
149
     * @var boolean
150
     * @since 5.0.12
151
     */
152
    private $exposeElementToA11y;
153
154
    /**
155
     * Find nearest point by.
156
     *
157
     * @var string
158
     * @since 5.0.10
159
     */
160
    private $findNearestPointBy;
161
162
    /**
163
     * Get extremes from all.
164
     *
165
     * @var boolean
166
     * @since 4.1.6
167
     */
168
    private $getExtremesFromAll = false;
169
170
    /**
171
     * Ignore hidden point.
172
     *
173
     * @var boolean
174
     * @since 2.3.0
175
     */
176
    private $ignoreHiddenPoint = true;
177
178
    /**
179
     * Inner size.
180
     *
181
     * @var string|integer
182
     * @since 2.0
183
     */
184
    private $innerSize = "0";
185
186
    /**
187
     * Keys.
188
     *
189
     * @var array
190
     * @since 4.1.6
191
     */
192
    private $keys;
193
194
    /**
195
     * Linked to.
196
     *
197
     * @var string
198
     * @since 3.0
199
     */
200
    private $linkedTo;
201
202
    /**
203
     * Min size.
204
     *
205
     * @var integer
206
     * @since 3.0
207
     */
208
    private $minSize = 80;
209
210
    /**
211
     * Point.
212
     *
213
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsPoint
214
     */
215
    private $point;
216
217
    /**
218
     * Point description formatter.
219
     *
220
     * @var string
221
     * @since 5.0.12
222
     */
223
    private $pointDescriptionFormatter;
224
225
    /**
226
     * Selected.
227
     *
228
     * @var boolean
229
     * @since 1.2.0
230
     */
231
    private $selected = false;
232
233
    /**
234
     * Shadow.
235
     *
236
     * @var boolean|array
237
     */
238
    private $shadow = false;
239
240
    /**
241
     * Show in legend.
242
     *
243
     * @var boolean
244
     */
245
    private $showInLegend = false;
246
247
    /**
248
     * Size.
249
     *
250
     * @var string|integer
251
     */
252
    private $size;
253
254
    /**
255
     * Skip keyboard navigation.
256
     *
257
     * @var boolean
258
     * @since 5.0.12
259
     */
260
    private $skipKeyboardNavigation;
261
262
    /**
263
     * Sliced offset.
264
     *
265
     * @var integer
266
     */
267
    private $slicedOffset = 10;
268
269
    /**
270
     * Start angle.
271
     *
272
     * @var integer
273
     * @since 2.3.4
274
     */
275
    private $startAngle = 0;
276
277
    /**
278
     * States.
279
     *
280
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsStates
281
     */
282
    private $states;
283
284
    /**
285
     * Sticky tracking.
286
     *
287
     * @var boolean
288
     */
289
    private $stickyTracking = false;
290
291
    /**
292
     * Tooltip.
293
     *
294
     * @var array
295
     * @since 2.3
296
     */
297
    private $tooltip;
298
299
    /**
300
     * Visible.
301
     *
302
     * @var boolean
303
     */
304
    private $visible = true;
305
306
    /**
307
     * Zone axis.
308
     *
309
     * @var string
310
     * @since 4.1.0
311
     */
312
    private $zoneAxis = "y";
313
314
    /**
315
     * Zones.
316
     *
317
     * @var array
318
     * @since 4.1.0
319
     */
320
    private $zones;
321
322
    /**
323
     * Constructor.
324
     *
325
     * @param boolean $ignoreDefaultValues Ignore the default values.
326
     */
327
    public function __construct($ignoreDefaultValues = true) {
328
        if (true === $ignoreDefaultValues) {
329
            $this->clear();
330
        }
331
    }
332
333
    /**
334
     * Clear.
335
     *
336
     * @return void
337
     */
338
    public function clear() {
339
340
        // Clear the allow point select.
341
        $this->allowPointSelect = null;
342
343
        // Clear the animation.
344
        $this->animation = null;
345
346
        // Clear the animation limit.
347
        $this->animationLimit = null;
348
349
        // Clear the border color.
350
        $this->borderColor = null;
351
352
        // Clear the border width.
353
        $this->borderWidth = null;
354
355
        // Clear the center.
356
        $this->center = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $center.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
357
358
        // Clear the class name.
359
        $this->className = null;
360
361
        // Clear the color index.
362
        $this->colorIndex = null;
363
364
        // Clear the colors.
365
        $this->colors = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $colors.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
366
367
        // Clear the cursor.
368
        $this->cursor = null;
369
370
        // Clear the data labels.
371
        if (null !== $this->dataLabels) {
372
            $this->dataLabels->clear();
373
        }
374
375
        // Clear the depth.
376
        $this->depth = null;
377
378
        // Clear the description.
379
        $this->description = null;
380
381
        // Clear the enable mouse tracking.
382
        $this->enableMouseTracking = null;
383
384
        // Clear the end angle.
385
        $this->endAngle = null;
386
387
        // Clear the events.
388
        if (null !== $this->events) {
389
            $this->events->clear();
390
        }
391
392
        // Clear the expose element to a11y.
393
        $this->exposeElementToA11y = null;
394
395
        // Clear the find nearest point by.
396
        $this->findNearestPointBy = null;
397
398
        // Clear the get extremes from all.
399
        $this->getExtremesFromAll = null;
400
401
        // Clear the ignore hidden point.
402
        $this->ignoreHiddenPoint = null;
403
404
        // Clear the inner size.
405
        $this->innerSize = null;
406
407
        // Clear the keys.
408
        $this->keys = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $keys.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
409
410
        // Clear the linked to.
411
        $this->linkedTo = null;
412
413
        // Clear the min size.
414
        $this->minSize = null;
415
416
        // Clear the point.
417
        if (null !== $this->point) {
418
            $this->point->clear();
419
        }
420
421
        // Clear the point description formatter.
422
        $this->pointDescriptionFormatter = null;
423
424
        // Clear the selected.
425
        $this->selected = null;
426
427
        // Clear the shadow.
428
        $this->shadow = null;
429
430
        // Clear the show in legend.
431
        $this->showInLegend = null;
432
433
        // Clear the size.
434
        $this->size = null;
435
436
        // Clear the skip keyboard navigation.
437
        $this->skipKeyboardNavigation = null;
438
439
        // Clear the sliced offset.
440
        $this->slicedOffset = null;
441
442
        // Clear the start angle.
443
        $this->startAngle = null;
444
445
        // Clear the states.
446
        if (null !== $this->states) {
447
            $this->states->clear();
448
        }
449
450
        // Clear the sticky tracking.
451
        $this->stickyTracking = null;
452
453
        // Clear the tooltip.
454
        $this->tooltip = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $tooltip.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
455
456
        // Clear the visible.
457
        $this->visible = null;
458
459
        // Clear the zone axis.
460
        $this->zoneAxis = null;
461
462
        // Clear the zones.
463
        $this->zones = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $zones.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
464
    }
465
466
    /**
467
     * Get the allow point select.
468
     *
469
     * @return boolean Returns the allow point select.
470
     */
471
    public function getAllowPointSelect() {
472
        return $this->allowPointSelect;
473
    }
474
475
    /**
476
     * Get the animation.
477
     *
478
     * @return boolean Returns the animation.
479
     */
480
    public function getAnimation() {
481
        return $this->animation;
482
    }
483
484
    /**
485
     * Get the animation limit.
486
     *
487
     * @return integer Returns the animation limit.
488
     */
489
    public function getAnimationLimit() {
490
        return $this->animationLimit;
491
    }
492
493
    /**
494
     * Get the border color.
495
     *
496
     * @return string Returns the border color.
497
     */
498
    public function getBorderColor() {
499
        return $this->borderColor;
500
    }
501
502
    /**
503
     * Get the border width.
504
     *
505
     * @return integer Returns the border width.
506
     */
507
    public function getBorderWidth() {
508
        return $this->borderWidth;
509
    }
510
511
    /**
512
     * Get the center.
513
     *
514
     * @return array Returns the center.
515
     */
516
    public function getCenter() {
517
        return $this->center;
518
    }
519
520
    /**
521
     * Get the class name.
522
     *
523
     * @return string Returns the class name.
524
     */
525
    public function getClassName() {
526
        return $this->className;
527
    }
528
529
    /**
530
     * Get the color index.
531
     *
532
     * @return integer Returns the color index.
533
     */
534
    public function getColorIndex() {
535
        return $this->colorIndex;
536
    }
537
538
    /**
539
     * Get the colors.
540
     *
541
     * @return array Returns the colors.
542
     */
543
    public function getColors() {
544
        return $this->colors;
545
    }
546
547
    /**
548
     * Get the cursor.
549
     *
550
     * @return string Returns the cursor.
551
     */
552
    public function getCursor() {
553
        return $this->cursor;
554
    }
555
556
    /**
557
     * Get the data labels.
558
     *
559
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsDataLabels Returns the data labels.
560
     */
561
    public function getDataLabels() {
562
        return $this->dataLabels;
563
    }
564
565
    /**
566
     * Get the depth.
567
     *
568
     * @return integer Returns the depth.
569
     */
570
    public function getDepth() {
571
        return $this->depth;
572
    }
573
574
    /**
575
     * Get the description.
576
     *
577
     * @return string Returns the description.
578
     */
579
    public function getDescription() {
580
        return $this->description;
581
    }
582
583
    /**
584
     * Get the enable mouse tracking.
585
     *
586
     * @return boolean Returns the enable mouse tracking.
587
     */
588
    public function getEnableMouseTracking() {
589
        return $this->enableMouseTracking;
590
    }
591
592
    /**
593
     * Get the end angle.
594
     *
595
     * @return integer Returns the end angle.
596
     */
597
    public function getEndAngle() {
598
        return $this->endAngle;
599
    }
600
601
    /**
602
     * Get the events.
603
     *
604
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsEvents Returns the events.
605
     */
606
    public function getEvents() {
607
        return $this->events;
608
    }
609
610
    /**
611
     * Get the expose element to a11y.
612
     *
613
     * @return boolean Returns the expose element to a11y.
614
     */
615
    public function getExposeElementToA11y() {
616
        return $this->exposeElementToA11y;
617
    }
618
619
    /**
620
     * Get the find nearest point by.
621
     *
622
     * @return string Returns the find nearest point by.
623
     */
624
    public function getFindNearestPointBy() {
625
        return $this->findNearestPointBy;
626
    }
627
628
    /**
629
     * Get the get extremes from all.
630
     *
631
     * @return boolean Returns the get extremes from all.
632
     */
633
    public function getGetExtremesFromAll() {
634
        return $this->getExtremesFromAll;
635
    }
636
637
    /**
638
     * Get the ignore hidden point.
639
     *
640
     * @return boolean Returns the ignore hidden point.
641
     */
642
    public function getIgnoreHiddenPoint() {
643
        return $this->ignoreHiddenPoint;
644
    }
645
646
    /**
647
     * Get the inner size.
648
     *
649
     * @return string|integer Returns the inner size.
650
     */
651
    public function getInnerSize() {
652
        return $this->innerSize;
653
    }
654
655
    /**
656
     * Get the keys.
657
     *
658
     * @return array Returns the keys.
659
     */
660
    public function getKeys() {
661
        return $this->keys;
662
    }
663
664
    /**
665
     * Get the linked to.
666
     *
667
     * @return string Returns the linked to.
668
     */
669
    public function getLinkedTo() {
670
        return $this->linkedTo;
671
    }
672
673
    /**
674
     * Get the min size.
675
     *
676
     * @return integer Returns the min size.
677
     */
678
    public function getMinSize() {
679
        return $this->minSize;
680
    }
681
682
    /**
683
     * Get the point.
684
     *
685
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsPoint Returns the point.
686
     */
687
    public function getPoint() {
688
        return $this->point;
689
    }
690
691
    /**
692
     * Get the point description formatter.
693
     *
694
     * @return string Returns the point description formatter.
695
     */
696
    public function getPointDescriptionFormatter() {
697
        return $this->pointDescriptionFormatter;
698
    }
699
700
    /**
701
     * Get the selected.
702
     *
703
     * @return boolean Returns the selected.
704
     */
705
    public function getSelected() {
706
        return $this->selected;
707
    }
708
709
    /**
710
     * Get the shadow.
711
     *
712
     * @return boolean|array Returns the shadow.
713
     */
714
    public function getShadow() {
715
        return $this->shadow;
716
    }
717
718
    /**
719
     * Get the show in legend.
720
     *
721
     * @return boolean Returns the show in legend.
722
     */
723
    public function getShowInLegend() {
724
        return $this->showInLegend;
725
    }
726
727
    /**
728
     * Get the size.
729
     *
730
     * @return string|integer Returns the size.
731
     */
732
    public function getSize() {
733
        return $this->size;
734
    }
735
736
    /**
737
     * Get the skip keyboard navigation.
738
     *
739
     * @return boolean Returns the skip keyboard navigation.
740
     */
741
    public function getSkipKeyboardNavigation() {
742
        return $this->skipKeyboardNavigation;
743
    }
744
745
    /**
746
     * Get the sliced offset.
747
     *
748
     * @return integer Returns the sliced offset.
749
     */
750
    public function getSlicedOffset() {
751
        return $this->slicedOffset;
752
    }
753
754
    /**
755
     * Get the start angle.
756
     *
757
     * @return integer Returns the start angle.
758
     */
759
    public function getStartAngle() {
760
        return $this->startAngle;
761
    }
762
763
    /**
764
     * Get the states.
765
     *
766
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsStates Returns the states.
767
     */
768
    public function getStates() {
769
        return $this->states;
770
    }
771
772
    /**
773
     * Get the sticky tracking.
774
     *
775
     * @return boolean Returns the sticky tracking.
776
     */
777
    public function getStickyTracking() {
778
        return $this->stickyTracking;
779
    }
780
781
    /**
782
     * Get the tooltip.
783
     *
784
     * @return array Returns the tooltip.
785
     */
786
    public function getTooltip() {
787
        return $this->tooltip;
788
    }
789
790
    /**
791
     * Get the visible.
792
     *
793
     * @return boolean Returns the visible.
794
     */
795
    public function getVisible() {
796
        return $this->visible;
797
    }
798
799
    /**
800
     * Get the zone axis.
801
     *
802
     * @return string Returns the zone axis.
803
     */
804
    public function getZoneAxis() {
805
        return $this->zoneAxis;
806
    }
807
808
    /**
809
     * Get the zones.
810
     *
811
     * @return array Returns the zones.
812
     */
813
    public function getZones() {
814
        return $this->zones;
815
    }
816
817
    /**
818
     * Serialize this instance.
819
     *
820
     * @return array Returns an array representing this instance.
821
     */
822
    public function jsonSerialize() {
823
        return $this->toArray();
824
    }
825
826
    /**
827
     * Create a new data labels.
828
     *
829
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsDataLabels Returns the data labels.
830
     */
831
    public function newDataLabels() {
832
        $this->dataLabels = new \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsDataLabels();
833
        return $this->dataLabels;
834
    }
835
836
    /**
837
     * Create a new events.
838
     *
839
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsEvents Returns the events.
840
     */
841
    public function newEvents() {
842
        $this->events = new \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsEvents();
843
        return $this->events;
844
    }
845
846
    /**
847
     * Create a new point.
848
     *
849
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsPoint Returns the point.
850
     */
851
    public function newPoint() {
852
        $this->point = new \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsPoint();
853
        return $this->point;
854
    }
855
856
    /**
857
     * Create a new states.
858
     *
859
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsStates Returns the states.
860
     */
861
    public function newStates() {
862
        $this->states = new \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsStates();
863
        return $this->states;
864
    }
865
866
    /**
867
     * Set the allow point select.
868
     *
869
     * @param boolean $allowPointSelect The allow point select.
870
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
871
     */
872
    public function setAllowPointSelect($allowPointSelect) {
873
        $this->allowPointSelect = $allowPointSelect;
874
        return $this;
875
    }
876
877
    /**
878
     * Set the animation.
879
     *
880
     * @param boolean $animation The animation.
881
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
882
     */
883
    public function setAnimation($animation) {
884
        $this->animation = $animation;
885
        return $this;
886
    }
887
888
    /**
889
     * Set the animation limit.
890
     *
891
     * @param integer $animationLimit The animation limit.
892
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
893
     */
894
    public function setAnimationLimit($animationLimit) {
895
        $this->animationLimit = $animationLimit;
896
        return $this;
897
    }
898
899
    /**
900
     * Set the border color.
901
     *
902
     * @param string $borderColor The border color.
903
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
904
     */
905
    public function setBorderColor($borderColor) {
906
        $this->borderColor = $borderColor;
907
        return $this;
908
    }
909
910
    /**
911
     * Set the border width.
912
     *
913
     * @param integer $borderWidth The border width.
914
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
915
     */
916
    public function setBorderWidth($borderWidth) {
917
        $this->borderWidth = $borderWidth;
918
        return $this;
919
    }
920
921
    /**
922
     * Set the center.
923
     *
924
     * @param array $center The center.
925
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
926
     */
927
    public function setCenter(array $center = null) {
928
        $this->center = $center;
0 ignored issues
show
Documentation Bug introduced by
It seems like $center can be null. However, the property $center is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
929
        return $this;
930
    }
931
932
    /**
933
     * Set the class name.
934
     *
935
     * @param string $className The class name.
936
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
937
     */
938
    public function setClassName($className) {
939
        $this->className = $className;
940
        return $this;
941
    }
942
943
    /**
944
     * Set the color index.
945
     *
946
     * @param integer $colorIndex The color index.
947
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
948
     */
949
    public function setColorIndex($colorIndex) {
950
        $this->colorIndex = $colorIndex;
951
        return $this;
952
    }
953
954
    /**
955
     * Set the colors.
956
     *
957
     * @param array $colors The colors.
958
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
959
     */
960
    public function setColors(array $colors = null) {
961
        $this->colors = $colors;
0 ignored issues
show
Documentation Bug introduced by
It seems like $colors can be null. However, the property $colors is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
962
        return $this;
963
    }
964
965
    /**
966
     * Set the cursor.
967
     *
968
     * @param string $cursor The cursor.
969
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
970
     */
971
    public function setCursor($cursor) {
972
        switch ($cursor) {
973
            case null:
974
            case "crosshair":
975
            case "default":
976
            case "help":
977
            case "none":
978
            case "pointer":
979
            $this->cursor = $cursor;
980
            break;
981
        }
982
        return $this;
983
    }
984
985
    /**
986
     * Set the data labels.
987
     *
988
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsDataLabels $dataLabels The data labels.
989
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
990
     */
991
    public function setDataLabels(\WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsDataLabels $dataLabels = null) {
992
        $this->dataLabels = $dataLabels;
993
        return $this;
994
    }
995
996
    /**
997
     * Set the depth.
998
     *
999
     * @param integer $depth The depth.
1000
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1001
     */
1002
    public function setDepth($depth) {
1003
        $this->depth = $depth;
1004
        return $this;
1005
    }
1006
1007
    /**
1008
     * Set the description.
1009
     *
1010
     * @param string $description The description.
1011
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1012
     */
1013
    public function setDescription($description) {
1014
        $this->description = $description;
1015
        return $this;
1016
    }
1017
1018
    /**
1019
     * Set the enable mouse tracking.
1020
     *
1021
     * @param boolean $enableMouseTracking The enable mouse tracking.
1022
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1023
     */
1024
    public function setEnableMouseTracking($enableMouseTracking) {
1025
        $this->enableMouseTracking = $enableMouseTracking;
1026
        return $this;
1027
    }
1028
1029
    /**
1030
     * Set the end angle.
1031
     *
1032
     * @param integer $endAngle The end angle.
1033
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1034
     */
1035
    public function setEndAngle($endAngle) {
1036
        $this->endAngle = $endAngle;
1037
        return $this;
1038
    }
1039
1040
    /**
1041
     * Set the events.
1042
     *
1043
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsEvents $events The events.
1044
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1045
     */
1046
    public function setEvents(\WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsEvents $events = null) {
1047
        $this->events = $events;
1048
        return $this;
1049
    }
1050
1051
    /**
1052
     * Set the expose element to a11y.
1053
     *
1054
     * @param boolean $exposeElementToA11y The expose element to a11y.
1055
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1056
     */
1057
    public function setExposeElementToA11y($exposeElementToA11y) {
1058
        $this->exposeElementToA11y = $exposeElementToA11y;
1059
        return $this;
1060
    }
1061
1062
    /**
1063
     * Set the find nearest point by.
1064
     *
1065
     * @param string $findNearestPointBy The find nearest point by.
1066
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1067
     */
1068
    public function setFindNearestPointBy($findNearestPointBy) {
1069
        switch ($findNearestPointBy) {
1070
            case "x":
1071
            case "xy":
1072
            $this->findNearestPointBy = $findNearestPointBy;
1073
            break;
1074
        }
1075
        return $this;
1076
    }
1077
1078
    /**
1079
     * Set the get extremes from all.
1080
     *
1081
     * @param boolean $getExtremesFromAll The get extremes from all.
1082
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1083
     */
1084
    public function setGetExtremesFromAll($getExtremesFromAll) {
1085
        $this->getExtremesFromAll = $getExtremesFromAll;
1086
        return $this;
1087
    }
1088
1089
    /**
1090
     * Set the ignore hidden point.
1091
     *
1092
     * @param boolean $ignoreHiddenPoint The ignore hidden point.
1093
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1094
     */
1095
    public function setIgnoreHiddenPoint($ignoreHiddenPoint) {
1096
        $this->ignoreHiddenPoint = $ignoreHiddenPoint;
1097
        return $this;
1098
    }
1099
1100
    /**
1101
     * Set the inner size.
1102
     *
1103
     * @param string|integer $innerSize The inner size.
1104
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1105
     */
1106
    public function setInnerSize($innerSize) {
1107
        $this->innerSize = $innerSize;
1108
        return $this;
1109
    }
1110
1111
    /**
1112
     * Set the keys.
1113
     *
1114
     * @param array $keys The keys.
1115
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1116
     */
1117
    public function setKeys(array $keys = null) {
1118
        $this->keys = $keys;
0 ignored issues
show
Documentation Bug introduced by
It seems like $keys can be null. However, the property $keys is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
1119
        return $this;
1120
    }
1121
1122
    /**
1123
     * Set the linked to.
1124
     *
1125
     * @param string $linkedTo The linked to.
1126
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1127
     */
1128
    public function setLinkedTo($linkedTo) {
1129
        $this->linkedTo = $linkedTo;
1130
        return $this;
1131
    }
1132
1133
    /**
1134
     * Set the min size.
1135
     *
1136
     * @param integer $minSize The min size.
1137
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1138
     */
1139
    public function setMinSize($minSize) {
1140
        $this->minSize = $minSize;
1141
        return $this;
1142
    }
1143
1144
    /**
1145
     * Set the point.
1146
     *
1147
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsPoint $point The point.
1148
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1149
     */
1150
    public function setPoint(\WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsPoint $point = null) {
1151
        $this->point = $point;
1152
        return $this;
1153
    }
1154
1155
    /**
1156
     * Set the point description formatter.
1157
     *
1158
     * @param string $pointDescriptionFormatter The point description formatter.
1159
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1160
     */
1161
    public function setPointDescriptionFormatter($pointDescriptionFormatter) {
1162
        $this->pointDescriptionFormatter = $pointDescriptionFormatter;
1163
        return $this;
1164
    }
1165
1166
    /**
1167
     * Set the selected.
1168
     *
1169
     * @param boolean $selected The selected.
1170
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1171
     */
1172
    public function setSelected($selected) {
1173
        $this->selected = $selected;
1174
        return $this;
1175
    }
1176
1177
    /**
1178
     * Set the shadow.
1179
     *
1180
     * @param boolean|array $shadow The shadow.
1181
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1182
     */
1183
    public function setShadow($shadow) {
1184
        $this->shadow = $shadow;
1185
        return $this;
1186
    }
1187
1188
    /**
1189
     * Set the show in legend.
1190
     *
1191
     * @param boolean $showInLegend The show in legend.
1192
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1193
     */
1194
    public function setShowInLegend($showInLegend) {
1195
        $this->showInLegend = $showInLegend;
1196
        return $this;
1197
    }
1198
1199
    /**
1200
     * Set the size.
1201
     *
1202
     * @param string|integer $size The size.
1203
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1204
     */
1205
    public function setSize($size) {
1206
        $this->size = $size;
1207
        return $this;
1208
    }
1209
1210
    /**
1211
     * Set the skip keyboard navigation.
1212
     *
1213
     * @param boolean $skipKeyboardNavigation The skip keyboard navigation.
1214
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1215
     */
1216
    public function setSkipKeyboardNavigation($skipKeyboardNavigation) {
1217
        $this->skipKeyboardNavigation = $skipKeyboardNavigation;
1218
        return $this;
1219
    }
1220
1221
    /**
1222
     * Set the sliced offset.
1223
     *
1224
     * @param integer $slicedOffset The sliced offset.
1225
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1226
     */
1227
    public function setSlicedOffset($slicedOffset) {
1228
        $this->slicedOffset = $slicedOffset;
1229
        return $this;
1230
    }
1231
1232
    /**
1233
     * Set the start angle.
1234
     *
1235
     * @param integer $startAngle The start angle.
1236
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1237
     */
1238
    public function setStartAngle($startAngle) {
1239
        $this->startAngle = $startAngle;
1240
        return $this;
1241
    }
1242
1243
    /**
1244
     * Set the states.
1245
     *
1246
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsStates $states The states.
1247
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1248
     */
1249
    public function setStates(\WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Pie\HighchartsStates $states = null) {
1250
        $this->states = $states;
1251
        return $this;
1252
    }
1253
1254
    /**
1255
     * Set the sticky tracking.
1256
     *
1257
     * @param boolean $stickyTracking The sticky tracking.
1258
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1259
     */
1260
    public function setStickyTracking($stickyTracking) {
1261
        $this->stickyTracking = $stickyTracking;
1262
        return $this;
1263
    }
1264
1265
    /**
1266
     * Set the tooltip.
1267
     *
1268
     * @param array $tooltip The tooltip.
1269
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1270
     */
1271
    public function setTooltip(array $tooltip = null) {
1272
        $this->tooltip = $tooltip;
0 ignored issues
show
Documentation Bug introduced by
It seems like $tooltip can be null. However, the property $tooltip is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
1273
        return $this;
1274
    }
1275
1276
    /**
1277
     * Set the visible.
1278
     *
1279
     * @param boolean $visible The visible.
1280
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1281
     */
1282
    public function setVisible($visible) {
1283
        $this->visible = $visible;
1284
        return $this;
1285
    }
1286
1287
    /**
1288
     * Set the zone axis.
1289
     *
1290
     * @param string $zoneAxis The zone axis.
1291
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1292
     */
1293
    public function setZoneAxis($zoneAxis) {
1294
        $this->zoneAxis = $zoneAxis;
1295
        return $this;
1296
    }
1297
1298
    /**
1299
     * Set the zones.
1300
     *
1301
     * @param array $zones The zones.
1302
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsPie Returns the highcharts pie.
1303
     */
1304
    public function setZones(array $zones = null) {
1305
        $this->zones = $zones;
0 ignored issues
show
Documentation Bug introduced by
It seems like $zones can be null. However, the property $zones is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
1306
        return $this;
1307
    }
1308
1309
    /**
1310
     * Convert into an array representing this instance.
1311
     *
1312
     * @return array Returns an array representing this instance.
1313
     */
1314
    public function toArray() {
1315
1316
        // Initialize the output.
1317
        $output = [];
1318
1319
        // Set the allow point select.
1320
        ArrayUtility::set($output, "allowPointSelect", $this->allowPointSelect, [null]);
1321
1322
        // Set the animation.
1323
        ArrayUtility::set($output, "animation", $this->animation, [null]);
1324
1325
        // Set the animation limit.
1326
        ArrayUtility::set($output, "animationLimit", $this->animationLimit, [null]);
1327
1328
        // Set the border color.
1329
        ArrayUtility::set($output, "borderColor", $this->borderColor, [null]);
1330
1331
        // Set the border width.
1332
        ArrayUtility::set($output, "borderWidth", $this->borderWidth, [null]);
1333
1334
        // Set the center.
1335
        ArrayUtility::set($output, "center", $this->center, [null]);
1336
1337
        // Set the class name.
1338
        ArrayUtility::set($output, "className", $this->className, [null]);
1339
1340
        // Set the color index.
1341
        ArrayUtility::set($output, "colorIndex", $this->colorIndex, [null]);
1342
1343
        // Set the colors.
1344
        ArrayUtility::set($output, "colors", $this->colors, [null]);
1345
1346
        // Set the cursor.
1347
        ArrayUtility::set($output, "cursor", $this->cursor, [null]);
1348
1349
        // Set the data labels.
1350
        if (null !== $this->dataLabels) {
1351
            ArrayUtility::set($output, "dataLabels", $this->dataLabels->toArray(), []);
1352
        }
1353
1354
        // Set the depth.
1355
        ArrayUtility::set($output, "depth", $this->depth, [null]);
1356
1357
        // Set the description.
1358
        ArrayUtility::set($output, "description", $this->description, [null]);
1359
1360
        // Set the enable mouse tracking.
1361
        ArrayUtility::set($output, "enableMouseTracking", $this->enableMouseTracking, [null]);
1362
1363
        // Set the end angle.
1364
        ArrayUtility::set($output, "endAngle", $this->endAngle, [null]);
1365
1366
        // Set the events.
1367
        if (null !== $this->events) {
1368
            ArrayUtility::set($output, "events", $this->events->toArray(), []);
1369
        }
1370
1371
        // Set the expose element to a11y.
1372
        ArrayUtility::set($output, "exposeElementToA11y", $this->exposeElementToA11y, [null]);
1373
1374
        // Set the find nearest point by.
1375
        ArrayUtility::set($output, "findNearestPointBy", $this->findNearestPointBy, [null]);
1376
1377
        // Set the get extremes from all.
1378
        ArrayUtility::set($output, "getExtremesFromAll", $this->getExtremesFromAll, [null]);
1379
1380
        // Set the ignore hidden point.
1381
        ArrayUtility::set($output, "ignoreHiddenPoint", $this->ignoreHiddenPoint, [null]);
1382
1383
        // Set the inner size.
1384
        ArrayUtility::set($output, "innerSize", $this->innerSize, [null]);
1385
1386
        // Set the keys.
1387
        ArrayUtility::set($output, "keys", $this->keys, [null]);
1388
1389
        // Set the linked to.
1390
        ArrayUtility::set($output, "linkedTo", $this->linkedTo, [null]);
1391
1392
        // Set the min size.
1393
        ArrayUtility::set($output, "minSize", $this->minSize, [null]);
1394
1395
        // Set the point.
1396
        if (null !== $this->point) {
1397
            ArrayUtility::set($output, "point", $this->point->toArray(), []);
1398
        }
1399
1400
        // Set the point description formatter.
1401
        ArrayUtility::set($output, "pointDescriptionFormatter", $this->pointDescriptionFormatter, [null]);
1402
1403
        // Set the selected.
1404
        ArrayUtility::set($output, "selected", $this->selected, [null]);
1405
1406
        // Set the shadow.
1407
        ArrayUtility::set($output, "shadow", $this->shadow, [null]);
1408
1409
        // Set the show in legend.
1410
        ArrayUtility::set($output, "showInLegend", $this->showInLegend, [null]);
1411
1412
        // Set the size.
1413
        ArrayUtility::set($output, "size", $this->size, [null]);
1414
1415
        // Set the skip keyboard navigation.
1416
        ArrayUtility::set($output, "skipKeyboardNavigation", $this->skipKeyboardNavigation, [null]);
1417
1418
        // Set the sliced offset.
1419
        ArrayUtility::set($output, "slicedOffset", $this->slicedOffset, [null]);
1420
1421
        // Set the start angle.
1422
        ArrayUtility::set($output, "startAngle", $this->startAngle, [null]);
1423
1424
        // Set the states.
1425
        if (null !== $this->states) {
1426
            ArrayUtility::set($output, "states", $this->states->toArray(), []);
1427
        }
1428
1429
        // Set the sticky tracking.
1430
        ArrayUtility::set($output, "stickyTracking", $this->stickyTracking, [null]);
1431
1432
        // Set the tooltip.
1433
        ArrayUtility::set($output, "tooltip", $this->tooltip, [null]);
1434
1435
        // Set the visible.
1436
        ArrayUtility::set($output, "visible", $this->visible, [null]);
1437
1438
        // Set the zone axis.
1439
        ArrayUtility::set($output, "zoneAxis", $this->zoneAxis, [null]);
1440
1441
        // Set the zones.
1442
        ArrayUtility::set($output, "zones", $this->zones, [null]);
1443
1444
        // Return the output.
1445
        return $output;
1446
    }
1447
1448
}
1449