Test Failed
Push — master ( e6b57e...dd7c2d )
by Christophe
07:44
created

ComboChartOptions   B

Complexity

Total Complexity 10

Size/Duplication

Total Lines 169
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 18

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 10
lcom 0
cbo 18
dl 0
loc 169
ccs 0
cts 19
cp 0
rs 7.3333
c 0
b 0
f 0

10 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 12 1
A getAnimation() 0 4 1
A getAnnotations() 0 4 1
A getBar() 0 4 1
A getCandlestick() 0 4 1
A getCrosshair() 0 4 1
A getHAxis() 0 4 1
A getLegend() 0 4 1
A setTrendlines() 0 6 1
A setSeriesType() 0 6 1
1
<?php
2
3
namespace CMEN\GoogleChartsBundle\GoogleCharts\Options\ComboChart;
4
5
use CMEN\GoogleChartsBundle\GoogleCharts\Options\AdvancedAnimation;
6
use CMEN\GoogleChartsBundle\GoogleCharts\Options\AdvancedHAxis;
7
use CMEN\GoogleChartsBundle\GoogleCharts\Options\AdvancedLegend;
8
use CMEN\GoogleChartsBundle\GoogleCharts\Options\Annotations;
9
use CMEN\GoogleChartsBundle\GoogleCharts\Options\AreaOpacityTrait;
10
use CMEN\GoogleChartsBundle\GoogleCharts\Options\Bar;
11
use CMEN\GoogleChartsBundle\GoogleCharts\Options\Candlestick;
12
use CMEN\GoogleChartsBundle\GoogleCharts\Options\Crosshair;
13
use CMEN\GoogleChartsBundle\GoogleCharts\Options\CurveTypeTrait;
14
use CMEN\GoogleChartsBundle\GoogleCharts\Options\DataOpacityTrait;
15
use CMEN\GoogleChartsBundle\GoogleCharts\Options\FocusTargetTrait;
16
use CMEN\GoogleChartsBundle\GoogleCharts\Options\InterpolateNullsTrait;
17
use CMEN\GoogleChartsBundle\GoogleCharts\Options\IsStackedTrait;
18
use CMEN\GoogleChartsBundle\GoogleCharts\Options\LineOptions;
19
use CMEN\GoogleChartsBundle\GoogleCharts\Options\OrientationTrait;
20
use CMEN\GoogleChartsBundle\GoogleCharts\Options\ReverseCategoriesTrait;
21
use CMEN\GoogleChartsBundle\GoogleCharts\Options\SelectionModeTrait;
22
use CMEN\GoogleChartsBundle\GoogleCharts\Options\Trendlines;
23
use CMEN\GoogleChartsBundle\GoogleCharts\Options\VAxesTrait;
24
25
/**
26
 * @author Christophe Meneses
27
 */
28
class ComboChartOptions extends LineOptions
29
{
30
    /**
31
     * @var AdvancedAnimation
32
     */
33
    protected $animation;
34
35
    /**
36
     * @var Annotations
37
     */
38
    protected $annotations;
39
40
    use AreaOpacityTrait;
41
42
    /**
43
     * @var Bar
44
     */
45
    protected $bar;
46
47
    /**
48
     * @var Candlestick
49
     */
50
    protected $candlestick;
51
52
    /**
53
     * @var Crosshair
54
     */
55
    protected $crosshair;
56
57
    use CurveTypeTrait;
58
59
    use DataOpacityTrait;
60
61
    use FocusTargetTrait;
62
63
    /**
64
     * @var AdvancedHAxis
65
     */
66
    protected $hAxis;
67
68
    use InterpolateNullsTrait;
69
70
    use IsStackedTrait;
71
72
    /**
73
     * @var AdvancedLegend
74
     */
75
    protected $legend;
76
77
    use OrientationTrait;
78
79
    use ReverseCategoriesTrait;
80
81
    use SelectionModeTrait;
82
83
    /**
84
     * The default line type for any series not specified in the series property. Available values are 'line', 'area',
85
     * 'bars', 'candlesticks', and 'steppedArea'.
86
     *
87
     * @var string
88
     */
89
    protected $seriesType;
90
91
    /**
92
     * Displays trendlines on the charts that support them. By default, linear trendlines are used, but this can be
93
     * customized with the trendlines.n.type option.
94
     *
95
     * @var Trendlines[]
96
     */
97
    protected $trendlines;
98
99
    use VAxesTrait;
100
101
    /**
102
     * ComboChartOptions constructor.
103
     */
104
    public function __construct()
105
    {
106
        parent::__construct();
107
108
        $this->animation = new AdvancedAnimation();
109
        $this->annotations = new Annotations();
110
        $this->bar = new Bar();
111
        $this->candlestick = new Candlestick();
112
        $this->crosshair = new Crosshair();
113
        $this->hAxis = new AdvancedHAxis();
114
        $this->legend = new AdvancedLegend();
115
    }
116
117
    /**
118
     * @return AdvancedAnimation
119
     */
120
    public function getAnimation()
121
    {
122
        return $this->animation;
123
    }
124
125
    /**
126
     * @return Annotations
127
     */
128
    public function getAnnotations()
129
    {
130
        return $this->annotations;
131
    }
132
133
    /**
134
     * @return Bar
135
     */
136
    public function getBar()
137
    {
138
        return $this->bar;
139
    }
140
141
    /**
142
     * @return Candlestick
143
     */
144
    public function getCandlestick()
145
    {
146
        return $this->candlestick;
147
    }
148
149
    /**
150
     * @return Crosshair
151
     */
152
    public function getCrosshair()
153
    {
154
        return $this->crosshair;
155
    }
156
157
    /**
158
     * @return AdvancedHAxis
159
     */
160
    public function getHAxis()
161
    {
162
        return $this->hAxis;
163
    }
164
165
    /**
166
     * @return AdvancedLegend
167
     */
168
    public function getLegend()
169
    {
170
        return $this->legend;
171
    }
172
173
    /**
174
     * @param Trendlines[] $trendlines
175
     *
176
     * @return $this
177
     */
178
    public function setTrendlines($trendlines)
179
    {
180
        $this->trendlines = $trendlines;
181
182
        return $this;
183
    }
184
185
    /**
186
     * @param string $seriesType
187
     *
188
     * @return $this
189
     */
190
    public function setSeriesType($seriesType)
191
    {
192
        $this->seriesType = $seriesType;
193
194
        return $this;
195
    }
196
}
197