ILIAS  release_8 Revision v8.24
PresentationRow.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
24use ILIAS\UI\Implementation\Component\ComponentHelper;
31
33{
34 use ComponentHelper;
36
40 private $action = null;
41
45 private ?string $headline = null;
46 private ?string $subheadline = null;
47 private array $important_fields = [];
49 private ?string $further_fields_headline = null;
50 private array $further_fields = [];
51 private array $data;
53 protected string $table_id;
54
55 public function __construct(
57 string $table_id
58 ) {
59 $this->signal_generator = $signal_generator;
60 $this->table_id = $table_id;
61 $this->initSignals();
62 }
63
68 {
69 $clone = clone $this;
70 $clone->initSignals();
71 return $clone;
72 }
73
77 protected function initSignals(): void
78 {
79 $this->show_signal = $this->signal_generator->create();
80 $this->close_signal = $this->signal_generator->create();
81 $this->toggle_signal = $this->signal_generator->create();
82 }
83
87 public function getShowSignal(): Signal
88 {
89 return $this->show_signal;
90 }
91
95 public function getCloseSignal(): Signal
96 {
98 }
99
100
104 public function getToggleSignal(): Signal
105 {
107 }
108
109
114 {
115 $this->checkStringArg("string", $headline);
116 $clone = clone $this;
117 $clone->headline = $headline;
118 return $clone;
119 }
120
124 public function getHeadline(): ?string
125 {
126 return $this->headline;
127 }
128
133 {
134 $this->checkStringArg("string", $subheadline);
135 $clone = clone $this;
136 $clone->subheadline = $subheadline;
137 return $clone;
138 }
139
143 public function getSubheadline(): ?string
144 {
145 return $this->subheadline;
146 }
147
152 {
153 $clone = clone $this;
154 $clone->important_fields = $fields;
155 return $clone;
156 }
157
161 public function getImportantFields(): array
162 {
164 }
165
166
171 {
172 $clone = clone $this;
173 $clone->content = $content;
174 return $clone;
175 }
176
180 public function getContent(): Descriptive
181 {
182 return $this->content;
183 }
184
185
190 {
191 $this->checkStringArg("string", $headline);
192 $clone = clone $this;
193 $clone->further_fields_headline = $headline;
194 return $clone;
195 }
196
201 {
203 }
204
209 {
210 $clone = clone $this;
211 $clone->further_fields = $fields;
212 return $clone;
213 }
214
218 public function getFurtherFields(): array
219 {
221 }
222
223
228 {
229 $check =
230 is_null($action)
231 || $action instanceof Button
232 || $action instanceof Dropdown;
233
234 $expected =
235 " NULL or " .
236 " \ILIAS\UI\Component\Button\Button or " .
237 " \ILIAS\UI\Component\ropdown\Dropdown";
238
239 $this->checkArg("action", $check, $this->wrongTypeMessage($expected, $action));
240 $clone = clone $this;
241 $clone->action = $action;
242 return $clone;
243 }
244
248 public function getAction()
249 {
250 return $this->action;
251 }
252
253 public function getTableId(): string
254 {
255 return $this->table_id;
256 }
257}
$check
Definition: buildRTE.php:81
string()
Contains constraints for string.
Definition: Factory.php:86
__construct(SignalGeneratorInterface $signal_generator, string $table_id)
initSignals()
Set the signals for this component.
clone(ilDclStandardField $original_record)
This describes commonalities between standard and primary buttons.
Definition: Button.php:32
This describes commonalities between all types of Dropdowns.
Definition: Dropdown.php:35
initSignals()
Init the default signals plus extra signals like Replace.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Definition: Bulky.php:21
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
trait JavaScriptBindable
Trait for components implementing JavaScriptBindable providing standard implementation.