110 lines
2.8 KiB
PHP
110 lines
2.8 KiB
PHP
<?php
|
|
/**
|
|
* @package FOF
|
|
* @copyright Copyright (c)2010-2022 Nicholas K. Dionysopoulos / Akeeba Ltd
|
|
* @license GNU General Public License version 3, or later
|
|
*/
|
|
|
|
namespace FOF40\Render;
|
|
|
|
defined('_JEXEC') || die;
|
|
|
|
use FOF40\Container\Container;
|
|
use stdClass;
|
|
|
|
interface RenderInterface
|
|
{
|
|
/**
|
|
* Public constructor
|
|
*
|
|
* @param Container $container The container we are attached to
|
|
*/
|
|
function __construct(Container $container);
|
|
|
|
/**
|
|
* Returns the information about this renderer
|
|
*
|
|
* @return object
|
|
*/
|
|
function getInformation(): stdClass;
|
|
|
|
/**
|
|
* Performs initialisation.
|
|
*
|
|
* This is where you load your CSS and JavaScript frameworks. Only load the common code that the view's static
|
|
* assets will definitely depend on.
|
|
*
|
|
* This runs at the top of the View's display() method, before ony onBefore* handlers. Any files inserted to the
|
|
* Joomla document / WebAssetManager by this method CAN plausibly be removed by code in the view or any view event
|
|
* handlers in plugins.
|
|
*
|
|
* @param string $view The current view
|
|
* @param string $task The current task
|
|
*
|
|
* @return void
|
|
* @since 4.0.0
|
|
*/
|
|
function initialise(string $view, string $task): void;
|
|
|
|
/**
|
|
* Echoes any HTML to show before the view template
|
|
*
|
|
* @param string $view The current view
|
|
* @param string $task The current task
|
|
*
|
|
* @return void
|
|
*/
|
|
function preRender(string $view, string $task): void;
|
|
|
|
/**
|
|
* Echoes any HTML to show after the view template
|
|
*
|
|
* @param string $view The current view
|
|
* @param string $task The current task
|
|
*
|
|
* @return void
|
|
*/
|
|
function postRender(string $view, string $task): void;
|
|
|
|
/**
|
|
* Renders the submenu (link bar) for a category view when it is used in a
|
|
* extension
|
|
*
|
|
* Note: this function has to be called from the addSubmenu function in
|
|
* the ExtensionNameHelper class located in
|
|
* administrator/components/com_ExtensionName/helpers/Extensionname.php
|
|
*
|
|
* @return void
|
|
*/
|
|
function renderCategoryLinkbar(): void;
|
|
|
|
/**
|
|
* Set a renderer option (depends on the renderer)
|
|
*
|
|
* @param string $key The name of the option to set
|
|
* @param string $value The value of the option
|
|
*
|
|
* @return void
|
|
*/
|
|
function setOption(string $key, string $value): void;
|
|
|
|
/**
|
|
* Set multiple renderer options at once (depends on the renderer)
|
|
*
|
|
* @param array $options The options to set as key => value pairs
|
|
*
|
|
* @return void
|
|
*/
|
|
function setOptions(array $options): void;
|
|
|
|
/**
|
|
* Get the value of a renderer option
|
|
*
|
|
* @param string $key The name of the parameter
|
|
* @param mixed $default The default value to return if the parameter is not set
|
|
*
|
|
* @return mixed The parameter value
|
|
*/
|
|
function getOption(string $key, $default = null);
|
|
}
|