This is a base class to help you implement the renderer_factory interface.
More...
|
| get_target_suffix ($target) |
| Returns suffix of renderer class expected for given target.
|
|
| standard_renderer_classnames ($component, $subtype=null) |
| For a given module name, return the possible class names that defines the renderer interface for that module.
|
|
This is a base class to help you implement the renderer_factory interface.
It keeps a cache of renderers that have been constructed, so you only need to construct each one once in you subclass.
It also has a method to get the name of, and include the renderer.php with the definition of, the standard renderer class for a given module.
- Copyright
- 2009 Tim Hunt
- License
- http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
- Since
- Moodle 2.0
◆ __construct()
◆ get_renderer()
renderer_factory::get_renderer |
( |
moodle_page | $page, |
|
|
| $component, |
|
|
| $subtype = null, |
|
|
| $target = null ) |
|
inherited |
Return the renderer for a particular part of Moodle.
The renderer interfaces are defined by classes called {plugin}_renderer where {plugin} is the name of the component. The renderers for core Moodle are defined in lib/renderer.php. For plugins, they will be defined in a file called renderer.php inside the plugin.
Renderers will normally want to subclass the renderer_base class. (However, if you really know what you are doing, you don't have to do that.)
There is no separate interface definition for renderers. The default {plugin}_renderer implementation also serves to define the API for other implementations of the interface, whether or not they subclass it.
A particular plugin can define multiple renderers if it wishes, using the $subtype parameter. For example workshop_renderer, workshop_allocation_manual_renderer etc.
- Parameters
-
moodle_page | $page | the page the renderer is outputting content for. |
string | $component | name such as 'core', 'mod_forum' or 'qtype_multichoice'. |
string | $subtype | optional subtype such as 'news' resulting to 'mod_forum_news' |
string | $target | one of rendering target constants |
- Return values
-
renderer_base | an object implementing the requested renderer interface. |
Implemented in standard_renderer_factory, and theme_overridden_renderer_factory.
◆ get_target_suffix()
renderer_factory_base::get_target_suffix |
( |
| $target | ) |
|
|
protected |
Returns suffix of renderer class expected for given target.
- Parameters
-
string | $target | one of the renderer target constants, target is guessed if null used |
- Return values
-
array | two element array, first element is target, second the target suffix string |
◆ standard_renderer_classnames()
renderer_factory_base::standard_renderer_classnames |
( |
| $component, |
|
|
| $subtype = null ) |
|
protected |
For a given module name, return the possible class names that defines the renderer interface for that module.
Newer auto-loaded class names are returned as well as the old style _renderable classnames.
Also, if it exists, include the renderer.php file for that module, so the class definition of the default renderer has been loaded.
- Parameters
-
string | $component | name such as 'core', 'mod_forum' or 'qtype_multichoice'. |
string | $subtype | optional subtype such as 'news' resulting to: 'mod_forum\output\news_renderer' or 'mod_forum\output\news\renderer' or non-autoloaded 'mod_forum_news' |
- Return values
-
array[] | Each element of the array is an array with keys: classname - The class name to search autoloaded - Does this classname assume autoloading? validwithprefix - Is this class name valid when a prefix is added to it? validwithoutprefix - Is this class name valid when no prefix is added to it? |
- Exceptions
-
The documentation for this class was generated from the following file: