Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
100.00% |
16 / 16 |
|
100.00% |
9 / 9 |
CRAP | |
100.00% |
1 / 1 |
Transition | |
100.00% |
16 / 16 |
|
100.00% |
9 / 9 |
11 | |
100.00% |
1 / 1 |
setSpeed | |
100.00% |
4 / 4 |
|
100.00% |
1 / 1 |
2 | |||
getSpeed | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 | |||
setManualTrigger | |
100.00% |
2 / 2 |
|
100.00% |
1 / 1 |
1 | |||
hasManualTrigger | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 | |||
setTimeTrigger | |
100.00% |
3 / 3 |
|
100.00% |
1 / 1 |
2 | |||
hasTimeTrigger | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 | |||
getAdvanceTimeTrigger | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 | |||
setTransitionType | |
100.00% |
2 / 2 |
|
100.00% |
1 / 1 |
1 | |||
getTransitionType | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 |
1 | <?php |
2 | /** |
3 | * This file is part of PHPPresentation - A pure PHP library for reading and writing |
4 | * presentations documents. |
5 | * |
6 | * PHPPresentation is free software distributed under the terms of the GNU Lesser |
7 | * General Public License version 3 as published by the Free Software Foundation. |
8 | * |
9 | * For the full copyright and license information, please read the LICENSE |
10 | * file that was distributed with this source code. For the full list of |
11 | * contributors, visit https://github.com/PHPOffice/PHPPresentation/contributors. |
12 | * |
13 | * @see https://github.com/PHPOffice/PHPPresentation |
14 | * |
15 | * @license http://www.gnu.org/licenses/lgpl.txt LGPL version 3 |
16 | */ |
17 | |
18 | declare(strict_types=1); |
19 | |
20 | namespace PhpOffice\PhpPresentation\Slide; |
21 | |
22 | /** |
23 | * Transition class. |
24 | */ |
25 | class Transition |
26 | { |
27 | public const SPEED_FAST = 'fast'; |
28 | public const SPEED_MEDIUM = 'med'; |
29 | public const SPEED_SLOW = 'slow'; |
30 | |
31 | public const TRANSITION_BLINDS_HORIZONTAL = 'blinds_horz'; |
32 | public const TRANSITION_BLINDS_VERTICAL = 'blinds_vert'; |
33 | public const TRANSITION_CHECKER_HORIZONTAL = 'checker_horz'; |
34 | public const TRANSITION_CHECKER_VERTICAL = 'checker_vert'; |
35 | public const TRANSITION_CIRCLE = 'circle'; |
36 | public const TRANSITION_COMB_HORIZONTAL = 'comb_horz'; |
37 | public const TRANSITION_COMB_VERTICAL = 'comb_vert'; |
38 | public const TRANSITION_COVER_DOWN = 'cover_d'; |
39 | public const TRANSITION_COVER_LEFT = 'cover_l'; |
40 | public const TRANSITION_COVER_LEFT_DOWN = 'cover_ld'; |
41 | public const TRANSITION_COVER_LEFT_UP = 'cover_lu'; |
42 | public const TRANSITION_COVER_RIGHT = 'cover_r'; |
43 | public const TRANSITION_COVER_RIGHT_DOWN = 'cover_rd'; |
44 | public const TRANSITION_COVER_RIGHT_UP = 'cover_ru'; |
45 | public const TRANSITION_COVER_UP = 'cover_u'; |
46 | public const TRANSITION_CUT = 'cut'; |
47 | public const TRANSITION_DIAMOND = 'diamond'; |
48 | public const TRANSITION_DISSOLVE = 'dissolve'; |
49 | public const TRANSITION_FADE = 'fade'; |
50 | public const TRANSITION_NEWSFLASH = 'newsflash'; |
51 | public const TRANSITION_PLUS = 'plus'; |
52 | public const TRANSITION_PULL_DOWN = 'pull_d'; |
53 | public const TRANSITION_PULL_LEFT = 'pull_l'; |
54 | public const TRANSITION_PULL_RIGHT = 'pull_r'; |
55 | public const TRANSITION_PULL_UP = 'pull_u'; |
56 | public const TRANSITION_PUSH_DOWN = 'push_d'; |
57 | public const TRANSITION_PUSH_LEFT = 'push_l'; |
58 | public const TRANSITION_PUSH_RIGHT = 'push_r'; |
59 | public const TRANSITION_PUSH_UP = 'push_u'; |
60 | public const TRANSITION_RANDOM = 'random'; |
61 | public const TRANSITION_RANDOMBAR_HORIZONTAL = 'randomBar_horz'; |
62 | public const TRANSITION_RANDOMBAR_VERTICAL = 'randomBar_vert'; |
63 | public const TRANSITION_SPLIT_IN_HORIZONTAL = 'split_in_horz'; |
64 | public const TRANSITION_SPLIT_OUT_HORIZONTAL = 'split_out_horz'; |
65 | public const TRANSITION_SPLIT_IN_VERTICAL = 'split_in_vert'; |
66 | public const TRANSITION_SPLIT_OUT_VERTICAL = 'split_out_vert'; |
67 | public const TRANSITION_STRIPS_LEFT_DOWN = 'strips_ld'; |
68 | public const TRANSITION_STRIPS_LEFT_UP = 'strips_lu'; |
69 | public const TRANSITION_STRIPS_RIGHT_DOWN = 'strips_rd'; |
70 | public const TRANSITION_STRIPS_RIGHT_UP = 'strips_ru'; |
71 | public const TRANSITION_WEDGE = 'wedge'; |
72 | public const TRANSITION_WIPE_DOWN = 'wipe_d'; |
73 | public const TRANSITION_WIPE_LEFT = 'wipe_l'; |
74 | public const TRANSITION_WIPE_RIGHT = 'wipe_r'; |
75 | public const TRANSITION_WIPE_UP = 'wipe_u'; |
76 | public const TRANSITION_ZOOM_IN = 'zoom_in'; |
77 | public const TRANSITION_ZOOM_OUT = 'zoom_out'; |
78 | |
79 | /** |
80 | * @var bool |
81 | */ |
82 | protected $hasManualTrigger = false; |
83 | |
84 | /** |
85 | * @var bool |
86 | */ |
87 | protected $hasTimeTrigger = false; |
88 | |
89 | /** |
90 | * @var null|int |
91 | */ |
92 | protected $advanceTimeTrigger; |
93 | |
94 | /** |
95 | * @var null|string |
96 | */ |
97 | protected $speed; |
98 | |
99 | /** |
100 | * @var null|string |
101 | */ |
102 | protected $transitionType; |
103 | |
104 | public function setSpeed(?string $speed = self::SPEED_MEDIUM): self |
105 | { |
106 | if (in_array($speed, [self::SPEED_FAST, self::SPEED_MEDIUM, self::SPEED_SLOW])) { |
107 | $this->speed = $speed; |
108 | } else { |
109 | $this->speed = null; |
110 | } |
111 | |
112 | return $this; |
113 | } |
114 | |
115 | public function getSpeed(): ?string |
116 | { |
117 | return $this->speed; |
118 | } |
119 | |
120 | public function setManualTrigger(bool $value = false): self |
121 | { |
122 | $this->hasManualTrigger = $value; |
123 | |
124 | return $this; |
125 | } |
126 | |
127 | public function hasManualTrigger(): bool |
128 | { |
129 | return $this->hasManualTrigger; |
130 | } |
131 | |
132 | public function setTimeTrigger(bool $value = false, int $advanceTime = 1000): self |
133 | { |
134 | $this->hasTimeTrigger = $value; |
135 | $this->advanceTimeTrigger = true === $value ? $advanceTime : null; |
136 | |
137 | return $this; |
138 | } |
139 | |
140 | public function hasTimeTrigger(): bool |
141 | { |
142 | return $this->hasTimeTrigger; |
143 | } |
144 | |
145 | public function getAdvanceTimeTrigger(): ?int |
146 | { |
147 | return $this->advanceTimeTrigger; |
148 | } |
149 | |
150 | public function setTransitionType(?string $type = null): self |
151 | { |
152 | $this->transitionType = $type; |
153 | |
154 | return $this; |
155 | } |
156 | |
157 | public function getTransitionType(): ?string |
158 | { |
159 | return $this->transitionType; |
160 | } |
161 | } |