ILIAS  release_10 Revision v10.1-43-ga1241a92c2f
Bar.php
Go to the documentation of this file.
1 <?php
2 
18 declare(strict_types=1);
19 
21 
28 use ILIAS\Data\URI;
29 
33 class Bar implements Progress\Bar
34 {
36  use ComponentHelper;
37  use Triggerer;
38 
39  public const MAX_VALUE = 100;
40 
42  protected Signal $reset_signal;
43 
44  public function __construct(
45  protected Progress\AsyncRefreshInterval $async_refresh_interval,
46  protected SignalGeneratorInterface $signal_generator,
47  protected string $label,
48  protected ?URI $async_url = null,
49  ) {
50  $this->update_signal = $this->signal_generator->create();
51  $this->reset_signal = $this->signal_generator->create();
52  }
53 
54  public function withResetSignals()
55  {
56  $clone = clone $this;
57  $clone->update_signal = $this->signal_generator->create();
58  $clone->reset_signal = $this->signal_generator->create();
59  return $clone;
60  }
61 
62  public function getUpdateSignal(): Signal
63  {
64  return $this->update_signal;
65  }
66 
67  public function getResetSignal(): Signal
68  {
69  return $this->reset_signal;
70  }
71 
72  public function getAsyncRefreshInterval(): Progress\AsyncRefreshInterval
73  {
74  return $this->async_refresh_interval;
75  }
76 
77  public function getLabel(): string
78  {
79  return $this->label;
80  }
81 
82  public function getAsyncUrl(): ?URI
83  {
84  return $this->async_url;
85  }
86 }
trait JavaScriptBindable
Trait for components implementing JavaScriptBindable providing standard implementation.
The scope of this class is split ilias-conform URI&#39;s into components.
Definition: URI.php:34
__construct(protected Progress\AsyncRefreshInterval $async_refresh_interval, protected SignalGeneratorInterface $signal_generator, protected string $label, protected ?URI $async_url=null,)
Definition: Bar.php:44
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...