1<?php 2 3/* Copyright (c) 2016 Timon Amstutz <timon.amstutz@ilub.unibe.ch> Extended GPL, see docs/LICENSE */ 4 5namespace ILIAS\UI\Component\Panel; 6 7/** 8 * This describes how a panel could be modified during construction of UI. 9 */ 10interface Panel extends \ILIAS\UI\Component\Component 11{ 12 /** 13 * Gets the title of the panel 14 * 15 * @return string $title Title of the Panel 16 */ 17 public function getTitle(); 18 19 /** 20 * Gets the content to be displayed inside the panel 21 * 22 * @return \ILIAS\UI\Component\Component[]|\ILIAS\UI\Component\Component 23 */ 24 public function getContent(); 25 26 /** 27 * Sets action Dropdown being displayed beside the title 28 * @param \ILIAS\UI\Component\Dropdown\Standard $actions 29 * @return Sub 30 */ 31 public function withActions(\ILIAS\UI\Component\Dropdown\Standard $actions); 32 33 /** 34 * Gets action Dropdown being displayed beside the title 35 * @return \ILIAS\UI\Component\Dropdown\Standard | null 36 */ 37 public function getActions(); 38} 39