ILIAS
release_7 Revision v7.30-3-g800a261c036
◀ ilDoc Overview
MetaBar.php
Go to the documentation of this file.
1
<?
php
2
3
/* Copyright (c) 2018 Nils Haagen <nils.haagen@concepts-and-training.de> Extended GPL, see docs/LICENSE */
4
5
namespace
ILIAS\UI\Implementation\Component\MainControls
;
6
7
use
ILIAS\UI\Component\Signal
;
8
use
ILIAS\UI\Component\MainControls
;
9
use
ILIAS\UI\Component\Button
;
10
use
ILIAS\UI\Component\Link
;
11
use
ILIAS\UI\Component\MainControls\Slate\Slate
;
12
use
ILIAS\UI\Component\MainControls\Slate\Prompt
;
13
use
ILIAS\UI\Implementation\Component\ComponentHelper
;
14
use
ILIAS\UI\Implementation\Component\JavaScriptBindable
;
15
use
ILIAS\UI\Implementation\Component\SignalGeneratorInterface
;
16
20
class
MetaBar
implements
MainControls\MetaBar
21
{
22
use
ComponentHelper
;
23
use
JavaScriptBindable
;
24
28
private
$signal_generator
;
29
33
private
$entry_click_signal
;
34
38
private
$disengage_all_signal
;
39
43
protected
$entries
;
44
45
public
function
__construct
(
46
SignalGeneratorInterface
$signal_generator
47
) {
48
$this->signal_generator = $signal_generator;
49
$this->
initSignals
();
50
}
51
55
public
function
getEntries
() : array
56
{
57
return
$this->entries;
58
}
59
63
public
function
withAdditionalEntry
(
string
$id, $entry) : MainControls\
MetaBar
64
{
65
$classes = [Button\Bulky::class, Link\Bulky::class, Slate::class];
66
$check = [$entry];
67
$this->
checkArgListElements
(
"Bulky Button, Bulky Link or Slate"
, $check, $classes);
68
69
$clone = clone $this;
70
$clone->entries[$id] = $entry;
71
return
$clone;
72
}
73
77
public
function
getEntryClickSignal
() :
Signal
78
{
79
return
$this->entry_click_signal;
80
}
81
85
public
function
getDisengageAllSignal
() :
Signal
86
{
87
return
$this->disengage_all_signal;
88
}
89
93
protected
function
initSignals
()
94
{
95
$this->entry_click_signal = $this->signal_generator->create();
96
$this->disengage_all_signal = $this->signal_generator->create();
97
}
98
99
public
function
withClearedEntries
() : MainControls\
MetaBar
100
{
101
$clone = clone $this;
102
$clone->entries = [];
103
return
$clone;
104
}
105
}
php
An exception for terminatinating execution or to throw for unit testing.
ILIAS\UI\Implementation\Component\MainControls\MetaBar\withClearedEntries
withClearedEntries()
Definition:
MetaBar.php:99
ILIAS\UI\Implementation\Component\MainControls\MetaBar\withAdditionalEntry
withAdditionalEntry(string $id, $entry)
Definition:
MetaBar.php:63
ILIAS\UI\Implementation\Component\MainControls\MetaBar\$entry_click_signal
$entry_click_signal
Definition:
MetaBar.php:33
ILIAS\UI\Implementation\Component\MainControls\MetaBar\$signal_generator
$signal_generator
Definition:
MetaBar.php:28
ILIAS\UI\Implementation\Component\MainControls\MetaBar\$entries
$entries
Definition:
MetaBar.php:43
ILIAS\UI\Implementation\Component\MainControls\MetaBar\getDisengageAllSignal
getDisengageAllSignal()
Definition:
MetaBar.php:85
ILIAS\UI\Implementation\Component\MainControls\MetaBar\getEntries
getEntries()
Definition:
MetaBar.php:55
ILIAS\UI\Implementation\Component\MainControls\MetaBar\getEntryClickSignal
getEntryClickSignal()
Definition:
MetaBar.php:77
ILIAS\UI\Implementation\Component\MainControls\MetaBar\__construct
__construct(SignalGeneratorInterface $signal_generator)
Definition:
MetaBar.php:45
ILIAS\UI\Implementation\Component\MainControls\MetaBar\initSignals
initSignals()
Set the signals for this component.
Definition:
MetaBar.php:93
ILIAS\UI\Implementation\Component\MainControls\MetaBar\$disengage_all_signal
$disengage_all_signal
Definition:
MetaBar.php:38
ILIAS\UI\Component\MainControls\MetaBar
This describes the MetaBar.
Definition:
MetaBar.php:15
ILIAS\UI\Component\MainControls\Slate\Prompt
Prompts are notifications from the system to the user.
Definition:
Prompt.php:11
ILIAS\UI\Component\MainControls\Slate\Slate
This describes a Slate.
Definition:
Slate.php:18
ILIAS\UI\Component\Signal
Definition:
Signal.php:14
ILIAS\UI\Implementation\Component\SignalGeneratorInterface
Definition:
SignalGeneratorInterface.php:10
ILIAS\UI\Component\Button
Definition:
Bulky.php:4
ILIAS\UI\Component\Link
Definition:
Bulky.php:7
ILIAS\UI\Component\MainControls
Definition:
Factory.php:5
ILIAS\UI\Implementation\Component\MainControls
Definition:
Factory.php:4
ILIAS\UI\Implementation\Component\JavaScriptBindable
trait JavaScriptBindable
Trait for components implementing JavaScriptBindable providing standard implementation.
Definition:
JavaScriptBindable.php:12
ILIAS\UI\Implementation\Component\checkArgListElements
checkArgListElements($which, array &$values, $classes)
Check every element of the list if it is an instance of one of the given classes.
Definition:
ComponentHelper.php:217
ILIAS\UI\Implementation\Component\ComponentHelper
trait ComponentHelper
Provides common functionality for component implementations.
Definition:
ComponentHelper.php:13
src
UI
Implementation
Component
MainControls
MetaBar.php
Generated on Fri Oct 3 2025 21:01:11 for ILIAS by
1.9.4 (using
Doxyfile
)